From 809b333248c689f91932859d4cd40aaedd711d1e Mon Sep 17 00:00:00 2001 From: Jess Frazelle Date: Wed, 19 Mar 2025 17:12:02 -0700 Subject: [PATCH 01/20] bump kcl and friends before tomorrow release (#5897) Signed-off-by: Jess Frazelle --- rust/Cargo.lock | 20 ++++++++++---------- rust/kcl-bumper/Cargo.toml | 2 +- rust/kcl-derive-docs/Cargo.toml | 2 +- rust/kcl-directory-test-macro/Cargo.toml | 2 +- rust/kcl-language-server-release/Cargo.toml | 2 +- rust/kcl-language-server/Cargo.toml | 2 +- rust/kcl-lib/Cargo.toml | 2 +- rust/kcl-python-bindings/Cargo.toml | 2 +- rust/kcl-test-server/Cargo.toml | 2 +- rust/kcl-to-core/Cargo.toml | 2 +- rust/kcl-wasm-lib/Cargo.toml | 2 +- 11 files changed, 20 insertions(+), 20 deletions(-) diff --git a/rust/Cargo.lock b/rust/Cargo.lock index 624a86528..70ed283c9 100644 --- a/rust/Cargo.lock +++ b/rust/Cargo.lock @@ -1780,7 +1780,7 @@ dependencies = [ [[package]] name = "kcl-bumper" -version = "0.1.51" +version = "0.1.52" dependencies = [ "anyhow", "clap", @@ -1791,7 +1791,7 @@ dependencies = [ [[package]] name = "kcl-derive-docs" -version = "0.1.51" +version = "0.1.52" dependencies = [ "Inflector", "anyhow", @@ -1810,7 +1810,7 @@ dependencies = [ [[package]] name = "kcl-directory-test-macro" -version = "0.1.51" +version = "0.1.52" dependencies = [ "proc-macro2", "quote", @@ -1819,7 +1819,7 @@ dependencies = [ [[package]] name = "kcl-language-server" -version = "0.2.51" +version = "0.2.52" dependencies = [ "anyhow", "clap", @@ -1840,7 +1840,7 @@ dependencies = [ [[package]] name = "kcl-language-server-release" -version = "0.1.51" +version = "0.1.52" dependencies = [ "anyhow", "clap", @@ -1860,7 +1860,7 @@ dependencies = [ [[package]] name = "kcl-lib" -version = "0.2.51" +version = "0.2.52" dependencies = [ "anyhow", "approx 0.5.1", @@ -1928,7 +1928,7 @@ dependencies = [ [[package]] name = "kcl-python-bindings" -version = "0.3.51" +version = "0.3.52" dependencies = [ "anyhow", "kcl-lib", @@ -1943,7 +1943,7 @@ dependencies = [ [[package]] name = "kcl-test-server" -version = "0.1.51" +version = "0.1.52" dependencies = [ "anyhow", "hyper 0.14.32", @@ -1956,7 +1956,7 @@ dependencies = [ [[package]] name = "kcl-to-core" -version = "0.1.51" +version = "0.1.52" dependencies = [ "anyhow", "async-trait", @@ -1970,7 +1970,7 @@ dependencies = [ [[package]] name = "kcl-wasm-lib" -version = "0.1.51" +version = "0.1.52" dependencies = [ "bson", "console_error_panic_hook", diff --git a/rust/kcl-bumper/Cargo.toml b/rust/kcl-bumper/Cargo.toml index efefbb4da..7302a6fbd 100644 --- a/rust/kcl-bumper/Cargo.toml +++ b/rust/kcl-bumper/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "kcl-bumper" -version = "0.1.51" +version = "0.1.52" edition = "2021" repository = "https://github.com/KittyCAD/modeling-api" rust-version = "1.76" diff --git a/rust/kcl-derive-docs/Cargo.toml b/rust/kcl-derive-docs/Cargo.toml index 159007249..e743a380c 100644 --- a/rust/kcl-derive-docs/Cargo.toml +++ b/rust/kcl-derive-docs/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "kcl-derive-docs" description = "A tool for generating documentation from Rust derive macros" -version = "0.1.51" +version = "0.1.52" edition = "2021" license = "MIT" repository = "https://github.com/KittyCAD/modeling-app" diff --git a/rust/kcl-directory-test-macro/Cargo.toml b/rust/kcl-directory-test-macro/Cargo.toml index 7f1ddaa9c..0cad7f330 100644 --- a/rust/kcl-directory-test-macro/Cargo.toml +++ b/rust/kcl-directory-test-macro/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "kcl-directory-test-macro" description = "A tool for generating tests from a directory of kcl files" -version = "0.1.51" +version = "0.1.52" edition = "2021" license = "MIT" repository = "https://github.com/KittyCAD/modeling-app" diff --git a/rust/kcl-language-server-release/Cargo.toml b/rust/kcl-language-server-release/Cargo.toml index 9a5e094de..0836efb63 100644 --- a/rust/kcl-language-server-release/Cargo.toml +++ b/rust/kcl-language-server-release/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "kcl-language-server-release" -version = "0.1.51" +version = "0.1.52" edition = "2021" authors = ["KittyCAD Inc "] publish = false diff --git a/rust/kcl-language-server/Cargo.toml b/rust/kcl-language-server/Cargo.toml index 2a0ba50f0..ba59148ed 100644 --- a/rust/kcl-language-server/Cargo.toml +++ b/rust/kcl-language-server/Cargo.toml @@ -2,7 +2,7 @@ name = "kcl-language-server" description = "A language server for KCL." authors = ["KittyCAD Inc "] -version = "0.2.51" +version = "0.2.52" edition = "2021" license = "MIT" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/rust/kcl-lib/Cargo.toml b/rust/kcl-lib/Cargo.toml index 79aa21e5c..3913292ae 100644 --- a/rust/kcl-lib/Cargo.toml +++ b/rust/kcl-lib/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "kcl-lib" description = "KittyCAD Language implementation and tools" -version = "0.2.51" +version = "0.2.52" edition = "2021" license = "MIT" repository = "https://github.com/KittyCAD/modeling-app" diff --git a/rust/kcl-python-bindings/Cargo.toml b/rust/kcl-python-bindings/Cargo.toml index 5e06ee6de..2a5eeefbc 100644 --- a/rust/kcl-python-bindings/Cargo.toml +++ b/rust/kcl-python-bindings/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "kcl-python-bindings" -version = "0.3.51" +version = "0.3.52" edition = "2021" repository = "https://github.com/kittycad/modeling-app" diff --git a/rust/kcl-test-server/Cargo.toml b/rust/kcl-test-server/Cargo.toml index 90b0c40f7..d80e9a557 100644 --- a/rust/kcl-test-server/Cargo.toml +++ b/rust/kcl-test-server/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "kcl-test-server" description = "A test server for KCL" -version = "0.1.51" +version = "0.1.52" edition = "2021" license = "MIT" diff --git a/rust/kcl-to-core/Cargo.toml b/rust/kcl-to-core/Cargo.toml index 66c1cce46..f2f169f36 100644 --- a/rust/kcl-to-core/Cargo.toml +++ b/rust/kcl-to-core/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "kcl-to-core" description = "Utility methods to convert kcl to engine core executable tests" -version = "0.1.51" +version = "0.1.52" edition = "2021" license = "MIT" repository = "https://github.com/KittyCAD/modeling-app" diff --git a/rust/kcl-wasm-lib/Cargo.toml b/rust/kcl-wasm-lib/Cargo.toml index 89a193575..b2fc423ff 100644 --- a/rust/kcl-wasm-lib/Cargo.toml +++ b/rust/kcl-wasm-lib/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "kcl-wasm-lib" -version = "0.1.51" +version = "0.1.52" edition = "2021" repository = "https://github.com/KittyCAD/modeling-app" rust-version = "1.83" From c5164cbee3db9528925295db4f9a9f66099c17be Mon Sep 17 00:00:00 2001 From: Pierre Jacquier Date: Wed, 19 Mar 2025 20:54:35 -0400 Subject: [PATCH 02/20] Fix electron renderer topLevelAwait in electron-forge (#5895) * Fix electron renderer topLevelAwait * Actually we need both for both cases, adding back plus comments --- vite.renderer.config.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/vite.renderer.config.ts b/vite.renderer.config.ts index 775302d9b..eaf0eb049 100644 --- a/vite.renderer.config.ts +++ b/vite.renderer.config.ts @@ -19,10 +19,13 @@ export default defineConfig((env) => { build: { outDir: `.vite/renderer/${name}`, }, + // Needed for electron-forge (in yarn tron:start) + optimizeDeps: { esbuildOptions: { target: 'es2022' } }, plugins: [ pluginExposeRenderer(name), viteTsconfigPaths(), lezer(), + // Needed for electron-builder (in yarn tronb:vite scripts) topLevelAwait({ // The export name of top-level await promise for each chunk module promiseExportName: '__tla', From 25e8e7081b25f51b2514f6ec5cab8253b5f645fe Mon Sep 17 00:00:00 2001 From: Jonathan Tran Date: Wed, 19 Mar 2025 21:10:54 -0400 Subject: [PATCH 03/20] Fix workflow to commit all generated kcl-samples files (#5896) --- .github/workflows/cargo-test.yml | 9 +++++++-- ...it-with-ai-example-snapshots--change-colour.snap.json | 2 +- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/.github/workflows/cargo-test.yml b/.github/workflows/cargo-test.yml index 7860ce4d6..ce73f7303 100644 --- a/.github/workflows/cargo-test.yml +++ b/.github/workflows/cargo-test.yml @@ -100,9 +100,14 @@ jobs: shell: bash run: | set -euo pipefail - cd rust + pushd rust just overwrite-sim-test kcl_samples - git add kcl-lib/tests + popd + git add \ + rust/kcl-lib/tests \ + public/kcl-samples/manifest.json \ + public/kcl-samples/README.md \ + public/kcl-samples/screenshots git config --local user.email "github-actions[bot]@users.noreply.github.com" git config --local user.name "github-actions[bot]" git remote set-url origin https://${{ github.actor }}:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }}.git diff --git a/e2e/playwright/snapshots/prompt-to-edit/prompt-to-edit-snapshot-tests-spec-ts--edit-with-ai-example-snapshots--change-colour.snap.json b/e2e/playwright/snapshots/prompt-to-edit/prompt-to-edit-snapshot-tests-spec-ts--edit-with-ai-example-snapshots--change-colour.snap.json index d48459648..676f3dde5 100644 --- a/e2e/playwright/snapshots/prompt-to-edit/prompt-to-edit-snapshot-tests-spec-ts--edit-with-ai-example-snapshots--change-colour.snap.json +++ b/e2e/playwright/snapshots/prompt-to-edit/prompt-to-edit-snapshot-tests-spec-ts--edit-with-ai-example-snapshots--change-colour.snap.json @@ -29,5 +29,5 @@ } } ], - "kcl_version": "0.2.51" + "kcl_version": "0.2.52" } \ No newline at end of file From 9ddb4e629f7b2af914e840184321c0f2ee7083a4 Mon Sep 17 00:00:00 2001 From: Jess Frazelle Date: Wed, 19 Mar 2025 19:26:57 -0700 Subject: [PATCH 04/20] Stub csg functions for front end (#5899) * initial placeholder csg functions Signed-off-by: Jess Frazelle * updates Signed-off-by: Jess Frazelle * generate docs Signed-off-by: Jess Frazelle * generate docs Signed-off-by: Jess Frazelle --------- Signed-off-by: Jess Frazelle --- docs/kcl/intersect.md | 50 + docs/kcl/std.json | 11232 ++++++++++++++++ docs/kcl/subtract.md | 56 + docs/kcl/union.md | 50 + rust/kcl-lib/src/std/args.rs | 45 +- rust/kcl-lib/src/std/csg.rs | 210 + rust/kcl-lib/src/std/mod.rs | 4 + .../serial_test_example_intersect0.png | Bin 0 -> 68816 bytes .../outputs/serial_test_example_subtract0.png | Bin 0 -> 71197 bytes .../outputs/serial_test_example_union0.png | Bin 0 -> 63425 bytes 10 files changed, 11646 insertions(+), 1 deletion(-) create mode 100644 docs/kcl/intersect.md create mode 100644 docs/kcl/subtract.md create mode 100644 docs/kcl/union.md create mode 100644 rust/kcl-lib/src/std/csg.rs create mode 100644 rust/kcl-lib/tests/outputs/serial_test_example_intersect0.png create mode 100644 rust/kcl-lib/tests/outputs/serial_test_example_subtract0.png create mode 100644 rust/kcl-lib/tests/outputs/serial_test_example_union0.png diff --git a/docs/kcl/intersect.md b/docs/kcl/intersect.md new file mode 100644 index 000000000..3c198b53b --- /dev/null +++ b/docs/kcl/intersect.md @@ -0,0 +1,50 @@ +--- +title: "intersect" +excerpt: "Intersect returns the shared volume between multiple solids, preserving only overlapping regions." +layout: manual +--- + +**WARNING:** This function is deprecated. + +Intersect returns the shared volume between multiple solids, preserving only overlapping regions. + +Intersect computes the geometric intersection of multiple solid bodies, returning a new solid representing the volume that is common to all input solids. This operation is useful for determining shared material regions, verifying fit, and analyzing overlapping geometries in assemblies. + +```js +intersect(solids: [Solid]): [Solid] +``` + + +### Arguments + +| Name | Type | Description | Required | +|----------|------|-------------|----------| +| `solids` | [`[Solid]`](/docs/kcl/types/Solid) | The solids to intersect. | Yes | + +### Returns + +[`[Solid]`](/docs/kcl/types/Solid) + + +### Examples + +```js +fn cube(center) { + return startSketchOn('XY') + |> startProfileAt([center[0] - 10, center[1] - 10], %) + |> line(endAbsolute = [center[0] + 10, center[1] - 10]) + |> line(endAbsolute = [center[0] + 10, center[1] + 10]) + |> line(endAbsolute = [center[0] - 10, center[1] + 10]) + |> close() + |> extrude(length = 10) +} + +part001 = cube([0, 0]) +part002 = cube([8, 8]) + +intersectedPart = intersect([part001, part002]) +``` + +![Rendered example of intersect 0](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABQAAAALQCAYAAADPfd1WAAEMl0lEQVR4Ae3AA6AkWZbG8f937o3IzKdyS2Oubdu2bdu2bdu2bWmMnpZKr54yMyLu+Xa3anqmhztr1a8+6EEP4qqrrrrqqquuuuqqq6666qqrrrrqqquu+j+JylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VX/S1xzzTUPfrEXe7HXfsd3fMfP4qqrrrrqX3D27Nlbf+RHfuRz/uEf/uG3ueqqq6666qr/v9CDHvQgrrrqqquuuuqqq/43+PAP//Dvep3XeZ33vnDhAlddddVV/5KTJ09y33333fr1X//17/MP//APv81VV1111VVX/f9E5aqrrrrqqquuuup/iRd7sRd7bYBv/MZv5MKFC/xPZJur/veyzf9HtvnfzjbP7U3e5E14kzd5kwd/+Id/+Hd9yId8yEO46qqrrrrqqv+fCK666qqrrrrqqqv+F3ixF3ux177mmmseDHDhwgX+p5KEJCQhCUlIQhKSkIQkJCEJ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993KVVddddVVV131/x2Vq6666qqr/tucPXv2VoBjx47xX8E295PEfyXb3E8S/x1s80CS+J/CNs+PJP63ss0LI4mrrvrvZpv/i3Z2dgA4e/bsrVx11VVXXXXVVf/fUbnqqquuuuq/zX333XcrwM7ODtvb2+zt7QEgif9stnkgSfxXsc0DSeK/g20eSBL/09jmuUni/wLb/EskcdVV/1a2+f/ANlddddVVV1111VUvBMFVV1111VX/rf7hH/7htwGOHTvG/WxjG9v8V7GNbWzzX802trHNfyfb2MY2trHN/0S2sY1tbGOb/6tsYxvb2MY2trGNbWxjG9tc9f+HbWxjG9vYxja2sY1tbPN/kW1sYxvb2Ob52dnZAeC+++67lauuuuqqq6666v87gquuuuqqq/5b/f3f//1vA9x00008P7axjW3+q9jGNrb5r2Yb29jGNv/dbGMb29jmfyrb2MY2trGNbf4/sY1tbGMb29jGNraxjW1sY5ur/mewjW1sYxvb2MY2trGNbWxjG9v8f2Ab29jGNraxzVVXXXXVVVddddW/AZWrrrrqqqv+Rzh27Bj/EtvcTxL/FWxzP0n8V7PNA0niv5NtHkgS/5PZ5vmRxP93tvn3ksT/Z7a56t/HNv/RdnZ2ADh79uwzuOqqq6666qqrrgIqV1111VVX/bf6h3/4h98B2NnZ4V/DNveTxH8F2zyQJP6r2eZ+kvjvZpvnJon/6WzzgkjiqheNba666l9im/9KOzs7XHXVVVddddVVVz0Alauuuuqqq/5bnT179laAY8eO8W9lm/tJ4r+Kbe4nif9qtnkgSfxPYJvnJon/LWzzgkjiqquuev5s8z/JfffddytXXXXVVVddddVVQHDVVVddddV/q/vuu+/W++6779adnR2OHTvGv5dtbGOb/0q2sY1t/rvYxja2sc3/JLaxjW1sY5v/jWxjG9vYxja2sc1VV/1fZxvb2MY2trGNbWzzP8XOzg4A9913361cddVVV1111VVXAcFVV1111VX/7c6ePXsrwM7ODv+RbGMb2/xXso1tbGOb/y62sY1tbPM/jW1sYxvb2OZ/M9vYxja2sY1tbGObq676n842trGNbWxjG9vY5qqrrrrqqquuuup/KYKrrrrqqqv+2/393//9bwPcdNNN/GexjW1s81/NNraxzX8n29jGNrb5n8g2trGNbWzz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/xPb2MY2trGNbe537NgxAM6ePXsrV1111VVXXXXVVVdQueqqq6666n+Uf/iHf/gd/pPZ5n6S+O9gmweSxH832zw3SfxPZ5vnRxJXgW3+PSRx1b+Oba7697HNVVddddVVV1111X8QKlddddVVV/2Pcvbs2VsBdnZ2+K9gmweSxH8H2zyQJP4nsM1zk8T/BrZ5QSRx1YvGNldd9Z/FNv+RdnZ2ALjvvvtu5aqrrrrqqquuuuoKgquuuuqqq/5Hue+++2697777bj127Bg7Ozv8V7ONbWzz38k2trGNbf4nsY1tbGOb/41sYxvb2MY2trHNVVdd9R/LNraxjW1sYxvbXHXVVVddddVVV/0XILjqqquuuup/nLNnz94KsLOzg21sY5v/araxjW3+u9nGNraxzf8ktrGNbWxjm//NbGMb29jGNraxzVVXXfX82cY2trGNbWxjm/8qOzs7ANx33323ctVVV1111VVXXfVsBFddddVVV/2P8/d///e/DXDLLbfwQLaxjW3+q9nGNraxzX8329jGNrb5n8Y2trGNbWzzf4FtbGMb29jGNraxzVVX/V9lG9vYxja2sY1tbPM/wc7ODgBnz569lauuuuqqq6666qpno3LVVVddddX/OGfPnn0GwM0338wLYpv7SeK/mm0eSBL/nWzzQJL4n8Y2z48k/q+wzQsjiauu+p/GNlddddVVV1111VX/h1G56qqrrrrqf5z77rvvVv4VbHM/Sfx3sM39JPHfzTYPJIn/qWzz3CTxf5FtXhSSuOqq/wi2+f/i2LFjANx33323ctVVV1111VVXXfVsVK666qqrrvof5+zZs7cCHDt2jJtvvpl/D0n8d5PE/zSSuOr/Bklc9f+Lba56Xtvb21x11VVXXXXVVVc9H1Suuuqqq676H+e+++679R/+4R9++8Ve7MVe+13e5V246qqrrrrqqhfFfffdd+s//MM//A5XXXXVVVddddVVz4Ye9KAHcdVVV1111f9MH/7hH/5d11xzzYO56qqrrrrqqhfBb/3Wb33Pb/3Wb303V1111VVXXXXVVc+GHvSgB3HVVVddddVVV1111VVXXXXVVVddddVVV/2fROWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V/GPg3Jg1dcXJrQAAAAASUVORK5CYII=) + + diff --git a/docs/kcl/std.json b/docs/kcl/std.json index 7172f07b1..1300d135d 100644 --- a/docs/kcl/std.json +++ b/docs/kcl/std.json @@ -113635,6 +113635,3217 @@ "n = int(ceil(5 / 2))\nassertEqual(n, 3, 0.0001, \"5/2 = 2.5, rounded up makes 3\")\n// Draw n cylinders.\nstartSketchOn('XZ')\n |> circle(center = [0, 0], radius = 2)\n |> extrude(length = 5)\n |> patternTransform(\n instances = n,\n transform = fn(id) {\n return { translate = [4 * id, 0, 0] }\n },\n )" ] }, + { + "name": "intersect", + "summary": "Intersect returns the shared volume between multiple solids, preserving only overlapping regions.", + "description": "Intersect computes the geometric intersection of multiple solid bodies, returning a new solid representing the volume that is common to all input solids. This operation is useful for determining shared material regions, verifying fit, and analyzing overlapping geometries in assemblies.", + "tags": [], + "keywordArguments": true, + "args": [ + { + "name": "solids", + "type": "[Solid]", + "schema": { + "$schema": "https://spec.openapis.org/oas/3.0/schema/2019-04-02#/definitions/Schema", + "title": "Array_of_Solid", + "type": "array", + "items": { + "$ref": "#/components/schemas/Solid" + }, + "definitions": { + "Solid": { + "type": "object", + "required": [ + "artifactId", + "height", + "id", + "sketch", + "units", + "value" + ], + "properties": { + "id": { + "description": "The id of the solid.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID of the solid. Unlike `id`, this doesn't change.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "description": "The extrude surfaces.", + "type": "array", + "items": { + "$ref": "#/components/schemas/ExtrudeSurface" + } + }, + "sketch": { + "description": "The sketch.", + "allOf": [ + { + "$ref": "#/components/schemas/Sketch" + } + ] + }, + "height": { + "description": "The height of the solid.", + "type": "number", + "format": "double" + }, + "startCapId": { + "description": "The id of the extrusion start cap", + "type": "string", + "format": "uuid", + "nullable": true + }, + "endCapId": { + "description": "The id of the extrusion end cap", + "type": "string", + "format": "uuid", + "nullable": true + }, + "edgeCuts": { + "description": "Chamfers or fillets on this solid.", + "type": "array", + "items": { + "$ref": "#/components/schemas/EdgeCut" + } + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + "ArtifactId": { + "type": "string", + "format": "uuid" + }, + "ExtrudeSurface": { + "description": "An extrude surface.", + "oneOf": [ + { + "description": "An extrude plane.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "extrudePlane" + ] + }, + "faceId": { + "description": "The face id for the extrude plane.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "An extruded arc.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "extrudeArc" + ] + }, + "faceId": { + "description": "The face id for the extrude plane.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "chamfer" + ] + }, + "faceId": { + "description": "The id for the chamfer surface.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "fillet" + ] + }, + "faceId": { + "description": "The id for the fillet surface.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + } + ] + }, + "TagDeclarator": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string" + }, + "digest": { + "type": "array", + "items": { + "type": "integer", + "format": "uint8", + "minimum": 0.0 + }, + "maxItems": 32, + "minItems": 32, + "nullable": true + }, + "start": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + }, + "end": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + } + } + }, + "SourceRange": { + "description": "The first two items are the start and end points (byte offsets from the start of the file). The third item is whether the source range belongs to the 'main' file, i.e., the file currently being rendered/displayed in the editor.", + "type": "array", + "items": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + }, + "maxItems": 3, + "minItems": 3 + }, + "Sketch": { + "type": "object", + "required": [ + "artifactId", + "id", + "on", + "originalId", + "paths", + "start", + "units" + ], + "properties": { + "id": { + "description": "The id of the sketch (this will change when the engine's reference to it changes).", + "type": "string", + "format": "uuid" + }, + "paths": { + "description": "The paths in the sketch.", + "type": "array", + "items": { + "$ref": "#/components/schemas/Path" + } + }, + "on": { + "description": "What the sketch is on (can be a plane or a face).", + "allOf": [ + { + "$ref": "#/components/schemas/SketchSurface" + } + ] + }, + "start": { + "description": "The starting path.", + "allOf": [ + { + "$ref": "#/components/schemas/BasePath" + } + ] + }, + "tags": { + "description": "Tag identifiers that have been declared in this sketch.", + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/TagIdentifier" + } + }, + "artifactId": { + "description": "The original id of the sketch. This stays the same even if the sketch is is sketched on face etc.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "originalId": { + "type": "string", + "format": "uuid" + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + "Path": { + "description": "A path.", + "oneOf": [ + { + "description": "A path that goes to a point.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "ToPoint" + ] + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A arc that is tangential to the last path segment that goes to a point", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "TangentialArcTo" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "ccw": { + "description": "arc's direction", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A arc that is tangential to the last path segment", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "TangentialArc" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "ccw": { + "description": "arc's direction", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "a complete arc", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "radius", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Circle" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "radius": { + "description": "the arc's radius", + "type": "number", + "format": "double" + }, + "ccw": { + "description": "arc's direction This is used to compute the tangential angle.", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "p1", + "p2", + "p3", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "CircleThreePoint" + ] + }, + "p1": { + "description": "Point 1 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p2": { + "description": "Point 2 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p3": { + "description": "Point 3 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "p1", + "p2", + "p3", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "ArcThreePoint" + ] + }, + "p1": { + "description": "Point 1 of the arc (base on the end of previous segment)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p2": { + "description": "Point 2 of the arc (interior kwarg)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p3": { + "description": "Point 3 of the arc (end kwarg)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A path that is horizontal.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units", + "x" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Horizontal" + ] + }, + "x": { + "description": "The x coordinate.", + "type": "number", + "format": "double" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "An angled line to.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "AngledLineTo" + ] + }, + "x": { + "description": "The x coordinate.", + "type": "number", + "format": "double", + "nullable": true + }, + "y": { + "description": "The y coordinate.", + "type": "number", + "format": "double", + "nullable": true + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Base" + ] + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A circular arc, not necessarily tangential to the current point.", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "radius", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Arc" + ] + }, + "center": { + "description": "Center of the circle that this arc is drawn on.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "radius": { + "description": "Radius of the circle that this arc is drawn on.", + "type": "number", + "format": "double" + }, + "ccw": { + "description": "True if the arc is counterclockwise.", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + } + ] + }, + "UnitLen": { + "description": "A unit of length.", + "oneOf": [ + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Mm" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Cm" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "M" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Inches" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Feet" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Yards" + ] + } + } + } + ] + }, + "GeoMeta": { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "id", + "sourceRange" + ], + "properties": { + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + "SketchSurface": { + "description": "A sketch type.", + "oneOf": [ + { + "type": "object", + "required": [ + "artifactId", + "id", + "origin", + "type", + "units", + "value", + "xAxis", + "yAxis", + "zAxis" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "plane" + ] + }, + "id": { + "description": "The id of the plane.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "$ref": "#/components/schemas/PlaneType" + }, + "origin": { + "description": "Origin of the plane.", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "xAxis": { + "description": "What should the plane's X axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "yAxis": { + "description": "What should the plane's Y axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "zAxis": { + "description": "The z-axis (normal).", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + { + "description": "A face.", + "type": "object", + "required": [ + "artifactId", + "id", + "solid", + "type", + "units", + "value", + "xAxis", + "yAxis", + "zAxis" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "face" + ] + }, + "id": { + "description": "The id of the face.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "description": "The tag of the face.", + "type": "string" + }, + "xAxis": { + "description": "What should the face's X axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "yAxis": { + "description": "What should the face's Y axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "zAxis": { + "description": "The z-axis (normal).", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "solid": { + "description": "The solid the face is on.", + "allOf": [ + { + "$ref": "#/components/schemas/Solid" + } + ] + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + } + ] + }, + "PlaneType": { + "description": "Type for a plane.", + "oneOf": [ + { + "type": "string", + "enum": [ + "XY", + "XZ", + "YZ" + ] + }, + { + "description": "A custom plane.", + "type": "string", + "enum": [ + "Custom" + ] + }, + { + "description": "A custom plane which has not been sent to the engine. It must be sent before it is used.", + "type": "string", + "enum": [ + "Uninit" + ] + } + ] + }, + "Point3d": { + "type": "object", + "required": [ + "x", + "y", + "z" + ], + "properties": { + "x": { + "type": "number", + "format": "double" + }, + "y": { + "type": "number", + "format": "double" + }, + "z": { + "type": "number", + "format": "double" + } + } + }, + "BasePath": { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "units" + ], + "properties": { + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + "TagIdentifier": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string" + } + } + }, + "EdgeCut": { + "description": "A fillet or a chamfer.", + "oneOf": [ + { + "description": "A fillet.", + "type": "object", + "required": [ + "edgeId", + "id", + "radius", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "fillet" + ] + }, + "id": { + "description": "The id of the engine command that called this fillet.", + "type": "string", + "format": "uuid" + }, + "radius": { + "type": "number", + "format": "double" + }, + "edgeId": { + "description": "The engine id of the edge to fillet.", + "type": "string", + "format": "uuid" + }, + "tag": { + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + } + } + }, + { + "description": "A chamfer.", + "type": "object", + "required": [ + "edgeId", + "id", + "length", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "chamfer" + ] + }, + "id": { + "description": "The id of the engine command that called this chamfer.", + "type": "string", + "format": "uuid" + }, + "length": { + "type": "number", + "format": "double" + }, + "edgeId": { + "description": "The engine id of the edge to chamfer.", + "type": "string", + "format": "uuid" + }, + "tag": { + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + } + } + } + ] + } + } + }, + "required": true, + "includeInSnippet": true, + "description": "The solids to intersect.", + "labelRequired": false + } + ], + "returnValue": { + "name": "", + "type": "[Solid]", + "schema": { + "$schema": "https://spec.openapis.org/oas/3.0/schema/2019-04-02#/definitions/Schema", + "title": "Array_of_Solid", + "type": "array", + "items": { + "$ref": "#/components/schemas/Solid" + }, + "definitions": { + "Solid": { + "type": "object", + "required": [ + "artifactId", + "height", + "id", + "sketch", + "units", + "value" + ], + "properties": { + "id": { + "description": "The id of the solid.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID of the solid. Unlike `id`, this doesn't change.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "description": "The extrude surfaces.", + "type": "array", + "items": { + "$ref": "#/components/schemas/ExtrudeSurface" + } + }, + "sketch": { + "description": "The sketch.", + "allOf": [ + { + "$ref": "#/components/schemas/Sketch" + } + ] + }, + "height": { + "description": "The height of the solid.", + "type": "number", + "format": "double" + }, + "startCapId": { + "description": "The id of the extrusion start cap", + "type": "string", + "format": "uuid", + "nullable": true + }, + "endCapId": { + "description": "The id of the extrusion end cap", + "type": "string", + "format": "uuid", + "nullable": true + }, + "edgeCuts": { + "description": "Chamfers or fillets on this solid.", + "type": "array", + "items": { + "$ref": "#/components/schemas/EdgeCut" + } + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + "ArtifactId": { + "type": "string", + "format": "uuid" + }, + "ExtrudeSurface": { + "description": "An extrude surface.", + "oneOf": [ + { + "description": "An extrude plane.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "extrudePlane" + ] + }, + "faceId": { + "description": "The face id for the extrude plane.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "An extruded arc.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "extrudeArc" + ] + }, + "faceId": { + "description": "The face id for the extrude plane.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "chamfer" + ] + }, + "faceId": { + "description": "The id for the chamfer surface.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "fillet" + ] + }, + "faceId": { + "description": "The id for the fillet surface.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + } + ] + }, + "TagDeclarator": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string" + }, + "digest": { + "type": "array", + "items": { + "type": "integer", + "format": "uint8", + "minimum": 0.0 + }, + "maxItems": 32, + "minItems": 32, + "nullable": true + }, + "start": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + }, + "end": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + } + } + }, + "SourceRange": { + "description": "The first two items are the start and end points (byte offsets from the start of the file). The third item is whether the source range belongs to the 'main' file, i.e., the file currently being rendered/displayed in the editor.", + "type": "array", + "items": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + }, + "maxItems": 3, + "minItems": 3 + }, + "Sketch": { + "type": "object", + "required": [ + "artifactId", + "id", + "on", + "originalId", + "paths", + "start", + "units" + ], + "properties": { + "id": { + "description": "The id of the sketch (this will change when the engine's reference to it changes).", + "type": "string", + "format": "uuid" + }, + "paths": { + "description": "The paths in the sketch.", + "type": "array", + "items": { + "$ref": "#/components/schemas/Path" + } + }, + "on": { + "description": "What the sketch is on (can be a plane or a face).", + "allOf": [ + { + "$ref": "#/components/schemas/SketchSurface" + } + ] + }, + "start": { + "description": "The starting path.", + "allOf": [ + { + "$ref": "#/components/schemas/BasePath" + } + ] + }, + "tags": { + "description": "Tag identifiers that have been declared in this sketch.", + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/TagIdentifier" + } + }, + "artifactId": { + "description": "The original id of the sketch. This stays the same even if the sketch is is sketched on face etc.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "originalId": { + "type": "string", + "format": "uuid" + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + "Path": { + "description": "A path.", + "oneOf": [ + { + "description": "A path that goes to a point.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "ToPoint" + ] + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A arc that is tangential to the last path segment that goes to a point", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "TangentialArcTo" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "ccw": { + "description": "arc's direction", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A arc that is tangential to the last path segment", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "TangentialArc" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "ccw": { + "description": "arc's direction", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "a complete arc", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "radius", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Circle" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "radius": { + "description": "the arc's radius", + "type": "number", + "format": "double" + }, + "ccw": { + "description": "arc's direction This is used to compute the tangential angle.", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "p1", + "p2", + "p3", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "CircleThreePoint" + ] + }, + "p1": { + "description": "Point 1 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p2": { + "description": "Point 2 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p3": { + "description": "Point 3 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "p1", + "p2", + "p3", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "ArcThreePoint" + ] + }, + "p1": { + "description": "Point 1 of the arc (base on the end of previous segment)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p2": { + "description": "Point 2 of the arc (interior kwarg)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p3": { + "description": "Point 3 of the arc (end kwarg)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A path that is horizontal.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units", + "x" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Horizontal" + ] + }, + "x": { + "description": "The x coordinate.", + "type": "number", + "format": "double" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "An angled line to.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "AngledLineTo" + ] + }, + "x": { + "description": "The x coordinate.", + "type": "number", + "format": "double", + "nullable": true + }, + "y": { + "description": "The y coordinate.", + "type": "number", + "format": "double", + "nullable": true + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Base" + ] + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A circular arc, not necessarily tangential to the current point.", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "radius", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Arc" + ] + }, + "center": { + "description": "Center of the circle that this arc is drawn on.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "radius": { + "description": "Radius of the circle that this arc is drawn on.", + "type": "number", + "format": "double" + }, + "ccw": { + "description": "True if the arc is counterclockwise.", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + } + ] + }, + "UnitLen": { + "description": "A unit of length.", + "oneOf": [ + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Mm" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Cm" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "M" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Inches" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Feet" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Yards" + ] + } + } + } + ] + }, + "GeoMeta": { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "id", + "sourceRange" + ], + "properties": { + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + "SketchSurface": { + "description": "A sketch type.", + "oneOf": [ + { + "type": "object", + "required": [ + "artifactId", + "id", + "origin", + "type", + "units", + "value", + "xAxis", + "yAxis", + "zAxis" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "plane" + ] + }, + "id": { + "description": "The id of the plane.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "$ref": "#/components/schemas/PlaneType" + }, + "origin": { + "description": "Origin of the plane.", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "xAxis": { + "description": "What should the plane's X axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "yAxis": { + "description": "What should the plane's Y axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "zAxis": { + "description": "The z-axis (normal).", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + { + "description": "A face.", + "type": "object", + "required": [ + "artifactId", + "id", + "solid", + "type", + "units", + "value", + "xAxis", + "yAxis", + "zAxis" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "face" + ] + }, + "id": { + "description": "The id of the face.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "description": "The tag of the face.", + "type": "string" + }, + "xAxis": { + "description": "What should the face's X axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "yAxis": { + "description": "What should the face's Y axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "zAxis": { + "description": "The z-axis (normal).", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "solid": { + "description": "The solid the face is on.", + "allOf": [ + { + "$ref": "#/components/schemas/Solid" + } + ] + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + } + ] + }, + "PlaneType": { + "description": "Type for a plane.", + "oneOf": [ + { + "type": "string", + "enum": [ + "XY", + "XZ", + "YZ" + ] + }, + { + "description": "A custom plane.", + "type": "string", + "enum": [ + "Custom" + ] + }, + { + "description": "A custom plane which has not been sent to the engine. It must be sent before it is used.", + "type": "string", + "enum": [ + "Uninit" + ] + } + ] + }, + "Point3d": { + "type": "object", + "required": [ + "x", + "y", + "z" + ], + "properties": { + "x": { + "type": "number", + "format": "double" + }, + "y": { + "type": "number", + "format": "double" + }, + "z": { + "type": "number", + "format": "double" + } + } + }, + "BasePath": { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "units" + ], + "properties": { + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + "TagIdentifier": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string" + } + } + }, + "EdgeCut": { + "description": "A fillet or a chamfer.", + "oneOf": [ + { + "description": "A fillet.", + "type": "object", + "required": [ + "edgeId", + "id", + "radius", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "fillet" + ] + }, + "id": { + "description": "The id of the engine command that called this fillet.", + "type": "string", + "format": "uuid" + }, + "radius": { + "type": "number", + "format": "double" + }, + "edgeId": { + "description": "The engine id of the edge to fillet.", + "type": "string", + "format": "uuid" + }, + "tag": { + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + } + } + }, + { + "description": "A chamfer.", + "type": "object", + "required": [ + "edgeId", + "id", + "length", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "chamfer" + ] + }, + "id": { + "description": "The id of the engine command that called this chamfer.", + "type": "string", + "format": "uuid" + }, + "length": { + "type": "number", + "format": "double" + }, + "edgeId": { + "description": "The engine id of the edge to chamfer.", + "type": "string", + "format": "uuid" + }, + "tag": { + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + } + } + } + ] + } + } + }, + "required": true, + "includeInSnippet": true, + "labelRequired": true + }, + "unpublished": false, + "deprecated": true, + "examples": [ + "fn cube(center) {\n return startSketchOn('XY')\n |> startProfileAt([center[0] - 10, center[1] - 10], %)\n |> line(endAbsolute = [center[0] + 10, center[1] - 10])\n |> line(endAbsolute = [center[0] + 10, center[1] + 10])\n |> line(endAbsolute = [center[0] - 10, center[1] + 10])\n |> close()\n |> extrude(length = 10)\n}\n\npart001 = cube([0, 0])\npart002 = cube([8, 8])\n\nintersectedPart = intersect([part001, part002])" + ] + }, { "name": "lastSegX", "summary": "Extract the 'x' axis value of the last line segment in the provided 2-d sketch.", @@ -291923,6 +295134,4816 @@ "a1 = startSketchOn({\n plane = {\n origin = { x = 0, y = 0, z = 0 },\n xAxis = { x = 1, y = 0, z = 0 },\n yAxis = { x = 0, y = 1, z = 0 },\n zAxis = { x = 0, y = 0, z = 1 }\n }\n })\n |> startProfileAt([0, 0], %)\n |> line(end = [100.0, 0])\n |> yLine(length = -100.0)\n |> xLine(length = -100.0)\n |> yLine(length = 100.0)\n |> close()\n |> extrude(length = 3.14)" ] }, + { + "name": "subtract", + "summary": "Subtract removes tool solids from base solids, leaving the remaining material.", + "description": "Performs a boolean subtraction operation, removing the volume of one or more tool solids from one or more base solids. The result is a new solid representing the material that remains after all tool solids have been cut away. This function is essential for machining simulations, cavity creation, and complex multi-body part modeling.", + "tags": [], + "keywordArguments": true, + "args": [ + { + "name": "solids", + "type": "[Solid]", + "schema": { + "$schema": "https://spec.openapis.org/oas/3.0/schema/2019-04-02#/definitions/Schema", + "title": "Array_of_Solid", + "type": "array", + "items": { + "$ref": "#/components/schemas/Solid" + }, + "definitions": { + "Solid": { + "type": "object", + "required": [ + "artifactId", + "height", + "id", + "sketch", + "units", + "value" + ], + "properties": { + "id": { + "description": "The id of the solid.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID of the solid. Unlike `id`, this doesn't change.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "description": "The extrude surfaces.", + "type": "array", + "items": { + "$ref": "#/components/schemas/ExtrudeSurface" + } + }, + "sketch": { + "description": "The sketch.", + "allOf": [ + { + "$ref": "#/components/schemas/Sketch" + } + ] + }, + "height": { + "description": "The height of the solid.", + "type": "number", + "format": "double" + }, + "startCapId": { + "description": "The id of the extrusion start cap", + "type": "string", + "format": "uuid", + "nullable": true + }, + "endCapId": { + "description": "The id of the extrusion end cap", + "type": "string", + "format": "uuid", + "nullable": true + }, + "edgeCuts": { + "description": "Chamfers or fillets on this solid.", + "type": "array", + "items": { + "$ref": "#/components/schemas/EdgeCut" + } + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + "ArtifactId": { + "type": "string", + "format": "uuid" + }, + "ExtrudeSurface": { + "description": "An extrude surface.", + "oneOf": [ + { + "description": "An extrude plane.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "extrudePlane" + ] + }, + "faceId": { + "description": "The face id for the extrude plane.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "An extruded arc.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "extrudeArc" + ] + }, + "faceId": { + "description": "The face id for the extrude plane.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "chamfer" + ] + }, + "faceId": { + "description": "The id for the chamfer surface.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "fillet" + ] + }, + "faceId": { + "description": "The id for the fillet surface.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + } + ] + }, + "TagDeclarator": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string" + }, + "digest": { + "type": "array", + "items": { + "type": "integer", + "format": "uint8", + "minimum": 0.0 + }, + "maxItems": 32, + "minItems": 32, + "nullable": true + }, + "start": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + }, + "end": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + } + } + }, + "SourceRange": { + "description": "The first two items are the start and end points (byte offsets from the start of the file). The third item is whether the source range belongs to the 'main' file, i.e., the file currently being rendered/displayed in the editor.", + "type": "array", + "items": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + }, + "maxItems": 3, + "minItems": 3 + }, + "Sketch": { + "type": "object", + "required": [ + "artifactId", + "id", + "on", + "originalId", + "paths", + "start", + "units" + ], + "properties": { + "id": { + "description": "The id of the sketch (this will change when the engine's reference to it changes).", + "type": "string", + "format": "uuid" + }, + "paths": { + "description": "The paths in the sketch.", + "type": "array", + "items": { + "$ref": "#/components/schemas/Path" + } + }, + "on": { + "description": "What the sketch is on (can be a plane or a face).", + "allOf": [ + { + "$ref": "#/components/schemas/SketchSurface" + } + ] + }, + "start": { + "description": "The starting path.", + "allOf": [ + { + "$ref": "#/components/schemas/BasePath" + } + ] + }, + "tags": { + "description": "Tag identifiers that have been declared in this sketch.", + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/TagIdentifier" + } + }, + "artifactId": { + "description": "The original id of the sketch. This stays the same even if the sketch is is sketched on face etc.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "originalId": { + "type": "string", + "format": "uuid" + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + "Path": { + "description": "A path.", + "oneOf": [ + { + "description": "A path that goes to a point.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "ToPoint" + ] + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A arc that is tangential to the last path segment that goes to a point", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "TangentialArcTo" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "ccw": { + "description": "arc's direction", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A arc that is tangential to the last path segment", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "TangentialArc" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "ccw": { + "description": "arc's direction", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "a complete arc", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "radius", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Circle" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "radius": { + "description": "the arc's radius", + "type": "number", + "format": "double" + }, + "ccw": { + "description": "arc's direction This is used to compute the tangential angle.", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "p1", + "p2", + "p3", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "CircleThreePoint" + ] + }, + "p1": { + "description": "Point 1 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p2": { + "description": "Point 2 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p3": { + "description": "Point 3 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "p1", + "p2", + "p3", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "ArcThreePoint" + ] + }, + "p1": { + "description": "Point 1 of the arc (base on the end of previous segment)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p2": { + "description": "Point 2 of the arc (interior kwarg)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p3": { + "description": "Point 3 of the arc (end kwarg)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A path that is horizontal.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units", + "x" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Horizontal" + ] + }, + "x": { + "description": "The x coordinate.", + "type": "number", + "format": "double" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "An angled line to.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "AngledLineTo" + ] + }, + "x": { + "description": "The x coordinate.", + "type": "number", + "format": "double", + "nullable": true + }, + "y": { + "description": "The y coordinate.", + "type": "number", + "format": "double", + "nullable": true + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Base" + ] + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A circular arc, not necessarily tangential to the current point.", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "radius", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Arc" + ] + }, + "center": { + "description": "Center of the circle that this arc is drawn on.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "radius": { + "description": "Radius of the circle that this arc is drawn on.", + "type": "number", + "format": "double" + }, + "ccw": { + "description": "True if the arc is counterclockwise.", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + } + ] + }, + "UnitLen": { + "description": "A unit of length.", + "oneOf": [ + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Mm" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Cm" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "M" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Inches" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Feet" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Yards" + ] + } + } + } + ] + }, + "GeoMeta": { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "id", + "sourceRange" + ], + "properties": { + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + "SketchSurface": { + "description": "A sketch type.", + "oneOf": [ + { + "type": "object", + "required": [ + "artifactId", + "id", + "origin", + "type", + "units", + "value", + "xAxis", + "yAxis", + "zAxis" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "plane" + ] + }, + "id": { + "description": "The id of the plane.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "$ref": "#/components/schemas/PlaneType" + }, + "origin": { + "description": "Origin of the plane.", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "xAxis": { + "description": "What should the plane's X axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "yAxis": { + "description": "What should the plane's Y axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "zAxis": { + "description": "The z-axis (normal).", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + { + "description": "A face.", + "type": "object", + "required": [ + "artifactId", + "id", + "solid", + "type", + "units", + "value", + "xAxis", + "yAxis", + "zAxis" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "face" + ] + }, + "id": { + "description": "The id of the face.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "description": "The tag of the face.", + "type": "string" + }, + "xAxis": { + "description": "What should the face's X axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "yAxis": { + "description": "What should the face's Y axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "zAxis": { + "description": "The z-axis (normal).", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "solid": { + "description": "The solid the face is on.", + "allOf": [ + { + "$ref": "#/components/schemas/Solid" + } + ] + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + } + ] + }, + "PlaneType": { + "description": "Type for a plane.", + "oneOf": [ + { + "type": "string", + "enum": [ + "XY", + "XZ", + "YZ" + ] + }, + { + "description": "A custom plane.", + "type": "string", + "enum": [ + "Custom" + ] + }, + { + "description": "A custom plane which has not been sent to the engine. It must be sent before it is used.", + "type": "string", + "enum": [ + "Uninit" + ] + } + ] + }, + "Point3d": { + "type": "object", + "required": [ + "x", + "y", + "z" + ], + "properties": { + "x": { + "type": "number", + "format": "double" + }, + "y": { + "type": "number", + "format": "double" + }, + "z": { + "type": "number", + "format": "double" + } + } + }, + "BasePath": { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "units" + ], + "properties": { + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + "TagIdentifier": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string" + } + } + }, + "EdgeCut": { + "description": "A fillet or a chamfer.", + "oneOf": [ + { + "description": "A fillet.", + "type": "object", + "required": [ + "edgeId", + "id", + "radius", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "fillet" + ] + }, + "id": { + "description": "The id of the engine command that called this fillet.", + "type": "string", + "format": "uuid" + }, + "radius": { + "type": "number", + "format": "double" + }, + "edgeId": { + "description": "The engine id of the edge to fillet.", + "type": "string", + "format": "uuid" + }, + "tag": { + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + } + } + }, + { + "description": "A chamfer.", + "type": "object", + "required": [ + "edgeId", + "id", + "length", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "chamfer" + ] + }, + "id": { + "description": "The id of the engine command that called this chamfer.", + "type": "string", + "format": "uuid" + }, + "length": { + "type": "number", + "format": "double" + }, + "edgeId": { + "description": "The engine id of the edge to chamfer.", + "type": "string", + "format": "uuid" + }, + "tag": { + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + } + } + } + ] + } + } + }, + "required": true, + "includeInSnippet": true, + "description": "The solids to intersect.", + "labelRequired": false + }, + { + "name": "tools", + "type": "[Solid]", + "schema": { + "$schema": "https://spec.openapis.org/oas/3.0/schema/2019-04-02#/definitions/Schema", + "title": "Array_of_Solid", + "type": "array", + "items": { + "$ref": "#/components/schemas/Solid" + }, + "definitions": { + "Solid": { + "type": "object", + "required": [ + "artifactId", + "height", + "id", + "sketch", + "units", + "value" + ], + "properties": { + "id": { + "description": "The id of the solid.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID of the solid. Unlike `id`, this doesn't change.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "description": "The extrude surfaces.", + "type": "array", + "items": { + "$ref": "#/components/schemas/ExtrudeSurface" + } + }, + "sketch": { + "description": "The sketch.", + "allOf": [ + { + "$ref": "#/components/schemas/Sketch" + } + ] + }, + "height": { + "description": "The height of the solid.", + "type": "number", + "format": "double" + }, + "startCapId": { + "description": "The id of the extrusion start cap", + "type": "string", + "format": "uuid", + "nullable": true + }, + "endCapId": { + "description": "The id of the extrusion end cap", + "type": "string", + "format": "uuid", + "nullable": true + }, + "edgeCuts": { + "description": "Chamfers or fillets on this solid.", + "type": "array", + "items": { + "$ref": "#/components/schemas/EdgeCut" + } + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + "ArtifactId": { + "type": "string", + "format": "uuid" + }, + "ExtrudeSurface": { + "description": "An extrude surface.", + "oneOf": [ + { + "description": "An extrude plane.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "extrudePlane" + ] + }, + "faceId": { + "description": "The face id for the extrude plane.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "An extruded arc.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "extrudeArc" + ] + }, + "faceId": { + "description": "The face id for the extrude plane.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "chamfer" + ] + }, + "faceId": { + "description": "The id for the chamfer surface.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "fillet" + ] + }, + "faceId": { + "description": "The id for the fillet surface.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + } + ] + }, + "TagDeclarator": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string" + }, + "digest": { + "type": "array", + "items": { + "type": "integer", + "format": "uint8", + "minimum": 0.0 + }, + "maxItems": 32, + "minItems": 32, + "nullable": true + }, + "start": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + }, + "end": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + } + } + }, + "SourceRange": { + "description": "The first two items are the start and end points (byte offsets from the start of the file). The third item is whether the source range belongs to the 'main' file, i.e., the file currently being rendered/displayed in the editor.", + "type": "array", + "items": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + }, + "maxItems": 3, + "minItems": 3 + }, + "Sketch": { + "type": "object", + "required": [ + "artifactId", + "id", + "on", + "originalId", + "paths", + "start", + "units" + ], + "properties": { + "id": { + "description": "The id of the sketch (this will change when the engine's reference to it changes).", + "type": "string", + "format": "uuid" + }, + "paths": { + "description": "The paths in the sketch.", + "type": "array", + "items": { + "$ref": "#/components/schemas/Path" + } + }, + "on": { + "description": "What the sketch is on (can be a plane or a face).", + "allOf": [ + { + "$ref": "#/components/schemas/SketchSurface" + } + ] + }, + "start": { + "description": "The starting path.", + "allOf": [ + { + "$ref": "#/components/schemas/BasePath" + } + ] + }, + "tags": { + "description": "Tag identifiers that have been declared in this sketch.", + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/TagIdentifier" + } + }, + "artifactId": { + "description": "The original id of the sketch. This stays the same even if the sketch is is sketched on face etc.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "originalId": { + "type": "string", + "format": "uuid" + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + "Path": { + "description": "A path.", + "oneOf": [ + { + "description": "A path that goes to a point.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "ToPoint" + ] + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A arc that is tangential to the last path segment that goes to a point", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "TangentialArcTo" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "ccw": { + "description": "arc's direction", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A arc that is tangential to the last path segment", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "TangentialArc" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "ccw": { + "description": "arc's direction", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "a complete arc", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "radius", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Circle" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "radius": { + "description": "the arc's radius", + "type": "number", + "format": "double" + }, + "ccw": { + "description": "arc's direction This is used to compute the tangential angle.", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "p1", + "p2", + "p3", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "CircleThreePoint" + ] + }, + "p1": { + "description": "Point 1 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p2": { + "description": "Point 2 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p3": { + "description": "Point 3 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "p1", + "p2", + "p3", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "ArcThreePoint" + ] + }, + "p1": { + "description": "Point 1 of the arc (base on the end of previous segment)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p2": { + "description": "Point 2 of the arc (interior kwarg)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p3": { + "description": "Point 3 of the arc (end kwarg)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A path that is horizontal.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units", + "x" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Horizontal" + ] + }, + "x": { + "description": "The x coordinate.", + "type": "number", + "format": "double" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "An angled line to.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "AngledLineTo" + ] + }, + "x": { + "description": "The x coordinate.", + "type": "number", + "format": "double", + "nullable": true + }, + "y": { + "description": "The y coordinate.", + "type": "number", + "format": "double", + "nullable": true + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Base" + ] + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A circular arc, not necessarily tangential to the current point.", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "radius", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Arc" + ] + }, + "center": { + "description": "Center of the circle that this arc is drawn on.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "radius": { + "description": "Radius of the circle that this arc is drawn on.", + "type": "number", + "format": "double" + }, + "ccw": { + "description": "True if the arc is counterclockwise.", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + } + ] + }, + "UnitLen": { + "description": "A unit of length.", + "oneOf": [ + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Mm" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Cm" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "M" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Inches" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Feet" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Yards" + ] + } + } + } + ] + }, + "GeoMeta": { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "id", + "sourceRange" + ], + "properties": { + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + "SketchSurface": { + "description": "A sketch type.", + "oneOf": [ + { + "type": "object", + "required": [ + "artifactId", + "id", + "origin", + "type", + "units", + "value", + "xAxis", + "yAxis", + "zAxis" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "plane" + ] + }, + "id": { + "description": "The id of the plane.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "$ref": "#/components/schemas/PlaneType" + }, + "origin": { + "description": "Origin of the plane.", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "xAxis": { + "description": "What should the plane's X axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "yAxis": { + "description": "What should the plane's Y axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "zAxis": { + "description": "The z-axis (normal).", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + { + "description": "A face.", + "type": "object", + "required": [ + "artifactId", + "id", + "solid", + "type", + "units", + "value", + "xAxis", + "yAxis", + "zAxis" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "face" + ] + }, + "id": { + "description": "The id of the face.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "description": "The tag of the face.", + "type": "string" + }, + "xAxis": { + "description": "What should the face's X axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "yAxis": { + "description": "What should the face's Y axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "zAxis": { + "description": "The z-axis (normal).", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "solid": { + "description": "The solid the face is on.", + "allOf": [ + { + "$ref": "#/components/schemas/Solid" + } + ] + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + } + ] + }, + "PlaneType": { + "description": "Type for a plane.", + "oneOf": [ + { + "type": "string", + "enum": [ + "XY", + "XZ", + "YZ" + ] + }, + { + "description": "A custom plane.", + "type": "string", + "enum": [ + "Custom" + ] + }, + { + "description": "A custom plane which has not been sent to the engine. It must be sent before it is used.", + "type": "string", + "enum": [ + "Uninit" + ] + } + ] + }, + "Point3d": { + "type": "object", + "required": [ + "x", + "y", + "z" + ], + "properties": { + "x": { + "type": "number", + "format": "double" + }, + "y": { + "type": "number", + "format": "double" + }, + "z": { + "type": "number", + "format": "double" + } + } + }, + "BasePath": { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "units" + ], + "properties": { + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + "TagIdentifier": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string" + } + } + }, + "EdgeCut": { + "description": "A fillet or a chamfer.", + "oneOf": [ + { + "description": "A fillet.", + "type": "object", + "required": [ + "edgeId", + "id", + "radius", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "fillet" + ] + }, + "id": { + "description": "The id of the engine command that called this fillet.", + "type": "string", + "format": "uuid" + }, + "radius": { + "type": "number", + "format": "double" + }, + "edgeId": { + "description": "The engine id of the edge to fillet.", + "type": "string", + "format": "uuid" + }, + "tag": { + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + } + } + }, + { + "description": "A chamfer.", + "type": "object", + "required": [ + "edgeId", + "id", + "length", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "chamfer" + ] + }, + "id": { + "description": "The id of the engine command that called this chamfer.", + "type": "string", + "format": "uuid" + }, + "length": { + "type": "number", + "format": "double" + }, + "edgeId": { + "description": "The engine id of the edge to chamfer.", + "type": "string", + "format": "uuid" + }, + "tag": { + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + } + } + } + ] + } + } + }, + "required": true, + "includeInSnippet": true, + "description": "The solids to subtract.", + "labelRequired": true + } + ], + "returnValue": { + "name": "", + "type": "[Solid]", + "schema": { + "$schema": "https://spec.openapis.org/oas/3.0/schema/2019-04-02#/definitions/Schema", + "title": "Array_of_Solid", + "type": "array", + "items": { + "$ref": "#/components/schemas/Solid" + }, + "definitions": { + "Solid": { + "type": "object", + "required": [ + "artifactId", + "height", + "id", + "sketch", + "units", + "value" + ], + "properties": { + "id": { + "description": "The id of the solid.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID of the solid. Unlike `id`, this doesn't change.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "description": "The extrude surfaces.", + "type": "array", + "items": { + "$ref": "#/components/schemas/ExtrudeSurface" + } + }, + "sketch": { + "description": "The sketch.", + "allOf": [ + { + "$ref": "#/components/schemas/Sketch" + } + ] + }, + "height": { + "description": "The height of the solid.", + "type": "number", + "format": "double" + }, + "startCapId": { + "description": "The id of the extrusion start cap", + "type": "string", + "format": "uuid", + "nullable": true + }, + "endCapId": { + "description": "The id of the extrusion end cap", + "type": "string", + "format": "uuid", + "nullable": true + }, + "edgeCuts": { + "description": "Chamfers or fillets on this solid.", + "type": "array", + "items": { + "$ref": "#/components/schemas/EdgeCut" + } + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + "ArtifactId": { + "type": "string", + "format": "uuid" + }, + "ExtrudeSurface": { + "description": "An extrude surface.", + "oneOf": [ + { + "description": "An extrude plane.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "extrudePlane" + ] + }, + "faceId": { + "description": "The face id for the extrude plane.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "An extruded arc.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "extrudeArc" + ] + }, + "faceId": { + "description": "The face id for the extrude plane.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "chamfer" + ] + }, + "faceId": { + "description": "The id for the chamfer surface.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "fillet" + ] + }, + "faceId": { + "description": "The id for the fillet surface.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + } + ] + }, + "TagDeclarator": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string" + }, + "digest": { + "type": "array", + "items": { + "type": "integer", + "format": "uint8", + "minimum": 0.0 + }, + "maxItems": 32, + "minItems": 32, + "nullable": true + }, + "start": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + }, + "end": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + } + } + }, + "SourceRange": { + "description": "The first two items are the start and end points (byte offsets from the start of the file). The third item is whether the source range belongs to the 'main' file, i.e., the file currently being rendered/displayed in the editor.", + "type": "array", + "items": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + }, + "maxItems": 3, + "minItems": 3 + }, + "Sketch": { + "type": "object", + "required": [ + "artifactId", + "id", + "on", + "originalId", + "paths", + "start", + "units" + ], + "properties": { + "id": { + "description": "The id of the sketch (this will change when the engine's reference to it changes).", + "type": "string", + "format": "uuid" + }, + "paths": { + "description": "The paths in the sketch.", + "type": "array", + "items": { + "$ref": "#/components/schemas/Path" + } + }, + "on": { + "description": "What the sketch is on (can be a plane or a face).", + "allOf": [ + { + "$ref": "#/components/schemas/SketchSurface" + } + ] + }, + "start": { + "description": "The starting path.", + "allOf": [ + { + "$ref": "#/components/schemas/BasePath" + } + ] + }, + "tags": { + "description": "Tag identifiers that have been declared in this sketch.", + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/TagIdentifier" + } + }, + "artifactId": { + "description": "The original id of the sketch. This stays the same even if the sketch is is sketched on face etc.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "originalId": { + "type": "string", + "format": "uuid" + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + "Path": { + "description": "A path.", + "oneOf": [ + { + "description": "A path that goes to a point.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "ToPoint" + ] + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A arc that is tangential to the last path segment that goes to a point", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "TangentialArcTo" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "ccw": { + "description": "arc's direction", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A arc that is tangential to the last path segment", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "TangentialArc" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "ccw": { + "description": "arc's direction", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "a complete arc", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "radius", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Circle" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "radius": { + "description": "the arc's radius", + "type": "number", + "format": "double" + }, + "ccw": { + "description": "arc's direction This is used to compute the tangential angle.", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "p1", + "p2", + "p3", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "CircleThreePoint" + ] + }, + "p1": { + "description": "Point 1 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p2": { + "description": "Point 2 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p3": { + "description": "Point 3 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "p1", + "p2", + "p3", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "ArcThreePoint" + ] + }, + "p1": { + "description": "Point 1 of the arc (base on the end of previous segment)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p2": { + "description": "Point 2 of the arc (interior kwarg)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p3": { + "description": "Point 3 of the arc (end kwarg)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A path that is horizontal.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units", + "x" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Horizontal" + ] + }, + "x": { + "description": "The x coordinate.", + "type": "number", + "format": "double" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "An angled line to.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "AngledLineTo" + ] + }, + "x": { + "description": "The x coordinate.", + "type": "number", + "format": "double", + "nullable": true + }, + "y": { + "description": "The y coordinate.", + "type": "number", + "format": "double", + "nullable": true + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Base" + ] + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A circular arc, not necessarily tangential to the current point.", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "radius", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Arc" + ] + }, + "center": { + "description": "Center of the circle that this arc is drawn on.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "radius": { + "description": "Radius of the circle that this arc is drawn on.", + "type": "number", + "format": "double" + }, + "ccw": { + "description": "True if the arc is counterclockwise.", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + } + ] + }, + "UnitLen": { + "description": "A unit of length.", + "oneOf": [ + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Mm" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Cm" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "M" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Inches" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Feet" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Yards" + ] + } + } + } + ] + }, + "GeoMeta": { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "id", + "sourceRange" + ], + "properties": { + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + "SketchSurface": { + "description": "A sketch type.", + "oneOf": [ + { + "type": "object", + "required": [ + "artifactId", + "id", + "origin", + "type", + "units", + "value", + "xAxis", + "yAxis", + "zAxis" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "plane" + ] + }, + "id": { + "description": "The id of the plane.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "$ref": "#/components/schemas/PlaneType" + }, + "origin": { + "description": "Origin of the plane.", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "xAxis": { + "description": "What should the plane's X axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "yAxis": { + "description": "What should the plane's Y axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "zAxis": { + "description": "The z-axis (normal).", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + { + "description": "A face.", + "type": "object", + "required": [ + "artifactId", + "id", + "solid", + "type", + "units", + "value", + "xAxis", + "yAxis", + "zAxis" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "face" + ] + }, + "id": { + "description": "The id of the face.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "description": "The tag of the face.", + "type": "string" + }, + "xAxis": { + "description": "What should the face's X axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "yAxis": { + "description": "What should the face's Y axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "zAxis": { + "description": "The z-axis (normal).", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "solid": { + "description": "The solid the face is on.", + "allOf": [ + { + "$ref": "#/components/schemas/Solid" + } + ] + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + } + ] + }, + "PlaneType": { + "description": "Type for a plane.", + "oneOf": [ + { + "type": "string", + "enum": [ + "XY", + "XZ", + "YZ" + ] + }, + { + "description": "A custom plane.", + "type": "string", + "enum": [ + "Custom" + ] + }, + { + "description": "A custom plane which has not been sent to the engine. It must be sent before it is used.", + "type": "string", + "enum": [ + "Uninit" + ] + } + ] + }, + "Point3d": { + "type": "object", + "required": [ + "x", + "y", + "z" + ], + "properties": { + "x": { + "type": "number", + "format": "double" + }, + "y": { + "type": "number", + "format": "double" + }, + "z": { + "type": "number", + "format": "double" + } + } + }, + "BasePath": { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "units" + ], + "properties": { + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + "TagIdentifier": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string" + } + } + }, + "EdgeCut": { + "description": "A fillet or a chamfer.", + "oneOf": [ + { + "description": "A fillet.", + "type": "object", + "required": [ + "edgeId", + "id", + "radius", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "fillet" + ] + }, + "id": { + "description": "The id of the engine command that called this fillet.", + "type": "string", + "format": "uuid" + }, + "radius": { + "type": "number", + "format": "double" + }, + "edgeId": { + "description": "The engine id of the edge to fillet.", + "type": "string", + "format": "uuid" + }, + "tag": { + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + } + } + }, + { + "description": "A chamfer.", + "type": "object", + "required": [ + "edgeId", + "id", + "length", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "chamfer" + ] + }, + "id": { + "description": "The id of the engine command that called this chamfer.", + "type": "string", + "format": "uuid" + }, + "length": { + "type": "number", + "format": "double" + }, + "edgeId": { + "description": "The engine id of the edge to chamfer.", + "type": "string", + "format": "uuid" + }, + "tag": { + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + } + } + } + ] + } + } + }, + "required": true, + "includeInSnippet": true, + "labelRequired": true + }, + "unpublished": false, + "deprecated": true, + "examples": [ + "fn cube(center) {\n return startSketchOn('XY')\n |> startProfileAt([center[0] - 10, center[1] - 10], %)\n |> line(endAbsolute = [center[0] + 10, center[1] - 10])\n |> line(endAbsolute = [center[0] + 10, center[1] + 10])\n |> line(endAbsolute = [center[0] - 10, center[1] + 10])\n |> close()\n |> extrude(length = 10)\n}\n\npart001 = cube([0, 0])\npart002 = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> extrude(length = 10)\n\nsubtractedPart = subtract([part001], tools = [part002])" + ] + }, { "name": "sweep", "summary": "Extrude a sketch along a path.", @@ -324910,6 +332931,3217 @@ "// Translate and rotate a sketch to create a loft.\nsketch001 = startSketchOn('XY')\n\nfn square() {\n return startProfileAt([-10, 10], sketch001)\n |> xLine(length = 20)\n |> yLine(length = -20)\n |> xLine(length = -20)\n |> line(endAbsolute = [profileStartX(%), profileStartY(%)])\n |> close()\n}\n\nprofile001 = square()\n\nprofile002 = square()\n |> translate(translate = [0, 0, 20])\n |> rotate(axis = [0, 0, 1.0], angle = 45)\n\nloft([profile001, profile002])" ] }, + { + "name": "union", + "summary": "Union two or more solids into a single solid.", + "description": "", + "tags": [], + "keywordArguments": true, + "args": [ + { + "name": "solids", + "type": "[Solid]", + "schema": { + "$schema": "https://spec.openapis.org/oas/3.0/schema/2019-04-02#/definitions/Schema", + "title": "Array_of_Solid", + "type": "array", + "items": { + "$ref": "#/components/schemas/Solid" + }, + "definitions": { + "Solid": { + "type": "object", + "required": [ + "artifactId", + "height", + "id", + "sketch", + "units", + "value" + ], + "properties": { + "id": { + "description": "The id of the solid.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID of the solid. Unlike `id`, this doesn't change.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "description": "The extrude surfaces.", + "type": "array", + "items": { + "$ref": "#/components/schemas/ExtrudeSurface" + } + }, + "sketch": { + "description": "The sketch.", + "allOf": [ + { + "$ref": "#/components/schemas/Sketch" + } + ] + }, + "height": { + "description": "The height of the solid.", + "type": "number", + "format": "double" + }, + "startCapId": { + "description": "The id of the extrusion start cap", + "type": "string", + "format": "uuid", + "nullable": true + }, + "endCapId": { + "description": "The id of the extrusion end cap", + "type": "string", + "format": "uuid", + "nullable": true + }, + "edgeCuts": { + "description": "Chamfers or fillets on this solid.", + "type": "array", + "items": { + "$ref": "#/components/schemas/EdgeCut" + } + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + "ArtifactId": { + "type": "string", + "format": "uuid" + }, + "ExtrudeSurface": { + "description": "An extrude surface.", + "oneOf": [ + { + "description": "An extrude plane.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "extrudePlane" + ] + }, + "faceId": { + "description": "The face id for the extrude plane.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "An extruded arc.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "extrudeArc" + ] + }, + "faceId": { + "description": "The face id for the extrude plane.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "chamfer" + ] + }, + "faceId": { + "description": "The id for the chamfer surface.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "fillet" + ] + }, + "faceId": { + "description": "The id for the fillet surface.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + } + ] + }, + "TagDeclarator": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string" + }, + "digest": { + "type": "array", + "items": { + "type": "integer", + "format": "uint8", + "minimum": 0.0 + }, + "maxItems": 32, + "minItems": 32, + "nullable": true + }, + "start": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + }, + "end": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + } + } + }, + "SourceRange": { + "description": "The first two items are the start and end points (byte offsets from the start of the file). The third item is whether the source range belongs to the 'main' file, i.e., the file currently being rendered/displayed in the editor.", + "type": "array", + "items": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + }, + "maxItems": 3, + "minItems": 3 + }, + "Sketch": { + "type": "object", + "required": [ + "artifactId", + "id", + "on", + "originalId", + "paths", + "start", + "units" + ], + "properties": { + "id": { + "description": "The id of the sketch (this will change when the engine's reference to it changes).", + "type": "string", + "format": "uuid" + }, + "paths": { + "description": "The paths in the sketch.", + "type": "array", + "items": { + "$ref": "#/components/schemas/Path" + } + }, + "on": { + "description": "What the sketch is on (can be a plane or a face).", + "allOf": [ + { + "$ref": "#/components/schemas/SketchSurface" + } + ] + }, + "start": { + "description": "The starting path.", + "allOf": [ + { + "$ref": "#/components/schemas/BasePath" + } + ] + }, + "tags": { + "description": "Tag identifiers that have been declared in this sketch.", + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/TagIdentifier" + } + }, + "artifactId": { + "description": "The original id of the sketch. This stays the same even if the sketch is is sketched on face etc.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "originalId": { + "type": "string", + "format": "uuid" + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + "Path": { + "description": "A path.", + "oneOf": [ + { + "description": "A path that goes to a point.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "ToPoint" + ] + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A arc that is tangential to the last path segment that goes to a point", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "TangentialArcTo" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "ccw": { + "description": "arc's direction", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A arc that is tangential to the last path segment", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "TangentialArc" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "ccw": { + "description": "arc's direction", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "a complete arc", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "radius", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Circle" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "radius": { + "description": "the arc's radius", + "type": "number", + "format": "double" + }, + "ccw": { + "description": "arc's direction This is used to compute the tangential angle.", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "p1", + "p2", + "p3", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "CircleThreePoint" + ] + }, + "p1": { + "description": "Point 1 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p2": { + "description": "Point 2 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p3": { + "description": "Point 3 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "p1", + "p2", + "p3", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "ArcThreePoint" + ] + }, + "p1": { + "description": "Point 1 of the arc (base on the end of previous segment)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p2": { + "description": "Point 2 of the arc (interior kwarg)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p3": { + "description": "Point 3 of the arc (end kwarg)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A path that is horizontal.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units", + "x" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Horizontal" + ] + }, + "x": { + "description": "The x coordinate.", + "type": "number", + "format": "double" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "An angled line to.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "AngledLineTo" + ] + }, + "x": { + "description": "The x coordinate.", + "type": "number", + "format": "double", + "nullable": true + }, + "y": { + "description": "The y coordinate.", + "type": "number", + "format": "double", + "nullable": true + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Base" + ] + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A circular arc, not necessarily tangential to the current point.", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "radius", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Arc" + ] + }, + "center": { + "description": "Center of the circle that this arc is drawn on.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "radius": { + "description": "Radius of the circle that this arc is drawn on.", + "type": "number", + "format": "double" + }, + "ccw": { + "description": "True if the arc is counterclockwise.", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + } + ] + }, + "UnitLen": { + "description": "A unit of length.", + "oneOf": [ + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Mm" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Cm" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "M" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Inches" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Feet" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Yards" + ] + } + } + } + ] + }, + "GeoMeta": { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "id", + "sourceRange" + ], + "properties": { + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + "SketchSurface": { + "description": "A sketch type.", + "oneOf": [ + { + "type": "object", + "required": [ + "artifactId", + "id", + "origin", + "type", + "units", + "value", + "xAxis", + "yAxis", + "zAxis" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "plane" + ] + }, + "id": { + "description": "The id of the plane.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "$ref": "#/components/schemas/PlaneType" + }, + "origin": { + "description": "Origin of the plane.", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "xAxis": { + "description": "What should the plane's X axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "yAxis": { + "description": "What should the plane's Y axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "zAxis": { + "description": "The z-axis (normal).", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + { + "description": "A face.", + "type": "object", + "required": [ + "artifactId", + "id", + "solid", + "type", + "units", + "value", + "xAxis", + "yAxis", + "zAxis" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "face" + ] + }, + "id": { + "description": "The id of the face.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "description": "The tag of the face.", + "type": "string" + }, + "xAxis": { + "description": "What should the face's X axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "yAxis": { + "description": "What should the face's Y axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "zAxis": { + "description": "The z-axis (normal).", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "solid": { + "description": "The solid the face is on.", + "allOf": [ + { + "$ref": "#/components/schemas/Solid" + } + ] + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + } + ] + }, + "PlaneType": { + "description": "Type for a plane.", + "oneOf": [ + { + "type": "string", + "enum": [ + "XY", + "XZ", + "YZ" + ] + }, + { + "description": "A custom plane.", + "type": "string", + "enum": [ + "Custom" + ] + }, + { + "description": "A custom plane which has not been sent to the engine. It must be sent before it is used.", + "type": "string", + "enum": [ + "Uninit" + ] + } + ] + }, + "Point3d": { + "type": "object", + "required": [ + "x", + "y", + "z" + ], + "properties": { + "x": { + "type": "number", + "format": "double" + }, + "y": { + "type": "number", + "format": "double" + }, + "z": { + "type": "number", + "format": "double" + } + } + }, + "BasePath": { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "units" + ], + "properties": { + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + "TagIdentifier": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string" + } + } + }, + "EdgeCut": { + "description": "A fillet or a chamfer.", + "oneOf": [ + { + "description": "A fillet.", + "type": "object", + "required": [ + "edgeId", + "id", + "radius", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "fillet" + ] + }, + "id": { + "description": "The id of the engine command that called this fillet.", + "type": "string", + "format": "uuid" + }, + "radius": { + "type": "number", + "format": "double" + }, + "edgeId": { + "description": "The engine id of the edge to fillet.", + "type": "string", + "format": "uuid" + }, + "tag": { + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + } + } + }, + { + "description": "A chamfer.", + "type": "object", + "required": [ + "edgeId", + "id", + "length", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "chamfer" + ] + }, + "id": { + "description": "The id of the engine command that called this chamfer.", + "type": "string", + "format": "uuid" + }, + "length": { + "type": "number", + "format": "double" + }, + "edgeId": { + "description": "The engine id of the edge to chamfer.", + "type": "string", + "format": "uuid" + }, + "tag": { + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + } + } + } + ] + } + } + }, + "required": true, + "includeInSnippet": true, + "description": "The solids to union.", + "labelRequired": false + } + ], + "returnValue": { + "name": "", + "type": "[Solid]", + "schema": { + "$schema": "https://spec.openapis.org/oas/3.0/schema/2019-04-02#/definitions/Schema", + "title": "Array_of_Solid", + "type": "array", + "items": { + "$ref": "#/components/schemas/Solid" + }, + "definitions": { + "Solid": { + "type": "object", + "required": [ + "artifactId", + "height", + "id", + "sketch", + "units", + "value" + ], + "properties": { + "id": { + "description": "The id of the solid.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID of the solid. Unlike `id`, this doesn't change.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "description": "The extrude surfaces.", + "type": "array", + "items": { + "$ref": "#/components/schemas/ExtrudeSurface" + } + }, + "sketch": { + "description": "The sketch.", + "allOf": [ + { + "$ref": "#/components/schemas/Sketch" + } + ] + }, + "height": { + "description": "The height of the solid.", + "type": "number", + "format": "double" + }, + "startCapId": { + "description": "The id of the extrusion start cap", + "type": "string", + "format": "uuid", + "nullable": true + }, + "endCapId": { + "description": "The id of the extrusion end cap", + "type": "string", + "format": "uuid", + "nullable": true + }, + "edgeCuts": { + "description": "Chamfers or fillets on this solid.", + "type": "array", + "items": { + "$ref": "#/components/schemas/EdgeCut" + } + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + "ArtifactId": { + "type": "string", + "format": "uuid" + }, + "ExtrudeSurface": { + "description": "An extrude surface.", + "oneOf": [ + { + "description": "An extrude plane.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "extrudePlane" + ] + }, + "faceId": { + "description": "The face id for the extrude plane.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "An extruded arc.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "extrudeArc" + ] + }, + "faceId": { + "description": "The face id for the extrude plane.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "chamfer" + ] + }, + "faceId": { + "description": "The id for the chamfer surface.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "faceId", + "id", + "sourceRange", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "fillet" + ] + }, + "faceId": { + "description": "The id for the fillet surface.", + "type": "string", + "format": "uuid" + }, + "tag": { + "description": "The tag.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + } + ] + }, + "TagDeclarator": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string" + }, + "digest": { + "type": "array", + "items": { + "type": "integer", + "format": "uint8", + "minimum": 0.0 + }, + "maxItems": 32, + "minItems": 32, + "nullable": true + }, + "start": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + }, + "end": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + } + } + }, + "SourceRange": { + "description": "The first two items are the start and end points (byte offsets from the start of the file). The third item is whether the source range belongs to the 'main' file, i.e., the file currently being rendered/displayed in the editor.", + "type": "array", + "items": { + "type": "integer", + "format": "uint", + "minimum": 0.0 + }, + "maxItems": 3, + "minItems": 3 + }, + "Sketch": { + "type": "object", + "required": [ + "artifactId", + "id", + "on", + "originalId", + "paths", + "start", + "units" + ], + "properties": { + "id": { + "description": "The id of the sketch (this will change when the engine's reference to it changes).", + "type": "string", + "format": "uuid" + }, + "paths": { + "description": "The paths in the sketch.", + "type": "array", + "items": { + "$ref": "#/components/schemas/Path" + } + }, + "on": { + "description": "What the sketch is on (can be a plane or a face).", + "allOf": [ + { + "$ref": "#/components/schemas/SketchSurface" + } + ] + }, + "start": { + "description": "The starting path.", + "allOf": [ + { + "$ref": "#/components/schemas/BasePath" + } + ] + }, + "tags": { + "description": "Tag identifiers that have been declared in this sketch.", + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/TagIdentifier" + } + }, + "artifactId": { + "description": "The original id of the sketch. This stays the same even if the sketch is is sketched on face etc.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "originalId": { + "type": "string", + "format": "uuid" + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + "Path": { + "description": "A path.", + "oneOf": [ + { + "description": "A path that goes to a point.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "ToPoint" + ] + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A arc that is tangential to the last path segment that goes to a point", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "TangentialArcTo" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "ccw": { + "description": "arc's direction", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A arc that is tangential to the last path segment", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "TangentialArc" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "ccw": { + "description": "arc's direction", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "a complete arc", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "radius", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Circle" + ] + }, + "center": { + "description": "the arc's center", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "radius": { + "description": "the arc's radius", + "type": "number", + "format": "double" + }, + "ccw": { + "description": "arc's direction This is used to compute the tangential angle.", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "p1", + "p2", + "p3", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "CircleThreePoint" + ] + }, + "p1": { + "description": "Point 1 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p2": { + "description": "Point 2 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p3": { + "description": "Point 3 of the circle", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "p1", + "p2", + "p3", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "ArcThreePoint" + ] + }, + "p1": { + "description": "Point 1 of the arc (base on the end of previous segment)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p2": { + "description": "Point 2 of the arc (interior kwarg)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "p3": { + "description": "Point 3 of the arc (end kwarg)", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A path that is horizontal.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units", + "x" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Horizontal" + ] + }, + "x": { + "description": "The x coordinate.", + "type": "number", + "format": "double" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "An angled line to.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "AngledLineTo" + ] + }, + "x": { + "description": "The x coordinate.", + "type": "number", + "format": "double", + "nullable": true + }, + "y": { + "description": "The y coordinate.", + "type": "number", + "format": "double", + "nullable": true + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Base" + ] + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + { + "description": "A circular arc, not necessarily tangential to the current point.", + "type": "object", + "required": [ + "__geoMeta", + "ccw", + "center", + "from", + "radius", + "to", + "type", + "units" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Arc" + ] + }, + "center": { + "description": "Center of the circle that this arc is drawn on.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "radius": { + "description": "Radius of the circle that this arc is drawn on.", + "type": "number", + "format": "double" + }, + "ccw": { + "description": "True if the arc is counterclockwise.", + "type": "boolean" + }, + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + } + ] + }, + "UnitLen": { + "description": "A unit of length.", + "oneOf": [ + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Mm" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Cm" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "M" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Inches" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Feet" + ] + } + } + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "Yards" + ] + } + } + } + ] + }, + "GeoMeta": { + "description": "Geometry metadata.", + "type": "object", + "required": [ + "id", + "sourceRange" + ], + "properties": { + "id": { + "description": "The id of the geometry.", + "type": "string", + "format": "uuid" + }, + "sourceRange": { + "description": "The source range.", + "allOf": [ + { + "$ref": "#/components/schemas/SourceRange" + } + ] + } + } + }, + "SketchSurface": { + "description": "A sketch type.", + "oneOf": [ + { + "type": "object", + "required": [ + "artifactId", + "id", + "origin", + "type", + "units", + "value", + "xAxis", + "yAxis", + "zAxis" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "plane" + ] + }, + "id": { + "description": "The id of the plane.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "$ref": "#/components/schemas/PlaneType" + }, + "origin": { + "description": "Origin of the plane.", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "xAxis": { + "description": "What should the plane's X axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "yAxis": { + "description": "What should the plane's Y axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "zAxis": { + "description": "The z-axis (normal).", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + }, + { + "description": "A face.", + "type": "object", + "required": [ + "artifactId", + "id", + "solid", + "type", + "units", + "value", + "xAxis", + "yAxis", + "zAxis" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "face" + ] + }, + "id": { + "description": "The id of the face.", + "type": "string", + "format": "uuid" + }, + "artifactId": { + "description": "The artifact ID.", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactId" + } + ] + }, + "value": { + "description": "The tag of the face.", + "type": "string" + }, + "xAxis": { + "description": "What should the face's X axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "yAxis": { + "description": "What should the face's Y axis be?", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "zAxis": { + "description": "The z-axis (normal).", + "allOf": [ + { + "$ref": "#/components/schemas/Point3d" + } + ] + }, + "solid": { + "description": "The solid the face is on.", + "allOf": [ + { + "$ref": "#/components/schemas/Solid" + } + ] + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + } + } + } + ] + }, + "PlaneType": { + "description": "Type for a plane.", + "oneOf": [ + { + "type": "string", + "enum": [ + "XY", + "XZ", + "YZ" + ] + }, + { + "description": "A custom plane.", + "type": "string", + "enum": [ + "Custom" + ] + }, + { + "description": "A custom plane which has not been sent to the engine. It must be sent before it is used.", + "type": "string", + "enum": [ + "Uninit" + ] + } + ] + }, + "Point3d": { + "type": "object", + "required": [ + "x", + "y", + "z" + ], + "properties": { + "x": { + "type": "number", + "format": "double" + }, + "y": { + "type": "number", + "format": "double" + }, + "z": { + "type": "number", + "format": "double" + } + } + }, + "BasePath": { + "description": "A base path.", + "type": "object", + "required": [ + "__geoMeta", + "from", + "to", + "units" + ], + "properties": { + "from": { + "description": "The from point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "to": { + "description": "The to point.", + "type": "array", + "items": { + "type": "number", + "format": "double" + }, + "maxItems": 2, + "minItems": 2 + }, + "units": { + "$ref": "#/components/schemas/UnitLen" + }, + "tag": { + "description": "The tag of the path.", + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + }, + "__geoMeta": { + "description": "Metadata.", + "allOf": [ + { + "$ref": "#/components/schemas/GeoMeta" + } + ] + } + } + }, + "TagIdentifier": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string" + } + } + }, + "EdgeCut": { + "description": "A fillet or a chamfer.", + "oneOf": [ + { + "description": "A fillet.", + "type": "object", + "required": [ + "edgeId", + "id", + "radius", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "fillet" + ] + }, + "id": { + "description": "The id of the engine command that called this fillet.", + "type": "string", + "format": "uuid" + }, + "radius": { + "type": "number", + "format": "double" + }, + "edgeId": { + "description": "The engine id of the edge to fillet.", + "type": "string", + "format": "uuid" + }, + "tag": { + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + } + } + }, + { + "description": "A chamfer.", + "type": "object", + "required": [ + "edgeId", + "id", + "length", + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "chamfer" + ] + }, + "id": { + "description": "The id of the engine command that called this chamfer.", + "type": "string", + "format": "uuid" + }, + "length": { + "type": "number", + "format": "double" + }, + "edgeId": { + "description": "The engine id of the edge to chamfer.", + "type": "string", + "format": "uuid" + }, + "tag": { + "allOf": [ + { + "$ref": "#/components/schemas/TagDeclarator" + } + ], + "nullable": true + } + } + } + ] + } + } + }, + "required": true, + "includeInSnippet": true, + "labelRequired": true + }, + "unpublished": false, + "deprecated": true, + "examples": [ + "fn cube(center) {\n return startSketchOn('XY')\n |> startProfileAt([center[0] - 10, center[1] - 10], %)\n |> line(endAbsolute = [center[0] + 10, center[1] - 10])\n |> line(endAbsolute = [center[0] + 10, center[1] + 10])\n |> line(endAbsolute = [center[0] - 10, center[1] + 10])\n |> close()\n |> extrude(length = 10)\n}\n\npart001 = cube([0, 0])\npart002 = cube([20, 10])\n\nunionedPart = union([part001, part002])" + ] + }, { "name": "xLine", "summary": "Draw a line relative to the current origin to a specified distance away from the current position along the 'x' axis.", diff --git a/docs/kcl/subtract.md b/docs/kcl/subtract.md new file mode 100644 index 000000000..32e864e4f --- /dev/null +++ b/docs/kcl/subtract.md @@ -0,0 +1,56 @@ +--- +title: "subtract" +excerpt: "Subtract removes tool solids from base solids, leaving the remaining material." +layout: manual +--- + +**WARNING:** This function is deprecated. + +Subtract removes tool solids from base solids, leaving the remaining material. + +Performs a boolean subtraction operation, removing the volume of one or more tool solids from one or more base solids. The result is a new solid representing the material that remains after all tool solids have been cut away. This function is essential for machining simulations, cavity creation, and complex multi-body part modeling. + +```js +subtract( + solids: [Solid], + tools: [Solid], +): [Solid] +``` + + +### Arguments + +| Name | Type | Description | Required | +|----------|------|-------------|----------| +| `solids` | [`[Solid]`](/docs/kcl/types/Solid) | The solids to intersect. | Yes | +| `tools` | [`[Solid]`](/docs/kcl/types/Solid) | The solids to subtract. | Yes | + +### Returns + +[`[Solid]`](/docs/kcl/types/Solid) + + +### Examples + +```js +fn cube(center) { + return startSketchOn('XY') + |> startProfileAt([center[0] - 10, center[1] - 10], %) + |> line(endAbsolute = [center[0] + 10, center[1] - 10]) + |> line(endAbsolute = [center[0] + 10, center[1] + 10]) + |> line(endAbsolute = [center[0] - 10, center[1] + 10]) + |> close() + |> extrude(length = 10) +} + +part001 = cube([0, 0]) +part002 = startSketchOn('XY') + |> circle(center = [0, 0], radius = 2) + |> extrude(length = 10) + +subtractedPart = subtract([part001], tools = [part002]) +``` + +![Rendered example of subtract 0](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABQAAAALQCAYAAADPfd1WAAEV5ElEQVR4Ae3AA6AkWZbG8f937o3IzKdyS2Oubdu2bdu2bdu2bWmMnpZKr54yMyLu+Xa3anqmhztr1a8+6EEP4qqrrrrqqquuuuqqq6666qqrrrrqqquu+j+JylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVX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A+I5GRDPyYB4TgbEczIgnpMB8ZwMiOdkQDwnA+I5GRDPyYB4TgbEczIgnpMB8ZwMiOdkQDwnA+I5GRDPyYB4TgbEczIgnpMB8ZwMiOdkQDwnA+I5GRDPyYB4TgbEczIgnpMB8ZwMiOdkQDwnA+I5GRDPyYB4TgbEczIgnpMB8ZwMiOdkQDwnA+I5GRDPyYB4TgbEczIgnpMB8ZwMiOdkQDwnA+I5GRDPyYB4TgbEczIgnpMB8ZwMiOdkQDwnA+I5GRDPyYB4TgbEczIgnpMBnT179tb77rvvVq666qqrrvq/BD3oQQ/iqquuuuqqq6666qqrrrrqqquuuuqqq676P4nKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q/iHwGshrjUTdgcigAAAABJRU5ErkJggg==) + + diff --git a/docs/kcl/union.md b/docs/kcl/union.md new file mode 100644 index 000000000..d9e9337b7 --- /dev/null +++ b/docs/kcl/union.md @@ -0,0 +1,50 @@ +--- +title: "union" +excerpt: "Union two or more solids into a single solid." +layout: manual +--- + +**WARNING:** This function is deprecated. + +Union two or more solids into a single solid. + + + +```js +union(solids: [Solid]): [Solid] +``` + + +### Arguments + +| Name | Type | Description | Required | +|----------|------|-------------|----------| +| `solids` | [`[Solid]`](/docs/kcl/types/Solid) | The solids to union. | Yes | + +### Returns + +[`[Solid]`](/docs/kcl/types/Solid) + + +### Examples + +```js +fn cube(center) { + return startSketchOn('XY') + |> startProfileAt([center[0] - 10, center[1] - 10], %) + |> line(endAbsolute = [center[0] + 10, center[1] - 10]) + |> line(endAbsolute = [center[0] + 10, center[1] + 10]) + |> line(endAbsolute = [center[0] - 10, center[1] + 10]) + |> close() + |> extrude(length = 10) +} + +part001 = cube([0, 0]) +part002 = cube([20, 10]) + +unionedPart = union([part001, part002]) +``` + +![Rendered example of union 0](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABQAAAALQCAYAAADPfd1WAAD3iElEQVR4Ae3AA6AkWZbG8f937o3IzKdyS2Oubdu2bdu2bdu2bWmMnpZKr54yMyLu+Xa3anqmhztr1a8+6EEP4qqrrrrqqquuuuqqq6666qqrrrrqqquu+j+JylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqq/1d+4id+wlx11VX/6X7rt37ru//hH/7hd37rt37ru7nqqquuuuqq/z5Urrrqqquuuuqqq676f+MnfuInDPCnf/qnXPU/n22u+rezzX+n13md13nvF3uxF3vt++6779Z/+Id/+G2uuuqqq6666r8Hlauuuuqqq6666qqr/t/5oR/6If41bPP/hW3+N7LN/2S2+Z/GNv+ZLly4wJu+6Zs++MM//MO/60M+5EMewlVXXXXVVVf99yC46qqrrrrqqquuuuqqf4EkJCEJSUhCEpKQhCQkIQlJSEISkpCEJP63kIQkJCEJSUhCEpKQhCQkIYn/KSQhCUlIQhKSkIQkJCGJ/y6SkIQkJCEJSUhCEpL4ryYJSUhCEpKQhCQk8e/1x3/8xzz5yU/mmmuuefCHf/iHfxdXXXXVVVdd9d+D4Kqrrrrqqquuuuqqq/4LSEISkpCEJCQhCUlIQhKSkIQkJPE/nSQkIQlJSEISkpCEJCQhif8JJCEJSUhCEpKQhCQk8d9FEpKQhCQkIQlJSEIS/5UkIQlJSEISkpCEJP4lFy5c4Pu+7/sAeJ3XeZ33fsd3fMfP4qqrrrrqqqv+6xFcddVVV1111VVXXXXV/2CSkIQkJCEJSUhCEpKQhCQkIQlJ/E8kCUlIQhKSkIQkJCEJSUjiv5MkJCEJSUhCEpKQhCQk8d9BEpKQhCQkIQlJSOK/kiQkIQlJSEISkpAEwIULF/j+7/9+AF7ndV7nvV/sxV7stbnqqquuuuqq/1oEV1111VVXXXXVVVf9vyMJSUhCEpKQhCQkIQlJSEIS/xtJQhKSkIQkJCEJSUhCEpKQxP80kpCEJCQhCUlIQhKSkMR/J0lIQhKSkIQkJCEJSfxXk4QkJCEJSUhCEpL4ryQJSfzJn/wJv/iLv8g111zz4A//8A//rmuuuebBXHXVVVddddV/HYKrrrrqqquuuuqqq676F0hCEpKQhCQkIQlJSEISkpCEJCQhCUn8byAJSUhCEpKQhCQkIQlJSEIS/1NIQhKSkIQkJCEJSUhCEv9dJCEJSUhCEpKQhCT+q0lCEpKQhCQkIQlJ/Gf5kz/5E5785CdzzTXXPPhzPudzfourrrrqqquu+q9DcNVVV1111VVXXXXVVf/JJCEJSUhCEpKQhCQkIQlJSEISkvifTBKSkIQkJCEJSUhCEpKQxP8EkpCEJCQhCUlIQhKS+O8gCUlIQhKSkIQkJCGJ/0qSkIQkJCEJSUhCEv9WFy5c4Pu///u5cOEC11xzzYPf8R3f8bO46qqrrrrqqv8aBFddddVVV1111VVXXfU/lCQkIQlJSEISkpCEJCQhCUlIQhL/00hCEpKQhCQkIQlJSEISkvjvJAlJSEISkpCEJCQhif8OkpCEJCQhCUlIQhL/lSQhCUlIQhKSkMS/5MKFC3zN13wNAO/0Tu/02a/zOq/z3lx11VVXXXXVfz6Cq6666qqrrrrqqqv+35GEJCQhCUlIQhKSkIQkJCGJ/20kIQlJSEISkpCEJCQhCUlI4n8SSUhCEpKQhCQkIQlJSOK/iyQkIQlJSEISkpCEJP6rSUISkpCEJCQhCUn8V5GEJCQhCUlIQhKSALhw4QLf//3fD8A7vdM7ffY111zzYK666qqrrrrqPxfBVVddddVVV1111VVX/QskIQlJSEISkpCEJCQhCUlIQhKSkMT/BpKQhCQkIQlJSEISkpCEJP6nkIQkJCEJSUhCEpKQxH8XSUhCEpKQhCQkIQlJ/FeShCQkIQlJSEISkvivIglJ/Omf/il/8id/wpkzZx70OZ/zOb/FVVddddVVV/3nIrjqqquuuuqqq6666qr/RJKQhCQkIQlJSEISkpCEJCQhCUn8TyUJSUhCEpKQhCQkIQlJSOK/myQkIQlJSEISkpCEJCTx30ESkpCEJCQhCUlI4r+SJCQhCUlIQhKSkMR/hl/6pV/iwoULXHPNNQ/+8A//8O/iqquuuuqqq/7zEFx11VVXXXXVVVddddX/QJKQhCQkIQlJSEISkpCEJCQhif9pJCEJSUhCEpKQhCQkIQlJ/HeShCQkIQlJSEISkpDEfzVJSEISkpCEJCQhif9KkpCEJCQhCUlI4t/qwoULfO3Xfi0Ar/M6r/Pe7/iO7/hZXHXVVVddddV/DoKrrrrqqquuuuqqq/7fkYQkJCEJSUhCEpKQhCQk8b+JJCQhCUlIQhKSkIQkJCEJSfxPIglJSEISkpCEJCQhif9OkpCEJCQhCUlIQhL/1SQhCUlIQhKSkIQk/qtIQhKSkIQkJCGJf8mFCxf4gR/4AQBe53Ve571f7MVe7LW56qqrrrrqqv94BFddddVVV1111VVXXfVCSEISkpCEJCQhCUlIQhKSkIQkJCGJ/+kkIQlJSEISkpCEJCQhCUlI4r+bJCQhCUlIQhKSkIQkJPHfQRKSkIQkJCEJSUhCEv+VJCEJSUhCEpKQhCT+K0hCEpKQhCQkIQlJAPzJn/wJv/RLv8Q111zz4A//8A//Lq666qqrrrrqPx7BVVddddVVV1111VVX/SeRhCQkIQlJSEISkpCEJCQhCUlI4n8qSUhCEpKQhCQkIQlJSOK/myQkIQlJSEISkpCEJP47SEISkpCEJCQhCUn8V5KEJCQhCUlIQhL/VSQhiT/90z/lKU95Ctdcc82DP/dzP/e3ueqqq6666qr/WARXXXXVVVddddVVV131P4wkJCEJSUhCEpKQhCQkIQlJSOJ/EklIQhKSkIQkJCEJSUjiv5MkJCEJSUhCEpKQhCT+q0lCEpKQhCQkIQlJ/FeRhCQkIQlJSEISkviPduHCBX7gB36ACxcu8GIv9mKv9Y7v+I6fxVVXXXXVVVf9xyG46qqrrrrqqquuuur/HUlIQhKSkIQk/jeThCQkIQlJSEISkpCEJCQhif8JJCEJSUhCEpKQhCQkIYn/LpKQhCQkIQlJSEISkvivJAlJSEISkpCEJCTxX0USkpCEJCQhCUn8W124cIEf+IEfAOB1Xud13vvFXuzFXpurrrrqqquu+o9BcNVVV1111VVXXXXVVc8kCUlIQhKSkIQkJCEJSUhCEpKQhCT+t5GEJCQhCUlIQhKSkIQkJPHfTRKSkIQkJCEJSUhCEpL47yAJSUhCEpKQhCQk8V9JEpKQhCQkIQlJ/FeRhCQkIQlJSEIS/5KnPOUp/NIv/RLXXHPNgz/8wz/8u6655poHc9VVV1111VX/fgRXXXXVVVddddVVV131H0ASkpCEJCQhCUlIQhKSkIQkJCGJ/w0kIQlJSEISkpCEJCQhif9ukpCEJCQhCUlIQhKS+K8mCUlIQhKSkIQkJPFfRRKSkIQkJCEJSUjiv4IkJCEJSUhCEpK43y//8i/zlKc8hWuuuebBn/M5n/NbXHXVVVddddW/H8FVV1111VVXXXXVVVf9N5KEJCQhCUlIQhKSkIQkJCEJSfxPJQlJSEISkpCEJCQhCUn8d5KEJCQhCUlIQhKS+K8mCUlIQhKSkIQkJPFfRRKSkIQkJCEJSfxXkIQkJPGDP/iDXLhwgWuuuebBH/7hH/5dXHXVVVddddW/D8FVV1111VVXXXXVVf/vSEISkpCEJP43kYQkJCEJSUhCEpKQhCQkIYn/aSQhCUlIQhKSkIQkJCGJ/w6SkIQkJCEJSUhCEpL4ryQJSUhCEpKQhCQk8V9BEpKQhCQkIQlJ/Ge4cOECX//1Xw/A67zO67z367zO67w3V1111VVXXfVvR3DVVVddddVVV1111VWAJCQhCUlIQhKSkIQkJCEJSUhCEpL4n04SkpCEJCQhCUlIQhKSkMT/JJKQhCQkIQlJSEISkvjvIAlJSEISkpCEJCTxX0kSkpCEJCQhCUn8V5CEJCQhCUlIQhL/HhcuXOAHf/AHAXind3qnz36xF3ux1+aqq6666qqr/m0Irrrqqquuuuqqq6666t9JEpKQhCQkIQlJSEISkpCEJCQhif+JJCEJSUhCEpKQhCQkIYn/KSQhCUlIQhKSkIQkJPFfTRKSkIQkJCEJSUjiv4okJCEJSUhCEpKQxH82SUhCEpKQhCQk8aL40z/9U375l3+ZM2fOPOjDP/zDv4urrrrqqquu+rchuOqqq6666qqrrrrqqv8mkpCEJCQhCUlIQhKSkIQkJPE/iSQkIQlJSEISkpCEJCTxP4EkJCEJSUhCEpKQhCT+K0lCEpKQhCQkIQlJ/FeRhCQkIQlJSEIS/9kkIQlJSEISkpDEA/3pn/4pT3nKU7jmmmse/OEf/uHfxVVXXXXVVVf96xFcddVVV1111VVXXfX/jiQkIQlJ/G8hCUlIQhKSkIQkJCEJSUhCEv8TSEISkpCEJCQhCUlIQhL/3SQhCUlIQhKSkIQk/itJQhKSkIQkJCGJ/yqSkIQkJCEJSUjiP5skJCGJixcv8kM/9EMAvM7rvM57v+M7vuNncdVVV1111VX/OgRXXXXVVVddddVVV/2/JwlJSEISkpCEJCQhCUlIQhKSkMT/dJKQhCQkIQlJSEISkpCEJP67SUISkpCEJCQhCUlI4r+TJCQhCUlIQhKSkMR/FUlIQhKSkIQkJCGJ/wqSkIQkJCEJSUjiP8OFCxf4oR/6IQBe53Ve571f7MVe7LW56qqrrrrqqhcdwVVXXXXVVVddddVVV/0bSUISkpCEJCQhCUlIQhKSkIQkJPE/kSQkIQlJSEISkpCEJCTx30kSkpCEJCQhCUlIQhL/XSQhCUlIQhKSkIQk/qtIQhKSkIQkJCGJ/wqSkIQkJCEJSUji3+NP//RP+eVf/mWuueaaB3/4h3/4d11zzTUP5qqrrrrqqqteNARXXXXVVVddddVVV131X0wSkpCEJCQhCUlIQhKSkIQk/ieRhCQkIQlJSEISkpCEJP67SEISkpCEJCQhCUlI4r+DJCQhCUlIQhKSkMR/BUlIQhKSkIQkJPFfQRKSkIQkJCGJF9Wf/dmf8ZSnPIVrrrnmwR/+4R/+3Vx11VVXXXXVi4bgqquuuuqqq6666qr/dyQhif8tJCEJSUhCEpKQhCQkIQlJ/E8hCUlIQhKSkIQkJCGJ/y6SkIQkJCEJSUhCEv8dJCEJSUhCEpKQxH8FSUhCEpKQhCQk8Z9NEpKQhCQkIQlJPNCFCxf4oR/6IS5cuMCLvdiLvdY7vuM7fhZXXXXVVVdd9S8juOqqq6666qqrrrrq/y1JSEISkpCEJCQhCUlIQhKSkIQk/ieThCQkIQlJSEISkpCEJCTx300SkpCEJCQhCUlIQhL/HSQhCUlIQhKSkIQk/qtJQhKSkIQkJCEJSfxnk4QkJCEJSUhCEv/ZJCEJSUji4sWLfOM3fiMA7/RO7/TZr/M6r/PeXHXVVVddddULR3DVVVddddVVV1111VX/SpKQhCQkIQlJSEISkpCEJCQhCUn8TyMJSUhCEpKQhCQkIQlJSOK/iyQkIQlJSEISkpCEJP6rSUISkpCEJCQhCUn8V5OEJCQhCUlIQhL/2SQhCUlIQhKSkMR/lgsXLvArv/IrALzjO77jZ11zzTUP5qqrrrrqqqteMIKrrrrqqquuuuqqq676LyIJSUhCEpKQhCQkIQlJSEIS/5NIQhKSkIQkJCEJSUjiv4skJCEJSUhCEpKQhCT+K0lCEpKQhCQkIYn/apKQhCQkIQlJSOI/myQkIQlJSEIS/xF+5Vd+hT/7sz/jmmuuefDnfM7n/BZXXXXVVVdd9YIRXHXVVVddddVVV1111f9QkpCEJCQhCUlIQhKSkIQk/ieQhCQkIQlJSEISkpCEJP47SEISkpCEJCQhCUn8V5GEJCQhCUlIQhKS+K8kCUlIQhKSkIQk/jNJQhKSkIQkJCGJf41f+ZVf4cKFC1xzzTUP/vAP//Dv4qqrrrrqqqueP4Krrrrqqquuuuqqq/7fkYQkJCEJSUhCEpKQhCQkIQlJSOJ/MklIQhKSkIQkJCEJSUhCEv/dJCEJSUhCEpKQhCQk8V9NEpKQhCQkIQlJSOK/iiQkIQlJSEISkvivJAlJSEISkpDEfzZJSEISkpCEJJ6fCxcu8I3f+I0AvM7rvM57v9M7vdNnc9VVV1111VXPi8pVV1111VVXPR8v9mIv9tpcddVVVz0XSfxr2eZ/Gkm8KGzz30USL4xt/itJ4oWxzX82SbwgtvmvIIkXxDb/WSTx/Fy8eJEf+qEf4l3e5V14ndd5nff++7//+9/+h3/4h9/mqquuuuqqq56NylVXXXXVVVc9l8/93M/9rTNnzjz4mmuueTBXXXXVVf9OkvjXsM3/FJJ4Udjmv5ok/iW2+a8iiRfENv/ZJPGC2Oa/giReENv8Z/nzP/9zTp48yRu90Rs96MM//MO/60M+5EMewlVXXXXVVVc9G5WrrrrqqquueoDP/dzP/a0Xe7EXe+2nPe1p/O7v/i5X/ceTxP9Htrnqv9/bv/3b8z+dJF5UtvmfQBL/Etv8V5PEC2Ob/wqSeGFs859JEi+Ibf4rSOL5sc1/hD//8z/nYQ97GA9/+MMf/OEf/uHf9fVf//Xvw1VXXXXVVVddQeWqq6666qqrnukd3/EdP+vFXuzFXhvgJ37iJ7h48SL/m0niqqteGNv8f/P2b//2AEjiX8M2/xNJ4kVlm/9OkviX2Oa/kiReGNv8V5DEC2Kb/0ySeEFs859NEs+Pbf41Lly4wA//8A/zoR/6obzO67zOe9933323/uiP/ujncNVVV1111VVAcNVVV1111VXAi73Yi732O73TO302wLd927dx8eJF/itIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhiauu+pdIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUn8XyIJSUhCEpKQhCQkIQlJSEISkvifRhKSkIQkJCEJSUhCEpL47yQJSUhCEpKQhCQk8V9NEpKQhCQkIQlJ/FeRhCQkIQlJSEIS/9kkIQlJSEISkvivIAlJSEISkpCEJF6Qixcv8sM//MMAvM7rvM57v9iLvdhrc9VVV1111VVAcNVVV1111f9711xzzYM/93M/97cAfuM3foOnP/3pvDCSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJK666v8ySUhCEpKQhCQkIQlJSEISkpCEJCQhCUlI4n8rSUhCEpKQhCQkIQlJSEISkvifQhKSkIQkJCEJSUhCEpL47yAJSUhCEpKQhCQkIYn/KpKQhCQkIQlJSEIS/xUkIQlJSEISkpDEfyZJSEISkpCEJCTxX0ESkpCEJCQhCYCnPvWp/Mqv/ArXXHPNgz/8wz/8u6655poHc9VVV1111f93BFddddVVV/2/9+Ef/uHfBfD0pz+d3/zN30QSkpCEJCQhCUlI4qr/GJKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSOKq/1iSkIQkJCEJSUhCEpKQhCQkIQlJSEIS/1tIQhKSkIQkJCEJSUhCEpL4n0ASkpCEJCQhCUlIQhL/HSQhCUlIQhKSkIQk/qtIQhKSkIQkJCGJ/wqSkIQkJCEJSUjiP5MkJCEJSUhCEv8VJCGJP//zP+epT30q11xzzYM/93M/97e56qqrrrrq/zuCq6666qqr/l97x3d8x896sRd7sde+ePEi3/7t387/NZKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlI4v8ySUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCTx/5EkJCGJ+0lCEpKQhCQkIQlJSOJ/MklIQhKSkIQkJCEJSUjiv5skJCEJSUhCEpKQhCT+q0lCEpKQhCQkIYn/KpKQhCQkIQlJSOK/giQkIQlJSEIS/5kkIQlJSEISkpDEf7SLFy/ywz/8w1y4cIEzZ8486MM//MO/i6uuuuqqq/4/I7jqqquuuur/rRd7sRd77Xd6p3f6bICf+Imf4L+DJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpDEVVc9N0lIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhif9LJCEJSUhCEpKQhCQkIQlJSEIS/9NIQhKSkIQkJCEJSUhCEv+dJCEJSUhCEpKQhCT+K0lCEpKQhCQkIQlJ/FeQhCQkIQlJSEIS/9kkIQlJSEISkpDEfyZJSEISkpCEJP49Ll68yDd90zcB8Dqv8zrv/Tqv8zrvzVVXXXXVVf9fEVx11VVXXfX/0jXXXPPgz/3cz/0tgJ/4iZ/g6U9/Ov8akpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQxFVX/V8jCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJ/G8lCUlIQhKSkIQkJCEJSUhCEv9TSEISkpCEJCQhCUlIQhL/HSQhCUlIQhKSkIQk/itJQhKSkIQkJCGJ/wqSkIQkJCEJSUjiP5skJCEJSUhCEv+ZJCEJSUhCEpJ4UV28eJEf/uEfBuAd3/EdP+uaa655MFddddVVV/1/RHDVVVddddX/Sx/+4R/+XQBPf/rT+au/+iskIQlJSEISkpCEJCQhCUlI4qr/HJKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkrvrPJQlJSEISkpCEJCQhCUlIQhKSkIQkJPG/hSQkIQlJSEISkpCEJCQhif8JJCEJSUhCEpKQhCQk8V9NEpKQhCQkIQlJSOK/iiQkIQlJSEISkpDEfzZJSEISkpCEJCTxn0kSkpCEJCQhif9MkpCEJCQhCUk8P3/+53/Or/7qr3LNNdc8+HM+53N+i6uuuuqqq/4/Irjqqquuuur/nc/93M/9rRd7sRd77YsXL/Id3/Ed/H8gCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJ/G8iCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJ/H8lCUlIQhKSkMT9JCEJSUhCEpL4n0wSkpCEJCQhCUlIQhKS+O8mCUlIQhKSkIQkJPFfTRKSkIQkJCEJSUjiv4okJCEJSUhCEpL4zyYJSUhCEpKQxH8mSUhCEpKQhCQk8Z9FEpKQhCQkIYk/+7M/46lPfSrXXHPNgz/8wz/8u7jqqquuuur/G4Krrrrqqqv+X3nHd3zHz3qxF3ux1wb4yZ/8Sf6nkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSuOr/L0lIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhif9rJCEJSUhCEpKQhCQkIQlJSEIS/9NIQhKSkIQkJCEJSUhCEv9dJCEJSUhCEpKQhCQk8V9JEpKQhCQkIQlJSOK/giQkIQlJSEISkvjPJAlJSEISkpCEJP4zSUISkpCEJCTxn2V3d5cf+ZEfAeB1Xud13vud3umdPpurrrrqqqv+PyG46qqrrrrq/40Xe7EXe+13eqd3+myA7/iO7+DpT386/x6SkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJK666n8rSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhL/W0lCEpKQhCQkIQlJSEISkvifRBKSkIQkJCEJSUhCEv9dJCEJSUhCEpKQhCT+K0lCEpKQhCQkIYn/CpKQhCQkIQlJ/GeThCQkIQlJSOI/kyQkIQlJSEIS/xEuXrzIj/zIjwDwOq/zOu/9Yi/2Yq/NVVddddVV/18QXHXVVVdd9f/Gh3/4h38XwG/+5m/y9Kc/HUlIQhKSkIQkJCEJSUhCEpKQhCQkIYmr/meQhCQkIQlJSEISkpCEJCQhCUlI4qr/eSQhCUlIQhKSkIQkJCEJSUhCEpKQxP8WkpCEJCQhCUlIQhKSkIQk/ieQhCQkIQlJSEISkpDEfwdJSEISkpCEJCQhif8qkpCEJCQhCUlI4j+bJCQhCUlIQhKS+M8kCUlIQhKSkMR/JklIQhKSkIQk/rX+/M//nF/91V/lzJkzD/rwD//w77rmmmsezFVXXXXVVf8fEFx11VVXXfX/wud+7uf+1jXXXPPgpz/96fzWb/0Wkvj/SBKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJPFvJQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkvj/TBKSkIQkJCEJSUhCEpK4nyQk8T+ZJCQhCUlIQhKSkIQkJCGJ/06SkIQkJCEJSUhCEpL4ryYJSUhCEpKQhCQk8V9BEpKQhCQkIQlJ/GeThCQkIQlJSEIS/1kkIQlJSEISkpDEfxZJSEISkpCEJF6YP//zP+epT30q11xzzYM//MM//Lu46qqrrrrq/wOCq6666qqr/s97x3d8x896sRd7sdfe3d3lJ3/yJ/mfTBKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlI4qr/2yQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCTxf40kJCEJSUhCEpKQhCQkIQlJSOJ/IklIQhKSkIQkJCEJSUjiv4skJCEJSUhCEpKQxH81SUhCEpKQhCQk8V9BEpKQhCQkIQlJ/GeThCQkIQlJSOI/kyQkIQlJSEIS/1kkIQlJSEIS97t48SI/8iM/wsWLF3mxF3ux137Hd3zHz+Kqq6666qr/6wiuuuqqq676P+3FXuzFXvud3umdPhvgJ3/yJ9nd3eU/miQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCGJq676n04SkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQxP9WkpCEJCQhCUlIQhKSkIQkJPE/iSQkIQlJSEISkpCEJP47SEISkpCEJCQhCUn8V5KEJCQhCUlIQhL/FSQhCUlIQhKSkMR/JklIQhKSkIQk/jNJQhKSkIQkJPGfQRKSkMTu7i4/8iM/AsA7vdM7ffaLvdiLvTZXXXXVVVf9X0Zw1VVXXXXV/1nXXHPNgz/3cz/3twB+8zd/k6c//ek8N0lIQhKSkIQkJCEJSUhCEpKQhCQkIQlJXHXVVf82kpCEJCQhCUlIQhKSkIQkJCEJSUjifxNJSEISkpCEJCQhCUlIQhL/E0hCEpKQhCQkIQlJSOK/miQkIQlJSEISkpDEfxVJSEISkpCEJCTxX0ESkpCEJCQhif9MkpCEJCQhCUn8Z5KEJCQhCUn8R3va057Gr/3arwHw4R/+4d91zTXXPJirrrrqqqv+r6Jy1VVXXXXV/1kf/uEf/l0AT3/60/nt3/5tJHHVc5LEVf/72Ob/O0n8XySJF4Vt/jtJ4oWxzX8lSbwwtvnPJokXxDb/mSTxgtjmP4MkXhDb/EeTxPNjm3+rX/u1X+PEiRO8/Mu//IM/93M/97c/+IM/+MFcddVVV131fxHBVVddddVV/yd97ud+7m+92Iu92Gvv7u7yXd/1XfxvIwlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJXPW/kyQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQk8X+ZJCQhCUlIQhKSkIQkJCGJ/4kkIQlJSEISkpCEJCQhif8ukpCEJCQhCUlIQhKS+K8kCUlIQhKSkIQk/itIQhKSkIQkJCGJ/2ySkIQkJCEJSfxnkoQkJCEJSUjiP4MkJCEJSUhCEi+qX/u1X+PixYucOXPmQR/+4R/+XVx11VVXXfV/EcFVV1111VX/57zYi73Ya7/Yi73YawP85E/+JP9VJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlcddX/BJKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQk/jeThCQkIQlJSEISkpCEJCQhif9JJCEJSUhCEpKQhCQk8d9FEpKQhCQkIQlJSOK/iiQkIQlJSEISkpDEfzZJSEISkpCEJCTxn0kSkpCEJCQhif9MkpCEJCQhif8skpCEJCQhCUk8t4sXL/LN3/zNALzO67zOe7/jO77jZ3HVVVddddX/NQRXXXXVVVf9n/JiL/Zir/25n/u5vwXwnd/5ndx66628KCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkcdVVV71gkpCEJCQhCUlIQhKSkIQkJCEJSUhCEv+bSEISkpCEJCQhCUlIQhKS+J9AEpKQhCQkIQlJSEIS/x0kIQlJSEISkpCEJP6rSEISkpCEJCQhif9skpCEJCQhCUn8Z5KEJCQhCUlI4j+LJCQhCUlIQhL/WSQhCUlIQhIXL17kR3/0RwF4ndd5nfd+sRd7sdfmqquuuuqq/0uoXHXVVVdd9X/KO73TO30WwK233soznvEMJHHVv44krvrvZ5urnk0S/xa2+Z9MEi8K2/x3ksS/xDb/lSTxgtjmv4IkXhDb/GeRxAtim/8Mknh+bPOfQRLPj23+o0niL/7iLzhx4gRv8AZv8OAP//AP/64P+ZAPeQhXXXXVVVf9X0Fw1VVXXXXV/xmf+7mf+1sv9mIv9tq33nor3/Vd38X/JZKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCSu+p9BEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQxP9lkpCEJCRxP0lIQhKSkIQkJPE/kSQkIQlJSEISkpCEJCTx30kSkpCEJCQhCUlI4r+SJCQhCUlIQhKSkMR/BUlIQhKSkIQk/rNJQhKSkIQkJPGfRRKSkIQkJCGJ/yySkIQkJCEJSfxH+Iu/+Aue9rSncc011zz4wz/8w7+Lq6666qqr/q8guOqqq6666v+Ed3zHd/ysF3uxF3ttgJ/6qZ/iv5skJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlcddV/JklIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkvjfThKSkIQkJCEJSUhCEpKQhCT+J5GEJCQhCUlIQhKSkMR/F0lIQhKSkIQkJCGJ/0qSkIQkJCEJSUjiP5skJCEJSUhCEpL4zyQJSUhCEpKQxH8WSUhCEpKQhCT+s0hCEpKQhCT+tS5evMiP/uiPAvA6r/M67/1O7/ROn81VV1111VX/FxBcddVVV131v96LvdiLvfY7vdM7fTbAd33Xd7G7u8u/hyQkIQlJSEISkpCEJCQhCUlIQhKSkIQkrrrq/zNJSEISkpCEJCQhCUlIQhKSkIQkJCGJ/20kIQlJSEISkpCEJCQhCUn8TyAJSUhCEpKQhCQkIYn/DpKQhCQkIQlJSEIS/1UkIQlJSEISkpDEfzZJSEISkpCEJP4zSUISkpCEJCTxn0USkpCEJCQhif8MkpCEJCQhCUm8MBcvXuRHf/RHAXid13md936xF3ux1+aqq6666qr/7ahcddVVV131v9o111zz4M/93M/9LYDf+q3f4tZbb+V+krjqP54krvq3s81VL5wk/q1s8z+ZJF4UtvnvJIl/iW3+K0niBbHNfwVJvCC2+c8iiRfENv8ZJPH82OY/gySeH9v8R5PEc7PN/f7iL/6CEydO8AZv8AYP+vAP//Dv+qzP+qzXue+++27lqquuuuqq/60Irrrqqquu+l/twz/8w78L4NZbb+V3fud3kIQkJPF/mSQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkrjq30cSkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhif8vJCEJSUhCEpKQhCTuJwlJSOJ/IklIQhKSkIQkJCEJSUjiv5MkJCEJSUhCEpKQxH8lSUhCEpKQhCQkIYn/CpKQhCQkIQlJ/GeThCQkIQlJSOI/iyQkIQlJSEIS/1kkIQlJSEIS/xkkIQlJSOIv//IvedrTnsY111zz4M/5nM/5La666qqrrvrfjOCqq6666qr/td7xHd/xs17sxV7stXd3d/nu7/5u/qeShCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSVx11b+WJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSOL/CklIQhKSkIQkJCEJSUhCEv/TSEISkpCEJCQhCUlI4r+LJCQhCUlIQhKSkMR/JUlIQhKSkIQkJPGfTRKSkIQkJCEJSfxnkoQkJCEJSUjiP4skJCEJSUhCEv8ZJCEJSUhCEpL4j3Tx4kV+7Md+jIsXL3LNNdc8+B3f8R0/i6uuuuqqq/63Irjqqquuuup/pRd7sRd77Xd6p3f6bICf/umf5j+LJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCSuuur/KklIQhKSkIQkJCEJSUhCEpKQhCQkIQlJ/G8jCUlIQhKSkIQkJCEJSUjifwpJSEISkpCEJCQhCUn8d5CEJCQhCUlIQhKS+K8iCUlIQhKSkIQk/rNJQhKSkIQkJPGfSRKSkIQkJCGJ/yySkIQkJCEJSfxnkIQkJCEJSfx7XLx4kW/91m8F4J3e6Z0++3Ve53Xem6uuuuqqq/43Irjqqquuuup/nWuuuebBn/u5n/tbAL/927/Nrbfeyr9EEpKQhCQkIQlJSEISkpCEJCQhiav+/SQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSuOo/hiQkIQlJSEISkpCEJCQhCUlIQhKS+J9OEpKQhCQkIQlJSEISkpDEfzdJSEISkpCEJCQhCUn8V5OEJCQhCUlIQhL/VSQhCUlIQhKS+M8mCUlIQhKSkMR/JklIQhKSkIQk/rNIQhKSkIQk/jNIQhKSkIQkJPGiunjxIj/2Yz8GwDu+4zt+1jXXXPNgrrrqqquu+t+GylVXXXXVVf/rfPiHf/h3Adx66638zu/8DpK46gpJXPVfQxL/k9jm/xtJ/F8hiReFbf67SOKFsc1/FUm8ILb5zyaJF8Q2/1kk8YLY5j+DJJ4f2/xHk8TzY5v/aJJ4brZ5fv7iL/6Chz70obzcy73cgz/3cz/3tz/4gz/4wVx11VVXXfW/CcFVV1111VX/q3zu537ub73Yi73Ya+/u7vI93/M9/G8lCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpDEVf9/SUISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQk8X+VJCQhCUlIQhKSkIQkJPE/jSQkIQlJSEISkpCEJP67SEISkpCEJCQhCUn8V5GEJCQhCUlIQhKS+M8mCUlIQhKSkIQk/jNJQhKSkIQkJPGfRRKSkIQkJCGJ/wySkIQkJCGJ/wySkIQkJCGJ+/36r/86Fy9e5MyZMw/68A//8O/iqquuuuqq/00Irrrqqquu+l/jdV7ndd77xV7sxV4b4Gd+5mf47yAJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlcddX/FpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkMT/VpKQhCQkIQlJSEISkpCEJP6nkIQkJCEJSUhCEpKQxH8HSUhCEpKQhCQk8V9JEpKQhCQkIYn/CpKQhCQkIQlJ/GeShCQkIQlJSOI/iyQkIQlJSOI/gyQkIQlJSEIS/9EkIYnd3V2+7du+DYDXeZ3Xee93fMd3/Cyuuuqqq67634Lgqquuuuqq/xVe7MVe7LU//MM//LsAvud7vodbb72VfytJSEISkpCEJCQhCUlIQhKSkIQkJHHVVVf920hCEpKQhCQkIQlJSEISkpCEJCQhif8tJCEJSUhCEpKQhCQkIYn/CSQhCUlIQhKSkIQk/qtJQhKSkIQkJCEJSfxXkIQkJCEJSUhCEv/ZJCEJSUhCEpL4zyQJSUhCEpKQxH8GSUhCEpKQhCT+M0hCEpKQhCT+o1y8eJEf//EfB+B1Xud13vvFXuzFXpurrrrqqqv+N6By1VVXXXXV/wof/uEf/l0Av/3bv82tt97K/SRx1YtOElf972Ob/88k8a9lm/+pJPGisM1/F0m8MLb5rySJF8Q2/9kk8YLY5j+LJJ4f2/xnkcRzs81/Bkk8N9v8R5PEc7PNv8Vf/MVfcPz4cV7/9V//wR/+4R/+XZ/1WZ/1Ovfdd9+tXHXVVVdd9T8ZwVVXXXXVVf/jfe7nfu5vXXPNNQ++9dZb+d3f/V0kIQlJ/F8iCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhiav+d5KEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkvi/SBKSkIQkJCGJ+0lCEpKQxP9EkpCEJCQhCUlIQhKS+O8iCUlIQhKSkIQkJPFfSRKSkIQkJCEJSfxXkIQkJCEJSUjiP5MkJCEJSUhCEv9ZJCEJSUhCEpL4zyAJSUhCEpKQxH80SUhCEpKQhCReFH/5l3/J0572NK655poHf/iHf/h3cdVVV1111f90BFddddVVV/2P9o7v+I6f9WIv9mKvDfCzP/uz/E8kCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJXHXVfxdJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUjifzNJSEISkpCEJCQhCUlIQhKS+J9CEpKQhCQkIQlJSEIS/x0kIQlJSEISkpCEJP6rSEISkpCEJCQhif9skpCEJCQhCUlI4j+LJCQhCUlIQhL/WSQhCUlIQhKS+M8gCUlIQhKS+M8gCUlIQhKSeG4XL17kx3/8x7l48SIv9mIv9trv9E7v9NlcddVVV131PxnBVVddddVV/2O92Iu92Gu/0zu902cDfM/3fA+7u7v8Z5CEJCQhCUlIQhKSkIQkJCEJSUhCEpK46qqrrpCEJCQhCUlIQhKSkIQkJCEJSUhCEpL430QSkpCEJCQhCUlIQhKS+J9AEpKQhCQkIQlJSEIS/9UkIQlJSEISkpDEfxVJSEISkpCEJCTxn00SkpCEJCQhif8skpCEJCQhCUn8Z5GEJCQhCUn8Z5CEJCQhCUn8Z5CEJCQhCUlcvHiRH//xHwfgdV7ndd77xV7sxV6bq6666qqr/qciuOqqq6666n+ka6655sGf+7mf+1sAv/M7v8MznvEMXhSSkIQkJCEJSUhCEpKQhCQkIYmrnpckJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkrjqBZOEJCQhCUlIQhKSkIQkJCEJSfxPJwlJSEISkpCEJCQhCUn8d5OEJCQhCUlIQhKS+K8kCUlIQhKSkIQkJPFfQRKSkIQkJCGJ/2ySkIQkJCEJSfxnkYQkJCEJSUjiP4MkJCEJSUhCEv/RJCEJSUhCEpL4jyaJpz/96fzGb/wGZ86cedCHf/iHf9c111zzYK666qqrrvqfiOCqq6666qr/kT78wz/8uwCe8Yxn8Lu/+7tIQhKSkIQkJCEJSUhCEv9XSUISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpDEVf95JCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUji/zpJSEISkpCEJCQhCUlIQhKS+J9KEpKQhCQkIQlJSEIS/50kIQlJSEISkpCEJP4rSUISkpCEJCQhif9skpCEJCQhCUlI4j+TJCQhCUlIQhL/WSQhCUlIQhKS+M8gCUlIQhKS+M8gCUlIQhKS+I/wG7/xGzztaU/jmmuuefDnfM7n/BZXXXXVVVf9T0Rw1VVXXXXV/zif+7mf+1sv9mIv9tq7u7t87/d+L/8bSUISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQxFVX/VtJQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpDE/xWSkIQkJCEJSUhCEpKQxP8kkpCEJCQhCUlIQhKS+O8iCUlIQhKSkIQk/itJQhKSkIQkJCGJ/2ySkIQkJCEJSfxnkoQkJCEJSUjiP4skJCEJSUjiP4MkJCEJSUjiP4MkJCEJSUji3+LHf/zHuXjxItdcc82DP/zDP/y7uOqqq6666n8agquuuuqqq/5HebEXe7HXfrEXe7HXBvjZn/1Z/rtIQhKSkIQkJCEJSUhCEpKQhCQkIQlJXHXV/1WSkIQkJCEJSUhCEpKQhCQkIQlJSEIS/9tIQhKSkIQkJCEJSUhCEpL4n0ASkpCEJCQhCUlIQhL/1SQhCUlIQhKSkIQk/qtIQhKSkIQkJPGfTRKSkIQkJCGJ/0ySkIQkJCEJSfxnkIQkJCEJSUjiP5okJCEJSUhCEv/RJCEJSUhCEv+S3d1dvv3bvx2A13md13nvd3zHd/wsrrrqqquu+p+E4Kqrrrrqqv8xrrnmmgd/7ud+7m8BfO/3fi/PeMYz+PeShCQkIQlJSEISkpCEJCQhCUlI4qqrrvrPIQlJSEISkpCEJCQhCUlIQhKSkMT/BpKQhCQkIQlJSEISkpDEfzdJSEISkpCEJCQhif9qkpCEJCQhCUlI4r+CJCQhCUlIQhKS+M8kCUlIQhKSkMR/JklIQhKSkMR/FklIQhKSkMR/BklIQhKSkMR/NElIQhKSkMRzu3jxIj/+4z8OwOu8zuu894u/+Iu/NlddddVVV/1PQeWqq6666qr/MT78wz/8uwCe8Yxn8IxnPIPnJomr/m0kcdX/Lra56tkk8a9lm/+JJPEvsc1/F0m8MLb5ryKJF8Q2/9kk8fzY5j+LJJ4f2/xnkMTzY5v/aJJ4brb5jyaJ52ab/0iSeG5/+Zd/yYkTJ3i913u9B3/4h3/4d3/wB3/wg7nqqquuuup/AoKrrrrqqqv+R/jcz/3c33qxF3ux137GM57B933f9yEJSUhCEpL4v04SkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJXPW/jyQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQxP8HkpCEJCQhiftJQhKSkMT/NJKQhCQkIQlJSEISkvjvIglJSEISkpCEJCTxX0USkpCEJCQhCUn8Z5OEJCQhCUlIQhL/WSQhCUlIQhKS+M8iCUlIQhKSkMR/NElIQhKSkIQk/qNJQhKSkIQk/qNJ4q/+6q94+tOfzpkzZx704R/+4d/FVVddddVV/xMQXHXVVVdd9d/uHd/xHT/rxV7sxV4b4Hd/93f530QSkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQxFVX/VeShCQkIQlJSEISkpCEJCQhCUlIQhKSkIQk/q+QhCQkIQlJSEISkpCEJCTxP4UkJCEJSUhCEpKQhCT+O0hCEpKQhCQkIYn/KpKQhCQkIQlJSOI/myQkIQlJSEIS/1kkIQlJSEISkvjPIglJSEISkvjPIAlJSEISkviPJglJSEISkvj3unjxIj/xEz8BwOu8zuu89zu+4zt+FlddddVVV/13o3LVVVddddV/qxd7sRd77Xd6p3f6bIDv+77v4xnPeAb/1SRx1VVX/dtI4t/KNv9d3uIt3oKr/uexzQNJwjYPJAnbPJAkbPNAkrDNA0nCNg8kCdv8f2Gb/0tscz9J2OaBJGGbB5KEbR5IErZ5IEnY5t9id3eX48eP8zqv8zrv/Q//8A+/8w//8A+/zVVXXXXVVf9dqFx11VVXXfXf5pprrnnw537u5/4WwO/+7u/yjGc8g38vSVz1H0cSV/3b2OaqF04S/1q2+Y/wUi/1Ulx11VVX/We75pprHsxVV1111VX/3ahcddVVV1313+bDP/zDvwvgGc94Br/7u7/L8yOJq66QxFX/e0jiv5pt/q+TxL+WbZ7b3/7t33LVv55t/jVs8x/NNi8K20jigWwjCdu8MLb597DNC2Kbfw/bvKhsI4n72eaFsc2/h21eGNv8e9jmhbGNJB7INpK4n21eGNv8e9kG4Prrr+cRj3gEL/ZiL/Za//AP//DbXHXVVVdd9d+FylVXXXXVVf8t3vEd3/GzXuzFXuy1L126xPd///cjif+LJHHVVf9VJPEfyTb/F0jiud1xxx38SyTxf5Ft/j1s869hmxeFbV4UtvmX2OaFsc0LY5sXxjYvjG1eGNu8ILZ5YWzzwtjmBbHNC2ObF8Y2L4xtXhjbvDC2eWFs88LY5l9imxfGNi+Mbf4ltgG4/vrrATh79uwzuOqqq6666r8Tlauuuuqqq/7LvdiLvdhrv9M7vdNnA/zcz/0c/1NJ4qqr/j+TxL+Hbf43ksT/ZZIAsM2/hSRs86KShG3+JZKwzb9EErZ5YSRhmxdEErZ5QSRhmxdEErb5zyAJ21z1v9/1118PwD/8wz/8NlddddVVV/13onLVVVddddV/qWuuuebBn/u5n/tbAL/7u7/LM57xDP6zSeKq/z0k8R/FNlf995HEv4Vt/rtI4v8LSQDY5l9LEgC2eVFIwjb/EknY5l8iCdv8TyUJ21z1bLb572ab/0pbW1sA3Hfffbdy1VVXXXXVfycqV1111VVX/Zf68A//8O8CeMYznsHv/d7v8W8hiav+ZZL4/04S/1vZ5v8rSfxr2ebfQxL/X0kCwDb/WpKwzYtCErb5l0jCNv9ekrDNCyIJ27wgkrDN/yWSsM1VV1111VVX/T9D5aqrrrrqqv8yn/u5n/tbL/ZiL/baly5d4vu///u5nyT+v5LEVVc9P5L4z2Cb/4sk8W8lif9skviPYpv/DJIAsM2/hiRs86KQhG3+JZKwzQsjCdv8d5GEbf4tJGGbfwtJ2OZ/G0nY5v862wA84hGPAOC3fuu3vpurrrrqqqv+u1G56qqrrrrqv8SLvdiLvfaLvdiLvTbAz/3czyGJ/+0kcdVV/9tI4j+Cbf4vkMR/NEn8Z5LEc7PNfxRJANjmRSUJANv8SyRhm3+JJGzzwkjCNi+IJGzzgkjCNi+IJGzzbyEJ21z1v4dtrrrqqquu+j+JylVXXXXVVf/pXuzFXuy1P/dzP/e3AL7/+7+f2267jf8pJHHVVVf960ni38o2/90k8R9JEv+dJPFAtvn3kgSAbV5UkrDNv0QStvmXSMI2L4wkbPOCSMI2/xkkYZv/aJKwzb+FJGzzbyEJ21z173f99dcD8A//8A+/w1VXXXXVVf/dqFx11VVXXfWf7sM//MO/C+Bv//Zvue222/jPIomr/uNI4qp/Pdtc9cJJ4l/LNv/TSOJ/Kkk8kG3+rSRhmxeVJGzzL5GEbf67ScI2L4gkbPMfTRK2ueqqq6666qqr/tNRueqqq6666j/V537u5/7WNddc8+BnPOMZ/PzP/zz/GpK46tkkcdX/fJL4r2Sb/w8k8a9hm/8MkvjfSBL3s82/liQAbPOikASAbV4YSQDY5gWRhG1eGEnY5gWRhG1eEEnY5j+aJGzzH00Strnqf67rrrsOgH/4h3/4ba666qqrrvrvRuWqq6666qr/NO/4ju/4WS/2Yi/22gA///M/D4Ak/r+QxFVX/WeTxH8k2/xfIIn/SJL4v0ISALb515IEgG1eFJKwzb9EErZ5QSRhmxdGErZ5QSRhm38LSdjm+ZGEbf6jScI2/9EkYZur/vVs86La3t4G4L777ruVq6666qqr/rtRueqqq6666j/Fi73Yi732O73TO302wA/8wA+wt7eHJP43kcRVV/1/I4l/D9v8XyKJ/6skcT/b/GtIAsA2/xJJ2OZfIgnbvCCSsM0LIwnb/FtIwjb/0SRhm+dHErb530IStrnqhdva2gLgvvvuu5Wrrrrqqqv+J6By1VVXXXXVf7hrrrnmwZ/7uZ/7WwC/93u/x2233cZ/N0lcddVV//kk8a9lm/9pJPFfQRIvKtv8Z5EEgG3+NSRhm3+JJABs88JIwjYviCRs88JIwjbPjyRs828hCds8P5Kwzf8UkrDNVf89rr/+egD+4R/+4be56qqrrrrqfwIqV1111VVX/Yf78A//8O8CuO222/j93/99/qNJ4qoXnSSu+p/NNv+fSeJfyzb/GSTxH0kS/1Ek8cLY5t9LEvezzYtCEgC2+ZdIwjYvjCRs84JIwjb/VpKwzfMjCdv8V5KEbZ4fSdjm+ZGEba76n2dra4urrrrqqqv+R6Fy1VVXXXXVf6gP//AP/64Xe7EXe+1Lly7xAz/wA7yoJPH/mSSu+v9LEv9ZbPN/kSReVLb5l0jiP4Ik/rtI4rnZ5t9KEgC2eVFIAsA2L4wkbPPCSMI2L4gkbPOCSMI2L4gkbPP8SMI2z48kbPP8SMI2z48kbPO/gSRsc9W/nm0Atre3AfiHf/iH3+Gqq6666qr/CahcddVVV131H+bFXuzFXvt1Xud13hvg53/+55HE/3WSuOqq/8kk8e9lm//NJPGCSOLfQxL/k0nigWzzryUJANu8KCRhmxdGEgC2eUEkYZsXRBK2eUEkYZurnpckbPMfTRK2+f9ua2sLgPvuu+9Wrrrqqquu+p+AylVXXXXVVf8hrrnmmgd/7ud+7m8B/OAP/iC33347/1tI4qqrrnrBJPFvZZv/qSTxbyWJ/40kcT/b/GtIAsA2/xJJANjmhZGEbV4QSdjmBZGEbV4QSdjm+ZGEbZ4fSdjm+ZGEbZ4fSdjm+ZGEbZ4fSdjm+ZGEbZ4fSdjm+ZGEba76r7e9vQ3A2bNnb+Wqq6666qr/CahcddVVV131H+LDP/zDvwvgtttu47bbbuO/iySu+s8nif9PbHPVv40k/rVs859NEv9akvi/RBL3s82LShIAtvmXSMI2L4wkbPOCSMI2L4gkbPOCSMI2z48kbPP8SMI2z48kbPP/kSRsc9ULtrW1BcB99913K1ddddVVV/1PQOWqq6666qp/t8/93M/9rRd7sRd77UuXLvGDP/iD/EeTxFXPSxJX/deQxH8n2/x/Iol/Ddv8Z5HEfxZJ/HvY5j+KJO5nmxeFJABs88JIAsA2L4gkbPOCSMI2L4gkbPOCSMI2z48kbPMfRRK2eX4kYZvnRxK2+Z9AErb5jyYJ27wgkrDN/2bXX389AP/wD//wO1x11VVXXfU/BZWrrrrqqqv+Xd7xHd/xs17sxV7stQF+4Rd+gReVJP6/kcRVV/1bSOI/km3+L5HEfzRJ/EeQxH8WSbwgtvm3kgSAbV4UkgCwzQsjCdu8IJIAsM3zIwnbvCCSsM1/JEnY5vmRhG2eH0nY5j+KJGzz/EjCNs+PJGzz/EjCNlf9x9ra2gLgvvvuu5Wrrrrqqqv+p6By1VVXXXXVv9mLvdiLvfY7vdM7fTbAD/7gD3Lbbbchif+LJHHVVf9XSOLfyzb/F0ni30MS/xNI4rnZ5l9DEvezzb9EEgC2eUEkAWCbF0QStnl+JAFgm+dHErZ5fiRhm+dHErZ5fiRhm+dHErb515CEbZ4fSdjmqv+9tra2ALjvvvuezlVXXXXVVf9TULnqqquuuurf5Jprrnnwh3/4h38XwO///u9z++23I4n/6SRx1VVX/ftJ4t/CNv8TSeLfQhL/W0jigWzzopIEgG3+JZKwzQsjCdu8IJKwzQsiCds8P5KwzfMjCds8P5KwzfMjCdv8a0jCNv9RJGGb50cStvmfQBK2+f9qe3sbgLNnzz6Dq6666qqr/qegctVVV1111b/Jh3/4h3/XNddc8+DbbruNP/iDP+C/iySu+veRxFX/sWxz1fMniX8N2/xnksS/liT+L5DE/WzzopAEgG1eGEkA2OYFkQSAbZ4fSdjmBZGEbZ4fSdjm+ZGEbZ4fSdjmX0MStvnXkIRtnh9J2OY/iiRs8/xIwjbPjyRs8/xIwjb/1SRhm//Jrr/+egD+4R/+4be56qqrrrrqfwoqV1111VVX/au94zu+42e92Iu92GtfunSJH/qhH+I/miSuAklc9b+TJP4r2Ob/Okm8qGzzryGJfw1J/EeTxL+Hbf4jSOJ+tvmXSALANi+MJABs84JIwjbPjyQAbPP8SMI2z48kbPP8SMI2/xqSsM2/hiRs8x9FEra56n+ura0trrrqqquu+h+HylVXXXXVVf8qL/ZiL/ba7/RO7/TZAL/4i7/Ii0oS/19I4qqr/itI4j+Kbf63k8SLShIvCkn8e0niP4skXhjb/GtJ4n62eWEkAWCbF0YStnlBJGGbF0QStnl+JGGb50cStnl+JGGb5yYJ2zw/krDNc5OEbZ4fSdjmuUnCNs+PJGzzryEJ2/xPJwnb/F9333333cpVV1111VX/U1C56qqrrrrqRXbNNdc8+HM/93N/C+D3f//3ue222wCQxP81krjqqv9PJPFvZZv/ayTxbyGJ/0kk8UC2+deQBIBtXhhJANjmBZEEgG2eH0kA2Ob5kYRtnh9J2Ob5kYRtnh9J2Oa5ScI2/xqSsM2/hiRs868hCdv8a0jCNs+PJGzzH0kStvm3kIRt/i0kYZv/Lo94xCMA+Id/+Iff5qqrrrrqqv9JqFx11VVXXfUi+/AP//DvArjtttv4wz/8QyTxv4Ekrrrqqv88kvjXss3/RJL415LE/xaSeCDbvCgkcT/bvCCSALDNCyIJANs8P5KwzfMjCds8P5KwzfMjCdv8a0jCNs9NErb515CEbf41JGGbfw1J2OY/iiRs8/xIwjZXPa/77rvvVq666qqrrvqfhMpVV1111VUvks/93M/9rRd7sRd77UuXLvHDP/zD/HeSxFUvOklc9T+Hba4CSfxr2OY/kyReVJL4zySJF8Y2/1Ek8UC2+ZdIAsA2L4gkAGzzgkjCNs+PJABs89wkYZvnRxK2eX4kYZvnJgnbPD+SsM1zk4RtnpskbPOvIQnb/GeThG2u+s9z/fXXA3DffffdylVXXXXVVf+TULnqqquuuupf9GIv9mKv/WIv9mKvDfCLv/iL/GeQxP9nkrjq/wdJ/Gexzf9VknhR2eZFJYkXlST+PSTxH0ESLwrb/GtJ4n62eWEkAWCbF0QSALZ5fiQBYJvnRxK2eW6SALDNc5OEbZ4fSdjmuUnCNv8akrDNc5OEbZ6bJGzzryEJ2zw3SdjmP4okbHPVf4yzZ88+g6uuuuqqq/4noXLVVVddddUL9WIv9mKv/bmf+7m/BfBDP/RD3H777fxrSOL/OklcddX/BJL4j2Cb/80k8S+RxItCEv8WkvjvJonnZpsXlSTuZ5sXRBIAtnlBJAFgm+dHErZ5fiRhm+dHErZ5bpKwzfMjCds8N0nY5rlJwjb/ESRhm+cmCdv8R5CEbf6jSMI2z48kbPP8SMI2z48kbPNvIQnb/FtIwjb/Wa6//noA/uEf/uG3ueqqq6666n8SKlddddVVV71Q7/RO7/RZAH//93/P7bffzv0k8X+JJK666qorJPFvYZv/KyTxryGJ/w0k8UC2eVFIAsA2L4gkAGzzgkjCNs+PJABs89wkYZvnRxK2eW6SsM3zIwnbPDdJ2Oa5ScI2z00StnlukrDNfwRJ2Oa5ScI2/xqSsM1V/zm2trYAuO+++27lqquuuuqq/0moXHXVVVdd9QJ97ud+7m+92Iu92Gvffvvt/NIv/RKS+N9CElf995PE/yS2ueo/jyT+tWzzP4kkXlSS+I8miReVbf69JPFAtnlhJHE/2zw/kgCwzfMjCQDbPD+SsM1zkwSAbZ6bJGzz3CRhm38NSdjmuUnCNs9NErZ5bpKwzXOThG2emyRs8x9BErb515CEbf4nkIRt/jfZ2toC4L777ruVq6666qqr/qehctVVV1111fP1ju/4jp/1Yi/2Yq8N8Eu/9Ev8d5PEVS+cJK564STxP5Ft/r+SxIvKNv9ZJPGikMS/lST+I0niX2Kbfw1J3M82L4wkAGzz/EgCwDbPjyQAbPPcJAFgm+cmCds8N0nY5rlJwjbPTRK2eX4kYZvnJgnbPDdJ2Oa5ScI2z00StnlukrDNc5OEbZ6bJGzzryEJ2/xrSMI2/9dJwjb/Ftdffz0A//AP//DbXHXVVVdd9T8Nlauuuuqqq57Hi73Yi732O73TO302wA//8A9z6dIl/jNI4v8rSVx11f0k8R/NNv/XSOJFZZsXhST+JZL415LE/wSSeG62eVFI4n62eUEkAWCb50cSALZ5fiRhm+dHErZ5bpKwzXOThG2emyRs89wkYZvnRxK2eW6SsM3/dJKwzb+GJGzzryEJ2zw/krDN8yMJ2/xHk4RtrrrqqquuuuoBqFx11VVXXfUcrrnmmgd/7ud+7m8B/MEf/AG33347/xaS+L9MEldd9T+ZJP49bPO/mSReGEn8SyTxopLE/xaSeCDb/EskcT/bPD+SALDN8yMJANs8N0kA2Oa5ScI2z00SALZ5IEkA2OaBJAFgmweShG2eH0nY5kUhCds8N0nY5rlJwjbPTRK2eW6SsM1zk4Rt/jUkYZur/uNcd911APzDP/zD73DVVVddddX/NFSuuuqqq656Dh/+4R/+XQC33347f/iHf8hzk8T/JZK46qqrnpck/i1s87+dJF4Ukvj3ksR/NNv8a0jigWzzwkgCwDbPjyQAbPP8SALANs9NErZ5bpIAsM1zk4RtnpskbPPcJGGbB5KEbV5UkrDNc5OEbZ6bJGzz3CRhm38vSdjmuUnCNv8RJGGb/yqSsM3zIwnb/E+ytbXFVVddddVV/2NRueqqq6666lne8R3f8bNe7MVe7LUvXbrEj/zIjyCJ/00kcdV/DUn8X2Wbq/7tJPGvZZv/bpJ4UUjiX0sS/5Uk8fzY5kUhifvZ5gWRBIBtnh9JANjm+ZGEbZ6bJABs89wkYZvnJgnbPDdJ2Oa5ScI2DyQJ2zw3SdjmuUnCNs9NErb595CEbZ6bJGzzn0kStvnXkIRtnh9J2Ob/AknY5vnZ3t4G4B/+4R9+m6uuuuqqq/6noXLVVVddddVlL/ZiL/ba7/RO7/TZAL/8y7/M/xSSuOr5k8RV//Ek8d/JNv/fSOJFZZv/SJL4l0jiX0MS/xNJ4rnZ5oWRxP1s8/xI4n62eW6SALDNc5MEgG2emyRs89wkYZvnJgnbPDdJ2Oa5ScI2DyQJ2zw3SdjmuUnCNi8KSdjmuUnCNs9NErZ5bpKwzXOThG2emyRs89wkYZt/DUnY5j+KJGzzX0kStvmPtrW1BcB99913K1ddddVVV/1PQ+Wqq6666iquueaaB3/u537ubwH80i/9Erfffjv/2STx/40krrrqXyKJ/0i2+b9EEi8q27wgkviXSOJFIYn/CJL4t7LNv4UkHsg2L4gk7meb50cSALZ5bpIAsM1zkwSAbR5IEgC2eSBJANjmgSRhm+cmCds8N0nY5oEkYZvnJgnbPDdJ2OaBJGGb5yYJ2zw3SdjmfwpJ2OZfQxK2+f/ouuuuA+C+++67lauuuuqqq/4nonLVVVdddRUf/uEf/l0At99+O//wD//Av4ck/q+SxFVX/W8jiX8P2/xvJYl/C0n8SyTxryWJ/yySeGFs86KQxP1s84JIAsA2z48kAGzz3CQBYJvnJgnbPDdJ2Oa5ScI2DyQJANs8kCRs89wkYZsHkoRtnpskbPOikIRtnpskbPOikIRtnpskbPPcJGGb5yYJ2zw3SdjmP5skbPOvJQnbPD+SsM3zIwnb/FfZ3t4G4B/+4R9+m6uuuuqqq/4nonLVVVdd9f/c537u5/7Wi73Yi732pUuX+JEf+RFeGEn8XyGJq6666l8miX8t2/xvI4l/iSReVJL4n0QSz802L4wk7meb50cS97PNc5MEgG2emyRs89wkAWCbB5IEgG0eSBK2eW6SsM0DScI2z00StnkgSdjmuUnCNg8kCds8N0nY5kUhCds8N0nY5n8KSdjmP4okbPO/2dbWFgD33XffrVx11VVXXfU/EZWrrrrqqv/H3vEd3/GzXuzFXuy1AX75l38ZSfxvJYmr/vNI4v8r21z1ryOJfw3b/HeRxAsjiReFJP4jSOLfwjb/WpJ4INu8IJK4n22eH0kA2Oa5SQLANg8kCQDbPDdJ2Oa5ScI2DyQJ2zw3SdjmgSRhm+cmCds8kCRs89wkYZsHkoRtXhSSsM1zk4RtXhSSsM1zk4RtnpskbPPcJGGb5yYJ2/xrSMI2/5tJwjb/GltbWwCcPXv2GVx11VVXXfU/EZWrrrrqqv+nXuzFXuy13+md3umzAX70R3+UO+64g/9pJHHV85LEVf91JPFfzTb/n0jiRWWb/wiSeGEk8S+RxL+WJP4zSOKFsc2/RBIPZJvnRxL3s81zkwSAbZ6bJABs80CSALDNA0kCwDYPJAnbPJAkAGzzQJKwzQNJwjbPTRK2eSBJ2Oa5ScI2DyQJ2zyQJGzz3CRhmxeFJGzz3CRhm/9qkrDNv4YkbPN/0XXXXQfAP/zDP/w2V1111VVX/U9E5aqrrrrq/6kP//AP/y6AP/zDP+T222/nv5Ik/j+RxFVX/WtI4j+Kbf4vkcSLyjb/WpJ4YSTxopLE/xSSeG62eWEkcT/bPD+SALDNc5MEgG2emyRs89wkYZvnJgnbPJAkAGzzQJKwzQNJwjYPJAnbPDdJ2OaBJGGbF4UkbPNAkrDNi0IStvn3kIRtnpskbPPcJGGb5yYJ2/x3koRtnh9J2Ob5kYRtnh9J2Oaqq6666qr/N6hcddVVV/0/9Lmf+7m/dc011zz49ttv54/+6I/4jyKJ/6skcdVV/xtJ4t/DNv9bSeJFJYkXRhL/Ekn8e0ji38s2LypJPJBtXhBJ3M82z00SALZ5bpIAsM0DSQLANg8kCQDbPJAkAGzzQJKwzQNJwjYPJAnbPJAkbPPcJGGbB5KEbR5IErZ5bpKwzQNJwjYPJAnbPDdJ2OaBJGGb5yYJ2/xPIQnb/GtIwjb/W21vbwNw33333cpVV1111VX/E1G56qqrrvp/5h3f8R0/68Ve7MVee29vj1/+5V/mX0MS/xdI4qqrrnrRSOJfyzb/W0jiBZHEv0QS/xqS+M8kiRfENi+MJB7INs+PJABs89wkcT/bPJAkAGzzQJIAsM0DScI2z00StnkgSdjmgSRhmweShG0eSBIAtnkgSdjmgSRhmweShG1eFJKwzQNJwjYvCknY5kUhCds8N0nY5rlJwjbPTRK2eW6SsM2/hiRs87+ZJGxzv+uuuw6Af/iHf/htrrrqqquu+p+KylVXXXXV/yMv9mIv9trv9E7v9NkAv/zLv8ze3h73k8T/VpK46j+eJK66wjZXvegk8a9hm/9qknhBJPHCSOJFIYn/SSTx3GzzgkjifrZ5bpK4n22emyQAbPNAkgCwzQNJAsA295MEgG0eSBK2eSBJ2OaBJAFgm/tJAsA2DyQJ2zyQJGzzQJKwzQNJwjYPJAnbvCgkYZsHkoRtXhSSsM1zk4Rt/qtJwjb/USRhm/+Jtre3Abjvvvtu5aqrrrrqqv+pqFx11VVX/T9xzTXXPPhzP/dzfwvgj/7oj7jjjjuQxP9UkrjqeUniqv96kvivZJv/TyTxorLNfxZJvCCS+JdI4t9CEv8ZbPMvkcQD2eb5kcT9bPPcJAFgm+cmCQDbPJAkAGzzQJKwzQNJwjYPJAkA29xPEgC2eSBJ2OaBJGGbB5KEbR5IErZ5IEnY5oEkYZsHkoRtHkgStnlRSMI2DyQJ2zw3SdjmRSEJ2zw3SdjmuUnCNs9NErb5jyAJ2/xrScI2/5EkYZsXxXXXXQfAfffddytXXXXVVVf9T0Xlqquuuur/iQ//8A//LoDbb7+dP/qjP+K/kyT+P5HEVVf9a0jiP4pt/i+RxIvCNi8qSbwgknhhJPGikMR/NUk8P7Z5QSTxQLZ5bpK4n20eSBIAtnlukgCwzQNJwjYPJAkA29xPEgC2eSBJ2OaBJGGbB5KEbR5IErZ5IEnY5oEkYZt/iSRs80CSsM0DScI2DyQJ27woJGGbF4UkbPM/hSRs819BErZ5fiRhm/8oZ8+efQZXXXXVVVf9T0Xlqquuuur/gc/93M/9rRd7sRd77b29PX7sx36M/yyS+L9KEldd9b+RJP6tbPO/lST+JZJ4fiTxwkjiXyKJ/wiSeEFs828hiedmm+dHEvezzXOTBIBtHkgS97PNA0nCNg8kCQDbPJAkbPNAkrDNA0nCNg8kCds8kCRs80CSsM0DScI2DyQJ29xPErZ5bpKwzQNJwjYPJAnbPJAkbPNAkrDNi0IStnlRSMI2z00StnlukrDNc5OEbZ6bJGzzryEJ2/xvcv311wPwD//wD7/NVVddddVV/1NRueqqq676P+7FXuzFXvvFXuzFXhvgl3/5l/m3ksT/FZK46qqr/mWS+Neyzf8GknhuknhBJPHCSOJfQxL/XpJ4UdnmhZHEA9nmuUnifrZ5IEnczzYPJAkA29xPEgC2eSBJANjmfpIAsM39JAFgm/tJAsA295OEbR5IErZ5IEnY5oEkYZsXRhK2+Y8kCds8kCRs80CSsM2LQhK2eW6SsM3/BpKwzf80W1tbANx33323ctVVV1111f9UVK666qqr/g97sRd7sdf+3M/93N8C+NEf/VHuuOMOXhBJ/G8liav+c0ji/zvbXPWik8S/hm3+u0niBZHECyKJF4Uk/rtJ4rnZ5gWRxP1s89wkAWCb5yYJANs8kCQAbHM/SQDY5oEkYZsHkoRtHkgStnkgSdjmfpIAsM39JGGbB5KEbR5IEra5nyRs80CSsM0DScI2DyQJ2zyQJGzzbyUJ2zyQJGzz3CRhmxeFJGzz3CRhm+cmCds8N0nY5rlJwjb/USRhm/8qkrDN1tYWV1111VVX/a9A5aqrrrrq/7B3eqd3+iyA22+/nTvvvBNJ/G8iiauekySu+q8lif9Ktvn/RBIvKtv8R5LE8yOJF0QS/xJJ/FtI4j+CbV4UknhutnlukrifbR5IEvezzQNJAsA2DyQJ2zyQJABscz9JANjmfpIAsM39JGGbB5KEbR5IEra5nyRs80CSsM0DScI295OEbR5IErZ5IEnY5oEkYZsHkoRtHkgStnkgSdjmRSEJ27woJGGb/ykkYZv/KJKwzfMjCds8P5KwzQtz/fXXA/Bbv/Vb38NVV1111VX/k1G56qqrrvo/6nM/93N/68Ve7MVe+4477uDHf/zH+Z9EEv+fSOKqq15UkviPYpv/SyTxorDNv0QSz00SL4gkXhBJvKgk8Z9NEi+IbV4YSdzPNs9NEvezzQNJAsA2DyQJANvcTxIAtnkgSdjmgSRhmweShG3uJwkA29xPErZ5IEnY5n6SsM0DScI2DyQJ29xPErZ5IEnY5oEkYZsHkoRtHkgStnkgSdjmgSRhmweShG1eFJKwzYtCErZ5bpKwzXOThG2emyRs89wkYZt/DUnY5qqrrrrqqqv+lahcddVVV/0f9I7v+I6f9WIv9mKvDfArv/Ir/FeSxP9Fkrjqqv9tJPFvZZv/rSTxryGJ50cSL4gk/iWS+PeSxL/ENi8qSTw32zw/krifbZ6bJABs80CSALDNA0kCwDb3kwSAbe4nCQDb3E8SALa5nyRs80CSsM39JAFgm/tJwjb3kwSAbe4nCds8kCRscz9J2OaBJGGbB5KEbR5IErZ5IEnY5l8iCds8kCRs80CSsM2LQhK2+d9MErb5r3TdddcB8A//8A+/zVVXXXXVVf+TUbnqqquu+j/mxV7sxV77nd7pnT4b4Md+7MfY29vjP4ok/i+QxFVXXfXCSeJfyzb/m0ji+ZHE8yOJf4kkXhSS+I8iiReFbZ4fSTyQbZ6bJO5nmweSxP1scz9JANjmgSQBYJv7SQLANveTBIBt7icJ29xPEgC2uZ8kbPNAkrDN/SRhmweShG3uJwnbPJAkbHM/SdjmgSRhmweShG3+tSRhm38rSdjmgSRhmxeFJGzz3CRhm/8skrDNfxRJ2Oaqq6666qr/t6hcddVVV/0fcs011zz4cz/3c38L4I/+6I+44447+NeQxP9WkrjqP5ck/j+wzVX/NpL417DNfxdJPDdJPD+SeEEk8S+RxP8Eknhutnlukngg2zyQJO5nmweSBIBt7icJANs8kCQAbHM/SdjmgSRhm/tJAsA295OEbe4nCQDb3E8StrmfJGzzQJKwzf0kYZsHkoRt7icJ2zyQJGzzQJKwzf0kYZsHkoRtHkgStnkgSdjmgSRhm38rSdjm30MStnlukrDNc5OEbf41JGGb/yiSsM2/xfXXXw/AP/zDP/w2V1111VVX/U9G5aqrrrrq/5AP//AP/y6AO+64gz/+4z/muUnifxNJXPX8SeKq/xyS+O9gm/9vJPGisM1/Jkk8P5J4fiTxwkjiRSWJ/2y2eUEk8UC2eW6SuJ9tHkgS97PN/SQBYJv7SQLANg8kCdvcTxIAtrmfJABscz9J2OZ+krDNA0nCNveThG3uJwnbPJAkbHM/SdjmgSRhm/tJwjYPJAnbvDCSsM0DScI2DyQJ2zyQJGzzQJKwzQNJwjYPJAnbvCgkYZvnJgnb/E8iCdv8R5GEbZ4fSWxtbQFw33333cpVV1111VX/k1G56qqrrvo/4h3f8R0/68Ve7MVee29vjx//8R9HEv+TSeL/G0lcddULIon/KLb5v0QSLwrb/GtI4rlJ4gWRxAsiiX+JJP47SOL5sc1zk8QD2eaBJHE/2zyQJABscz9JANjmfpIAsM39JAFgm/tJAsA295OEbe4nCdvcTxIAtrmfJGxzP0nY5n6SALDN/SRhm/tJwjYPJAnb3E8StnlhJGGbB5KEbR5IErb5zyQJ2zyQJGzz3CRhmxeFJGzz3CRhm+cmCds8N0nY5vmRhG3+O1133XUA3Hfffbdy1VVXXXXV/3RUrrrqqqv+D3ixF3ux136nd3qnzwb41V/9Vf47SeL/MklcddX/dJL4t7LN/1aSeFFJ4oEk8fxI4gWRxAsiiX8NSfxnsM0LIokHss1zk8T9bPNAkgCwzQNJAsA295MEgG3uJwkA29xPEgC2uZ8kbHM/SdjmfpIAsM39JGGb+0nCNveThG0eSBK2uZ8kbHM/SdjmhZGEbe4nCds8kCRs80CSsM0LIwnbPJAkbPNAkrDNA0nCNi8KSdjmRSEJ2/xvIAnb/EfZ2toC4B/+4R9+m6uuuuqqq/6no3LVVVdd9b/cNddc8+DP/dzP/S2AP/7jP+aOO+7gP5Mk/q+QxFVXXfWcJPGvZZv/rSTx/Eji+ZHECyKJf4kk/itJ4vmxzXOTxAPZ5oEkcT/b3E8S97PN/SQBYJv7SQLANveTBIBt7icJ29xPEgC2AZAEgG3uJwnb3E8StrmfJGxzP0kA2OZ+krDN/SRhm/tJwjb3k4RtHkgStrmfJGzzQJKwzQsjCds8kCRs80CSsM0DScI2DyQJ2zyQJGzzopCEbV4UkrDNc5OEbZ6bJGzz3CRhm38NSdjmX0MStvnX2Nra4qqrrrrqqv81qFx11VVX/S/34R/+4d8FcMcdd/DHf/zH/HtJ4n8rSVz1X08S/9vY5qr/OJL417DN/wSSeG6SeG6SeEEk8YJI4l9DEv+RbPOCSOK52eaBJHE/2zyQJABs80CSALDN/SQBYJv7SQLANveThG3uJwkA29xPEra5nyRscz9J2OZ+krDN/SQBYJv7ScI295OEbe4nCdvcTxK2uZ8kbPNAkrDN/SRhmweShG3uJwnbPJAkbPNAkrDNfxRJ2OaBJGGbF4UkbPNfTRK2+c8mCds8t+3tbQD+4R/+4Xe46qqrrrrqfzoqV1111VX/i33u537ub73Yi73YawP88R//MTfddBP/Eklc9X+LJK7638c2V/33kcQDSeK5SeL5kcQLIokXRhL/VSTxgtjmuUnigWxzP0nczzb3k8T9bHM/SQDY5n6SALDN/SQBYBsASQDY5n6SsM39JGGb+0kCwDYAkgCwDYAkAGxzP0nY5n6SsM39JGGb+0nCNveThG3uJwnbPJAkbHM/SdjmgSRhm/tJwjYPJAnbvDCSsM0DScI2DyQJ2/xbScI2LwpJ2Oa5ScI2/x0kYZv/CNdddx0A9913361cddVVV131Px2Vq6666qr/pa655poH8wBv//Zvz1VXXXXVVf86knhuknhuknh+JPHCSOJFJYn/SLZ5QSTxQLZ5bpK4n23uJ4n72eZ+kgCwzf0kAWCb+0kCwDb3k4Rt7icJANsASALANgCSALDN/SRhm/tJwjb3k4Rt7icJ29xPEra5nyRscz9J2OZ+krDN/SRhmxdGErZ5YSRhmxdGErZ5IEnY5oEkYZsHkoRtHkgStnkgSdjmRSEJ2/x7SMI2z00StvnXkIRt/iucPXv2Vq666qqrrvqfjspVV1111f9iL/ZiL/baAHfddRdXvXCSuOo/hiSuuup/q+uuuw4ASTw3STw3STw/knh+JPEvkcR/BUm8ILZ5IEk8kG0eSBL3s839JAFgm/tJAsA295MEgG3uJwkA2wBIAsA295OEbe4nCdvcTxK2uZ8kbHM/SdjmfpKwzf0kYZv7ScI295OEbe4nCdvcTxK2uZ8kbHM/SdjmgSRhm/tJwjYPJAnb3E8StnkgSdjmgSRhm/8okrDNA0nCNi8KSdjmP4skbPMfQRK2eVFtbW0BcN99993KVVddddVV/9NRueqqq676P+Cnf/qnkcR/BEn8R5HEfwRJ/EeRxH8kSfxHksR/Bkn8Z5HEfzZJ/FeTxP9Ukrjq3+Y93/M9eW6SeG6SeG6SeH4k8YJI4kUlif9otnl+JPFAtnkgSTyQbe4nCQDb3E8S97MNgCTuZxsASQDY5n6SALANgCQAbAMgCQDbAEgCwDYAkgCwDYAkbHM/SdjmfpKwzf0kYZv7ScI295OEbe4nCdvcTxK2uZ8kbHM/SdjmhZGEbV4YSdjmgSRhmxdGErZ5IEnY5oEkYZt/K0nY5kUhCds8N0nY5rlJwjb/ESRhm38NSdjmftdddx0A//AP//DbXHXVVVdd9b8BwVVXXXXV/1L33Xffrf/wD//w2wA33HADtrHNv5dtbPMfwTa2+feyjW1s8+9lG9vY5j+CbWxjm/8ItrGNbf4j2cY2tvmPZhvb2OY/i21sYxvb/FewjW1sYxvb/E9hG9vYxja2sY1tbGObq/5lkpDEA0lCEg8kCUk8kCQkIYkHkoQkJCGJ50cSkpCEJCQhif8MkpCEJCQhCUk8N0lIQhKSeG6SkIQk7icJSUjigSQhiQeSxANJQhIPJIkHksQDSeKBJPFAkrifJCRxP0lI4n6SeCBJPJAkHkgSDySJB5LEA0nigSTxQJJ4bpJ4IEk8N0n8SyTx3CTx3CTx3CTx3CTx3CTxopLEfwdJ/GfZ2toC4L777ruVq6666qqr/jegctVVV131f8DOzg533XUXALYBkMS/h23uJ4l/D9sASOLfyzYAkvj3sg2AJP4j2AZAEv8RbHM/SfxHsc39JPEfyTYPJIn/DLZ5IEn8V7DN8yOJ/2ls86KQxP9HknggSTyQJJ6bJJ4fSbwgknhRSOI/i22emySem23uJ4kHss39JAFgm/tJAsA295MEgG0AJAFgm/tJAsA2AJIAsA2AJABsAyAJANsASMI295OEbe4nCdvcTxK2AZAEgG0AJGGb+0nCNveThG3uJwnb3E8StrmfJGxzP0nY5n6SsM0DScI295OEbV4YSdjmgSRhm/9qkrDNi0IStnlukrDNi0oStvmPIAnb/Eu2trYAuO+++27lqquuuuqq/w0Irrrqqqv+F/v7v//73wbY3t7mudnGNv8RbGObfy/b2OY/gm1s8x/BNraxzX8E29jGNv9RbGMb2/xHso1tbPOfwTa2sc1/JtvYxja2sc1/JdvYxja2sY1t/jewjW1sYxvb2MY2trGNbWxjG9vY5v8KSUjifpKQxANJQhIPJAlJSOKBJCEJSUjiuUlCEpKQhCQk8Z9JEpKQhCQkIYnnJglJSOK5SUISkrifJCQhiftJQhKSuJ8kJHE/SUjigSTxQJJ4IEk8kCTuJwlJ3E8SkrifJB5IEg8kiftJ4oEk8UCSeCBJPJAkHkgSDySJB5LEv0QSDySJ5yaJf4kknpsknpsknpsknpskXlSS+PeSxH8USfx7bG9vA3D27NlncNVVV1111f8GVK666qqr/hf7h3/4h98BuOGGG3hBbAMgiX8v2wBI4t/DNveTxL+Hbe4niX8v2wBI4j+Cbe4nif8ItrmfJP6j2OaBJPEfyTYPJIn/TLZ5IEn8V7PN8yOJ/+1s87+ZJB5IEs9NEs9NEs9NEi+IJP4lkvjPZpvnJokHss39JPFAtrmfJABscz9JANjmfpIAsA2AJABsAyAJANsASALANgCSALANgCQAbAMgCdvcTxK2uZ8kbAMgCdvcTxK2uZ8kbAMgCdvcTxK2uZ8kbHM/SdjmfpKwzf0kYZv7ScI295OEbe4nCds8kCRscz9J2OaFkYRtHkgStvmPIgnbPJAkbPOikIRtnpskbPOikoRtnpskbPMfQRK2AbjuuusA+Id/+Iff5qqrrrrqqv8NqFx11VVX/S929uzZWwF2dnb4l9gGQBL/XrYBkMS/l20AJPHvZRsASfx72eZ+kviPYBsASfxHsc39JPEfyTb3k8R/NNs8kCT+M9nmuUniv4NtXhBJXPVfRxLPTRIPJInnJonnRxIvjCT+tSTxL7HNCyOJ58c295PEA9nmfpK4n20AJHE/2wBIAsA295MEgG0AJAFgGwBJANgGQBIAtgGQBIBtACRhGwBJANgGQBK2uZ8kbAMgCQDbAEjCNveThG0AJAFgGwBJ2OZ+krDN/SRhm/tJwjb3k4Rt7icJ29xPEra5nyRs88JIwjb3k4RtHkgStnlhJGGbB5KEbR5IErb5t5KEbf49JGGb/0ySsM0Ls7W1BcB99913K1ddddVVV/1vQHDVVVdd9b/Yfffdd+t999136/b2Ntvb27wobGMb2/x72cY2/xFsY5v/CLaxjW3+I9jGNrb5j2Ab29jmP5JtbGOb/2i2sY1t/rPYxja2sc1/BdvYxja2sc1/N9vYxja2sY1tbGObq/7jSOKBJCGJ+0lCEg8kCUk8kCQkIYkHkoQkJCEJSTw3SUhCEpKQhCQkIQlJvCgkIQlJSEISkpCEJCTx/EhCEpKQxANJQhKSeCBJSOKBJCGJ+0lCEpK4nyQkcT9JSOJ+knggSTyQJO4nCUncTxL3k4Qk7ieJB5LE/STxQJJ4IEncTxIPJIkHksQDSeLfQxIPJIl/iST+JZJ4bpJ4bpJ4bpJ4bpJ4bpJ4UUniv4Mkrrrqqquu+n+D4Kqrrrrqf7mzZ8/eCrC9vc2/lm1s8+9lG9v8R7CNbf6j2MY2/1FsY5v/KLaxjW3+I9nGNrb5j2Yb29jGNv9ZbGMb29jmv4ptbGMb29jmfxLb2MY2trGNbWxjG9tc9S+TxP0kIYn7SUISDyQJSdxPEpKQxANJQhKSeG6SkIQkJCGJF0QSkpCEJCQhCUlIQhKSkIQkJCEJSUji+ZGEJCQhCUlI4oEkIQlJPJAkJCGJ+0lCEpK4nyQk8UCSkMT9JCGJ+0nifpKQxP0kIYn7SeKBJHE/STyQJO4niQeSxP0k8UCSeCBJ3E8SDySJB5LECyKJB5LEA0niuUnigSTxQJJ4bpJ4IEk8N0n8Z5PEc5PEi0oSz48knh9JPD+S+I8iiYc//OEA/MM//MNvc9VVV1111f8WBFddddVV/8v9/d///W8D3Hjjjfxb2cY2/162sY1t/r1sYxvb/EewjW3+o9jGNrb5j2Ib29jmP5JtbGOb/wy2sY1tbPOfxTa2sY1tbPNfxTa2sY1tbGOb/6lsYxvb2MY2trGNbWxjG9v8fyYJSdxPEpK4nyQkIYn7SUISDyQJSUjigSQhCUlI4rlJQhKSkIQkJCGJfy9JSEISkpCEJCTx3CQhCUlI4n6SkIQkJHE/SUhCEveThCTuJwlJPJAkHkgS95OEJO4nCUncTxL3k4Qk7ieJ+0lCEveTxP0kIYn7SeJ+kpDE/STxQJK4nyQeSBIPJIn7SeKBJPFAknggSfxLJPFAkviXSOJfIonnJonnJonnJol/D0n8b3PffffdylVXXXXVVf9bULnqqquu+l/uH/7hH34H4IYbbuDfyzYAkvj3sg2AJP69bAMgiX8v29xPEv8RbHM/SfxHsM39JPEfxTYPJIn/aLa5nyT+M9nmgSTxX8k2z48k/rewzb+FJP43k8T9JPFAknhuknggSTw/knh+JPEvkcR/NNs8N0k8N9vcTxL3s839JAFgm/tJAsA2AJIAsA2AJABsAyAJANsASALANgCSALANgCRsAyAJANsASMI2AJIAsA2AJGwDIAnb3E8StgGQhG3uJwnbAEjCNveThG0AJGGb+0nCNveThG0AJGGb+0nCNveThG3uJwnb3E8StnlhJGGb+0nCNi+MJGzzQJKwzX8USdjmgSRhmxeFJGzzopKEbZ6bJGzz3CRhm+cmCds8P9dffz0A//AP//A7XHXVVVdd9b8Flauuuuqq/+XOnj17K8DOzg62kcS/l20AJPHvZRsASfx72eZ+kvj3ss39JPEfwTYAkviPYpv7SeI/km3uJ4n/aLZ5IEn8Z7LNc5PEfzXbPD+S+L/CNv8XSOJ+knggSTw3STw3STw3Sbwgkvi3ksQD2eaFkcQLYpv7SeKBbAMgifvZBkAS97MNgCQAbAMgifvZRhIAtgGQBIBtACQBYBsASdgGQBIAtgGQhG0AJAFgGwBJ2AZAErYBkASAbQAkYRsASdjmfpKwDYAkbHM/SdgGQBK2uZ8kbPP8SMI295OEbe4nCdvcTxK2uZ8kbHM/SdjmhZGEbe4nCds8kCRs88JIwjYPJAnbPJAkbPNvJQnbvCgkYZurrrrqqquuehFRueqqq676P2J7exsA2wBI4t/LNgCS+PeyDYAk/iPYBkAS/xFsAyCJ/wi2uZ8k/qPY5n6S+I9km/tJ4j+DbR5IEv/ZbPNAkvjvYpsXRBJX/deRxANJ4n6SeG6SeCBJPDdJPD+SeGEk8W8liReVbR5IEg9km/tJ4n62AZDE/WwDIAkA2wBI4n62AZAEgG0kAWAbAEkA2AZAErYBkASAbQAkYRsASdjmfpKwDYAkbAMgCdvcTxK2AZCEbQAkYZv7ScI2AJKwzf0kYRsASdjmfpKwDYAkbHM/SdjmfpKwzf0kYZv7ScI295OEbe4nCdvcTxK2eWEkYZsXRhK2eSBJ2OaBJGGbB5KEbR5IErZ5IEnY5kUhCdv8T3HdddcB8A//8A+/zVVXXXXVVf9bEFx11VVX/S9333333foP//APvw1w4403cj/b2MY2/162sc1/BNvYxjb/EWxjm/8otrGNbf6j2MY2tvmPZBvb2OY/mm1sYxvb/GexjW1sY5v/CraxjW1sY5v/CWxjG9vYxja2sY1trvrPIQlJAEhCEveThCQkcT9JSOJ+kpCEJO4nCUlIQhIPJAlJSEISknh+JCEJSUhCEpKQhCQkIQlJSEISkpCEJJ4fSUhCEpKQxANJQhKSkMT9JCEJSdxPEpKQBIAkJCGJ+0lCEveTxP0kIYn7SeJ+kpDE/SRxP0ncTxKSuJ8k7ieJ+0lCEveTxP0kcT9JSOJ+krifJB5IEveTxANJ4n6SeCBJPJAk/jUk8UCSeCBJPJAknpskHkgSz00S/x0k8aKSxPMjiedHEs+PJJ4fSTw/W1tbANx33323ctVVV1111f8WVK666qqr/g/Z3t7m+bENgCT+PWxzP0n8e9kGQBL/Xra5nyT+I9gGQBL/UWxzP0n8R7HN/STxH80295PEfxbbPJAk/ivY5vmRxP8UtvmXSOKqF40kHkgS95PEA0niuUnigSTx/EjiBZHEfxZJvCC2uZ8kHsg295PE/WwDIIn72QZAEgC2AZAEgG0AJAFgG0kA2AZAEgC2kQSAbQAkYRsASQDYRhIAtgGQhG0AJGEbAEkA2AZAErYBkIRtACRhm/tJwjYAkrANgCRscz9J2AZAEra5nyRsAyAJ29xPErZ5fiRhm/tJwjb/GpKwzf0kYZsXRhK2eWEkYZsHkoRtHkgStnkgSdjmgSRhmxeFJGzz321rawuA++6771auuuqqq67634Tgqquuuur/gL//+7//bYDt7W1eGNvY5j+CbWzzH8E2tvmPYhvb/EexjW1s8x/JNraxzX8k29jGNv8ZbGMb29jmP5NtbGMb2/xXs41tbGMb2/xPZhvb2MY2trGNbWxjG9tc9WySkASAJCRxP0lI4n6SkIQk7icJSdxPEpKQhCTuJwlJSEISknhukpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSOKBJCEJSUhCEveThCQkIYn7SUISkrifJCRxP0lI4n6SkMT9JCEJAElI4n6SuJ8kJAEgCUncTxL3k8T9JHE/SUjifpK4nyTuJ4n7SeKBJHE/SdxPEg8kiftJ4gWRxANJ4n6SeCBJPJAkHkgSDySJf4kkHkgS/xJJPDdJ/GeTxItKEs+PJP4zXHfddQD8wz/8w29z1VVXXXXV/yYEV1111VX/B/zDP/zD7wDceOONvChsY5v/CLaxzX8E29jGNv8RbGMb2/xHsY1tbPMfyTa2+Y9mG9vYxjb/GWxjG9vY5j+TbWxjG9vY5r+abWxjG9vYxjb/m9jGNraxjW1sYxvb2MY2trGNbWzzf4kkJHE/SdxPEpK4nyQkcT9JSEIS95OEJB5IEpKQxANJQhKSkIQkJPHcJCEJSUhCEpKQhCQkIQlJSEISknh+JCEJSUhCEg8kCUlIQhL3k4QkJHE/SUjifpKQxP0kIYn7SUIS95PE/SQhCQBJSOJ+krifJO4niftJQhIAkpDE/SRxP0ncTxL3k8T9JPFAkrifJO4niQeSxP0kcT9JPJAkHkgS95PEA0nigSTxQJJ4IEk8kCT+JZJ4IEk8N0n8SyTx3CTx3CTx3CTxopLEv5cknh9JPD+SuOqqq6666v8EKlddddVV/wecPXv2VoCdnR3+NWwDIIl/L9sASOI/gm0AJPEfwTYAkviPYhsASfxHsc39JPEfzTb3k8R/BtvcTxL/2WzzQJL472Cb50cS/1fY5v8aSdxPEg8kiQeSxANJ4rlJ4rlJ4gWRxH80SbwwtgGQxHOzDYAk7mcbAEnczzaSuJ9tJHE/20gCwDYAkgCwjSQAbAMgCdsASALANpIAsI0kAGwjCQDbAEjCNgCSsA2AJGwDIAnbAEjCNgCSsA2AJABsAyAJ2wBIwjYAkrDN8yMJ2wBIwjb3k4Rtnh9J2OZ+krDN/SRhm/tJwjb3k4Rt7icJ29xPErZ5YSRhmxdGErZ5IEnY5j+KJGzzP811110HwD/8wz/8DlddddVVV/1vQnDVVVdd9X/Afffdd+t999136/b2Ntvb2/xr2cY2/xFsYxvb/EewjW3+o9jGNrb5j2Ib29jmP5JtbGOb/wy2sY1t/rPYxja2sc1/BdvYxja2sc1/J9vYxja2sY1tbHPVfx9JSOJ+krifJCRxP0lI4n6SkMT9JCEJSQBIQhKSkMT9JCEJSUhCEs9NEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJPHcJCEJSUjigSQhCUncTxKSkMT9JCGJ+0lCEveThCQAJCGJ+0lCEgCSkASAJCRxP0ncTxL3k8T9JHE/SdxPEveTxP0kcT9J3E8SDySJ+0nifpK4nyTuJ4kHksT9JPFAkrifJB5IEg8kiX8PSTyQJB5IEv8SSfxbSOK5SeK5SeJFJYnnJonnRxLPjyT+rba2tgC47777buWqq6666qr/TQiuuuqqq/6POHv27K0AOzs7/FvZxjb/UWxjm/8ItrGNbf6j2MY2/5FsYxvb/EeyjW1s85/BNraxjW3+s9jGNraxzX8V29jGNraxzf8EtrGNbWxjG9vYxjZX/eeThCQAJCGJ+0lCEgCSkIQkACQhCUncTxKSuJ8kJCEJSTyQJCQhCUlIQhLPjyQkIQlJSEISkpCEJCQhiedHEpKQhCQkIYn7SUISkpDE/SQhCUncTxKSkASAJCQhCQBJSOJ+kpAEgCQkcT9J3E8S95PE/SQhCQBJSAJAEveTxP0kcT9J3E8SkgCQhCQAJCEJAElI4n6SuJ8k7ieJ+0nifpJ4IEncTxIPJIn7SeKBJPGCSOKBJPFAkvjXksQDSeJfIonnJonnJokXhSSemyT+K0ni+ZHE/ba2tgA4e/bsrVx11VVXXfW/CcFVV1111f8Rf//3f//bADfccAP/XraxjW3+I9jGNv9RbGOb/yi2sY1t/iPZxja2+Y9kG9vYxjb/GWxjG9v8Z7KNbWxjm/9KtrGNbWxjm/9pbGMb29jGNraxjW2u+reThCQAJCGJ+0lCEgCSkMT9JCGJ+0lCEpIAkIQkJPFAkpCEJCTxQJKQhCQkIQlJSEIS/xqSkIQkJCEJSUhCEg8kCUlIQhL3k4QkJCEJAElIQhL3k4Qk7icJSQBIQhL3k4QkACQhCQBJSAJAEpIAkIQk7ieJ+0kCQBKSAJCEJAAkIQkASUjifpK4nyTuJ4n7SeJ+krifJO4niftJ4n6SeCBJ3E8SL4gkXhBJPJAkHkgSDySJB5LEA0niXyKJB5LEc5PEv4Uk/qNJ4vmRxH+kra0tAO67775bueqqq6666n8Tgquuuuqq/yP+4R/+4XcAbrzxRmzzH8U2tvmPYBvb2OY/gm1sY5v/KLaxjW3+I9nGNrb5j2Yb29jmP4NtbGMb2/xnso1tbGOb/2q2sY1tbGMb2/xPZRvb2MY2trGNbWxjG9vY5qrnTxL3k4QkACQhiftJQhIAkpCEJAAkIQlJ3E8SkpCEJO4nCUlIQhKSeCBJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQxANJQhKSkIQk7icJSUhCEveThCTuJwlJSAJAEpK4nyQkASAJSdxPEveThCQAJCEJAElIAkAS95PE/SRxP0ncTxL3k8T9JHE/SdxPEveTxP0kcT9J3E8S95PE/SRxP0k8kCTuJ4n7SeKBJHE/STyQJB5IEg8kiQeSxANJ4oEk8UCS+JdI4l8iiecmiecmiecmiecmiecmiX8vSfxrXXfddQD8wz/8w+9w1VVXXXXV/zZUrrrqqqv+jzh79uytANvb2wDY5n6S+PeyDYAk/iPYBkAS/xFsAyCJ/yi2AZDEfyTb3E8S/5Fscz9J/Gewzf0k8Z/JNs9NEv/VbPP8SOJ/C9v8a0ji/zJJ3E8S95PEA0nifpJ4IEk8kCSemySeH0m8KCTxr2WbB5LE82MbAEk8kG0AJHE/20jifrYBkASAbSQBYBsASQDYRhIAtpEEgG0AJGEbAEnYBkAStpEEgG0kAWAbSQDYRhK2AZCEbQAkYRsASdgGQBK2AZCEbQAkYRsASdgGQBK2AZCEbQAkYRsASdgGQBK2eX4kYRsASdjmfpKwDYAkbHM/SdjmP4skbHM/SdjmhZGEbR5IErb5ryYJ2zw3SdjmRSEJ2zw3SWxtbQFw33333cpVV1111VX/21C56qqrrvo/Zmdnh+dmGwBJ/HvZBkAS/xFsAyCJ/wi2uZ8k/iPY5n6S+I9kGwBJ/Eezzf0k8Z/BNg8kif9stnkgSfx3sc3zI4n/7Wzzn0US/5ls86KSxP0kcT9J3E8SDySJB5LEA0niuUni+ZHEfzRJvDC2AZDEA9kGQBL3sw2AJABsAyCJ+9lGEgC2kcT9bCMJANtIAsA2kgCwjSQAbCMJANtIwjYAkrANgCRsAyAJ20gCwDaSsA2AJGwDIAnbAEjCNgCSsA2AJGwDIAnbAEjCNgCSsA2AJGwDIAnbAEjCNgCSsM39JGEbAEnY5vmRhG3uJwnbAEjCNveThG3uJwnb3E8StrmfJGzzwkjCNveThG3+tSRhmweShG0eSBK2eSBJ2OaBJGGb/0pbW1sA3HfffU/nqquuuuqq/20Irrrqqqv+j7jvvvtu/Yd/+IffBrjxxht5fmxjm/8ItrGNbf4j2MY2tvmPYhvb/EeyjW1s8x/JNraxzX8G29jGNrb5z2Ib29jGNv8VbGMb29jGNv/dbGMb29jGNra56grb2MY2trGNbWxjG9vYxja2sY1tbGMb29jGNraxjW1sY5sXhSQkASAJSQBIQhIAkpAEgCQkIQkASUhCEgCSkIQk7icJSUjifpKQhCQk8UCSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlI4oEkIQlJSOJ+kpCEJCQBIAlJSAJAEpKQxP0kIQkASUjifpK4nyQkASAJSQBI4n6SuJ8kACQhCQBJSAJAEveTxP0kASAJSQBI4n6SuJ8k7ieJ+0nifpK4nyTuJ4n7SeJ+krifJO4niRdEEveTxANJ4gWRxANJ4oEk8UCSeCBJPJAk/iWSeCBJPDdJ/HeQxItKEs+PJJ6fra0tAM6ePfsMrrrqqquu+t+GylVXXXXV/0Hb29u8MLYBkMR/BNsASOI/gm0AJPEfwTb3k8R/FNvcTxL/UWxzP0n8Z7DN/STxn8U2DySJ/wq2eW6S+O9mmxdGElf915HE/SRxP0ncTxIPJIkHksQDSeKBJPH8SOKFkcR/BNsASOL5sY0kHsg2AJK4n20kcT/bSALANgCSALCNJABsIwkA2wBIwjYAkrCNJABsIwkA20gCwDaSsA2AJGwjCQDbSMI2AJKwDYAkbCMJANtIwjYAkrANgCRsAyAJ2wBIwjYAkrANgCRsAyAJ2wBIwjYAkrANgCRsAyAJ29xPErYBkIRt7icJ2wBIwjb3k4Rt7icJ29xPEra5nyRscz9J2OZ+krDN/SRhmxdGErZ5YSRhmweShG0eSBK2eSBJ2OaBJGGbF4UkbPPvcd111wHwD//wD7/NVVddddVV/9sQXHXVVVf9H/L3f//3vw2ws7PDi8I2tvmPYhvb/EexjW1s8x/FNraxzX8k29jmP5ptbGMb2/xnsI1tbPOfzTa2sY1t/ivZxja2sY1t/qexjW1sYxvb2MY2trnqP44k7ieJ+0nifpK4nyQkASAJSUgCQBKSkASAJCQhiftJQhKSkASAJCQhCUlIQhKSeCBJSEISkpCEJCQhCUlIQhLPTRKSkIQkJCGJ+0lCEpKQBIAkJCGJ+0lCEpIAkIQkACQhCUkASEISAJKQBIAkJAEgCUkASEISAJKQBIAk7icJAElIAkAS95MEgCQkASCJ+0nifpIAkMT9JHE/SdxPEveTxP0kcT9J3E8S95PE/SRxP0ncTxIviCReEEk8kCT+M0nigSTxL5HEc5PE/ySSeFFtbW1x1VVXXXXV/1pUrrrqqqv+D/mHf/iH3wG48cYb+dewDYAk/iPYBkAS/1FsAyCJ/yi2AZDEfxTb3E8S/9Fscz9J/EezzQNJ4j+TbR5IEv+VbPPcJPE/lW1eFJK46l8miftJ4n6SuJ8k7ieJB5LE/STxQJJ4bpJ4fiTxH0USL4xtACTxQLYBkMT9bCOJ+9kGQBIAtpEEgG0AJAFgG0kA2EYSALaRBIBtJAFgG0nYBkAStpEEgG0kYRsASdhGEgC2kYRtACRhG0nYBkAStgGQhG0kYRsASdgGQBK2AZCEbQAkYRsASdgGQBK2eW6SsA2AJGwDIAnbAEjCNgCSsM39JGEbAEnY5n6SsM3zIwnb3E8StrmfJGxzP0nY5n6SsM0LIwnb3E8StvnXkoRtHkgStnkgSdjmgSRhmweShG2emyRs86KQhG2en/vuu+9Wrrrqqquu+t+GylVXXXXV/yFnz569FWB7e5t/C9vcTxL/Xra5nyT+I9gGQBL/UWxzP0n8R7HN/STxH80295PEfwbbPJAk/jPZ5oEk8V/NNs+PJP63sM2LShL/H0kCQBL3k8T9JHE/SdxPEg8kiQeSxANJ4rlJ4gWRxH8G2wBI4rnZRhIPZBtJ3M82krifbSQBYBtJ3M82kgCwjSQAbCMJANtIwjYAkrCNJABsIwnbAEjCNpIAsI0kbAMgCdtIwjYAkrCNJABsIwnbAEjCNpKwDYAkbAMgCdsASMI2AJKwDYAkbPNAkrDNv0QStgGQhG0AJGGb50cStnl+JGGb+0nCNveThG3uJwnb3E8StrmfJGxzP0nY5oWRhG3uJwnbPJAkbPO/ycMf/nAA/uEf/uG3ueqqq6666n8jKlddddVV/4fcd999twLs7Oywvb3N/v4+/1a2AZDEfwTbAEjiP4Jt7ieJ/yi2uZ8k/qPY5n6S+I9mm/tJ4j+Lbe4nif9stnlukvjvYJvnRxL/m9nm30sS/xtJAkAS95PE/SRxP0k8kCTuJ4kHksQDSeK5SeKFkcR/BNsASOK52QZAEg9kG0nczzaSuJ9tJAFgG0nczzaSALCNJABsIwkA20jCNpIAsI0kAGwjCdtIAsA2krANgCRsIwnbAEjCNpIAsI0kbAMgCdtIwjYAkrCNJABsIwnbAEjCNgCSsA2AJGzzQJKwDYAkbAMgCdsASMI2z48kbAMgCdsASMI295OEbQAkYZv7ScI295OEbf6jSMI295OEbV4YSdjmhZGEbR5IErZ5IEnY5oEkYZsHkoRtXhSSsM2L4r777ruVq6666qqr/jciuOqqq676P+Yf/uEffhtgZ2eH/wi2sc1/FNvYxjb/UWxjm/9otrHNfzTb2MY2/xlsYxvb/GeyjW1sY5v/KraxjW1s89/NNraxjW1sYxvb/H9hG9vYxja2sY1tbGMb29jGNraxjW1sYxvb2MY2trGNbWxjG9vYxja2sY1tbGMb29jGNraxjW1sYxvb2OZ+kgCQxP0kcT9JAEhCEgCSkIQkACQhCQBJSEISAJKQhCQAJCEJSUjifpKQhCQkIQlJPJAkJCEJSUhCEpKQhCQkIQlJPJAkJCEJSUhCEgCSkIQkJHE/SUhCEgCSkIQkACQhCQBJSEISAJKQBIAkJAEgiftJAkASkgCQhCQAJAEgCUkASAJAEpIAkASAJCQBIIn7SQJAEveTBIAk7ieJ+0kCQBL3k8T9JHE/SQBI4n6SuJ8k7ieJ+0nifpJ4IEncTxL3k8QLIokHksQLIokHksQDSeKBJPGvJYl/iST+O0jiRSWJ+1177bUA3Hfffbdy1VVXXXXV/0YEV1111VX/x/z93//9bwPccMMN/EeyjW3+I9nGNv9RbGMb2/xHso1tbPMfzTa2sc1/BtvYxja2+c9kG9vYxjb/VWxjG9vYxjb/U9jGNraxjW1sY5ur/ntJQhIAkpAEgCQkASAJAElIAkASkpAEgCQkASAJSUgCQBKSkMT9JCEJSUgCQBKSkIQkJCEJSUjiX0sSkpCEJCQhCUncTxKSkIQkACQhCUlIAkASkpAEgCQkASAJSUgCQBKSAJCEJAAkASAJSQBIQhIAkrifJAAkIQkASQBIQhIAkgCQxP0kASCJ+0kCQBL3kwSAJO4niftJAkAS95PE/SRxP0kASOJ+krifJO4niftJ4n6SeEEkcT9J3E8SDySJF0QSDySJB5LEA0nigSTxQJJ4IEn8SyTxL5HEc5PEc5PEc5PEc5PEi0oSL4qzZ88+g6uuuuqqq/43Irjqqquu+j/mH/7hH34H4KabbsI2tvmPZBvb2OY/im1s8x/JNraxzX8k29jGNv/RbGMb2/xnsY1tbPOfzTa2sY1t/ivZxja2sY1t/qexjW1sYxvb2MY2trnqv4YkACQhCQBJSAJAEgCSkASAJCQhCQBJSAJAEpKQBIAkJCEJSQBIQhKSkMT9JCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkACQhCUlIQhIAkpCEJCQBIAlJSAJAEpIAkIQkJAEgCUkASEISAJIAkIQkACQhCQBJAEhCEgCSuJ8kACRxP0kASAJAEpIAkASAJCQBIAkASdxPEgCSuJ8k7icJAEncTxL3k8Rzk8T9JHE/SdxPEveTxP0kcT9JvCCSuJ8kHkgS95PEA0nigSTxH0kSDySJf4kknpsk/rNJ4l/ruuuuA+Af/uEffpurrrrqqqv+N6Jy1VVXXfV/1Pb2Nvezzf0k8R/FNgCS+I9gm/tJ4j+KbQAk8R/JNveTxH8k29xPEv8ZbPNAkvjPZJsHksR/Jds8P5L4n8g2L4wkrvq3k8T9JAEgiftJ4n6SAJDE/STxQJK4nyQeSBLPTRIviCT+I9kGQBLPzTaSeCDbSOJ+tpEEgG0kcT/bSALANpIAsI0kbCMJANtIAsA2krCNJABsIwnbSALANpKwjSQAbCMJ20gCwDaSsI0kbAMgCdtIwjaSALCNJGwjCQDbSMI2AJKwjSRsAyAJ2wBIwjaSsA2AJGwDIAnbAEjCNgCSsA2AJGwDIAnbAEjCNgCSsM3zIwnbPD+SsM39JGGb50cStrmfJGxzP0nY5n6SsM0LIwnb3E8StvnXkoRtHkgStnkgSdjmgSRhm38rSdhma2sLgPvuu+9Wrrrqqquu+t+IylVXXXXV/zFnz569lRfCNgCS+I9iGwBJ/EexDYAk/qPY5n6S+I9km/tJ4j+Sbe4nif8strmfJP6z2eaBJPHfwTbPTRL/09nmRSWJq56XJO4nCQBJ3E8S95MEgCTuJ4kHksT9JPFAknhuknhhJPHvYRsASTw/tpHEA9lGEvezjSSeH9tIAsA2kgCwjSQeyDaSALCNJGwjCQDbSMI2kgCwjSRsIwkA20jCNpKwDYAkbCMJ20jCNgCSsI0kbAMgCdtIwjYAkrCNJGwDIAnbSMI2AJKwDYAkbCMJ2wBIwjYAkrANgCRsAyAJ2wBIwjYAkrANgCRsAyAJ2wBIwjb3k4RtACRhm/tJwjbPjyRscz9J2OZ+krDN/SRhm/tJwjb3k4RtXhhJ2OZ+krDNA0nCNv+ZJGGbB5KEbZ7b1tYWV1111VVX/a9HcNVVV131f8x999136z/8wz/89s7ODjfeeCMviG1s8x/JNraxzX8U29jGNv+RbGMb2/xHs41t/jPYxja2sc1/FtvYxja2+a9gG9vYxja2+e9iG9vYxja2sc3/VraxjW1sYxvb2MY2trGNbWxjm//rJAEgCUkASAJAEpIAkIQkJCEJAElIAkASkpAEgCQkASAJSUgCQBKSkIQk7icJSUhCEpKQxP0kIQlJSEISkpCEJCQhCUlI4n6SkIQkJCEJSUgCQBKSkIQkACQhCUkASEISkgCQhCQAJCEJAElIAkASkgCQBIAkJAEgCUlIQhIAkgCQhCQAJAEgCUkASAJAEgCSkASAJAAkASAJSQBIAkAS95MEgCTuJwkASdxPEgCSuJ8k7icJAEncTxL3k8T9JPGvIYn7SeJ+knhBJPGCSOKBJPFAkvj3kMQDSeJfIol/iSSemyReFJL497juuusA+K3f+q3v5qqrrrrqqv+tqFx11VVX/R+2s7PDnXfeyQtjGwBJ/EeyDYAk/qPYBkAS/5FsAyCJ/0i2uZ8k/jPY5n6S+M9imweSxH8F2zyQJP472eb5kcT/Nbb5ryKJfwvb/HtIAkASAJK4nyTuJwkASdxPEveTxANJ4n6SeCBJPD+SeFFJ4oFs80CSeEFsAyCJB7KNJO5nG0nczzaSALCNJABsIwkA20gCwDaSeCDbSALANpKwjSRsIwkA20jCNpIAsI0kbCMJ20gCwDaSsI0kbCMJ2wBIwjaSsI0kbAMgCdtIwjYAkrCNJGwDIAnbSMI2AJKwzQNJwjYAkrANgCRs80CSsA2AJGwDIAnbPD+SsA2AJGwDIAnb3E8StgGQhG3uJwnbvCgkYZv7ScI295OEbf41JGGbF0YStvnXkoRt/q0kYZurrrrqqqv+zyG46qqrrvo/6O///u9/G2B7e5sXlW1sY5v/SLaxjW3+o9jGNrb5j2Qb29jmP5ptbGOb/yy2sY1t/rPZxja2sc1/FdvYxja2sc3/BLaxjW1sYxvb2Oaqf5ltbGMb29jGNraxjW1sYxvb2MY2/x6SAJAEgCQAJCEJAElIQhKSAJCEJAAkIQkASUhCEpKQhCQAJCEJSQBIQhKSkIQkACQhCUlIQhKSkIQkJCGJ5yYJSUhCEpKQhCQkIQlJAEhCEpKQhCQAJCEJSQBIQhKSAJCEJAAkIQlJSEISAJKQBIAkJAEgCQBJSAJAEgCSkIQkJAEgCQBJSAJAEgCSAJDE/SQBIAkASQBIQhIAkgCQBIAk7icJAEncTxIAknhukrifJAAkcT9J3E8Sz00S95PE/SRxP0ncTxIviCTuJ4kXRBIviCQeSBIPJIkHksQDSeKBJPFAkviXSOJfIonnJol/K0m8KK677joA/uEf/uF3uOqqq6666n8rgquuuuqq/4P+4R/+4XcAbrrpJv4tbGOb/2i2sc1/JNvY5j+abWxjm/9otrGNbf6z2MY2trHNfzbb2MY2tvmvZBvb2MY2tvmfxDa2sY1tbGMb21z130cSkpCEJAAkASAJSQBIAkASkgCQhCQAJCEJAElIAkASkpAEgCQkIQkASUhCEpKQBIAkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhIAkpCEJCQhCQBJSEISkpCEJCQBIAlJSEISkpAEgCQkIQlJAEhCEgCSkIQkJAEgCQBJSAJAEgCSAJCEJAAkASAJAEkASEISAJIAkASAJO4nCQBJAEgCQBL3kwSAJO4nCQBJAEjifpK4nyQAJHE/SdxPEgCSuJ8k7ieJ+0nifpK4nyTuJ4kXRBL3k8QLIokHksQDSeI/kiQeSBL/Ekn8W0jiuUni32pzc5Orrrrqqqv+16Ny1VVXXfV/0NmzZ28F2N7e5t/DNgCS+I9kGwBJ/Eexzf0k8R/JNveTxH8k29xPEv9ZbHM/Sfxns80DSeK/km2emyT+p7HNCyOJq/7zSAJAEveTBIAkACRxP0ncTxL3k8T9JHE/STyQJB5IEi+IJP4j2AZAEs/NNpJ4INtI4vmxjSQAbCMJANtI4oFsIwkA20jCNpJ4INtIwjaSeCDbSMI2krCNJGwjCQDbSMI2krCNJGwjCdsASMI2krCNJGwjCdsASMI2krANgCRsIwnbSMI2AJKwDYAkbCMJ2wBIwjYPJAnbAEjCNgCSsA2AJGwDIAnbAEjCNgCSsA2AJGzz/EjCNgCSsM39JGGb+0nCNs+PJGxzP0nY5n6SsM39JGGbfw1J2OaFkYRtHkgStvm3kIRtHkgStrnf1tYWAP/wD//w21x11VVXXfW/FZWrrrrqqv+D7rvvvlsBdnZ22NnZYW9vj38P2wBI4j+Sbe4nif8otrmfJP4j2QZAEv/RbPNAkvjPYJsHksR/Nts8kCT+q9nmuUnifzLbvCgkcdW/jiQAJAEgCQBJ3E8SAJK4nyQAJHE/SdxPEg8kiQeSxHOTxAsiiX8r20ji+bGNJB7INpK4n20kAWAbSQDYRhIAtpEEgG0k8UC2kcQD2UYStpHEA9lGEraRhG0kYRtJPJBtJGEbSdhGEraRhG0kAWAbSdhGEraRhG0kYRsASdhGErZ5IEnYRhK2AZCEbR5IErYBkIRtJGEbAEnYBkAStgGQhG0AJGEbAEnYBkAStgGQhG0AJGEbAEnY5vmRhG3uJwnbPD+SsM39JGGb+0nCNveThG3uJwnb3E8StrmfJGzzwkjCNv9akrDNA0nCNv9aW1tbANx33323ctVVV1111f9WBFddddVV/0f9wz/8w28DbG1t8R/FNraxzX8029jmP5ptbPMfzTa2sc1/FtvYxjb/mWxjG9v8V7GNbWxjm/8utrGNbWxjG9v8b2Mb29jGNraxjW1sYxvb2OaqKyQhCQBJAEgCQBKSAJAEgCQkASAJAElIAkASkgCQhCQkIQlJSEISAJKQhCQkIQlJSEISkpCEJAAkIQlJSEISkpCEJCQhCUlI4n6SkIQkJCEJSQBIQhKSkASAJCQhCQBJSEISkpCEJCQhCUlIQhIAkpAEgCQkIQlJAEgCQBKSkIQkACQBIAkASQBIAkASkgCQBIAkACQBIAkASQBI4n6SAJAEgCQAJAEgiftJAkASAJK4nyQAJHE/SQBI4n6SeG6SuJ8k7ieJ/wiSuJ8k7ieJB5LECyKJB5LEfyZJPJAk/iWSeG6S+I8kCYBrr70WgPvuu+9Wrrrqqquu+t+M4Kqrrrrq/6i///u//22Am266CdvY5j+SbWzzH802trHNfyTb2MY2/9FsYxvb/GexjW1s85/JNraxjW3+q9jGNraxzX8329jGNraxjW3+L7CNbWxjG9vYxja2sY1tbGMb29jGNrb5v0QSkpCEJAAkASAJSUhCEgCSkIQkJAEgCUkASEISAJKQBIAkJCEJSUhCEpKQBIAkJCEJSUhCEpK4nyQkIQlJSEISkpDE/SQhCUlIQhKSkASAJCQhCUkASEISkgCQhCQkASAJSQBIQhIAkpCEJCQBIAlJAEgCQBKSkIQkACQBIAkASQBIAkASkpCEJAAkASAJAEkASAJAEgCSAJCEJAAkASAJAEkASAJAEveTBIAkACRxP0kASOJ+kgCQxP0kASCJ+0nifpJ4bpK4nyTuJ4n7SeJ+knhBJHE/SbwgknggSbwgknggSTyQJB5IEg8kiX8tSfxbSOK5SeK5SeIF2draAuAf/uEffpurrrrqqqv+N6Ny1VVXXfV/1D/8wz/8DsCNN97I/WxzP0n8R7ANgCT+o9kGQBL/kWxzP0n8R7LN/STxn8E295PEfybbPJAk/ivY5rlJ4r+bbZ4fSfx/YZv/CyQBIAkASQBI4n6SAJAEgCTuJwkASdxPEg8kiftJ4oEk8dwk8e8hif9otpHEC2MbSTyQbSTxQLaRhG0kYRtJvDC2kYRtJGEbSdhGEraRhG0kYRtJ2EYSALaRhG0kYRtJ2EYStpGEbSRhGwBJ2EYStpGEbQAkYRtJ2AZAEraRhG0AJGEbSdgGQBK2AZCEbSRhGwBJ2AZAErYBkIRtACRhGwBJ2AZAErZ5fiRhGwBJ2OZ+krDN8yMJ29xPErb5t5KEbe4nCdvcTxK2eWEkYZsHkoRt/iNtbW0BcN99993KVVddddVV/5tRueqqq676P25nZ4fnxzYAkviPYJv7SeI/km3uJ4n/SLYBkMR/NNvcTxL/GWzzQJL4z2SbB5LEfxXbPDdJ/E9gmxdEElf9zyQJAEkASAJAEgCSuJ8kACQBIIn7SeJ+krifJB5IEg8kiecmif8stpHEA9lGEvezjSSeH9tIAsA2kngg20jigWwjCdtI4vmxjSRsIwnbSMI2krCNJGwjCdtIwjaSsI0kbCMJ20gCwDaSsI0kbCMJ20jCNpKwjSRsIwnbAEjCNpKwjSRsAyAJ20jCNg8kCds8kCRsAyAJ2zyQJGwDIAnbAEjCNgCSsA2AJGwDIAnbAEjCNgCSsM3zIwnbPD+SsM39JGGb50cStrmfJGxzP0nY5l9DEra5nyRs868lCdv8SyRhmweSxNbWFgBnz559BlddddVVV/1vRuWqq6666v+os2fP3sqLwDYAkviPYhsASfxHsw2AJP4j2eZ+kviPZpv7SeI/i23uJ4n/bLZ5IEn8V7LNc5PE/yS2eWEkcdV/PUlIAkAS95MEgCQAJAEgiftJAkAS95PE/SRxP0ncTxIPJInnRxL/0WwjiX8N20gCwDaSALCNJABsI4kHso0kbCOJB7KNJGwjCdtIwjaSsI0kbCMJ20jCNpKwjSRsIwnbSOL5sY0kbCMJ20jCNpKwjSRsIwnbSMI2krANgCRsIwnbSMI2DyQJ20jCNgCSsI0kbAMgCds8kCRsAyAJ2wBIwjYAkrDNi0oStgGQhG0AJGGb50cStrmfJGzz/EjCNveThG3uJwnb3E8StrmfJGxzP0nY5l9DErb515KEbV4U1157LQD/8A//8NtcddVVV131vxnBVVddddX/Uffdd9+t//AP//DbOzs73HjjjfxLbGOb/0i2sY1t/qPZxja2+Y9mG9vY5j+DbWxjm/9MtrGNbWzzX8E2trGNbf472MY2trGNbf4ns41tbGMb29jGNra56j+HJAAkASAJSUhCEpKQBIAkACQhCUlIAkASkpCEJCQhCUlIQhKSkASAJCQhCQBJSEISkpAEgCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJAElIQhKSkASAJCQhCQBJSEISkpCEJCQhCUlIQhKSkIQkACQhCUlIQhKSAJAEgCQAJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIAkASAJIAkASAJAAkASAJAEkASAJAEgCSAJDEc5MEgCQAJHE/SQBI4n6SAJDE/SQBIIn7SeJ+knhhJHE/SdxPEi+IJO4niftJ4oEk8YJI4oEk8Z9JEg8kiX+JJJ6bJF4Ukrjqqquuuur/LCpXXXXVVf8P7OzscOedd/KisM39JPEfxTYAkviPZpv7SeI/km3uJ4n/aLZ5IEn8Z7HN/STxX8E2DySJ/w62eW6S+N/ANi8KSVz1ryMJAEkASAJAEgCSAJAEgCTuJwkASdxPEveTxP0kcT9JPDdJPDdJ/HeyjSSem20kAWAbSTyQbSRhG0m8MLaRhG0kYRtJ2EYStpGEbSRhG0nYRhK2kYRtJGEbSdhGEraRhG0kYRtJ2EYStpGEbSRhG0nYRhK2kYRtJGEbAEnYRhK2kYRtACRhG0nY5oEkYRsASdhGErYBkIRtHkgStgGQhG0AJGEbAEnYBkAStgGQhG2eH0nYBkAStnl+JGGb+0nCNs+PJGxzP0nY5n6SsM39JGGb+0nCNv8akrDNv5YkbPMv2draAuC+++67lauuuuqqq/43I7jqqquu+j/s7//+738bYGdnh38L29jmP5JtbGOb/wy2sc1/BtvYxjb/WWxjG9v8Z7KNbWxjm/8qtrGNbWzz38k2trGNbWxjm/+tbGMb29jGNraxjW1sYxvb2Ob/O0lIQhKSkIQkJCEJSQBIAkASAJKQhCQkASAJSUhCEpKQhCQkIQlJSAJAEpKQhCQkIQlJSEISAJKQhCQkIQlJSEISkpCEJCQhCUlIQhKSAJCEJCQhCUkASEISkgCQhCQkIQlJSAJAEpKQhCQkIQlJAEhCEpKQhCQkASAJAEkASAJAEgCSAJAEgCQAJAEgCQBJAEgCQBIAkgCQBIAkACQBIAkASQBIAkASAJIAkASAJAAkASAJAEk8N0kASOK5SQJAEveTxHOTxP0kASCJ+0nifpK4nyTuJ4n7SeJ+krifJF4QSdxPEg8kiRdEEg8kiX8PSTyQJB5IEv8SSTw3SfxrXXvttQD8wz/8w29z1VVXXXXV/3ZUrrrqqqv+D/uHf/iH3wG48cYb+fewDYAk/iPZBkAS/9Fscz9J/Eezzf0k8Z/BNveTxH8m29xPEv9VbPPcJPHfyTbPjyT+L7HNv5ck/reSBIAkACQBIAkASQBIAkAS95MEgCQAJHE/SdxPEveTxP0k8dwk8fxI4t/KNpL4z2AbSTyQbSRhG0n8R7GNJGwjCdtIwjaSsI0kbCMJ20jCNpKwjSRsIwnbSMI2krCNJGwjCdtIwjaSsI0kbCMJ20jCNgCSsI0kbCMJ2wBIwjaSsA2AJGwjCdsASMI2DyQJ2wBIwjYAkrDNi0oStgGQhG0AJGGb50cStnl+JGGb+0nCNs+PJGxzP0nY5n6SsM2/hiRscz9J2OZfSxK2eSBJ2AZga2sLgPvuu+9Wrrrqqquu+t+OylVXXXXV/2Fnz569FWBnZ4f/CLa5nyT+o9jmfpL4j2ab+0niP5pt7ieJ/wy2uZ8k/jPZ5oEk8V/JNg8kif8JbPOCSOL/I9v8byYJAEkASAJAEgCSAJAEgCQAJAEgiftJAkAS95PE/STxQJJ4IEm8IJL4j2QbSbwgtpEEgG0kAWAbSTyQbSTx/NhGEraRhG0kYRtJ2EYStpGEbSRhG0nYRhLPj20kYRtJ2EYStpGEbSRhG0nYRhK2kYRtJGEbSdhGEraRhG0kYRtJ2EYStpGEbSRhmweShG0kYRsASdhGErZ5IEnYBkAStpGEbQAkYRsASdjmgSRhGwBJ2AZAErb5l0jCNgCSsM39JGEbAEnY5n6SsM3zIwnb3E8StrmfJGxzP0nY5n6SsM39JGGbfw1J2ObfY3NzE4D77rvvVq666qqrrvrfjspVV1111f9h9913360AOzs7bG9vs7+/z38U2wBI4j+SbQAk8Z/BNveTxH8029xPEv8ZbPNAkvjPZJsHksR/Jds8N0n8T2KbF0QSV/3PIwlJAEgCQBIAkgCQBIAkACRxP0kASAJAEveTxP0kcT9J3E8Sz00Sz48k/rVsI4kXhW0k8aKyjSQeyDaSsI0k/q1sIwnbSMI2krCNJGwjiQeyjSRsIwnbSMI2krCNJGwjCdtIwjaSsI0kbCMJ20jCNpKwjSRsIwnbSMI2krCNJGwDIAnbSMI2DyQJ20jCNgCSsM0DScI2AJKwzQNJwjYAkrANgCRsAyAJ2wBIwjYAkrDN8yMJ2zw/krDN8yMJ2/xXkYRt7icJ27wwkrDNA0nCNg8kCdtsbW0BcPbs2Wdw1VVXXXXV/3YEV1111VX/x/3DP/zDbwPs7OxgG9v8R7KNbWzzH8k2trHNfxbb2OY/i21sY5v/TLaxjW3+K9jGNraxzX8H29jGNraxzf9UtrGNbWxjG9vY5qr/PpIAkASAJAAkASAJAEkASAJAEpKQhCQkIQkASUhCEpKQhCQkIQlJSEISAJKQhCQkIQlJSEISkpAEgCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSkIQkJCEJSQBIAkASAJIAkASAJAAkASAJSUhCEpKQBIAkACQBIAkASUgCQBIAkgCQBIAkACQBIAkASQBI4oWRBIAkACQBIAkASQBI4rlJAkAS95MEgCTuJwkASdxPEs9NEveTxP0kcT9J3E8S95PE/SRxP0m8IJJ4QSTxgkjigSTxQJJ4IEk8kCQeSBL/WpL497j22msB+Id/+Iff5qqrrrrqqv/tCK666qqr/o/7+7//+98GuPHGG7mfbWxjm/9ItrHNfzTb2OY/i21sY5v/LLaxjW3+M9nGNraxzX8F29jGNrb572Ib29jGNrb5n842trGNbWxjG9vYxjZX/eeRBIAkJCEJSUhCEpKQhCQkIQlJSEISkgCQhCQkIQkASUhCEpKQhCQkIQlJSEISkpCEJCQhCUlIQhKSAJCEJCQhCUlIQhKSkIQkACQhCUlIQhKSAJCEJCQhCUlIQhIAkpAEgCQkASAJSUhCEgCSkIQkJCEJSUhCEpKQhCQkIQlJSEISkpCEJAAkASAJAElIQhKSAJAEgCQAJCEJSUgCQBIAkgCQBIAkACQBIIn7SQJAEgCSeEEkASAJAEkASAJAEveTBIAknpsknpsknpsk7ieJ+0ni30oS95PE/STxQJK4nyReEEk8kCT+M0nigSTxL5HEi2prawuA++6771auuuqqq676347gqquuuur/uLNnzz4D4KabbuL5sY1t/iPZxja2+Y9kG9vY5j+LbWxjm/8strGNbf6z2cY2tvmvYhvb2MY2/51sYxvb2MY2tvnfxDa2sY1tbGMb29jGNra56l9HEpKQhCQAJAEgCQBJAEgCQBIAkgCQhCQkIQlJSEISkpAEgCQkASAJSUhCEpKQhCQAJCEJSUhCEpKQhCQkIQlJSEISkpCEJAAkIQlJSEISkpCEJCQhCUkASEISkpCEJCQhCUlIQhKSkIQkJCEJSQBIAkASAJIAkASAJAAkASAJAEkASEISkpAEgCQAJAEgCUlIQhIAkgCQBIAkJAEgCQBJAEgCQBIAkrifJAAkASAJAEkASAJAEs9NEgCSAJAEgCSemyQAJHE/SQBI4n6SAJDE/SRxP0k8N0ncTxL3k8T9JPGikMQLIon7SeKBJPGCSOKBJPFAknggSTyQJP61JPEvkcRz29ra4qqrrrrqqv9TqFx11VVX/R9333333Qqws7PDC2MbAEn8R7INgCT+I9nmfpL4z2Cb+0niP4Nt7ieJ/0y2eSBJ/FewzXOTxH8n2zw3SfxvZpt/DUn8fyYJAEkASAJAEpIAkASAJAAkASAJAEkASOJ+kgCQxP0kcT9JPJAkHkgSL4wk/jvZRhL/0WwjCdtI4oFsIwnbSMI2kgCwjSRsIwnbSALANpKwjSRsIwnbSMI2kgCwjSRsIwnbSMI2krCNJGwjCdtIwjbPjyRsIwnbSMI2AJKwjSRs80CSsM0DScI2AJKwzQNJwjYAkrANgCRsAyAJ2wBIwjYAkrANgCRs8/xIwjbPjyRs8/xIwjb3k4Rt/qNIwjb3k4RtXhhJ2OaFufbaawH4rd/6re/hqquuuuqq/wuoXHXVVVf9H3f27Nlb+Vewzf0k8R/FNveTxH8k2wBI4j+Lbe4nif8MtrmfJP6z2eZ+kvivZJsHksR/N9u8IJL4v8Y2/1Ek8b+RJCQBIAkASQBIAkASAJIAkASAJAAkASAJAEncTxIAkrifJB5IEg8kiReFJB7INgCSeEFsI4l/LdtI4oFsI4l/LdtIwjaSsI0kHsg2krCNJB7INpKwjSQAbCMJ20jCNpIAsI0kbCMJ20jCNpKwDYAkbCMJ20jCNpKwjSRsIwnbSMI2krCNJGwjCdsASMI2krCNJGzzQJKwjSRsAyAJ20jCNgCSsM0DScI2AJKwDYAkbAMgCdu8MJKwDYAkbAMgCds8P5KwzfMjCdvcTxK2eX4kYZv7ScI295OEbe4nCdv8a0jCNi+MJGxz1VVXXXXV/1lUrrrqqqv+j7vvvvtu/Yd/+IfffrEXe7HXvummm7jjjjt4UdkGQBL/kWwDIIn/SLa5nyT+s9jmfpL4z2CbB5LEfybbPJAk/ivZ5rlJ4n8K2zw/krgKbPO/zalTp5CEbSRxP0k8P5J4fiTxQJL4l0jifyLb/Ets80C2eX5s8/zY5oFs89xs89xs80C2eSDbPD+2uZ9tJGGbB7LNc7PNA9lGErZ5INs8P7Z5brZ5QWzzgtjm+bHNC2Kbf4ltnh/bAEjCNi+MbSRhmxfGNi+MbV5UtgGQhG1eFLZ5UdgG4NprrwXgH/7hH36bq6666qqr/i+gctVVV1111b/INgCS+I9km/tJ4j+Sbe4nif8strmfJP6z2OZ+kvjPZpsHksR/Nds8N0n8T2KbF0QSV/3Ptbm5yVVXXXXVC/Jbv/Vb333ffffdylVXXXXVVf8XULnqqquu+n/g7//+73/7xV7sxV77xhtv5I477uDfyjb3k8R/JNsASOI/mm3uJ4n/LLa5nyT+s9jmgSTxn802DySJ/w62eW6S+J/INi+MJK767/P1X//17wMYEM/JgHhOBsRzMiCekwHxnAyI52RAPCcD4jkZEM/JgHhOBsRzMiCekwHxnAyI52RAPCcD4jkZEM/JgHhOBsRzMiCekwHxnAyI52RAPCcD4jkZEM/JgHhOBsRzMiCekwHxnAyI52RAPCcD4jkZEM/JgHhOBsRzMiCekwHxnAyI52RAPCcD4jkZEM/JgHhOBsRzMiCekwHxnAyI52RAPCcD4jkZEM/JgHhOBsRzMiCekwHxTL/1W7/13Vx11VVXXfV/BZWrrrrqqv8H/uEf/uF3AG666Sb+5E/+hP8ItgGQxH8k29xPEv/RbAMgif9MtrmfJP4z2eZ+kvivYJsHksR/F9s8N0n8T2ebF0YSV/3n+a3f+q3v5qqrrrrqqquuuuqq/w+oXHXVVVf9P3D27NlbAXZ2drCNJP6j2OZ+kviPZBsASfxHs839JPGfyTb3k8R/Jts8kCT+K9jmgSTx38k2z00S/5vY5kUhiauuuuqqq6666qqrrrrqBaJy1VVXXfX/wH333XcrwM7ODjs7O+zt7QEgif9ItgGQxH8k29xPEv/RbHM/Sfxnss39JPGfzTb3k8R/Fds8N0n8d7LN8yOJ/81s868liauuuuqqq6666qqrrvp/guCqq6666v+Jf/iHf/htgJ2dHe5nG9v8R7ONbWzzH802trHNfwbb2MY2/9lsYxvb2OY/m21sYxvb/FezjW1sY5v/KWxjG9vYxja2+b/MNraxjW1sYxvb2MY2trGNbWxjG9vYxja2ueqqq6666qqrrrrqqv8FCK666qqr/p/4+7//+98GuOmmm3hutrGNbf6j2cY2/xlsY5v/LLaxjW3+K9jGNrb5r2Ab29jGNv/VbGMb29jGNv+T2MY2trGNbWxjm6uusI1tbGMb29jGNraxjW1sYxvb2MY2trGNbWxjG9vYxja2sY1tbGMb29jGNraxjW1sYxvb2MY2trGNbWxjG9tcddVVV1111VVXXfX/DpWrrrrqqv8nzp49+wyAm266iRfGNgCS+I9km/tJ4j+Sbe4nif8MtrmfJP6z2eZ+kvivYJsHksR/Nds8N0n8T2ObF0QSV1111VVXXXXVVVddddX/GFSuuuqqq/6fuO+++24F2NnZ4UVhm/tJ4j+SbQAk8R/NNveTxH8G29xPEv/ZbPNAkvivYJsHksR/B9s8N0n8T2WbF0QSV1111VVXXXXVVVddddV/KSpXXXXVVf9PnD179lb+jWwDIIn/SLa5nyT+o9nmfpL4z2Cb+0niv4Jt7ieJ/yq2eSBJ/HexzXOTxP90tvmXSOKqq6666qqrrrrqqquu+g9DcNVVV131/8R999136z/8wz/89s7ODjfddBP/FraxzX8G29jmP4ttbGOb/yy2sY1t/qvYxja2sc1/JdvYxja2+e9mG9vYxja2+d/INraxjW1sYxvb2MY2trnqqquuuuqqq6666qqrXiRUrrrqqquu+lezzf0k8R/JNveTxH8G2wBI4j+Lbe4nif8qtrmfJP4r2eaBJPHfzTbPjyT+t7PNi0oSV1111VVXXXXVVVdd9f8UwVVXXXXV/yN///d//9sAN910E/9RbGOb/wy2sY1t/jPYxja2+c9kG9vYxjb/VWxjG9vY5r+abWxjG9vY5n8K29jGNraxjW3+r7KNbWxjG9vYxja2sY1tbGMb29jGNraxzVVXXXXVVVddddVVV/0vReWqq6666v+Rf/iHf/gdgJtuuon/aLa5nyT+o9nmfpL4j2ab+0niP5Nt7ieJ/yq2eSBJ/FezzQNJ4n8S2zw/kvj/zjZXXXXVVVddddVVV131vxCVq6666qr/R86ePXsrwM7ODra5nyT+I9kGQBL/GWwDIIn/DLa5nyT+M9nmfpL4r2SbB5LEfzXbPDdJ/E9jmxdEElddddVVV1111VVXXXXV/1hUrrrqqqv+H7nvvvtuBdjZ2WFnZ4e9vT0AbAMgif9ItrmfJP6j2eZ+kvjPYJv7SeI/k20eSBL/lWzzQJL472Cb5yaJ/6ls88JI4qqrrrrqqquuuuqqq676b0Nw1VVXXfX/zD/8wz/8NsDOzg7PzTa2sc1/NNvYxjb/GWxjG9v8Z7GNbWzzX8E2trHNfwfb2MY2tvnvZBvb2MY2tvnfwja2sY1tbGMb29jmqquuuuqqq6666qqrrvpPRXDVVVdd9f/M3//93/82wE033cQLYxvb/GewjW3+s9jGNrb5z2Ib29jGNv/ZbGMb29jmv4NtbGMb2/x3s41tbGMb2/xvZBvb2MY2trGNbWxjm6uuuuqqq6666qqrrrrq34zgqquuuur/mbNnzz4D4Oabb+ZFYRvb/GewjW1s85/FNraxzX8m29jGNv8VbGMb2/x3sY1tbGOb/wlsYxvb2MY2tvnfzja2sY1tbGMb29jGNraxzVVXXXXVVVddddVVV131HKhcddVVV/0/c999990KsLOzw7+Gbe4nif9otrmfJP4z2AZAEv+ZbHM/Sfxns80DSeK/g22emyT+J7DN8yOJ/2ts828liauuuuqqq6666qqrrvo/hspVV1111f8zZ8+evZV/J9sASOI/g20AJPGfwTb3k8R/JtvcTxL/FWxzP0n8d7LNA0nifxLbPD+S+P/INv9dJPGC2Oaqq6666qqrrrrqqqv+jQiuuuqqq/6fue+++279h3/4h9/e2dnhpptu4t/DNraxzX8G29jGNv9ZbGMb2/xns41tbPNfxTa2sY1t/rvZxja2sY1t/ieyjW1sYxvb2MY2V/3nsI1tbGMb29jGNlddddVVV1111VVXXfXvQOWqq6666qr/ELa5nyT+o9nmfpL4z2Cb+0niP5NtHkgS/xVs80CS+O9mm+cmif+pbPOCSOKqq6666qqrrrrqqquu+h+F4Kqrrrrq/6G///u//22Am266if8MtrHNfxbb2MY2/1lsYxvb/FewjW1s81/JNraxjW3+p7CNbWxjG9v8b2Ab29jGNraxjW1sc9VVV1111VVXXXXVVVf9l6Ny1VVXXfX/0D/8wz/8DsBNN92EbQAk8R/NNveTxH8G2wBI4j+LbR5IEv+ZbPNAkvivYpsHksT/FLZ5bpL438Q2/xJJXHXVVVddddVVV1111VX/YahcddVVV/0/dPbs2VsBjh07xv1scz9J/EezDYAk/jPY5n6S+M9km/tJ4j+bbe4nif9KtnkgSfxPYpvnRxL/W9nmRSGJq6666qqrrrrqqquuuupfROWqq6666v+h++6771aAnZ0ddnZ22Nvb44FsAyCJ/2i2uZ8k/jPY5n6S+M9km/tJ4j+bbR5IEv+VbPPcJPE/jW2emyT+L7HNv5Ykrrrqqquuuuqqq6666v8Zgquuuuqq/6f+4R/+4bcBdnZ2eEFsYxvb/GewjW1s85/FNraxzX8229jGNv9VbGMb29jmv4NtbGMb2/xPZRvb2MY2trHN/ye2sY1tbGMb29jGNraxjW1sYxvb2MY2trGNba666qqrrrrqqquuuup/CYKrrrrqqv+n/v7v//63AW6++WZeFLaxzX8W29jGNv9ZbGMb2/xns41tbPNfyTa2sc1/F9vYxja2sc3/ZLaxjW1sYxvb2OaqF8w2trGNbWxjG9vYxja2sY1tbGMb29jGNraxjW1sYxvb2MY2trGNbWxjG9vYxja2sY1tbGMb29jGNraxjW1sY5urrrrqqquuuuqqq/7foXLVVVdd9f/cTTfdxL+Gbe4nif8MtgGQxH8W29xPEv+ZbPNAkvivYJsHksR/F9s8kCT+N7DNCyKJq6666qqrrrrqqquuuup/PCpXXXXVVf9P/cM//MPvABw7dox/K9sASOI/g23uJ4n/LLa5nyT+s9nmfpL4r2KbB5LEfxfbPDdJ/G9imxdGElddddVVV1111VVXXXXVfzsqV1111VX/T509e/ZW/oPY5n6S+M9gm/tJ4j+Lbe4nif9stnkgSfxXsc0DSeK/k22emyT+t7LNCyOJq6666qqrrrrqqquuuuo/HcFVV1111f9T9913363/8A//8Ns7OzvcdNNN/EexjW1s85/FNraxzX8m29jGNv9VbGMb2/xXs41tbGOb/wlsYxvb2MY2tvm/wDa2sY1tbGMb29jGNlddddVVV1111VVXXXXVvxuVq6666qqr/tPYBkAS/1lscz9J/Gexzf0k8V/BNg8kif9KtnlukvifwDbPTRL/19jmX0MSV1111VVXXXXVVVddddVzILjqqquu+n/s7//+738b4KabbsI2tvnPYBvb2OY/k21s85/NNraxjW3+q9jGNrb572Ib29jGNv+T2MY2trGNbWzz/4ltbGMb29jGNraxjW1sYxvb2MY2V1111VVXXXXVVVdd9X8YwVVXXXXV/2P/8A//8DsAN998M/ezjW3+s9jGNrb5z2Ib29jmv4JtbGOb/yq2sY1tbPPfxTa2sY1t/ieyjW1sYxvb2OaqZ7ONbWxjG9vYxja2sY1tbGMb29jGNraxjW1sYxvb2MY2trGNbWxjG9vY5t/CNraxjW1sYxvb2MY2trGNbWxjG9vY5qqrrrrqqquuuuqq/3eoXHXVVVf9P3b27NlbAY4dO8Zzs839JPGfwTYAkvjPYpv7SeI/m23uJ4n/KrZ5IEn8d7DNc5PE/0S2eUEkcdV/PttcddVVV1111VVXXXXVfzIqV1111VX/j9133323Auzs7LCzs8Pe3h7Pj20AJPGfwTb3k8R/FtvcTxL/2WzzQJL4r2KbB5LEfxfbPDdJ/E9mmxdEElddddVVV1111VVXXXXV/xoEV1111VX/z/3DP/zDbwMcO3aMf4ltbGOb/yy2sY1t/jPZxja2+a9iG9vY5r+abWxjG9v8d7ONbWxjG9v8b2Eb29jGNraxjW2uuuqqq6666qqrrrrqqv9xCK666qqr/p/7+7//+98GuOmmm/jXsI1tbPOfxTa2sc1/JtvYxja2+a9gG9vYxjb/1WxjG9vY5n8C29jGNraxzf82trGNbWxjG9vYxjZXXXXVVVddddVVV1111X85gquuuuqqqy67+eab+beyjW3+M9nGNrb5z2Yb29jmv4ptbGOb/w62sY1tbPM/hW1sYxvb2OZ/M9vYxja2sY1tbGMb29jmqquuuuqqq6666qqrrvoPQ+Wqq6666v+5f/iHf/gdgGPHjvHvZZv7SeI/i23uJ4n/TLa5nyT+K9jmgSTxX802DySJ/yls8/xI4v8K27yoJHHVVVddddVVV1111VVXvUBUrrrqqqv+nzt79uyt/Cewzf0k8Z/FNgCS+M9mm/tJ4r+Kbe4nif8OtnlukvifxDbPjyT+L7PNv4Ukrrrqqquuuuqqq6666v8Bgquuuuqq/+fuu+++W//hH/7ht3d2drj55pv5z2Ab2/xnso1tbPNfwTa2sc1/JdvYxja2+e9kG9vYxjb/U9nGNraxjW1s8/+dbWxjG9vYxja2sY1tbGMb29jGNraxjW1sYxvb2MY2tvmfwDa2sY1tbGObq6666qqrrrrqqqv+36Fy1VVXXXXVs9jGNpL4z2Cb+0niP4tt7ieJ/2y2eSBJ/FexzQNJ4r+LbZ6bJP6nss0LIomr/u1sc9VVV1111VVXXXXVVf9DEFx11VVXXcXf//3f/zbAzTffDIBtbGOb/yy2sY1t/jPZxja2+a9iG9vY5r+abWxjG9v8d7ONbWxjG9v8b2Ab29jGNraxjW2uuuqqq6666qqrrrrqqv9VqFx11VVXXcU//MM//A7AzTffzHOzDYAk/rPY5n6S+M9imweSxH822zyQJP4r2eaBJPHfzTbPTRL/W9jmhZHEVVddddVVV1111VVXXfU/BpWrrrrqqqs4e/bsrQA7Ozu8ILa5nyT+s9gGQBL/2WxzP0n8V7DN/STxX802DySJ/wls89wk8b+RbV4YSVx11VVXXXXVVVddddVV/2WoXHXVVVddxX333XcrwLFjx3hR2OZ+kvjPYJv7SeI/m23uJ4n/CrZ5IEn8V7PNA0nifwrbPDdJ/G9nmxeFJK666qqrrrrqqquuuuqqfzeCq6666qqrLvuHf/iH3wa4+eab+dewjW3+M9nGNrb5r2Ab29jmv5JtbGOb/y62sY1tbGOb/0lsYxvb2MY2tvm/yDa2sY1tbGMb29jGNraxzVVXXXXVVVddddVVV131AhFcddVVV1112X333XcrwM0338y/hW1sY5v/TLaxjW3+K9jGNrb5r2Qb29jGNv+dbGMb29jmfyLb2MY2trGNbf6/sI1tbGMb29jGNraxjW1sYxvb2MY2V1111VVXXXXVVVdd9X8clauuuuqqqy677777bgW4+eab+feyzf0k8Z/FNveTxH822zyQJP6r2OaBJPHfxTbPTRL/E9nm+ZHEVVfY5r+DJP4tbHPVVVddddVVV1111VX/ClSuuuqqq6667B/+4R9+h/8EtgGQxH8m29xPEv8VbHM/SfxXss0DSeK/k20eSBL/k9nmBZHEVf/5bHPVVVddddVVV1111VX/BahcddVVV1112dmzZ28F2NnZ4T+Dbe4nif9MtrmfJP4r2OZ+kvivZpsHksR/J9s8N0n8b2CbF0QSV1111VVXXXXVVVddddX/KgRXXXXVVVdddt99991633333Xrs2DFuuukm/jPZxja2+c9mG9vY5r+KbWxjG9v8d7CNbWxjm/8JbGMb29jGNv/b2MY2trGNbWxjG9tcddVVV1111VVXXXXVVf/jEFx11VVXXfUsZ8+evZVnso1tbPOfyTa2sc1/NtvYxjb/lWxjG9v8d7GNbWxjm/8pbGMb29jGNv+b2cY2trGNbWxjG9vY5qqrrrrqqquuuuqqq676L0Vw1VVXXXXVs/z93//9bwPcfPPNPJBtbGOb/0y2sY1t/rPZxja2sc1/FdvYxja2+e9iG9vYxjb/k9jGNraxjW1s83+FbWxjG9vYxja2sY1tbHPVVVddddVVV1111VVX/YcguOqqq6666ln+4R/+4XcAbrnlFl4Q29jmP5ttbGOb/wq2sY1t/ivZxja2sc1/F9vYxja2+Z/INraxjW1sY5v/q2xjG9vYxja2sY1tbGMb21x11VVXXXXVVVddddVVLxCVq6666qqrnuXs2bO3Auzs7PAvsc39JPGfyTb3k8R/NtvcTxL/lWxzP0n8d7HNc5PE/0S2eX4k8f+Fbf49JHHVVVddddVVV1111VX/R1G56qqrrrrqWe67775bAY4dO8a/hm3uJ4n/TLa5nyT+s9nmfpL4r2SbB5LEfyfbPJAk/iezzfMjiauek22uuuqqq6666qqrrrrq/yiCq6666qqrnsM//MM//DbAzTffzL+FbWxjm/9strGNbf4r2MY2trHNfzXb2MY2tvnvZhvb2MY2tvnfwDa2sY1tbGMb21x11VVXXXXVVVddddVV/+cQXHXVVVdd9Rzuu+++WwFuvvlm/r1sY5v/CraxjW3+q9jGNrb572Ab29jGNv8T2MY2trGNbf43sY1tbGMb29jGNlddddVVV1111VVXXXXV/0oEV1111VVXPYf77rvvVoBbbrmF/yi2sY1t/ivYxja2+a9iG9vYxjb/HWxjG9vY5n8K29jGNraxzf9GtrGNbWxjG9vYxjZXXXXVVVddddVVV1111f9IVK666qqrrnoO//AP//A7/Ceyzf0k8Z/NNveTxH8V29xPEv8dbPNAkvifwjbPTRL/m9nmXyKJq6666qqrrrrqqquuuuq/FJWrrrrqqquew9mzZ28F2NnZ4T+bbe4nif9strmfJP6r2OaBJPHfwTYPJIn/SWzz/Eji/wrbvCgkcdVVV1111VVXXXXVVVf9hyC46qqrrrrqOdx333233nfffbceO3aMm266CdvY5j+bbWxjm/8KtrGNbf6r2cY2tvnvZBvb2MY2tvmfyDa2sY1tbGOb/8tsYxvb2MY2trGNbWxjG9tcddVVV1111VVXXXXVVS8UwVVXXXXVVc/j7Nmzt/JcbGMb2/xns41tbPNfwTa2sY1t/ivZxja2sc1/N9vYxja2+Z/MNraxjW1sY5v/b2xjG9vYxja2sY1tbGMb29jGNraxzVVXXXXVVVddddVVV/0/QHDVVVddddXz+Pu///vfBrjlllt4fmxjG9v8Z7ONbWzzX8U2trHNfzXb2MY2tvnvZhvb2MY2tvmfzja2sY1tbGObq56XbWxjG9vYxja2sY1tbGMb29jGNraxjW1sYxvb2MY2trGNbWxjG9vYxja2sc2/hm1sYxvb2MY2trGNbWxjG9vYxja2sY1tbHPVVVddddVVV1111f87VK666qqrrnoe//AP//A7ADfffDP/EtsASOI/m23uJ4n/Cra5nyT+q9nmgSTx3802DySJ/w1s84JI4qr/era56qqrrrrqqquuuuqq/2RUrrrqqquueh5nz569FeDYsWO8qGxzP0n8Z7PN/STxX8E2DySJ/2q2eSBJ/HezzXOTxP8mtnlBJHHVVVddddVVV1111VVX/a9F5aqrrrrqqudx33333Qpw7Ngx/i1scz9J/Gezzf0k8V/FNveTxH8H2zyQJP4nsM1zk8T/RrZ5YSRx1VVXXXXVVVddddVVV/2PRXDVVVddddXz9Q//8A+/DXDzzTfz72Eb29jmv4JtbGOb/0q2sY1tbPPfxTa2sY1t/iexjW1sYxvb2OZ/O9vYxja2sY1tbGObq6666qqrrrrqqquuuuq/FcFVV1111VXP13333XcrwC233MJ/FNvYxjb/FWxjG9v8V7ONbWzz38k2trGNbf4nso1tbGMb2/xfYhvb2MY2trGNbWxjG9tcddVVV1111VVXXXXVVf8pqFx11VVXXfV83XfffbcCHDt2jP8MtrmfJP6z2eZ+kvivZJsHksR/F9s8N0n8T2Ob50cS/1fZ5l9DElddddVVV1111VVXXXXVv4jKVVddddVVz9c//MM//A7Azs4O/9lscz9J/GezzQNJ4r+SbR5IEv+dbPNAkvifyjbPjyT+v7HNv4Ukrrrqqquuuuqqq6666v8RKlddddVVVz1fZ8+evRXg2LFj2AZAEv/ZbHM/SfxXsM39JPFfzTb3k8R/N9s8N0n8T2ab50cSVz0n2/xnk8R/F9tcddVVV1111VVXXXXVAxBcddVVV131fN1333233nfffbceO3aMW265BQDb2MY2/xVsYxvb/FexjW1s89/BNraxjW3+p7CNbWxjm/8tbGMb29jGNraxzVX/eWxjG9vYxja2sY1tbGMb29jGNraxjW1sYxvb2MY2trGNbWxjG9vYxja2sc1VV1111VVXXXXVVVc9F4KrrrrqqqteoLNnz97KC2Ab29jmv4JtbGOb/yq2sY1tbPPfwTa2sY1t/qewjW1sYxvb/G9jG9vYxja2sY1trrrqqquuuuqqq6666qr/M6hcddVVV131Av393//9b7/Yi73Ya7/4i784/1NJ4r+DJP4nkMRV//UkcdVVV1111VVXXXXVVVf9r0DlqquuuuqqF+gf/uEffue+++679SVe4iUe/BIv8RJcddVVV/1f8A//8A+/zVVXXXXVVVddddVV/1+gBz3oQVx11VVXXfWCvdiLvdhrv9M7vdNncdVVV131f8RnfuZnvg5XXXXVVVddddVVV/1/gR70oAdx1VVXXXXVVVddddVVV1111VVXXXXVVVf9n0Tlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V1G56qqrrrrqqquuuuqqq6666qqrrrrqqqv+r6Jy1VVXXXXVVVddddVVV1111VVXXXXVVVf9X0Xlqquuuuqqq6666qqrrrrqqquuuuqqq676v4rKVVddddVVV1111VVXXXXVVVddddVVV131fxWVq6666qqrrrrqqquuuuqqq6666qqrrrrq/yoqV1111VVXXXXVVVddddVVV1111VVXXXXV/1VUrrrqqquuuuqqq6666qqrrrrqqquuuuqq/6uoXHXVVVddddVVV1111VVXXXXVVVddddVV/1dRueqqq6666qqrrrrqqquuuuqqq6666qqr/q+ictVVV1111VVXXXXVVVddddVVV1111VVX/V9F5aqrrrrqqquuuuqqq6666qqrrrrqqquu+r+KylVXXXXVVVddddVVV1111VVXXXXVVVdd9X8Vlauuuuqqq6666qqrrrrqqquuuuqqq6666v8qKlddddVVV1111VVXXXXVVVddddVVV1111f9VVK666qqrrrrqqquuuuqqq6666qqrrrrqqv+rqFx11VVXXXXVVVddddVVV1111VVXXXXVVf9XUbnqqquuuuqqq6666qqrrrrqqquuuuqqq/6vonLVVVddddVVV1111VVXXXXVVVddddVVV/1fReWqq6666qqrrrrqqquuuuqqq6666qqrrvq/ispVV1111VVXXXXVVVddddVVV1111VVXXfV/FZWrrrrqqquuuuqqq6666qqrrrrqqquuuur/KipXXXXVVVddddVVV1111VVXXXXVVVddddX/VVSuuuqqq6666qqrrrrqqquuuuqqq6666qr/q6hcddVVV1111VVXXXXVVVddddVVV1111VX/V/GPS3YW338jIp4AAAAASUVORK5CYII=) + + diff --git a/rust/kcl-lib/src/std/args.rs b/rust/kcl-lib/src/std/args.rs index 00e9ca70a..99104374e 100644 --- a/rust/kcl-lib/src/std/args.rs +++ b/rust/kcl-lib/src/std/args.rs @@ -165,6 +165,49 @@ impl Args { }) } + pub(crate) fn get_kw_arg_typed( + &self, + label: &str, + ty: &RuntimeType, + exec_state: &mut ExecState, + ) -> Result + where + T: for<'a> FromKclValue<'a>, + { + let Some(arg) = self.kw_args.labeled.get(label) else { + return Err(KclError::Semantic(KclErrorDetails { + source_ranges: vec![self.source_range], + message: format!("This function requires a keyword argument '{label}'"), + })); + }; + + let arg = arg.value.coerce(ty, exec_state).ok_or_else(|| { + let actual_type_name = arg.value.human_friendly_type(); + let msg_base = format!( + "This function expected the input argument to be {} but it's actually of type {actual_type_name}", + ty.human_friendly_type(), + ); + let suggestion = match (ty, actual_type_name) { + (RuntimeType::Primitive(PrimitiveType::Solid), "Sketch") + | (RuntimeType::Array(PrimitiveType::Solid, _), "Sketch") => Some( + "You can convert a sketch (2D) into a Solid (3D) by calling a function like `extrude` or `revolve`", + ), + _ => None, + }; + let message = match suggestion { + None => msg_base, + Some(sugg) => format!("{msg_base}. {sugg}"), + }; + KclError::Semantic(KclErrorDetails { + source_ranges: arg.source_ranges(), + message, + }) + })?; + + // TODO unnecessary cloning + Ok(T::from_kcl_val(&arg).unwrap()) + } + /// Get a labelled keyword arg, check it's an array, and return all items in the array /// plus their source range. pub(crate) fn kw_arg_array_and_source<'a, T>(&'a self, label: &str) -> Result, KclError> @@ -300,7 +343,7 @@ impl Args { self.ctx.engine.batch_modeling_cmds(self.source_range, cmds).await } - // Add a modeling command to the batch that gets executed at the end of the file. + // Add a modeling commandSolid> to the batch that gets executed at the end of the file. // This is good for something like fillet or chamfer where the engine would // eat the path id if we executed it right away. pub(crate) async fn batch_end_cmd(&self, id: uuid::Uuid, cmd: ModelingCmd) -> Result<(), crate::errors::KclError> { diff --git a/rust/kcl-lib/src/std/csg.rs b/rust/kcl-lib/src/std/csg.rs new file mode 100644 index 000000000..49e2b323f --- /dev/null +++ b/rust/kcl-lib/src/std/csg.rs @@ -0,0 +1,210 @@ +//! Constructive Solid Geometry (CSG) operations. + +use anyhow::Result; +use kcl_derive_docs::stdlib; + +use crate::{ + errors::{KclError, KclErrorDetails}, + execution::{ + kcl_value::{ArrayLen, RuntimeType}, + ExecState, KclValue, PrimitiveType, Solid, + }, + std::Args, +}; + +/// Union two or more solids into a single solid. +pub async fn union(exec_state: &mut ExecState, args: Args) -> Result { + let solids: Vec = args.get_unlabeled_kw_arg_typed( + "objects", + &RuntimeType::Union(vec![RuntimeType::Array(PrimitiveType::Solid, ArrayLen::NonEmpty)]), + exec_state, + )?; + + if solids.len() < 2 { + return Err(KclError::UndefinedValue(KclErrorDetails { + message: "At least two solids are required for a union operation.".to_string(), + source_ranges: vec![args.source_range], + })); + } + + let solids = inner_union(solids, exec_state, args).await?; + Ok(solids.into()) +} + +/// Union two or more solids into a single solid. +/// +/// ```no_run +/// fn cube(center) { +/// return startSketchOn('XY') +/// |> startProfileAt([center[0] - 10, center[1] - 10], %) +/// |> line(endAbsolute = [center[0] + 10, center[1] - 10]) +/// |> line(endAbsolute = [center[0] + 10, center[1] + 10]) +/// |> line(endAbsolute = [center[0] - 10, center[1] + 10]) +/// |> close() +/// |> extrude(length = 10) +/// } +/// +/// part001 = cube([0, 0]) +/// part002 = cube([20, 10]) +/// +/// unionedPart = union([part001, part002]) +/// ``` +#[stdlib { + name = "union", + feature_tree_operation = false, + keywords = true, + unlabeled_first = true, + deprecated = true, + args = { + solids = {docs = "The solids to union."}, + } +}] +async fn inner_union(solids: Vec, exec_state: &mut ExecState, args: Args) -> Result, KclError> { + // Flush the fillets for the solids. + args.flush_batch_for_solids(exec_state, &solids).await?; + + // TODO: call the engine union operation. + // TODO: figure out all the shit after for the faces etc. + + // For now just return the first solid. + // Til we have a proper implementation. + Ok(vec![solids[0].clone()]) +} + +/// Intersect returns the shared volume between multiple solids, preserving only +/// overlapping regions. +pub async fn intersect(exec_state: &mut ExecState, args: Args) -> Result { + let solids: Vec = args.get_unlabeled_kw_arg_typed( + "objects", + &RuntimeType::Union(vec![RuntimeType::Array(PrimitiveType::Solid, ArrayLen::NonEmpty)]), + exec_state, + )?; + + if solids.len() < 2 { + return Err(KclError::UndefinedValue(KclErrorDetails { + message: "At least two solids are required for an intersect operation.".to_string(), + source_ranges: vec![args.source_range], + })); + } + + let solids = inner_intersect(solids, exec_state, args).await?; + Ok(solids.into()) +} + +/// Intersect returns the shared volume between multiple solids, preserving only +/// overlapping regions. +/// +/// Intersect computes the geometric intersection of multiple solid bodies, +/// returning a new solid representing the volume that is common to all input +/// solids. This operation is useful for determining shared material regions, +/// verifying fit, and analyzing overlapping geometries in assemblies. +/// +/// ```no_run +/// fn cube(center) { +/// return startSketchOn('XY') +/// |> startProfileAt([center[0] - 10, center[1] - 10], %) +/// |> line(endAbsolute = [center[0] + 10, center[1] - 10]) +/// |> line(endAbsolute = [center[0] + 10, center[1] + 10]) +/// |> line(endAbsolute = [center[0] - 10, center[1] + 10]) +/// |> close() +/// |> extrude(length = 10) +/// } +/// +/// part001 = cube([0, 0]) +/// part002 = cube([8, 8]) +/// +/// intersectedPart = intersect([part001, part002]) +/// ``` +#[stdlib { + name = "intersect", + feature_tree_operation = false, + keywords = true, + unlabeled_first = true, + deprecated = true, + args = { + solids = {docs = "The solids to intersect."}, + } +}] +async fn inner_intersect(solids: Vec, exec_state: &mut ExecState, args: Args) -> Result, KclError> { + // Flush the fillets for the solids. + args.flush_batch_for_solids(exec_state, &solids).await?; + + // TODO: call the engine union operation. + // TODO: figure out all the shit after for the faces etc. + + // For now just return the first solid. + // Til we have a proper implementation. + Ok(vec![solids[0].clone()]) +} + +/// Subtract removes tool solids from base solids, leaving the remaining material. +pub async fn subtract(exec_state: &mut ExecState, args: Args) -> Result { + let solids: Vec = args.get_unlabeled_kw_arg_typed( + "objects", + &RuntimeType::Union(vec![RuntimeType::Array(PrimitiveType::Solid, ArrayLen::NonEmpty)]), + exec_state, + )?; + let tools: Vec = args.get_kw_arg_typed( + "tools", + &RuntimeType::Union(vec![RuntimeType::Array(PrimitiveType::Solid, ArrayLen::NonEmpty)]), + exec_state, + )?; + + let solids = inner_subtract(solids, tools, exec_state, args).await?; + Ok(solids.into()) +} + +/// Subtract removes tool solids from base solids, leaving the remaining material. +/// +/// Performs a boolean subtraction operation, removing the volume of one or more +/// tool solids from one or more base solids. The result is a new solid +/// representing the material that remains after all tool solids have been cut +/// away. This function is essential for machining simulations, cavity creation, +/// and complex multi-body part modeling. +/// +/// ```no_run +/// fn cube(center) { +/// return startSketchOn('XY') +/// |> startProfileAt([center[0] - 10, center[1] - 10], %) +/// |> line(endAbsolute = [center[0] + 10, center[1] - 10]) +/// |> line(endAbsolute = [center[0] + 10, center[1] + 10]) +/// |> line(endAbsolute = [center[0] - 10, center[1] + 10]) +/// |> close() +/// |> extrude(length = 10) +/// } +/// +/// part001 = cube([0, 0]) +/// part002 = startSketchOn('XY') +/// |> circle(center = [0, 0], radius = 2) +/// |> extrude(length = 10) +/// +/// subtractedPart = subtract([part001], tools=[part002]) +/// ``` +#[stdlib { + name = "subtract", + feature_tree_operation = false, + keywords = true, + unlabeled_first = true, + deprecated = true, + args = { + solids = {docs = "The solids to intersect."}, + tools = {docs = "The solids to subtract."}, + } +}] +async fn inner_subtract( + solids: Vec, + tools: Vec, + exec_state: &mut ExecState, + args: Args, +) -> Result, KclError> { + // Flush the fillets for the solids and the tools. + let combined_solids = solids.iter().chain(tools.iter()).cloned().collect::>(); + args.flush_batch_for_solids(exec_state, &combined_solids).await?; + + // TODO: call the engine union operation. + // TODO: figure out all the shit after for the faces etc. + + // For now just return the first solid. + // Til we have a proper implementation. + Ok(vec![solids[0].clone()]) +} diff --git a/rust/kcl-lib/src/std/mod.rs b/rust/kcl-lib/src/std/mod.rs index f72f38433..16f03c0f1 100644 --- a/rust/kcl-lib/src/std/mod.rs +++ b/rust/kcl-lib/src/std/mod.rs @@ -7,6 +7,7 @@ pub mod assert; pub mod axis_or_reference; pub mod chamfer; pub mod convert; +pub mod csg; pub mod edge; pub mod extrude; pub mod fillet; @@ -159,6 +160,9 @@ lazy_static! { Box::new(crate::std::transform::Scale), Box::new(crate::std::transform::Translate), Box::new(crate::std::transform::Rotate), + Box::new(crate::std::csg::Intersect), + Box::new(crate::std::csg::Union), + Box::new(crate::std::csg::Subtract), ]; } diff --git a/rust/kcl-lib/tests/outputs/serial_test_example_intersect0.png b/rust/kcl-lib/tests/outputs/serial_test_example_intersect0.png new file mode 100644 index 0000000000000000000000000000000000000000..d565d034a9d83d4c21cbbc570d98daeb6eb74c68 GIT binary patch literal 68816 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%0A3o&U9k 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 literal 0 HcmV?d00001 From 79be72c5f0b57303ca0cef10bfc184d74ec37419 Mon Sep 17 00:00:00 2001 From: Nick Cameron Date: Thu, 20 Mar 2025 15:59:16 +1300 Subject: [PATCH 05/20] Fix a couple of panics (#5900) * Ensure batches in the engine are cleared between scenes Signed-off-by: Nick Cameron * Avoid panicking reading arguments out of bounds Signed-off-by: Nick Cameron --------- Signed-off-by: Nick Cameron --- rust/kcl-lib/src/engine/mod.rs | 8 ++++ rust/kcl-lib/src/execution/exec_ast.rs | 3 +- rust/kcl-lib/src/execution/mod.rs | 57 +++++++++++++++-------- rust/kcl-lib/src/std/args.rs | 63 ++++++++++++++++++++------ 4 files changed, 97 insertions(+), 34 deletions(-) diff --git a/rust/kcl-lib/src/engine/mod.rs b/rust/kcl-lib/src/engine/mod.rs index 084d06149..fd20fcd80 100644 --- a/rust/kcl-lib/src/engine/mod.rs +++ b/rust/kcl-lib/src/engine/mod.rs @@ -147,6 +147,11 @@ pub trait EngineManager: std::fmt::Debug + Send + Sync + 'static { source_range: SourceRange, ) -> Result<(), crate::errors::KclError>; + async fn clear_queues(&self) { + self.batch().write().await.clear(); + self.batch_end().write().await.clear(); + } + /// Send a modeling command and wait for the response message. async fn inner_send_modeling_cmd( &self, @@ -161,6 +166,9 @@ pub trait EngineManager: std::fmt::Debug + Send + Sync + 'static { id_generator: &mut IdGenerator, source_range: SourceRange, ) -> Result<(), crate::errors::KclError> { + // Clear any batched commands leftover from previous scenes. + self.clear_queues().await; + self.batch_modeling_cmd( uuid::Uuid::new_v4(), source_range, diff --git a/rust/kcl-lib/src/execution/exec_ast.rs b/rust/kcl-lib/src/execution/exec_ast.rs index 8e664cf11..55c224c0b 100644 --- a/rust/kcl-lib/src/execution/exec_ast.rs +++ b/rust/kcl-lib/src/execution/exec_ast.rs @@ -96,7 +96,7 @@ impl ExecutorContext { module_id: ModuleId, path: &ModulePath, ) -> Result<(Option, EnvironmentRef, Vec), KclError> { - crate::log::log(format!("enter module {path} {}", exec_state.stack())); + crate::log::log(format!("enter module {path} {} {exec_kind:?}", exec_state.stack())); let old_units = exec_state.length_unit(); let original_execution = self.engine.replace_execution_kind(exec_kind).await; @@ -1192,6 +1192,7 @@ impl Node { format!("`{fn_name}` is deprecated, see the docs for a recommended replacement"), )); } + let op = if func.feature_tree_operation() { let op_labeled_args = func .args(false) diff --git a/rust/kcl-lib/src/execution/mod.rs b/rust/kcl-lib/src/execution/mod.rs index 6edb6826d..2a495125f 100644 --- a/rust/kcl-lib/src/execution/mod.rs +++ b/rust/kcl-lib/src/execution/mod.rs @@ -724,27 +724,9 @@ impl ExecutorContext { .map_err(KclErrorWithOutputs::no_outputs)?; let default_planes = self.engine.get_default_planes().read().await.clone(); - let env_ref = self + let result = self .execute_and_build_graph(&program.ast, exec_state, preserve_mem) - .await - .map_err(|e| { - let module_id_to_module_path: IndexMap = exec_state - .global - .path_to_source_id - .iter() - .map(|(k, v)| ((*v), k.clone())) - .collect(); - - KclErrorWithOutputs::new( - e, - exec_state.global.operations.clone(), - exec_state.global.artifact_commands.clone(), - exec_state.global.artifact_graph.clone(), - module_id_to_module_path, - exec_state.global.id_to_source.clone(), - default_planes, - ) - })?; + .await; crate::log::log(format!( "Post interpretation KCL memory stats: {:#?}", @@ -752,6 +734,25 @@ impl ExecutorContext { )); crate::log::log(format!("Engine stats: {:?}", self.engine.stats())); + let env_ref = result.map_err(|e| { + let module_id_to_module_path: IndexMap = exec_state + .global + .path_to_source_id + .iter() + .map(|(k, v)| ((*v), k.clone())) + .collect(); + + KclErrorWithOutputs::new( + e, + exec_state.global.operations.clone(), + exec_state.global.artifact_commands.clone(), + exec_state.global.artifact_graph.clone(), + module_id_to_module_path, + exec_state.global.id_to_source.clone(), + default_planes, + ) + })?; + if !self.is_mock() { let mut mem = exec_state.stack().deep_clone(); mem.restore_env(env_ref); @@ -786,6 +787,10 @@ impl ExecutorContext { ) .await; + // If we errored out and early-returned, there might be commands which haven't been executed + // and should be dropped. + self.engine.clear_queues().await; + // Move the artifact commands and responses to simplify cache management // and error creation. exec_state @@ -1589,6 +1594,18 @@ const bracket = startSketchOn(XY) parse_execute(ast).await.unwrap(); } + #[tokio::test(flavor = "multi_thread")] + async fn test_bad_arg_count_std() { + let ast = "startSketchOn(XY) + |> startProfileAt([0, 0], %) + |> profileStartX()"; + assert!(parse_execute(ast) + .await + .unwrap_err() + .message() + .contains("Expected a sketch argument")); + } + #[tokio::test(flavor = "multi_thread")] async fn test_unary_operator_not_succeeds() { let ast = r#" diff --git a/rust/kcl-lib/src/std/args.rs b/rust/kcl-lib/src/std/args.rs index 99104374e..108a81c8b 100644 --- a/rust/kcl-lib/src/std/args.rs +++ b/rust/kcl-lib/src/std/args.rs @@ -589,13 +589,19 @@ impl Args { } pub(crate) fn get_sketches(&self, exec_state: &mut ExecState) -> Result<(Vec, Sketch), KclError> { - let sarg = self.args[0] + let Some(arg0) = self.args.first() else { + return Err(KclError::Semantic(KclErrorDetails { + message: "Expected a sketch argument".to_owned(), + source_ranges: vec![self.source_range], + })); + }; + let sarg = arg0 .value .coerce(&RuntimeType::Array(PrimitiveType::Sketch, ArrayLen::None), exec_state) .ok_or(KclError::Type(KclErrorDetails { message: format!( "Expected an array of sketches, found {}", - self.args[0].value.human_friendly_type() + arg0.value.human_friendly_type() ), source_ranges: vec![self.source_range], }))?; @@ -603,11 +609,18 @@ impl Args { KclValue::HomArray { value, .. } => value.iter().map(|v| v.as_sketch().unwrap().clone()).collect(), _ => unreachable!(), }; - let sarg = self.args[1] + + let Some(arg1) = self.args.get(1) else { + return Err(KclError::Semantic(KclErrorDetails { + message: "Expected a second sketch argument".to_owned(), + source_ranges: vec![self.source_range], + })); + }; + let sarg = arg1 .value .coerce(&RuntimeType::Primitive(PrimitiveType::Sketch), exec_state) .ok_or(KclError::Type(KclErrorDetails { - message: format!("Expected a sketch, found {}", self.args[1].value.human_friendly_type()), + message: format!("Expected a sketch, found {}", arg1.value.human_friendly_type()), source_ranges: vec![self.source_range], }))?; let sketch = match sarg { @@ -619,11 +632,17 @@ impl Args { } pub(crate) fn get_sketch(&self, exec_state: &mut ExecState) -> Result { - let sarg = self.args[0] + let Some(arg0) = self.args.first() else { + return Err(KclError::Semantic(KclErrorDetails { + message: "Expected a sketch argument".to_owned(), + source_ranges: vec![self.source_range], + })); + }; + let sarg = arg0 .value .coerce(&RuntimeType::Primitive(PrimitiveType::Sketch), exec_state) .ok_or(KclError::Type(KclErrorDetails { - message: format!("Expected a sketch, found {}", self.args[0].value.human_friendly_type()), + message: format!("Expected a sketch, found {}", arg0.value.human_friendly_type()), source_ranges: vec![self.source_range], }))?; match sarg { @@ -658,13 +677,19 @@ impl Args { T: serde::de::DeserializeOwned + FromArgs<'a>, { let data: T = FromArgs::from_args(self, 0)?; - let sarg = self.args[1] + let Some(arg1) = self.args.get(1) else { + return Err(KclError::Semantic(KclErrorDetails { + message: "Expected one or more sketches for second argument".to_owned(), + source_ranges: vec![self.source_range], + })); + }; + let sarg = arg1 .value .coerce(&RuntimeType::Array(PrimitiveType::Sketch, ArrayLen::None), exec_state) .ok_or(KclError::Type(KclErrorDetails { message: format!( - "Expected an array of sketches for second argument, found {}", - self.args[1].value.human_friendly_type() + "Expected one or more sketches for second argument, found {}", + arg1.value.human_friendly_type() ), source_ranges: vec![self.source_range], }))?; @@ -683,13 +708,19 @@ impl Args { T: serde::de::DeserializeOwned + FromKclValue<'a> + Sized, { let data: T = FromArgs::from_args(self, 0)?; - let sarg = self.args[1] + let Some(arg1) = self.args.get(1) else { + return Err(KclError::Semantic(KclErrorDetails { + message: "Expected a sketch for second argument".to_owned(), + source_ranges: vec![self.source_range], + })); + }; + let sarg = arg1 .value .coerce(&RuntimeType::Primitive(PrimitiveType::Sketch), exec_state) .ok_or(KclError::Type(KclErrorDetails { message: format!( "Expected a sketch for second argument, found {}", - self.args[1].value.human_friendly_type() + arg1.value.human_friendly_type() ), source_ranges: vec![self.source_range], }))?; @@ -713,13 +744,19 @@ impl Args { T: serde::de::DeserializeOwned + FromKclValue<'a> + Sized, { let data: T = FromArgs::from_args(self, 0)?; - let sarg = self.args[1] + let Some(arg1) = self.args.get(1) else { + return Err(KclError::Semantic(KclErrorDetails { + message: "Expected a solid for second argument".to_owned(), + source_ranges: vec![self.source_range], + })); + }; + let sarg = arg1 .value .coerce(&RuntimeType::Primitive(PrimitiveType::Solid), exec_state) .ok_or(KclError::Type(KclErrorDetails { message: format!( "Expected a solid for second argument, found {}", - self.args[1].value.human_friendly_type() + arg1.value.human_friendly_type() ), source_ranges: vec![self.source_range], }))?; From 461a2c3ab275d66b29087c5e6aabf6246166227b Mon Sep 17 00:00:00 2001 From: Nick Cameron Date: Thu, 20 Mar 2025 16:23:20 +1300 Subject: [PATCH 06/20] Support comments on attributes (#5850) Signed-off-by: Nick Cameron --- docs/kcl/appearance.md | 1 - docs/kcl/reduce.md | 2 - docs/kcl/rotate.md | 2 - docs/kcl/scale.md | 1 - docs/kcl/std.json | 18 +- docs/kcl/sweep.md | 2 - docs/kcl/translate.md | 1 - rust/kcl-lib/src/docs/kcl_doc.rs | 117 +- rust/kcl-lib/src/lsp/tests.rs | 1 - rust/kcl-lib/src/parsing/ast/types/mod.rs | 102 +- rust/kcl-lib/src/parsing/parser.rs | 334 +- ...rsing__parser__snapshot_math_tests__a.snap | 11 +- ...rsing__parser__snapshot_math_tests__b.snap | 11 +- ...rsing__parser__snapshot_math_tests__c.snap | 11 +- ...rsing__parser__snapshot_math_tests__d.snap | 17 +- ...rsing__parser__snapshot_math_tests__e.snap | 17 +- ...rsing__parser__snapshot_math_tests__f.snap | 23 +- ...rsing__parser__snapshot_math_tests__g.snap | 23 +- ...rsing__parser__snapshot_math_tests__h.snap | 29 +- ...rsing__parser__snapshot_math_tests__i.snap | 17 +- ...rsing__parser__snapshot_math_tests__j.snap | 35 +- ...rsing__parser__snapshot_math_tests__k.snap | 11 +- ...b__parsing__parser__snapshot_tests__a.snap | 38 + ...__parsing__parser__snapshot_tests__aa.snap | 8 +- ...__parsing__parser__snapshot_tests__ab.snap | 9 + ...__parsing__parser__snapshot_tests__ac.snap | 9 +- ...__parsing__parser__snapshot_tests__ad.snap | 13 +- ...__parsing__parser__snapshot_tests__ae.snap | 15 +- ...__parsing__parser__snapshot_tests__af.snap | 38 + ...__parsing__parser__snapshot_tests__ag.snap | 22 + ...__parsing__parser__snapshot_tests__ah.snap | 12 + ...__parsing__parser__snapshot_tests__ai.snap | 14 +- ...__parsing__parser__snapshot_tests__aj.snap | 18 + ...__parsing__parser__snapshot_tests__ak.snap | 8 + ...__parsing__parser__snapshot_tests__ap.snap | 14 + ...__parsing__parser__snapshot_tests__aq.snap | 9 +- ...__parsing__parser__snapshot_tests__ar.snap | 7 +- ...__parsing__parser__snapshot_tests__at.snap | 10 +- ...__parsing__parser__snapshot_tests__au.snap | 20 + ...__parsing__parser__snapshot_tests__av.snap | 14 +- ...__parsing__parser__snapshot_tests__aw.snap | 11 +- ...__parsing__parser__snapshot_tests__ax.snap | 11 +- ...__parsing__parser__snapshot_tests__ay.snap | 14 +- ...__parsing__parser__snapshot_tests__az.snap | 14 +- ...b__parsing__parser__snapshot_tests__b.snap | 14 +- ...__parsing__parser__snapshot_tests__ba.snap | 17 +- ...__parsing__parser__snapshot_tests__bb.snap | 15 +- ...__parsing__parser__snapshot_tests__bc.snap | 14 +- ...__parsing__parser__snapshot_tests__bd.snap | 21 +- ...__parsing__parser__snapshot_tests__be.snap | 9 +- ...__parsing__parser__snapshot_tests__bf.snap | 9 +- ...__parsing__parser__snapshot_tests__bg.snap | 7 +- ...__parsing__parser__snapshot_tests__bh.snap | 15 +- ...__parsing__parser__snapshot_tests__bi.snap | 17 +- ...__parsing__parser__snapshot_tests__bj.snap | 5 +- ...__parsing__parser__snapshot_tests__bk.snap | 5 +- ...__parsing__parser__snapshot_tests__bl.snap | 8 +- ...__parsing__parser__snapshot_tests__bm.snap | 9 +- ...__parsing__parser__snapshot_tests__bn.snap | 9 +- ...b__parsing__parser__snapshot_tests__c.snap | 14 +- ...b__parsing__parser__snapshot_tests__d.snap | 14 +- ...__parsing__parser__snapshot_tests__d2.snap | 10 +- ...b__parsing__parser__snapshot_tests__e.snap | 11 +- ...b__parsing__parser__snapshot_tests__f.snap | 8 +- ...b__parsing__parser__snapshot_tests__g.snap | 12 +- ...b__parsing__parser__snapshot_tests__h.snap | 21 +- ...b__parsing__parser__snapshot_tests__i.snap | 21 +- ...b__parsing__parser__snapshot_tests__j.snap | 21 +- ...b__parsing__parser__snapshot_tests__k.snap | 23 +- ...snapshot_tests__kw_function_all_named.snap | 10 + ...pshot_tests__kw_function_call_in_pipe.snap | 10 + ...hot_tests__kw_function_call_multiline.snap | 12 + ...function_call_multiline_with_comments.snap | 11 + ...t_tests__kw_function_decl_all_labeled.snap | 12 +- ...sts__kw_function_decl_first_unlabeled.snap | 12 +- ...w_function_decl_with_default_and_type.snap | 12 +- ...kw_function_decl_with_default_no_type.snap | 12 +- ...shot_tests__kw_function_unnamed_first.snap | 9 + ...b__parsing__parser__snapshot_tests__l.snap | 23 +- ...b__parsing__parser__snapshot_tests__m.snap | 23 +- ...b__parsing__parser__snapshot_tests__n.snap | 11 +- ...b__parsing__parser__snapshot_tests__o.snap | 11 +- ...b__parsing__parser__snapshot_tests__p.snap | 11 +- ...b__parsing__parser__snapshot_tests__q.snap | 11 +- ...b__parsing__parser__snapshot_tests__r.snap | 19 +- ...b__parsing__parser__snapshot_tests__s.snap | 11 +- ...b__parsing__parser__snapshot_tests__t.snap | 9 +- ...b__parsing__parser__snapshot_tests__u.snap | 15 +- ...b__parsing__parser__snapshot_tests__v.snap | 9 +- ...b__parsing__parser__snapshot_tests__w.snap | 9 +- ...b__parsing__parser__snapshot_tests__x.snap | 9 +- ...b__parsing__parser__snapshot_tests__y.snap | 12 + ...b__parsing__parser__snapshot_tests__z.snap | 18 + rust/kcl-lib/src/unparser.rs | 86 +- rust/kcl-lib/tests/add_lots/ast.snap | 426 + rust/kcl-lib/tests/angled_line/ast.snap | 59 + .../tests/angled_line/program_memory.snap | 2 + rust/kcl-lib/tests/argument_error/ast.snap | 17 + rust/kcl-lib/tests/array_elem_pop/ast.snap | 53 + .../tests/array_elem_pop_empty_fail/ast.snap | 11 + .../tests/array_elem_pop_fail/ast.snap | 20 + rust/kcl-lib/tests/array_elem_push/ast.snap | 103 + .../tests/array_elem_push_fail/ast.snap | 21 + rust/kcl-lib/tests/array_index_oob/ast.snap | 11 + rust/kcl-lib/tests/array_range_expr/ast.snap | 115 + .../tests/array_range_negative_expr/ast.snap | 20 + .../artifact_graph_example_code1/ast.snap | 117 + .../program_memory.snap | 14 + .../ast.snap | 88 + .../program_memory.snap | 3 + .../ast.snap | 46 + .../ast.snap | 194 + .../program_memory.snap | 22 + .../artifact_graph_flowchart.snap.md | 32 +- .../tests/assembly_mixed_units_cubes/ast.snap | 16 + .../cube-inches.kcl | 1 - .../assembly_mixed_units_cubes/cube-mm.kcl | 1 - .../assembly_mixed_units_cubes/input.kcl | 1 - .../assembly_mixed_units_cubes/unparsed.snap | 1 - .../unparsed@cube-inches.kcl.snap | 1 - .../unparsed@cube-mm.kcl.snap | 1 - .../artifact_graph_flowchart.snap.md | 12 +- .../tests/assembly_non_default_units/ast.snap | 38 +- .../assembly_non_default_units/globals.kcl | 1 - .../assembly_non_default_units/input.kcl | 1 - .../assembly_non_default_units/other1.kcl | 1 - .../assembly_non_default_units/other2.kcl | 1 - .../assembly_non_default_units/unparsed.snap | 1 - .../unparsed@globals.kcl.snap | 1 - .../unparsed@other1.kcl.snap | 1 - .../unparsed@other2.kcl.snap | 1 - .../tests/bad_units_in_annotation/ast.snap | 194 +- .../execution_error.snap | 2 +- .../tests/bad_units_in_annotation/input.kcl | 2 +- .../bad_units_in_annotation/unparsed.snap | 2 +- .../basic_fillet_cube_close_opposite/ast.snap | 55 + .../program_memory.snap | 6 + .../tests/basic_fillet_cube_end/ast.snap | 54 + .../basic_fillet_cube_end/program_memory.snap | 4 + .../basic_fillet_cube_next_adjacent/ast.snap | 56 + .../program_memory.snap | 8 + .../ast.snap | 56 + .../program_memory.snap | 8 + .../tests/basic_fillet_cube_start/ast.snap | 52 + .../program_memory.snap | 4 + .../ast.snap | 40 + .../program_memory.snap | 2 + .../ast.snap | 40 + .../program_memory.snap | 2 + .../tests/boolean_logical_and/ast.snap | 100 + .../tests/boolean_logical_multiple/ast.snap | 59 + .../kcl-lib/tests/boolean_logical_or/ast.snap | 100 + .../kcl-lib/tests/circle_three_point/ast.snap | 26 + .../circular_pattern3d_a_pattern/ast.snap | 82 + rust/kcl-lib/tests/comparisons/ast.snap | 87 + .../tests/comparisons_multiple/ast.snap | 10 + rust/kcl-lib/tests/computed_var/ast.snap | 81 + .../tests/crazy_multi_profile/ast.snap | 417 + .../crazy_multi_profile/program_memory.snap | 42 + rust/kcl-lib/tests/cube/ast.snap | 114 + rust/kcl-lib/tests/cube_with_error/ast.snap | 131 +- rust/kcl-lib/tests/double_map_fn/ast.snap | 31 + rust/kcl-lib/tests/fillet-and-shell/ast.snap | 362 + .../fillet-and-shell/program_memory.snap | 8 + .../kcl-lib/tests/flush_batch_on_end/ast.snap | 178 +- .../tests/flush_batch_on_end/input.kcl | 2 +- .../flush_batch_on_end/program_memory.snap | 5 + .../tests/flush_batch_on_end/unparsed.snap | 2 +- rust/kcl-lib/tests/function_sketch/ast.snap | 60 + .../function_sketch_with_position/ast.snap | 62 + rust/kcl-lib/tests/helix_ccw/ast.snap | 33 + rust/kcl-lib/tests/helix_simple/ast.snap | 56 +- .../tests/helix_simple/program_memory.snap | 1 + rust/kcl-lib/tests/i_shape/ast.snap | 381 +- rust/kcl-lib/tests/if_else/ast.snap | 74 + rust/kcl-lib/tests/import_constant/ast.snap | 4 + rust/kcl-lib/tests/import_cycle1/ast.snap | 32 +- .../tests/import_cycle1/execution_error.snap | 8 +- .../tests/import_cycle1/import_cycle2.kcl | 1 + .../tests/import_cycle1/import_cycle3.kcl | 1 + rust/kcl-lib/tests/import_cycle1/input.kcl | 1 + .../kcl-lib/tests/import_cycle1/unparsed.snap | 1 + .../unparsed@import_cycle2.kcl.snap | 1 + .../unparsed@import_cycle3.kcl.snap | 1 + rust/kcl-lib/tests/import_export/ast.snap | 4 + .../import_file_not_exist_error/ast.snap | 4 + .../tests/import_file_parse_error/ast.snap | 4 + rust/kcl-lib/tests/import_foreign/ast.snap | 8 + .../tests/import_function_not_sketch/ast.snap | 32 +- .../import_function_not_sketch/input.kcl | 1 + .../my_functions.kcl | 1 - .../import_function_not_sketch/unparsed.snap | 1 + .../unparsed@my_functions.kcl.snap | 1 - rust/kcl-lib/tests/import_glob/ast.snap | 3 + .../kcl-lib/tests/import_side_effect/ast.snap | 4 + rust/kcl-lib/tests/import_transform/ast.snap | 32 + .../artifact_graph_flowchart.snap.md | 8 +- rust/kcl-lib/tests/import_whole/ast.snap | 33 +- .../tests/import_whole/exported_mod.kcl | 1 + rust/kcl-lib/tests/import_whole/input.kcl | 1 + rust/kcl-lib/tests/import_whole/unparsed.snap | 1 + .../unparsed@exported_mod.kcl.snap | 1 + rust/kcl-lib/tests/index_of_array/ast.snap | 60 + .../tests/invalid_index_fractional/ast.snap | 14 + .../tests/invalid_index_negative/ast.snap | 19 + rust/kcl-lib/tests/invalid_index_str/ast.snap | 14 + .../tests/invalid_member_object/ast.snap | 11 + .../tests/invalid_member_object_prop/ast.snap | 11 + .../tests/kcl_samples/80-20-rail/ast.snap | 1076 ++- .../ast.snap | 321 +- .../tests/kcl_samples/ball-bearing/ast.snap | 455 +- rust/kcl-lib/tests/kcl_samples/bench/ast.snap | 279 +- .../tests/kcl_samples/bracket/ast.snap | 327 +- .../kcl_samples/bracket/program_memory.snap | 84 + .../kcl_samples/car-wheel-assembly/ast.snap | 111 +- .../tests/kcl_samples/color-cube/ast.snap | 297 +- .../tests/kcl_samples/cycloidal-gear/ast.snap | 280 +- .../tests/kcl_samples/dodecahedron/ast.snap | 515 +- .../tests/kcl_samples/enclosure/ast.snap | 792 +- .../kcl_samples/enclosure/program_memory.snap | 52 + .../kcl_samples/exhaust-manifold/ast.snap | 716 +- .../exhaust-manifold/program_memory.snap | 14 + .../kcl-lib/tests/kcl_samples/flange/ast.snap | 288 +- .../ast.snap | 1014 ++- .../program_memory.snap | 56 + .../kcl_samples/food-service-spatula/ast.snap | 1006 ++- .../food-service-spatula/program_memory.snap | 33 + .../tests/kcl_samples/french-press/ast.snap | 1095 ++- .../french-press/program_memory.snap | 64 + .../tests/kcl_samples/gear-rack/ast.snap | 349 +- rust/kcl-lib/tests/kcl_samples/gear/ast.snap | 669 +- .../gridfinity-baseplate-magnets/ast.snap | 1114 ++- .../program_memory.snap | 40 + .../kcl_samples/gridfinity-baseplate/ast.snap | 470 +- .../gridfinity-bins-stacking-lip/ast.snap | 1417 +++- .../program_memory.snap | 168 + .../kcl_samples/gridfinity-bins/ast.snap | 785 +- .../gridfinity-bins/program_memory.snap | 96 + .../tests/kcl_samples/hex-nut/ast.snap | 226 +- .../kcl-lib/tests/kcl_samples/i-beam/ast.snap | 155 +- rust/kcl-lib/tests/kcl_samples/kitt/ast.snap | 1684 +++- .../kcl_samples/kitt/program_memory.snap | 132 + rust/kcl-lib/tests/kcl_samples/lego/ast.snap | 444 +- .../tests/kcl_samples/mounting-plate/ast.snap | 390 +- .../mounting-plate/program_memory.snap | 12 + .../kcl_samples/multi-axis-robot/ast.snap | 69 +- .../kcl_samples/pipe-flange-assembly/ast.snap | 1310 +++- .../tests/kcl_samples/pipe-with-bend/ast.snap | 206 +- rust/kcl-lib/tests/kcl_samples/pipe/ast.snap | 208 +- .../tests/kcl_samples/poopy-shoe/ast.snap | 838 +- .../poopy-shoe/program_memory.snap | 17 + .../router-template-cross-bar/ast.snap | 505 +- .../program_memory.snap | 189 + .../router-template-slate/ast.snap | 452 +- .../router-template-slate/program_memory.snap | 62 + .../kcl_samples/sheet-metal-bracket/ast.snap | 466 +- .../sheet-metal-bracket/program_memory.snap | 32 + .../socket-head-cap-screw/ast.snap | 362 +- .../tests/kcl_samples/walkie-talkie/ast.snap | 278 +- .../kcl-lib/tests/kcl_samples/washer/ast.snap | 172 +- rust/kcl-lib/tests/kittycad_svg/ast.snap | 2270 ++++++ rust/kcl-lib/tests/kw_fn/ast.snap | 38 + .../kcl-lib/tests/kw_fn_too_few_args/ast.snap | 20 + .../kw_fn_unlabeled_but_has_label/ast.snap | 19 + .../tests/kw_fn_with_defaults/ast.snap | 28 + .../tests/linear_pattern3d_a_pattern/ast.snap | 72 + rust/kcl-lib/tests/mike_stress_test/ast.snap | 6981 +++++++++++++++++ rust/kcl-lib/tests/multi_transform/ast.snap | 66 + rust/kcl-lib/tests/neg_xz_plane/ast.snap | 35 + .../tests/non_string_key_of_object/ast.snap | 14 + .../tests/object_prop_not_found/ast.snap | 11 + .../tests/out_of_band_sketches/ast.snap | 112 + rust/kcl-lib/tests/parametric/ast.snap | 110 + .../tests/parametric_with_tan_arc/ast.snap | 132 + .../tests/pentagon_fillet_sugar/ast.snap | 183 + .../pentagon_fillet_sugar/program_memory.snap | 36 + rust/kcl-lib/tests/pipe_as_arg/ast.snap | 135 + .../ast.snap | 34 +- rust/kcl-lib/tests/poop_chute/ast.snap | 292 + .../tests/poop_chute/program_memory.snap | 5 + .../kcl-lib/tests/property_of_object/ast.snap | 114 + .../kcl-lib/tests/revolve_about_edge/ast.snap | 44 + .../revolve_about_edge/program_memory.snap | 1 + rust/kcl-lib/tests/riddle_small/ast.snap | 89 + .../tests/rotate_after_fillet/ast.snap | 232 +- .../kcl-lib/tests/scale_after_fillet/ast.snap | 231 +- .../ast.snap | 219 + .../program_memory.snap | 55 + .../sketch-on-chamfer-two-times/ast.snap | 219 + .../program_memory.snap | 55 + rust/kcl-lib/tests/sketch_in_object/ast.snap | 115 + rust/kcl-lib/tests/sketch_on_face/ast.snap | 86 + .../tests/sketch_on_face/program_memory.snap | 4 + .../artifact_graph_flowchart.snap.md | 38 +- .../ast.snap | 310 +- .../input.kcl | 1 - .../program_memory.snap | 60 +- .../unparsed.snap | 1 - .../sketch_on_face_circle_tagged/ast.snap | 81 + .../program_memory.snap | 2 + .../kcl-lib/tests/sketch_on_face_end/ast.snap | 99 + .../ast.snap | 100 + .../tests/sketch_on_face_start/ast.snap | 101 + rust/kcl-lib/tests/ssi_pattern/ast.snap | 106 + .../tests/ssi_pattern/program_memory.snap | 63 + rust/kcl-lib/tests/tan_arc_x_line/ast.snap | 85 + rust/kcl-lib/tests/tangential_arc/ast.snap | 41 + .../tests/translate_after_fillet/ast.snap | 231 +- rust/kcl-lib/tests/xz_plane/ast.snap | 35 + src/lang/KclSingleton.ts | 4 + src/lang/artifact.test.ts | 4 + src/lang/executor.test.ts | 3 + src/lang/modifyAst.test.ts | 20 + src/lang/modifyAst.ts | 38 + .../queryAst/getIdentifiersInProgram.test.ts | 1 + .../getTagDeclaratorsInProgram.test.ts | 1 + src/lang/recast.test.ts | 29 - src/lang/std/sketch.ts | 3 + src/lib/rustContext.ts | 2 + 319 files changed, 37650 insertions(+), 4752 deletions(-) diff --git a/docs/kcl/appearance.md b/docs/kcl/appearance.md index 5c6ebb5c4..cbee8ffa2 100644 --- a/docs/kcl/appearance.md +++ b/docs/kcl/appearance.md @@ -184,7 +184,6 @@ example = extrude(exampleSketch, length = 1) ```js // Color the result of a sweep. - // Create a path for the sweep. sweepPath = startSketchOn('XZ') |> startProfileAt([0.05, 0.05], %) diff --git a/docs/kcl/reduce.md b/docs/kcl/reduce.md index d0872815d..617882fe1 100644 --- a/docs/kcl/reduce.md +++ b/docs/kcl/reduce.md @@ -52,7 +52,6 @@ fn sum(arr): sumSoFar = add(sumSoFar, i) return sumSoFar */ - // We use `assertEqual` to check that our `sum` function gives the // expected result. It's good to check your work! assertEqual(sum([1, 2, 3]), 6, 0.00001, "1 + 2 + 3 summed is 6") @@ -114,7 +113,6 @@ fn decagon(radius): fullDecagon = partialDecagon // it's now full return fullDecagon */ - // Use the `decagon` function declared above, to sketch a decagon with radius 5. decagon(5.0) |> close() diff --git a/docs/kcl/rotate.md b/docs/kcl/rotate.md index 3ec96ef46..d0560c137 100644 --- a/docs/kcl/rotate.md +++ b/docs/kcl/rotate.md @@ -57,7 +57,6 @@ rotate( ```js // Rotate a pipe with roll, pitch, and yaw. - // Create a path for the sweep. sweepPath = startSketchOn('XZ') |> startProfileAt([0.05, 0.05], %) @@ -83,7 +82,6 @@ sweepSketch = startSketchOn('XY') ```js // Rotate a pipe about an axis with an angle. - // Create a path for the sweep. sweepPath = startSketchOn('XZ') |> startProfileAt([0.05, 0.05], %) diff --git a/docs/kcl/scale.md b/docs/kcl/scale.md index ca1f0c25b..7bafb55e2 100644 --- a/docs/kcl/scale.md +++ b/docs/kcl/scale.md @@ -37,7 +37,6 @@ scale( ```js // Scale a pipe. - // Create a path for the sweep. sweepPath = startSketchOn('XZ') |> startProfileAt([0.05, 0.05], %) diff --git a/docs/kcl/std.json b/docs/kcl/std.json index 1300d135d..0f79bcb30 100644 --- a/docs/kcl/std.json +++ b/docs/kcl/std.json @@ -41312,7 +41312,7 @@ "// Setting the appearance of a 3D pattern can be done _before_ or _after_ the pattern.\n// This example shows _before_ the pattern.\nexampleSketch = startSketchOn('XZ')\n |> startProfileAt([0, 0], %)\n |> line(end = [0, 2])\n |> line(end = [3, 1])\n |> line(end = [0, -4])\n |> close()\n\nexample = extrude(exampleSketch, length = 1)\n |> appearance(color = '#ff0000', metalness = 90, roughness = 90)\n |> patternLinear3d(axis = [1, 0, 1], instances = 7, distance = 6)", "// Setting the appearance of a 3D pattern can be done _before_ or _after_ the pattern.\n// This example shows _after_ the pattern.\nexampleSketch = startSketchOn('XZ')\n |> startProfileAt([0, 0], %)\n |> line(end = [0, 2])\n |> line(end = [3, 1])\n |> line(end = [0, -4])\n |> close()\n\nexample = extrude(exampleSketch, length = 1)\n |> patternLinear3d(axis = [1, 0, 1], instances = 7, distance = 6)\n |> appearance(color = '#ff0000', metalness = 90, roughness = 90)", "// Color the result of a 2D pattern that was extruded.\nexampleSketch = startSketchOn('XZ')\n |> startProfileAt([.5, 25], %)\n |> line(end = [0, 5])\n |> line(end = [-1, 0])\n |> line(end = [0, -5])\n |> close()\n |> patternCircular2d(\n center = [0, 0],\n instances = 13,\n arcDegrees = 360,\n rotateDuplicates = true,\n )\n\nexample = extrude(exampleSketch, length = 1)\n |> appearance(color = '#ff0000', metalness = 90, roughness = 90)", - "// Color the result of a sweep.\n\n\n// Create a path for the sweep.\nsweepPath = startSketchOn('XZ')\n |> startProfileAt([0.05, 0.05], %)\n |> line(end = [0, 7])\n |> tangentialArc({ offset = 90, radius = 5 }, %)\n |> line(end = [-3, 0])\n |> tangentialArc({ offset = -90, radius = 5 }, %)\n |> line(end = [0, 7])\n\npipeHole = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 1.5)\n\nsweepSketch = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> hole(pipeHole, %)\n |> sweep(path = sweepPath)\n |> appearance(color = \"#ff0000\", metalness = 50, roughness = 50)" + "// Color the result of a sweep.\n\n// Create a path for the sweep.\nsweepPath = startSketchOn('XZ')\n |> startProfileAt([0.05, 0.05], %)\n |> line(end = [0, 7])\n |> tangentialArc({ offset = 90, radius = 5 }, %)\n |> line(end = [-3, 0])\n |> tangentialArc({ offset = -90, radius = 5 }, %)\n |> line(end = [0, 7])\n\npipeHole = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 1.5)\n\nsweepSketch = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> hole(pipeHole, %)\n |> sweep(path = sweepPath)\n |> appearance(color = \"#ff0000\", metalness = 50, roughness = 50)" ] }, { @@ -246617,9 +246617,9 @@ "unpublished": false, "deprecated": false, "examples": [ - "// This function adds two numbers.\nfn add(a, b) {\n return a + b\n}\n\n// This function adds an array of numbers.\n// It uses the `reduce` function, to call the `add` function on every\n// element of the `arr` parameter. The starting value is 0.\nfn sum(arr) {\n return reduce(arr, 0, add)\n}\n\n/* The above is basically like this pseudo-code:\nfn sum(arr):\n sumSoFar = 0\n for i in arr:\n sumSoFar = add(sumSoFar, i)\n return sumSoFar */\n\n\n// We use `assertEqual` to check that our `sum` function gives the\n// expected result. It's good to check your work!\nassertEqual(sum([1, 2, 3]), 6, 0.00001, \"1 + 2 + 3 summed is 6\")", + "// This function adds two numbers.\nfn add(a, b) {\n return a + b\n}\n\n// This function adds an array of numbers.\n// It uses the `reduce` function, to call the `add` function on every\n// element of the `arr` parameter. The starting value is 0.\nfn sum(arr) {\n return reduce(arr, 0, add)\n}\n\n/* The above is basically like this pseudo-code:\nfn sum(arr):\n sumSoFar = 0\n for i in arr:\n sumSoFar = add(sumSoFar, i)\n return sumSoFar */\n\n// We use `assertEqual` to check that our `sum` function gives the\n// expected result. It's good to check your work!\nassertEqual(sum([1, 2, 3]), 6, 0.00001, \"1 + 2 + 3 summed is 6\")", "// This example works just like the previous example above, but it uses\n// an anonymous `add` function as its parameter, instead of declaring a\n// named function outside.\narr = [1, 2, 3]\nsum = reduce(arr, 0, fn(i, result_so_far) {\n return i + result_so_far\n})\n\n// We use `assertEqual` to check that our `sum` function gives the\n// expected result. It's good to check your work!\nassertEqual(sum, 6, 0.00001, \"1 + 2 + 3 summed is 6\")", - "// Declare a function that sketches a decagon.\nfn decagon(radius) {\n // Each side of the decagon is turned this many degrees from the previous angle.\n stepAngle = 1 / 10 * TAU\n\n // Start the decagon sketch at this point.\n startOfDecagonSketch = startSketchOn('XY')\n |> startProfileAt([cos(0) * radius, sin(0) * radius], %)\n\n // Use a `reduce` to draw the remaining decagon sides.\n // For each number in the array 1..10, run the given function,\n // which takes a partially-sketched decagon and adds one more edge to it.\n fullDecagon = reduce([1..10], startOfDecagonSketch, fn(i, partialDecagon) {\n // Draw one edge of the decagon.\n x = cos(stepAngle * i) * radius\n y = sin(stepAngle * i) * radius\n return line(partialDecagon, end = [x, y])\n })\n\n return fullDecagon\n}\n\n/* The `decagon` above is basically like this pseudo-code:\nfn decagon(radius):\n stepAngle = (1/10) * TAU\n plane = startSketchOn('XY')\n startOfDecagonSketch = startProfileAt([(cos(0)*radius), (sin(0) * radius)], plane)\n\n // Here's the reduce part.\n partialDecagon = startOfDecagonSketch\n for i in [1..10]:\n x = cos(stepAngle * i) * radius\n y = sin(stepAngle * i) * radius\n partialDecagon = line(partialDecagon, end = [x, y])\n fullDecagon = partialDecagon // it's now full\n return fullDecagon */\n\n\n// Use the `decagon` function declared above, to sketch a decagon with radius 5.\ndecagon(5.0)\n |> close()" + "// Declare a function that sketches a decagon.\nfn decagon(radius) {\n // Each side of the decagon is turned this many degrees from the previous angle.\n stepAngle = 1 / 10 * TAU\n\n // Start the decagon sketch at this point.\n startOfDecagonSketch = startSketchOn('XY')\n |> startProfileAt([cos(0) * radius, sin(0) * radius], %)\n\n // Use a `reduce` to draw the remaining decagon sides.\n // For each number in the array 1..10, run the given function,\n // which takes a partially-sketched decagon and adds one more edge to it.\n fullDecagon = reduce([1..10], startOfDecagonSketch, fn(i, partialDecagon) {\n // Draw one edge of the decagon.\n x = cos(stepAngle * i) * radius\n y = sin(stepAngle * i) * radius\n return line(partialDecagon, end = [x, y])\n })\n\n return fullDecagon\n}\n\n/* The `decagon` above is basically like this pseudo-code:\nfn decagon(radius):\n stepAngle = (1/10) * TAU\n plane = startSketchOn('XY')\n startOfDecagonSketch = startProfileAt([(cos(0)*radius), (sin(0) * radius)], plane)\n\n // Here's the reduce part.\n partialDecagon = startOfDecagonSketch\n for i in [1..10]:\n x = cos(stepAngle * i) * radius\n y = sin(stepAngle * i) * radius\n partialDecagon = line(partialDecagon, end = [x, y])\n fullDecagon = partialDecagon // it's now full\n return fullDecagon */\n\n// Use the `decagon` function declared above, to sketch a decagon with radius 5.\ndecagon(5.0)\n |> close()" ] }, { @@ -271286,8 +271286,8 @@ "unpublished": false, "deprecated": false, "examples": [ - "// Rotate a pipe with roll, pitch, and yaw.\n\n\n// Create a path for the sweep.\nsweepPath = startSketchOn('XZ')\n |> startProfileAt([0.05, 0.05], %)\n |> line(end = [0, 7])\n |> tangentialArc({ offset = 90, radius = 5 }, %)\n |> line(end = [-3, 0])\n |> tangentialArc({ offset = -90, radius = 5 }, %)\n |> line(end = [0, 7])\n\n// Create a hole for the pipe.\npipeHole = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 1.5)\n\nsweepSketch = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> hole(pipeHole, %)\n |> sweep(path = sweepPath)\n |> rotate(roll = 10, pitch = 10, yaw = 90)", - "// Rotate a pipe about an axis with an angle.\n\n\n// Create a path for the sweep.\nsweepPath = startSketchOn('XZ')\n |> startProfileAt([0.05, 0.05], %)\n |> line(end = [0, 7])\n |> tangentialArc({ offset = 90, radius = 5 }, %)\n |> line(end = [-3, 0])\n |> tangentialArc({ offset = -90, radius = 5 }, %)\n |> line(end = [0, 7])\n\n// Create a hole for the pipe.\npipeHole = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 1.5)\n\nsweepSketch = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> hole(pipeHole, %)\n |> sweep(path = sweepPath)\n |> rotate(axis = [0, 0, 1.0], angle = 90)", + "// Rotate a pipe with roll, pitch, and yaw.\n\n// Create a path for the sweep.\nsweepPath = startSketchOn('XZ')\n |> startProfileAt([0.05, 0.05], %)\n |> line(end = [0, 7])\n |> tangentialArc({ offset = 90, radius = 5 }, %)\n |> line(end = [-3, 0])\n |> tangentialArc({ offset = -90, radius = 5 }, %)\n |> line(end = [0, 7])\n\n// Create a hole for the pipe.\npipeHole = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 1.5)\n\nsweepSketch = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> hole(pipeHole, %)\n |> sweep(path = sweepPath)\n |> rotate(roll = 10, pitch = 10, yaw = 90)", + "// Rotate a pipe about an axis with an angle.\n\n// Create a path for the sweep.\nsweepPath = startSketchOn('XZ')\n |> startProfileAt([0.05, 0.05], %)\n |> line(end = [0, 7])\n |> tangentialArc({ offset = 90, radius = 5 }, %)\n |> line(end = [-3, 0])\n |> tangentialArc({ offset = -90, radius = 5 }, %)\n |> line(end = [0, 7])\n\n// Create a hole for the pipe.\npipeHole = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 1.5)\n\nsweepSketch = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> hole(pipeHole, %)\n |> sweep(path = sweepPath)\n |> rotate(axis = [0, 0, 1.0], angle = 90)", "// Rotate an imported model.\n\n\nimport \"tests/inputs/cube.sldprt\" as cube\n\ncube\n |> rotate(axis = [0, 0, 1.0], angle = 90)", "// Sweep two sketches along the same path.\n\n\nsketch001 = startSketchOn('XY')\nrectangleSketch = startProfileAt([-200, 23.86], sketch001)\n |> angledLine([0, 73.47], %, $rectangleSegmentA001)\n |> angledLine([\n segAng(rectangleSegmentA001) - 90,\n 50.61\n ], %)\n |> angledLine([\n segAng(rectangleSegmentA001),\n -segLen(rectangleSegmentA001)\n ], %)\n |> line(endAbsolute = [profileStartX(%), profileStartY(%)])\n |> close()\n\ncircleSketch = circle(sketch001, center = [200, -30.29], radius = 32.63)\n\nsketch002 = startSketchOn('YZ')\nsweepPath = startProfileAt([0, 0], sketch002)\n |> yLine(length = 231.81)\n |> tangentialArc({ radius = 80, offset = -90 }, %)\n |> xLine(length = 384.93)\n\nparts = sweep([rectangleSketch, circleSketch], path = sweepPath)\n\n// Rotate the sweeps.\nrotate(parts, axis = [0, 0, 1.0], angle = 90)", "// Translate and rotate a sketch to create a loft.\nsketch001 = startSketchOn('XY')\n\nfn square() {\n return startProfileAt([-10, 10], sketch001)\n |> xLine(length = 20)\n |> yLine(length = -20)\n |> xLine(length = -20)\n |> line(endAbsolute = [profileStartX(%), profileStartY(%)])\n |> close()\n}\n\nprofile001 = square()\n\nprofile002 = square()\n |> translate(translate = [0, 0, 20])\n |> rotate(axis = [0, 0, 1.0], angle = 45)\n\nloft([profile001, profile002])" @@ -277877,7 +277877,7 @@ "unpublished": false, "deprecated": false, "examples": [ - "// Scale a pipe.\n\n\n// Create a path for the sweep.\nsweepPath = startSketchOn('XZ')\n |> startProfileAt([0.05, 0.05], %)\n |> line(end = [0, 7])\n |> tangentialArc({ offset = 90, radius = 5 }, %)\n |> line(end = [-3, 0])\n |> tangentialArc({ offset = -90, radius = 5 }, %)\n |> line(end = [0, 7])\n\n// Create a hole for the pipe.\npipeHole = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 1.5)\n\nsweepSketch = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> hole(pipeHole, %)\n |> sweep(path = sweepPath)\n |> scale(scale = [1.0, 1.0, 2.5])", + "// Scale a pipe.\n\n// Create a path for the sweep.\nsweepPath = startSketchOn('XZ')\n |> startProfileAt([0.05, 0.05], %)\n |> line(end = [0, 7])\n |> tangentialArc({ offset = 90, radius = 5 }, %)\n |> line(end = [-3, 0])\n |> tangentialArc({ offset = -90, radius = 5 }, %)\n |> line(end = [0, 7])\n\n// Create a hole for the pipe.\npipeHole = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 1.5)\n\nsweepSketch = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> hole(pipeHole, %)\n |> sweep(path = sweepPath)\n |> scale(scale = [1.0, 1.0, 2.5])", "// Scale an imported model.\n\n\nimport \"tests/inputs/cube.sldprt\" as cube\n\ncube\n |> scale(scale = [1.0, 1.0, 2.5])", "// Sweep two sketches along the same path.\n\n\nsketch001 = startSketchOn('XY')\nrectangleSketch = startProfileAt([-200, 23.86], sketch001)\n |> angledLine([0, 73.47], %, $rectangleSegmentA001)\n |> angledLine([\n segAng(rectangleSegmentA001) - 90,\n 50.61\n ], %)\n |> angledLine([\n segAng(rectangleSegmentA001),\n -segLen(rectangleSegmentA001)\n ], %)\n |> line(endAbsolute = [profileStartX(%), profileStartY(%)])\n |> close()\n\ncircleSketch = circle(sketch001, center = [200, -30.29], radius = 32.63)\n\nsketch002 = startSketchOn('YZ')\nsweepPath = startProfileAt([0, 0], sketch002)\n |> yLine(length = 231.81)\n |> tangentialArc({ radius = 80, offset = -90 }, %)\n |> xLine(length = 384.93)\n\nparts = sweep([rectangleSketch, circleSketch], path = sweepPath)\n\n// Scale the sweep.\nscale(parts, scale = [1.0, 1.0, 0.5])" ] @@ -311369,8 +311369,8 @@ "unpublished": false, "deprecated": false, "examples": [ - "// Create a pipe using a sweep.\n\n\n// Create a path for the sweep.\nsweepPath = startSketchOn('XZ')\n |> startProfileAt([0.05, 0.05], %)\n |> line(end = [0, 7])\n |> tangentialArc({ offset = 90, radius = 5 }, %)\n |> line(end = [-3, 0])\n |> tangentialArc({ offset = -90, radius = 5 }, %)\n |> line(end = [0, 7])\n\n// Create a hole for the pipe.\npipeHole = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 1.5)\n\nsweepSketch = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> hole(pipeHole, %)\n |> sweep(path = sweepPath)", - "// Create a spring by sweeping around a helix path.\n\n\n// Create a helix around the Z axis.\nhelixPath = helix(\n angleStart = 0,\n ccw = true,\n revolutions = 4,\n length = 10,\n radius = 5,\n axis = 'Z',\n)\n\n// Create a spring by sweeping around the helix path.\nspringSketch = startSketchOn('YZ')\n |> circle(center = [0, 0], radius = 1)\n |> sweep(path = helixPath)", + "// Create a pipe using a sweep.\n\n// Create a path for the sweep.\nsweepPath = startSketchOn('XZ')\n |> startProfileAt([0.05, 0.05], %)\n |> line(end = [0, 7])\n |> tangentialArc({ offset = 90, radius = 5 }, %)\n |> line(end = [-3, 0])\n |> tangentialArc({ offset = -90, radius = 5 }, %)\n |> line(end = [0, 7])\n\n// Create a hole for the pipe.\npipeHole = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 1.5)\n\nsweepSketch = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> hole(pipeHole, %)\n |> sweep(path = sweepPath)", + "// Create a spring by sweeping around a helix path.\n\n// Create a helix around the Z axis.\nhelixPath = helix(\n angleStart = 0,\n ccw = true,\n revolutions = 4,\n length = 10,\n radius = 5,\n axis = 'Z',\n)\n\n// Create a spring by sweeping around the helix path.\nspringSketch = startSketchOn('YZ')\n |> circle(center = [0, 0], radius = 1)\n |> sweep(path = helixPath)", "// Sweep two sketches along the same path.\n\n\nsketch001 = startSketchOn('XY')\nrectangleSketch = startProfileAt([-200, 23.86], sketch001)\n |> angledLine([0, 73.47], %, $rectangleSegmentA001)\n |> angledLine([\n segAng(rectangleSegmentA001) - 90,\n 50.61\n ], %)\n |> angledLine([\n segAng(rectangleSegmentA001),\n -segLen(rectangleSegmentA001)\n ], %)\n |> line(endAbsolute = [profileStartX(%), profileStartY(%)])\n |> close()\n\ncircleSketch = circle(sketch001, center = [200, -30.29], radius = 32.63)\n\nsketch002 = startSketchOn('YZ')\nsweepPath = startProfileAt([0, 0], sketch002)\n |> yLine(length = 231.81)\n |> tangentialArc({ radius = 80, offset = -90 }, %)\n |> xLine(length = 384.93)\n\nsweep([rectangleSketch, circleSketch], path = sweepPath)" ] }, @@ -332924,7 +332924,7 @@ "unpublished": false, "deprecated": false, "examples": [ - "// Move a pipe.\n\n\n// Create a path for the sweep.\nsweepPath = startSketchOn('XZ')\n |> startProfileAt([0.05, 0.05], %)\n |> line(end = [0, 7])\n |> tangentialArc({ offset = 90, radius = 5 }, %)\n |> line(end = [-3, 0])\n |> tangentialArc({ offset = -90, radius = 5 }, %)\n |> line(end = [0, 7])\n\n// Create a hole for the pipe.\npipeHole = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 1.5)\n\nsweepSketch = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> hole(pipeHole, %)\n |> sweep(path = sweepPath)\n |> translate(translate = [1.0, 1.0, 2.5])", + "// Move a pipe.\n\n// Create a path for the sweep.\nsweepPath = startSketchOn('XZ')\n |> startProfileAt([0.05, 0.05], %)\n |> line(end = [0, 7])\n |> tangentialArc({ offset = 90, radius = 5 }, %)\n |> line(end = [-3, 0])\n |> tangentialArc({ offset = -90, radius = 5 }, %)\n |> line(end = [0, 7])\n\n// Create a hole for the pipe.\npipeHole = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 1.5)\n\nsweepSketch = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> hole(pipeHole, %)\n |> sweep(path = sweepPath)\n |> translate(translate = [1.0, 1.0, 2.5])", "// Move an imported model.\n\n\nimport \"tests/inputs/cube.sldprt\" as cube\n\ncube\n |> translate(translate = [1.0, 1.0, 2.5])", "// Sweep two sketches along the same path.\n\n\nsketch001 = startSketchOn('XY')\nrectangleSketch = startProfileAt([-200, 23.86], sketch001)\n |> angledLine([0, 73.47], %, $rectangleSegmentA001)\n |> angledLine([\n segAng(rectangleSegmentA001) - 90,\n 50.61\n ], %)\n |> angledLine([\n segAng(rectangleSegmentA001),\n -segLen(rectangleSegmentA001)\n ], %)\n |> line(endAbsolute = [profileStartX(%), profileStartY(%)])\n |> close()\n\ncircleSketch = circle(sketch001, center = [200, -30.29], radius = 32.63)\n\nsketch002 = startSketchOn('YZ')\nsweepPath = startProfileAt([0, 0], sketch002)\n |> yLine(length = 231.81)\n |> tangentialArc({ radius = 80, offset = -90 }, %)\n |> xLine(length = 384.93)\n\nparts = sweep([rectangleSketch, circleSketch], path = sweepPath)\n\n// Move the sweeps.\ntranslate(parts, translate = [1.0, 1.0, 2.5])", "// Move a sketch.\n\n\nfn square(length) {\n l = length / 2\n p0 = [-l, -l]\n p1 = [-l, l]\n p2 = [l, l]\n p3 = [l, -l]\n\n return startSketchOn(XY)\n |> startProfileAt(p0, %)\n |> line(endAbsolute = p1)\n |> line(endAbsolute = p2)\n |> line(endAbsolute = p3)\n |> close()\n}\n\nsquare(10)\n |> translate(translate = [5, 5, 0])\n |> extrude(length = 10)", diff --git a/docs/kcl/sweep.md b/docs/kcl/sweep.md index f1e7afbc1..97cef72ae 100644 --- a/docs/kcl/sweep.md +++ b/docs/kcl/sweep.md @@ -43,7 +43,6 @@ sweep( ```js // Create a pipe using a sweep. - // Create a path for the sweep. sweepPath = startSketchOn('XZ') |> startProfileAt([0.05, 0.05], %) @@ -68,7 +67,6 @@ sweepSketch = startSketchOn('XY') ```js // Create a spring by sweeping around a helix path. - // Create a helix around the Z axis. helixPath = helix( angleStart = 0, diff --git a/docs/kcl/translate.md b/docs/kcl/translate.md index c27edf21c..3a986de2c 100644 --- a/docs/kcl/translate.md +++ b/docs/kcl/translate.md @@ -35,7 +35,6 @@ translate( ```js // Move a pipe. - // Create a path for the sweep. sweepPath = startSketchOn('XZ') |> startProfileAt([0.05, 0.05], %) diff --git a/rust/kcl-lib/src/docs/kcl_doc.rs b/rust/kcl-lib/src/docs/kcl_doc.rs index 5052bae1c..a0cda868a 100644 --- a/rust/kcl-lib/src/docs/kcl_doc.rs +++ b/rust/kcl-lib/src/docs/kcl_doc.rs @@ -8,7 +8,7 @@ use tower_lsp::lsp_types::{ use crate::{ execution::annotations, parsing::{ - ast::types::{Annotation, Node, NonCodeNode, NonCodeValue, VariableKind}, + ast::types::{Annotation, Node, NonCodeNode, VariableKind}, token::NumericSuffix, }, ModuleId, @@ -36,7 +36,7 @@ impl CollectionVisitor { .unwrap(); self.id += 1; - for (i, n) in parsed.body.iter().enumerate() { + for n in &parsed.body { match n { crate::parsing::ast::types::BodyItem::ImportStatement(import) if !import.visibility.is_default() => { // Only supports glob imports for now. @@ -63,12 +63,11 @@ impl CollectionVisitor { VariableKind::Const => DocData::Const(ConstData::from_ast(var, qual_name)), }; - // FIXME this association of metadata with items is pretty flaky. - if i == 0 { - dd.with_meta(&parsed.non_code_meta.start_nodes, &var.outer_attrs); - } else if let Some(meta) = parsed.non_code_meta.non_code_nodes.get(&(i - 1)) { - dd.with_meta(meta, &var.outer_attrs); + dd.with_meta(&var.outer_attrs); + for a in &var.outer_attrs { + dd.with_comments(&a.pre_comments); } + dd.with_comments(n.get_comments()); self.result.push(dd); } @@ -80,12 +79,11 @@ impl CollectionVisitor { }; let mut dd = DocData::Ty(TyData::from_ast(ty, qual_name)); - // FIXME this association of metadata with items is pretty flaky. - if i == 0 { - dd.with_meta(&parsed.non_code_meta.start_nodes, &ty.outer_attrs); - } else if let Some(meta) = parsed.non_code_meta.non_code_nodes.get(&(i - 1)) { - dd.with_meta(meta, &ty.outer_attrs); + dd.with_meta(&ty.outer_attrs); + for a in &ty.outer_attrs { + dd.with_comments(&a.pre_comments); } + dd.with_comments(n.get_comments()); self.result.push(dd); } @@ -172,11 +170,19 @@ impl DocData { } } - fn with_meta(&mut self, meta: &[Node], attrs: &[Node]) { + fn with_meta(&mut self, attrs: &[Node]) { match self { - DocData::Fn(f) => f.with_meta(meta, attrs), - DocData::Const(c) => c.with_meta(meta, attrs), - DocData::Ty(t) => t.with_meta(meta, attrs), + DocData::Fn(f) => f.with_meta(attrs), + DocData::Const(c) => c.with_meta(attrs), + DocData::Ty(t) => t.with_meta(attrs), + } + } + + fn with_comments(&mut self, comments: &[String]) { + match self { + DocData::Fn(f) => f.with_comments(comments), + DocData::Const(c) => c.with_comments(comments), + DocData::Ty(t) => t.with_comments(comments), } } @@ -640,55 +646,20 @@ trait ApplyMeta { fn doc_hidden(&mut self, doc_hidden: bool); fn impl_kind(&mut self, impl_kind: annotations::Impl); - fn with_meta(&mut self, meta: &[Node], attrs: &[Node]) { - for attr in attrs { - if let Annotation { - name: None, - properties: Some(props), - .. - } = &attr.inner - { - for p in props { - match &*p.key.name { - annotations::IMPL => { - if let Some(s) = p.value.ident_name() { - self.impl_kind(annotations::Impl::from_str(s).unwrap()); - } - } - "deprecated" => { - if let Some(b) = p.value.literal_bool() { - self.deprecated(b); - } - } - "doc_hidden" => { - if let Some(b) = p.value.literal_bool() { - self.doc_hidden(b); - } - } - _ => {} - } - } - } - } - let mut comments = Vec::new(); - for m in meta { - match &m.value { - NonCodeValue::BlockComment { value, .. } | NonCodeValue::NewLineBlockComment { value, .. } => { - comments.push(value) - } - _ => {} - } + fn with_comments(&mut self, comments: &[String]) { + if comments.iter().all(|s| s.is_empty()) { + return; } let mut summary = None; let mut description = None; let mut example: Option<(String, ExampleProperties)> = None; let mut examples = Vec::new(); - for l in comments.into_iter().filter(|l| l.starts_with('/')).map(|l| { - if let Some(ll) = l.strip_prefix("/ ") { + for l in comments.iter().filter(|l| l.starts_with("///")).map(|l| { + if let Some(ll) = l.strip_prefix("/// ") { ll } else { - &l[1..] + &l[3..] } }) { if description.is_none() && summary.is_none() { @@ -763,6 +734,38 @@ trait ApplyMeta { examples, ); } + + fn with_meta(&mut self, attrs: &[Node]) { + for attr in attrs { + if let Annotation { + name: None, + properties: Some(props), + .. + } = &attr.inner + { + for p in props { + match &*p.key.name { + annotations::IMPL => { + if let Some(s) = p.value.ident_name() { + self.impl_kind(annotations::Impl::from_str(s).unwrap()); + } + } + "deprecated" => { + if let Some(b) = p.value.literal_bool() { + self.deprecated(b); + } + } + "doc_hidden" => { + if let Some(b) = p.value.literal_bool() { + self.doc_hidden(b); + } + } + _ => {} + } + } + } + } + } } impl ApplyMeta for ConstData { diff --git a/rust/kcl-lib/src/lsp/tests.rs b/rust/kcl-lib/src/lsp/tests.rs index 9a7d975e4..43e869d7a 100644 --- a/rust/kcl-lib/src/lsp/tests.rs +++ b/rust/kcl-lib/src/lsp/tests.rs @@ -1714,7 +1714,6 @@ outsideRevolve = startSketchOn('XZ') r#"// Ball Bearing // A ball bearing is a type of rolling-element bearing that uses balls to maintain the separation between the bearing races. The primary purpose of a ball bearing is to reduce rotational friction and support radial and axial loads. - // Define constants like ball diameter, inside diameter, overhange length, and thickness sphereDia = 0.5 insideDia = 1 diff --git a/rust/kcl-lib/src/parsing/ast/types/mod.rs b/rust/kcl-lib/src/parsing/ast/types/mod.rs index 0fd8bba74..79e0aa221 100644 --- a/rust/kcl-lib/src/parsing/ast/types/mod.rs +++ b/rust/kcl-lib/src/parsing/ast/types/mod.rs @@ -53,6 +53,12 @@ pub struct Node { pub module_id: ModuleId, #[serde(default, skip_serializing_if = "Vec::is_empty")] pub outer_attrs: NodeList, + // Some comments are kept here, some are kept in NonCodeMeta, and some are ignored. See how each + // node is parsed to check for certain. In any case, only comments which are strongly associated + // with an item are kept here. + #[serde(default, skip_serializing_if = "Vec::is_empty")] + pub pre_comments: Vec, + pub comment_start: usize, } impl schemars::JsonSchema for Node { @@ -85,6 +91,20 @@ impl Node { end, module_id, outer_attrs: Vec::new(), + pre_comments: Vec::new(), + comment_start: start, + } + } + + pub fn new_node(start: usize, end: usize, module_id: ModuleId, inner: T) -> Self { + Self { + inner, + start, + end, + module_id, + outer_attrs: Vec::new(), + pre_comments: Vec::new(), + comment_start: start, } } @@ -95,6 +115,8 @@ impl Node { end: 0, module_id: ModuleId::default(), outer_attrs: Vec::new(), + pre_comments: Vec::new(), + comment_start: 0, } } @@ -105,6 +127,8 @@ impl Node { end, module_id, outer_attrs: Vec::new(), + pre_comments: Vec::new(), + comment_start: start, }) } @@ -133,8 +157,15 @@ impl Node { end: self.end, module_id: self.module_id, outer_attrs: self.outer_attrs, + pre_comments: self.pre_comments, + comment_start: self.comment_start, } } + + pub fn set_comments(&mut self, comments: Vec, start: usize) { + self.pre_comments = comments; + self.comment_start = start; + } } impl Deref for Node { @@ -373,6 +404,26 @@ impl Program { if self.non_code_meta.in_comment(pos) { return true; } + + for item in &self.body { + let r = item.comment_range(); + eprintln!("item {r:?}"); + if pos >= r.0 && pos < r.1 { + return true; + } + if pos < r.0 { + break; + } + } + for n in &self.inner_attrs { + if pos >= n.comment_start && pos < n.start { + return true; + } + if pos < n.comment_start { + break; + } + } + let item = self.get_body_item_for_position(pos); // Recurse over the item. @@ -660,6 +711,36 @@ impl BodyItem { BodyItem::ReturnStatement(node) => &mut node.outer_attrs, } } + + pub(crate) fn set_comments(&mut self, comments: Vec, start: usize) { + match self { + BodyItem::ImportStatement(node) => node.set_comments(comments, start), + BodyItem::ExpressionStatement(node) => node.set_comments(comments, start), + BodyItem::VariableDeclaration(node) => node.set_comments(comments, start), + BodyItem::TypeDeclaration(node) => node.set_comments(comments, start), + BodyItem::ReturnStatement(node) => node.set_comments(comments, start), + } + } + + pub(crate) fn get_comments(&self) -> &[String] { + match self { + BodyItem::ImportStatement(node) => &node.pre_comments, + BodyItem::ExpressionStatement(node) => &node.pre_comments, + BodyItem::VariableDeclaration(node) => &node.pre_comments, + BodyItem::TypeDeclaration(node) => &node.pre_comments, + BodyItem::ReturnStatement(node) => &node.pre_comments, + } + } + + pub(crate) fn comment_range(&self) -> (usize, usize) { + match self { + BodyItem::ImportStatement(node) => (node.comment_start, node.start), + BodyItem::ExpressionStatement(node) => (node.comment_start, node.start), + BodyItem::VariableDeclaration(node) => (node.comment_start, node.start), + BodyItem::TypeDeclaration(node) => (node.comment_start, node.start), + BodyItem::ReturnStatement(node) => (node.comment_start, node.start), + } + } } impl From for SourceRange { @@ -1171,6 +1252,23 @@ pub enum CommentStyle { Block, } +impl CommentStyle { + pub fn render_comment(&self, comment: &str) -> String { + match self { + CommentStyle::Line => { + let comment = comment.trim(); + let mut result = "//".to_owned(); + if !comment.is_empty() && !comment.starts_with('/') { + result.push(' '); + } + result.push_str(comment); + result + } + CommentStyle::Block => format!("/* {comment} */"), + } + } +} + #[derive(Debug, Clone, Deserialize, Serialize, PartialEq, ts_rs::TS, JsonSchema)] #[ts(export)] #[serde(tag = "type", rename_all = "camelCase")] @@ -1186,7 +1284,7 @@ pub enum NonCodeValue { }, /// A block comment. /// An example of this is the following: - /// ```python,no_run + /// ```no_run /// /* This is a /// block comment */ /// 1 + 1 @@ -3890,7 +3988,6 @@ startSketchOn('XY')"#; formatted, r#"@settings(defaultLengthUnit = mm) - startSketchOn('XY') "# ); @@ -3925,6 +4022,7 @@ startSketchOn('XY') assert_eq!( formatted, r#"@settings(defaultLengthUnit = mm) + startSketchOn('XY') "# ); diff --git a/rust/kcl-lib/src/parsing/parser.rs b/rust/kcl-lib/src/parsing/parser.rs index d62e44433..fdd7ec1d1 100644 --- a/rust/kcl-lib/src/parsing/parser.rs +++ b/rust/kcl-lib/src/parsing/parser.rs @@ -300,16 +300,17 @@ fn annotation(i: &mut TokenSlice) -> PResult> { terminated(one_of((TokenType::Operator, "=")), opt(whitespace)), expression, ) - .map(|(key, value)| Node { - start: key.start, - end: value.end(), - module_id: key.module_id, - inner: ObjectProperty { - key, - value, - digest: None, - }, - outer_attrs: Vec::new(), + .map(|(key, value)| { + Node::new_node( + key.start, + value.end(), + key.module_id, + ObjectProperty { + key, + value, + digest: None, + }, + ) }), comma_sep, ) @@ -417,17 +418,16 @@ fn pipe_expression(i: &mut TokenSlice) -> PResult> { non_code_meta.insert(code_count, nc); } } - Ok(Node { - start: values.first().unwrap().start(), - end: values.last().unwrap().end().max(max_noncode_end), - module_id: values.first().unwrap().module_id(), - inner: PipeExpression { + Ok(Node::new_node( + values.first().unwrap().start(), + values.last().unwrap().end().max(max_noncode_end), + values.first().unwrap().module_id(), + PipeExpression { body: values, non_code_meta, digest: None, }, - outer_attrs: Vec::new(), - }) + )) } fn bool_value(i: &mut TokenSlice) -> PResult> { @@ -858,17 +858,16 @@ fn array_end_start(i: &mut TokenSlice) -> PResult> { fn object_property_same_key_and_val(i: &mut TokenSlice) -> PResult> { let key = nameable_identifier.context(expected("the property's key (the name or identifier of the property), e.g. in 'height = 4', 'height' is the property key")).parse_next(i)?; ignore_whitespace(i); - Ok(Node { - start: key.start, - end: key.end, - module_id: key.module_id, - inner: ObjectProperty { + Ok(Node::new_node( + key.start, + key.end, + key.module_id, + ObjectProperty { value: Expr::Identifier(Box::new(key.clone())), key, digest: None, }, - outer_attrs: Vec::new(), - }) + )) } fn object_property(i: &mut TokenSlice) -> PResult> { @@ -899,17 +898,16 @@ fn object_property(i: &mut TokenSlice) -> PResult> { } }; - let result = Node { - start: key.start, - end: expr.end(), - module_id: key.module_id, - inner: ObjectProperty { + let result = Node::new_node( + key.start, + expr.end(), + key.module_id, + ObjectProperty { key, value: expr, digest: None, }, - outer_attrs: Vec::new(), - }; + ); if sep.token_type == TokenType::Colon { ParseContext::warn( @@ -1552,14 +1550,57 @@ fn function_body(i: &mut TokenSlice) -> PResult> { let mut inner_attrs = Vec::new(); let mut pending_attrs = Vec::new(); let mut non_code_meta = NonCodeMeta::default(); + let mut pending_non_code: Vec> = Vec::new(); let mut end = 0; let mut start = leading_whitespace_start; + + macro_rules! handle_pending_non_code { + ($node: ident) => { + if !pending_non_code.is_empty() { + let start = pending_non_code[0].start; + let force_disoc = matches!( + &pending_non_code.last().unwrap().inner.value, + NonCodeValue::NewLine + ); + let mut comments = Vec::new(); + for nc in pending_non_code { + match nc.inner.value { + NonCodeValue::BlockComment { value, style } if !force_disoc => { + comments.push(style.render_comment(&value)); + } + NonCodeValue::NewLineBlockComment { value, style } if !force_disoc => { + if comments.is_empty() && nc.start != 0 { + comments.push(String::new()); + comments.push(String::new()); + } + comments.push(style.render_comment(&value)); + } + NonCodeValue::NewLine if !force_disoc && !comments.is_empty() => { + comments.push(String::new()); + comments.push(String::new()); + } + _ => { + if body.is_empty() { + non_code_meta.start_nodes.push(nc); + } else { + non_code_meta.insert(body.len() - 1, nc); + } + } + } + } + $node.set_comments(comments, start); + pending_non_code = Vec::new(); + } + }; + } + for thing_in_body in things_within_body { match thing_in_body { - WithinFunction::Annotation(attr) => { + WithinFunction::Annotation(mut attr) => { if start.is_none() { start = Some((attr.start, attr.module_id)) } + handle_pending_non_code!(attr); if attr.is_inner() { inner_attrs.push(attr); } else { @@ -1575,10 +1616,11 @@ fn function_body(i: &mut TokenSlice) -> PResult> { b.set_attrs(pending_attrs); pending_attrs = Vec::new(); } + handle_pending_non_code!(b); body.push(b); if let Some(nc) = maybe_noncode { end = nc.end; - non_code_meta.insert(body.len() - 1, nc); + pending_non_code.push(nc); } } WithinFunction::NonCode(nc) => { @@ -1586,11 +1628,7 @@ fn function_body(i: &mut TokenSlice) -> PResult> { start = Some((nc.start, nc.module_id)); } end = nc.end; - if body.is_empty() { - non_code_meta.start_nodes.push(nc); - } else { - non_code_meta.insert(body.len() - 1, nc); - } + pending_non_code.push(nc); } } } @@ -1614,6 +1652,15 @@ fn function_body(i: &mut TokenSlice) -> PResult> { .into(), )); } + + for nc in pending_non_code { + if body.is_empty() { + non_code_meta.start_nodes.push(nc); + } else { + non_code_meta.insert(body.len() - 1, nc); + } + } + // Safe to unwrap `body.first()` because `body` is `separated1` therefore guaranteed // to have len >= 1. let end_ws = opt(whitespace) @@ -1922,13 +1969,12 @@ fn return_stmt(i: &mut TokenSlice) -> PResult> { .parse_next(i)?; require_whitespace(i)?; let argument = expression(i)?; - Ok(Node { - start: ret.start, - end: argument.end(), - module_id: ret.module_id, - inner: ReturnStatement { argument, digest: None }, - outer_attrs: Vec::new(), - }) + Ok(Node::new_node( + ret.start, + argument.end(), + ret.module_id, + ReturnStatement { argument, digest: None }, + )) } /// Parse a KCL expression. @@ -2134,28 +2180,27 @@ fn declaration(i: &mut TokenSlice) -> PResult> { .map_err(|e| e.cut())?; let end = val.end(); - Ok(Box::new(Node { - start, - end, - module_id: id.module_id, - inner: VariableDeclaration { - declaration: Node { - start: id.start, + let module_id = id.module_id; + Ok(Node::boxed( + VariableDeclaration { + declaration: Node::new_node( + id.start, end, - module_id: id.module_id, - inner: VariableDeclarator { + module_id, + VariableDeclarator { id, init: val, digest: None, }, - outer_attrs: Vec::new(), - }, + ), visibility, kind, digest: None, }, - outer_attrs: Vec::new(), - })) + start, + end, + module_id, + )) } fn ty_decl(i: &mut TokenSlice) -> PResult> { @@ -2183,18 +2228,18 @@ fn ty_decl(i: &mut TokenSlice) -> PResult> { None }; - let result = Box::new(Node { - start, - end, - module_id: name.module_id, - outer_attrs: Vec::new(), - inner: TypeDeclaration { + let module_id = name.module_id; + let result = Node::boxed( + TypeDeclaration { name, args, visibility, digest: None, }, - }); + start, + end, + module_id, + ); ParseContext::warn(CompilationError::err( result.as_source_range(), @@ -2374,17 +2419,16 @@ fn unary_expression(i: &mut TokenSlice) -> PResult> { .context(expected("a unary expression, e.g. -x or -3")) .parse_next(i)?; let argument = operand.parse_next(i)?; - Ok(Node { - start: op_token.start, - end: argument.end(), - module_id: op_token.module_id, - inner: UnaryExpression { + Ok(Node::new_node( + op_token.start, + argument.end(), + op_token.module_id, + UnaryExpression { operator, argument, digest: None, }, - outer_attrs: Vec::new(), - }) + )) } /// Consume tokens that make up a binary expression, but don't actually return them. @@ -2456,16 +2500,15 @@ fn expression_stmt(i: &mut TokenSlice) -> PResult> { "an expression (i.e. a value, or an algorithm for calculating one), e.g. 'x + y' or '3' or 'width * 2'", )) .parse_next(i)?; - Ok(Node { - start: val.start(), - end: val.end(), - module_id: val.module_id(), - inner: ExpressionStatement { + Ok(Node::new_node( + val.start(), + val.end(), + val.module_id(), + ExpressionStatement { expression: val, digest: None, }, - outer_attrs: Vec::new(), - }) + )) } /// Parse the given brace symbol. @@ -2889,17 +2932,16 @@ fn fn_call(i: &mut TokenSlice) -> PResult> { } let end = preceded(opt(whitespace), close_paren).parse_next(i)?.end; - Ok(Node { - start: fn_name.start, + Ok(Node::new_node( + fn_name.start, end, - module_id: fn_name.module_id, - inner: CallExpression { + fn_name.module_id, + CallExpression { callee: fn_name, arguments: args, digest: None, }, - outer_attrs: Vec::new(), - }) + )) } fn fn_call_kw(i: &mut TokenSlice) -> PResult> { @@ -2971,19 +3013,18 @@ fn fn_call_kw(i: &mut TokenSlice) -> PResult> { non_code_nodes, ..Default::default() }; - Ok(Node { - start: fn_name.start, + Ok(Node::new_node( + fn_name.start, end, - module_id: fn_name.module_id, - inner: CallExpressionKw { + fn_name.module_id, + CallExpressionKw { callee: fn_name, unlabeled: initial_unlabeled_arg, arguments: args, digest: None, non_code_meta, }, - outer_attrs: Vec::new(), - }) + )) } #[cfg(test)] @@ -3094,18 +3135,18 @@ mod tests { a = 1 // comment 1 b = 2 - // comment 2 + /// comment 2 return 1 }"#; let tokens = crate::parsing::token::lex(test_program, ModuleId::default()).unwrap(); let expr = function_decl.map(|t| t.0).parse_next(&mut tokens.as_slice()).unwrap(); assert_eq!(expr.params, vec![]); - let comment_start = expr.body.non_code_meta.start_nodes.first().unwrap(); - let comment0 = &expr.body.non_code_meta.non_code_nodes.get(&0).unwrap()[0]; - let comment1 = &expr.body.non_code_meta.non_code_nodes.get(&1).unwrap()[0]; - assert_eq!(comment_start.value(), "comment 0"); - assert_eq!(comment0.value(), "comment 1"); - assert_eq!(comment1.value(), "comment 2"); + let comment_start = expr.body.body[0].get_comments(); + let comment0 = expr.body.body[1].get_comments(); + let comment1 = expr.body.body[2].get_comments(); + assert_eq!(comment_start, vec!["// comment 0".to_owned()]); + assert_eq!(comment0, vec!["// comment 1".to_owned()]); + assert_eq!(comment1, vec!["/// comment 2".to_owned()]); } #[test] @@ -3186,61 +3227,16 @@ mySk1 = startSketchOn(XY) let tokens = crate::parsing::token::lex(test_program, module_id).unwrap(); let expr = function_decl.map(|t| t.0).parse_next(&mut tokens.as_slice()).unwrap(); assert_eq!( - expr, - Node::new( - FunctionExpression { - params: Default::default(), - body: Node::new( - Program { - body: vec![BodyItem::ReturnStatement(Node::new( - ReturnStatement { - argument: Expr::Literal(Box::new(Node::new( - Literal { - value: LiteralValue::Number { - value: 2.0, - suffix: NumericSuffix::None - }, - raw: "2".to_owned(), - digest: None, - }, - 29, - 30, - module_id, - ))), - digest: None, - }, - 22, - 30, - module_id, - ))], - non_code_meta: NonCodeMeta { - non_code_nodes: Default::default(), - start_nodes: vec![Node::new( - NonCodeNode { - value: NonCodeValue::NewLine, - digest: None - }, - 4, - 22, - module_id, - )], - digest: None, - }, - inner_attrs: Vec::new(), - shebang: None, - digest: None, - }, - 4, - 44, - module_id, - ), - return_type: None, - digest: None, + expr.body.non_code_meta.start_nodes, + vec![Node::new( + NonCodeNode { + value: NonCodeValue::NewLine, + digest: None }, - 0, - 44, + 4, + 22, module_id, - ) + )] ); } @@ -3282,22 +3278,10 @@ mySk1 = startSketchOn(XY) let module_id = ModuleId::default(); let tokens = crate::parsing::token::lex(test_program, module_id).unwrap(); - let Program { non_code_meta, .. } = function_body.parse(tokens.as_slice()).unwrap().inner; - assert_eq!( - vec![Node::new( - NonCodeNode { - value: NonCodeValue::BlockComment { - value: "this is a comment".to_owned(), - style: CommentStyle::Line - }, - digest: None, - }, - 0, - 20, - module_id, - )], - non_code_meta.start_nodes, - ); + let Program { + body, non_code_meta, .. + } = function_body.parse(tokens.as_slice()).unwrap().inner; + assert_eq!(body[0].get_comments(), vec!["// this is a comment".to_owned()],); assert_eq!( Some(&vec![ @@ -3326,21 +3310,7 @@ mySk1 = startSketchOn(XY) non_code_meta.non_code_nodes.get(&0), ); - assert_eq!( - Some(&vec![Node::new( - NonCodeNode { - value: NonCodeValue::BlockComment { - value: "this is also a comment".to_owned(), - style: CommentStyle::Line - }, - digest: None, - }, - 94, - 120, - module_id, - )]), - non_code_meta.non_code_nodes.get(&1), - ); + assert_eq!(body[2].get_comments(), vec!["// this is also a comment".to_owned()],); } #[test] diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__a.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__a.snap index abb6a641f..4a484a1ad 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__a.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__a.snap @@ -1,5 +1,5 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { @@ -14,7 +14,8 @@ expression: actual }, "raw": "1", "start": 0, - "end": 1 + "end": 1, + "commentStart": 0 }, "right": { "type": "Literal", @@ -25,8 +26,10 @@ expression: actual }, "raw": "2", "start": 4, - "end": 5 + "end": 5, + "commentStart": 4 }, "start": 0, - "end": 5 + "end": 5, + "commentStart": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__b.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__b.snap index 40246a2e6..62e0910dd 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__b.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__b.snap @@ -1,5 +1,5 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { @@ -14,7 +14,8 @@ expression: actual }, "raw": "1", "start": 0, - "end": 1 + "end": 1, + "commentStart": 0 }, "right": { "type": "Literal", @@ -25,8 +26,10 @@ expression: actual }, "raw": "2", "start": 2, - "end": 3 + "end": 3, + "commentStart": 2 }, "start": 0, - "end": 3 + "end": 3, + "commentStart": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__c.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__c.snap index 4da790c8f..e069a6ca8 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__c.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__c.snap @@ -1,5 +1,5 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { @@ -14,7 +14,8 @@ expression: actual }, "raw": "1", "start": 0, - "end": 1 + "end": 1, + "commentStart": 0 }, "right": { "type": "Literal", @@ -25,8 +26,10 @@ expression: actual }, "raw": "2", "start": 3, - "end": 4 + "end": 4, + "commentStart": 3 }, "start": 0, - "end": 4 + "end": 4, + "commentStart": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__d.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__d.snap index 0e16cda16..0e459c97b 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__d.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__d.snap @@ -1,5 +1,5 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { @@ -14,7 +14,8 @@ expression: actual }, "raw": "1", "start": 0, - "end": 1 + "end": 1, + "commentStart": 0 }, "right": { "type": "BinaryExpression", @@ -29,7 +30,8 @@ expression: actual }, "raw": "2", "start": 4, - "end": 5 + "end": 5, + "commentStart": 4 }, "right": { "type": "Literal", @@ -40,11 +42,14 @@ expression: actual }, "raw": "3", "start": 8, - "end": 9 + "end": 9, + "commentStart": 8 }, "start": 4, - "end": 9 + "end": 9, + "commentStart": 4 }, "start": 0, - "end": 9 + "end": 9, + "commentStart": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__e.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__e.snap index 2f937c71c..1df258a5a 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__e.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__e.snap @@ -1,5 +1,5 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { @@ -14,7 +14,8 @@ expression: actual }, "raw": "1", "start": 0, - "end": 1 + "end": 1, + "commentStart": 0 }, "right": { "type": "BinaryExpression", @@ -29,7 +30,8 @@ expression: actual }, "raw": "2", "start": 6, - "end": 7 + "end": 7, + "commentStart": 6 }, "right": { "type": "Literal", @@ -40,11 +42,14 @@ expression: actual }, "raw": "3", "start": 10, - "end": 11 + "end": 11, + "commentStart": 10 }, "start": 6, - "end": 11 + "end": 11, + "commentStart": 6 }, "start": 0, - "end": 11 + "end": 11, + "commentStart": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__f.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__f.snap index 0fb2d7af1..a3aa98e75 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__f.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__f.snap @@ -1,5 +1,5 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { @@ -18,7 +18,8 @@ expression: actual }, "raw": "1", "start": 0, - "end": 1 + "end": 1, + "commentStart": 0 }, "right": { "type": "BinaryExpression", @@ -33,7 +34,8 @@ expression: actual }, "raw": "2", "start": 6, - "end": 7 + "end": 7, + "commentStart": 6 }, "right": { "type": "Literal", @@ -44,13 +46,16 @@ expression: actual }, "raw": "3", "start": 10, - "end": 11 + "end": 11, + "commentStart": 10 }, "start": 6, - "end": 11 + "end": 11, + "commentStart": 6 }, "start": 0, - "end": 11 + "end": 11, + "commentStart": 0 }, "right": { "type": "Literal", @@ -61,8 +66,10 @@ expression: actual }, "raw": "4", "start": 16, - "end": 17 + "end": 17, + "commentStart": 16 }, "start": 0, - "end": 17 + "end": 17, + "commentStart": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__g.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__g.snap index 897da3b80..74952a337 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__g.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__g.snap @@ -1,5 +1,5 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { @@ -14,7 +14,8 @@ expression: actual }, "raw": "1", "start": 0, - "end": 1 + "end": 1, + "commentStart": 0 }, "right": { "type": "BinaryExpression", @@ -33,7 +34,8 @@ expression: actual }, "raw": "2", "start": 6, - "end": 7 + "end": 7, + "commentStart": 6 }, "right": { "type": "Literal", @@ -44,10 +46,12 @@ expression: actual }, "raw": "3", "start": 10, - "end": 11 + "end": 11, + "commentStart": 10 }, "start": 6, - "end": 11 + "end": 11, + "commentStart": 6 }, "right": { "type": "Literal", @@ -58,11 +62,14 @@ expression: actual }, "raw": "4", "start": 16, - "end": 17 + "end": 17, + "commentStart": 16 }, "start": 6, - "end": 17 + "end": 17, + "commentStart": 6 }, "start": 0, - "end": 17 + "end": 17, + "commentStart": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__h.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__h.snap index 847117899..fafe93815 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__h.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__h.snap @@ -1,5 +1,5 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { @@ -14,7 +14,8 @@ expression: actual }, "raw": "1", "start": 0, - "end": 1 + "end": 1, + "commentStart": 0 }, "right": { "type": "BinaryExpression", @@ -37,7 +38,8 @@ expression: actual }, "raw": "2", "start": 7, - "end": 8 + "end": 8, + "commentStart": 7 }, "right": { "type": "Literal", @@ -48,10 +50,12 @@ expression: actual }, "raw": "3", "start": 11, - "end": 12 + "end": 12, + "commentStart": 11 }, "start": 7, - "end": 12 + "end": 12, + "commentStart": 7 }, "right": { "type": "Literal", @@ -62,10 +66,12 @@ expression: actual }, "raw": "4", "start": 17, - "end": 18 + "end": 18, + "commentStart": 17 }, "start": 7, - "end": 18 + "end": 18, + "commentStart": 7 }, "right": { "type": "Literal", @@ -76,11 +82,14 @@ expression: actual }, "raw": "5", "start": 21, - "end": 22 + "end": 22, + "commentStart": 21 }, "start": 7, - "end": 22 + "end": 22, + "commentStart": 7 }, "start": 0, - "end": 22 + "end": 22, + "commentStart": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__i.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__i.snap index 7045e4304..f7256a88c 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__i.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__i.snap @@ -1,5 +1,5 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { @@ -14,7 +14,8 @@ expression: actual }, "raw": "1", "start": 0, - "end": 1 + "end": 1, + "commentStart": 0 }, "right": { "type": "BinaryExpression", @@ -29,7 +30,8 @@ expression: actual }, "raw": "2", "start": 8, - "end": 9 + "end": 9, + "commentStart": 8 }, "right": { "type": "Literal", @@ -40,11 +42,14 @@ expression: actual }, "raw": "3", "start": 12, - "end": 13 + "end": 13, + "commentStart": 12 }, "start": 8, - "end": 13 + "end": 13, + "commentStart": 8 }, "start": 0, - "end": 13 + "end": 13, + "commentStart": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__j.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__j.snap index c16ff613f..6341ecda8 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__j.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__j.snap @@ -1,5 +1,5 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { @@ -22,27 +22,32 @@ expression: actual "type": "Identifier", "name": "distance", "start": 0, - "end": 8 + "end": 8, + "commentStart": 0 }, "right": { "type": "Identifier", "type": "Identifier", "name": "p", "start": 11, - "end": 12 + "end": 12, + "commentStart": 11 }, "start": 0, - "end": 12 + "end": 12, + "commentStart": 0 }, "right": { "type": "Identifier", "type": "Identifier", "name": "FOS", "start": 15, - "end": 18 + "end": 18, + "commentStart": 15 }, "start": 0, - "end": 18 + "end": 18, + "commentStart": 0 }, "right": { "type": "Literal", @@ -53,10 +58,12 @@ expression: actual }, "raw": "6", "start": 21, - "end": 22 + "end": 22, + "commentStart": 21 }, "start": 0, - "end": 22 + "end": 22, + "commentStart": 0 }, "right": { "type": "BinaryExpression", @@ -67,18 +74,22 @@ expression: actual "type": "Identifier", "name": "sigmaAllow", "start": 26, - "end": 36 + "end": 36, + "commentStart": 26 }, "right": { "type": "Identifier", "type": "Identifier", "name": "width", "start": 39, - "end": 44 + "end": 44, + "commentStart": 39 }, "start": 26, - "end": 44 + "end": 44, + "commentStart": 26 }, "start": 0, - "end": 44 + "end": 44, + "commentStart": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__k.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__k.snap index 131c539ed..975062334 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__k.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__k.snap @@ -1,5 +1,5 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { @@ -14,7 +14,8 @@ expression: actual }, "raw": "2", "start": 0, - "end": 1 + "end": 1, + "commentStart": 0 }, "right": { "type": "Literal", @@ -25,8 +26,10 @@ expression: actual }, "raw": "3", "start": 7, - "end": 8 + "end": 8, + "commentStart": 7 }, "start": 0, - "end": 8 + "end": 8, + "commentStart": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__a.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__a.snap index 3fb3874ad..ab6c13672 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__a.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__a.snap @@ -5,9 +5,12 @@ expression: actual { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 170, "id": { + "commentStart": 0, "end": 9, "name": "boxSketch", "start": 0, @@ -18,6 +21,7 @@ expression: actual { "arguments": [ { + "commentStart": 26, "end": 28, "name": "XY", "start": 26, @@ -26,11 +30,13 @@ expression: actual } ], "callee": { + "commentStart": 12, "end": 25, "name": "startSketchOn", "start": 12, "type": "Identifier" }, + "commentStart": 12, "end": 29, "start": 12, "type": "CallExpression", @@ -39,8 +45,10 @@ expression: actual { "arguments": [ { + "commentStart": 52, "elements": [ { + "commentStart": 53, "end": 54, "raw": "0", "start": 53, @@ -52,6 +60,7 @@ expression: actual } }, { + "commentStart": 56, "end": 57, "raw": "0", "start": 56, @@ -69,6 +78,7 @@ expression: actual "type": "ArrayExpression" }, { + "commentStart": 60, "end": 61, "start": 60, "type": "PipeSubstitution", @@ -76,11 +86,13 @@ expression: actual } ], "callee": { + "commentStart": 37, "end": 51, "name": "startProfileAt", "start": 37, "type": "Identifier" }, + "commentStart": 37, "end": 62, "start": 37, "type": "CallExpression", @@ -89,8 +101,10 @@ expression: actual { "arguments": [ { + "commentStart": 75, "elements": [ { + "commentStart": 76, "end": 77, "raw": "0", "start": 76, @@ -102,6 +116,7 @@ expression: actual } }, { + "commentStart": 79, "end": 81, "raw": "10", "start": 79, @@ -119,6 +134,7 @@ expression: actual "type": "ArrayExpression" }, { + "commentStart": 84, "end": 85, "start": 84, "type": "PipeSubstitution", @@ -126,11 +142,13 @@ expression: actual } ], "callee": { + "commentStart": 70, "end": 74, "name": "line", "start": 70, "type": "Identifier" }, + "commentStart": 70, "end": 86, "start": 70, "type": "CallExpression", @@ -139,9 +157,11 @@ expression: actual { "arguments": [ { + "commentStart": 108, "elements": [ { "argument": { + "commentStart": 110, "end": 111, "raw": "5", "start": 110, @@ -152,6 +172,7 @@ expression: actual "suffix": "None" } }, + "commentStart": 109, "end": 111, "operator": "-", "start": 109, @@ -159,6 +180,7 @@ expression: actual "type": "UnaryExpression" }, { + "commentStart": 113, "end": 114, "raw": "5", "start": 113, @@ -176,6 +198,7 @@ expression: actual "type": "ArrayExpression" }, { + "commentStart": 117, "end": 118, "start": 117, "type": "PipeSubstitution", @@ -183,11 +206,13 @@ expression: actual } ], "callee": { + "commentStart": 94, "end": 107, "name": "tangentialArc", "start": 94, "type": "Identifier" }, + "commentStart": 94, "end": 119, "start": 94, "type": "CallExpression", @@ -196,8 +221,10 @@ expression: actual { "arguments": [ { + "commentStart": 132, "elements": [ { + "commentStart": 133, "end": 134, "raw": "5", "start": 133, @@ -210,6 +237,7 @@ expression: actual }, { "argument": { + "commentStart": 137, "end": 139, "raw": "15", "start": 137, @@ -220,6 +248,7 @@ expression: actual "suffix": "None" } }, + "commentStart": 136, "end": 139, "operator": "-", "start": 136, @@ -233,6 +262,7 @@ expression: actual "type": "ArrayExpression" }, { + "commentStart": 142, "end": 143, "start": 142, "type": "PipeSubstitution", @@ -240,11 +270,13 @@ expression: actual } ], "callee": { + "commentStart": 127, "end": 131, "name": "line", "start": 127, "type": "Identifier" }, + "commentStart": 127, "end": 144, "start": 127, "type": "CallExpression", @@ -255,12 +287,14 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 160, "end": 166, "name": "length", "start": 160, "type": "Identifier" }, "arg": { + "commentStart": 167, "end": 169, "raw": "10", "start": 167, @@ -274,11 +308,13 @@ expression: actual } ], "callee": { + "commentStart": 152, "end": 159, "name": "extrude", "start": 152, "type": "Identifier" }, + "commentStart": 152, "end": 170, "start": 152, "type": "CallExpressionKw", @@ -286,6 +322,7 @@ expression: actual "unlabeled": null } ], + "commentStart": 12, "end": 170, "start": 12, "type": "PipeExpression", @@ -301,6 +338,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 171, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aa.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aa.snap index f9d8ee878..b8467332c 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aa.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aa.snap @@ -1,13 +1,16 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 11, "id": { + "commentStart": 0, "end": 2, "name": "sg", "start": 0, @@ -15,12 +18,14 @@ expression: actual }, "init": { "argument": { + "commentStart": 6, "end": 11, "name": "scale", "start": 6, "type": "Identifier", "type": "Identifier" }, + "commentStart": 5, "end": 11, "operator": "-", "start": 5, @@ -37,6 +42,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 11, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ab.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ab.snap index d87506dee..8723a9b19 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ab.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ab.snap @@ -5,20 +5,24 @@ expression: actual { "body": [ { + "commentStart": 0, "end": 27, "expression": { "arguments": [ { "type": "LabeledArg", "label": { + "commentStart": 5, "end": 16, "name": "endAbsolute", "start": 5, "type": "Identifier" }, "arg": { + "commentStart": 19, "elements": [ { + "commentStart": 20, "end": 21, "raw": "0", "start": 20, @@ -31,6 +35,7 @@ expression: actual }, { "argument": { + "commentStart": 24, "end": 25, "raw": "1", "start": 24, @@ -41,6 +46,7 @@ expression: actual "suffix": "None" } }, + "commentStart": 23, "end": 25, "operator": "-", "start": 23, @@ -56,11 +62,13 @@ expression: actual } ], "callee": { + "commentStart": 0, "end": 4, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 0, "end": 27, "start": 0, "type": "CallExpressionKw", @@ -72,6 +80,7 @@ expression: actual "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 27, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ac.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ac.snap index ff4020b8f..737676187 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ac.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ac.snap @@ -1,21 +1,26 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 17, "id": { + "commentStart": 0, "end": 7, "name": "myArray", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 10, "end": 17, "endElement": { + "commentStart": 14, "end": 16, "raw": "10", "start": 14, @@ -29,6 +34,7 @@ expression: actual "endInclusive": true, "start": 10, "startElement": { + "commentStart": 11, "end": 12, "raw": "0", "start": 11, @@ -52,6 +58,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 17, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ad.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ad.snap index 2f65170eb..88e98d90f 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ad.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ad.snap @@ -1,13 +1,16 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 5, "declaration": { + "commentStart": 8, "end": 57, "id": { + "commentStart": 8, "end": 24, "name": "firstPrimeNumber", "start": 8, @@ -18,6 +21,7 @@ expression: actual "body": [ { "argument": { + "commentStart": 50, "end": 51, "raw": "2", "start": 50, @@ -28,15 +32,18 @@ expression: actual "suffix": "None" } }, + "commentStart": 43, "end": 51, "start": 43, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 33, "end": 57, "start": 33 }, + "commentStart": 27, "end": 57, "params": [], "start": 27, @@ -53,15 +60,18 @@ expression: actual "type": "VariableDeclaration" }, { + "commentStart": 62, "end": 80, "expression": { "arguments": [], "callee": { + "commentStart": 62, "end": 78, "name": "firstPrimeNumber", "start": 62, "type": "Identifier" }, + "commentStart": 62, "end": 80, "start": 62, "type": "CallExpression", @@ -72,6 +82,7 @@ expression: actual "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 80, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ae.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ae.snap index a43480d9f..53eb7c22a 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ae.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ae.snap @@ -1,13 +1,16 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 49, "id": { + "commentStart": 3, "end": 8, "name": "thing", "start": 3, @@ -18,6 +21,7 @@ expression: actual "body": [ { "argument": { + "commentStart": 39, "end": 43, "raw": "true", "start": 39, @@ -25,20 +29,24 @@ expression: actual "type": "Literal", "value": true }, + "commentStart": 32, "end": 43, "start": 32, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 22, "end": 49, "start": 22 }, + "commentStart": 11, "end": 49, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 12, "end": 17, "name": "param", "start": 12, @@ -60,10 +68,12 @@ expression: actual "type": "VariableDeclaration" }, { + "commentStart": 54, "end": 66, "expression": { "arguments": [ { + "commentStart": 60, "end": 65, "raw": "false", "start": 60, @@ -73,11 +83,13 @@ expression: actual } ], "callee": { + "commentStart": 54, "end": 59, "name": "thing", "start": 54, "type": "Identifier" }, + "commentStart": 54, "end": 66, "start": 54, "type": "CallExpression", @@ -88,6 +100,7 @@ expression: actual "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 66, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__af.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__af.snap index 36ec0611b..4f64b9694 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__af.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__af.snap @@ -5,9 +5,12 @@ expression: actual { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 230, "id": { + "commentStart": 0, "end": 8, "name": "mySketch", "start": 0, @@ -18,6 +21,7 @@ expression: actual { "arguments": [ { + "commentStart": 25, "end": 27, "name": "XY", "start": 25, @@ -26,11 +30,13 @@ expression: actual } ], "callee": { + "commentStart": 11, "end": 24, "name": "startSketchOn", "start": 11, "type": "Identifier" }, + "commentStart": 11, "end": 28, "start": 11, "type": "CallExpression", @@ -39,8 +45,10 @@ expression: actual { "arguments": [ { + "commentStart": 55, "elements": [ { + "commentStart": 56, "end": 57, "raw": "0", "start": 56, @@ -52,6 +60,7 @@ expression: actual } }, { + "commentStart": 58, "end": 59, "raw": "0", "start": 58, @@ -69,6 +78,7 @@ expression: actual "type": "ArrayExpression" }, { + "commentStart": 62, "end": 63, "start": 62, "type": "PipeSubstitution", @@ -76,11 +86,13 @@ expression: actual } ], "callee": { + "commentStart": 40, "end": 54, "name": "startProfileAt", "start": 40, "type": "Identifier" }, + "commentStart": 40, "end": 64, "start": 40, "type": "CallExpression", @@ -91,14 +103,17 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 81, "end": 92, "name": "endAbsolute", "start": 81, "type": "Identifier" }, "arg": { + "commentStart": 95, "elements": [ { + "commentStart": 96, "end": 97, "raw": "0", "start": 96, @@ -110,6 +125,7 @@ expression: actual } }, { + "commentStart": 99, "end": 100, "raw": "1", "start": 99, @@ -130,12 +146,14 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 103, "end": 106, "name": "tag", "start": 103, "type": "Identifier" }, "arg": { + "commentStart": 109, "end": 116, "start": 109, "type": "TagDeclarator", @@ -145,11 +163,13 @@ expression: actual } ], "callee": { + "commentStart": 76, "end": 80, "name": "line", "start": 76, "type": "Identifier" }, + "commentStart": 76, "end": 117, "start": 76, "type": "CallExpressionKw", @@ -161,14 +181,17 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 134, "end": 145, "name": "endAbsolute", "start": 134, "type": "Identifier" }, "arg": { + "commentStart": 148, "elements": [ { + "commentStart": 149, "end": 150, "raw": "1", "start": 149, @@ -180,6 +203,7 @@ expression: actual } }, { + "commentStart": 152, "end": 153, "raw": "1", "start": 152, @@ -199,11 +223,13 @@ expression: actual } ], "callee": { + "commentStart": 129, "end": 133, "name": "line", "start": 129, "type": "Identifier" }, + "commentStart": 129, "end": 155, "start": 129, "type": "CallExpressionKw", @@ -215,14 +241,17 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 172, "end": 183, "name": "endAbsolute", "start": 172, "type": "Identifier" }, "arg": { + "commentStart": 186, "elements": [ { + "commentStart": 187, "end": 188, "raw": "1", "start": 187, @@ -234,6 +263,7 @@ expression: actual } }, { + "commentStart": 190, "end": 191, "raw": "0", "start": 190, @@ -254,12 +284,14 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 194, "end": 197, "name": "tag", "start": 194, "type": "Identifier" }, "arg": { + "commentStart": 200, "end": 210, "start": 200, "type": "TagDeclarator", @@ -269,11 +301,13 @@ expression: actual } ], "callee": { + "commentStart": 167, "end": 171, "name": "line", "start": 167, "type": "Identifier" }, + "commentStart": 167, "end": 211, "start": 167, "type": "CallExpressionKw", @@ -283,17 +317,20 @@ expression: actual { "arguments": [], "callee": { + "commentStart": 223, "end": 228, "name": "close", "start": 223, "type": "Identifier" }, + "commentStart": 223, "end": 230, "start": 223, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 11, "end": 230, "start": 11, "type": "PipeExpression", @@ -309,6 +346,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 230, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ag.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ag.snap index 94ee988be..6eecf332e 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ag.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ag.snap @@ -5,9 +5,12 @@ expression: actual { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 97, "id": { + "commentStart": 0, "end": 8, "name": "mySketch", "start": 0, @@ -18,6 +21,7 @@ expression: actual { "arguments": [ { + "commentStart": 25, "end": 27, "name": "XY", "start": 25, @@ -26,11 +30,13 @@ expression: actual } ], "callee": { + "commentStart": 11, "end": 24, "name": "startSketchOn", "start": 11, "type": "Identifier" }, + "commentStart": 11, "end": 28, "start": 11, "type": "CallExpression", @@ -39,8 +45,10 @@ expression: actual { "arguments": [ { + "commentStart": 47, "elements": [ { + "commentStart": 48, "end": 49, "raw": "0", "start": 48, @@ -52,6 +60,7 @@ expression: actual } }, { + "commentStart": 50, "end": 51, "raw": "0", "start": 50, @@ -69,6 +78,7 @@ expression: actual "type": "ArrayExpression" }, { + "commentStart": 54, "end": 55, "start": 54, "type": "PipeSubstitution", @@ -76,11 +86,13 @@ expression: actual } ], "callee": { + "commentStart": 32, "end": 46, "name": "startProfileAt", "start": 32, "type": "Identifier" }, + "commentStart": 32, "end": 56, "start": 32, "type": "CallExpression", @@ -91,14 +103,17 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 65, "end": 76, "name": "endAbsolute", "start": 65, "type": "Identifier" }, "arg": { + "commentStart": 79, "elements": [ { + "commentStart": 80, "end": 81, "raw": "1", "start": 80, @@ -110,6 +125,7 @@ expression: actual } }, { + "commentStart": 83, "end": 84, "raw": "1", "start": 83, @@ -129,11 +145,13 @@ expression: actual } ], "callee": { + "commentStart": 60, "end": 64, "name": "line", "start": 60, "type": "Identifier" }, + "commentStart": 60, "end": 86, "start": 60, "type": "CallExpressionKw", @@ -143,17 +161,20 @@ expression: actual { "arguments": [], "callee": { + "commentStart": 90, "end": 95, "name": "close", "start": 90, "type": "Identifier" }, + "commentStart": 90, "end": 97, "start": 90, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 11, "end": 97, "start": 11, "type": "PipeExpression", @@ -169,6 +190,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 97, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ah.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ah.snap index b6d35d738..abd68922b 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ah.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ah.snap @@ -5,9 +5,12 @@ expression: actual { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 49, "id": { + "commentStart": 0, "end": 5, "name": "myBox", "start": 0, @@ -18,6 +21,7 @@ expression: actual { "arguments": [ { + "commentStart": 22, "end": 24, "name": "XY", "start": 22, @@ -26,11 +30,13 @@ expression: actual } ], "callee": { + "commentStart": 8, "end": 21, "name": "startSketchOn", "start": 8, "type": "Identifier" }, + "commentStart": 8, "end": 25, "start": 8, "type": "CallExpression", @@ -39,6 +45,7 @@ expression: actual { "arguments": [ { + "commentStart": 44, "end": 45, "name": "p", "start": 44, @@ -46,6 +53,7 @@ expression: actual "type": "Identifier" }, { + "commentStart": 47, "end": 48, "start": 47, "type": "PipeSubstitution", @@ -53,17 +61,20 @@ expression: actual } ], "callee": { + "commentStart": 29, "end": 43, "name": "startProfileAt", "start": 29, "type": "Identifier" }, + "commentStart": 29, "end": 49, "start": 29, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 8, "end": 49, "start": 8, "type": "PipeExpression", @@ -79,6 +90,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 49, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ai.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ai.snap index 76c88fad4..e1677b2c9 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ai.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ai.snap @@ -1,13 +1,16 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 23, "id": { + "commentStart": 0, "end": 5, "name": "myBox", "start": 0, @@ -18,6 +21,7 @@ expression: actual { "arguments": [ { + "commentStart": 10, "end": 11, "raw": "1", "start": 10, @@ -30,11 +34,13 @@ expression: actual } ], "callee": { + "commentStart": 8, "end": 9, "name": "f", "start": 8, "type": "Identifier" }, + "commentStart": 8, "end": 12, "start": 8, "type": "CallExpression", @@ -43,6 +49,7 @@ expression: actual { "arguments": [ { + "commentStart": 18, "end": 19, "raw": "2", "start": 18, @@ -54,6 +61,7 @@ expression: actual } }, { + "commentStart": 21, "end": 22, "start": 21, "type": "PipeSubstitution", @@ -61,17 +69,20 @@ expression: actual } ], "callee": { + "commentStart": 16, "end": 17, "name": "g", "start": 16, "type": "Identifier" }, + "commentStart": 16, "end": 23, "start": 16, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 8, "end": 23, "start": 8, "type": "PipeExpression", @@ -87,6 +98,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 23, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aj.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aj.snap index e5b421a01..91e37bbc2 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aj.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aj.snap @@ -5,9 +5,12 @@ expression: actual { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 71, "id": { + "commentStart": 0, "end": 5, "name": "myBox", "start": 0, @@ -18,6 +21,7 @@ expression: actual { "arguments": [ { + "commentStart": 22, "end": 24, "name": "XY", "start": 22, @@ -26,11 +30,13 @@ expression: actual } ], "callee": { + "commentStart": 8, "end": 21, "name": "startSketchOn", "start": 8, "type": "Identifier" }, + "commentStart": 8, "end": 25, "start": 8, "type": "CallExpression", @@ -39,6 +45,7 @@ expression: actual { "arguments": [ { + "commentStart": 44, "end": 45, "name": "p", "start": 44, @@ -46,6 +53,7 @@ expression: actual "type": "Identifier" }, { + "commentStart": 47, "end": 48, "start": 47, "type": "PipeSubstitution", @@ -53,11 +61,13 @@ expression: actual } ], "callee": { + "commentStart": 29, "end": 43, "name": "startProfileAt", "start": 29, "type": "Identifier" }, + "commentStart": 29, "end": 49, "start": 29, "type": "CallExpression", @@ -68,14 +78,17 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 58, "end": 61, "name": "end", "start": 58, "type": "Identifier" }, "arg": { + "commentStart": 64, "elements": [ { + "commentStart": 65, "end": 66, "raw": "0", "start": 65, @@ -87,6 +100,7 @@ expression: actual } }, { + "commentStart": 68, "end": 69, "name": "l", "start": 68, @@ -102,11 +116,13 @@ expression: actual } ], "callee": { + "commentStart": 53, "end": 57, "name": "line", "start": 53, "type": "Identifier" }, + "commentStart": 53, "end": 71, "start": 53, "type": "CallExpressionKw", @@ -114,6 +130,7 @@ expression: actual "unlabeled": null } ], + "commentStart": 8, "end": 71, "start": 8, "type": "PipeExpression", @@ -129,6 +146,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 71, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ak.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ak.snap index 2e978ad15..0116856f5 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ak.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ak.snap @@ -5,20 +5,24 @@ expression: actual { "body": [ { + "commentStart": 0, "end": 26, "expression": { "arguments": [ { "type": "LabeledArg", "label": { + "commentStart": 5, "end": 16, "name": "endAbsolute", "start": 5, "type": "Identifier" }, "arg": { + "commentStart": 19, "elements": [ { + "commentStart": 20, "end": 21, "raw": "0", "start": 20, @@ -30,6 +34,7 @@ expression: actual } }, { + "commentStart": 23, "end": 24, "raw": "1", "start": 23, @@ -49,11 +54,13 @@ expression: actual } ], "callee": { + "commentStart": 0, "end": 4, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 0, "end": 26, "start": 0, "type": "CallExpressionKw", @@ -65,6 +72,7 @@ expression: actual "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 26, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ap.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ap.snap index a588c9ecc..45931a4fc 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ap.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ap.snap @@ -5,9 +5,12 @@ expression: actual { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 56, "id": { + "commentStart": 0, "end": 8, "name": "mySketch", "start": 0, @@ -18,6 +21,7 @@ expression: actual { "arguments": [ { + "commentStart": 25, "end": 27, "name": "XY", "start": 25, @@ -26,11 +30,13 @@ expression: actual } ], "callee": { + "commentStart": 11, "end": 24, "name": "startSketchOn", "start": 11, "type": "Identifier" }, + "commentStart": 11, "end": 28, "start": 11, "type": "CallExpression", @@ -39,8 +45,10 @@ expression: actual { "arguments": [ { + "commentStart": 47, "elements": [ { + "commentStart": 48, "end": 49, "raw": "0", "start": 48, @@ -52,6 +60,7 @@ expression: actual } }, { + "commentStart": 50, "end": 51, "raw": "0", "start": 50, @@ -69,6 +78,7 @@ expression: actual "type": "ArrayExpression" }, { + "commentStart": 54, "end": 55, "start": 54, "type": "PipeSubstitution", @@ -76,17 +86,20 @@ expression: actual } ], "callee": { + "commentStart": 32, "end": 46, "name": "startProfileAt", "start": 32, "type": "Identifier" }, + "commentStart": 32, "end": 56, "start": 32, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 11, "end": 56, "start": 11, "type": "PipeExpression", @@ -102,6 +115,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 56, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aq.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aq.snap index fcb315e6b..fe95f5f7f 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aq.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aq.snap @@ -1,14 +1,16 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "end": 28, "expression": { "arguments": [ { + "commentStart": 4, "end": 5, "raw": "5", "start": 4, @@ -20,6 +22,7 @@ expression: actual } }, { + "commentStart": 7, "end": 14, "raw": "\"hello\"", "start": 7, @@ -28,6 +31,7 @@ expression: actual "value": "hello" }, { + "commentStart": 16, "end": 27, "name": "aIdentifier", "start": 16, @@ -36,11 +40,13 @@ expression: actual } ], "callee": { + "commentStart": 0, "end": 3, "name": "log", "start": 0, "type": "Identifier" }, + "commentStart": 0, "end": 28, "start": 0, "type": "CallExpression", @@ -51,6 +57,7 @@ expression: actual "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 28, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ar.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ar.snap index 76f66ee63..bd9b2059b 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ar.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ar.snap @@ -1,14 +1,17 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "end": 7, "expression": { + "commentStart": 0, "end": 7, "left": { + "commentStart": 0, "end": 1, "raw": "5", "start": 0, @@ -21,6 +24,7 @@ expression: actual }, "operator": "+", "right": { + "commentStart": 4, "end": 7, "raw": "\"a\"", "start": 4, @@ -37,6 +41,7 @@ expression: actual "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 7, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__at.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__at.snap index 7dc01eabd..aa2766434 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__at.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__at.snap @@ -1,16 +1,19 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "end": 15, "expression": { "arguments": [ { + "commentStart": 5, "elements": [ { + "commentStart": 6, "end": 7, "raw": "0", "start": 6, @@ -22,6 +25,7 @@ expression: actual } }, { + "commentStart": 9, "end": 10, "name": "l", "start": 9, @@ -35,6 +39,7 @@ expression: actual "type": "ArrayExpression" }, { + "commentStart": 13, "end": 14, "start": 13, "type": "PipeSubstitution", @@ -42,11 +47,13 @@ expression: actual } ], "callee": { + "commentStart": 0, "end": 4, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 0, "end": 15, "start": 0, "type": "CallExpression", @@ -57,6 +64,7 @@ expression: actual "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 15, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__au.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__au.snap index 55b8413ed..916e7d1cf 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__au.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__au.snap @@ -5,9 +5,12 @@ expression: actual { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 6, "end": 106, "id": { + "commentStart": 6, "end": 14, "name": "cylinder", "start": 6, @@ -18,6 +21,7 @@ expression: actual { "arguments": [ { + "commentStart": 31, "end": 35, "raw": "'XY'", "start": 31, @@ -27,11 +31,13 @@ expression: actual } ], "callee": { + "commentStart": 17, "end": 30, "name": "startSketchOn", "start": 17, "type": "Identifier" }, + "commentStart": 17, "end": 36, "start": 17, "type": "CallExpression", @@ -42,14 +48,17 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 51, "end": 57, "name": "center", "start": 51, "type": "Identifier" }, "arg": { + "commentStart": 59, "elements": [ { + "commentStart": 60, "end": 61, "raw": "0", "start": 60, @@ -61,6 +70,7 @@ expression: actual } }, { + "commentStart": 63, "end": 64, "raw": "0", "start": 63, @@ -81,12 +91,14 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 67, "end": 73, "name": "radius", "start": 67, "type": "Identifier" }, "arg": { + "commentStart": 75, "end": 77, "raw": "22", "start": 75, @@ -100,11 +112,13 @@ expression: actual } ], "callee": { + "commentStart": 44, "end": 50, "name": "circle", "start": 44, "type": "Identifier" }, + "commentStart": 44, "end": 78, "start": 44, "type": "CallExpressionKw", @@ -116,12 +130,14 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 94, "end": 100, "name": "length", "start": 94, "type": "Identifier" }, "arg": { + "commentStart": 103, "end": 105, "raw": "14", "start": 103, @@ -135,11 +151,13 @@ expression: actual } ], "callee": { + "commentStart": 86, "end": 93, "name": "extrude", "start": 86, "type": "Identifier" }, + "commentStart": 86, "end": 106, "start": 86, "type": "CallExpressionKw", @@ -147,6 +165,7 @@ expression: actual "unlabeled": null } ], + "commentStart": 17, "end": 106, "start": 17, "type": "PipeExpression", @@ -162,6 +181,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 107, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__av.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__av.snap index 96bbe9811..5c3c5b9bf 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__av.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__av.snap @@ -1,13 +1,16 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 49, "id": { + "commentStart": 3, "end": 4, "name": "f", "start": 3, @@ -20,6 +23,7 @@ expression: actual "argument": { "arguments": [ { + "commentStart": 36, "end": 41, "name": "angle", "start": 36, @@ -27,6 +31,7 @@ expression: actual "type": "Identifier" }, { + "commentStart": 43, "end": 46, "raw": "360", "start": 43, @@ -39,30 +44,36 @@ expression: actual } ], "callee": { + "commentStart": 28, "end": 35, "name": "default", "start": 28, "type": "Identifier" }, + "commentStart": 28, "end": 47, "start": 28, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 21, "end": 47, "start": 21, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 19, "end": 49, "start": 19 }, + "commentStart": 7, "end": 49, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 8, "end": 13, "name": "angle", "start": 8, @@ -89,6 +100,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 49, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aw.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aw.snap index 1578d71d4..211a2e0c4 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aw.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aw.snap @@ -1,21 +1,26 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 4, "end": 91, "id": { + "commentStart": 4, "end": 11, "name": "numbers", "start": 4, "type": "Identifier" }, "init": { + "commentStart": 14, "elements": [ { + "commentStart": 28, "end": 29, "raw": "1", "start": 28, @@ -27,6 +32,7 @@ expression: actual } }, { + "commentStart": 79, "end": 80, "raw": "3", "start": 79, @@ -43,6 +49,7 @@ expression: actual "nonCodeNodes": { "1": [ { + "commentStart": 43, "end": 48, "start": 43, "type": "NonCodeNode", @@ -55,6 +62,7 @@ expression: actual ], "2": [ { + "commentStart": 61, "end": 66, "start": 61, "type": "NonCodeNode", @@ -82,6 +90,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 91, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ax.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ax.snap index a2333bc19..f98ad8117 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ax.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ax.snap @@ -1,21 +1,26 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 4, "end": 91, "id": { + "commentStart": 4, "end": 11, "name": "numbers", "start": 4, "type": "Identifier" }, "init": { + "commentStart": 14, "elements": [ { + "commentStart": 28, "end": 29, "raw": "1", "start": 28, @@ -27,6 +32,7 @@ expression: actual } }, { + "commentStart": 43, "end": 44, "raw": "2", "start": 43, @@ -43,6 +49,7 @@ expression: actual "nonCodeNodes": { "2": [ { + "commentStart": 58, "end": 63, "start": 58, "type": "NonCodeNode", @@ -55,6 +62,7 @@ expression: actual ], "3": [ { + "commentStart": 76, "end": 81, "start": 76, "type": "NonCodeNode", @@ -82,6 +90,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 91, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ay.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ay.snap index c336f3757..7d1ff6809 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ay.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ay.snap @@ -1,24 +1,29 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 4, "end": 80, "id": { + "commentStart": 4, "end": 9, "name": "props", "start": 4, "type": "Identifier" }, "init": { + "commentStart": 12, "end": 80, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 44, "end": 52, "start": 44, "type": "NonCodeNode", @@ -34,8 +39,10 @@ expression: actual }, "properties": [ { + "commentStart": 26, "end": 30, "key": { + "commentStart": 26, "end": 27, "name": "a", "start": 26, @@ -44,6 +51,7 @@ expression: actual "start": 26, "type": "ObjectProperty", "value": { + "commentStart": 29, "end": 30, "raw": "1", "start": 29, @@ -56,8 +64,10 @@ expression: actual } }, { + "commentStart": 65, "end": 69, "key": { + "commentStart": 65, "end": 66, "name": "c", "start": 65, @@ -66,6 +76,7 @@ expression: actual "start": 65, "type": "ObjectProperty", "value": { + "commentStart": 68, "end": 69, "raw": "3", "start": 68, @@ -92,6 +103,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 80, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__az.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__az.snap index df8e7dc44..3fce8a5cd 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__az.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__az.snap @@ -1,24 +1,29 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 4, "end": 79, "id": { + "commentStart": 4, "end": 9, "name": "props", "start": 4, "type": "Identifier" }, "init": { + "commentStart": 12, "end": 79, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 44, "end": 52, "start": 44, "type": "NonCodeNode", @@ -34,8 +39,10 @@ expression: actual }, "properties": [ { + "commentStart": 26, "end": 30, "key": { + "commentStart": 26, "end": 27, "name": "a", "start": 26, @@ -44,6 +51,7 @@ expression: actual "start": 26, "type": "ObjectProperty", "value": { + "commentStart": 29, "end": 30, "raw": "1", "start": 29, @@ -56,8 +64,10 @@ expression: actual } }, { + "commentStart": 65, "end": 69, "key": { + "commentStart": 65, "end": 66, "name": "c", "start": 65, @@ -66,6 +76,7 @@ expression: actual "start": 65, "type": "ObjectProperty", "value": { + "commentStart": 68, "end": 69, "raw": "3", "start": 68, @@ -92,6 +103,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 79, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__b.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__b.snap index 4d8b83dc4..7400b9026 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__b.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__b.snap @@ -1,13 +1,16 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 30, "id": { + "commentStart": 0, "end": 5, "name": "myVar", "start": 0, @@ -16,6 +19,7 @@ expression: actual "init": { "arguments": [ { + "commentStart": 12, "end": 13, "raw": "5", "start": 12, @@ -30,6 +34,7 @@ expression: actual "argument": { "arguments": [ { + "commentStart": 24, "end": 25, "raw": "5", "start": 24, @@ -41,6 +46,7 @@ expression: actual } }, { + "commentStart": 27, "end": 28, "raw": "4", "start": 27, @@ -53,16 +59,19 @@ expression: actual } ], "callee": { + "commentStart": 17, "end": 23, "name": "legLen", "start": 17, "type": "Identifier" }, + "commentStart": 17, "end": 29, "start": 17, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 16, "end": 29, "operator": "-", "start": 16, @@ -71,11 +80,13 @@ expression: actual } ], "callee": { + "commentStart": 8, "end": 11, "name": "min", "start": 8, "type": "Identifier" }, + "commentStart": 8, "end": 30, "start": 8, "type": "CallExpression", @@ -91,6 +102,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 30, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ba.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ba.snap index a48e13016..1c154f619 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ba.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ba.snap @@ -1,13 +1,16 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 1, "declaration": { + "commentStart": 1, "end": 126, "id": { + "commentStart": 1, "end": 10, "name": "sketch001", "start": 1, @@ -18,6 +21,7 @@ expression: actual { "arguments": [ { + "commentStart": 27, "end": 31, "raw": "'XY'", "start": 27, @@ -27,11 +31,13 @@ expression: actual } ], "callee": { + "commentStart": 13, "end": 26, "name": "startSketchOn", "start": 13, "type": "Identifier" }, + "commentStart": 13, "end": 32, "start": 13, "type": "CallExpression", @@ -40,6 +46,7 @@ expression: actual { "arguments": [ { + "commentStart": 124, "end": 125, "start": 124, "type": "PipeSubstitution", @@ -47,22 +54,26 @@ expression: actual } ], "callee": { + "commentStart": 109, "end": 123, "name": "startProfileAt", "start": 109, "type": "Identifier" }, + "commentStart": 109, "end": 126, "start": 109, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 13, "end": 126, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 35, "end": 46, "start": 35, "type": "NonCodeNode", @@ -73,6 +84,7 @@ expression: actual } }, { + "commentStart": 49, "end": 68, "start": 49, "type": "NonCodeNode", @@ -83,6 +95,7 @@ expression: actual } }, { + "commentStart": 71, "end": 92, "start": 71, "type": "NonCodeNode", @@ -93,6 +106,7 @@ expression: actual } }, { + "commentStart": 95, "end": 103, "start": 95, "type": "NonCodeNode", @@ -120,6 +134,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 127, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bb.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bb.snap index 557a3e5fd..0dc6c93e2 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bb.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bb.snap @@ -1,23 +1,29 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 1, "declaration": { + "commentStart": 1, "end": 25, "id": { + "commentStart": 1, "end": 5, "name": "my14", "start": 1, "type": "Identifier" }, "init": { + "commentStart": 8, "end": 25, "left": { + "commentStart": 8, "end": 13, "left": { + "commentStart": 8, "end": 9, "raw": "4", "start": 8, @@ -30,6 +36,7 @@ expression: actual }, "operator": "^", "right": { + "commentStart": 12, "end": 13, "raw": "2", "start": 12, @@ -46,10 +53,13 @@ expression: actual }, "operator": "-", "right": { + "commentStart": 16, "end": 25, "left": { + "commentStart": 16, "end": 21, "left": { + "commentStart": 16, "end": 17, "raw": "3", "start": 16, @@ -62,6 +72,7 @@ expression: actual }, "operator": "^", "right": { + "commentStart": 20, "end": 21, "raw": "2", "start": 20, @@ -78,6 +89,7 @@ expression: actual }, "operator": "*", "right": { + "commentStart": 24, "end": 25, "raw": "2", "start": 24, @@ -106,6 +118,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 26, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bc.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bc.snap index facbeaf14..cc4753075 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bc.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bc.snap @@ -1,20 +1,25 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 68, "id": { + "commentStart": 0, "end": 1, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4, "cond": { + "commentStart": 7, "end": 11, "raw": "true", "start": 7, @@ -28,8 +33,10 @@ expression: actual "final_else": { "body": [ { + "commentStart": 57, "end": 58, "expression": { + "commentStart": 57, "end": 58, "raw": "4", "start": 57, @@ -45,6 +52,7 @@ expression: actual "type": "ExpressionStatement" } ], + "commentStart": 57, "end": 67, "start": 57 }, @@ -52,8 +60,10 @@ expression: actual "then_val": { "body": [ { + "commentStart": 26, "end": 27, "expression": { + "commentStart": 26, "end": 27, "raw": "3", "start": 26, @@ -69,6 +79,7 @@ expression: actual "type": "ExpressionStatement" } ], + "commentStart": 26, "end": 36, "start": 26 }, @@ -85,6 +96,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 68, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bd.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bd.snap index 8fbe130c9..6bbd2a932 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bd.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bd.snap @@ -1,20 +1,25 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 115, "id": { + "commentStart": 0, "end": 1, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4, "cond": { + "commentStart": 7, "end": 11, "raw": "true", "start": 7, @@ -25,9 +30,11 @@ expression: actual "digest": null, "else_ifs": [ { + "commentStart": 38, "cond": { "arguments": [ { + "commentStart": 51, "end": 57, "name": "radius", "start": 51, @@ -36,11 +43,13 @@ expression: actual } ], "callee": { + "commentStart": 46, "end": 50, "name": "func", "start": 46, "type": "Identifier" }, + "commentStart": 46, "end": 58, "start": 46, "type": "CallExpression", @@ -52,8 +61,10 @@ expression: actual "then_val": { "body": [ { + "commentStart": 73, "end": 74, "expression": { + "commentStart": 73, "end": 74, "raw": "4", "start": 73, @@ -69,6 +80,7 @@ expression: actual "type": "ExpressionStatement" } ], + "commentStart": 59, "end": 83, "start": 59 }, @@ -79,8 +91,10 @@ expression: actual "final_else": { "body": [ { + "commentStart": 104, "end": 105, "expression": { + "commentStart": 104, "end": 105, "raw": "5", "start": 104, @@ -96,6 +110,7 @@ expression: actual "type": "ExpressionStatement" } ], + "commentStart": 104, "end": 114, "start": 104 }, @@ -103,8 +118,10 @@ expression: actual "then_val": { "body": [ { + "commentStart": 26, "end": 27, "expression": { + "commentStart": 26, "end": 27, "raw": "3", "start": 26, @@ -120,6 +137,7 @@ expression: actual "type": "ExpressionStatement" } ], + "commentStart": 26, "end": 36, "start": 26 }, @@ -136,6 +154,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 115, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__be.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__be.snap index dea6580de..27d58745d 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__be.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__be.snap @@ -1,21 +1,26 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 4, "end": 14, "id": { + "commentStart": 4, "end": 5, "name": "x", "start": 4, "type": "Identifier" }, "init": { + "commentStart": 8, "end": 14, "left": { + "commentStart": 8, "end": 9, "raw": "3", "start": 8, @@ -28,6 +33,7 @@ expression: actual }, "operator": "==", "right": { + "commentStart": 13, "end": 14, "raw": "3", "start": 13, @@ -52,6 +58,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 14, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bf.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bf.snap index d2b6fe104..10fbd378a 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bf.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bf.snap @@ -1,21 +1,26 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 4, "end": 14, "id": { + "commentStart": 4, "end": 5, "name": "x", "start": 4, "type": "Identifier" }, "init": { + "commentStart": 8, "end": 14, "left": { + "commentStart": 8, "end": 9, "raw": "3", "start": 8, @@ -28,6 +33,7 @@ expression: actual }, "operator": "!=", "right": { + "commentStart": 13, "end": 14, "raw": "3", "start": 13, @@ -52,6 +58,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 14, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bg.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bg.snap index 048b38181..dcea79254 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bg.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bg.snap @@ -1,19 +1,23 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 5, "id": { + "commentStart": 0, "end": 1, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4, "end": 5, "raw": "4", "start": 4, @@ -34,6 +38,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 5, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bh.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bh.snap index 6ecc7816e..b9687d88c 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bh.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bh.snap @@ -1,24 +1,30 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 36, "id": { + "commentStart": 0, "end": 3, "name": "obj", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "end": 36, "properties": [ { + "commentStart": 7, "end": 24, "key": { + "commentStart": 7, "end": 13, "name": "center", "start": 7, @@ -27,8 +33,10 @@ expression: actual "start": 7, "type": "ObjectProperty", "value": { + "commentStart": 16, "elements": [ { + "commentStart": 17, "end": 19, "raw": "10", "start": 17, @@ -40,6 +48,7 @@ expression: actual } }, { + "commentStart": 21, "end": 23, "raw": "10", "start": 21, @@ -58,8 +67,10 @@ expression: actual } }, { + "commentStart": 26, "end": 35, "key": { + "commentStart": 26, "end": 32, "name": "radius", "start": 26, @@ -68,6 +79,7 @@ expression: actual "start": 26, "type": "ObjectProperty", "value": { + "commentStart": 34, "end": 35, "raw": "5", "start": 34, @@ -94,6 +106,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 36, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bi.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bi.snap index 725f89080..f3753edec 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bi.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bi.snap @@ -1,19 +1,23 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 5, "id": { + "commentStart": 0, "end": 1, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4, "end": 5, "raw": "3", "start": 4, @@ -34,20 +38,26 @@ expression: actual "type": "VariableDeclaration" }, { + "commentStart": 14, "declaration": { + "commentStart": 14, "end": 30, "id": { + "commentStart": 14, "end": 17, "name": "obj", "start": 14, "type": "Identifier" }, "init": { + "commentStart": 20, "end": 30, "properties": [ { + "commentStart": 22, "end": 23, "key": { + "commentStart": 22, "end": 23, "name": "x", "start": 22, @@ -56,6 +66,7 @@ expression: actual "start": 22, "type": "ObjectProperty", "value": { + "commentStart": 22, "end": 23, "name": "x", "start": 22, @@ -64,8 +75,10 @@ expression: actual } }, { + "commentStart": 25, "end": 29, "key": { + "commentStart": 25, "end": 26, "name": "y", "start": 25, @@ -74,6 +87,7 @@ expression: actual "start": 25, "type": "ObjectProperty", "value": { + "commentStart": 28, "end": 29, "raw": "4", "start": 28, @@ -100,6 +114,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 30, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bj.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bj.snap index db338f47f..b9da9294c 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bj.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bj.snap @@ -1,12 +1,14 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "end": 4, "expression": { + "commentStart": 0, "end": 4, "raw": "true", "start": 0, @@ -19,6 +21,7 @@ expression: actual "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 4, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bk.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bk.snap index 14550aae4..da9fa9750 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bk.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bk.snap @@ -1,12 +1,14 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "end": 5, "expression": { + "commentStart": 0, "end": 5, "name": "truee", "start": 0, @@ -18,6 +20,7 @@ expression: actual "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 5, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bl.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bl.snap index e38695b5e..a6dfa0c8e 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bl.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bl.snap @@ -1,13 +1,16 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 9, "id": { + "commentStart": 0, "end": 1, "name": "x", "start": 0, @@ -15,6 +18,7 @@ expression: actual }, "init": { "argument": { + "commentStart": 5, "end": 9, "raw": "true", "start": 5, @@ -22,6 +26,7 @@ expression: actual "type": "Literal", "value": true }, + "commentStart": 4, "end": 9, "operator": "!", "start": 4, @@ -38,6 +43,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 9, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bm.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bm.snap index 8ea6402bf..80aaea822 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bm.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bm.snap @@ -1,21 +1,26 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 16, "id": { + "commentStart": 0, "end": 1, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4, "end": 16, "left": { + "commentStart": 4, "end": 8, "raw": "true", "start": 4, @@ -25,6 +30,7 @@ expression: actual }, "operator": "&", "right": { + "commentStart": 11, "end": 16, "raw": "false", "start": 11, @@ -46,6 +52,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 16, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bn.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bn.snap index 8cd2ee821..6f065b2a8 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bn.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bn.snap @@ -1,21 +1,26 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 16, "id": { + "commentStart": 0, "end": 1, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4, "end": 16, "left": { + "commentStart": 4, "end": 8, "raw": "true", "start": 4, @@ -25,6 +30,7 @@ expression: actual }, "operator": "|", "right": { + "commentStart": 11, "end": 16, "raw": "false", "start": 11, @@ -46,6 +52,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 16, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__c.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__c.snap index 763a52304..729ba8f9d 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__c.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__c.snap @@ -1,13 +1,16 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 29, "id": { + "commentStart": 0, "end": 5, "name": "myVar", "start": 0, @@ -19,6 +22,7 @@ expression: actual "argument": { "arguments": [ { + "commentStart": 20, "end": 21, "raw": "5", "start": 20, @@ -30,6 +34,7 @@ expression: actual } }, { + "commentStart": 23, "end": 24, "raw": "4", "start": 23, @@ -42,16 +47,19 @@ expression: actual } ], "callee": { + "commentStart": 13, "end": 19, "name": "legLen", "start": 13, "type": "Identifier" }, + "commentStart": 13, "end": 25, "start": 13, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 12, "end": 25, "operator": "-", "start": 12, @@ -59,6 +67,7 @@ expression: actual "type": "UnaryExpression" }, { + "commentStart": 27, "end": 28, "raw": "5", "start": 27, @@ -71,11 +80,13 @@ expression: actual } ], "callee": { + "commentStart": 8, "end": 11, "name": "min", "start": 8, "type": "Identifier" }, + "commentStart": 8, "end": 29, "start": 8, "type": "CallExpression", @@ -91,6 +102,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 29, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__d.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__d.snap index 2bca3b801..f3cda5a9c 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__d.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__d.snap @@ -1,13 +1,16 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 30, "id": { + "commentStart": 0, "end": 5, "name": "myVar", "start": 0, @@ -16,8 +19,10 @@ expression: actual "init": { "body": [ { + "commentStart": 8, "end": 13, "left": { + "commentStart": 8, "end": 9, "raw": "5", "start": 8, @@ -30,6 +35,7 @@ expression: actual }, "operator": "+", "right": { + "commentStart": 12, "end": 13, "raw": "6", "start": 12, @@ -47,6 +53,7 @@ expression: actual { "arguments": [ { + "commentStart": 24, "end": 26, "raw": "45", "start": 24, @@ -58,6 +65,7 @@ expression: actual } }, { + "commentStart": 28, "end": 29, "start": 28, "type": "PipeSubstitution", @@ -65,17 +73,20 @@ expression: actual } ], "callee": { + "commentStart": 17, "end": 23, "name": "myFunc", "start": 17, "type": "Identifier" }, + "commentStart": 17, "end": 30, "start": 17, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 8, "end": 30, "start": 8, "type": "PipeExpression", @@ -91,6 +102,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 30, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__d2.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__d2.snap index ea5923058..06fa407ec 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__d2.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__d2.snap @@ -1,28 +1,34 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 21, "id": { + "commentStart": 0, "end": 1, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4, "end": 21, "left": { "argument": { + "commentStart": 5, "end": 9, "name": "leg2", "start": 5, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4, "end": 9, "operator": "-", "start": 4, @@ -31,6 +37,7 @@ expression: actual }, "operator": "+", "right": { + "commentStart": 12, "end": 21, "name": "thickness", "start": 12, @@ -51,6 +58,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 21, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__e.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__e.snap index fa2bb3a7b..e7fe5e28d 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__e.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__e.snap @@ -1,21 +1,26 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 4, "end": 18, "id": { + "commentStart": 4, "end": 5, "name": "x", "start": 4, "type": "Identifier" }, "init": { + "commentStart": 8, "end": 18, "left": { + "commentStart": 8, "end": 9, "raw": "1", "start": 8, @@ -28,8 +33,10 @@ expression: actual }, "operator": "*", "right": { + "commentStart": 13, "end": 18, "left": { + "commentStart": 13, "end": 14, "raw": "3", "start": 13, @@ -42,6 +49,7 @@ expression: actual }, "operator": "-", "right": { + "commentStart": 17, "end": 18, "raw": "4", "start": 17, @@ -70,6 +78,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 18, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__f.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__f.snap index a4f699b7d..4c42c201a 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__f.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__f.snap @@ -1,19 +1,23 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 5, "id": { + "commentStart": 0, "end": 1, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4, "end": 5, "raw": "1", "start": 4, @@ -34,11 +38,13 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 34, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 5, "end": 34, "start": 5, "type": "NonCodeNode", diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__g.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__g.snap index 3e3b2c9dc..99d259874 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__g.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__g.snap @@ -1,13 +1,16 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 58, "id": { + "commentStart": 3, "end": 4, "name": "x", "start": 3, @@ -18,12 +21,14 @@ expression: actual "body": [ { "argument": { + "commentStart": 30, "end": 32, "name": "sg", "start": 30, "type": "Identifier", "type": "Identifier" }, + "commentStart": 23, "end": 32, "start": 23, "type": "ReturnStatement", @@ -31,21 +36,25 @@ expression: actual }, { "argument": { + "commentStart": 48, "end": 50, "name": "sg", "start": 48, "type": "Identifier", "type": "Identifier" }, + "commentStart": 41, "end": 50, "start": 41, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 13, "end": 58, "start": 13 }, + "commentStart": 7, "end": 58, "params": [], "start": 7, @@ -62,6 +71,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 58, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__h.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__h.snap index 071ce67f8..38c308dc9 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__h.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__h.snap @@ -1,24 +1,30 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 20, "id": { + "commentStart": 0, "end": 3, "name": "obj", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "end": 20, "properties": [ { + "commentStart": 8, "end": 12, "key": { + "commentStart": 8, "end": 9, "name": "a", "start": 8, @@ -27,6 +33,7 @@ expression: actual "start": 8, "type": "ObjectProperty", "value": { + "commentStart": 11, "end": 12, "raw": "1", "start": 11, @@ -39,8 +46,10 @@ expression: actual } }, { + "commentStart": 14, "end": 18, "key": { + "commentStart": 14, "end": 15, "name": "b", "start": 14, @@ -49,6 +58,7 @@ expression: actual "start": 14, "type": "ObjectProperty", "value": { + "commentStart": 17, "end": 18, "raw": "2", "start": 17, @@ -75,17 +85,22 @@ expression: actual "type": "VariableDeclaration" }, { + "commentStart": 25, "declaration": { + "commentStart": 25, "end": 43, "id": { + "commentStart": 25, "end": 31, "name": "height", "start": 25, "type": "Identifier" }, "init": { + "commentStart": 34, "end": 43, "left": { + "commentStart": 34, "end": 35, "raw": "1", "start": 34, @@ -98,9 +113,11 @@ expression: actual }, "operator": "-", "right": { + "commentStart": 38, "computed": false, "end": 43, "object": { + "commentStart": 38, "end": 41, "name": "obj", "start": 38, @@ -108,6 +125,7 @@ expression: actual "type": "Identifier" }, "property": { + "commentStart": 42, "end": 43, "name": "a", "start": 42, @@ -132,6 +150,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 43, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__i.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__i.snap index dabbb8676..0bc9455a0 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__i.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__i.snap @@ -1,24 +1,30 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 20, "id": { + "commentStart": 0, "end": 3, "name": "obj", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "end": 20, "properties": [ { + "commentStart": 8, "end": 12, "key": { + "commentStart": 8, "end": 9, "name": "a", "start": 8, @@ -27,6 +33,7 @@ expression: actual "start": 8, "type": "ObjectProperty", "value": { + "commentStart": 11, "end": 12, "raw": "1", "start": 11, @@ -39,8 +46,10 @@ expression: actual } }, { + "commentStart": 14, "end": 18, "key": { + "commentStart": 14, "end": 15, "name": "b", "start": 14, @@ -49,6 +58,7 @@ expression: actual "start": 14, "type": "ObjectProperty", "value": { + "commentStart": 17, "end": 18, "raw": "2", "start": 17, @@ -75,17 +85,22 @@ expression: actual "type": "VariableDeclaration" }, { + "commentStart": 26, "declaration": { + "commentStart": 26, "end": 47, "id": { + "commentStart": 26, "end": 32, "name": "height", "start": 26, "type": "Identifier" }, "init": { + "commentStart": 35, "end": 47, "left": { + "commentStart": 35, "end": 36, "raw": "1", "start": 35, @@ -98,9 +113,11 @@ expression: actual }, "operator": "-", "right": { + "commentStart": 39, "computed": false, "end": 47, "object": { + "commentStart": 39, "end": 42, "name": "obj", "start": 39, @@ -108,6 +125,7 @@ expression: actual "type": "Identifier" }, "property": { + "commentStart": 43, "end": 46, "raw": "\"a\"", "start": 43, @@ -133,6 +151,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 47, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__j.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__j.snap index 549abd795..4df76b63d 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__j.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__j.snap @@ -1,24 +1,30 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 20, "id": { + "commentStart": 0, "end": 3, "name": "obj", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "end": 20, "properties": [ { + "commentStart": 8, "end": 12, "key": { + "commentStart": 8, "end": 9, "name": "a", "start": 8, @@ -27,6 +33,7 @@ expression: actual "start": 8, "type": "ObjectProperty", "value": { + "commentStart": 11, "end": 12, "raw": "1", "start": 11, @@ -39,8 +46,10 @@ expression: actual } }, { + "commentStart": 14, "end": 18, "key": { + "commentStart": 14, "end": 15, "name": "b", "start": 14, @@ -49,6 +58,7 @@ expression: actual "start": 14, "type": "ObjectProperty", "value": { + "commentStart": 17, "end": 18, "raw": "2", "start": 17, @@ -75,20 +85,26 @@ expression: actual "type": "VariableDeclaration" }, { + "commentStart": 25, "declaration": { + "commentStart": 25, "end": 46, "id": { + "commentStart": 25, "end": 31, "name": "height", "start": 25, "type": "Identifier" }, "init": { + "commentStart": 34, "end": 46, "left": { + "commentStart": 34, "computed": false, "end": 42, "object": { + "commentStart": 34, "end": 37, "name": "obj", "start": 34, @@ -96,6 +112,7 @@ expression: actual "type": "Identifier" }, "property": { + "commentStart": 38, "end": 41, "raw": "\"a\"", "start": 38, @@ -109,6 +126,7 @@ expression: actual }, "operator": "-", "right": { + "commentStart": 45, "end": 46, "raw": "1", "start": 45, @@ -133,6 +151,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 46, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__k.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__k.snap index 6188d9570..f59d1d6b1 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__k.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__k.snap @@ -1,24 +1,30 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 20, "id": { + "commentStart": 0, "end": 3, "name": "obj", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "end": 20, "properties": [ { + "commentStart": 8, "end": 12, "key": { + "commentStart": 8, "end": 9, "name": "a", "start": 8, @@ -27,6 +33,7 @@ expression: actual "start": 8, "type": "ObjectProperty", "value": { + "commentStart": 11, "end": 12, "raw": "1", "start": 11, @@ -39,8 +46,10 @@ expression: actual } }, { + "commentStart": 14, "end": 18, "key": { + "commentStart": 14, "end": 15, "name": "b", "start": 14, @@ -49,6 +58,7 @@ expression: actual "start": 14, "type": "ObjectProperty", "value": { + "commentStart": 17, "end": 18, "raw": "2", "start": 17, @@ -75,19 +85,25 @@ expression: actual "type": "VariableDeclaration" }, { + "commentStart": 25, "declaration": { + "commentStart": 25, "end": 51, "id": { + "commentStart": 25, "end": 31, "name": "height", "start": 25, "type": "Identifier" }, "init": { + "commentStart": 34, "elements": [ { + "commentStart": 35, "end": 47, "left": { + "commentStart": 35, "end": 36, "raw": "1", "start": 35, @@ -100,9 +116,11 @@ expression: actual }, "operator": "-", "right": { + "commentStart": 39, "computed": false, "end": 47, "object": { + "commentStart": 39, "end": 42, "name": "obj", "start": 39, @@ -110,6 +128,7 @@ expression: actual "type": "Identifier" }, "property": { + "commentStart": 43, "end": 46, "raw": "\"a\"", "start": 43, @@ -126,6 +145,7 @@ expression: actual "type": "BinaryExpression" }, { + "commentStart": 49, "end": 50, "raw": "0", "start": 49, @@ -152,6 +172,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 51, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_all_named.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_all_named.snap index c9e293f07..b424cfbcb 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_all_named.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_all_named.snap @@ -5,9 +5,12 @@ expression: actual { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 23, "id": { + "commentStart": 0, "end": 3, "name": "val", "start": 0, @@ -18,12 +21,14 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 10, "end": 11, "name": "x", "start": 10, "type": "Identifier" }, "arg": { + "commentStart": 14, "end": 15, "name": "a", "start": 14, @@ -34,12 +39,14 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 17, "end": 18, "name": "y", "start": 17, "type": "Identifier" }, "arg": { + "commentStart": 21, "end": 22, "name": "b", "start": 21, @@ -49,11 +56,13 @@ expression: actual } ], "callee": { + "commentStart": 6, "end": 9, "name": "foo", "start": 6, "type": "Identifier" }, + "commentStart": 6, "end": 23, "start": 6, "type": "CallExpressionKw", @@ -70,6 +79,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 23, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_in_pipe.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_in_pipe.snap index 16f7ddabe..26475c937 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_in_pipe.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_in_pipe.snap @@ -5,9 +5,12 @@ expression: actual { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 21, "id": { + "commentStart": 0, "end": 3, "name": "val", "start": 0, @@ -16,6 +19,7 @@ expression: actual "init": { "body": [ { + "commentStart": 6, "end": 7, "raw": "1", "start": 6, @@ -31,12 +35,14 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 13, "end": 16, "name": "arg", "start": 13, "type": "Identifier" }, "arg": { + "commentStart": 19, "end": 20, "name": "x", "start": 19, @@ -46,11 +52,13 @@ expression: actual } ], "callee": { + "commentStart": 11, "end": 12, "name": "f", "start": 11, "type": "Identifier" }, + "commentStart": 11, "end": 21, "start": 11, "type": "CallExpressionKw", @@ -58,6 +66,7 @@ expression: actual "unlabeled": null } ], + "commentStart": 6, "end": 21, "start": 6, "type": "PipeExpression", @@ -73,6 +82,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 21, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_multiline.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_multiline.snap index 24c2ceaf1..34385757c 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_multiline.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_multiline.snap @@ -5,9 +5,12 @@ expression: actual { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 87, "id": { + "commentStart": 0, "end": 3, "name": "val", "start": 0, @@ -18,12 +21,14 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 22, "end": 25, "name": "arg", "start": 22, "type": "Identifier" }, "arg": { + "commentStart": 28, "end": 29, "name": "x", "start": 28, @@ -34,12 +39,14 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 44, "end": 47, "name": "foo", "start": 44, "type": "Identifier" }, "arg": { + "commentStart": 50, "end": 51, "name": "x", "start": 50, @@ -50,12 +57,14 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 66, "end": 69, "name": "bar", "start": 66, "type": "Identifier" }, "arg": { + "commentStart": 72, "end": 73, "name": "x", "start": 72, @@ -65,11 +74,13 @@ expression: actual } ], "callee": { + "commentStart": 6, "end": 7, "name": "f", "start": 6, "type": "Identifier" }, + "commentStart": 6, "end": 87, "start": 6, "type": "CallExpressionKw", @@ -86,6 +97,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 87, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_multiline_with_comments.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_multiline_with_comments.snap index 3321aa83e..459f67fd5 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_multiline_with_comments.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_multiline_with_comments.snap @@ -5,9 +5,12 @@ expression: actual { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 90, "id": { + "commentStart": 0, "end": 3, "name": "val", "start": 0, @@ -18,12 +21,14 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 22, "end": 25, "name": "arg", "start": 22, "type": "Identifier" }, "arg": { + "commentStart": 28, "end": 29, "name": "x", "start": 28, @@ -34,12 +39,14 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 69, "end": 72, "name": "bar", "start": 69, "type": "Identifier" }, "arg": { + "commentStart": 75, "end": 76, "name": "x", "start": 75, @@ -49,16 +56,19 @@ expression: actual } ], "callee": { + "commentStart": 6, "end": 7, "name": "f", "start": 6, "type": "Identifier" }, + "commentStart": 6, "end": 90, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 44, "end": 55, "start": 44, "type": "NonCodeNode", @@ -87,6 +97,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 90, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_all_labeled.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_all_labeled.snap index 58f01e4a7..5916368dc 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_all_labeled.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_all_labeled.snap @@ -1,13 +1,16 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 25, "id": { + "commentStart": 3, "end": 6, "name": "foo", "start": 3, @@ -18,6 +21,7 @@ expression: actual "body": [ { "argument": { + "commentStart": 22, "end": 23, "raw": "1", "start": 22, @@ -28,20 +32,24 @@ expression: actual "suffix": "None" } }, + "commentStart": 15, "end": 23, "start": 15, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 13, "end": 25, "start": 13 }, + "commentStart": 6, "end": 25, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 7, "end": 8, "name": "x", "start": 7, @@ -51,6 +59,7 @@ expression: actual { "type": "Parameter", "identifier": { + "commentStart": 10, "end": 11, "name": "y", "start": 10, @@ -72,6 +81,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 25, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_first_unlabeled.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_first_unlabeled.snap index 1a6c563b9..ea655045b 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_first_unlabeled.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_first_unlabeled.snap @@ -1,13 +1,16 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 26, "id": { + "commentStart": 3, "end": 6, "name": "foo", "start": 3, @@ -18,6 +21,7 @@ expression: actual "body": [ { "argument": { + "commentStart": 23, "end": 24, "raw": "1", "start": 23, @@ -28,20 +32,24 @@ expression: actual "suffix": "None" } }, + "commentStart": 16, "end": 24, "start": 16, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 14, "end": 26, "start": 14 }, + "commentStart": 6, "end": 26, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 8, "end": 9, "name": "x", "start": 8, @@ -52,6 +60,7 @@ expression: actual { "type": "Parameter", "identifier": { + "commentStart": 11, "end": 12, "name": "y", "start": 11, @@ -73,6 +82,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 26, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_with_default_and_type.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_with_default_and_type.snap index 4e04958ae..b344ebcd5 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_with_default_and_type.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_with_default_and_type.snap @@ -1,13 +1,16 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 35, "id": { + "commentStart": 3, "end": 6, "name": "foo", "start": 3, @@ -18,6 +21,7 @@ expression: actual "body": [ { "argument": { + "commentStart": 32, "end": 33, "raw": "1", "start": 32, @@ -28,26 +32,31 @@ expression: actual "suffix": "None" } }, + "commentStart": 25, "end": 33, "start": 25, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 23, "end": 35, "start": 23 }, + "commentStart": 6, "end": 35, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 7, "end": 8, "name": "x", "start": 7, "type": "Identifier" }, "default_value": { + "commentStart": 20, "end": 21, "raw": "2", "start": 20, @@ -74,6 +83,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 35, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_with_default_no_type.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_with_default_no_type.snap index 9cc8470d1..20916b4f1 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_with_default_no_type.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_with_default_no_type.snap @@ -1,13 +1,16 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 27, "id": { + "commentStart": 3, "end": 6, "name": "foo", "start": 3, @@ -18,6 +21,7 @@ expression: actual "body": [ { "argument": { + "commentStart": 24, "end": 25, "raw": "1", "start": 24, @@ -28,26 +32,31 @@ expression: actual "suffix": "None" } }, + "commentStart": 17, "end": 25, "start": 17, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 15, "end": 27, "start": 15 }, + "commentStart": 6, "end": 27, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 7, "end": 8, "name": "x", "start": 7, "type": "Identifier" }, "default_value": { + "commentStart": 12, "end": 13, "raw": "2", "start": 12, @@ -74,6 +83,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 27, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_unnamed_first.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_unnamed_first.snap index ba7168ec4..eebf694ac 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_unnamed_first.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_unnamed_first.snap @@ -5,9 +5,12 @@ expression: actual { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 19, "id": { + "commentStart": 0, "end": 3, "name": "val", "start": 0, @@ -18,12 +21,14 @@ expression: actual { "type": "LabeledArg", "label": { + "commentStart": 13, "end": 14, "name": "y", "start": 13, "type": "Identifier" }, "arg": { + "commentStart": 17, "end": 18, "name": "z", "start": 17, @@ -33,16 +38,19 @@ expression: actual } ], "callee": { + "commentStart": 6, "end": 9, "name": "foo", "start": 6, "type": "Identifier" }, + "commentStart": 6, "end": 19, "start": 6, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 10, "end": 11, "name": "x", "start": 10, @@ -60,6 +68,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 19, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__l.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__l.snap index df87c50cc..0cf79cff9 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__l.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__l.snap @@ -1,24 +1,30 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 20, "id": { + "commentStart": 0, "end": 3, "name": "obj", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "end": 20, "properties": [ { + "commentStart": 8, "end": 12, "key": { + "commentStart": 8, "end": 9, "name": "a", "start": 8, @@ -27,6 +33,7 @@ expression: actual "start": 8, "type": "ObjectProperty", "value": { + "commentStart": 11, "end": 12, "raw": "1", "start": 11, @@ -39,8 +46,10 @@ expression: actual } }, { + "commentStart": 14, "end": 18, "key": { + "commentStart": 14, "end": 15, "name": "b", "start": 14, @@ -49,6 +58,7 @@ expression: actual "start": 14, "type": "ObjectProperty", "value": { + "commentStart": 17, "end": 18, "raw": "2", "start": 17, @@ -75,22 +85,29 @@ expression: actual "type": "VariableDeclaration" }, { + "commentStart": 25, "declaration": { + "commentStart": 25, "end": 51, "id": { + "commentStart": 25, "end": 31, "name": "height", "start": 25, "type": "Identifier" }, "init": { + "commentStart": 34, "elements": [ { + "commentStart": 35, "end": 47, "left": { + "commentStart": 35, "computed": false, "end": 43, "object": { + "commentStart": 35, "end": 38, "name": "obj", "start": 35, @@ -98,6 +115,7 @@ expression: actual "type": "Identifier" }, "property": { + "commentStart": 39, "end": 42, "raw": "\"a\"", "start": 39, @@ -111,6 +129,7 @@ expression: actual }, "operator": "-", "right": { + "commentStart": 46, "end": 47, "raw": "1", "start": 46, @@ -126,6 +145,7 @@ expression: actual "type": "BinaryExpression" }, { + "commentStart": 49, "end": 50, "raw": "0", "start": 49, @@ -152,6 +172,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 51, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__m.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__m.snap index 696802df4..986242481 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__m.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__m.snap @@ -1,24 +1,30 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 20, "id": { + "commentStart": 0, "end": 3, "name": "obj", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "end": 20, "properties": [ { + "commentStart": 8, "end": 12, "key": { + "commentStart": 8, "end": 9, "name": "a", "start": 8, @@ -27,6 +33,7 @@ expression: actual "start": 8, "type": "ObjectProperty", "value": { + "commentStart": 11, "end": 12, "raw": "1", "start": 11, @@ -39,8 +46,10 @@ expression: actual } }, { + "commentStart": 14, "end": 18, "key": { + "commentStart": 14, "end": 15, "name": "b", "start": 14, @@ -49,6 +58,7 @@ expression: actual "start": 14, "type": "ObjectProperty", "value": { + "commentStart": 17, "end": 18, "raw": "2", "start": 17, @@ -75,22 +85,29 @@ expression: actual "type": "VariableDeclaration" }, { + "commentStart": 25, "declaration": { + "commentStart": 25, "end": 50, "id": { + "commentStart": 25, "end": 31, "name": "height", "start": 25, "type": "Identifier" }, "init": { + "commentStart": 34, "elements": [ { + "commentStart": 35, "end": 46, "left": { + "commentStart": 35, "computed": false, "end": 43, "object": { + "commentStart": 35, "end": 38, "name": "obj", "start": 35, @@ -98,6 +115,7 @@ expression: actual "type": "Identifier" }, "property": { + "commentStart": 39, "end": 42, "raw": "\"a\"", "start": 39, @@ -111,6 +129,7 @@ expression: actual }, "operator": "-", "right": { + "commentStart": 45, "end": 46, "raw": "1", "start": 45, @@ -126,6 +145,7 @@ expression: actual "type": "BinaryExpression" }, { + "commentStart": 48, "end": 49, "raw": "0", "start": 48, @@ -152,6 +172,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 50, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__n.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__n.snap index e8d31c31e..cdde613a7 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__n.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__n.snap @@ -1,21 +1,26 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 18, "id": { + "commentStart": 0, "end": 6, "name": "height", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 9, "end": 18, "left": { + "commentStart": 9, "end": 10, "raw": "1", "start": 9, @@ -28,9 +33,11 @@ expression: actual }, "operator": "-", "right": { + "commentStart": 13, "computed": false, "end": 18, "object": { + "commentStart": 13, "end": 16, "name": "obj", "start": 13, @@ -38,6 +45,7 @@ expression: actual "type": "Identifier" }, "property": { + "commentStart": 17, "end": 18, "name": "a", "start": 17, @@ -62,6 +70,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 18, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__o.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__o.snap index fcd59fca7..07145fbf6 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__o.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__o.snap @@ -1,23 +1,29 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 15, "id": { + "commentStart": 0, "end": 3, "name": "six", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "end": 15, "left": { + "commentStart": 6, "end": 11, "left": { + "commentStart": 6, "end": 7, "raw": "1", "start": 6, @@ -30,6 +36,7 @@ expression: actual }, "operator": "+", "right": { + "commentStart": 10, "end": 11, "raw": "2", "start": 10, @@ -46,6 +53,7 @@ expression: actual }, "operator": "+", "right": { + "commentStart": 14, "end": 15, "raw": "3", "start": 14, @@ -70,6 +78,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 15, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__p.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__p.snap index 6942ac1f9..6cd7b3a02 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__p.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__p.snap @@ -1,23 +1,29 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 16, "id": { + "commentStart": 0, "end": 4, "name": "five", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 7, "end": 16, "left": { + "commentStart": 7, "end": 12, "left": { + "commentStart": 7, "end": 8, "raw": "3", "start": 7, @@ -30,6 +36,7 @@ expression: actual }, "operator": "*", "right": { + "commentStart": 11, "end": 12, "raw": "1", "start": 11, @@ -46,6 +53,7 @@ expression: actual }, "operator": "+", "right": { + "commentStart": 15, "end": 16, "raw": "2", "start": 15, @@ -70,6 +78,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 16, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__q.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__q.snap index 32925bf77..25a1077e6 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__q.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__q.snap @@ -1,24 +1,30 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 24, "id": { + "commentStart": 0, "end": 6, "name": "height", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 9, "elements": [ { + "commentStart": 11, "computed": false, "end": 19, "object": { + "commentStart": 11, "end": 14, "name": "obj", "start": 11, @@ -26,6 +32,7 @@ expression: actual "type": "Identifier" }, "property": { + "commentStart": 15, "end": 18, "raw": "\"a\"", "start": 15, @@ -38,6 +45,7 @@ expression: actual "type": "MemberExpression" }, { + "commentStart": 21, "end": 22, "raw": "0", "start": 21, @@ -64,6 +72,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 24, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__r.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__r.snap index 8cdd3d0a0..2a590997c 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__r.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__r.snap @@ -1,24 +1,30 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 20, "id": { + "commentStart": 0, "end": 3, "name": "obj", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "end": 20, "properties": [ { + "commentStart": 8, "end": 12, "key": { + "commentStart": 8, "end": 9, "name": "a", "start": 8, @@ -27,6 +33,7 @@ expression: actual "start": 8, "type": "ObjectProperty", "value": { + "commentStart": 11, "end": 12, "raw": "1", "start": 11, @@ -39,8 +46,10 @@ expression: actual } }, { + "commentStart": 14, "end": 18, "key": { + "commentStart": 14, "end": 15, "name": "b", "start": 14, @@ -49,6 +58,7 @@ expression: actual "start": 14, "type": "ObjectProperty", "value": { + "commentStart": 17, "end": 18, "raw": "2", "start": 17, @@ -75,18 +85,23 @@ expression: actual "type": "VariableDeclaration" }, { + "commentStart": 25, "declaration": { + "commentStart": 25, "end": 42, "id": { + "commentStart": 25, "end": 31, "name": "height", "start": 25, "type": "Identifier" }, "init": { + "commentStart": 34, "computed": false, "end": 42, "object": { + "commentStart": 34, "end": 37, "name": "obj", "start": 34, @@ -94,6 +109,7 @@ expression: actual "type": "Identifier" }, "property": { + "commentStart": 38, "end": 41, "raw": "\"a\"", "start": 38, @@ -115,6 +131,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 42, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__s.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__s.snap index 24a506c9c..f8e159b2b 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__s.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__s.snap @@ -1,25 +1,31 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 21, "id": { + "commentStart": 0, "end": 4, "name": "prop", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 7, "computed": true, "end": 21, "object": { + "commentStart": 7, "computed": false, "end": 16, "object": { + "commentStart": 7, "end": 9, "name": "yo", "start": 7, @@ -27,6 +33,7 @@ expression: actual "type": "Identifier" }, "property": { + "commentStart": 10, "end": 15, "raw": "\"one\"", "start": 10, @@ -39,6 +46,7 @@ expression: actual "type": "MemberExpression" }, "property": { + "commentStart": 17, "end": 20, "name": "two", "start": 17, @@ -59,6 +67,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 21, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__t.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__t.snap index b86a97197..fa59a96b7 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__t.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__t.snap @@ -1,22 +1,27 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 11, "id": { + "commentStart": 0, "end": 3, "name": "pt1", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "computed": true, "end": 11, "object": { + "commentStart": 6, "end": 8, "name": "b1", "start": 6, @@ -24,6 +29,7 @@ expression: actual "type": "Identifier" }, "property": { + "commentStart": 9, "end": 10, "name": "x", "start": 9, @@ -44,6 +50,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 11, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__u.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__u.snap index b5d19e46c..dd03a07d0 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__u.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__u.snap @@ -1,31 +1,39 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 28, "id": { + "commentStart": 0, "end": 4, "name": "prop", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 7, "computed": false, "end": 28, "object": { + "commentStart": 7, "computed": false, "end": 23, "object": { + "commentStart": 7, "computed": false, "end": 17, "object": { + "commentStart": 7, "computed": false, "end": 13, "object": { + "commentStart": 7, "end": 9, "name": "yo", "start": 7, @@ -33,6 +41,7 @@ expression: actual "type": "Identifier" }, "property": { + "commentStart": 10, "end": 13, "name": "one", "start": 10, @@ -44,6 +53,7 @@ expression: actual "type": "MemberExpression" }, "property": { + "commentStart": 14, "end": 17, "name": "two", "start": 14, @@ -55,6 +65,7 @@ expression: actual "type": "MemberExpression" }, "property": { + "commentStart": 18, "end": 23, "name": "three", "start": 18, @@ -66,6 +77,7 @@ expression: actual "type": "MemberExpression" }, "property": { + "commentStart": 24, "end": 28, "name": "four", "start": 24, @@ -86,6 +98,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 28, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__v.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__v.snap index 4eea32a26..8f6f47ff7 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__v.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__v.snap @@ -1,22 +1,27 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 11, "id": { + "commentStart": 0, "end": 3, "name": "pt1", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "computed": false, "end": 11, "object": { + "commentStart": 6, "end": 8, "name": "b1", "start": 6, @@ -24,6 +29,7 @@ expression: actual "type": "Identifier" }, "property": { + "commentStart": 9, "end": 10, "raw": "0", "start": 9, @@ -48,6 +54,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 11, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__w.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__w.snap index 81986cac7..b8882bd07 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__w.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__w.snap @@ -1,22 +1,27 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 16, "id": { + "commentStart": 0, "end": 3, "name": "pt1", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "computed": false, "end": 16, "object": { + "commentStart": 6, "end": 8, "name": "b1", "start": 6, @@ -24,6 +29,7 @@ expression: actual "type": "Identifier" }, "property": { + "commentStart": 9, "end": 15, "raw": "'zero'", "start": 9, @@ -45,6 +51,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 16, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__x.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__x.snap index 87e8d91f3..c1d7c2ee9 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__x.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__x.snap @@ -1,22 +1,27 @@ --- -source: kcl/src/parsing/parser.rs +source: kcl-lib/src/parsing/parser.rs expression: actual --- { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 13, "id": { + "commentStart": 0, "end": 3, "name": "pt1", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "computed": false, "end": 13, "object": { + "commentStart": 6, "end": 8, "name": "b1", "start": 6, @@ -24,6 +29,7 @@ expression: actual "type": "Identifier" }, "property": { + "commentStart": 9, "end": 13, "name": "zero", "start": 9, @@ -44,6 +50,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 13, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__y.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__y.snap index 7ad25b45c..c30c4b1ba 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__y.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__y.snap @@ -5,9 +5,12 @@ expression: actual { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 48, "id": { + "commentStart": 0, "end": 2, "name": "sg", "start": 0, @@ -18,6 +21,7 @@ expression: actual { "arguments": [ { + "commentStart": 19, "end": 21, "name": "XY", "start": 19, @@ -26,11 +30,13 @@ expression: actual } ], "callee": { + "commentStart": 5, "end": 18, "name": "startSketchOn", "start": 5, "type": "Identifier" }, + "commentStart": 5, "end": 22, "start": 5, "type": "CallExpression", @@ -39,6 +45,7 @@ expression: actual { "arguments": [ { + "commentStart": 41, "end": 44, "name": "pos", "start": 41, @@ -46,6 +53,7 @@ expression: actual "type": "Identifier" }, { + "commentStart": 46, "end": 47, "start": 46, "type": "PipeSubstitution", @@ -53,17 +61,20 @@ expression: actual } ], "callee": { + "commentStart": 26, "end": 40, "name": "startProfileAt", "start": 26, "type": "Identifier" }, + "commentStart": 26, "end": 48, "start": 26, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 5, "end": 48, "start": 5, "type": "PipeExpression", @@ -79,6 +90,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 48, "start": 0 } diff --git a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__z.snap b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__z.snap index f8ab1144f..67e3b8dff 100644 --- a/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__z.snap +++ b/rust/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__z.snap @@ -5,9 +5,12 @@ expression: actual { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 73, "id": { + "commentStart": 0, "end": 2, "name": "sg", "start": 0, @@ -18,6 +21,7 @@ expression: actual { "arguments": [ { + "commentStart": 19, "end": 21, "name": "XY", "start": 19, @@ -26,11 +30,13 @@ expression: actual } ], "callee": { + "commentStart": 5, "end": 18, "name": "startSketchOn", "start": 5, "type": "Identifier" }, + "commentStart": 5, "end": 22, "start": 5, "type": "CallExpression", @@ -39,6 +45,7 @@ expression: actual { "arguments": [ { + "commentStart": 45, "end": 48, "name": "pos", "start": 45, @@ -47,11 +54,13 @@ expression: actual } ], "callee": { + "commentStart": 30, "end": 44, "name": "startProfileAt", "start": 30, "type": "Identifier" }, + "commentStart": 30, "end": 49, "start": 30, "type": "CallExpression", @@ -60,8 +69,10 @@ expression: actual { "arguments": [ { + "commentStart": 58, "elements": [ { + "commentStart": 59, "end": 60, "raw": "0", "start": 59, @@ -74,12 +85,14 @@ expression: actual }, { "argument": { + "commentStart": 63, "end": 68, "name": "scale", "start": 63, "type": "Identifier", "type": "Identifier" }, + "commentStart": 62, "end": 68, "operator": "-", "start": 62, @@ -93,6 +106,7 @@ expression: actual "type": "ArrayExpression" }, { + "commentStart": 71, "end": 72, "start": 71, "type": "PipeSubstitution", @@ -100,17 +114,20 @@ expression: actual } ], "callee": { + "commentStart": 53, "end": 57, "name": "line", "start": 53, "type": "Identifier" }, + "commentStart": 53, "end": 73, "start": 53, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 5, "end": 73, "start": 5, "type": "PipeExpression", @@ -126,6 +143,7 @@ expression: actual "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 73, "start": 0 } diff --git a/rust/kcl-lib/src/unparser.rs b/rust/kcl-lib/src/unparser.rs index d14ce2a55..2c7257e4d 100644 --- a/rust/kcl-lib/src/unparser.rs +++ b/rust/kcl-lib/src/unparser.rs @@ -23,19 +23,31 @@ impl Program { .map(|sh| format!("{}\n\n", sh.inner.content)) .unwrap_or_default(); - for attr in &self.inner_attrs { - result.push_str(&attr.recast(options, indentation_level)); - } for start in &self.non_code_meta.start_nodes { result.push_str(&start.recast(options, indentation_level)); } - let result = result; // Remove mutation. + for attr in &self.inner_attrs { + result.push_str(&attr.recast(options, indentation_level)); + } + if !self.inner_attrs.is_empty() { + result.push('\n'); + } + let result = result; // Remove mutation. let result = self .body .iter() .map(|body_item| { let mut result = String::new(); + for comment in body_item.get_comments() { + if !comment.is_empty() { + result.push_str(&indentation); + result.push_str(comment); + } + if !result.ends_with("\n\n") && result != "\n" { + result.push('\n'); + } + } for attr in body_item.get_attrs() { result.push_str(&attr.recast(options, indentation_level)); } @@ -173,7 +185,18 @@ impl Node { impl Node { fn recast(&self, options: &FormatOptions, indentation_level: usize) -> String { - let mut result = "@".to_owned(); + let indentation = options.get_indentation(indentation_level); + let mut result = String::new(); + for comment in &self.pre_comments { + if !comment.is_empty() { + result.push_str(&indentation); + result.push_str(comment); + } + if !comment.ends_with("*/") && !result.ends_with("\n\n") && result != "\n" { + result.push('\n'); + } + } + result.push('@'); if let Some(name) = &self.name { result.push_str(&name.name); } @@ -956,6 +979,7 @@ mod tests { fn test_recast_annotations_in_function_body() { let input = r#"fn myFunc() { @meta(yes = true) + x = 2 } "#; @@ -975,6 +999,25 @@ mod tests { assert_eq!(output, input); } + #[test] + fn recast_annotations_with_comments() { + let input = r#"// Start comment + +// Comment on attr +@settings(defaultLengthUnit = in) + +// Comment on item +foo = 42 + +// Comment on another item +@(impl = kcl) +bar = 0 +"#; + let program = crate::parsing::top_level_parse(input).unwrap(); + let output = program.recast(&Default::default(), 0); + assert_eq!(output, input); + } + #[test] fn test_recast_if_else_if_same() { let input = r#"b = if false { @@ -1241,7 +1284,6 @@ outsideRevolve = startSketchOn('XZ') r#"// Ball Bearing // A ball bearing is a type of rolling-element bearing that uses balls to maintain the separation between the bearing races. The primary purpose of a ball bearing is to reduce rotational friction and support radial and axial loads. - // Define constants like ball diameter, inside diameter, overhange length, and thickness sphereDia = 0.5 insideDia = 1 @@ -1643,6 +1685,7 @@ tabs_l = startSketchOn({ assert_eq!( recasted, r#"@settings(units = mm) + // define nts radius = 6.0 width = 144.0 @@ -2633,4 +2676,35 @@ sketch002 = startSketchOn({ ); } } + + #[test] + fn code_with_comment_and_extra_lines() { + let code = r#"yo = 'c' + +/* this is +a +comment */ +yo = 'bing' +"#; + let ast = crate::parsing::top_level_parse(code).unwrap(); + let recasted = ast.recast(&FormatOptions::new(), 0); + assert_eq!(recasted, code); + } + + #[test] + fn comments_in_a_fn_block() { + let code = r#"fn myFn() { + // this is a comment + yo = { a = { b = { c = '123' } } } + + /* block + comment */ + key = 'c' + // this is also a comment +} +"#; + let ast = crate::parsing::top_level_parse(code).unwrap(); + let recasted = ast.recast(&FormatOptions::new(), 0); + assert_eq!(recasted, code); + } } diff --git a/rust/kcl-lib/tests/add_lots/ast.snap b/rust/kcl-lib/tests/add_lots/ast.snap index f0b739f58..b17c9ad2d 100644 --- a/rust/kcl-lib/tests/add_lots/ast.snap +++ b/rust/kcl-lib/tests/add_lots/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing add_lots.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "f", "start": 0, @@ -19,8 +22,10 @@ description: Result of parsing add_lots.kcl "body": [ { "argument": { + "commentStart": 19, "end": 0, "left": { + "commentStart": 19, "end": 0, "name": "i", "start": 0, @@ -29,6 +34,7 @@ description: Result of parsing add_lots.kcl }, "operator": "*", "right": { + "commentStart": 23, "end": 0, "raw": "2", "start": 0, @@ -43,20 +49,24 @@ description: Result of parsing add_lots.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 12, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 8, "end": 0, "start": 0 }, + "commentStart": 4, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 5, "end": 0, "name": "i", "start": 0, @@ -78,217 +88,321 @@ description: Result of parsing add_lots.kcl "type": "VariableDeclaration" }, { + "commentStart": 26, "declaration": { + "commentStart": 28, "end": 0, "id": { + "commentStart": 28, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "left": { "arguments": [ { + "commentStart": 34, "end": 0, "raw": "0", "start": 0, @@ -301,11 +415,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 32, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 32, "end": 0, "start": 0, "type": "CallExpression", @@ -315,6 +431,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 41, "end": 0, "raw": "1", "start": 0, @@ -327,11 +444,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 39, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 39, "end": 0, "start": 0, "type": "CallExpression", @@ -345,6 +464,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 48, "end": 0, "raw": "2", "start": 0, @@ -357,11 +477,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 46, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 46, "end": 0, "start": 0, "type": "CallExpression", @@ -375,6 +497,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 55, "end": 0, "raw": "3", "start": 0, @@ -387,11 +510,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 53, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 53, "end": 0, "start": 0, "type": "CallExpression", @@ -405,6 +530,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 62, "end": 0, "raw": "4", "start": 0, @@ -417,11 +543,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 60, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 60, "end": 0, "start": 0, "type": "CallExpression", @@ -435,6 +563,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 69, "end": 0, "raw": "5", "start": 0, @@ -447,11 +576,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 67, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 67, "end": 0, "start": 0, "type": "CallExpression", @@ -465,6 +596,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 76, "end": 0, "raw": "6", "start": 0, @@ -477,11 +609,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 74, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 74, "end": 0, "start": 0, "type": "CallExpression", @@ -495,6 +629,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 83, "end": 0, "raw": "7", "start": 0, @@ -507,11 +642,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 81, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 81, "end": 0, "start": 0, "type": "CallExpression", @@ -525,6 +662,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 90, "end": 0, "raw": "8", "start": 0, @@ -537,11 +675,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 88, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 88, "end": 0, "start": 0, "type": "CallExpression", @@ -555,6 +695,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 97, "end": 0, "raw": "9", "start": 0, @@ -567,11 +708,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 95, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 95, "end": 0, "start": 0, "type": "CallExpression", @@ -585,6 +728,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 104, "end": 0, "raw": "10", "start": 0, @@ -597,11 +741,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 102, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 102, "end": 0, "start": 0, "type": "CallExpression", @@ -615,6 +761,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 112, "end": 0, "raw": "11", "start": 0, @@ -627,11 +774,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 110, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 110, "end": 0, "start": 0, "type": "CallExpression", @@ -645,6 +794,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 120, "end": 0, "raw": "12", "start": 0, @@ -657,11 +807,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 118, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 118, "end": 0, "start": 0, "type": "CallExpression", @@ -675,6 +827,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 128, "end": 0, "raw": "13", "start": 0, @@ -687,11 +840,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 126, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 126, "end": 0, "start": 0, "type": "CallExpression", @@ -705,6 +860,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 136, "end": 0, "raw": "14", "start": 0, @@ -717,11 +873,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 134, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 134, "end": 0, "start": 0, "type": "CallExpression", @@ -735,6 +893,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 144, "end": 0, "raw": "15", "start": 0, @@ -747,11 +906,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 142, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 142, "end": 0, "start": 0, "type": "CallExpression", @@ -765,6 +926,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 152, "end": 0, "raw": "16", "start": 0, @@ -777,11 +939,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 150, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 150, "end": 0, "start": 0, "type": "CallExpression", @@ -795,6 +959,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 160, "end": 0, "raw": "17", "start": 0, @@ -807,11 +972,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 158, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 158, "end": 0, "start": 0, "type": "CallExpression", @@ -825,6 +992,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 168, "end": 0, "raw": "18", "start": 0, @@ -837,11 +1005,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 166, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 166, "end": 0, "start": 0, "type": "CallExpression", @@ -855,6 +1025,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 176, "end": 0, "raw": "19", "start": 0, @@ -867,11 +1038,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 174, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 174, "end": 0, "start": 0, "type": "CallExpression", @@ -885,6 +1058,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 184, "end": 0, "raw": "20", "start": 0, @@ -897,11 +1071,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 182, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 182, "end": 0, "start": 0, "type": "CallExpression", @@ -915,6 +1091,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 192, "end": 0, "raw": "21", "start": 0, @@ -927,11 +1104,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 190, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 190, "end": 0, "start": 0, "type": "CallExpression", @@ -945,6 +1124,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 200, "end": 0, "raw": "22", "start": 0, @@ -957,11 +1137,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 198, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 198, "end": 0, "start": 0, "type": "CallExpression", @@ -975,6 +1157,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 208, "end": 0, "raw": "23", "start": 0, @@ -987,11 +1170,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 206, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 206, "end": 0, "start": 0, "type": "CallExpression", @@ -1005,6 +1190,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 216, "end": 0, "raw": "24", "start": 0, @@ -1017,11 +1203,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 214, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 214, "end": 0, "start": 0, "type": "CallExpression", @@ -1035,6 +1223,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 224, "end": 0, "raw": "25", "start": 0, @@ -1047,11 +1236,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 222, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 222, "end": 0, "start": 0, "type": "CallExpression", @@ -1065,6 +1256,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 232, "end": 0, "raw": "26", "start": 0, @@ -1077,11 +1269,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 230, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 230, "end": 0, "start": 0, "type": "CallExpression", @@ -1095,6 +1289,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 240, "end": 0, "raw": "27", "start": 0, @@ -1107,11 +1302,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 238, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 238, "end": 0, "start": 0, "type": "CallExpression", @@ -1125,6 +1322,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 248, "end": 0, "raw": "28", "start": 0, @@ -1137,11 +1335,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 246, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 246, "end": 0, "start": 0, "type": "CallExpression", @@ -1155,6 +1355,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 256, "end": 0, "raw": "29", "start": 0, @@ -1167,11 +1368,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 254, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 254, "end": 0, "start": 0, "type": "CallExpression", @@ -1185,6 +1388,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 264, "end": 0, "raw": "30", "start": 0, @@ -1197,11 +1401,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 262, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 262, "end": 0, "start": 0, "type": "CallExpression", @@ -1215,6 +1421,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 272, "end": 0, "raw": "31", "start": 0, @@ -1227,11 +1434,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 270, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 270, "end": 0, "start": 0, "type": "CallExpression", @@ -1245,6 +1454,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 280, "end": 0, "raw": "32", "start": 0, @@ -1257,11 +1467,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 278, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 278, "end": 0, "start": 0, "type": "CallExpression", @@ -1275,6 +1487,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 288, "end": 0, "raw": "33", "start": 0, @@ -1287,11 +1500,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 286, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 286, "end": 0, "start": 0, "type": "CallExpression", @@ -1305,6 +1520,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 296, "end": 0, "raw": "34", "start": 0, @@ -1317,11 +1533,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 294, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 294, "end": 0, "start": 0, "type": "CallExpression", @@ -1335,6 +1553,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 304, "end": 0, "raw": "35", "start": 0, @@ -1347,11 +1566,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 302, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 302, "end": 0, "start": 0, "type": "CallExpression", @@ -1365,6 +1586,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 312, "end": 0, "raw": "36", "start": 0, @@ -1377,11 +1599,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 310, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 310, "end": 0, "start": 0, "type": "CallExpression", @@ -1395,6 +1619,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 320, "end": 0, "raw": "37", "start": 0, @@ -1407,11 +1632,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 318, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 318, "end": 0, "start": 0, "type": "CallExpression", @@ -1425,6 +1652,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 328, "end": 0, "raw": "38", "start": 0, @@ -1437,11 +1665,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 326, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 326, "end": 0, "start": 0, "type": "CallExpression", @@ -1455,6 +1685,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 336, "end": 0, "raw": "39", "start": 0, @@ -1467,11 +1698,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 334, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 334, "end": 0, "start": 0, "type": "CallExpression", @@ -1485,6 +1718,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 344, "end": 0, "raw": "40", "start": 0, @@ -1497,11 +1731,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 342, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 342, "end": 0, "start": 0, "type": "CallExpression", @@ -1515,6 +1751,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 352, "end": 0, "raw": "41", "start": 0, @@ -1527,11 +1764,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 350, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 350, "end": 0, "start": 0, "type": "CallExpression", @@ -1545,6 +1784,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 360, "end": 0, "raw": "42", "start": 0, @@ -1557,11 +1797,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 358, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 358, "end": 0, "start": 0, "type": "CallExpression", @@ -1575,6 +1817,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 368, "end": 0, "raw": "43", "start": 0, @@ -1587,11 +1830,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 366, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 366, "end": 0, "start": 0, "type": "CallExpression", @@ -1605,6 +1850,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 376, "end": 0, "raw": "44", "start": 0, @@ -1617,11 +1863,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 374, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 374, "end": 0, "start": 0, "type": "CallExpression", @@ -1635,6 +1883,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 384, "end": 0, "raw": "45", "start": 0, @@ -1647,11 +1896,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 382, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 382, "end": 0, "start": 0, "type": "CallExpression", @@ -1665,6 +1916,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 392, "end": 0, "raw": "46", "start": 0, @@ -1677,11 +1929,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 390, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 390, "end": 0, "start": 0, "type": "CallExpression", @@ -1695,6 +1949,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 400, "end": 0, "raw": "47", "start": 0, @@ -1707,11 +1962,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 398, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 398, "end": 0, "start": 0, "type": "CallExpression", @@ -1725,6 +1982,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 408, "end": 0, "raw": "48", "start": 0, @@ -1737,11 +1995,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 406, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 406, "end": 0, "start": 0, "type": "CallExpression", @@ -1755,6 +2015,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 416, "end": 0, "raw": "49", "start": 0, @@ -1767,11 +2028,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 414, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 414, "end": 0, "start": 0, "type": "CallExpression", @@ -1785,6 +2048,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 424, "end": 0, "raw": "50", "start": 0, @@ -1797,11 +2061,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 422, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 422, "end": 0, "start": 0, "type": "CallExpression", @@ -1815,6 +2081,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 432, "end": 0, "raw": "51", "start": 0, @@ -1827,11 +2094,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 430, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 430, "end": 0, "start": 0, "type": "CallExpression", @@ -1845,6 +2114,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 440, "end": 0, "raw": "52", "start": 0, @@ -1857,11 +2127,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 438, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 438, "end": 0, "start": 0, "type": "CallExpression", @@ -1875,6 +2147,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 448, "end": 0, "raw": "53", "start": 0, @@ -1887,11 +2160,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 446, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 446, "end": 0, "start": 0, "type": "CallExpression", @@ -1905,6 +2180,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 456, "end": 0, "raw": "54", "start": 0, @@ -1917,11 +2193,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 454, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 454, "end": 0, "start": 0, "type": "CallExpression", @@ -1935,6 +2213,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 464, "end": 0, "raw": "55", "start": 0, @@ -1947,11 +2226,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 462, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 462, "end": 0, "start": 0, "type": "CallExpression", @@ -1965,6 +2246,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 472, "end": 0, "raw": "56", "start": 0, @@ -1977,11 +2259,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 470, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 470, "end": 0, "start": 0, "type": "CallExpression", @@ -1995,6 +2279,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 480, "end": 0, "raw": "57", "start": 0, @@ -2007,11 +2292,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 478, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 478, "end": 0, "start": 0, "type": "CallExpression", @@ -2025,6 +2312,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 488, "end": 0, "raw": "58", "start": 0, @@ -2037,11 +2325,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 486, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 486, "end": 0, "start": 0, "type": "CallExpression", @@ -2055,6 +2345,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 496, "end": 0, "raw": "59", "start": 0, @@ -2067,11 +2358,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 494, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 494, "end": 0, "start": 0, "type": "CallExpression", @@ -2085,6 +2378,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 504, "end": 0, "raw": "60", "start": 0, @@ -2097,11 +2391,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 502, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 502, "end": 0, "start": 0, "type": "CallExpression", @@ -2115,6 +2411,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 512, "end": 0, "raw": "61", "start": 0, @@ -2127,11 +2424,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 510, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 510, "end": 0, "start": 0, "type": "CallExpression", @@ -2145,6 +2444,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 520, "end": 0, "raw": "62", "start": 0, @@ -2157,11 +2457,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 518, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 518, "end": 0, "start": 0, "type": "CallExpression", @@ -2175,6 +2477,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 528, "end": 0, "raw": "63", "start": 0, @@ -2187,11 +2490,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 526, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 526, "end": 0, "start": 0, "type": "CallExpression", @@ -2205,6 +2510,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 536, "end": 0, "raw": "64", "start": 0, @@ -2217,11 +2523,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 534, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 534, "end": 0, "start": 0, "type": "CallExpression", @@ -2235,6 +2543,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 544, "end": 0, "raw": "65", "start": 0, @@ -2247,11 +2556,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 542, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 542, "end": 0, "start": 0, "type": "CallExpression", @@ -2265,6 +2576,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 552, "end": 0, "raw": "66", "start": 0, @@ -2277,11 +2589,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 550, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 550, "end": 0, "start": 0, "type": "CallExpression", @@ -2295,6 +2609,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 560, "end": 0, "raw": "67", "start": 0, @@ -2307,11 +2622,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 558, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 558, "end": 0, "start": 0, "type": "CallExpression", @@ -2325,6 +2642,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 568, "end": 0, "raw": "68", "start": 0, @@ -2337,11 +2655,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 566, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 566, "end": 0, "start": 0, "type": "CallExpression", @@ -2355,6 +2675,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 576, "end": 0, "raw": "69", "start": 0, @@ -2367,11 +2688,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 574, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 574, "end": 0, "start": 0, "type": "CallExpression", @@ -2385,6 +2708,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 584, "end": 0, "raw": "70", "start": 0, @@ -2397,11 +2721,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 582, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 582, "end": 0, "start": 0, "type": "CallExpression", @@ -2415,6 +2741,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 592, "end": 0, "raw": "71", "start": 0, @@ -2427,11 +2754,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 590, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 590, "end": 0, "start": 0, "type": "CallExpression", @@ -2445,6 +2774,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 600, "end": 0, "raw": "72", "start": 0, @@ -2457,11 +2787,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 598, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 598, "end": 0, "start": 0, "type": "CallExpression", @@ -2475,6 +2807,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 608, "end": 0, "raw": "73", "start": 0, @@ -2487,11 +2820,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 606, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 606, "end": 0, "start": 0, "type": "CallExpression", @@ -2505,6 +2840,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 616, "end": 0, "raw": "74", "start": 0, @@ -2517,11 +2853,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 614, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 614, "end": 0, "start": 0, "type": "CallExpression", @@ -2535,6 +2873,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 624, "end": 0, "raw": "75", "start": 0, @@ -2547,11 +2886,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 622, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 622, "end": 0, "start": 0, "type": "CallExpression", @@ -2565,6 +2906,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 632, "end": 0, "raw": "76", "start": 0, @@ -2577,11 +2919,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 630, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 630, "end": 0, "start": 0, "type": "CallExpression", @@ -2595,6 +2939,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 640, "end": 0, "raw": "77", "start": 0, @@ -2607,11 +2952,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 638, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 638, "end": 0, "start": 0, "type": "CallExpression", @@ -2625,6 +2972,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 648, "end": 0, "raw": "78", "start": 0, @@ -2637,11 +2985,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 646, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 646, "end": 0, "start": 0, "type": "CallExpression", @@ -2655,6 +3005,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 656, "end": 0, "raw": "79", "start": 0, @@ -2667,11 +3018,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 654, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 654, "end": 0, "start": 0, "type": "CallExpression", @@ -2685,6 +3038,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 664, "end": 0, "raw": "80", "start": 0, @@ -2697,11 +3051,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 662, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 662, "end": 0, "start": 0, "type": "CallExpression", @@ -2715,6 +3071,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 672, "end": 0, "raw": "81", "start": 0, @@ -2727,11 +3084,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 670, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 670, "end": 0, "start": 0, "type": "CallExpression", @@ -2745,6 +3104,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 680, "end": 0, "raw": "82", "start": 0, @@ -2757,11 +3117,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 678, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 678, "end": 0, "start": 0, "type": "CallExpression", @@ -2775,6 +3137,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 688, "end": 0, "raw": "83", "start": 0, @@ -2787,11 +3150,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 686, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 686, "end": 0, "start": 0, "type": "CallExpression", @@ -2805,6 +3170,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 696, "end": 0, "raw": "84", "start": 0, @@ -2817,11 +3183,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 694, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 694, "end": 0, "start": 0, "type": "CallExpression", @@ -2835,6 +3203,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 704, "end": 0, "raw": "85", "start": 0, @@ -2847,11 +3216,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 702, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 702, "end": 0, "start": 0, "type": "CallExpression", @@ -2865,6 +3236,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 712, "end": 0, "raw": "86", "start": 0, @@ -2877,11 +3249,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 710, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 710, "end": 0, "start": 0, "type": "CallExpression", @@ -2895,6 +3269,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 720, "end": 0, "raw": "87", "start": 0, @@ -2907,11 +3282,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 718, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 718, "end": 0, "start": 0, "type": "CallExpression", @@ -2925,6 +3302,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 728, "end": 0, "raw": "88", "start": 0, @@ -2937,11 +3315,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 726, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 726, "end": 0, "start": 0, "type": "CallExpression", @@ -2955,6 +3335,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 736, "end": 0, "raw": "89", "start": 0, @@ -2967,11 +3348,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 734, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 734, "end": 0, "start": 0, "type": "CallExpression", @@ -2985,6 +3368,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 744, "end": 0, "raw": "90", "start": 0, @@ -2997,11 +3381,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 742, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 742, "end": 0, "start": 0, "type": "CallExpression", @@ -3015,6 +3401,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 752, "end": 0, "raw": "91", "start": 0, @@ -3027,11 +3414,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 750, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 750, "end": 0, "start": 0, "type": "CallExpression", @@ -3045,6 +3434,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 760, "end": 0, "raw": "92", "start": 0, @@ -3057,11 +3447,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 758, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 758, "end": 0, "start": 0, "type": "CallExpression", @@ -3075,6 +3467,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 768, "end": 0, "raw": "93", "start": 0, @@ -3087,11 +3480,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 766, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 766, "end": 0, "start": 0, "type": "CallExpression", @@ -3105,6 +3500,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 776, "end": 0, "raw": "94", "start": 0, @@ -3117,11 +3513,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 774, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 774, "end": 0, "start": 0, "type": "CallExpression", @@ -3135,6 +3533,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 784, "end": 0, "raw": "95", "start": 0, @@ -3147,11 +3546,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 782, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 782, "end": 0, "start": 0, "type": "CallExpression", @@ -3165,6 +3566,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 792, "end": 0, "raw": "96", "start": 0, @@ -3177,11 +3579,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 790, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 790, "end": 0, "start": 0, "type": "CallExpression", @@ -3195,6 +3599,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 800, "end": 0, "raw": "97", "start": 0, @@ -3207,11 +3612,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 798, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 798, "end": 0, "start": 0, "type": "CallExpression", @@ -3225,6 +3632,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 808, "end": 0, "raw": "98", "start": 0, @@ -3237,11 +3645,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 806, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 806, "end": 0, "start": 0, "type": "CallExpression", @@ -3255,6 +3665,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 816, "end": 0, "raw": "99", "start": 0, @@ -3267,11 +3678,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 814, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 814, "end": 0, "start": 0, "type": "CallExpression", @@ -3285,6 +3698,7 @@ description: Result of parsing add_lots.kcl "right": { "arguments": [ { + "commentStart": 824, "end": 0, "raw": "100", "start": 0, @@ -3297,11 +3711,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 822, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 822, "end": 0, "start": 0, "type": "CallExpression", @@ -3321,10 +3737,12 @@ description: Result of parsing add_lots.kcl "type": "VariableDeclaration" }, { + "commentStart": 828, "end": 0, "expression": { "arguments": [ { + "commentStart": 842, "end": 0, "name": "x", "start": 0, @@ -3332,6 +3750,7 @@ description: Result of parsing add_lots.kcl "type": "Identifier" }, { + "commentStart": 845, "end": 0, "raw": "10100", "start": 0, @@ -3343,6 +3762,7 @@ description: Result of parsing add_lots.kcl } }, { + "commentStart": 852, "end": 0, "raw": "0.1", "start": 0, @@ -3354,6 +3774,7 @@ description: Result of parsing add_lots.kcl } }, { + "commentStart": 857, "end": 0, "raw": "\"Big sum\"", "start": 0, @@ -3363,11 +3784,13 @@ description: Result of parsing add_lots.kcl } ], "callee": { + "commentStart": 830, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 830, "end": 0, "start": 0, "type": "CallExpression", @@ -3378,11 +3801,13 @@ description: Result of parsing add_lots.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 26, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3393,6 +3818,7 @@ description: Result of parsing add_lots.kcl ], "1": [ { + "commentStart": 828, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/angled_line/ast.snap b/rust/kcl-lib/tests/angled_line/ast.snap index fc511d3df..076f244f6 100644 --- a/rust/kcl-lib/tests/angled_line/ast.snap +++ b/rust/kcl-lib/tests/angled_line/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing angled_line.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "part001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing angled_line.kcl { "arguments": [ { + "commentStart": 24, "end": 0, "raw": "'XY'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing angled_line.kcl } ], "callee": { + "commentStart": 10, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 10, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing angled_line.kcl { "arguments": [ { + "commentStart": 50, "elements": [ { + "commentStart": 51, "end": 0, "raw": "4.83", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing angled_line.kcl } }, { + "commentStart": 57, "end": 0, "raw": "12.56", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing angled_line.kcl "type": "ArrayExpression" }, { + "commentStart": 65, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing angled_line.kcl } ], "callee": { + "commentStart": 35, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 35, "end": 0, "start": 0, "type": "CallExpression", @@ -93,14 +105,17 @@ description: Result of parsing angled_line.kcl { "type": "LabeledArg", "label": { + "commentStart": 78, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 84, "elements": [ { + "commentStart": 85, "end": 0, "raw": "15.1", "start": 0, @@ -112,6 +127,7 @@ description: Result of parsing angled_line.kcl } }, { + "commentStart": 91, "end": 0, "raw": "2.48", "start": 0, @@ -131,11 +147,13 @@ description: Result of parsing angled_line.kcl } ], "callee": { + "commentStart": 73, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 73, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -147,14 +165,17 @@ description: Result of parsing angled_line.kcl { "type": "LabeledArg", "label": { + "commentStart": 108, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 114, "elements": [ { + "commentStart": 115, "end": 0, "raw": "3.15", "start": 0, @@ -167,6 +188,7 @@ description: Result of parsing angled_line.kcl }, { "argument": { + "commentStart": 122, "end": 0, "raw": "9.85", "start": 0, @@ -177,6 +199,7 @@ description: Result of parsing angled_line.kcl "suffix": "None" } }, + "commentStart": 121, "end": 0, "operator": "-", "start": 0, @@ -193,12 +216,14 @@ description: Result of parsing angled_line.kcl { "type": "LabeledArg", "label": { + "commentStart": 129, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 135, "end": 0, "start": 0, "type": "TagDeclarator", @@ -208,11 +233,13 @@ description: Result of parsing angled_line.kcl } ], "callee": { + "commentStart": 103, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 103, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -224,15 +251,18 @@ description: Result of parsing angled_line.kcl { "type": "LabeledArg", "label": { + "commentStart": 153, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 159, "elements": [ { "argument": { + "commentStart": 161, "end": 0, "raw": "15.17", "start": 0, @@ -243,6 +273,7 @@ description: Result of parsing angled_line.kcl "suffix": "None" } }, + "commentStart": 160, "end": 0, "operator": "-", "start": 0, @@ -251,6 +282,7 @@ description: Result of parsing angled_line.kcl }, { "argument": { + "commentStart": 169, "end": 0, "raw": "4.1", "start": 0, @@ -261,6 +293,7 @@ description: Result of parsing angled_line.kcl "suffix": "None" } }, + "commentStart": 168, "end": 0, "operator": "-", "start": 0, @@ -276,11 +309,13 @@ description: Result of parsing angled_line.kcl } ], "callee": { + "commentStart": 148, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 148, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -290,10 +325,12 @@ description: Result of parsing angled_line.kcl { "arguments": [ { + "commentStart": 191, "elements": [ { "arguments": [ { + "commentStart": 199, "end": 0, "name": "seg01", "start": 0, @@ -302,17 +339,20 @@ description: Result of parsing angled_line.kcl } ], "callee": { + "commentStart": 192, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 192, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { + "commentStart": 207, "end": 0, "raw": "12.35", "start": 0, @@ -330,6 +370,7 @@ description: Result of parsing angled_line.kcl "type": "ArrayExpression" }, { + "commentStart": 215, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -337,11 +378,13 @@ description: Result of parsing angled_line.kcl } ], "callee": { + "commentStart": 180, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 180, "end": 0, "start": 0, "type": "CallExpression", @@ -352,15 +395,18 @@ description: Result of parsing angled_line.kcl { "type": "LabeledArg", "label": { + "commentStart": 228, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 234, "elements": [ { "argument": { + "commentStart": 236, "end": 0, "raw": "13.02", "start": 0, @@ -371,6 +417,7 @@ description: Result of parsing angled_line.kcl "suffix": "None" } }, + "commentStart": 235, "end": 0, "operator": "-", "start": 0, @@ -378,6 +425,7 @@ description: Result of parsing angled_line.kcl "type": "UnaryExpression" }, { + "commentStart": 243, "end": 0, "raw": "10.03", "start": 0, @@ -397,11 +445,13 @@ description: Result of parsing angled_line.kcl } ], "callee": { + "commentStart": 223, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 223, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -411,6 +461,7 @@ description: Result of parsing angled_line.kcl { "arguments": [ { + "commentStart": 262, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -418,11 +469,13 @@ description: Result of parsing angled_line.kcl } ], "callee": { + "commentStart": 256, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 256, "end": 0, "start": 0, "type": "CallExpression", @@ -433,12 +486,14 @@ description: Result of parsing angled_line.kcl { "type": "LabeledArg", "label": { + "commentStart": 278, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 287, "end": 0, "raw": "4", "start": 0, @@ -452,11 +507,13 @@ description: Result of parsing angled_line.kcl } ], "callee": { + "commentStart": 270, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 270, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -464,6 +521,7 @@ description: Result of parsing angled_line.kcl "unlabeled": null } ], + "commentStart": 10, "end": 0, "start": 0, "type": "PipeExpression", @@ -479,6 +537,7 @@ description: Result of parsing angled_line.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/angled_line/program_memory.snap b/rust/kcl-lib/tests/angled_line/program_memory.snap index 11120f299..5a4ebee04 100644 --- a/rust/kcl-lib/tests/angled_line/program_memory.snap +++ b/rust/kcl-lib/tests/angled_line/program_memory.snap @@ -22,6 +22,7 @@ description: Variables in memory after executing angled_line.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 135, "end": 141, "start": 135, "type": "TagDeclarator", @@ -91,6 +92,7 @@ description: Variables in memory after executing angled_line.kcl 15.04 ], "tag": { + "commentStart": 135, "end": 141, "start": 135, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/argument_error/ast.snap b/rust/kcl-lib/tests/argument_error/ast.snap index ff9f77dc0..5d579f6cc 100644 --- a/rust/kcl-lib/tests/argument_error/ast.snap +++ b/rust/kcl-lib/tests/argument_error/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing argument_error.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "f", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing argument_error.kcl "body": [ { "argument": { + "commentStart": 19, "end": 0, "raw": "5", "start": 0, @@ -29,20 +33,24 @@ description: Result of parsing argument_error.kcl "suffix": "None" } }, + "commentStart": 12, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 8, "end": 0, "start": 0 }, + "commentStart": 4, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 5, "end": 0, "name": "i", "start": 0, @@ -64,10 +72,12 @@ description: Result of parsing argument_error.kcl "type": "VariableDeclaration" }, { + "commentStart": 22, "end": 0, "expression": { "arguments": [ { + "commentStart": 28, "end": 0, "name": "f", "start": 0, @@ -75,8 +85,10 @@ description: Result of parsing argument_error.kcl "type": "Identifier" }, { + "commentStart": 31, "elements": [ { + "commentStart": 32, "end": 0, "raw": "0", "start": 0, @@ -88,6 +100,7 @@ description: Result of parsing argument_error.kcl } }, { + "commentStart": 35, "end": 0, "raw": "1", "start": 0, @@ -106,11 +119,13 @@ description: Result of parsing argument_error.kcl } ], "callee": { + "commentStart": 24, "end": 0, "name": "map", "start": 0, "type": "Identifier" }, + "commentStart": 24, "end": 0, "start": 0, "type": "CallExpression", @@ -121,11 +136,13 @@ description: Result of parsing argument_error.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 22, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/array_elem_pop/ast.snap b/rust/kcl-lib/tests/array_elem_pop/ast.snap index a19f72538..7af930e73 100644 --- a/rust/kcl-lib/tests/array_elem_pop/ast.snap +++ b/rust/kcl-lib/tests/array_elem_pop/ast.snap @@ -6,17 +6,22 @@ description: Result of parsing array_elem_pop.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "arr", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "elements": [ { + "commentStart": 7, "end": 0, "raw": "1", "start": 0, @@ -28,6 +33,7 @@ description: Result of parsing array_elem_pop.kcl } }, { + "commentStart": 10, "end": 0, "raw": "2", "start": 0, @@ -39,6 +45,7 @@ description: Result of parsing array_elem_pop.kcl } }, { + "commentStart": 13, "end": 0, "raw": "3", "start": 0, @@ -65,9 +72,12 @@ description: Result of parsing array_elem_pop.kcl "type": "VariableDeclaration" }, { + "commentStart": 16, "declaration": { + "commentStart": 16, "end": 0, "id": { + "commentStart": 16, "end": 0, "name": "new_arr1", "start": 0, @@ -76,6 +86,7 @@ description: Result of parsing array_elem_pop.kcl "init": { "arguments": [ { + "commentStart": 31, "end": 0, "name": "arr", "start": 0, @@ -84,11 +95,13 @@ description: Result of parsing array_elem_pop.kcl } ], "callee": { + "commentStart": 27, "end": 0, "name": "pop", "start": 0, "type": "Identifier" }, + "commentStart": 27, "end": 0, "start": 0, "type": "CallExpression", @@ -104,9 +117,12 @@ description: Result of parsing array_elem_pop.kcl "type": "VariableDeclaration" }, { + "commentStart": 36, "declaration": { + "commentStart": 36, "end": 0, "id": { + "commentStart": 36, "end": 0, "name": "new_arr2", "start": 0, @@ -115,6 +131,7 @@ description: Result of parsing array_elem_pop.kcl "init": { "arguments": [ { + "commentStart": 51, "end": 0, "name": "new_arr1", "start": 0, @@ -123,11 +140,13 @@ description: Result of parsing array_elem_pop.kcl } ], "callee": { + "commentStart": 47, "end": 0, "name": "pop", "start": 0, "type": "Identifier" }, + "commentStart": 47, "end": 0, "start": 0, "type": "CallExpression", @@ -143,9 +162,12 @@ description: Result of parsing array_elem_pop.kcl "type": "VariableDeclaration" }, { + "commentStart": 61, "declaration": { + "commentStart": 61, "end": 0, "id": { + "commentStart": 61, "end": 0, "name": "new_arr3", "start": 0, @@ -154,6 +176,7 @@ description: Result of parsing array_elem_pop.kcl "init": { "arguments": [ { + "commentStart": 76, "end": 0, "name": "new_arr2", "start": 0, @@ -162,11 +185,13 @@ description: Result of parsing array_elem_pop.kcl } ], "callee": { + "commentStart": 72, "end": 0, "name": "pop", "start": 0, "type": "Identifier" }, + "commentStart": 72, "end": 0, "start": 0, "type": "CallExpression", @@ -182,13 +207,16 @@ description: Result of parsing array_elem_pop.kcl "type": "VariableDeclaration" }, { + "commentStart": 86, "end": 0, "expression": { "arguments": [ { + "commentStart": 98, "computed": false, "end": 0, "object": { + "commentStart": 98, "end": 0, "name": "new_arr1", "start": 0, @@ -196,6 +224,7 @@ description: Result of parsing array_elem_pop.kcl "type": "Identifier" }, "property": { + "commentStart": 107, "end": 0, "raw": "0", "start": 0, @@ -211,6 +240,7 @@ description: Result of parsing array_elem_pop.kcl "type": "MemberExpression" }, { + "commentStart": 111, "end": 0, "raw": "1", "start": 0, @@ -222,6 +252,7 @@ description: Result of parsing array_elem_pop.kcl } }, { + "commentStart": 114, "end": 0, "raw": "0.00001", "start": 0, @@ -233,6 +264,7 @@ description: Result of parsing array_elem_pop.kcl } }, { + "commentStart": 123, "end": 0, "raw": "\"element 0 should not have changed\"", "start": 0, @@ -242,11 +274,13 @@ description: Result of parsing array_elem_pop.kcl } ], "callee": { + "commentStart": 86, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 86, "end": 0, "start": 0, "type": "CallExpression", @@ -257,13 +291,16 @@ description: Result of parsing array_elem_pop.kcl "type": "ExpressionStatement" }, { + "commentStart": 160, "end": 0, "expression": { "arguments": [ { + "commentStart": 172, "computed": false, "end": 0, "object": { + "commentStart": 172, "end": 0, "name": "new_arr1", "start": 0, @@ -271,6 +308,7 @@ description: Result of parsing array_elem_pop.kcl "type": "Identifier" }, "property": { + "commentStart": 181, "end": 0, "raw": "1", "start": 0, @@ -286,6 +324,7 @@ description: Result of parsing array_elem_pop.kcl "type": "MemberExpression" }, { + "commentStart": 185, "end": 0, "raw": "2", "start": 0, @@ -297,6 +336,7 @@ description: Result of parsing array_elem_pop.kcl } }, { + "commentStart": 188, "end": 0, "raw": "0.00001", "start": 0, @@ -308,6 +348,7 @@ description: Result of parsing array_elem_pop.kcl } }, { + "commentStart": 197, "end": 0, "raw": "\"element 1 should not have changed\"", "start": 0, @@ -317,11 +358,13 @@ description: Result of parsing array_elem_pop.kcl } ], "callee": { + "commentStart": 160, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 160, "end": 0, "start": 0, "type": "CallExpression", @@ -332,13 +375,16 @@ description: Result of parsing array_elem_pop.kcl "type": "ExpressionStatement" }, { + "commentStart": 234, "end": 0, "expression": { "arguments": [ { + "commentStart": 246, "computed": false, "end": 0, "object": { + "commentStart": 246, "end": 0, "name": "new_arr2", "start": 0, @@ -346,6 +392,7 @@ description: Result of parsing array_elem_pop.kcl "type": "Identifier" }, "property": { + "commentStart": 255, "end": 0, "raw": "0", "start": 0, @@ -361,6 +408,7 @@ description: Result of parsing array_elem_pop.kcl "type": "MemberExpression" }, { + "commentStart": 259, "end": 0, "raw": "1", "start": 0, @@ -372,6 +420,7 @@ description: Result of parsing array_elem_pop.kcl } }, { + "commentStart": 262, "end": 0, "raw": "0.00001", "start": 0, @@ -383,6 +432,7 @@ description: Result of parsing array_elem_pop.kcl } }, { + "commentStart": 271, "end": 0, "raw": "\"element 0 should not have changed\"", "start": 0, @@ -392,11 +442,13 @@ description: Result of parsing array_elem_pop.kcl } ], "callee": { + "commentStart": 234, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 234, "end": 0, "start": 0, "type": "CallExpression", @@ -407,6 +459,7 @@ description: Result of parsing array_elem_pop.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/array_elem_pop_empty_fail/ast.snap b/rust/kcl-lib/tests/array_elem_pop_empty_fail/ast.snap index 8327db645..0575f76ce 100644 --- a/rust/kcl-lib/tests/array_elem_pop_empty_fail/ast.snap +++ b/rust/kcl-lib/tests/array_elem_pop_empty_fail/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing array_elem_pop_empty_fail.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "arr", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "elements": [], "end": 0, "start": 0, @@ -31,9 +35,12 @@ description: Result of parsing array_elem_pop_empty_fail.kcl "type": "VariableDeclaration" }, { + "commentStart": 9, "declaration": { + "commentStart": 9, "end": 0, "id": { + "commentStart": 9, "end": 0, "name": "fail", "start": 0, @@ -42,6 +49,7 @@ description: Result of parsing array_elem_pop_empty_fail.kcl "init": { "arguments": [ { + "commentStart": 20, "end": 0, "name": "arr", "start": 0, @@ -50,11 +58,13 @@ description: Result of parsing array_elem_pop_empty_fail.kcl } ], "callee": { + "commentStart": 16, "end": 0, "name": "pop", "start": 0, "type": "Identifier" }, + "commentStart": 16, "end": 0, "start": 0, "type": "CallExpression", @@ -70,6 +80,7 @@ description: Result of parsing array_elem_pop_empty_fail.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/array_elem_pop_fail/ast.snap b/rust/kcl-lib/tests/array_elem_pop_fail/ast.snap index 166866958..0698952d2 100644 --- a/rust/kcl-lib/tests/array_elem_pop_fail/ast.snap +++ b/rust/kcl-lib/tests/array_elem_pop_fail/ast.snap @@ -6,17 +6,22 @@ description: Result of parsing array_elem_pop_fail.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "arr", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "elements": [ { + "commentStart": 7, "end": 0, "raw": "1", "start": 0, @@ -28,6 +33,7 @@ description: Result of parsing array_elem_pop_fail.kcl } }, { + "commentStart": 10, "end": 0, "raw": "2", "start": 0, @@ -39,6 +45,7 @@ description: Result of parsing array_elem_pop_fail.kcl } }, { + "commentStart": 13, "end": 0, "raw": "3", "start": 0, @@ -65,9 +72,12 @@ description: Result of parsing array_elem_pop_fail.kcl "type": "VariableDeclaration" }, { + "commentStart": 16, "declaration": { + "commentStart": 16, "end": 0, "id": { + "commentStart": 16, "end": 0, "name": "pushedArr", "start": 0, @@ -76,6 +86,7 @@ description: Result of parsing array_elem_pop_fail.kcl "init": { "arguments": [ { + "commentStart": 32, "end": 0, "name": "arr", "start": 0, @@ -84,11 +95,13 @@ description: Result of parsing array_elem_pop_fail.kcl } ], "callee": { + "commentStart": 28, "end": 0, "name": "pop", "start": 0, "type": "Identifier" }, + "commentStart": 28, "end": 0, "start": 0, "type": "CallExpression", @@ -104,18 +117,23 @@ description: Result of parsing array_elem_pop_fail.kcl "type": "VariableDeclaration" }, { + "commentStart": 37, "declaration": { + "commentStart": 37, "end": 0, "id": { + "commentStart": 37, "end": 0, "name": "fail", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 44, "computed": false, "end": 0, "object": { + "commentStart": 44, "end": 0, "name": "pushedArr", "start": 0, @@ -123,6 +141,7 @@ description: Result of parsing array_elem_pop_fail.kcl "type": "Identifier" }, "property": { + "commentStart": 54, "end": 0, "raw": "2", "start": 0, @@ -147,6 +166,7 @@ description: Result of parsing array_elem_pop_fail.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/array_elem_push/ast.snap b/rust/kcl-lib/tests/array_elem_push/ast.snap index 7e5b150d9..1dc84e6af 100644 --- a/rust/kcl-lib/tests/array_elem_push/ast.snap +++ b/rust/kcl-lib/tests/array_elem_push/ast.snap @@ -6,17 +6,22 @@ description: Result of parsing array_elem_push.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "arr", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "elements": [ { + "commentStart": 7, "end": 0, "raw": "1", "start": 0, @@ -28,6 +33,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 10, "end": 0, "raw": "2", "start": 0, @@ -39,6 +45,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 13, "end": 0, "raw": "3", "start": 0, @@ -65,9 +72,12 @@ description: Result of parsing array_elem_push.kcl "type": "VariableDeclaration" }, { + "commentStart": 16, "declaration": { + "commentStart": 16, "end": 0, "id": { + "commentStart": 16, "end": 0, "name": "new_arr1", "start": 0, @@ -76,6 +86,7 @@ description: Result of parsing array_elem_push.kcl "init": { "arguments": [ { + "commentStart": 32, "end": 0, "name": "arr", "start": 0, @@ -83,6 +94,7 @@ description: Result of parsing array_elem_push.kcl "type": "Identifier" }, { + "commentStart": 37, "end": 0, "raw": "4", "start": 0, @@ -95,11 +107,13 @@ description: Result of parsing array_elem_push.kcl } ], "callee": { + "commentStart": 27, "end": 0, "name": "push", "start": 0, "type": "Identifier" }, + "commentStart": 27, "end": 0, "start": 0, "type": "CallExpression", @@ -115,9 +129,12 @@ description: Result of parsing array_elem_push.kcl "type": "VariableDeclaration" }, { + "commentStart": 40, "declaration": { + "commentStart": 40, "end": 0, "id": { + "commentStart": 40, "end": 0, "name": "new_arr2", "start": 0, @@ -126,6 +143,7 @@ description: Result of parsing array_elem_push.kcl "init": { "arguments": [ { + "commentStart": 56, "end": 0, "name": "new_arr1", "start": 0, @@ -133,6 +151,7 @@ description: Result of parsing array_elem_push.kcl "type": "Identifier" }, { + "commentStart": 66, "end": 0, "raw": "5", "start": 0, @@ -145,11 +164,13 @@ description: Result of parsing array_elem_push.kcl } ], "callee": { + "commentStart": 51, "end": 0, "name": "push", "start": 0, "type": "Identifier" }, + "commentStart": 51, "end": 0, "start": 0, "type": "CallExpression", @@ -165,13 +186,16 @@ description: Result of parsing array_elem_push.kcl "type": "VariableDeclaration" }, { + "commentStart": 69, "end": 0, "expression": { "arguments": [ { + "commentStart": 81, "computed": false, "end": 0, "object": { + "commentStart": 81, "end": 0, "name": "new_arr1", "start": 0, @@ -179,6 +203,7 @@ description: Result of parsing array_elem_push.kcl "type": "Identifier" }, "property": { + "commentStart": 90, "end": 0, "raw": "0", "start": 0, @@ -194,6 +219,7 @@ description: Result of parsing array_elem_push.kcl "type": "MemberExpression" }, { + "commentStart": 94, "end": 0, "raw": "1", "start": 0, @@ -205,6 +231,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 97, "end": 0, "raw": "0.00001", "start": 0, @@ -216,6 +243,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 106, "end": 0, "raw": "\"element 0 should not have changed\"", "start": 0, @@ -225,11 +253,13 @@ description: Result of parsing array_elem_push.kcl } ], "callee": { + "commentStart": 69, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 69, "end": 0, "start": 0, "type": "CallExpression", @@ -240,13 +270,16 @@ description: Result of parsing array_elem_push.kcl "type": "ExpressionStatement" }, { + "commentStart": 143, "end": 0, "expression": { "arguments": [ { + "commentStart": 155, "computed": false, "end": 0, "object": { + "commentStart": 155, "end": 0, "name": "new_arr1", "start": 0, @@ -254,6 +287,7 @@ description: Result of parsing array_elem_push.kcl "type": "Identifier" }, "property": { + "commentStart": 164, "end": 0, "raw": "1", "start": 0, @@ -269,6 +303,7 @@ description: Result of parsing array_elem_push.kcl "type": "MemberExpression" }, { + "commentStart": 168, "end": 0, "raw": "2", "start": 0, @@ -280,6 +315,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 171, "end": 0, "raw": "0.00001", "start": 0, @@ -291,6 +327,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 180, "end": 0, "raw": "\"element 1 should not have changed\"", "start": 0, @@ -300,11 +337,13 @@ description: Result of parsing array_elem_push.kcl } ], "callee": { + "commentStart": 143, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 143, "end": 0, "start": 0, "type": "CallExpression", @@ -315,13 +354,16 @@ description: Result of parsing array_elem_push.kcl "type": "ExpressionStatement" }, { + "commentStart": 217, "end": 0, "expression": { "arguments": [ { + "commentStart": 229, "computed": false, "end": 0, "object": { + "commentStart": 229, "end": 0, "name": "new_arr1", "start": 0, @@ -329,6 +371,7 @@ description: Result of parsing array_elem_push.kcl "type": "Identifier" }, "property": { + "commentStart": 238, "end": 0, "raw": "2", "start": 0, @@ -344,6 +387,7 @@ description: Result of parsing array_elem_push.kcl "type": "MemberExpression" }, { + "commentStart": 242, "end": 0, "raw": "3", "start": 0, @@ -355,6 +399,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 245, "end": 0, "raw": "0.00001", "start": 0, @@ -366,6 +411,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 254, "end": 0, "raw": "\"element 2 should not have changed\"", "start": 0, @@ -375,11 +421,13 @@ description: Result of parsing array_elem_push.kcl } ], "callee": { + "commentStart": 217, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 217, "end": 0, "start": 0, "type": "CallExpression", @@ -390,13 +438,16 @@ description: Result of parsing array_elem_push.kcl "type": "ExpressionStatement" }, { + "commentStart": 291, "end": 0, "expression": { "arguments": [ { + "commentStart": 303, "computed": false, "end": 0, "object": { + "commentStart": 303, "end": 0, "name": "new_arr1", "start": 0, @@ -404,6 +455,7 @@ description: Result of parsing array_elem_push.kcl "type": "Identifier" }, "property": { + "commentStart": 312, "end": 0, "raw": "3", "start": 0, @@ -419,6 +471,7 @@ description: Result of parsing array_elem_push.kcl "type": "MemberExpression" }, { + "commentStart": 316, "end": 0, "raw": "4", "start": 0, @@ -430,6 +483,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 319, "end": 0, "raw": "0.00001", "start": 0, @@ -441,6 +495,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 328, "end": 0, "raw": "\"4 was added to the end of the array\"", "start": 0, @@ -450,11 +505,13 @@ description: Result of parsing array_elem_push.kcl } ], "callee": { + "commentStart": 291, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 291, "end": 0, "start": 0, "type": "CallExpression", @@ -465,13 +522,16 @@ description: Result of parsing array_elem_push.kcl "type": "ExpressionStatement" }, { + "commentStart": 367, "end": 0, "expression": { "arguments": [ { + "commentStart": 379, "computed": false, "end": 0, "object": { + "commentStart": 379, "end": 0, "name": "new_arr2", "start": 0, @@ -479,6 +539,7 @@ description: Result of parsing array_elem_push.kcl "type": "Identifier" }, "property": { + "commentStart": 388, "end": 0, "raw": "0", "start": 0, @@ -494,6 +555,7 @@ description: Result of parsing array_elem_push.kcl "type": "MemberExpression" }, { + "commentStart": 392, "end": 0, "raw": "1", "start": 0, @@ -505,6 +567,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 395, "end": 0, "raw": "0.00001", "start": 0, @@ -516,6 +579,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 404, "end": 0, "raw": "\"element 0 should not have changed\"", "start": 0, @@ -525,11 +589,13 @@ description: Result of parsing array_elem_push.kcl } ], "callee": { + "commentStart": 367, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 367, "end": 0, "start": 0, "type": "CallExpression", @@ -540,13 +606,16 @@ description: Result of parsing array_elem_push.kcl "type": "ExpressionStatement" }, { + "commentStart": 441, "end": 0, "expression": { "arguments": [ { + "commentStart": 453, "computed": false, "end": 0, "object": { + "commentStart": 453, "end": 0, "name": "new_arr2", "start": 0, @@ -554,6 +623,7 @@ description: Result of parsing array_elem_push.kcl "type": "Identifier" }, "property": { + "commentStart": 462, "end": 0, "raw": "1", "start": 0, @@ -569,6 +639,7 @@ description: Result of parsing array_elem_push.kcl "type": "MemberExpression" }, { + "commentStart": 466, "end": 0, "raw": "2", "start": 0, @@ -580,6 +651,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 469, "end": 0, "raw": "0.00001", "start": 0, @@ -591,6 +663,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 478, "end": 0, "raw": "\"element 1 should not have changed\"", "start": 0, @@ -600,11 +673,13 @@ description: Result of parsing array_elem_push.kcl } ], "callee": { + "commentStart": 441, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 441, "end": 0, "start": 0, "type": "CallExpression", @@ -615,13 +690,16 @@ description: Result of parsing array_elem_push.kcl "type": "ExpressionStatement" }, { + "commentStart": 515, "end": 0, "expression": { "arguments": [ { + "commentStart": 527, "computed": false, "end": 0, "object": { + "commentStart": 527, "end": 0, "name": "new_arr2", "start": 0, @@ -629,6 +707,7 @@ description: Result of parsing array_elem_push.kcl "type": "Identifier" }, "property": { + "commentStart": 536, "end": 0, "raw": "2", "start": 0, @@ -644,6 +723,7 @@ description: Result of parsing array_elem_push.kcl "type": "MemberExpression" }, { + "commentStart": 540, "end": 0, "raw": "3", "start": 0, @@ -655,6 +735,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 543, "end": 0, "raw": "0.00001", "start": 0, @@ -666,6 +747,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 552, "end": 0, "raw": "\"element 2 should not have changed\"", "start": 0, @@ -675,11 +757,13 @@ description: Result of parsing array_elem_push.kcl } ], "callee": { + "commentStart": 515, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 515, "end": 0, "start": 0, "type": "CallExpression", @@ -690,13 +774,16 @@ description: Result of parsing array_elem_push.kcl "type": "ExpressionStatement" }, { + "commentStart": 589, "end": 0, "expression": { "arguments": [ { + "commentStart": 601, "computed": false, "end": 0, "object": { + "commentStart": 601, "end": 0, "name": "new_arr2", "start": 0, @@ -704,6 +791,7 @@ description: Result of parsing array_elem_push.kcl "type": "Identifier" }, "property": { + "commentStart": 610, "end": 0, "raw": "3", "start": 0, @@ -719,6 +807,7 @@ description: Result of parsing array_elem_push.kcl "type": "MemberExpression" }, { + "commentStart": 614, "end": 0, "raw": "4", "start": 0, @@ -730,6 +819,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 617, "end": 0, "raw": "0.00001", "start": 0, @@ -741,6 +831,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 626, "end": 0, "raw": "\"4 was added to the end of the array\"", "start": 0, @@ -750,11 +841,13 @@ description: Result of parsing array_elem_push.kcl } ], "callee": { + "commentStart": 589, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 589, "end": 0, "start": 0, "type": "CallExpression", @@ -765,13 +858,16 @@ description: Result of parsing array_elem_push.kcl "type": "ExpressionStatement" }, { + "commentStart": 665, "end": 0, "expression": { "arguments": [ { + "commentStart": 677, "computed": false, "end": 0, "object": { + "commentStart": 677, "end": 0, "name": "new_arr2", "start": 0, @@ -779,6 +875,7 @@ description: Result of parsing array_elem_push.kcl "type": "Identifier" }, "property": { + "commentStart": 686, "end": 0, "raw": "4", "start": 0, @@ -794,6 +891,7 @@ description: Result of parsing array_elem_push.kcl "type": "MemberExpression" }, { + "commentStart": 690, "end": 0, "raw": "5", "start": 0, @@ -805,6 +903,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 693, "end": 0, "raw": "0.00001", "start": 0, @@ -816,6 +915,7 @@ description: Result of parsing array_elem_push.kcl } }, { + "commentStart": 702, "end": 0, "raw": "\"5 was added to the end of the array\"", "start": 0, @@ -825,11 +925,13 @@ description: Result of parsing array_elem_push.kcl } ], "callee": { + "commentStart": 665, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 665, "end": 0, "start": 0, "type": "CallExpression", @@ -840,6 +942,7 @@ description: Result of parsing array_elem_push.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/array_elem_push_fail/ast.snap b/rust/kcl-lib/tests/array_elem_push_fail/ast.snap index 66a9b5325..8d1fab671 100644 --- a/rust/kcl-lib/tests/array_elem_push_fail/ast.snap +++ b/rust/kcl-lib/tests/array_elem_push_fail/ast.snap @@ -6,17 +6,22 @@ description: Result of parsing array_elem_push_fail.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "arr", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "elements": [ { + "commentStart": 7, "end": 0, "raw": "1", "start": 0, @@ -28,6 +33,7 @@ description: Result of parsing array_elem_push_fail.kcl } }, { + "commentStart": 10, "end": 0, "raw": "2", "start": 0, @@ -39,6 +45,7 @@ description: Result of parsing array_elem_push_fail.kcl } }, { + "commentStart": 13, "end": 0, "raw": "3", "start": 0, @@ -65,9 +72,12 @@ description: Result of parsing array_elem_push_fail.kcl "type": "VariableDeclaration" }, { + "commentStart": 16, "declaration": { + "commentStart": 16, "end": 0, "id": { + "commentStart": 16, "end": 0, "name": "pushedArr", "start": 0, @@ -76,6 +86,7 @@ description: Result of parsing array_elem_push_fail.kcl "init": { "arguments": [ { + "commentStart": 33, "end": 0, "name": "arr", "start": 0, @@ -83,6 +94,7 @@ description: Result of parsing array_elem_push_fail.kcl "type": "Identifier" }, { + "commentStart": 38, "end": 0, "raw": "4", "start": 0, @@ -95,11 +107,13 @@ description: Result of parsing array_elem_push_fail.kcl } ], "callee": { + "commentStart": 28, "end": 0, "name": "push", "start": 0, "type": "Identifier" }, + "commentStart": 28, "end": 0, "start": 0, "type": "CallExpression", @@ -115,18 +129,23 @@ description: Result of parsing array_elem_push_fail.kcl "type": "VariableDeclaration" }, { + "commentStart": 41, "declaration": { + "commentStart": 41, "end": 0, "id": { + "commentStart": 41, "end": 0, "name": "fail", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 48, "computed": false, "end": 0, "object": { + "commentStart": 48, "end": 0, "name": "arr", "start": 0, @@ -134,6 +153,7 @@ description: Result of parsing array_elem_push_fail.kcl "type": "Identifier" }, "property": { + "commentStart": 52, "end": 0, "raw": "3", "start": 0, @@ -158,6 +178,7 @@ description: Result of parsing array_elem_push_fail.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/array_index_oob/ast.snap b/rust/kcl-lib/tests/array_index_oob/ast.snap index 5185ca29c..25f4944f7 100644 --- a/rust/kcl-lib/tests/array_index_oob/ast.snap +++ b/rust/kcl-lib/tests/array_index_oob/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing array_index_oob.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "arr", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "elements": [], "end": 0, "start": 0, @@ -31,18 +35,23 @@ description: Result of parsing array_index_oob.kcl "type": "VariableDeclaration" }, { + "commentStart": 9, "declaration": { + "commentStart": 9, "end": 0, "id": { + "commentStart": 9, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 13, "computed": false, "end": 0, "object": { + "commentStart": 13, "end": 0, "name": "arr", "start": 0, @@ -50,6 +59,7 @@ description: Result of parsing array_index_oob.kcl "type": "Identifier" }, "property": { + "commentStart": 17, "end": 0, "raw": "0", "start": 0, @@ -74,6 +84,7 @@ description: Result of parsing array_index_oob.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/array_range_expr/ast.snap b/rust/kcl-lib/tests/array_range_expr/ast.snap index a33d61c8c..59d03f1f7 100644 --- a/rust/kcl-lib/tests/array_range_expr/ast.snap +++ b/rust/kcl-lib/tests/array_range_expr/ast.snap @@ -6,17 +6,22 @@ description: Result of parsing array_range_expr.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "r1", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 5, "end": 0, "endElement": { + "commentStart": 9, "end": 0, "raw": "4", "start": 0, @@ -30,6 +35,7 @@ description: Result of parsing array_range_expr.kcl "endInclusive": true, "start": 0, "startElement": { + "commentStart": 6, "end": 0, "raw": "0", "start": 0, @@ -53,13 +59,16 @@ description: Result of parsing array_range_expr.kcl "type": "VariableDeclaration" }, { + "commentStart": 12, "end": 0, "expression": { "arguments": [ { + "commentStart": 24, "computed": false, "end": 0, "object": { + "commentStart": 24, "end": 0, "name": "r1", "start": 0, @@ -67,6 +76,7 @@ description: Result of parsing array_range_expr.kcl "type": "Identifier" }, "property": { + "commentStart": 27, "end": 0, "raw": "4", "start": 0, @@ -82,6 +92,7 @@ description: Result of parsing array_range_expr.kcl "type": "MemberExpression" }, { + "commentStart": 31, "end": 0, "raw": "4", "start": 0, @@ -93,6 +104,7 @@ description: Result of parsing array_range_expr.kcl } }, { + "commentStart": 34, "end": 0, "raw": "0.00001", "start": 0, @@ -104,6 +116,7 @@ description: Result of parsing array_range_expr.kcl } }, { + "commentStart": 43, "end": 0, "raw": "\"last element is included\"", "start": 0, @@ -113,11 +126,13 @@ description: Result of parsing array_range_expr.kcl } ], "callee": { + "commentStart": 12, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 12, "end": 0, "start": 0, "type": "CallExpression", @@ -128,15 +143,19 @@ description: Result of parsing array_range_expr.kcl "type": "ExpressionStatement" }, { + "commentStart": 70, "declaration": { + "commentStart": 72, "end": 0, "id": { + "commentStart": 72, "end": 0, "name": "four", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 79, "end": 0, "raw": "4", "start": 0, @@ -157,15 +176,19 @@ description: Result of parsing array_range_expr.kcl "type": "VariableDeclaration" }, { + "commentStart": 81, "declaration": { + "commentStart": 81, "end": 0, "id": { + "commentStart": 81, "end": 0, "name": "zero", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 88, "end": 0, "raw": "0", "start": 0, @@ -186,17 +209,22 @@ description: Result of parsing array_range_expr.kcl "type": "VariableDeclaration" }, { + "commentStart": 90, "declaration": { + "commentStart": 90, "end": 0, "id": { + "commentStart": 90, "end": 0, "name": "r2", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 95, "end": 0, "endElement": { + "commentStart": 102, "end": 0, "name": "four", "start": 0, @@ -206,6 +234,7 @@ description: Result of parsing array_range_expr.kcl "endInclusive": true, "start": 0, "startElement": { + "commentStart": 96, "end": 0, "name": "zero", "start": 0, @@ -225,13 +254,16 @@ description: Result of parsing array_range_expr.kcl "type": "VariableDeclaration" }, { + "commentStart": 108, "end": 0, "expression": { "arguments": [ { + "commentStart": 120, "computed": false, "end": 0, "object": { + "commentStart": 120, "end": 0, "name": "r2", "start": 0, @@ -239,6 +271,7 @@ description: Result of parsing array_range_expr.kcl "type": "Identifier" }, "property": { + "commentStart": 123, "end": 0, "raw": "4", "start": 0, @@ -254,6 +287,7 @@ description: Result of parsing array_range_expr.kcl "type": "MemberExpression" }, { + "commentStart": 127, "end": 0, "raw": "4", "start": 0, @@ -265,6 +299,7 @@ description: Result of parsing array_range_expr.kcl } }, { + "commentStart": 130, "end": 0, "raw": "0.00001", "start": 0, @@ -276,6 +311,7 @@ description: Result of parsing array_range_expr.kcl } }, { + "commentStart": 139, "end": 0, "raw": "\"last element is included\"", "start": 0, @@ -285,11 +321,13 @@ description: Result of parsing array_range_expr.kcl } ], "callee": { + "commentStart": 108, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 108, "end": 0, "start": 0, "type": "CallExpression", @@ -300,9 +338,12 @@ description: Result of parsing array_range_expr.kcl "type": "ExpressionStatement" }, { + "commentStart": 166, "declaration": { + "commentStart": 168, "end": 0, "id": { + "commentStart": 168, "end": 0, "name": "five", "start": 0, @@ -311,8 +352,10 @@ description: Result of parsing array_range_expr.kcl "init": { "arguments": [ { + "commentStart": 179, "end": 0, "left": { + "commentStart": 179, "end": 0, "name": "four", "start": 0, @@ -321,6 +364,7 @@ description: Result of parsing array_range_expr.kcl }, "operator": "+", "right": { + "commentStart": 186, "end": 0, "raw": "1", "start": 0, @@ -337,11 +381,13 @@ description: Result of parsing array_range_expr.kcl } ], "callee": { + "commentStart": 175, "end": 0, "name": "int", "start": 0, "type": "Identifier" }, + "commentStart": 175, "end": 0, "start": 0, "type": "CallExpression", @@ -357,17 +403,22 @@ description: Result of parsing array_range_expr.kcl "type": "VariableDeclaration" }, { + "commentStart": 189, "declaration": { + "commentStart": 189, "end": 0, "id": { + "commentStart": 189, "end": 0, "name": "r3", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 194, "end": 0, "endElement": { + "commentStart": 201, "end": 0, "name": "five", "start": 0, @@ -377,6 +428,7 @@ description: Result of parsing array_range_expr.kcl "endInclusive": true, "start": 0, "startElement": { + "commentStart": 195, "end": 0, "name": "zero", "start": 0, @@ -396,13 +448,16 @@ description: Result of parsing array_range_expr.kcl "type": "VariableDeclaration" }, { + "commentStart": 207, "end": 0, "expression": { "arguments": [ { + "commentStart": 219, "computed": false, "end": 0, "object": { + "commentStart": 219, "end": 0, "name": "r3", "start": 0, @@ -410,6 +465,7 @@ description: Result of parsing array_range_expr.kcl "type": "Identifier" }, "property": { + "commentStart": 222, "end": 0, "raw": "4", "start": 0, @@ -425,6 +481,7 @@ description: Result of parsing array_range_expr.kcl "type": "MemberExpression" }, { + "commentStart": 226, "end": 0, "raw": "4", "start": 0, @@ -436,6 +493,7 @@ description: Result of parsing array_range_expr.kcl } }, { + "commentStart": 229, "end": 0, "raw": "0.00001", "start": 0, @@ -447,6 +505,7 @@ description: Result of parsing array_range_expr.kcl } }, { + "commentStart": 238, "end": 0, "raw": "\"second-to-last element is included\"", "start": 0, @@ -456,11 +515,13 @@ description: Result of parsing array_range_expr.kcl } ], "callee": { + "commentStart": 207, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 207, "end": 0, "start": 0, "type": "CallExpression", @@ -471,13 +532,16 @@ description: Result of parsing array_range_expr.kcl "type": "ExpressionStatement" }, { + "commentStart": 276, "end": 0, "expression": { "arguments": [ { + "commentStart": 288, "computed": false, "end": 0, "object": { + "commentStart": 288, "end": 0, "name": "r3", "start": 0, @@ -485,6 +549,7 @@ description: Result of parsing array_range_expr.kcl "type": "Identifier" }, "property": { + "commentStart": 291, "end": 0, "raw": "5", "start": 0, @@ -500,6 +565,7 @@ description: Result of parsing array_range_expr.kcl "type": "MemberExpression" }, { + "commentStart": 295, "end": 0, "raw": "5", "start": 0, @@ -511,6 +577,7 @@ description: Result of parsing array_range_expr.kcl } }, { + "commentStart": 298, "end": 0, "raw": "0.00001", "start": 0, @@ -522,6 +589,7 @@ description: Result of parsing array_range_expr.kcl } }, { + "commentStart": 307, "end": 0, "raw": "\"last element is included\"", "start": 0, @@ -531,11 +599,13 @@ description: Result of parsing array_range_expr.kcl } ], "callee": { + "commentStart": 276, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 276, "end": 0, "start": 0, "type": "CallExpression", @@ -546,21 +616,27 @@ description: Result of parsing array_range_expr.kcl "type": "ExpressionStatement" }, { + "commentStart": 334, "declaration": { + "commentStart": 336, "end": 0, "id": { + "commentStart": 336, "end": 0, "name": "r4", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 341, "end": 0, "endElement": { "arguments": [ { + "commentStart": 363, "end": 0, "left": { + "commentStart": 363, "end": 0, "name": "five", "start": 0, @@ -569,6 +645,7 @@ description: Result of parsing array_range_expr.kcl }, "operator": "-", "right": { + "commentStart": 370, "end": 0, "raw": "1", "start": 0, @@ -585,11 +662,13 @@ description: Result of parsing array_range_expr.kcl } ], "callee": { + "commentStart": 359, "end": 0, "name": "int", "start": 0, "type": "Identifier" }, + "commentStart": 359, "end": 0, "start": 0, "type": "CallExpression", @@ -600,8 +679,10 @@ description: Result of parsing array_range_expr.kcl "startElement": { "arguments": [ { + "commentStart": 346, "end": 0, "left": { + "commentStart": 346, "end": 0, "name": "zero", "start": 0, @@ -610,6 +691,7 @@ description: Result of parsing array_range_expr.kcl }, "operator": "+", "right": { + "commentStart": 353, "end": 0, "raw": "1", "start": 0, @@ -626,11 +708,13 @@ description: Result of parsing array_range_expr.kcl } ], "callee": { + "commentStart": 342, "end": 0, "name": "int", "start": 0, "type": "Identifier" }, + "commentStart": 342, "end": 0, "start": 0, "type": "CallExpression", @@ -649,13 +733,16 @@ description: Result of parsing array_range_expr.kcl "type": "VariableDeclaration" }, { + "commentStart": 374, "end": 0, "expression": { "arguments": [ { + "commentStart": 386, "computed": false, "end": 0, "object": { + "commentStart": 386, "end": 0, "name": "r4", "start": 0, @@ -663,6 +750,7 @@ description: Result of parsing array_range_expr.kcl "type": "Identifier" }, "property": { + "commentStart": 389, "end": 0, "raw": "0", "start": 0, @@ -678,6 +766,7 @@ description: Result of parsing array_range_expr.kcl "type": "MemberExpression" }, { + "commentStart": 393, "end": 0, "raw": "1", "start": 0, @@ -689,6 +778,7 @@ description: Result of parsing array_range_expr.kcl } }, { + "commentStart": 396, "end": 0, "raw": "0.00001", "start": 0, @@ -700,6 +790,7 @@ description: Result of parsing array_range_expr.kcl } }, { + "commentStart": 405, "end": 0, "raw": "\"first element is 1\"", "start": 0, @@ -709,11 +800,13 @@ description: Result of parsing array_range_expr.kcl } ], "callee": { + "commentStart": 374, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 374, "end": 0, "start": 0, "type": "CallExpression", @@ -724,13 +817,16 @@ description: Result of parsing array_range_expr.kcl "type": "ExpressionStatement" }, { + "commentStart": 427, "end": 0, "expression": { "arguments": [ { + "commentStart": 439, "computed": false, "end": 0, "object": { + "commentStart": 439, "end": 0, "name": "r4", "start": 0, @@ -738,6 +834,7 @@ description: Result of parsing array_range_expr.kcl "type": "Identifier" }, "property": { + "commentStart": 442, "end": 0, "raw": "2", "start": 0, @@ -753,6 +850,7 @@ description: Result of parsing array_range_expr.kcl "type": "MemberExpression" }, { + "commentStart": 446, "end": 0, "raw": "3", "start": 0, @@ -764,6 +862,7 @@ description: Result of parsing array_range_expr.kcl } }, { + "commentStart": 449, "end": 0, "raw": "0.00001", "start": 0, @@ -775,6 +874,7 @@ description: Result of parsing array_range_expr.kcl } }, { + "commentStart": 458, "end": 0, "raw": "\"second-to-last element is 3\"", "start": 0, @@ -784,11 +884,13 @@ description: Result of parsing array_range_expr.kcl } ], "callee": { + "commentStart": 427, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 427, "end": 0, "start": 0, "type": "CallExpression", @@ -799,13 +901,16 @@ description: Result of parsing array_range_expr.kcl "type": "ExpressionStatement" }, { + "commentStart": 489, "end": 0, "expression": { "arguments": [ { + "commentStart": 501, "computed": false, "end": 0, "object": { + "commentStart": 501, "end": 0, "name": "r4", "start": 0, @@ -813,6 +918,7 @@ description: Result of parsing array_range_expr.kcl "type": "Identifier" }, "property": { + "commentStart": 504, "end": 0, "raw": "3", "start": 0, @@ -828,6 +934,7 @@ description: Result of parsing array_range_expr.kcl "type": "MemberExpression" }, { + "commentStart": 508, "end": 0, "raw": "4", "start": 0, @@ -839,6 +946,7 @@ description: Result of parsing array_range_expr.kcl } }, { + "commentStart": 511, "end": 0, "raw": "0.00001", "start": 0, @@ -850,6 +958,7 @@ description: Result of parsing array_range_expr.kcl } }, { + "commentStart": 520, "end": 0, "raw": "\"last element is 4\"", "start": 0, @@ -859,11 +968,13 @@ description: Result of parsing array_range_expr.kcl } ], "callee": { + "commentStart": 489, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 489, "end": 0, "start": 0, "type": "CallExpression", @@ -874,11 +985,13 @@ description: Result of parsing array_range_expr.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 70, "end": 0, "start": 0, "type": "NonCodeNode", @@ -889,6 +1002,7 @@ description: Result of parsing array_range_expr.kcl ], "5": [ { + "commentStart": 166, "end": 0, "start": 0, "type": "NonCodeNode", @@ -899,6 +1013,7 @@ description: Result of parsing array_range_expr.kcl ], "9": [ { + "commentStart": 334, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/array_range_negative_expr/ast.snap b/rust/kcl-lib/tests/array_range_negative_expr/ast.snap index 6fae5b200..84e30d1b5 100644 --- a/rust/kcl-lib/tests/array_range_negative_expr/ast.snap +++ b/rust/kcl-lib/tests/array_range_negative_expr/ast.snap @@ -6,17 +6,22 @@ description: Result of parsing array_range_negative_expr.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "xs", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 5, "end": 0, "endElement": { + "commentStart": 17, "end": 0, "raw": "5", "start": 0, @@ -33,6 +38,7 @@ description: Result of parsing array_range_negative_expr.kcl "arguments": [ { "argument": { + "commentStart": 11, "end": 0, "raw": "5", "start": 0, @@ -43,6 +49,7 @@ description: Result of parsing array_range_negative_expr.kcl "suffix": "None" } }, + "commentStart": 10, "end": 0, "operator": "-", "start": 0, @@ -51,11 +58,13 @@ description: Result of parsing array_range_negative_expr.kcl } ], "callee": { + "commentStart": 6, "end": 0, "name": "int", "start": 0, "type": "Identifier" }, + "commentStart": 6, "end": 0, "start": 0, "type": "CallExpression", @@ -74,13 +83,16 @@ description: Result of parsing array_range_negative_expr.kcl "type": "VariableDeclaration" }, { + "commentStart": 20, "end": 0, "expression": { "arguments": [ { + "commentStart": 32, "computed": false, "end": 0, "object": { + "commentStart": 32, "end": 0, "name": "xs", "start": 0, @@ -88,6 +100,7 @@ description: Result of parsing array_range_negative_expr.kcl "type": "Identifier" }, "property": { + "commentStart": 35, "end": 0, "raw": "0", "start": 0, @@ -104,6 +117,7 @@ description: Result of parsing array_range_negative_expr.kcl }, { "argument": { + "commentStart": 40, "end": 0, "raw": "5", "start": 0, @@ -114,6 +128,7 @@ description: Result of parsing array_range_negative_expr.kcl "suffix": "None" } }, + "commentStart": 39, "end": 0, "operator": "-", "start": 0, @@ -121,6 +136,7 @@ description: Result of parsing array_range_negative_expr.kcl "type": "UnaryExpression" }, { + "commentStart": 43, "end": 0, "raw": "0.001", "start": 0, @@ -132,6 +148,7 @@ description: Result of parsing array_range_negative_expr.kcl } }, { + "commentStart": 50, "end": 0, "raw": "\"first element is -5\"", "start": 0, @@ -141,11 +158,13 @@ description: Result of parsing array_range_negative_expr.kcl } ], "callee": { + "commentStart": 20, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 20, "end": 0, "start": 0, "type": "CallExpression", @@ -156,6 +175,7 @@ description: Result of parsing array_range_negative_expr.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/artifact_graph_example_code1/ast.snap b/rust/kcl-lib/tests/artifact_graph_example_code1/ast.snap index 932c68317..3da91a7fe 100644 --- a/rust/kcl-lib/tests/artifact_graph_example_code1/ast.snap +++ b/rust/kcl-lib/tests/artifact_graph_example_code1/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing artifact_graph_example_code1.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "sketch001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing artifact_graph_example_code1.kcl { "arguments": [ { + "commentStart": 26, "end": 0, "raw": "'XY'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 12, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 12, "end": 0, "start": 0, "type": "CallExpression", @@ -41,9 +47,11 @@ description: Result of parsing artifact_graph_example_code1.kcl { "arguments": [ { + "commentStart": 52, "elements": [ { "argument": { + "commentStart": 54, "end": 0, "raw": "5", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing artifact_graph_example_code1.kcl "suffix": "None" } }, + "commentStart": 53, "end": 0, "operator": "-", "start": 0, @@ -62,6 +71,7 @@ description: Result of parsing artifact_graph_example_code1.kcl }, { "argument": { + "commentStart": 58, "end": 0, "raw": "5", "start": 0, @@ -72,6 +82,7 @@ description: Result of parsing artifact_graph_example_code1.kcl "suffix": "None" } }, + "commentStart": 57, "end": 0, "operator": "-", "start": 0, @@ -85,6 +96,7 @@ description: Result of parsing artifact_graph_example_code1.kcl "type": "ArrayExpression" }, { + "commentStart": 62, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -92,11 +104,13 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 37, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 37, "end": 0, "start": 0, "type": "CallExpression", @@ -107,14 +121,17 @@ description: Result of parsing artifact_graph_example_code1.kcl { "type": "LabeledArg", "label": { + "commentStart": 75, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 81, "elements": [ { + "commentStart": 82, "end": 0, "raw": "0", "start": 0, @@ -126,6 +143,7 @@ description: Result of parsing artifact_graph_example_code1.kcl } }, { + "commentStart": 85, "end": 0, "raw": "10", "start": 0, @@ -145,11 +163,13 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 70, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 70, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -161,14 +181,17 @@ description: Result of parsing artifact_graph_example_code1.kcl { "type": "LabeledArg", "label": { + "commentStart": 100, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 106, "elements": [ { + "commentStart": 107, "end": 0, "raw": "10.55", "start": 0, @@ -180,6 +203,7 @@ description: Result of parsing artifact_graph_example_code1.kcl } }, { + "commentStart": 114, "end": 0, "raw": "0", "start": 0, @@ -200,12 +224,14 @@ description: Result of parsing artifact_graph_example_code1.kcl { "type": "LabeledArg", "label": { + "commentStart": 118, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 124, "end": 0, "start": 0, "type": "TagDeclarator", @@ -215,11 +241,13 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 95, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 95, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -231,14 +259,17 @@ description: Result of parsing artifact_graph_example_code1.kcl { "type": "LabeledArg", "label": { + "commentStart": 142, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 148, "elements": [ { + "commentStart": 149, "end": 0, "raw": "0", "start": 0, @@ -251,6 +282,7 @@ description: Result of parsing artifact_graph_example_code1.kcl }, { "argument": { + "commentStart": 153, "end": 0, "raw": "10", "start": 0, @@ -261,6 +293,7 @@ description: Result of parsing artifact_graph_example_code1.kcl "suffix": "None" } }, + "commentStart": 152, "end": 0, "operator": "-", "start": 0, @@ -277,12 +310,14 @@ description: Result of parsing artifact_graph_example_code1.kcl { "type": "LabeledArg", "label": { + "commentStart": 158, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 164, "end": 0, "start": 0, "type": "TagDeclarator", @@ -292,11 +327,13 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 137, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 137, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -308,16 +345,19 @@ description: Result of parsing artifact_graph_example_code1.kcl { "type": "LabeledArg", "label": { + "commentStart": 182, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 196, "elements": [ { "arguments": [ { + "commentStart": 211, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -325,11 +365,13 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 197, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 197, "end": 0, "start": 0, "type": "CallExpression", @@ -338,6 +380,7 @@ description: Result of parsing artifact_graph_example_code1.kcl { "arguments": [ { + "commentStart": 229, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -345,11 +388,13 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 215, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 215, "end": 0, "start": 0, "type": "CallExpression", @@ -364,11 +409,13 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 177, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 177, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -378,17 +425,20 @@ description: Result of parsing artifact_graph_example_code1.kcl { "arguments": [], "callee": { + "commentStart": 239, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 239, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 12, "end": 0, "start": 0, "type": "PipeExpression", @@ -404,9 +454,12 @@ description: Result of parsing artifact_graph_example_code1.kcl "type": "VariableDeclaration" }, { + "commentStart": 247, "declaration": { + "commentStart": 247, "end": 0, "id": { + "commentStart": 247, "end": 0, "name": "extrude001", "start": 0, @@ -419,6 +472,7 @@ description: Result of parsing artifact_graph_example_code1.kcl { "type": "LabeledArg", "label": { + "commentStart": 279, "end": 0, "name": "length", "start": 0, @@ -426,6 +480,7 @@ description: Result of parsing artifact_graph_example_code1.kcl }, "arg": { "argument": { + "commentStart": 289, "end": 0, "raw": "10", "start": 0, @@ -436,6 +491,7 @@ description: Result of parsing artifact_graph_example_code1.kcl "suffix": "None" } }, + "commentStart": 288, "end": 0, "operator": "-", "start": 0, @@ -445,16 +501,19 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 260, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 260, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 268, "end": 0, "name": "sketch001", "start": 0, @@ -467,12 +526,14 @@ description: Result of parsing artifact_graph_example_code1.kcl { "type": "LabeledArg", "label": { + "commentStart": 305, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 314, "end": 0, "raw": "5", "start": 0, @@ -487,14 +548,17 @@ description: Result of parsing artifact_graph_example_code1.kcl { "type": "LabeledArg", "label": { + "commentStart": 317, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 324, "elements": [ { + "commentStart": 325, "end": 0, "name": "seg01", "start": 0, @@ -510,11 +574,13 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 298, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 298, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -522,6 +588,7 @@ description: Result of parsing artifact_graph_example_code1.kcl "unlabeled": null } ], + "commentStart": 260, "end": 0, "start": 0, "type": "PipeExpression", @@ -537,9 +604,12 @@ description: Result of parsing artifact_graph_example_code1.kcl "type": "VariableDeclaration" }, { + "commentStart": 333, "declaration": { + "commentStart": 333, "end": 0, "id": { + "commentStart": 333, "end": 0, "name": "sketch002", "start": 0, @@ -550,6 +620,7 @@ description: Result of parsing artifact_graph_example_code1.kcl { "arguments": [ { + "commentStart": 359, "end": 0, "name": "extrude001", "start": 0, @@ -557,6 +628,7 @@ description: Result of parsing artifact_graph_example_code1.kcl "type": "Identifier" }, { + "commentStart": 371, "end": 0, "name": "seg02", "start": 0, @@ -565,11 +637,13 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 345, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 345, "end": 0, "start": 0, "type": "CallExpression", @@ -578,9 +652,11 @@ description: Result of parsing artifact_graph_example_code1.kcl { "arguments": [ { + "commentStart": 398, "elements": [ { "argument": { + "commentStart": 400, "end": 0, "raw": "2", "start": 0, @@ -591,6 +667,7 @@ description: Result of parsing artifact_graph_example_code1.kcl "suffix": "None" } }, + "commentStart": 399, "end": 0, "operator": "-", "start": 0, @@ -599,6 +676,7 @@ description: Result of parsing artifact_graph_example_code1.kcl }, { "argument": { + "commentStart": 404, "end": 0, "raw": "6", "start": 0, @@ -609,6 +687,7 @@ description: Result of parsing artifact_graph_example_code1.kcl "suffix": "None" } }, + "commentStart": 403, "end": 0, "operator": "-", "start": 0, @@ -622,6 +701,7 @@ description: Result of parsing artifact_graph_example_code1.kcl "type": "ArrayExpression" }, { + "commentStart": 408, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -629,11 +709,13 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 383, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 383, "end": 0, "start": 0, "type": "CallExpression", @@ -644,14 +726,17 @@ description: Result of parsing artifact_graph_example_code1.kcl { "type": "LabeledArg", "label": { + "commentStart": 421, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 427, "elements": [ { + "commentStart": 428, "end": 0, "raw": "2", "start": 0, @@ -663,6 +748,7 @@ description: Result of parsing artifact_graph_example_code1.kcl } }, { + "commentStart": 431, "end": 0, "raw": "3", "start": 0, @@ -682,11 +768,13 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 416, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 416, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -698,14 +786,17 @@ description: Result of parsing artifact_graph_example_code1.kcl { "type": "LabeledArg", "label": { + "commentStart": 445, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 451, "elements": [ { + "commentStart": 452, "end": 0, "raw": "2", "start": 0, @@ -718,6 +809,7 @@ description: Result of parsing artifact_graph_example_code1.kcl }, { "argument": { + "commentStart": 456, "end": 0, "raw": "3", "start": 0, @@ -728,6 +820,7 @@ description: Result of parsing artifact_graph_example_code1.kcl "suffix": "None" } }, + "commentStart": 455, "end": 0, "operator": "-", "start": 0, @@ -743,11 +836,13 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 440, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 440, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -759,16 +854,19 @@ description: Result of parsing artifact_graph_example_code1.kcl { "type": "LabeledArg", "label": { + "commentStart": 470, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 484, "elements": [ { "arguments": [ { + "commentStart": 499, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -776,11 +874,13 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 485, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 485, "end": 0, "start": 0, "type": "CallExpression", @@ -789,6 +889,7 @@ description: Result of parsing artifact_graph_example_code1.kcl { "arguments": [ { + "commentStart": 517, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -796,11 +897,13 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 503, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 503, "end": 0, "start": 0, "type": "CallExpression", @@ -815,11 +918,13 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 465, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 465, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -829,17 +934,20 @@ description: Result of parsing artifact_graph_example_code1.kcl { "arguments": [], "callee": { + "commentStart": 527, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 527, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 345, "end": 0, "start": 0, "type": "PipeExpression", @@ -855,9 +963,12 @@ description: Result of parsing artifact_graph_example_code1.kcl "type": "VariableDeclaration" }, { + "commentStart": 535, "declaration": { + "commentStart": 535, "end": 0, "id": { + "commentStart": 535, "end": 0, "name": "extrude002", "start": 0, @@ -868,12 +979,14 @@ description: Result of parsing artifact_graph_example_code1.kcl { "type": "LabeledArg", "label": { + "commentStart": 567, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 576, "end": 0, "raw": "5", "start": 0, @@ -887,16 +1000,19 @@ description: Result of parsing artifact_graph_example_code1.kcl } ], "callee": { + "commentStart": 548, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 548, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 556, "end": 0, "name": "sketch002", "start": 0, @@ -914,6 +1030,7 @@ description: Result of parsing artifact_graph_example_code1.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/artifact_graph_example_code1/program_memory.snap b/rust/kcl-lib/tests/artifact_graph_example_code1/program_memory.snap index 509c10584..1efb62c8f 100644 --- a/rust/kcl-lib/tests/artifact_graph_example_code1/program_memory.snap +++ b/rust/kcl-lib/tests/artifact_graph_example_code1/program_memory.snap @@ -22,6 +22,7 @@ description: Variables in memory after executing artifact_graph_example_code1.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 124, "end": 130, "start": 124, "type": "TagDeclarator", @@ -34,6 +35,7 @@ description: Variables in memory after executing artifact_graph_example_code1.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 164, "end": 170, "start": 164, "type": "TagDeclarator", @@ -82,6 +84,7 @@ description: Variables in memory after executing artifact_graph_example_code1.kc 5.0 ], "tag": { + "commentStart": 124, "end": 130, "start": 124, "type": "TagDeclarator", @@ -106,6 +109,7 @@ description: Variables in memory after executing artifact_graph_example_code1.kc 5.0 ], "tag": { + "commentStart": 164, "end": 170, "start": 164, "type": "TagDeclarator", @@ -386,6 +390,7 @@ description: Variables in memory after executing artifact_graph_example_code1.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 124, "end": 130, "start": 124, "type": "TagDeclarator", @@ -398,6 +403,7 @@ description: Variables in memory after executing artifact_graph_example_code1.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 164, "end": 170, "start": 164, "type": "TagDeclarator", @@ -446,6 +452,7 @@ description: Variables in memory after executing artifact_graph_example_code1.kc 5.0 ], "tag": { + "commentStart": 124, "end": 130, "start": 124, "type": "TagDeclarator", @@ -470,6 +477,7 @@ description: Variables in memory after executing artifact_graph_example_code1.kc 5.0 ], "tag": { + "commentStart": 164, "end": 170, "start": 164, "type": "TagDeclarator", @@ -683,6 +691,7 @@ description: Variables in memory after executing artifact_graph_example_code1.kc 5.0 ], "tag": { + "commentStart": 124, "end": 130, "start": 124, "type": "TagDeclarator", @@ -707,6 +716,7 @@ description: Variables in memory after executing artifact_graph_example_code1.kc 5.0 ], "tag": { + "commentStart": 164, "end": 170, "start": 164, "type": "TagDeclarator", @@ -944,6 +954,7 @@ description: Variables in memory after executing artifact_graph_example_code1.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 124, "end": 130, "start": 124, "type": "TagDeclarator", @@ -956,6 +967,7 @@ description: Variables in memory after executing artifact_graph_example_code1.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 164, "end": 170, "start": 164, "type": "TagDeclarator", @@ -1004,6 +1016,7 @@ description: Variables in memory after executing artifact_graph_example_code1.kc 5.0 ], "tag": { + "commentStart": 124, "end": 130, "start": 124, "type": "TagDeclarator", @@ -1028,6 +1041,7 @@ description: Variables in memory after executing artifact_graph_example_code1.kc 5.0 ], "tag": { + "commentStart": 164, "end": 170, "start": 164, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/artifact_graph_example_code_no_3d/ast.snap b/rust/kcl-lib/tests/artifact_graph_example_code_no_3d/ast.snap index e12b4c3b6..458b8ba0e 100644 --- a/rust/kcl-lib/tests/artifact_graph_example_code_no_3d/ast.snap +++ b/rust/kcl-lib/tests/artifact_graph_example_code_no_3d/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "sketch003", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl { "arguments": [ { + "commentStart": 26, "end": 0, "raw": "'YZ'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } ], "callee": { + "commentStart": 12, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 12, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl { "arguments": [ { + "commentStart": 52, "elements": [ { + "commentStart": 53, "end": 0, "raw": "5.82", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } }, { + "commentStart": 59, "end": 0, "raw": "0", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl "type": "ArrayExpression" }, { + "commentStart": 63, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } ], "callee": { + "commentStart": 37, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 37, "end": 0, "start": 0, "type": "CallExpression", @@ -91,8 +103,10 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl { "arguments": [ { + "commentStart": 82, "elements": [ { + "commentStart": 83, "end": 0, "raw": "180", "start": 0, @@ -104,6 +118,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } }, { + "commentStart": 88, "end": 0, "raw": "11.54", "start": 0, @@ -121,12 +136,14 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl "type": "ArrayExpression" }, { + "commentStart": 96, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 99, "end": 0, "start": 0, "type": "TagDeclarator", @@ -135,11 +152,13 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } ], "callee": { + "commentStart": 71, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 71, "end": 0, "start": 0, "type": "CallExpression", @@ -148,12 +167,15 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl { "arguments": [ { + "commentStart": 138, "elements": [ { + "commentStart": 147, "end": 0, "left": { "arguments": [ { + "commentStart": 154, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -162,11 +184,13 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } ], "callee": { + "commentStart": 147, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 147, "end": 0, "start": 0, "type": "CallExpression", @@ -174,6 +198,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl }, "operator": "-", "right": { + "commentStart": 178, "end": 0, "raw": "90", "start": 0, @@ -189,6 +214,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl "type": "BinaryExpression" }, { + "commentStart": 189, "end": 0, "raw": "8.21", "start": 0, @@ -206,12 +232,14 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl "type": "ArrayExpression" }, { + "commentStart": 202, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 205, "end": 0, "start": 0, "type": "TagDeclarator", @@ -220,11 +248,13 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } ], "callee": { + "commentStart": 127, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 127, "end": 0, "start": 0, "type": "CallExpression", @@ -233,10 +263,12 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl { "arguments": [ { + "commentStart": 244, "elements": [ { "arguments": [ { + "commentStart": 260, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -245,11 +277,13 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } ], "callee": { + "commentStart": 253, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 253, "end": 0, "start": 0, "type": "CallExpression", @@ -259,6 +293,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl "argument": { "arguments": [ { + "commentStart": 298, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -267,16 +302,19 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } ], "callee": { + "commentStart": 291, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 291, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 290, "end": 0, "operator": "-", "start": 0, @@ -290,12 +328,14 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl "type": "ArrayExpression" }, { + "commentStart": 328, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 331, "end": 0, "start": 0, "type": "TagDeclarator", @@ -304,11 +344,13 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } ], "callee": { + "commentStart": 233, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 233, "end": 0, "start": 0, "type": "CallExpression", @@ -319,16 +361,19 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl { "type": "LabeledArg", "label": { + "commentStart": 364, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 378, "elements": [ { "arguments": [ { + "commentStart": 393, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -336,11 +381,13 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } ], "callee": { + "commentStart": 379, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 379, "end": 0, "start": 0, "type": "CallExpression", @@ -349,6 +396,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl { "arguments": [ { + "commentStart": 411, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -356,11 +404,13 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } ], "callee": { + "commentStart": 397, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 397, "end": 0, "start": 0, "type": "CallExpression", @@ -375,11 +425,13 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } ], "callee": { + "commentStart": 359, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 359, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -389,17 +441,20 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl { "arguments": [], "callee": { + "commentStart": 421, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 421, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 12, "end": 0, "start": 0, "type": "PipeExpression", @@ -415,9 +470,12 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl "type": "VariableDeclaration" }, { + "commentStart": 429, "declaration": { + "commentStart": 429, "end": 0, "id": { + "commentStart": 429, "end": 0, "name": "sketch004", "start": 0, @@ -428,6 +486,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl { "arguments": [ { + "commentStart": 455, "end": 0, "raw": "'-XZ'", "start": 0, @@ -437,11 +496,13 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } ], "callee": { + "commentStart": 441, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 441, "end": 0, "start": 0, "type": "CallExpression", @@ -450,8 +511,10 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl { "arguments": [ { + "commentStart": 482, "elements": [ { + "commentStart": 483, "end": 0, "raw": "0", "start": 0, @@ -463,6 +526,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } }, { + "commentStart": 486, "end": 0, "raw": "14.36", "start": 0, @@ -480,6 +544,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl "type": "ArrayExpression" }, { + "commentStart": 494, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -487,11 +552,13 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } ], "callee": { + "commentStart": 467, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 467, "end": 0, "start": 0, "type": "CallExpression", @@ -502,14 +569,17 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl { "type": "LabeledArg", "label": { + "commentStart": 507, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 513, "elements": [ { + "commentStart": 514, "end": 0, "raw": "15.49", "start": 0, @@ -521,6 +591,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } }, { + "commentStart": 521, "end": 0, "raw": "0.05", "start": 0, @@ -540,11 +611,13 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } ], "callee": { + "commentStart": 502, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 502, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -554,8 +627,10 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl { "arguments": [ { + "commentStart": 549, "elements": [ { + "commentStart": 550, "end": 0, "raw": "0", "start": 0, @@ -567,6 +642,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } }, { + "commentStart": 553, "end": 0, "raw": "0", "start": 0, @@ -584,6 +660,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl "type": "ArrayExpression" }, { + "commentStart": 557, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -591,11 +668,13 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } ], "callee": { + "commentStart": 533, "end": 0, "name": "tangentialArcTo", "start": 0, "type": "Identifier" }, + "commentStart": 533, "end": 0, "start": 0, "type": "CallExpression", @@ -604,9 +683,11 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl { "arguments": [ { + "commentStart": 581, "elements": [ { "argument": { + "commentStart": 583, "end": 0, "raw": "6.8", "start": 0, @@ -617,6 +698,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl "suffix": "None" } }, + "commentStart": 582, "end": 0, "operator": "-", "start": 0, @@ -624,6 +706,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl "type": "UnaryExpression" }, { + "commentStart": 588, "end": 0, "raw": "8.17", "start": 0, @@ -641,6 +724,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl "type": "ArrayExpression" }, { + "commentStart": 595, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -648,17 +732,20 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl } ], "callee": { + "commentStart": 565, "end": 0, "name": "tangentialArcTo", "start": 0, "type": "Identifier" }, + "commentStart": 565, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 441, "end": 0, "start": 0, "type": "PipeExpression", @@ -674,6 +761,7 @@ description: Result of parsing artifact_graph_example_code_no_3d.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/artifact_graph_example_code_no_3d/program_memory.snap b/rust/kcl-lib/tests/artifact_graph_example_code_no_3d/program_memory.snap index 625f3c394..e3d229a94 100644 --- a/rust/kcl-lib/tests/artifact_graph_example_code_no_3d/program_memory.snap +++ b/rust/kcl-lib/tests/artifact_graph_example_code_no_3d/program_memory.snap @@ -34,6 +34,7 @@ description: Variables in memory after executing artifact_graph_example_code_no_ 0.0 ], "tag": { + "commentStart": 99, "end": 120, "start": 99, "type": "TagDeclarator", @@ -58,6 +59,7 @@ description: Variables in memory after executing artifact_graph_example_code_no_ 0.0 ], "tag": { + "commentStart": 205, "end": 226, "start": 205, "type": "TagDeclarator", @@ -82,6 +84,7 @@ description: Variables in memory after executing artifact_graph_example_code_no_ 8.21 ], "tag": { + "commentStart": 331, "end": 352, "start": 331, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/artifact_graph_example_code_offset_planes/ast.snap b/rust/kcl-lib/tests/artifact_graph_example_code_offset_planes/ast.snap index aa62904a4..ada99d1fb 100644 --- a/rust/kcl-lib/tests/artifact_graph_example_code_offset_planes/ast.snap +++ b/rust/kcl-lib/tests/artifact_graph_example_code_offset_planes/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "offsetPlane001", "start": 0, @@ -19,12 +22,14 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl { "type": "LabeledArg", "label": { + "commentStart": 35, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 44, "end": 0, "raw": "20", "start": 0, @@ -38,16 +43,19 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl } ], "callee": { + "commentStart": 17, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 17, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 29, "end": 0, "raw": "\"XY\"", "start": 0, @@ -66,9 +74,12 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl "type": "VariableDeclaration" }, { + "commentStart": 48, "declaration": { + "commentStart": 48, "end": 0, "id": { + "commentStart": 48, "end": 0, "name": "offsetPlane002", "start": 0, @@ -79,6 +90,7 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl { "type": "LabeledArg", "label": { + "commentStart": 83, "end": 0, "name": "offset", "start": 0, @@ -86,6 +98,7 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl }, "arg": { "argument": { + "commentStart": 93, "end": 0, "raw": "50", "start": 0, @@ -96,6 +109,7 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl "suffix": "None" } }, + "commentStart": 92, "end": 0, "operator": "-", "start": 0, @@ -105,16 +119,19 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl } ], "callee": { + "commentStart": 65, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 65, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 77, "end": 0, "raw": "\"XZ\"", "start": 0, @@ -133,9 +150,12 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl "type": "VariableDeclaration" }, { + "commentStart": 97, "declaration": { + "commentStart": 97, "end": 0, "id": { + "commentStart": 97, "end": 0, "name": "offsetPlane003", "start": 0, @@ -146,12 +166,14 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl { "type": "LabeledArg", "label": { + "commentStart": 132, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 141, "end": 0, "raw": "10", "start": 0, @@ -165,16 +187,19 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl } ], "callee": { + "commentStart": 114, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 114, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 126, "end": 0, "raw": "\"YZ\"", "start": 0, @@ -193,9 +218,12 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl "type": "VariableDeclaration" }, { + "commentStart": 144, "declaration": { + "commentStart": 146, "end": 0, "id": { + "commentStart": 146, "end": 0, "name": "sketch002", "start": 0, @@ -206,6 +234,7 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl { "arguments": [ { + "commentStart": 172, "end": 0, "name": "offsetPlane001", "start": 0, @@ -214,11 +243,13 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl } ], "callee": { + "commentStart": 158, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 158, "end": 0, "start": 0, "type": "CallExpression", @@ -227,8 +258,10 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl { "arguments": [ { + "commentStart": 208, "elements": [ { + "commentStart": 209, "end": 0, "raw": "0", "start": 0, @@ -240,6 +273,7 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl } }, { + "commentStart": 212, "end": 0, "raw": "0", "start": 0, @@ -257,6 +291,7 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl "type": "ArrayExpression" }, { + "commentStart": 216, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -264,11 +299,13 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl } ], "callee": { + "commentStart": 193, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 193, "end": 0, "start": 0, "type": "CallExpression", @@ -279,14 +316,17 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl { "type": "LabeledArg", "label": { + "commentStart": 229, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 235, "elements": [ { + "commentStart": 236, "end": 0, "raw": "6.78", "start": 0, @@ -298,6 +338,7 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl } }, { + "commentStart": 242, "end": 0, "raw": "15.01", "start": 0, @@ -317,11 +358,13 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl } ], "callee": { + "commentStart": 224, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 224, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -329,6 +372,7 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl "unlabeled": null } ], + "commentStart": 158, "end": 0, "start": 0, "type": "PipeExpression", @@ -344,11 +388,13 @@ description: Result of parsing artifact_graph_example_code_offset_planes.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 144, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/artifact_graph_sketch_on_face_etc/ast.snap b/rust/kcl-lib/tests/artifact_graph_sketch_on_face_etc/ast.snap index 1f6c0835a..288bafea6 100644 --- a/rust/kcl-lib/tests/artifact_graph_sketch_on_face_etc/ast.snap +++ b/rust/kcl-lib/tests/artifact_graph_sketch_on_face_etc/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "sketch001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "arguments": [ { + "commentStart": 26, "end": 0, "raw": "'XZ'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 12, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 12, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "arguments": [ { + "commentStart": 52, "elements": [ { + "commentStart": 53, "end": 0, "raw": "0", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } }, { + "commentStart": 56, "end": 0, "raw": "0", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "ArrayExpression" }, { + "commentStart": 60, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 37, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 37, "end": 0, "start": 0, "type": "CallExpression", @@ -93,14 +105,17 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 73, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 79, "elements": [ { + "commentStart": 80, "end": 0, "raw": "4", "start": 0, @@ -112,6 +127,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } }, { + "commentStart": 83, "end": 0, "raw": "8", "start": 0, @@ -131,11 +147,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 68, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 68, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -147,14 +165,17 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 97, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 103, "elements": [ { + "commentStart": 104, "end": 0, "raw": "5", "start": 0, @@ -167,6 +188,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl }, { "argument": { + "commentStart": 108, "end": 0, "raw": "8", "start": 0, @@ -177,6 +199,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "suffix": "None" } }, + "commentStart": 107, "end": 0, "operator": "-", "start": 0, @@ -193,12 +216,14 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 112, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 118, "end": 0, "start": 0, "type": "TagDeclarator", @@ -208,11 +233,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 92, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 92, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -224,16 +251,19 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 136, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 150, "elements": [ { "arguments": [ { + "commentStart": 165, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -241,11 +271,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 151, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 151, "end": 0, "start": 0, "type": "CallExpression", @@ -254,6 +286,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "arguments": [ { + "commentStart": 183, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -261,11 +294,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 169, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 169, "end": 0, "start": 0, "type": "CallExpression", @@ -280,11 +315,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 131, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 131, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -294,17 +331,20 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "arguments": [], "callee": { + "commentStart": 193, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 193, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 12, "end": 0, "start": 0, "type": "PipeExpression", @@ -320,9 +360,12 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "VariableDeclaration" }, { + "commentStart": 201, "declaration": { + "commentStart": 201, "end": 0, "id": { + "commentStart": 201, "end": 0, "name": "extrude001", "start": 0, @@ -333,12 +376,14 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 233, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 242, "end": 0, "raw": "6", "start": 0, @@ -352,16 +397,19 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 214, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 214, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 222, "end": 0, "name": "sketch001", "start": 0, @@ -379,9 +427,12 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "VariableDeclaration" }, { + "commentStart": 245, "declaration": { + "commentStart": 245, "end": 0, "id": { + "commentStart": 245, "end": 0, "name": "sketch002", "start": 0, @@ -392,6 +443,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "arguments": [ { + "commentStart": 271, "end": 0, "name": "extrude001", "start": 0, @@ -399,6 +451,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "Identifier" }, { + "commentStart": 283, "end": 0, "name": "seg01", "start": 0, @@ -407,11 +460,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 257, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 257, "end": 0, "start": 0, "type": "CallExpression", @@ -420,9 +475,11 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "arguments": [ { + "commentStart": 310, "elements": [ { "argument": { + "commentStart": 312, "end": 0, "raw": "0.5", "start": 0, @@ -433,6 +490,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "suffix": "None" } }, + "commentStart": 311, "end": 0, "operator": "-", "start": 0, @@ -440,6 +498,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "UnaryExpression" }, { + "commentStart": 317, "end": 0, "raw": "0.5", "start": 0, @@ -457,6 +516,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "ArrayExpression" }, { + "commentStart": 323, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -464,11 +524,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 295, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 295, "end": 0, "start": 0, "type": "CallExpression", @@ -479,14 +541,17 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 336, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 342, "elements": [ { + "commentStart": 343, "end": 0, "raw": "2", "start": 0, @@ -498,6 +563,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } }, { + "commentStart": 346, "end": 0, "raw": "5", "start": 0, @@ -517,11 +583,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 331, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 331, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -533,14 +601,17 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 360, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 366, "elements": [ { + "commentStart": 367, "end": 0, "raw": "2", "start": 0, @@ -553,6 +624,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl }, { "argument": { + "commentStart": 371, "end": 0, "raw": "5", "start": 0, @@ -563,6 +635,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "suffix": "None" } }, + "commentStart": 370, "end": 0, "operator": "-", "start": 0, @@ -578,11 +651,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 355, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 355, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -594,16 +669,19 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 385, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 399, "elements": [ { "arguments": [ { + "commentStart": 414, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -611,11 +689,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 400, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 400, "end": 0, "start": 0, "type": "CallExpression", @@ -624,6 +704,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "arguments": [ { + "commentStart": 432, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -631,11 +712,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 418, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 418, "end": 0, "start": 0, "type": "CallExpression", @@ -650,11 +733,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 380, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 380, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -664,17 +749,20 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "arguments": [], "callee": { + "commentStart": 442, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 442, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 257, "end": 0, "start": 0, "type": "PipeExpression", @@ -690,9 +778,12 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "VariableDeclaration" }, { + "commentStart": 450, "declaration": { + "commentStart": 450, "end": 0, "id": { + "commentStart": 450, "end": 0, "name": "extrude002", "start": 0, @@ -703,12 +794,14 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 482, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 491, "end": 0, "raw": "5", "start": 0, @@ -722,16 +815,19 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 463, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 463, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 471, "end": 0, "name": "sketch002", "start": 0, @@ -749,9 +845,12 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "VariableDeclaration" }, { + "commentStart": 494, "declaration": { + "commentStart": 494, "end": 0, "id": { + "commentStart": 494, "end": 0, "name": "sketch003", "start": 0, @@ -762,6 +861,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "arguments": [ { + "commentStart": 520, "end": 0, "name": "extrude002", "start": 0, @@ -769,6 +869,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "Identifier" }, { + "commentStart": 532, "end": 0, "raw": "'END'", "start": 0, @@ -778,11 +879,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 506, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 506, "end": 0, "start": 0, "type": "CallExpression", @@ -791,8 +894,10 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "arguments": [ { + "commentStart": 559, "elements": [ { + "commentStart": 560, "end": 0, "raw": "1", "start": 0, @@ -804,6 +909,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } }, { + "commentStart": 563, "end": 0, "raw": "1.5", "start": 0, @@ -821,6 +927,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "ArrayExpression" }, { + "commentStart": 569, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -828,11 +935,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 544, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 544, "end": 0, "start": 0, "type": "CallExpression", @@ -843,14 +952,17 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 582, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 588, "elements": [ { + "commentStart": 589, "end": 0, "raw": "0.5", "start": 0, @@ -862,6 +974,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } }, { + "commentStart": 594, "end": 0, "raw": "2", "start": 0, @@ -882,12 +995,14 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 598, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 604, "end": 0, "start": 0, "type": "TagDeclarator", @@ -897,11 +1012,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 577, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 577, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -913,14 +1030,17 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 622, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 628, "elements": [ { + "commentStart": 629, "end": 0, "raw": "1", "start": 0, @@ -933,6 +1053,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl }, { "argument": { + "commentStart": 633, "end": 0, "raw": "2", "start": 0, @@ -943,6 +1064,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "suffix": "None" } }, + "commentStart": 632, "end": 0, "operator": "-", "start": 0, @@ -958,11 +1080,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 617, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 617, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -974,16 +1098,19 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 647, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 661, "elements": [ { "arguments": [ { + "commentStart": 676, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -991,11 +1118,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 662, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 662, "end": 0, "start": 0, "type": "CallExpression", @@ -1004,6 +1133,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "arguments": [ { + "commentStart": 694, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1011,11 +1141,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 680, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 680, "end": 0, "start": 0, "type": "CallExpression", @@ -1030,11 +1162,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 642, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 642, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1044,17 +1178,20 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "arguments": [], "callee": { + "commentStart": 704, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 704, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 506, "end": 0, "start": 0, "type": "PipeExpression", @@ -1070,9 +1207,12 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "VariableDeclaration" }, { + "commentStart": 712, "declaration": { + "commentStart": 712, "end": 0, "id": { + "commentStart": 712, "end": 0, "name": "extrude003", "start": 0, @@ -1083,12 +1223,14 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 744, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 753, "end": 0, "raw": "4", "start": 0, @@ -1102,16 +1244,19 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 725, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 725, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 733, "end": 0, "name": "sketch003", "start": 0, @@ -1129,9 +1274,12 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "VariableDeclaration" }, { + "commentStart": 756, "declaration": { + "commentStart": 756, "end": 0, "id": { + "commentStart": 756, "end": 0, "name": "sketch004", "start": 0, @@ -1142,6 +1290,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "arguments": [ { + "commentStart": 782, "end": 0, "name": "extrude003", "start": 0, @@ -1149,6 +1298,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "Identifier" }, { + "commentStart": 794, "end": 0, "name": "seg02", "start": 0, @@ -1157,11 +1307,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 768, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 768, "end": 0, "start": 0, "type": "CallExpression", @@ -1170,9 +1322,11 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "arguments": [ { + "commentStart": 821, "elements": [ { "argument": { + "commentStart": 823, "end": 0, "raw": "3", "start": 0, @@ -1183,6 +1337,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "suffix": "None" } }, + "commentStart": 822, "end": 0, "operator": "-", "start": 0, @@ -1190,6 +1345,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "UnaryExpression" }, { + "commentStart": 826, "end": 0, "raw": "14", "start": 0, @@ -1207,6 +1363,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "ArrayExpression" }, { + "commentStart": 831, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1214,11 +1371,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 806, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 806, "end": 0, "start": 0, "type": "CallExpression", @@ -1229,14 +1388,17 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 844, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 850, "elements": [ { + "commentStart": 851, "end": 0, "raw": "0.5", "start": 0, @@ -1248,6 +1410,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } }, { + "commentStart": 856, "end": 0, "raw": "1", "start": 0, @@ -1267,11 +1430,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 839, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 839, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1283,14 +1448,17 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 870, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 876, "elements": [ { + "commentStart": 877, "end": 0, "raw": "0.5", "start": 0, @@ -1303,6 +1471,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl }, { "argument": { + "commentStart": 883, "end": 0, "raw": "2", "start": 0, @@ -1313,6 +1482,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "suffix": "None" } }, + "commentStart": 882, "end": 0, "operator": "-", "start": 0, @@ -1328,11 +1498,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 865, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 865, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1344,16 +1516,19 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 897, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 911, "elements": [ { "arguments": [ { + "commentStart": 926, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1361,11 +1536,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 912, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 912, "end": 0, "start": 0, "type": "CallExpression", @@ -1374,6 +1551,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "arguments": [ { + "commentStart": 944, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1381,11 +1559,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 930, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 930, "end": 0, "start": 0, "type": "CallExpression", @@ -1400,11 +1580,13 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 892, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 892, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1414,17 +1596,20 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "arguments": [], "callee": { + "commentStart": 954, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 954, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 768, "end": 0, "start": 0, "type": "PipeExpression", @@ -1440,9 +1625,12 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "VariableDeclaration" }, { + "commentStart": 962, "declaration": { + "commentStart": 962, "end": 0, "id": { + "commentStart": 962, "end": 0, "name": "extrude004", "start": 0, @@ -1453,12 +1641,14 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl { "type": "LabeledArg", "label": { + "commentStart": 994, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1003, "end": 0, "raw": "3", "start": 0, @@ -1472,16 +1662,19 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl } ], "callee": { + "commentStart": 975, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 975, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 983, "end": 0, "name": "sketch004", "start": 0, @@ -1499,6 +1692,7 @@ description: Result of parsing artifact_graph_sketch_on_face_etc.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/artifact_graph_sketch_on_face_etc/program_memory.snap b/rust/kcl-lib/tests/artifact_graph_sketch_on_face_etc/program_memory.snap index 4fd153df4..be2478180 100644 --- a/rust/kcl-lib/tests/artifact_graph_sketch_on_face_etc/program_memory.snap +++ b/rust/kcl-lib/tests/artifact_graph_sketch_on_face_etc/program_memory.snap @@ -22,6 +22,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 118, "end": 124, "start": 118, "type": "TagDeclarator", @@ -70,6 +71,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e 8.0 ], "tag": { + "commentStart": 118, "end": 124, "start": 118, "type": "TagDeclarator", @@ -337,6 +339,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 118, "end": 124, "start": 118, "type": "TagDeclarator", @@ -385,6 +388,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e 8.0 ], "tag": { + "commentStart": 118, "end": 124, "start": 118, "type": "TagDeclarator", @@ -552,6 +556,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 604, "end": 610, "start": 604, "type": "TagDeclarator", @@ -588,6 +593,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e 1.5 ], "tag": { + "commentStart": 604, "end": 610, "start": 604, "type": "TagDeclarator", @@ -825,6 +831,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 118, "end": 124, "start": 118, "type": "TagDeclarator", @@ -873,6 +880,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e 8.0 ], "tag": { + "commentStart": 118, "end": 124, "start": 118, "type": "TagDeclarator", @@ -1209,6 +1217,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 604, "end": 610, "start": 604, "type": "TagDeclarator", @@ -1245,6 +1254,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e 1.5 ], "tag": { + "commentStart": 604, "end": 610, "start": 604, "type": "TagDeclarator", @@ -1482,6 +1492,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 118, "end": 124, "start": 118, "type": "TagDeclarator", @@ -1530,6 +1541,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e 8.0 ], "tag": { + "commentStart": 118, "end": 124, "start": 118, "type": "TagDeclarator", @@ -1806,6 +1818,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e 8.0 ], "tag": { + "commentStart": 118, "end": 124, "start": 118, "type": "TagDeclarator", @@ -2039,6 +2052,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 118, "end": 124, "start": 118, "type": "TagDeclarator", @@ -2087,6 +2101,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e 8.0 ], "tag": { + "commentStart": 118, "end": 124, "start": 118, "type": "TagDeclarator", @@ -2251,6 +2266,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e 1.5 ], "tag": { + "commentStart": 604, "end": 610, "start": 604, "type": "TagDeclarator", @@ -2488,6 +2504,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 118, "end": 124, "start": 118, "type": "TagDeclarator", @@ -2536,6 +2553,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e 8.0 ], "tag": { + "commentStart": 118, "end": 124, "start": 118, "type": "TagDeclarator", @@ -2838,6 +2856,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 604, "end": 610, "start": 604, "type": "TagDeclarator", @@ -2874,6 +2893,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e 1.5 ], "tag": { + "commentStart": 604, "end": 610, "start": 604, "type": "TagDeclarator", @@ -3111,6 +3131,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 118, "end": 124, "start": 118, "type": "TagDeclarator", @@ -3159,6 +3180,7 @@ description: Variables in memory after executing artifact_graph_sketch_on_face_e 8.0 ], "tag": { + "commentStart": 118, "end": 124, "start": 118, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/assembly_mixed_units_cubes/artifact_graph_flowchart.snap.md b/rust/kcl-lib/tests/assembly_mixed_units_cubes/artifact_graph_flowchart.snap.md index 8a2eae937..40ca45918 100644 --- a/rust/kcl-lib/tests/assembly_mixed_units_cubes/artifact_graph_flowchart.snap.md +++ b/rust/kcl-lib/tests/assembly_mixed_units_cubes/artifact_graph_flowchart.snap.md @@ -1,25 +1,25 @@ ```mermaid flowchart LR subgraph path2 [Path] - 2["Path
[77, 114, 3]"] - 3["Segment
[120, 137, 3]"] - 4["Segment
[143, 161, 3]"] - 5["Segment
[167, 185, 3]"] - 6["Segment
[191, 247, 3]"] - 7["Segment
[253, 260, 3]"] + 2["Path
[76, 113, 3]"] + 3["Segment
[119, 136, 3]"] + 4["Segment
[142, 160, 3]"] + 5["Segment
[166, 184, 3]"] + 6["Segment
[190, 246, 3]"] + 7["Segment
[252, 259, 3]"] 8[Solid2d] end subgraph path25 [Path] - 25["Path
[77, 112, 4]"] - 26["Segment
[118, 135, 4]"] - 27["Segment
[141, 159, 4]"] - 28["Segment
[165, 183, 4]"] - 29["Segment
[189, 245, 4]"] - 30["Segment
[251, 258, 4]"] + 25["Path
[76, 111, 4]"] + 26["Segment
[117, 134, 4]"] + 27["Segment
[140, 158, 4]"] + 28["Segment
[164, 182, 4]"] + 29["Segment
[188, 244, 4]"] + 30["Segment
[250, 257, 4]"] 31[Solid2d] end - 1["Plane
[48, 67, 3]"] - 9["Sweep Extrusion
[266, 288, 3]"] + 1["Plane
[47, 66, 3]"] + 9["Sweep Extrusion
[265, 287, 3]"] 10[Wall] 11[Wall] 12[Wall] @@ -34,8 +34,8 @@ flowchart LR 21["SweepEdge Adjacent"] 22["SweepEdge Opposite"] 23["SweepEdge Adjacent"] - 24["Plane
[48, 67, 4]"] - 32["Sweep Extrusion
[264, 286, 4]"] + 24["Plane
[47, 66, 4]"] + 32["Sweep Extrusion
[263, 285, 4]"] 33[Wall] 34[Wall] 35[Wall] diff --git a/rust/kcl-lib/tests/assembly_mixed_units_cubes/ast.snap b/rust/kcl-lib/tests/assembly_mixed_units_cubes/ast.snap index 12382902e..34aeeb8eb 100644 --- a/rust/kcl-lib/tests/assembly_mixed_units_cubes/ast.snap +++ b/rust/kcl-lib/tests/assembly_mixed_units_cubes/ast.snap @@ -6,6 +6,7 @@ description: Result of parsing assembly_mixed_units_cubes.kcl "Ok": { "body": [ { + "commentStart": 33, "end": 0, "path": { "type": "Kcl", @@ -14,6 +15,7 @@ description: Result of parsing assembly_mixed_units_cubes.kcl "selector": { "type": "None", "alias": { + "commentStart": 63, "end": 0, "name": "cubeIn", "start": 0, @@ -25,6 +27,7 @@ description: Result of parsing assembly_mixed_units_cubes.kcl "type": "ImportStatement" }, { + "commentStart": 70, "end": 0, "path": { "type": "Kcl", @@ -33,6 +36,7 @@ description: Result of parsing assembly_mixed_units_cubes.kcl "selector": { "type": "None", "alias": { + "commentStart": 94, "end": 0, "name": "cubeMm", "start": 0, @@ -44,8 +48,10 @@ description: Result of parsing assembly_mixed_units_cubes.kcl "type": "ImportStatement" }, { + "commentStart": 100, "end": 0, "expression": { + "commentStart": 102, "end": 0, "name": "cubeIn", "start": 0, @@ -57,8 +63,10 @@ description: Result of parsing assembly_mixed_units_cubes.kcl "type": "ExpressionStatement" }, { + "commentStart": 109, "end": 0, "expression": { + "commentStart": 109, "end": 0, "name": "cubeMm", "start": 0, @@ -70,11 +78,14 @@ description: Result of parsing assembly_mixed_units_cubes.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 1, "end": 0, "name": "settings", "start": 0, @@ -82,8 +93,10 @@ description: Result of parsing assembly_mixed_units_cubes.kcl }, "properties": [ { + "commentStart": 10, "end": 0, "key": { + "commentStart": 10, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -92,6 +105,7 @@ description: Result of parsing assembly_mixed_units_cubes.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 30, "end": 0, "name": "in", "start": 0, @@ -108,6 +122,7 @@ description: Result of parsing assembly_mixed_units_cubes.kcl "nonCodeNodes": { "1": [ { + "commentStart": 100, "end": 0, "start": 0, "type": "NonCodeNode", @@ -119,6 +134,7 @@ description: Result of parsing assembly_mixed_units_cubes.kcl }, "startNodes": [ { + "commentStart": 33, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/assembly_mixed_units_cubes/cube-inches.kcl b/rust/kcl-lib/tests/assembly_mixed_units_cubes/cube-inches.kcl index 5ee5b97e0..dbd2d6a10 100644 --- a/rust/kcl-lib/tests/assembly_mixed_units_cubes/cube-inches.kcl +++ b/rust/kcl-lib/tests/assembly_mixed_units_cubes/cube-inches.kcl @@ -1,6 +1,5 @@ @settings(defaultLengthUnit = in) - sketch001 = startSketchOn('XY') cubeIn = startProfileAt([-10, -10], sketch001) |> xLine(length = 5) diff --git a/rust/kcl-lib/tests/assembly_mixed_units_cubes/cube-mm.kcl b/rust/kcl-lib/tests/assembly_mixed_units_cubes/cube-mm.kcl index b89620f33..893cfcf4a 100644 --- a/rust/kcl-lib/tests/assembly_mixed_units_cubes/cube-mm.kcl +++ b/rust/kcl-lib/tests/assembly_mixed_units_cubes/cube-mm.kcl @@ -1,6 +1,5 @@ @settings(defaultLengthUnit = mm) - sketch001 = startSketchOn('XY') cubeMm = startProfileAt([10, 10], sketch001) |> xLine(length = 5) diff --git a/rust/kcl-lib/tests/assembly_mixed_units_cubes/input.kcl b/rust/kcl-lib/tests/assembly_mixed_units_cubes/input.kcl index a4241fbf5..05312c57b 100644 --- a/rust/kcl-lib/tests/assembly_mixed_units_cubes/input.kcl +++ b/rust/kcl-lib/tests/assembly_mixed_units_cubes/input.kcl @@ -1,6 +1,5 @@ @settings(defaultLengthUnit = in) - import "cube-inches.kcl" as cubeIn import "cube-mm.kcl" as cubeMm diff --git a/rust/kcl-lib/tests/assembly_mixed_units_cubes/unparsed.snap b/rust/kcl-lib/tests/assembly_mixed_units_cubes/unparsed.snap index 4a020dbe3..5da2f70d0 100644 --- a/rust/kcl-lib/tests/assembly_mixed_units_cubes/unparsed.snap +++ b/rust/kcl-lib/tests/assembly_mixed_units_cubes/unparsed.snap @@ -4,7 +4,6 @@ description: Result of unparsing assembly_mixed_units_cubes.kcl --- @settings(defaultLengthUnit = in) - import "cube-inches.kcl" as cubeIn import "cube-mm.kcl" as cubeMm diff --git a/rust/kcl-lib/tests/assembly_mixed_units_cubes/unparsed@cube-inches.kcl.snap b/rust/kcl-lib/tests/assembly_mixed_units_cubes/unparsed@cube-inches.kcl.snap index c6df2d54d..8cd3c97b2 100644 --- a/rust/kcl-lib/tests/assembly_mixed_units_cubes/unparsed@cube-inches.kcl.snap +++ b/rust/kcl-lib/tests/assembly_mixed_units_cubes/unparsed@cube-inches.kcl.snap @@ -4,7 +4,6 @@ description: Result of unparsing tests/assembly_mixed_units_cubes/cube-inches.kc --- @settings(defaultLengthUnit = in) - sketch001 = startSketchOn('XY') cubeIn = startProfileAt([-10, -10], sketch001) |> xLine(length = 5) diff --git a/rust/kcl-lib/tests/assembly_mixed_units_cubes/unparsed@cube-mm.kcl.snap b/rust/kcl-lib/tests/assembly_mixed_units_cubes/unparsed@cube-mm.kcl.snap index 54ed3a0f6..54f504c25 100644 --- a/rust/kcl-lib/tests/assembly_mixed_units_cubes/unparsed@cube-mm.kcl.snap +++ b/rust/kcl-lib/tests/assembly_mixed_units_cubes/unparsed@cube-mm.kcl.snap @@ -4,7 +4,6 @@ description: Result of unparsing tests/assembly_mixed_units_cubes/cube-mm.kcl --- @settings(defaultLengthUnit = mm) - sketch001 = startSketchOn('XY') cubeMm = startProfileAt([10, 10], sketch001) |> xLine(length = 5) diff --git a/rust/kcl-lib/tests/assembly_non_default_units/artifact_graph_flowchart.snap.md b/rust/kcl-lib/tests/assembly_non_default_units/artifact_graph_flowchart.snap.md index e48467a01..0efe7777c 100644 --- a/rust/kcl-lib/tests/assembly_non_default_units/artifact_graph_flowchart.snap.md +++ b/rust/kcl-lib/tests/assembly_non_default_units/artifact_graph_flowchart.snap.md @@ -1,17 +1,17 @@ ```mermaid flowchart LR subgraph path2 [Path] - 2["Path
[198, 233, 3]"] - 3["Segment
[198, 233, 3]"] + 2["Path
[197, 232, 3]"] + 3["Segment
[197, 232, 3]"] 4[Solid2d] end subgraph path6 [Path] - 6["Path
[114, 149, 4]"] - 7["Segment
[114, 149, 4]"] + 6["Path
[113, 148, 4]"] + 7["Segment
[113, 148, 4]"] 8[Solid2d] end - 1["Plane
[173, 192, 3]"] - 5["Plane
[89, 108, 4]"] + 1["Plane
[172, 191, 3]"] + 5["Plane
[88, 107, 4]"] 1 --- 2 2 --- 3 2 --- 4 diff --git a/rust/kcl-lib/tests/assembly_non_default_units/ast.snap b/rust/kcl-lib/tests/assembly_non_default_units/ast.snap index 3a179ccc3..0f775f8cb 100644 --- a/rust/kcl-lib/tests/assembly_non_default_units/ast.snap +++ b/rust/kcl-lib/tests/assembly_non_default_units/ast.snap @@ -6,11 +6,16 @@ description: Result of parsing assembly_non_default_units.kcl "Ok": { "body": [ { + "commentStart": 33, "end": 0, "path": { "type": "Kcl", "filename": "other1.kcl" }, + "preComments": [ + "// Use a default unit that isn't the default of mm.", + "// This should look like two circles barely touching each other." + ], "selector": { "type": "None", "alias": null @@ -20,6 +25,7 @@ description: Result of parsing assembly_non_default_units.kcl "type": "ImportStatement" }, { + "commentStart": 172, "end": 0, "path": { "type": "Kcl", @@ -34,8 +40,10 @@ description: Result of parsing assembly_non_default_units.kcl "type": "ImportStatement" }, { + "commentStart": 191, "end": 0, "expression": { + "commentStart": 193, "end": 0, "name": "other1", "start": 0, @@ -47,8 +55,10 @@ description: Result of parsing assembly_non_default_units.kcl "type": "ExpressionStatement" }, { + "commentStart": 200, "end": 0, "expression": { + "commentStart": 200, "end": 0, "name": "other2", "start": 0, @@ -60,11 +70,14 @@ description: Result of parsing assembly_non_default_units.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 1, "end": 0, "name": "settings", "start": 0, @@ -72,8 +85,10 @@ description: Result of parsing assembly_non_default_units.kcl }, "properties": [ { + "commentStart": 10, "end": 0, "key": { + "commentStart": 10, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -82,6 +97,7 @@ description: Result of parsing assembly_non_default_units.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 30, "end": 0, "name": "in", "start": 0, @@ -98,6 +114,7 @@ description: Result of parsing assembly_non_default_units.kcl "nonCodeNodes": { "1": [ { + "commentStart": 191, "end": 0, "start": 0, "type": "NonCodeNode", @@ -109,32 +126,13 @@ description: Result of parsing assembly_non_default_units.kcl }, "startNodes": [ { + "commentStart": 33, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Use a default unit that isn't the default of mm.", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "This should look like two circles barely touching each other.", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/assembly_non_default_units/globals.kcl b/rust/kcl-lib/tests/assembly_non_default_units/globals.kcl index 9eb29e200..ff6cb9c25 100644 --- a/rust/kcl-lib/tests/assembly_non_default_units/globals.kcl +++ b/rust/kcl-lib/tests/assembly_non_default_units/globals.kcl @@ -1,4 +1,3 @@ @settings(defaultLengthUnit = in) - export radius = 1 diff --git a/rust/kcl-lib/tests/assembly_non_default_units/input.kcl b/rust/kcl-lib/tests/assembly_non_default_units/input.kcl index d999ad9d8..3b210d494 100644 --- a/rust/kcl-lib/tests/assembly_non_default_units/input.kcl +++ b/rust/kcl-lib/tests/assembly_non_default_units/input.kcl @@ -1,6 +1,5 @@ @settings(defaultLengthUnit = in) - // Use a default unit that isn't the default of mm. // This should look like two circles barely touching each other. import "other1.kcl" diff --git a/rust/kcl-lib/tests/assembly_non_default_units/other1.kcl b/rust/kcl-lib/tests/assembly_non_default_units/other1.kcl index 779b2fcf8..f7949842e 100644 --- a/rust/kcl-lib/tests/assembly_non_default_units/other1.kcl +++ b/rust/kcl-lib/tests/assembly_non_default_units/other1.kcl @@ -1,6 +1,5 @@ @settings(defaultLengthUnit = in) - // This is not used, but it triggers the problem. import radius from "globals.kcl" diff --git a/rust/kcl-lib/tests/assembly_non_default_units/other2.kcl b/rust/kcl-lib/tests/assembly_non_default_units/other2.kcl index 2c2f6365b..3398f8457 100644 --- a/rust/kcl-lib/tests/assembly_non_default_units/other2.kcl +++ b/rust/kcl-lib/tests/assembly_non_default_units/other2.kcl @@ -1,6 +1,5 @@ @settings(defaultLengthUnit = in) - // Use the same units as in the main importing file. startSketchOn('XZ') |> circle(center = [0, 2], radius = 1) diff --git a/rust/kcl-lib/tests/assembly_non_default_units/unparsed.snap b/rust/kcl-lib/tests/assembly_non_default_units/unparsed.snap index 368336e4c..998621a3e 100644 --- a/rust/kcl-lib/tests/assembly_non_default_units/unparsed.snap +++ b/rust/kcl-lib/tests/assembly_non_default_units/unparsed.snap @@ -4,7 +4,6 @@ description: Result of unparsing assembly_non_default_units.kcl --- @settings(defaultLengthUnit = in) - // Use a default unit that isn't the default of mm. // This should look like two circles barely touching each other. import "other1.kcl" diff --git a/rust/kcl-lib/tests/assembly_non_default_units/unparsed@globals.kcl.snap b/rust/kcl-lib/tests/assembly_non_default_units/unparsed@globals.kcl.snap index dfd39d573..1099d9522 100644 --- a/rust/kcl-lib/tests/assembly_non_default_units/unparsed@globals.kcl.snap +++ b/rust/kcl-lib/tests/assembly_non_default_units/unparsed@globals.kcl.snap @@ -4,5 +4,4 @@ description: Result of unparsing tests/assembly_non_default_units/globals.kcl --- @settings(defaultLengthUnit = in) - export radius = 1 diff --git a/rust/kcl-lib/tests/assembly_non_default_units/unparsed@other1.kcl.snap b/rust/kcl-lib/tests/assembly_non_default_units/unparsed@other1.kcl.snap index 3e80dfc69..dea808c88 100644 --- a/rust/kcl-lib/tests/assembly_non_default_units/unparsed@other1.kcl.snap +++ b/rust/kcl-lib/tests/assembly_non_default_units/unparsed@other1.kcl.snap @@ -4,7 +4,6 @@ description: Result of unparsing tests/assembly_non_default_units/other1.kcl --- @settings(defaultLengthUnit = in) - // This is not used, but it triggers the problem. import radius from "globals.kcl" diff --git a/rust/kcl-lib/tests/assembly_non_default_units/unparsed@other2.kcl.snap b/rust/kcl-lib/tests/assembly_non_default_units/unparsed@other2.kcl.snap index dee62c30b..eaacced1d 100644 --- a/rust/kcl-lib/tests/assembly_non_default_units/unparsed@other2.kcl.snap +++ b/rust/kcl-lib/tests/assembly_non_default_units/unparsed@other2.kcl.snap @@ -4,7 +4,6 @@ description: Result of unparsing tests/assembly_non_default_units/other2.kcl --- @settings(defaultLengthUnit = in) - // Use the same units as in the main importing file. startSketchOn('XZ') |> circle(center = [0, 2], radius = 1) diff --git a/rust/kcl-lib/tests/bad_units_in_annotation/ast.snap b/rust/kcl-lib/tests/bad_units_in_annotation/ast.snap index 571cafdb3..e3c750b49 100644 --- a/rust/kcl-lib/tests/bad_units_in_annotation/ast.snap +++ b/rust/kcl-lib/tests/bad_units_in_annotation/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing bad_units_in_annotation.kcl "Ok": { "body": [ { + "commentStart": 33, "declaration": { + "commentStart": 123, "end": 0, "id": { + "commentStart": 123, "end": 0, "name": "oxygenRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 138, "end": 0, "raw": "0.066", "start": 0, @@ -30,20 +34,30 @@ description: Result of parsing bad_units_in_annotation.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Generated by Text-to-CAD: draw a water molecule", + "", + "", + "// Constants for the water molecule" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 143, "declaration": { + "commentStart": 184, "end": 0, "id": { + "commentStart": 184, "end": 0, "name": "hydrogenRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 201, "end": 0, "raw": "0.053", "start": 0, @@ -64,15 +78,19 @@ description: Result of parsing bad_units_in_annotation.kcl "type": "VariableDeclaration" }, { + "commentStart": 206, "declaration": { + "commentStart": 248, "end": 0, "id": { + "commentStart": 248, "end": 0, "name": "oxygenHydrogenDistance", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 273, "end": 0, "raw": "0.096", "start": 0, @@ -93,15 +111,19 @@ description: Result of parsing bad_units_in_annotation.kcl "type": "VariableDeclaration" }, { + "commentStart": 278, "declaration": { + "commentStart": 337, "end": 0, "id": { + "commentStart": 337, "end": 0, "name": "bondAngle", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 349, "end": 0, "raw": "104.5", "start": 0, @@ -122,9 +144,12 @@ description: Result of parsing bad_units_in_annotation.kcl "type": "VariableDeclaration" }, { + "commentStart": 354, "declaration": { + "commentStart": 437, "end": 0, "id": { + "commentStart": 437, "end": 0, "name": "createAtom", "start": 0, @@ -139,6 +164,7 @@ description: Result of parsing bad_units_in_annotation.kcl { "arguments": [ { + "commentStart": 489, "end": 0, "raw": "'XY'", "start": 0, @@ -148,11 +174,13 @@ description: Result of parsing bad_units_in_annotation.kcl } ], "callee": { + "commentStart": 475, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 475, "end": 0, "start": 0, "type": "CallExpression", @@ -163,12 +191,14 @@ description: Result of parsing bad_units_in_annotation.kcl { "type": "LabeledArg", "label": { + "commentStart": 509, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 518, "end": 0, "name": "center", "start": 0, @@ -179,12 +209,14 @@ description: Result of parsing bad_units_in_annotation.kcl { "type": "LabeledArg", "label": { + "commentStart": 526, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 535, "end": 0, "name": "radius", "start": 0, @@ -194,11 +226,13 @@ description: Result of parsing bad_units_in_annotation.kcl } ], "callee": { + "commentStart": 502, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 502, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -210,14 +244,17 @@ description: Result of parsing bad_units_in_annotation.kcl { "type": "LabeledArg", "label": { + "commentStart": 558, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 567, "end": 0, "left": { + "commentStart": 567, "end": 0, "name": "radius", "start": 0, @@ -226,6 +263,7 @@ description: Result of parsing bad_units_in_annotation.kcl }, "operator": "*", "right": { + "commentStart": 576, "end": 0, "raw": "2", "start": 0, @@ -243,11 +281,13 @@ description: Result of parsing bad_units_in_annotation.kcl } ], "callee": { + "commentStart": 550, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 550, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -255,25 +295,30 @@ description: Result of parsing bad_units_in_annotation.kcl "unlabeled": null } ], + "commentStart": 475, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, + "commentStart": 468, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 464, "end": 0, "start": 0 }, + "commentStart": 447, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 448, "end": 0, "name": "center", "start": 0, @@ -283,6 +328,7 @@ description: Result of parsing bad_units_in_annotation.kcl { "type": "Parameter", "identifier": { + "commentStart": 456, "end": 0, "name": "radius", "start": 0, @@ -299,14 +345,20 @@ description: Result of parsing bad_units_in_annotation.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "// Function to create a sphere representing an atom" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 580, "declaration": { + "commentStart": 622, "end": 0, "id": { + "commentStart": 622, "end": 0, "name": "oxygenAtom", "start": 0, @@ -315,8 +367,10 @@ description: Result of parsing bad_units_in_annotation.kcl "init": { "arguments": [ { + "commentStart": 646, "elements": [ { + "commentStart": 647, "end": 0, "raw": "0", "start": 0, @@ -328,6 +382,7 @@ description: Result of parsing bad_units_in_annotation.kcl } }, { + "commentStart": 650, "end": 0, "raw": "0", "start": 0, @@ -345,6 +400,7 @@ description: Result of parsing bad_units_in_annotation.kcl "type": "ArrayExpression" }, { + "commentStart": 654, "end": 0, "name": "oxygenRadius", "start": 0, @@ -353,11 +409,13 @@ description: Result of parsing bad_units_in_annotation.kcl } ], "callee": { + "commentStart": 635, "end": 0, "name": "createAtom", "start": 0, "type": "Identifier" }, + "commentStart": 635, "end": 0, "start": 0, "type": "CallExpression", @@ -368,22 +426,32 @@ description: Result of parsing bad_units_in_annotation.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Create the oxygen atom at the origin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 667, "declaration": { + "commentStart": 718, "end": 0, "id": { + "commentStart": 718, "end": 0, "name": "hydrogenOffsetX", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 736, "end": 0, "left": { + "commentStart": 736, "end": 0, "name": "oxygenHydrogenDistance", "start": 0, @@ -396,8 +464,10 @@ description: Result of parsing bad_units_in_annotation.kcl { "arguments": [ { + "commentStart": 775, "end": 0, "left": { + "commentStart": 775, "end": 0, "name": "bondAngle", "start": 0, @@ -406,6 +476,7 @@ description: Result of parsing bad_units_in_annotation.kcl }, "operator": "/", "right": { + "commentStart": 787, "end": 0, "raw": "2", "start": 0, @@ -422,11 +493,13 @@ description: Result of parsing bad_units_in_annotation.kcl } ], "callee": { + "commentStart": 765, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 765, "end": 0, "start": 0, "type": "CallExpression", @@ -434,11 +507,13 @@ description: Result of parsing bad_units_in_annotation.kcl } ], "callee": { + "commentStart": 761, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 761, "end": 0, "start": 0, "type": "CallExpression", @@ -453,22 +528,32 @@ description: Result of parsing bad_units_in_annotation.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Calculate the positions of the hydrogen atoms" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 791, "declaration": { + "commentStart": 791, "end": 0, "id": { + "commentStart": 791, "end": 0, "name": "hydrogenOffsetY", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 809, "end": 0, "left": { + "commentStart": 809, "end": 0, "name": "oxygenHydrogenDistance", "start": 0, @@ -481,8 +566,10 @@ description: Result of parsing bad_units_in_annotation.kcl { "arguments": [ { + "commentStart": 848, "end": 0, "left": { + "commentStart": 848, "end": 0, "name": "bondAngle", "start": 0, @@ -491,6 +578,7 @@ description: Result of parsing bad_units_in_annotation.kcl }, "operator": "/", "right": { + "commentStart": 860, "end": 0, "raw": "2", "start": 0, @@ -507,11 +595,13 @@ description: Result of parsing bad_units_in_annotation.kcl } ], "callee": { + "commentStart": 838, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 838, "end": 0, "start": 0, "type": "CallExpression", @@ -519,11 +609,13 @@ description: Result of parsing bad_units_in_annotation.kcl } ], "callee": { + "commentStart": 834, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, + "commentStart": 834, "end": 0, "start": 0, "type": "CallExpression", @@ -543,9 +635,12 @@ description: Result of parsing bad_units_in_annotation.kcl "type": "VariableDeclaration" }, { + "commentStart": 863, "declaration": { + "commentStart": 894, "end": 0, "id": { + "commentStart": 894, "end": 0, "name": "hydrogenAtom1", "start": 0, @@ -554,8 +649,10 @@ description: Result of parsing bad_units_in_annotation.kcl "init": { "arguments": [ { + "commentStart": 921, "elements": [ { + "commentStart": 922, "end": 0, "name": "hydrogenOffsetX", "start": 0, @@ -563,6 +660,7 @@ description: Result of parsing bad_units_in_annotation.kcl "type": "Identifier" }, { + "commentStart": 939, "end": 0, "name": "hydrogenOffsetY", "start": 0, @@ -576,6 +674,7 @@ description: Result of parsing bad_units_in_annotation.kcl "type": "ArrayExpression" }, { + "commentStart": 957, "end": 0, "name": "hydrogenRadius", "start": 0, @@ -584,11 +683,13 @@ description: Result of parsing bad_units_in_annotation.kcl } ], "callee": { + "commentStart": 910, "end": 0, "name": "createAtom", "start": 0, "type": "Identifier" }, + "commentStart": 910, "end": 0, "start": 0, "type": "CallExpression", @@ -599,14 +700,22 @@ description: Result of parsing bad_units_in_annotation.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Create the hydrogen atoms" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 973, "declaration": { + "commentStart": 973, "end": 0, "id": { + "commentStart": 973, "end": 0, "name": "hydrogenAtom2", "start": 0, @@ -615,15 +724,18 @@ description: Result of parsing bad_units_in_annotation.kcl "init": { "arguments": [ { + "commentStart": 1000, "elements": [ { "argument": { + "commentStart": 1002, "end": 0, "name": "hydrogenOffsetX", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1001, "end": 0, "operator": "-", "start": 0, @@ -631,6 +743,7 @@ description: Result of parsing bad_units_in_annotation.kcl "type": "UnaryExpression" }, { + "commentStart": 1019, "end": 0, "name": "hydrogenOffsetY", "start": 0, @@ -644,6 +757,7 @@ description: Result of parsing bad_units_in_annotation.kcl "type": "ArrayExpression" }, { + "commentStart": 1037, "end": 0, "name": "hydrogenRadius", "start": 0, @@ -652,11 +766,13 @@ description: Result of parsing bad_units_in_annotation.kcl } ], "callee": { + "commentStart": 989, "end": 0, "name": "createAtom", "start": 0, "type": "Identifier" }, + "commentStart": 989, "end": 0, "start": 0, "type": "CallExpression", @@ -672,11 +788,14 @@ description: Result of parsing bad_units_in_annotation.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 1, "end": 0, "name": "settings", "start": 0, @@ -684,8 +803,10 @@ description: Result of parsing bad_units_in_annotation.kcl }, "properties": [ { + "commentStart": 10, "end": 0, "key": { + "commentStart": 10, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -694,6 +815,7 @@ description: Result of parsing bad_units_in_annotation.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 30, "end": 0, "name": "nm", "start": 0, @@ -710,6 +832,7 @@ description: Result of parsing bad_units_in_annotation.kcl "nonCodeNodes": { "0": [ { + "commentStart": 143, "end": 0, "start": 0, "type": "NonCodeNode", @@ -722,6 +845,7 @@ description: Result of parsing bad_units_in_annotation.kcl ], "1": [ { + "commentStart": 206, "end": 0, "start": 0, "type": "NonCodeNode", @@ -734,6 +858,7 @@ description: Result of parsing bad_units_in_annotation.kcl ], "2": [ { + "commentStart": 278, "end": 0, "start": 0, "type": "NonCodeNode", @@ -746,6 +871,7 @@ description: Result of parsing bad_units_in_annotation.kcl ], "3": [ { + "commentStart": 354, "end": 0, "start": 0, "type": "NonCodeNode", @@ -756,89 +882,25 @@ description: Result of parsing bad_units_in_annotation.kcl } }, { + "commentStart": 379, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Function to create a sphere representing an atom", - "style": "line" - } - } - ], - "4": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the oxygen atom at the origin", - "style": "line" - } - } - ], - "5": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Calculate the positions of the hydrogen atoms", - "style": "line" - } - } - ], - "7": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the hydrogen atoms", - "style": "line" - } } ] }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Generated by Text-to-CAD: draw a water molecule", - "style": "line" - } - }, - { + "commentStart": 33, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Constants for the water molecule", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/bad_units_in_annotation/execution_error.snap b/rust/kcl-lib/tests/bad_units_in_annotation/execution_error.snap index 1978cac59..93494d7e2 100644 --- a/rust/kcl-lib/tests/bad_units_in_annotation/execution_error.snap +++ b/rust/kcl-lib/tests/bad_units_in_annotation/execution_error.snap @@ -10,5 +10,5 @@ KCL Semantic error 1 │ @settings(defaultLengthUnit = nm) · ────────────────┬──────────────── · ╰── tests/bad_units_in_annotation/input.kcl - 2 │ // Generated by Text-to-CAD: draw a water molecule + 2 │ ╰──── diff --git a/rust/kcl-lib/tests/bad_units_in_annotation/input.kcl b/rust/kcl-lib/tests/bad_units_in_annotation/input.kcl index ea567d761..f3c493a8d 100644 --- a/rust/kcl-lib/tests/bad_units_in_annotation/input.kcl +++ b/rust/kcl-lib/tests/bad_units_in_annotation/input.kcl @@ -1,6 +1,6 @@ @settings(defaultLengthUnit = nm) -// Generated by Text-to-CAD: draw a water molecule +// Generated by Text-to-CAD: draw a water molecule // Constants for the water molecule oxygenRadius = 0.066 // Approximate radius of an oxygen atom diff --git a/rust/kcl-lib/tests/bad_units_in_annotation/unparsed.snap b/rust/kcl-lib/tests/bad_units_in_annotation/unparsed.snap index 03caae6e9..2078debfe 100644 --- a/rust/kcl-lib/tests/bad_units_in_annotation/unparsed.snap +++ b/rust/kcl-lib/tests/bad_units_in_annotation/unparsed.snap @@ -3,8 +3,8 @@ source: kcl-lib/src/simulation_tests.rs description: Result of unparsing bad_units_in_annotation.kcl --- @settings(defaultLengthUnit = nm) -// Generated by Text-to-CAD: draw a water molecule +// Generated by Text-to-CAD: draw a water molecule // Constants for the water molecule oxygenRadius = 0.066 // Approximate radius of an oxygen atom diff --git a/rust/kcl-lib/tests/basic_fillet_cube_close_opposite/ast.snap b/rust/kcl-lib/tests/basic_fillet_cube_close_opposite/ast.snap index 8602886ba..6f4c60beb 100644 --- a/rust/kcl-lib/tests/basic_fillet_cube_close_opposite/ast.snap +++ b/rust/kcl-lib/tests/basic_fillet_cube_close_opposite/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "part001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl { "arguments": [ { + "commentStart": 24, "end": 0, "raw": "'XY'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl } ], "callee": { + "commentStart": 10, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 10, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl { "arguments": [ { + "commentStart": 50, "elements": [ { + "commentStart": 51, "end": 0, "raw": "0", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl } }, { + "commentStart": 54, "end": 0, "raw": "0", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl "type": "ArrayExpression" }, { + "commentStart": 58, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl } ], "callee": { + "commentStart": 35, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 35, "end": 0, "start": 0, "type": "CallExpression", @@ -93,14 +105,17 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl { "type": "LabeledArg", "label": { + "commentStart": 71, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 77, "elements": [ { + "commentStart": 78, "end": 0, "raw": "0", "start": 0, @@ -112,6 +127,7 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl } }, { + "commentStart": 81, "end": 0, "raw": "10", "start": 0, @@ -132,12 +148,14 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl { "type": "LabeledArg", "label": { + "commentStart": 86, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 92, "end": 0, "start": 0, "type": "TagDeclarator", @@ -147,11 +165,13 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl } ], "callee": { + "commentStart": 66, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -163,14 +183,17 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl { "type": "LabeledArg", "label": { + "commentStart": 110, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 116, "elements": [ { + "commentStart": 117, "end": 0, "raw": "10", "start": 0, @@ -182,6 +205,7 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl } }, { + "commentStart": 121, "end": 0, "raw": "0", "start": 0, @@ -201,11 +225,13 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl } ], "callee": { + "commentStart": 105, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 105, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -217,14 +243,17 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl { "type": "LabeledArg", "label": { + "commentStart": 135, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 141, "elements": [ { + "commentStart": 142, "end": 0, "raw": "0", "start": 0, @@ -237,6 +266,7 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl }, { "argument": { + "commentStart": 146, "end": 0, "raw": "10", "start": 0, @@ -247,6 +277,7 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl "suffix": "None" } }, + "commentStart": 145, "end": 0, "operator": "-", "start": 0, @@ -263,12 +294,14 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl { "type": "LabeledArg", "label": { + "commentStart": 151, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 157, "end": 0, "start": 0, "type": "TagDeclarator", @@ -278,11 +311,13 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl } ], "callee": { + "commentStart": 130, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 130, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -294,12 +329,14 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl { "type": "LabeledArg", "label": { + "commentStart": 177, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 183, "end": 0, "start": 0, "type": "TagDeclarator", @@ -309,11 +346,13 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl } ], "callee": { + "commentStart": 171, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 171, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -325,12 +364,14 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl { "type": "LabeledArg", "label": { + "commentStart": 205, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 214, "end": 0, "raw": "10", "start": 0, @@ -344,11 +385,13 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl } ], "callee": { + "commentStart": 197, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 197, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -360,12 +403,14 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl { "type": "LabeledArg", "label": { + "commentStart": 230, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 239, "end": 0, "raw": "2", "start": 0, @@ -380,14 +425,17 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl { "type": "LabeledArg", "label": { + "commentStart": 242, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 249, "elements": [ { + "commentStart": 250, "end": 0, "name": "thing3", "start": 0, @@ -397,6 +445,7 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl { "arguments": [ { + "commentStart": 274, "end": 0, "name": "thing3", "start": 0, @@ -405,11 +454,13 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl } ], "callee": { + "commentStart": 258, "end": 0, "name": "getOppositeEdge", "start": 0, "type": "Identifier" }, + "commentStart": 258, "end": 0, "start": 0, "type": "CallExpression", @@ -424,11 +475,13 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl } ], "callee": { + "commentStart": 223, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 223, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -436,6 +489,7 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl "unlabeled": null } ], + "commentStart": 10, "end": 0, "start": 0, "type": "PipeExpression", @@ -451,6 +505,7 @@ description: Result of parsing basic_fillet_cube_close_opposite.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/basic_fillet_cube_close_opposite/program_memory.snap b/rust/kcl-lib/tests/basic_fillet_cube_close_opposite/program_memory.snap index 3d428995d..9b96ad94b 100644 --- a/rust/kcl-lib/tests/basic_fillet_cube_close_opposite/program_memory.snap +++ b/rust/kcl-lib/tests/basic_fillet_cube_close_opposite/program_memory.snap @@ -15,6 +15,7 @@ description: Variables in memory after executing basic_fillet_cube_close_opposit "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 92, "end": 98, "start": 92, "type": "TagDeclarator", @@ -34,6 +35,7 @@ description: Variables in memory after executing basic_fillet_cube_close_opposit "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 157, "end": 164, "start": 157, "type": "TagDeclarator", @@ -46,6 +48,7 @@ description: Variables in memory after executing basic_fillet_cube_close_opposit "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 183, "end": 190, "start": 183, "type": "TagDeclarator", @@ -68,6 +71,7 @@ description: Variables in memory after executing basic_fillet_cube_close_opposit 0.0 ], "tag": { + "commentStart": 92, "end": 98, "start": 92, "type": "TagDeclarator", @@ -111,6 +115,7 @@ description: Variables in memory after executing basic_fillet_cube_close_opposit 10.0 ], "tag": { + "commentStart": 157, "end": 164, "start": 157, "type": "TagDeclarator", @@ -135,6 +140,7 @@ description: Variables in memory after executing basic_fillet_cube_close_opposit 0.0 ], "tag": { + "commentStart": 183, "end": 190, "start": 183, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/basic_fillet_cube_end/ast.snap b/rust/kcl-lib/tests/basic_fillet_cube_end/ast.snap index 6f7c26a8d..a18eb1728 100644 --- a/rust/kcl-lib/tests/basic_fillet_cube_end/ast.snap +++ b/rust/kcl-lib/tests/basic_fillet_cube_end/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing basic_fillet_cube_end.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "part001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing basic_fillet_cube_end.kcl { "arguments": [ { + "commentStart": 24, "end": 0, "raw": "'XY'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing basic_fillet_cube_end.kcl } ], "callee": { + "commentStart": 10, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 10, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing basic_fillet_cube_end.kcl { "arguments": [ { + "commentStart": 50, "elements": [ { + "commentStart": 51, "end": 0, "raw": "0", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing basic_fillet_cube_end.kcl } }, { + "commentStart": 54, "end": 0, "raw": "0", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing basic_fillet_cube_end.kcl "type": "ArrayExpression" }, { + "commentStart": 58, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing basic_fillet_cube_end.kcl } ], "callee": { + "commentStart": 35, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 35, "end": 0, "start": 0, "type": "CallExpression", @@ -93,14 +105,17 @@ description: Result of parsing basic_fillet_cube_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 71, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 77, "elements": [ { + "commentStart": 78, "end": 0, "raw": "0", "start": 0, @@ -112,6 +127,7 @@ description: Result of parsing basic_fillet_cube_end.kcl } }, { + "commentStart": 81, "end": 0, "raw": "10", "start": 0, @@ -132,12 +148,14 @@ description: Result of parsing basic_fillet_cube_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 86, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 92, "end": 0, "start": 0, "type": "TagDeclarator", @@ -147,11 +165,13 @@ description: Result of parsing basic_fillet_cube_end.kcl } ], "callee": { + "commentStart": 66, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -163,14 +183,17 @@ description: Result of parsing basic_fillet_cube_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 110, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 116, "elements": [ { + "commentStart": 117, "end": 0, "raw": "10", "start": 0, @@ -182,6 +205,7 @@ description: Result of parsing basic_fillet_cube_end.kcl } }, { + "commentStart": 121, "end": 0, "raw": "0", "start": 0, @@ -201,11 +225,13 @@ description: Result of parsing basic_fillet_cube_end.kcl } ], "callee": { + "commentStart": 105, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 105, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -217,14 +243,17 @@ description: Result of parsing basic_fillet_cube_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 135, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 141, "elements": [ { + "commentStart": 142, "end": 0, "raw": "0", "start": 0, @@ -237,6 +266,7 @@ description: Result of parsing basic_fillet_cube_end.kcl }, { "argument": { + "commentStart": 146, "end": 0, "raw": "10", "start": 0, @@ -247,6 +277,7 @@ description: Result of parsing basic_fillet_cube_end.kcl "suffix": "None" } }, + "commentStart": 145, "end": 0, "operator": "-", "start": 0, @@ -263,12 +294,14 @@ description: Result of parsing basic_fillet_cube_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 151, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 157, "end": 0, "start": 0, "type": "TagDeclarator", @@ -278,11 +311,13 @@ description: Result of parsing basic_fillet_cube_end.kcl } ], "callee": { + "commentStart": 130, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 130, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -292,6 +327,7 @@ description: Result of parsing basic_fillet_cube_end.kcl { "arguments": [ { + "commentStart": 177, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -299,11 +335,13 @@ description: Result of parsing basic_fillet_cube_end.kcl } ], "callee": { + "commentStart": 171, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 171, "end": 0, "start": 0, "type": "CallExpression", @@ -314,12 +352,14 @@ description: Result of parsing basic_fillet_cube_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 193, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 202, "end": 0, "raw": "10", "start": 0, @@ -333,11 +373,13 @@ description: Result of parsing basic_fillet_cube_end.kcl } ], "callee": { + "commentStart": 185, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 185, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -349,12 +391,14 @@ description: Result of parsing basic_fillet_cube_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 218, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 227, "end": 0, "raw": "2", "start": 0, @@ -369,14 +413,17 @@ description: Result of parsing basic_fillet_cube_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 230, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 237, "elements": [ { + "commentStart": 238, "end": 0, "name": "thing", "start": 0, @@ -386,6 +433,7 @@ description: Result of parsing basic_fillet_cube_end.kcl { "arguments": [ { + "commentStart": 261, "end": 0, "name": "thing", "start": 0, @@ -394,11 +442,13 @@ description: Result of parsing basic_fillet_cube_end.kcl } ], "callee": { + "commentStart": 245, "end": 0, "name": "getOppositeEdge", "start": 0, "type": "Identifier" }, + "commentStart": 245, "end": 0, "start": 0, "type": "CallExpression", @@ -413,11 +463,13 @@ description: Result of parsing basic_fillet_cube_end.kcl } ], "callee": { + "commentStart": 211, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 211, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -425,6 +477,7 @@ description: Result of parsing basic_fillet_cube_end.kcl "unlabeled": null } ], + "commentStart": 10, "end": 0, "start": 0, "type": "PipeExpression", @@ -440,6 +493,7 @@ description: Result of parsing basic_fillet_cube_end.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/basic_fillet_cube_end/program_memory.snap b/rust/kcl-lib/tests/basic_fillet_cube_end/program_memory.snap index 0a08222dc..c943835f9 100644 --- a/rust/kcl-lib/tests/basic_fillet_cube_end/program_memory.snap +++ b/rust/kcl-lib/tests/basic_fillet_cube_end/program_memory.snap @@ -15,6 +15,7 @@ description: Variables in memory after executing basic_fillet_cube_end.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 92, "end": 98, "start": 92, "type": "TagDeclarator", @@ -34,6 +35,7 @@ description: Variables in memory after executing basic_fillet_cube_end.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 157, "end": 164, "start": 157, "type": "TagDeclarator", @@ -63,6 +65,7 @@ description: Variables in memory after executing basic_fillet_cube_end.kcl 0.0 ], "tag": { + "commentStart": 92, "end": 98, "start": 92, "type": "TagDeclarator", @@ -106,6 +109,7 @@ description: Variables in memory after executing basic_fillet_cube_end.kcl 10.0 ], "tag": { + "commentStart": 157, "end": 164, "start": 157, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/basic_fillet_cube_next_adjacent/ast.snap b/rust/kcl-lib/tests/basic_fillet_cube_next_adjacent/ast.snap index 08725f724..3b39abc04 100644 --- a/rust/kcl-lib/tests/basic_fillet_cube_next_adjacent/ast.snap +++ b/rust/kcl-lib/tests/basic_fillet_cube_next_adjacent/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "part001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl { "arguments": [ { + "commentStart": 24, "end": 0, "raw": "'XY'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl } ], "callee": { + "commentStart": 10, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 10, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl { "arguments": [ { + "commentStart": 50, "elements": [ { + "commentStart": 51, "end": 0, "raw": "0", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl } }, { + "commentStart": 54, "end": 0, "raw": "0", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl "type": "ArrayExpression" }, { + "commentStart": 58, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl } ], "callee": { + "commentStart": 35, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 35, "end": 0, "start": 0, "type": "CallExpression", @@ -93,14 +105,17 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 71, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 77, "elements": [ { + "commentStart": 78, "end": 0, "raw": "0", "start": 0, @@ -112,6 +127,7 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl } }, { + "commentStart": 81, "end": 0, "raw": "10", "start": 0, @@ -132,12 +148,14 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 86, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 92, "end": 0, "start": 0, "type": "TagDeclarator", @@ -147,11 +165,13 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl } ], "callee": { + "commentStart": 66, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -163,14 +183,17 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 110, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 116, "elements": [ { + "commentStart": 117, "end": 0, "raw": "10", "start": 0, @@ -182,6 +205,7 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl } }, { + "commentStart": 121, "end": 0, "raw": "0", "start": 0, @@ -202,12 +226,14 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 125, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 131, "end": 0, "start": 0, "type": "TagDeclarator", @@ -217,11 +243,13 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl } ], "callee": { + "commentStart": 105, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 105, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -233,14 +261,17 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 150, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 156, "elements": [ { + "commentStart": 157, "end": 0, "raw": "0", "start": 0, @@ -253,6 +284,7 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl }, { "argument": { + "commentStart": 161, "end": 0, "raw": "10", "start": 0, @@ -263,6 +295,7 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl "suffix": "None" } }, + "commentStart": 160, "end": 0, "operator": "-", "start": 0, @@ -279,12 +312,14 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 166, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 172, "end": 0, "start": 0, "type": "TagDeclarator", @@ -294,11 +329,13 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl } ], "callee": { + "commentStart": 145, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 145, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -310,12 +347,14 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 192, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 198, "end": 0, "start": 0, "type": "TagDeclarator", @@ -325,11 +364,13 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl } ], "callee": { + "commentStart": 186, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 186, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -341,12 +382,14 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 220, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 229, "end": 0, "raw": "10", "start": 0, @@ -360,11 +403,13 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl } ], "callee": { + "commentStart": 212, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 212, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -376,12 +421,14 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 245, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 254, "end": 0, "raw": "2", "start": 0, @@ -396,16 +443,19 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 257, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 264, "elements": [ { "arguments": [ { + "commentStart": 285, "end": 0, "name": "thing3", "start": 0, @@ -414,11 +464,13 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl } ], "callee": { + "commentStart": 265, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 265, "end": 0, "start": 0, "type": "CallExpression", @@ -433,11 +485,13 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl } ], "callee": { + "commentStart": 238, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 238, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -445,6 +499,7 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl "unlabeled": null } ], + "commentStart": 10, "end": 0, "start": 0, "type": "PipeExpression", @@ -460,6 +515,7 @@ description: Result of parsing basic_fillet_cube_next_adjacent.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/basic_fillet_cube_next_adjacent/program_memory.snap b/rust/kcl-lib/tests/basic_fillet_cube_next_adjacent/program_memory.snap index 27f39119f..54bb2eeb6 100644 --- a/rust/kcl-lib/tests/basic_fillet_cube_next_adjacent/program_memory.snap +++ b/rust/kcl-lib/tests/basic_fillet_cube_next_adjacent/program_memory.snap @@ -15,6 +15,7 @@ description: Variables in memory after executing basic_fillet_cube_next_adjacent "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 92, "end": 98, "start": 92, "type": "TagDeclarator", @@ -27,6 +28,7 @@ description: Variables in memory after executing basic_fillet_cube_next_adjacent "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 131, "end": 138, "start": 131, "type": "TagDeclarator", @@ -39,6 +41,7 @@ description: Variables in memory after executing basic_fillet_cube_next_adjacent "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 172, "end": 179, "start": 172, "type": "TagDeclarator", @@ -51,6 +54,7 @@ description: Variables in memory after executing basic_fillet_cube_next_adjacent "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 198, "end": 205, "start": 198, "type": "TagDeclarator", @@ -73,6 +77,7 @@ description: Variables in memory after executing basic_fillet_cube_next_adjacent 0.0 ], "tag": { + "commentStart": 92, "end": 98, "start": 92, "type": "TagDeclarator", @@ -97,6 +102,7 @@ description: Variables in memory after executing basic_fillet_cube_next_adjacent 10.0 ], "tag": { + "commentStart": 131, "end": 138, "start": 131, "type": "TagDeclarator", @@ -121,6 +127,7 @@ description: Variables in memory after executing basic_fillet_cube_next_adjacent 10.0 ], "tag": { + "commentStart": 172, "end": 179, "start": 172, "type": "TagDeclarator", @@ -145,6 +152,7 @@ description: Variables in memory after executing basic_fillet_cube_next_adjacent 0.0 ], "tag": { + "commentStart": 198, "end": 205, "start": 198, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/basic_fillet_cube_previous_adjacent/ast.snap b/rust/kcl-lib/tests/basic_fillet_cube_previous_adjacent/ast.snap index 30af9dbd2..8cc756426 100644 --- a/rust/kcl-lib/tests/basic_fillet_cube_previous_adjacent/ast.snap +++ b/rust/kcl-lib/tests/basic_fillet_cube_previous_adjacent/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "part001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl { "arguments": [ { + "commentStart": 24, "end": 0, "raw": "'XY'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl } ], "callee": { + "commentStart": 10, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 10, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl { "arguments": [ { + "commentStart": 50, "elements": [ { + "commentStart": 51, "end": 0, "raw": "0", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl } }, { + "commentStart": 54, "end": 0, "raw": "0", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl "type": "ArrayExpression" }, { + "commentStart": 58, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl } ], "callee": { + "commentStart": 35, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 35, "end": 0, "start": 0, "type": "CallExpression", @@ -93,14 +105,17 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 71, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 77, "elements": [ { + "commentStart": 78, "end": 0, "raw": "0", "start": 0, @@ -112,6 +127,7 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl } }, { + "commentStart": 81, "end": 0, "raw": "10", "start": 0, @@ -132,12 +148,14 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 86, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 92, "end": 0, "start": 0, "type": "TagDeclarator", @@ -147,11 +165,13 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl } ], "callee": { + "commentStart": 66, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -163,14 +183,17 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 110, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 116, "elements": [ { + "commentStart": 117, "end": 0, "raw": "10", "start": 0, @@ -182,6 +205,7 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl } }, { + "commentStart": 121, "end": 0, "raw": "0", "start": 0, @@ -202,12 +226,14 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 125, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 131, "end": 0, "start": 0, "type": "TagDeclarator", @@ -217,11 +243,13 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl } ], "callee": { + "commentStart": 105, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 105, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -233,14 +261,17 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 150, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 156, "elements": [ { + "commentStart": 157, "end": 0, "raw": "0", "start": 0, @@ -253,6 +284,7 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl }, { "argument": { + "commentStart": 161, "end": 0, "raw": "10", "start": 0, @@ -263,6 +295,7 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl "suffix": "None" } }, + "commentStart": 160, "end": 0, "operator": "-", "start": 0, @@ -279,12 +312,14 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 166, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 172, "end": 0, "start": 0, "type": "TagDeclarator", @@ -294,11 +329,13 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl } ], "callee": { + "commentStart": 145, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 145, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -310,12 +347,14 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 192, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 198, "end": 0, "start": 0, "type": "TagDeclarator", @@ -325,11 +364,13 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl } ], "callee": { + "commentStart": 186, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 186, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -341,12 +382,14 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 220, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 229, "end": 0, "raw": "10", "start": 0, @@ -360,11 +403,13 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl } ], "callee": { + "commentStart": 212, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 212, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -376,12 +421,14 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 245, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 254, "end": 0, "raw": "2", "start": 0, @@ -396,16 +443,19 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl { "type": "LabeledArg", "label": { + "commentStart": 257, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 264, "elements": [ { "arguments": [ { + "commentStart": 289, "end": 0, "name": "thing3", "start": 0, @@ -414,11 +464,13 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl } ], "callee": { + "commentStart": 265, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 265, "end": 0, "start": 0, "type": "CallExpression", @@ -433,11 +485,13 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl } ], "callee": { + "commentStart": 238, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 238, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -445,6 +499,7 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl "unlabeled": null } ], + "commentStart": 10, "end": 0, "start": 0, "type": "PipeExpression", @@ -460,6 +515,7 @@ description: Result of parsing basic_fillet_cube_previous_adjacent.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/basic_fillet_cube_previous_adjacent/program_memory.snap b/rust/kcl-lib/tests/basic_fillet_cube_previous_adjacent/program_memory.snap index 2f13501a7..25e08a5a9 100644 --- a/rust/kcl-lib/tests/basic_fillet_cube_previous_adjacent/program_memory.snap +++ b/rust/kcl-lib/tests/basic_fillet_cube_previous_adjacent/program_memory.snap @@ -15,6 +15,7 @@ description: Variables in memory after executing basic_fillet_cube_previous_adja "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 92, "end": 98, "start": 92, "type": "TagDeclarator", @@ -27,6 +28,7 @@ description: Variables in memory after executing basic_fillet_cube_previous_adja "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 131, "end": 138, "start": 131, "type": "TagDeclarator", @@ -39,6 +41,7 @@ description: Variables in memory after executing basic_fillet_cube_previous_adja "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 172, "end": 179, "start": 172, "type": "TagDeclarator", @@ -51,6 +54,7 @@ description: Variables in memory after executing basic_fillet_cube_previous_adja "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 198, "end": 205, "start": 198, "type": "TagDeclarator", @@ -73,6 +77,7 @@ description: Variables in memory after executing basic_fillet_cube_previous_adja 0.0 ], "tag": { + "commentStart": 92, "end": 98, "start": 92, "type": "TagDeclarator", @@ -97,6 +102,7 @@ description: Variables in memory after executing basic_fillet_cube_previous_adja 10.0 ], "tag": { + "commentStart": 131, "end": 138, "start": 131, "type": "TagDeclarator", @@ -121,6 +127,7 @@ description: Variables in memory after executing basic_fillet_cube_previous_adja 10.0 ], "tag": { + "commentStart": 172, "end": 179, "start": 172, "type": "TagDeclarator", @@ -145,6 +152,7 @@ description: Variables in memory after executing basic_fillet_cube_previous_adja 0.0 ], "tag": { + "commentStart": 198, "end": 205, "start": 198, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/basic_fillet_cube_start/ast.snap b/rust/kcl-lib/tests/basic_fillet_cube_start/ast.snap index e8de24051..9e01dd945 100644 --- a/rust/kcl-lib/tests/basic_fillet_cube_start/ast.snap +++ b/rust/kcl-lib/tests/basic_fillet_cube_start/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing basic_fillet_cube_start.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "part001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing basic_fillet_cube_start.kcl { "arguments": [ { + "commentStart": 24, "end": 0, "raw": "'XY'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing basic_fillet_cube_start.kcl } ], "callee": { + "commentStart": 10, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 10, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing basic_fillet_cube_start.kcl { "arguments": [ { + "commentStart": 50, "elements": [ { + "commentStart": 51, "end": 0, "raw": "0", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing basic_fillet_cube_start.kcl } }, { + "commentStart": 54, "end": 0, "raw": "0", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing basic_fillet_cube_start.kcl "type": "ArrayExpression" }, { + "commentStart": 58, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing basic_fillet_cube_start.kcl } ], "callee": { + "commentStart": 35, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 35, "end": 0, "start": 0, "type": "CallExpression", @@ -93,14 +105,17 @@ description: Result of parsing basic_fillet_cube_start.kcl { "type": "LabeledArg", "label": { + "commentStart": 71, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 77, "elements": [ { + "commentStart": 78, "end": 0, "raw": "0", "start": 0, @@ -112,6 +127,7 @@ description: Result of parsing basic_fillet_cube_start.kcl } }, { + "commentStart": 81, "end": 0, "raw": "10", "start": 0, @@ -132,12 +148,14 @@ description: Result of parsing basic_fillet_cube_start.kcl { "type": "LabeledArg", "label": { + "commentStart": 86, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 92, "end": 0, "start": 0, "type": "TagDeclarator", @@ -147,11 +165,13 @@ description: Result of parsing basic_fillet_cube_start.kcl } ], "callee": { + "commentStart": 66, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -163,14 +183,17 @@ description: Result of parsing basic_fillet_cube_start.kcl { "type": "LabeledArg", "label": { + "commentStart": 110, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 116, "elements": [ { + "commentStart": 117, "end": 0, "raw": "10", "start": 0, @@ -182,6 +205,7 @@ description: Result of parsing basic_fillet_cube_start.kcl } }, { + "commentStart": 121, "end": 0, "raw": "0", "start": 0, @@ -201,11 +225,13 @@ description: Result of parsing basic_fillet_cube_start.kcl } ], "callee": { + "commentStart": 105, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 105, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -217,14 +243,17 @@ description: Result of parsing basic_fillet_cube_start.kcl { "type": "LabeledArg", "label": { + "commentStart": 135, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 141, "elements": [ { + "commentStart": 142, "end": 0, "raw": "0", "start": 0, @@ -237,6 +266,7 @@ description: Result of parsing basic_fillet_cube_start.kcl }, { "argument": { + "commentStart": 146, "end": 0, "raw": "10", "start": 0, @@ -247,6 +277,7 @@ description: Result of parsing basic_fillet_cube_start.kcl "suffix": "None" } }, + "commentStart": 145, "end": 0, "operator": "-", "start": 0, @@ -263,12 +294,14 @@ description: Result of parsing basic_fillet_cube_start.kcl { "type": "LabeledArg", "label": { + "commentStart": 151, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 157, "end": 0, "start": 0, "type": "TagDeclarator", @@ -278,11 +311,13 @@ description: Result of parsing basic_fillet_cube_start.kcl } ], "callee": { + "commentStart": 130, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 130, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -292,6 +327,7 @@ description: Result of parsing basic_fillet_cube_start.kcl { "arguments": [ { + "commentStart": 177, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -299,11 +335,13 @@ description: Result of parsing basic_fillet_cube_start.kcl } ], "callee": { + "commentStart": 171, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 171, "end": 0, "start": 0, "type": "CallExpression", @@ -314,12 +352,14 @@ description: Result of parsing basic_fillet_cube_start.kcl { "type": "LabeledArg", "label": { + "commentStart": 193, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 202, "end": 0, "raw": "10", "start": 0, @@ -333,11 +373,13 @@ description: Result of parsing basic_fillet_cube_start.kcl } ], "callee": { + "commentStart": 185, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 185, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -349,12 +391,14 @@ description: Result of parsing basic_fillet_cube_start.kcl { "type": "LabeledArg", "label": { + "commentStart": 218, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 227, "end": 0, "raw": "2", "start": 0, @@ -369,14 +413,17 @@ description: Result of parsing basic_fillet_cube_start.kcl { "type": "LabeledArg", "label": { + "commentStart": 230, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 237, "elements": [ { + "commentStart": 238, "end": 0, "name": "thing", "start": 0, @@ -384,6 +431,7 @@ description: Result of parsing basic_fillet_cube_start.kcl "type": "Identifier" }, { + "commentStart": 245, "end": 0, "name": "thing2", "start": 0, @@ -399,11 +447,13 @@ description: Result of parsing basic_fillet_cube_start.kcl } ], "callee": { + "commentStart": 211, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 211, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -411,6 +461,7 @@ description: Result of parsing basic_fillet_cube_start.kcl "unlabeled": null } ], + "commentStart": 10, "end": 0, "start": 0, "type": "PipeExpression", @@ -426,6 +477,7 @@ description: Result of parsing basic_fillet_cube_start.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/basic_fillet_cube_start/program_memory.snap b/rust/kcl-lib/tests/basic_fillet_cube_start/program_memory.snap index 95a2134dd..680ba705c 100644 --- a/rust/kcl-lib/tests/basic_fillet_cube_start/program_memory.snap +++ b/rust/kcl-lib/tests/basic_fillet_cube_start/program_memory.snap @@ -15,6 +15,7 @@ description: Variables in memory after executing basic_fillet_cube_start.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 92, "end": 98, "start": 92, "type": "TagDeclarator", @@ -34,6 +35,7 @@ description: Variables in memory after executing basic_fillet_cube_start.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 157, "end": 164, "start": 157, "type": "TagDeclarator", @@ -63,6 +65,7 @@ description: Variables in memory after executing basic_fillet_cube_start.kcl 0.0 ], "tag": { + "commentStart": 92, "end": 98, "start": 92, "type": "TagDeclarator", @@ -106,6 +109,7 @@ description: Variables in memory after executing basic_fillet_cube_start.kcl 10.0 ], "tag": { + "commentStart": 157, "end": 164, "start": 157, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/big_number_angle_to_match_length_x/ast.snap b/rust/kcl-lib/tests/big_number_angle_to_match_length_x/ast.snap index 42249bf76..9d6a4748c 100644 --- a/rust/kcl-lib/tests/big_number_angle_to_match_length_x/ast.snap +++ b/rust/kcl-lib/tests/big_number_angle_to_match_length_x/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "part001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl { "arguments": [ { + "commentStart": 24, "end": 0, "raw": "'XY'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl } ], "callee": { + "commentStart": 10, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 10, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl { "arguments": [ { + "commentStart": 50, "elements": [ { + "commentStart": 51, "end": 0, "raw": "0", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl } }, { + "commentStart": 54, "end": 0, "raw": "0", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl "type": "ArrayExpression" }, { + "commentStart": 58, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl } ], "callee": { + "commentStart": 35, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 35, "end": 0, "start": 0, "type": "CallExpression", @@ -93,14 +105,17 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl { "type": "LabeledArg", "label": { + "commentStart": 71, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 77, "elements": [ { + "commentStart": 78, "end": 0, "raw": "1", "start": 0, @@ -112,6 +127,7 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl } }, { + "commentStart": 81, "end": 0, "raw": "3.82", "start": 0, @@ -132,12 +148,14 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl { "type": "LabeledArg", "label": { + "commentStart": 88, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 94, "end": 0, "start": 0, "type": "TagDeclarator", @@ -147,11 +165,13 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl } ], "callee": { + "commentStart": 66, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -161,11 +181,13 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl { "arguments": [ { + "commentStart": 121, "elements": [ { "argument": { "arguments": [ { + "commentStart": 143, "end": 0, "name": "seg01", "start": 0, @@ -173,6 +195,7 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl "type": "Identifier" }, { + "commentStart": 150, "end": 0, "raw": "3", "start": 0, @@ -184,6 +207,7 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl } }, { + "commentStart": 153, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -191,16 +215,19 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl } ], "callee": { + "commentStart": 123, "end": 0, "name": "angleToMatchLengthX", "start": 0, "type": "Identifier" }, + "commentStart": 123, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 122, "end": 0, "operator": "-", "start": 0, @@ -208,6 +235,7 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl "type": "UnaryExpression" }, { + "commentStart": 157, "end": 0, "raw": "3", "start": 0, @@ -225,6 +253,7 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl "type": "ArrayExpression" }, { + "commentStart": 161, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -232,11 +261,13 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl } ], "callee": { + "commentStart": 107, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 107, "end": 0, "start": 0, "type": "CallExpression", @@ -245,6 +276,7 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl { "arguments": [ { + "commentStart": 175, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -252,11 +284,13 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl } ], "callee": { + "commentStart": 169, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 169, "end": 0, "start": 0, "type": "CallExpression", @@ -267,12 +301,14 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl { "type": "LabeledArg", "label": { + "commentStart": 191, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 200, "end": 0, "raw": "10", "start": 0, @@ -286,11 +322,13 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl } ], "callee": { + "commentStart": 183, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 183, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -298,6 +336,7 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl "unlabeled": null } ], + "commentStart": 10, "end": 0, "start": 0, "type": "PipeExpression", @@ -313,6 +352,7 @@ description: Result of parsing big_number_angle_to_match_length_x.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/big_number_angle_to_match_length_x/program_memory.snap b/rust/kcl-lib/tests/big_number_angle_to_match_length_x/program_memory.snap index 2cc07b5b5..d3d48809b 100644 --- a/rust/kcl-lib/tests/big_number_angle_to_match_length_x/program_memory.snap +++ b/rust/kcl-lib/tests/big_number_angle_to_match_length_x/program_memory.snap @@ -15,6 +15,7 @@ description: Variables in memory after executing big_number_angle_to_match_lengt "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 94, "end": 100, "start": 94, "type": "TagDeclarator", @@ -51,6 +52,7 @@ description: Variables in memory after executing big_number_angle_to_match_lengt 0.0 ], "tag": { + "commentStart": 94, "end": 100, "start": 94, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/big_number_angle_to_match_length_y/ast.snap b/rust/kcl-lib/tests/big_number_angle_to_match_length_y/ast.snap index 9dde5edec..2b1e397cc 100644 --- a/rust/kcl-lib/tests/big_number_angle_to_match_length_y/ast.snap +++ b/rust/kcl-lib/tests/big_number_angle_to_match_length_y/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "part001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl { "arguments": [ { + "commentStart": 24, "end": 0, "raw": "'XY'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl } ], "callee": { + "commentStart": 10, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 10, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl { "arguments": [ { + "commentStart": 50, "elements": [ { + "commentStart": 51, "end": 0, "raw": "0", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl } }, { + "commentStart": 54, "end": 0, "raw": "0", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl "type": "ArrayExpression" }, { + "commentStart": 58, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl } ], "callee": { + "commentStart": 35, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 35, "end": 0, "start": 0, "type": "CallExpression", @@ -93,14 +105,17 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl { "type": "LabeledArg", "label": { + "commentStart": 71, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 77, "elements": [ { + "commentStart": 78, "end": 0, "raw": "1", "start": 0, @@ -112,6 +127,7 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl } }, { + "commentStart": 81, "end": 0, "raw": "3.82", "start": 0, @@ -132,12 +148,14 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl { "type": "LabeledArg", "label": { + "commentStart": 88, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 94, "end": 0, "start": 0, "type": "TagDeclarator", @@ -147,11 +165,13 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl } ], "callee": { + "commentStart": 66, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -161,11 +181,13 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl { "arguments": [ { + "commentStart": 121, "elements": [ { "argument": { "arguments": [ { + "commentStart": 143, "end": 0, "name": "seg01", "start": 0, @@ -173,6 +195,7 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl "type": "Identifier" }, { + "commentStart": 150, "end": 0, "raw": "3", "start": 0, @@ -184,6 +207,7 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl } }, { + "commentStart": 153, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -191,16 +215,19 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl } ], "callee": { + "commentStart": 123, "end": 0, "name": "angleToMatchLengthY", "start": 0, "type": "Identifier" }, + "commentStart": 123, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 122, "end": 0, "operator": "-", "start": 0, @@ -208,6 +235,7 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl "type": "UnaryExpression" }, { + "commentStart": 157, "end": 0, "raw": "3", "start": 0, @@ -225,6 +253,7 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl "type": "ArrayExpression" }, { + "commentStart": 161, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -232,11 +261,13 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl } ], "callee": { + "commentStart": 107, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 107, "end": 0, "start": 0, "type": "CallExpression", @@ -245,6 +276,7 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl { "arguments": [ { + "commentStart": 175, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -252,11 +284,13 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl } ], "callee": { + "commentStart": 169, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 169, "end": 0, "start": 0, "type": "CallExpression", @@ -267,12 +301,14 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl { "type": "LabeledArg", "label": { + "commentStart": 191, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 200, "end": 0, "raw": "10", "start": 0, @@ -286,11 +322,13 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl } ], "callee": { + "commentStart": 183, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 183, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -298,6 +336,7 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl "unlabeled": null } ], + "commentStart": 10, "end": 0, "start": 0, "type": "PipeExpression", @@ -313,6 +352,7 @@ description: Result of parsing big_number_angle_to_match_length_y.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/big_number_angle_to_match_length_y/program_memory.snap b/rust/kcl-lib/tests/big_number_angle_to_match_length_y/program_memory.snap index 36ed94415..311aa01fa 100644 --- a/rust/kcl-lib/tests/big_number_angle_to_match_length_y/program_memory.snap +++ b/rust/kcl-lib/tests/big_number_angle_to_match_length_y/program_memory.snap @@ -15,6 +15,7 @@ description: Variables in memory after executing big_number_angle_to_match_lengt "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 94, "end": 100, "start": 94, "type": "TagDeclarator", @@ -51,6 +52,7 @@ description: Variables in memory after executing big_number_angle_to_match_lengt 0.0 ], "tag": { + "commentStart": 94, "end": 100, "start": 94, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/boolean_logical_and/ast.snap b/rust/kcl-lib/tests/boolean_logical_and/ast.snap index c808f824e..02f38788a 100644 --- a/rust/kcl-lib/tests/boolean_logical_and/ast.snap +++ b/rust/kcl-lib/tests/boolean_logical_and/ast.snap @@ -6,17 +6,22 @@ description: Result of parsing boolean_logical_and.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "aa", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 5, "end": 0, "left": { + "commentStart": 5, "end": 0, "raw": "true", "start": 0, @@ -26,6 +31,7 @@ description: Result of parsing boolean_logical_and.kcl }, "operator": "&", "right": { + "commentStart": 12, "end": 0, "raw": "false", "start": 0, @@ -47,16 +53,21 @@ description: Result of parsing boolean_logical_and.kcl "type": "VariableDeclaration" }, { + "commentStart": 18, "declaration": { + "commentStart": 18, "end": 0, "id": { + "commentStart": 18, "end": 0, "name": "a", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 22, "cond": { + "commentStart": 25, "end": 0, "name": "aa", "start": 0, @@ -69,8 +80,10 @@ description: Result of parsing boolean_logical_and.kcl "final_else": { "body": [ { + "commentStart": 45, "end": 0, "expression": { + "commentStart": 45, "end": 0, "raw": "2", "start": 0, @@ -86,6 +99,7 @@ description: Result of parsing boolean_logical_and.kcl "type": "ExpressionStatement" } ], + "commentStart": 45, "end": 0, "start": 0 }, @@ -93,8 +107,10 @@ description: Result of parsing boolean_logical_and.kcl "then_val": { "body": [ { + "commentStart": 32, "end": 0, "expression": { + "commentStart": 32, "end": 0, "raw": "1", "start": 0, @@ -110,6 +126,7 @@ description: Result of parsing boolean_logical_and.kcl "type": "ExpressionStatement" } ], + "commentStart": 32, "end": 0, "start": 0 }, @@ -126,12 +143,15 @@ description: Result of parsing boolean_logical_and.kcl "type": "VariableDeclaration" }, { + "commentStart": 49, "end": 0, "expression": { "arguments": [ { + "commentStart": 56, "end": 0, "left": { + "commentStart": 56, "end": 0, "name": "a", "start": 0, @@ -140,6 +160,7 @@ description: Result of parsing boolean_logical_and.kcl }, "operator": "==", "right": { + "commentStart": 61, "end": 0, "raw": "2", "start": 0, @@ -155,6 +176,7 @@ description: Result of parsing boolean_logical_and.kcl "type": "BinaryExpression" }, { + "commentStart": 64, "end": 0, "raw": "\"right branch of and is false makes the whole expression false\"", "start": 0, @@ -164,11 +186,13 @@ description: Result of parsing boolean_logical_and.kcl } ], "callee": { + "commentStart": 49, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 49, "end": 0, "start": 0, "type": "CallExpression", @@ -179,17 +203,22 @@ description: Result of parsing boolean_logical_and.kcl "type": "ExpressionStatement" }, { + "commentStart": 128, "declaration": { + "commentStart": 130, "end": 0, "id": { + "commentStart": 130, "end": 0, "name": "bb", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 135, "end": 0, "left": { + "commentStart": 135, "end": 0, "raw": "false", "start": 0, @@ -199,6 +228,7 @@ description: Result of parsing boolean_logical_and.kcl }, "operator": "&", "right": { + "commentStart": 143, "end": 0, "raw": "true", "start": 0, @@ -220,16 +250,21 @@ description: Result of parsing boolean_logical_and.kcl "type": "VariableDeclaration" }, { + "commentStart": 148, "declaration": { + "commentStart": 148, "end": 0, "id": { + "commentStart": 148, "end": 0, "name": "b", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 152, "cond": { + "commentStart": 155, "end": 0, "name": "bb", "start": 0, @@ -242,8 +277,10 @@ description: Result of parsing boolean_logical_and.kcl "final_else": { "body": [ { + "commentStart": 175, "end": 0, "expression": { + "commentStart": 175, "end": 0, "raw": "2", "start": 0, @@ -259,6 +296,7 @@ description: Result of parsing boolean_logical_and.kcl "type": "ExpressionStatement" } ], + "commentStart": 175, "end": 0, "start": 0 }, @@ -266,8 +304,10 @@ description: Result of parsing boolean_logical_and.kcl "then_val": { "body": [ { + "commentStart": 162, "end": 0, "expression": { + "commentStart": 162, "end": 0, "raw": "1", "start": 0, @@ -283,6 +323,7 @@ description: Result of parsing boolean_logical_and.kcl "type": "ExpressionStatement" } ], + "commentStart": 162, "end": 0, "start": 0 }, @@ -299,12 +340,15 @@ description: Result of parsing boolean_logical_and.kcl "type": "VariableDeclaration" }, { + "commentStart": 179, "end": 0, "expression": { "arguments": [ { + "commentStart": 186, "end": 0, "left": { + "commentStart": 186, "end": 0, "name": "b", "start": 0, @@ -313,6 +357,7 @@ description: Result of parsing boolean_logical_and.kcl }, "operator": "==", "right": { + "commentStart": 191, "end": 0, "raw": "2", "start": 0, @@ -328,6 +373,7 @@ description: Result of parsing boolean_logical_and.kcl "type": "BinaryExpression" }, { + "commentStart": 194, "end": 0, "raw": "\"left branch of and is false makes the whole expression false\"", "start": 0, @@ -337,11 +383,13 @@ description: Result of parsing boolean_logical_and.kcl } ], "callee": { + "commentStart": 179, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 179, "end": 0, "start": 0, "type": "CallExpression", @@ -352,17 +400,22 @@ description: Result of parsing boolean_logical_and.kcl "type": "ExpressionStatement" }, { + "commentStart": 257, "declaration": { + "commentStart": 259, "end": 0, "id": { + "commentStart": 259, "end": 0, "name": "cc", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 264, "end": 0, "left": { + "commentStart": 264, "end": 0, "raw": "true", "start": 0, @@ -372,6 +425,7 @@ description: Result of parsing boolean_logical_and.kcl }, "operator": "&", "right": { + "commentStart": 271, "end": 0, "raw": "true", "start": 0, @@ -393,16 +447,21 @@ description: Result of parsing boolean_logical_and.kcl "type": "VariableDeclaration" }, { + "commentStart": 276, "declaration": { + "commentStart": 276, "end": 0, "id": { + "commentStart": 276, "end": 0, "name": "c", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 280, "cond": { + "commentStart": 283, "end": 0, "name": "cc", "start": 0, @@ -415,8 +474,10 @@ description: Result of parsing boolean_logical_and.kcl "final_else": { "body": [ { + "commentStart": 303, "end": 0, "expression": { + "commentStart": 303, "end": 0, "raw": "2", "start": 0, @@ -432,6 +493,7 @@ description: Result of parsing boolean_logical_and.kcl "type": "ExpressionStatement" } ], + "commentStart": 303, "end": 0, "start": 0 }, @@ -439,8 +501,10 @@ description: Result of parsing boolean_logical_and.kcl "then_val": { "body": [ { + "commentStart": 290, "end": 0, "expression": { + "commentStart": 290, "end": 0, "raw": "1", "start": 0, @@ -456,6 +520,7 @@ description: Result of parsing boolean_logical_and.kcl "type": "ExpressionStatement" } ], + "commentStart": 290, "end": 0, "start": 0 }, @@ -472,12 +537,15 @@ description: Result of parsing boolean_logical_and.kcl "type": "VariableDeclaration" }, { + "commentStart": 307, "end": 0, "expression": { "arguments": [ { + "commentStart": 314, "end": 0, "left": { + "commentStart": 314, "end": 0, "name": "c", "start": 0, @@ -486,6 +554,7 @@ description: Result of parsing boolean_logical_and.kcl }, "operator": "==", "right": { + "commentStart": 319, "end": 0, "raw": "1", "start": 0, @@ -501,6 +570,7 @@ description: Result of parsing boolean_logical_and.kcl "type": "BinaryExpression" }, { + "commentStart": 322, "end": 0, "raw": "\"both branches of and are true makes the whole expression true\"", "start": 0, @@ -510,11 +580,13 @@ description: Result of parsing boolean_logical_and.kcl } ], "callee": { + "commentStart": 307, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 307, "end": 0, "start": 0, "type": "CallExpression", @@ -525,17 +597,22 @@ description: Result of parsing boolean_logical_and.kcl "type": "ExpressionStatement" }, { + "commentStart": 386, "declaration": { + "commentStart": 388, "end": 0, "id": { + "commentStart": 388, "end": 0, "name": "dd", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 393, "end": 0, "left": { + "commentStart": 393, "end": 0, "raw": "false", "start": 0, @@ -545,6 +622,7 @@ description: Result of parsing boolean_logical_and.kcl }, "operator": "&", "right": { + "commentStart": 401, "end": 0, "raw": "false", "start": 0, @@ -566,16 +644,21 @@ description: Result of parsing boolean_logical_and.kcl "type": "VariableDeclaration" }, { + "commentStart": 407, "declaration": { + "commentStart": 407, "end": 0, "id": { + "commentStart": 407, "end": 0, "name": "d", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 411, "cond": { + "commentStart": 414, "end": 0, "name": "dd", "start": 0, @@ -588,8 +671,10 @@ description: Result of parsing boolean_logical_and.kcl "final_else": { "body": [ { + "commentStart": 434, "end": 0, "expression": { + "commentStart": 434, "end": 0, "raw": "2", "start": 0, @@ -605,6 +690,7 @@ description: Result of parsing boolean_logical_and.kcl "type": "ExpressionStatement" } ], + "commentStart": 434, "end": 0, "start": 0 }, @@ -612,8 +698,10 @@ description: Result of parsing boolean_logical_and.kcl "then_val": { "body": [ { + "commentStart": 421, "end": 0, "expression": { + "commentStart": 421, "end": 0, "raw": "1", "start": 0, @@ -629,6 +717,7 @@ description: Result of parsing boolean_logical_and.kcl "type": "ExpressionStatement" } ], + "commentStart": 421, "end": 0, "start": 0 }, @@ -645,12 +734,15 @@ description: Result of parsing boolean_logical_and.kcl "type": "VariableDeclaration" }, { + "commentStart": 438, "end": 0, "expression": { "arguments": [ { + "commentStart": 445, "end": 0, "left": { + "commentStart": 445, "end": 0, "name": "d", "start": 0, @@ -659,6 +751,7 @@ description: Result of parsing boolean_logical_and.kcl }, "operator": "==", "right": { + "commentStart": 450, "end": 0, "raw": "2", "start": 0, @@ -674,6 +767,7 @@ description: Result of parsing boolean_logical_and.kcl "type": "BinaryExpression" }, { + "commentStart": 453, "end": 0, "raw": "\"both branches of and are false makes the whole expression false\"", "start": 0, @@ -683,11 +777,13 @@ description: Result of parsing boolean_logical_and.kcl } ], "callee": { + "commentStart": 438, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 438, "end": 0, "start": 0, "type": "CallExpression", @@ -698,11 +794,13 @@ description: Result of parsing boolean_logical_and.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 128, "end": 0, "start": 0, "type": "NonCodeNode", @@ -713,6 +811,7 @@ description: Result of parsing boolean_logical_and.kcl ], "5": [ { + "commentStart": 257, "end": 0, "start": 0, "type": "NonCodeNode", @@ -723,6 +822,7 @@ description: Result of parsing boolean_logical_and.kcl ], "8": [ { + "commentStart": 386, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/boolean_logical_multiple/ast.snap b/rust/kcl-lib/tests/boolean_logical_multiple/ast.snap index a69258e0e..9df9f37b8 100644 --- a/rust/kcl-lib/tests/boolean_logical_multiple/ast.snap +++ b/rust/kcl-lib/tests/boolean_logical_multiple/ast.snap @@ -6,17 +6,22 @@ description: Result of parsing boolean_logical_multiple.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "ii", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 5, "end": 0, "left": { + "commentStart": 5, "end": 0, "raw": "true", "start": 0, @@ -26,8 +31,10 @@ description: Result of parsing boolean_logical_multiple.kcl }, "operator": "|", "right": { + "commentStart": 12, "end": 0, "left": { + "commentStart": 12, "end": 0, "raw": "false", "start": 0, @@ -37,6 +44,7 @@ description: Result of parsing boolean_logical_multiple.kcl }, "operator": "&", "right": { + "commentStart": 20, "end": 0, "raw": "false", "start": 0, @@ -62,16 +70,21 @@ description: Result of parsing boolean_logical_multiple.kcl "type": "VariableDeclaration" }, { + "commentStart": 26, "declaration": { + "commentStart": 26, "end": 0, "id": { + "commentStart": 26, "end": 0, "name": "i", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 30, "cond": { + "commentStart": 33, "end": 0, "name": "ii", "start": 0, @@ -84,8 +97,10 @@ description: Result of parsing boolean_logical_multiple.kcl "final_else": { "body": [ { + "commentStart": 53, "end": 0, "expression": { + "commentStart": 53, "end": 0, "raw": "2", "start": 0, @@ -101,6 +116,7 @@ description: Result of parsing boolean_logical_multiple.kcl "type": "ExpressionStatement" } ], + "commentStart": 53, "end": 0, "start": 0 }, @@ -108,8 +124,10 @@ description: Result of parsing boolean_logical_multiple.kcl "then_val": { "body": [ { + "commentStart": 40, "end": 0, "expression": { + "commentStart": 40, "end": 0, "raw": "1", "start": 0, @@ -125,6 +143,7 @@ description: Result of parsing boolean_logical_multiple.kcl "type": "ExpressionStatement" } ], + "commentStart": 40, "end": 0, "start": 0 }, @@ -141,12 +160,15 @@ description: Result of parsing boolean_logical_multiple.kcl "type": "VariableDeclaration" }, { + "commentStart": 57, "end": 0, "expression": { "arguments": [ { + "commentStart": 64, "end": 0, "left": { + "commentStart": 64, "end": 0, "name": "i", "start": 0, @@ -155,6 +177,7 @@ description: Result of parsing boolean_logical_multiple.kcl }, "operator": "==", "right": { + "commentStart": 69, "end": 0, "raw": "1", "start": 0, @@ -170,6 +193,7 @@ description: Result of parsing boolean_logical_multiple.kcl "type": "BinaryExpression" }, { + "commentStart": 72, "end": 0, "raw": "\"and has higher precedence than or\"", "start": 0, @@ -179,11 +203,13 @@ description: Result of parsing boolean_logical_multiple.kcl } ], "callee": { + "commentStart": 57, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 57, "end": 0, "start": 0, "type": "CallExpression", @@ -194,19 +220,25 @@ description: Result of parsing boolean_logical_multiple.kcl "type": "ExpressionStatement" }, { + "commentStart": 108, "declaration": { + "commentStart": 110, "end": 0, "id": { + "commentStart": 110, "end": 0, "name": "jj", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 115, "end": 0, "left": { + "commentStart": 115, "end": 0, "left": { + "commentStart": 115, "end": 0, "raw": "false", "start": 0, @@ -216,8 +248,10 @@ description: Result of parsing boolean_logical_multiple.kcl }, "operator": "|", "right": { + "commentStart": 123, "end": 0, "left": { + "commentStart": 123, "end": 0, "raw": "true", "start": 0, @@ -228,6 +262,7 @@ description: Result of parsing boolean_logical_multiple.kcl "operator": "&", "right": { "argument": { + "commentStart": 131, "end": 0, "raw": "false", "start": 0, @@ -235,6 +270,7 @@ description: Result of parsing boolean_logical_multiple.kcl "type": "Literal", "value": false }, + "commentStart": 130, "end": 0, "operator": "!", "start": 0, @@ -251,8 +287,10 @@ description: Result of parsing boolean_logical_multiple.kcl }, "operator": "|", "right": { + "commentStart": 139, "end": 0, "left": { + "commentStart": 139, "end": 0, "raw": "false", "start": 0, @@ -262,6 +300,7 @@ description: Result of parsing boolean_logical_multiple.kcl }, "operator": "&", "right": { + "commentStart": 147, "end": 0, "raw": "true", "start": 0, @@ -287,16 +326,21 @@ description: Result of parsing boolean_logical_multiple.kcl "type": "VariableDeclaration" }, { + "commentStart": 152, "declaration": { + "commentStart": 152, "end": 0, "id": { + "commentStart": 152, "end": 0, "name": "j", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 156, "cond": { + "commentStart": 159, "end": 0, "name": "jj", "start": 0, @@ -309,8 +353,10 @@ description: Result of parsing boolean_logical_multiple.kcl "final_else": { "body": [ { + "commentStart": 179, "end": 0, "expression": { + "commentStart": 179, "end": 0, "raw": "2", "start": 0, @@ -326,6 +372,7 @@ description: Result of parsing boolean_logical_multiple.kcl "type": "ExpressionStatement" } ], + "commentStart": 179, "end": 0, "start": 0 }, @@ -333,8 +380,10 @@ description: Result of parsing boolean_logical_multiple.kcl "then_val": { "body": [ { + "commentStart": 166, "end": 0, "expression": { + "commentStart": 166, "end": 0, "raw": "1", "start": 0, @@ -350,6 +399,7 @@ description: Result of parsing boolean_logical_multiple.kcl "type": "ExpressionStatement" } ], + "commentStart": 166, "end": 0, "start": 0 }, @@ -366,12 +416,15 @@ description: Result of parsing boolean_logical_multiple.kcl "type": "VariableDeclaration" }, { + "commentStart": 183, "end": 0, "expression": { "arguments": [ { + "commentStart": 190, "end": 0, "left": { + "commentStart": 190, "end": 0, "name": "j", "start": 0, @@ -380,6 +433,7 @@ description: Result of parsing boolean_logical_multiple.kcl }, "operator": "==", "right": { + "commentStart": 195, "end": 0, "raw": "1", "start": 0, @@ -395,6 +449,7 @@ description: Result of parsing boolean_logical_multiple.kcl "type": "BinaryExpression" }, { + "commentStart": 198, "end": 0, "raw": "\"multiple logical operators\"", "start": 0, @@ -404,11 +459,13 @@ description: Result of parsing boolean_logical_multiple.kcl } ], "callee": { + "commentStart": 183, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 183, "end": 0, "start": 0, "type": "CallExpression", @@ -419,11 +476,13 @@ description: Result of parsing boolean_logical_multiple.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 108, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/boolean_logical_or/ast.snap b/rust/kcl-lib/tests/boolean_logical_or/ast.snap index cc75112f6..e96524ffb 100644 --- a/rust/kcl-lib/tests/boolean_logical_or/ast.snap +++ b/rust/kcl-lib/tests/boolean_logical_or/ast.snap @@ -6,17 +6,22 @@ description: Result of parsing boolean_logical_or.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "aa", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 5, "end": 0, "left": { + "commentStart": 5, "end": 0, "raw": "true", "start": 0, @@ -26,6 +31,7 @@ description: Result of parsing boolean_logical_or.kcl }, "operator": "|", "right": { + "commentStart": 12, "end": 0, "raw": "false", "start": 0, @@ -47,16 +53,21 @@ description: Result of parsing boolean_logical_or.kcl "type": "VariableDeclaration" }, { + "commentStart": 18, "declaration": { + "commentStart": 18, "end": 0, "id": { + "commentStart": 18, "end": 0, "name": "a", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 22, "cond": { + "commentStart": 25, "end": 0, "name": "aa", "start": 0, @@ -69,8 +80,10 @@ description: Result of parsing boolean_logical_or.kcl "final_else": { "body": [ { + "commentStart": 45, "end": 0, "expression": { + "commentStart": 45, "end": 0, "raw": "2", "start": 0, @@ -86,6 +99,7 @@ description: Result of parsing boolean_logical_or.kcl "type": "ExpressionStatement" } ], + "commentStart": 45, "end": 0, "start": 0 }, @@ -93,8 +107,10 @@ description: Result of parsing boolean_logical_or.kcl "then_val": { "body": [ { + "commentStart": 32, "end": 0, "expression": { + "commentStart": 32, "end": 0, "raw": "1", "start": 0, @@ -110,6 +126,7 @@ description: Result of parsing boolean_logical_or.kcl "type": "ExpressionStatement" } ], + "commentStart": 32, "end": 0, "start": 0 }, @@ -126,12 +143,15 @@ description: Result of parsing boolean_logical_or.kcl "type": "VariableDeclaration" }, { + "commentStart": 49, "end": 0, "expression": { "arguments": [ { + "commentStart": 56, "end": 0, "left": { + "commentStart": 56, "end": 0, "name": "a", "start": 0, @@ -140,6 +160,7 @@ description: Result of parsing boolean_logical_or.kcl }, "operator": "==", "right": { + "commentStart": 61, "end": 0, "raw": "1", "start": 0, @@ -155,6 +176,7 @@ description: Result of parsing boolean_logical_or.kcl "type": "BinaryExpression" }, { + "commentStart": 64, "end": 0, "raw": "\"left branch of or is true makes the whole expression true\"", "start": 0, @@ -164,11 +186,13 @@ description: Result of parsing boolean_logical_or.kcl } ], "callee": { + "commentStart": 49, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 49, "end": 0, "start": 0, "type": "CallExpression", @@ -179,17 +203,22 @@ description: Result of parsing boolean_logical_or.kcl "type": "ExpressionStatement" }, { + "commentStart": 124, "declaration": { + "commentStart": 126, "end": 0, "id": { + "commentStart": 126, "end": 0, "name": "bb", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 131, "end": 0, "left": { + "commentStart": 131, "end": 0, "raw": "false", "start": 0, @@ -199,6 +228,7 @@ description: Result of parsing boolean_logical_or.kcl }, "operator": "|", "right": { + "commentStart": 139, "end": 0, "raw": "true", "start": 0, @@ -220,16 +250,21 @@ description: Result of parsing boolean_logical_or.kcl "type": "VariableDeclaration" }, { + "commentStart": 144, "declaration": { + "commentStart": 144, "end": 0, "id": { + "commentStart": 144, "end": 0, "name": "b", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 148, "cond": { + "commentStart": 151, "end": 0, "name": "bb", "start": 0, @@ -242,8 +277,10 @@ description: Result of parsing boolean_logical_or.kcl "final_else": { "body": [ { + "commentStart": 171, "end": 0, "expression": { + "commentStart": 171, "end": 0, "raw": "2", "start": 0, @@ -259,6 +296,7 @@ description: Result of parsing boolean_logical_or.kcl "type": "ExpressionStatement" } ], + "commentStart": 171, "end": 0, "start": 0 }, @@ -266,8 +304,10 @@ description: Result of parsing boolean_logical_or.kcl "then_val": { "body": [ { + "commentStart": 158, "end": 0, "expression": { + "commentStart": 158, "end": 0, "raw": "1", "start": 0, @@ -283,6 +323,7 @@ description: Result of parsing boolean_logical_or.kcl "type": "ExpressionStatement" } ], + "commentStart": 158, "end": 0, "start": 0 }, @@ -299,12 +340,15 @@ description: Result of parsing boolean_logical_or.kcl "type": "VariableDeclaration" }, { + "commentStart": 175, "end": 0, "expression": { "arguments": [ { + "commentStart": 182, "end": 0, "left": { + "commentStart": 182, "end": 0, "name": "b", "start": 0, @@ -313,6 +357,7 @@ description: Result of parsing boolean_logical_or.kcl }, "operator": "==", "right": { + "commentStart": 187, "end": 0, "raw": "1", "start": 0, @@ -328,6 +373,7 @@ description: Result of parsing boolean_logical_or.kcl "type": "BinaryExpression" }, { + "commentStart": 190, "end": 0, "raw": "\"right branch of or is true makes the whole expression true\"", "start": 0, @@ -337,11 +383,13 @@ description: Result of parsing boolean_logical_or.kcl } ], "callee": { + "commentStart": 175, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 175, "end": 0, "start": 0, "type": "CallExpression", @@ -352,17 +400,22 @@ description: Result of parsing boolean_logical_or.kcl "type": "ExpressionStatement" }, { + "commentStart": 251, "declaration": { + "commentStart": 253, "end": 0, "id": { + "commentStart": 253, "end": 0, "name": "cc", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 258, "end": 0, "left": { + "commentStart": 258, "end": 0, "raw": "true", "start": 0, @@ -372,6 +425,7 @@ description: Result of parsing boolean_logical_or.kcl }, "operator": "|", "right": { + "commentStart": 265, "end": 0, "raw": "true", "start": 0, @@ -393,16 +447,21 @@ description: Result of parsing boolean_logical_or.kcl "type": "VariableDeclaration" }, { + "commentStart": 270, "declaration": { + "commentStart": 270, "end": 0, "id": { + "commentStart": 270, "end": 0, "name": "c", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 274, "cond": { + "commentStart": 277, "end": 0, "name": "cc", "start": 0, @@ -415,8 +474,10 @@ description: Result of parsing boolean_logical_or.kcl "final_else": { "body": [ { + "commentStart": 297, "end": 0, "expression": { + "commentStart": 297, "end": 0, "raw": "2", "start": 0, @@ -432,6 +493,7 @@ description: Result of parsing boolean_logical_or.kcl "type": "ExpressionStatement" } ], + "commentStart": 297, "end": 0, "start": 0 }, @@ -439,8 +501,10 @@ description: Result of parsing boolean_logical_or.kcl "then_val": { "body": [ { + "commentStart": 284, "end": 0, "expression": { + "commentStart": 284, "end": 0, "raw": "1", "start": 0, @@ -456,6 +520,7 @@ description: Result of parsing boolean_logical_or.kcl "type": "ExpressionStatement" } ], + "commentStart": 284, "end": 0, "start": 0 }, @@ -472,12 +537,15 @@ description: Result of parsing boolean_logical_or.kcl "type": "VariableDeclaration" }, { + "commentStart": 301, "end": 0, "expression": { "arguments": [ { + "commentStart": 308, "end": 0, "left": { + "commentStart": 308, "end": 0, "name": "c", "start": 0, @@ -486,6 +554,7 @@ description: Result of parsing boolean_logical_or.kcl }, "operator": "==", "right": { + "commentStart": 313, "end": 0, "raw": "1", "start": 0, @@ -501,6 +570,7 @@ description: Result of parsing boolean_logical_or.kcl "type": "BinaryExpression" }, { + "commentStart": 316, "end": 0, "raw": "\"both branches of or are true makes the whole expression true\"", "start": 0, @@ -510,11 +580,13 @@ description: Result of parsing boolean_logical_or.kcl } ], "callee": { + "commentStart": 301, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 301, "end": 0, "start": 0, "type": "CallExpression", @@ -525,17 +597,22 @@ description: Result of parsing boolean_logical_or.kcl "type": "ExpressionStatement" }, { + "commentStart": 379, "declaration": { + "commentStart": 381, "end": 0, "id": { + "commentStart": 381, "end": 0, "name": "dd", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 386, "end": 0, "left": { + "commentStart": 386, "end": 0, "raw": "false", "start": 0, @@ -545,6 +622,7 @@ description: Result of parsing boolean_logical_or.kcl }, "operator": "|", "right": { + "commentStart": 394, "end": 0, "raw": "false", "start": 0, @@ -566,16 +644,21 @@ description: Result of parsing boolean_logical_or.kcl "type": "VariableDeclaration" }, { + "commentStart": 400, "declaration": { + "commentStart": 400, "end": 0, "id": { + "commentStart": 400, "end": 0, "name": "d", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 404, "cond": { + "commentStart": 407, "end": 0, "name": "dd", "start": 0, @@ -588,8 +671,10 @@ description: Result of parsing boolean_logical_or.kcl "final_else": { "body": [ { + "commentStart": 427, "end": 0, "expression": { + "commentStart": 427, "end": 0, "raw": "2", "start": 0, @@ -605,6 +690,7 @@ description: Result of parsing boolean_logical_or.kcl "type": "ExpressionStatement" } ], + "commentStart": 427, "end": 0, "start": 0 }, @@ -612,8 +698,10 @@ description: Result of parsing boolean_logical_or.kcl "then_val": { "body": [ { + "commentStart": 414, "end": 0, "expression": { + "commentStart": 414, "end": 0, "raw": "1", "start": 0, @@ -629,6 +717,7 @@ description: Result of parsing boolean_logical_or.kcl "type": "ExpressionStatement" } ], + "commentStart": 414, "end": 0, "start": 0 }, @@ -645,12 +734,15 @@ description: Result of parsing boolean_logical_or.kcl "type": "VariableDeclaration" }, { + "commentStart": 431, "end": 0, "expression": { "arguments": [ { + "commentStart": 438, "end": 0, "left": { + "commentStart": 438, "end": 0, "name": "d", "start": 0, @@ -659,6 +751,7 @@ description: Result of parsing boolean_logical_or.kcl }, "operator": "==", "right": { + "commentStart": 443, "end": 0, "raw": "2", "start": 0, @@ -674,6 +767,7 @@ description: Result of parsing boolean_logical_or.kcl "type": "BinaryExpression" }, { + "commentStart": 446, "end": 0, "raw": "\"both branches of or are false makes the whole expression false\"", "start": 0, @@ -683,11 +777,13 @@ description: Result of parsing boolean_logical_or.kcl } ], "callee": { + "commentStart": 431, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 431, "end": 0, "start": 0, "type": "CallExpression", @@ -698,11 +794,13 @@ description: Result of parsing boolean_logical_or.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 124, "end": 0, "start": 0, "type": "NonCodeNode", @@ -713,6 +811,7 @@ description: Result of parsing boolean_logical_or.kcl ], "5": [ { + "commentStart": 251, "end": 0, "start": 0, "type": "NonCodeNode", @@ -723,6 +822,7 @@ description: Result of parsing boolean_logical_or.kcl ], "8": [ { + "commentStart": 379, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/circle_three_point/ast.snap b/rust/kcl-lib/tests/circle_three_point/ast.snap index 405f3cda2..3902bde82 100644 --- a/rust/kcl-lib/tests/circle_three_point/ast.snap +++ b/rust/kcl-lib/tests/circle_three_point/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing circle_three_point.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "sketch001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing circle_three_point.kcl { "arguments": [ { + "commentStart": 26, "end": 0, "raw": "'XY'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing circle_three_point.kcl } ], "callee": { + "commentStart": 12, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 12, "end": 0, "start": 0, "type": "CallExpression", @@ -43,14 +49,17 @@ description: Result of parsing circle_three_point.kcl { "type": "LabeledArg", "label": { + "commentStart": 54, "end": 0, "name": "p1", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 59, "elements": [ { + "commentStart": 60, "end": 0, "raw": "25", "start": 0, @@ -62,6 +71,7 @@ description: Result of parsing circle_three_point.kcl } }, { + "commentStart": 64, "end": 0, "raw": "25", "start": 0, @@ -82,14 +92,17 @@ description: Result of parsing circle_three_point.kcl { "type": "LabeledArg", "label": { + "commentStart": 69, "end": 0, "name": "p2", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 74, "elements": [ { + "commentStart": 75, "end": 0, "raw": "30", "start": 0, @@ -101,6 +114,7 @@ description: Result of parsing circle_three_point.kcl } }, { + "commentStart": 79, "end": 0, "raw": "20", "start": 0, @@ -121,14 +135,17 @@ description: Result of parsing circle_three_point.kcl { "type": "LabeledArg", "label": { + "commentStart": 84, "end": 0, "name": "p3", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 89, "elements": [ { + "commentStart": 90, "end": 0, "raw": "27", "start": 0, @@ -140,6 +157,7 @@ description: Result of parsing circle_three_point.kcl } }, { + "commentStart": 94, "end": 0, "raw": "15", "start": 0, @@ -159,11 +177,13 @@ description: Result of parsing circle_three_point.kcl } ], "callee": { + "commentStart": 37, "end": 0, "name": "circleThreePoint", "start": 0, "type": "Identifier" }, + "commentStart": 37, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -175,12 +195,14 @@ description: Result of parsing circle_three_point.kcl { "type": "LabeledArg", "label": { + "commentStart": 112, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 121, "end": 0, "raw": "10", "start": 0, @@ -194,11 +216,13 @@ description: Result of parsing circle_three_point.kcl } ], "callee": { + "commentStart": 104, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 104, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -206,6 +230,7 @@ description: Result of parsing circle_three_point.kcl "unlabeled": null } ], + "commentStart": 12, "end": 0, "start": 0, "type": "PipeExpression", @@ -221,6 +246,7 @@ description: Result of parsing circle_three_point.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/circular_pattern3d_a_pattern/ast.snap b/rust/kcl-lib/tests/circular_pattern3d_a_pattern/ast.snap index 6f687cfee..a25a70b03 100644 --- a/rust/kcl-lib/tests/circular_pattern3d_a_pattern/ast.snap +++ b/rust/kcl-lib/tests/circular_pattern3d_a_pattern/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "exampleSketch", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl { "arguments": [ { + "commentStart": 30, "end": 0, "raw": "'XZ'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 16, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 16, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl { "arguments": [ { + "commentStart": 56, "elements": [ { + "commentStart": 57, "end": 0, "raw": "0", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl } }, { + "commentStart": 60, "end": 0, "raw": "0", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl "type": "ArrayExpression" }, { + "commentStart": 64, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 41, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 41, "end": 0, "start": 0, "type": "CallExpression", @@ -93,14 +105,17 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 77, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 83, "elements": [ { + "commentStart": 84, "end": 0, "raw": "0", "start": 0, @@ -112,6 +127,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl } }, { + "commentStart": 87, "end": 0, "raw": "2", "start": 0, @@ -131,11 +147,13 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 72, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 72, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -147,14 +165,17 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 101, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 107, "elements": [ { + "commentStart": 108, "end": 0, "raw": "3", "start": 0, @@ -166,6 +187,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl } }, { + "commentStart": 111, "end": 0, "raw": "1", "start": 0, @@ -185,11 +207,13 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 96, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 96, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -201,14 +225,17 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 125, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 131, "elements": [ { + "commentStart": 132, "end": 0, "raw": "0", "start": 0, @@ -221,6 +248,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl }, { "argument": { + "commentStart": 136, "end": 0, "raw": "4", "start": 0, @@ -231,6 +259,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl "suffix": "None" } }, + "commentStart": 135, "end": 0, "operator": "-", "start": 0, @@ -246,11 +275,13 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 120, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 120, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -260,6 +291,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl { "arguments": [ { + "commentStart": 151, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -267,11 +299,13 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 145, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 145, "end": 0, "start": 0, "type": "CallExpression", @@ -282,12 +316,14 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 167, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 176, "end": 0, "raw": "1", "start": 0, @@ -301,11 +337,13 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 159, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 159, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -313,6 +351,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl "unlabeled": null } ], + "commentStart": 16, "end": 0, "start": 0, "type": "PipeExpression", @@ -328,9 +367,12 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl "type": "VariableDeclaration" }, { + "commentStart": 178, "declaration": { + "commentStart": 180, "end": 0, "id": { + "commentStart": 180, "end": 0, "name": "pattn1", "start": 0, @@ -341,14 +383,17 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 225, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 232, "elements": [ { + "commentStart": 233, "end": 0, "raw": "1", "start": 0, @@ -360,6 +405,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl } }, { + "commentStart": 236, "end": 0, "raw": "0", "start": 0, @@ -371,6 +417,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl } }, { + "commentStart": 239, "end": 0, "raw": "0", "start": 0, @@ -391,12 +438,14 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 245, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 257, "end": 0, "raw": "7", "start": 0, @@ -411,12 +460,14 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 262, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 273, "end": 0, "raw": "6", "start": 0, @@ -430,16 +481,19 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 189, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 189, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 208, "end": 0, "name": "exampleSketch", "start": 0, @@ -457,9 +511,12 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl "type": "VariableDeclaration" }, { + "commentStart": 277, "declaration": { + "commentStart": 279, "end": 0, "id": { + "commentStart": 279, "end": 0, "name": "pattn2", "start": 0, @@ -470,14 +527,17 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 319, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 326, "elements": [ { + "commentStart": 327, "end": 0, "raw": "0", "start": 0, @@ -489,6 +549,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl } }, { + "commentStart": 330, "end": 0, "raw": "0", "start": 0, @@ -500,6 +561,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl } }, { + "commentStart": 333, "end": 0, "raw": "1", "start": 0, @@ -520,15 +582,18 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 339, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 348, "elements": [ { "argument": { + "commentStart": 350, "end": 0, "raw": "20", "start": 0, @@ -539,6 +604,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl "suffix": "None" } }, + "commentStart": 349, "end": 0, "operator": "-", "start": 0, @@ -547,6 +613,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl }, { "argument": { + "commentStart": 355, "end": 0, "raw": "20", "start": 0, @@ -557,6 +624,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl "suffix": "None" } }, + "commentStart": 354, "end": 0, "operator": "-", "start": 0, @@ -565,6 +633,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl }, { "argument": { + "commentStart": 360, "end": 0, "raw": "20", "start": 0, @@ -575,6 +644,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl "suffix": "None" } }, + "commentStart": 359, "end": 0, "operator": "-", "start": 0, @@ -591,12 +661,14 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 367, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 379, "end": 0, "raw": "41", "start": 0, @@ -611,12 +683,14 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 385, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 398, "end": 0, "raw": "360", "start": 0, @@ -631,12 +705,14 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 405, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 424, "end": 0, "raw": "false", "start": 0, @@ -647,16 +723,19 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 288, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 288, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 309, "end": 0, "name": "pattn1", "start": 0, @@ -674,11 +753,13 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 178, "end": 0, "start": 0, "type": "NonCodeNode", @@ -689,6 +770,7 @@ description: Result of parsing circular_pattern3d_a_pattern.kcl ], "1": [ { + "commentStart": 277, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/comparisons/ast.snap b/rust/kcl-lib/tests/comparisons/ast.snap index 73190e6be..939b7b9b5 100644 --- a/rust/kcl-lib/tests/comparisons/ast.snap +++ b/rust/kcl-lib/tests/comparisons/ast.snap @@ -6,12 +6,15 @@ description: Result of parsing comparisons.kcl "Ok": { "body": [ { + "commentStart": 0, "end": 0, "expression": { "arguments": [ { + "commentStart": 7, "end": 0, "left": { + "commentStart": 7, "end": 0, "raw": "3", "start": 0, @@ -24,6 +27,7 @@ description: Result of parsing comparisons.kcl }, "operator": "==", "right": { + "commentStart": 12, "end": 0, "raw": "3", "start": 0, @@ -39,6 +43,7 @@ description: Result of parsing comparisons.kcl "type": "BinaryExpression" }, { + "commentStart": 15, "end": 0, "raw": "\"equality\"", "start": 0, @@ -48,11 +53,13 @@ description: Result of parsing comparisons.kcl } ], "callee": { + "commentStart": 0, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 0, "end": 0, "start": 0, "type": "CallExpression", @@ -63,12 +70,15 @@ description: Result of parsing comparisons.kcl "type": "ExpressionStatement" }, { + "commentStart": 27, "end": 0, "expression": { "arguments": [ { + "commentStart": 34, "end": 0, "left": { + "commentStart": 34, "end": 0, "raw": "3.0", "start": 0, @@ -81,6 +91,7 @@ description: Result of parsing comparisons.kcl }, "operator": "==", "right": { + "commentStart": 41, "end": 0, "raw": "3.0", "start": 0, @@ -96,6 +107,7 @@ description: Result of parsing comparisons.kcl "type": "BinaryExpression" }, { + "commentStart": 46, "end": 0, "raw": "\"equality of floats\"", "start": 0, @@ -105,11 +117,13 @@ description: Result of parsing comparisons.kcl } ], "callee": { + "commentStart": 27, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 27, "end": 0, "start": 0, "type": "CallExpression", @@ -120,12 +134,15 @@ description: Result of parsing comparisons.kcl "type": "ExpressionStatement" }, { + "commentStart": 68, "end": 0, "expression": { "arguments": [ { + "commentStart": 75, "end": 0, "left": { + "commentStart": 75, "end": 0, "raw": "3", "start": 0, @@ -138,6 +155,7 @@ description: Result of parsing comparisons.kcl }, "operator": "!=", "right": { + "commentStart": 80, "end": 0, "raw": "4", "start": 0, @@ -153,6 +171,7 @@ description: Result of parsing comparisons.kcl "type": "BinaryExpression" }, { + "commentStart": 83, "end": 0, "raw": "\"non-equality\"", "start": 0, @@ -162,11 +181,13 @@ description: Result of parsing comparisons.kcl } ], "callee": { + "commentStart": 68, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 68, "end": 0, "start": 0, "type": "CallExpression", @@ -177,12 +198,15 @@ description: Result of parsing comparisons.kcl "type": "ExpressionStatement" }, { + "commentStart": 99, "end": 0, "expression": { "arguments": [ { + "commentStart": 106, "end": 0, "left": { + "commentStart": 106, "end": 0, "raw": "3.0", "start": 0, @@ -195,6 +219,7 @@ description: Result of parsing comparisons.kcl }, "operator": "!=", "right": { + "commentStart": 113, "end": 0, "raw": "4.0", "start": 0, @@ -210,6 +235,7 @@ description: Result of parsing comparisons.kcl "type": "BinaryExpression" }, { + "commentStart": 118, "end": 0, "raw": "\"non-equality of floats\"", "start": 0, @@ -219,11 +245,13 @@ description: Result of parsing comparisons.kcl } ], "callee": { + "commentStart": 99, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 99, "end": 0, "start": 0, "type": "CallExpression", @@ -234,12 +262,15 @@ description: Result of parsing comparisons.kcl "type": "ExpressionStatement" }, { + "commentStart": 144, "end": 0, "expression": { "arguments": [ { + "commentStart": 151, "end": 0, "left": { + "commentStart": 151, "end": 0, "raw": "3", "start": 0, @@ -252,6 +283,7 @@ description: Result of parsing comparisons.kcl }, "operator": "<", "right": { + "commentStart": 155, "end": 0, "raw": "4", "start": 0, @@ -267,6 +299,7 @@ description: Result of parsing comparisons.kcl "type": "BinaryExpression" }, { + "commentStart": 158, "end": 0, "raw": "\"lt\"", "start": 0, @@ -276,11 +309,13 @@ description: Result of parsing comparisons.kcl } ], "callee": { + "commentStart": 144, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 144, "end": 0, "start": 0, "type": "CallExpression", @@ -291,12 +326,15 @@ description: Result of parsing comparisons.kcl "type": "ExpressionStatement" }, { + "commentStart": 164, "end": 0, "expression": { "arguments": [ { + "commentStart": 171, "end": 0, "left": { + "commentStart": 171, "end": 0, "raw": "3", "start": 0, @@ -309,6 +347,7 @@ description: Result of parsing comparisons.kcl }, "operator": "<=", "right": { + "commentStart": 176, "end": 0, "raw": "4", "start": 0, @@ -324,6 +363,7 @@ description: Result of parsing comparisons.kcl "type": "BinaryExpression" }, { + "commentStart": 179, "end": 0, "raw": "\"lte but actually lt\"", "start": 0, @@ -333,11 +373,13 @@ description: Result of parsing comparisons.kcl } ], "callee": { + "commentStart": 164, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 164, "end": 0, "start": 0, "type": "CallExpression", @@ -348,12 +390,15 @@ description: Result of parsing comparisons.kcl "type": "ExpressionStatement" }, { + "commentStart": 202, "end": 0, "expression": { "arguments": [ { + "commentStart": 209, "end": 0, "left": { + "commentStart": 209, "end": 0, "raw": "4", "start": 0, @@ -366,6 +411,7 @@ description: Result of parsing comparisons.kcl }, "operator": "<=", "right": { + "commentStart": 214, "end": 0, "raw": "4", "start": 0, @@ -381,6 +427,7 @@ description: Result of parsing comparisons.kcl "type": "BinaryExpression" }, { + "commentStart": 217, "end": 0, "raw": "\"lte but actually eq\"", "start": 0, @@ -390,11 +437,13 @@ description: Result of parsing comparisons.kcl } ], "callee": { + "commentStart": 202, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 202, "end": 0, "start": 0, "type": "CallExpression", @@ -405,12 +454,15 @@ description: Result of parsing comparisons.kcl "type": "ExpressionStatement" }, { + "commentStart": 240, "end": 0, "expression": { "arguments": [ { + "commentStart": 247, "end": 0, "left": { + "commentStart": 247, "end": 0, "raw": "4", "start": 0, @@ -423,6 +475,7 @@ description: Result of parsing comparisons.kcl }, "operator": ">", "right": { + "commentStart": 251, "end": 0, "raw": "3", "start": 0, @@ -438,6 +491,7 @@ description: Result of parsing comparisons.kcl "type": "BinaryExpression" }, { + "commentStart": 254, "end": 0, "raw": "\"gt\"", "start": 0, @@ -447,11 +501,13 @@ description: Result of parsing comparisons.kcl } ], "callee": { + "commentStart": 240, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 240, "end": 0, "start": 0, "type": "CallExpression", @@ -462,12 +518,15 @@ description: Result of parsing comparisons.kcl "type": "ExpressionStatement" }, { + "commentStart": 260, "end": 0, "expression": { "arguments": [ { + "commentStart": 267, "end": 0, "left": { + "commentStart": 267, "end": 0, "raw": "4", "start": 0, @@ -480,6 +539,7 @@ description: Result of parsing comparisons.kcl }, "operator": ">=", "right": { + "commentStart": 272, "end": 0, "raw": "3", "start": 0, @@ -495,6 +555,7 @@ description: Result of parsing comparisons.kcl "type": "BinaryExpression" }, { + "commentStart": 275, "end": 0, "raw": "\"gte but actually gt\"", "start": 0, @@ -504,11 +565,13 @@ description: Result of parsing comparisons.kcl } ], "callee": { + "commentStart": 260, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 260, "end": 0, "start": 0, "type": "CallExpression", @@ -519,12 +582,15 @@ description: Result of parsing comparisons.kcl "type": "ExpressionStatement" }, { + "commentStart": 298, "end": 0, "expression": { "arguments": [ { + "commentStart": 305, "end": 0, "left": { + "commentStart": 305, "end": 0, "raw": "3", "start": 0, @@ -537,6 +603,7 @@ description: Result of parsing comparisons.kcl }, "operator": ">=", "right": { + "commentStart": 310, "end": 0, "raw": "3", "start": 0, @@ -552,6 +619,7 @@ description: Result of parsing comparisons.kcl "type": "BinaryExpression" }, { + "commentStart": 313, "end": 0, "raw": "\"gte but actually eq\"", "start": 0, @@ -561,11 +629,13 @@ description: Result of parsing comparisons.kcl } ], "callee": { + "commentStart": 298, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 298, "end": 0, "start": 0, "type": "CallExpression", @@ -576,12 +646,15 @@ description: Result of parsing comparisons.kcl "type": "ExpressionStatement" }, { + "commentStart": 335, "end": 0, "expression": { "arguments": [ { + "commentStart": 344, "end": 0, "left": { + "commentStart": 344, "end": 0, "raw": "0.0", "start": 0, @@ -594,6 +667,7 @@ description: Result of parsing comparisons.kcl }, "operator": "==", "right": { + "commentStart": 351, "end": 0, "raw": "0.0", "start": 0, @@ -609,6 +683,7 @@ description: Result of parsing comparisons.kcl "type": "BinaryExpression" }, { + "commentStart": 356, "end": 0, "raw": "\"equality of zero\"", "start": 0, @@ -618,11 +693,13 @@ description: Result of parsing comparisons.kcl } ], "callee": { + "commentStart": 337, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 337, "end": 0, "start": 0, "type": "CallExpression", @@ -633,12 +710,15 @@ description: Result of parsing comparisons.kcl "type": "ExpressionStatement" }, { + "commentStart": 376, "end": 0, "expression": { "arguments": [ { + "commentStart": 383, "end": 0, "left": { + "commentStart": 383, "end": 0, "raw": "0.0", "start": 0, @@ -652,6 +732,7 @@ description: Result of parsing comparisons.kcl "operator": "==", "right": { "argument": { + "commentStart": 391, "end": 0, "raw": "0.0", "start": 0, @@ -662,6 +743,7 @@ description: Result of parsing comparisons.kcl "suffix": "None" } }, + "commentStart": 390, "end": 0, "operator": "-", "start": 0, @@ -673,6 +755,7 @@ description: Result of parsing comparisons.kcl "type": "BinaryExpression" }, { + "commentStart": 396, "end": 0, "raw": "\"equality of zero and neg zero\"", "start": 0, @@ -682,11 +765,13 @@ description: Result of parsing comparisons.kcl } ], "callee": { + "commentStart": 376, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 376, "end": 0, "start": 0, "type": "CallExpression", @@ -697,11 +782,13 @@ description: Result of parsing comparisons.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "9": [ { + "commentStart": 335, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/comparisons_multiple/ast.snap b/rust/kcl-lib/tests/comparisons_multiple/ast.snap index f18b6bafc..02269d5c0 100644 --- a/rust/kcl-lib/tests/comparisons_multiple/ast.snap +++ b/rust/kcl-lib/tests/comparisons_multiple/ast.snap @@ -6,14 +6,18 @@ description: Result of parsing comparisons_multiple.kcl "Ok": { "body": [ { + "commentStart": 0, "end": 0, "expression": { "arguments": [ { + "commentStart": 7, "end": 0, "left": { + "commentStart": 7, "end": 0, "left": { + "commentStart": 7, "end": 0, "raw": "3", "start": 0, @@ -26,6 +30,7 @@ description: Result of parsing comparisons_multiple.kcl }, "operator": "==", "right": { + "commentStart": 12, "end": 0, "raw": "3", "start": 0, @@ -42,6 +47,7 @@ description: Result of parsing comparisons_multiple.kcl }, "operator": "==", "right": { + "commentStart": 17, "end": 0, "raw": "3", "start": 0, @@ -57,6 +63,7 @@ description: Result of parsing comparisons_multiple.kcl "type": "BinaryExpression" }, { + "commentStart": 20, "end": 0, "raw": "\"this should not compile\"", "start": 0, @@ -66,11 +73,13 @@ description: Result of parsing comparisons_multiple.kcl } ], "callee": { + "commentStart": 0, "end": 0, "name": "assert", "start": 0, "type": "Identifier" }, + "commentStart": 0, "end": 0, "start": 0, "type": "CallExpression", @@ -81,6 +90,7 @@ description: Result of parsing comparisons_multiple.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/computed_var/ast.snap b/rust/kcl-lib/tests/computed_var/ast.snap index 28113a7ce..5b1dd15e4 100644 --- a/rust/kcl-lib/tests/computed_var/ast.snap +++ b/rust/kcl-lib/tests/computed_var/ast.snap @@ -6,17 +6,22 @@ description: Result of parsing computed_var.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 37, "end": 0, "id": { + "commentStart": 37, "end": 0, "name": "arr", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 43, "elements": [ { + "commentStart": 44, "end": 0, "raw": "0", "start": 0, @@ -28,6 +33,7 @@ description: Result of parsing computed_var.kcl } }, { + "commentStart": 47, "end": 0, "raw": "0", "start": 0, @@ -39,6 +45,7 @@ description: Result of parsing computed_var.kcl } }, { + "commentStart": 50, "end": 0, "raw": "0", "start": 0, @@ -50,6 +57,7 @@ description: Result of parsing computed_var.kcl } }, { + "commentStart": 53, "end": 0, "raw": "10", "start": 0, @@ -76,15 +84,19 @@ description: Result of parsing computed_var.kcl "type": "VariableDeclaration" }, { + "commentStart": 57, "declaration": { + "commentStart": 57, "end": 0, "id": { + "commentStart": 57, "end": 0, "name": "i", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 61, "end": 0, "raw": "3", "start": 0, @@ -105,18 +117,23 @@ description: Result of parsing computed_var.kcl "type": "VariableDeclaration" }, { + "commentStart": 63, "declaration": { + "commentStart": 63, "end": 0, "id": { + "commentStart": 63, "end": 0, "name": "ten", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 69, "computed": true, "end": 0, "object": { + "commentStart": 69, "end": 0, "name": "arr", "start": 0, @@ -124,6 +141,7 @@ description: Result of parsing computed_var.kcl "type": "Identifier" }, "property": { + "commentStart": 73, "end": 0, "name": "i", "start": 0, @@ -144,10 +162,12 @@ description: Result of parsing computed_var.kcl "type": "VariableDeclaration" }, { + "commentStart": 75, "end": 0, "expression": { "arguments": [ { + "commentStart": 89, "end": 0, "name": "ten", "start": 0, @@ -155,6 +175,7 @@ description: Result of parsing computed_var.kcl "type": "Identifier" }, { + "commentStart": 94, "end": 0, "raw": "10", "start": 0, @@ -166,6 +187,7 @@ description: Result of parsing computed_var.kcl } }, { + "commentStart": 98, "end": 0, "raw": "0.000001", "start": 0, @@ -177,6 +199,7 @@ description: Result of parsing computed_var.kcl } }, { + "commentStart": 108, "end": 0, "raw": "\"oops\"", "start": 0, @@ -186,11 +209,13 @@ description: Result of parsing computed_var.kcl } ], "callee": { + "commentStart": 77, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 77, "end": 0, "start": 0, "type": "CallExpression", @@ -201,15 +226,19 @@ description: Result of parsing computed_var.kcl "type": "ExpressionStatement" }, { + "commentStart": 115, "declaration": { + "commentStart": 117, "end": 0, "id": { + "commentStart": 117, "end": 0, "name": "p", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 121, "end": 0, "raw": "\"foo\"", "start": 0, @@ -227,20 +256,26 @@ description: Result of parsing computed_var.kcl "type": "VariableDeclaration" }, { + "commentStart": 127, "declaration": { + "commentStart": 127, "end": 0, "id": { + "commentStart": 127, "end": 0, "name": "obj", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 133, "end": 0, "properties": [ { + "commentStart": 135, "end": 0, "key": { + "commentStart": 135, "end": 0, "name": "foo", "start": 0, @@ -249,6 +284,7 @@ description: Result of parsing computed_var.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 141, "end": 0, "raw": "1", "start": 0, @@ -261,8 +297,10 @@ description: Result of parsing computed_var.kcl } }, { + "commentStart": 144, "end": 0, "key": { + "commentStart": 144, "end": 0, "name": "bar", "start": 0, @@ -271,6 +309,7 @@ description: Result of parsing computed_var.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 150, "end": 0, "raw": "0", "start": 0, @@ -297,18 +336,23 @@ description: Result of parsing computed_var.kcl "type": "VariableDeclaration" }, { + "commentStart": 154, "declaration": { + "commentStart": 154, "end": 0, "id": { + "commentStart": 154, "end": 0, "name": "one", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 160, "computed": true, "end": 0, "object": { + "commentStart": 160, "end": 0, "name": "obj", "start": 0, @@ -316,6 +360,7 @@ description: Result of parsing computed_var.kcl "type": "Identifier" }, "property": { + "commentStart": 164, "end": 0, "name": "p", "start": 0, @@ -336,10 +381,12 @@ description: Result of parsing computed_var.kcl "type": "VariableDeclaration" }, { + "commentStart": 166, "end": 0, "expression": { "arguments": [ { + "commentStart": 180, "end": 0, "name": "one", "start": 0, @@ -347,6 +394,7 @@ description: Result of parsing computed_var.kcl "type": "Identifier" }, { + "commentStart": 185, "end": 0, "raw": "1", "start": 0, @@ -358,6 +406,7 @@ description: Result of parsing computed_var.kcl } }, { + "commentStart": 188, "end": 0, "raw": "0.0000001", "start": 0, @@ -369,6 +418,7 @@ description: Result of parsing computed_var.kcl } }, { + "commentStart": 199, "end": 0, "raw": "\"oops\"", "start": 0, @@ -378,11 +428,13 @@ description: Result of parsing computed_var.kcl } ], "callee": { + "commentStart": 168, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 168, "end": 0, "start": 0, "type": "CallExpression", @@ -393,10 +445,12 @@ description: Result of parsing computed_var.kcl "type": "ExpressionStatement" }, { + "commentStart": 206, "end": 0, "expression": { "arguments": [ { + "commentStart": 220, "end": 0, "name": "PI", "start": 0, @@ -404,6 +458,7 @@ description: Result of parsing computed_var.kcl "type": "Identifier" }, { + "commentStart": 224, "end": 0, "raw": "3", "start": 0, @@ -415,6 +470,7 @@ description: Result of parsing computed_var.kcl } }, { + "commentStart": 227, "end": 0, "raw": "0.2", "start": 0, @@ -426,6 +482,7 @@ description: Result of parsing computed_var.kcl } }, { + "commentStart": 232, "end": 0, "raw": "\"oops pi\"", "start": 0, @@ -435,11 +492,13 @@ description: Result of parsing computed_var.kcl } ], "callee": { + "commentStart": 208, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 208, "end": 0, "start": 0, "type": "CallExpression", @@ -450,9 +509,12 @@ description: Result of parsing computed_var.kcl "type": "ExpressionStatement" }, { + "commentStart": 243, "declaration": { + "commentStart": 243, "end": 0, "id": { + "commentStart": 243, "end": 0, "name": "x", "start": 0, @@ -461,8 +523,10 @@ description: Result of parsing computed_var.kcl "init": { "arguments": [ { + "commentStart": 251, "end": 0, "left": { + "commentStart": 251, "end": 0, "raw": "2", "start": 0, @@ -475,6 +539,7 @@ description: Result of parsing computed_var.kcl }, "operator": "*", "right": { + "commentStart": 255, "end": 0, "name": "PI", "start": 0, @@ -487,11 +552,13 @@ description: Result of parsing computed_var.kcl } ], "callee": { + "commentStart": 247, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 247, "end": 0, "start": 0, "type": "CallExpression", @@ -507,10 +574,12 @@ description: Result of parsing computed_var.kcl "type": "VariableDeclaration" }, { + "commentStart": 259, "end": 0, "expression": { "arguments": [ { + "commentStart": 271, "end": 0, "name": "x", "start": 0, @@ -518,6 +587,7 @@ description: Result of parsing computed_var.kcl "type": "Identifier" }, { + "commentStart": 274, "end": 0, "raw": "1", "start": 0, @@ -529,6 +599,7 @@ description: Result of parsing computed_var.kcl } }, { + "commentStart": 277, "end": 0, "raw": "0.000001", "start": 0, @@ -540,6 +611,7 @@ description: Result of parsing computed_var.kcl } }, { + "commentStart": 287, "end": 0, "raw": "\"oops cos\"", "start": 0, @@ -549,11 +621,13 @@ description: Result of parsing computed_var.kcl } ], "callee": { + "commentStart": 259, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 259, "end": 0, "start": 0, "type": "CallExpression", @@ -564,11 +638,13 @@ description: Result of parsing computed_var.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 75, "end": 0, "start": 0, "type": "NonCodeNode", @@ -579,6 +655,7 @@ description: Result of parsing computed_var.kcl ], "3": [ { + "commentStart": 115, "end": 0, "start": 0, "type": "NonCodeNode", @@ -589,6 +666,7 @@ description: Result of parsing computed_var.kcl ], "6": [ { + "commentStart": 166, "end": 0, "start": 0, "type": "NonCodeNode", @@ -599,6 +677,7 @@ description: Result of parsing computed_var.kcl ], "7": [ { + "commentStart": 206, "end": 0, "start": 0, "type": "NonCodeNode", @@ -610,6 +689,7 @@ description: Result of parsing computed_var.kcl }, "startNodes": [ { + "commentStart": 0, "end": 0, "start": 0, "type": "NonCodeNode", @@ -620,6 +700,7 @@ description: Result of parsing computed_var.kcl } }, { + "commentStart": 34, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/crazy_multi_profile/ast.snap b/rust/kcl-lib/tests/crazy_multi_profile/ast.snap index 773393ea5..08d9eb5f4 100644 --- a/rust/kcl-lib/tests/crazy_multi_profile/ast.snap +++ b/rust/kcl-lib/tests/crazy_multi_profile/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing crazy_multi_profile.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "sketch001", "start": 0, @@ -17,6 +20,7 @@ description: Result of parsing crazy_multi_profile.kcl "init": { "arguments": [ { + "commentStart": 26, "end": 0, "raw": "'XZ'", "start": 0, @@ -26,11 +30,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 12, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 12, "end": 0, "start": 0, "type": "CallExpression", @@ -46,9 +52,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 32, "declaration": { + "commentStart": 32, "end": 0, "id": { + "commentStart": 32, "end": 0, "name": "profile001", "start": 0, @@ -59,8 +68,10 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 60, "elements": [ { + "commentStart": 61, "end": 0, "raw": "6.71", "start": 0, @@ -73,6 +84,7 @@ description: Result of parsing crazy_multi_profile.kcl }, { "argument": { + "commentStart": 68, "end": 0, "raw": "3.66", "start": 0, @@ -83,6 +95,7 @@ description: Result of parsing crazy_multi_profile.kcl "suffix": "None" } }, + "commentStart": 67, "end": 0, "operator": "-", "start": 0, @@ -96,6 +109,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "ArrayExpression" }, { + "commentStart": 75, "end": 0, "name": "sketch001", "start": 0, @@ -104,11 +118,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 45, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 45, "end": 0, "start": 0, "type": "CallExpression", @@ -119,14 +135,17 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 96, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 102, "elements": [ { + "commentStart": 103, "end": 0, "raw": "2.65", "start": 0, @@ -138,6 +157,7 @@ description: Result of parsing crazy_multi_profile.kcl } }, { + "commentStart": 109, "end": 0, "raw": "9.02", "start": 0, @@ -158,12 +178,14 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 116, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 122, "end": 0, "start": 0, "type": "TagDeclarator", @@ -173,11 +195,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 91, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 91, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -189,14 +213,17 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 140, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 146, "elements": [ { + "commentStart": 147, "end": 0, "raw": "3.73", "start": 0, @@ -209,6 +236,7 @@ description: Result of parsing crazy_multi_profile.kcl }, { "argument": { + "commentStart": 154, "end": 0, "raw": "9.36", "start": 0, @@ -219,6 +247,7 @@ description: Result of parsing crazy_multi_profile.kcl "suffix": "None" } }, + "commentStart": 153, "end": 0, "operator": "-", "start": 0, @@ -235,12 +264,14 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 161, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 167, "end": 0, "start": 0, "type": "TagDeclarator", @@ -250,11 +281,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 135, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 135, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -266,16 +299,19 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 185, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 199, "elements": [ { "arguments": [ { + "commentStart": 214, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -283,11 +319,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 200, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 200, "end": 0, "start": 0, "type": "CallExpression", @@ -296,6 +334,7 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 232, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -303,11 +342,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 218, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 218, "end": 0, "start": 0, "type": "CallExpression", @@ -322,11 +363,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 180, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 180, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -336,17 +379,20 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [], "callee": { + "commentStart": 242, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 242, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 45, "end": 0, "start": 0, "type": "PipeExpression", @@ -362,9 +408,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 250, "declaration": { + "commentStart": 250, "end": 0, "id": { + "commentStart": 250, "end": 0, "name": "extrude001", "start": 0, @@ -375,12 +424,14 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 283, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 292, "end": 0, "raw": "20", "start": 0, @@ -394,16 +445,19 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 263, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 263, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 271, "end": 0, "name": "profile001", "start": 0, @@ -421,9 +475,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 296, "declaration": { + "commentStart": 296, "end": 0, "id": { + "commentStart": 296, "end": 0, "name": "sketch002", "start": 0, @@ -432,6 +489,7 @@ description: Result of parsing crazy_multi_profile.kcl "init": { "arguments": [ { + "commentStart": 322, "end": 0, "name": "extrude001", "start": 0, @@ -439,6 +497,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "Identifier" }, { + "commentStart": 334, "end": 0, "name": "seg01", "start": 0, @@ -447,11 +506,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 308, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 308, "end": 0, "start": 0, "type": "CallExpression", @@ -467,9 +528,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 341, "declaration": { + "commentStart": 341, "end": 0, "id": { + "commentStart": 341, "end": 0, "name": "profile002", "start": 0, @@ -480,8 +544,10 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 369, "elements": [ { + "commentStart": 370, "end": 0, "raw": "0.75", "start": 0, @@ -493,6 +559,7 @@ description: Result of parsing crazy_multi_profile.kcl } }, { + "commentStart": 376, "end": 0, "raw": "13.46", "start": 0, @@ -510,6 +577,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "ArrayExpression" }, { + "commentStart": 384, "end": 0, "name": "sketch002", "start": 0, @@ -518,11 +586,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 354, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 354, "end": 0, "start": 0, "type": "CallExpression", @@ -533,14 +603,17 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 405, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 411, "elements": [ { + "commentStart": 412, "end": 0, "raw": "4.52", "start": 0, @@ -552,6 +625,7 @@ description: Result of parsing crazy_multi_profile.kcl } }, { + "commentStart": 418, "end": 0, "raw": "3.79", "start": 0, @@ -571,11 +645,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 400, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 400, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -587,14 +663,17 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 435, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 441, "elements": [ { + "commentStart": 442, "end": 0, "raw": "5.98", "start": 0, @@ -607,6 +686,7 @@ description: Result of parsing crazy_multi_profile.kcl }, { "argument": { + "commentStart": 449, "end": 0, "raw": "2.81", "start": 0, @@ -617,6 +697,7 @@ description: Result of parsing crazy_multi_profile.kcl "suffix": "None" } }, + "commentStart": 448, "end": 0, "operator": "-", "start": 0, @@ -632,11 +713,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 430, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 430, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -644,6 +727,7 @@ description: Result of parsing crazy_multi_profile.kcl "unlabeled": null } ], + "commentStart": 354, "end": 0, "start": 0, "type": "PipeExpression", @@ -659,9 +743,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 456, "declaration": { + "commentStart": 456, "end": 0, "id": { + "commentStart": 456, "end": 0, "name": "profile003", "start": 0, @@ -672,8 +759,10 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 484, "elements": [ { + "commentStart": 485, "end": 0, "raw": "3.19", "start": 0, @@ -685,6 +774,7 @@ description: Result of parsing crazy_multi_profile.kcl } }, { + "commentStart": 491, "end": 0, "raw": "13.3", "start": 0, @@ -702,6 +792,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "ArrayExpression" }, { + "commentStart": 498, "end": 0, "name": "sketch002", "start": 0, @@ -710,11 +801,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 469, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 469, "end": 0, "start": 0, "type": "CallExpression", @@ -723,8 +816,10 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 525, "elements": [ { + "commentStart": 526, "end": 0, "raw": "0", "start": 0, @@ -736,6 +831,7 @@ description: Result of parsing crazy_multi_profile.kcl } }, { + "commentStart": 529, "end": 0, "raw": "6.64", "start": 0, @@ -753,12 +849,14 @@ description: Result of parsing crazy_multi_profile.kcl "type": "ArrayExpression" }, { + "commentStart": 536, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 539, "end": 0, "start": 0, "type": "TagDeclarator", @@ -767,11 +865,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 514, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 514, "end": 0, "start": 0, "type": "CallExpression", @@ -780,12 +880,15 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 578, "elements": [ { + "commentStart": 587, "end": 0, "left": { "arguments": [ { + "commentStart": 594, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -794,11 +897,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 587, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 587, "end": 0, "start": 0, "type": "CallExpression", @@ -806,6 +911,7 @@ description: Result of parsing crazy_multi_profile.kcl }, "operator": "-", "right": { + "commentStart": 618, "end": 0, "raw": "90", "start": 0, @@ -821,6 +927,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "BinaryExpression" }, { + "commentStart": 629, "end": 0, "raw": "2.81", "start": 0, @@ -838,6 +945,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "ArrayExpression" }, { + "commentStart": 642, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -845,11 +953,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 567, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 567, "end": 0, "start": 0, "type": "CallExpression", @@ -858,10 +968,12 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 661, "elements": [ { "arguments": [ { + "commentStart": 677, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -870,11 +982,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 670, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 670, "end": 0, "start": 0, "type": "CallExpression", @@ -884,6 +998,7 @@ description: Result of parsing crazy_multi_profile.kcl "argument": { "arguments": [ { + "commentStart": 715, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -892,16 +1007,19 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 708, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 708, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 707, "end": 0, "operator": "-", "start": 0, @@ -915,6 +1033,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "ArrayExpression" }, { + "commentStart": 745, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -922,11 +1041,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 650, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 650, "end": 0, "start": 0, "type": "CallExpression", @@ -937,16 +1058,19 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 758, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 772, "elements": [ { "arguments": [ { + "commentStart": 787, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -954,11 +1078,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 773, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 773, "end": 0, "start": 0, "type": "CallExpression", @@ -967,6 +1093,7 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 805, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -974,11 +1101,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 791, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 791, "end": 0, "start": 0, "type": "CallExpression", @@ -993,11 +1122,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 753, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 753, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1007,17 +1138,20 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [], "callee": { + "commentStart": 815, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 815, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 469, "end": 0, "start": 0, "type": "PipeExpression", @@ -1033,9 +1167,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 823, "declaration": { + "commentStart": 823, "end": 0, "id": { + "commentStart": 823, "end": 0, "name": "profile004", "start": 0, @@ -1046,8 +1183,10 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 851, "elements": [ { + "commentStart": 852, "end": 0, "raw": "3.15", "start": 0, @@ -1059,6 +1198,7 @@ description: Result of parsing crazy_multi_profile.kcl } }, { + "commentStart": 858, "end": 0, "raw": "9.39", "start": 0, @@ -1076,6 +1216,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "ArrayExpression" }, { + "commentStart": 865, "end": 0, "name": "sketch002", "start": 0, @@ -1084,11 +1225,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 836, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 836, "end": 0, "start": 0, "type": "CallExpression", @@ -1099,12 +1242,14 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 887, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 896, "end": 0, "raw": "6.92", "start": 0, @@ -1118,11 +1263,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 881, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 881, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1134,15 +1281,18 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 912, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 918, "elements": [ { "argument": { + "commentStart": 920, "end": 0, "raw": "7.41", "start": 0, @@ -1153,6 +1303,7 @@ description: Result of parsing crazy_multi_profile.kcl "suffix": "None" } }, + "commentStart": 919, "end": 0, "operator": "-", "start": 0, @@ -1161,6 +1312,7 @@ description: Result of parsing crazy_multi_profile.kcl }, { "argument": { + "commentStart": 927, "end": 0, "raw": "2.85", "start": 0, @@ -1171,6 +1323,7 @@ description: Result of parsing crazy_multi_profile.kcl "suffix": "None" } }, + "commentStart": 926, "end": 0, "operator": "-", "start": 0, @@ -1186,11 +1339,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 907, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 907, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1202,16 +1357,19 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 944, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 958, "elements": [ { "arguments": [ { + "commentStart": 973, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1219,11 +1377,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 959, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 959, "end": 0, "start": 0, "type": "CallExpression", @@ -1232,6 +1392,7 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 991, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1239,11 +1400,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 977, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 977, "end": 0, "start": 0, "type": "CallExpression", @@ -1258,11 +1421,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 939, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 939, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1272,17 +1437,20 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [], "callee": { + "commentStart": 1001, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1001, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 836, "end": 0, "start": 0, "type": "PipeExpression", @@ -1298,9 +1466,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 1009, "declaration": { + "commentStart": 1009, "end": 0, "id": { + "commentStart": 1009, "end": 0, "name": "profile005", "start": 0, @@ -1311,14 +1482,17 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1040, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1049, "elements": [ { + "commentStart": 1050, "end": 0, "raw": "5.15", "start": 0, @@ -1330,6 +1504,7 @@ description: Result of parsing crazy_multi_profile.kcl } }, { + "commentStart": 1056, "end": 0, "raw": "4.34", "start": 0, @@ -1350,12 +1525,14 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1063, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1072, "end": 0, "raw": "1.66", "start": 0, @@ -1369,16 +1546,19 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1022, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1022, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1029, "end": 0, "name": "sketch002", "start": 0, @@ -1396,9 +1576,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 1078, "declaration": { + "commentStart": 1078, "end": 0, "id": { + "commentStart": 1078, "end": 0, "name": "profile006", "start": 0, @@ -1409,8 +1592,10 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 1106, "elements": [ { + "commentStart": 1107, "end": 0, "raw": "9.65", "start": 0, @@ -1422,6 +1607,7 @@ description: Result of parsing crazy_multi_profile.kcl } }, { + "commentStart": 1113, "end": 0, "raw": "3.82", "start": 0, @@ -1439,6 +1625,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "ArrayExpression" }, { + "commentStart": 1120, "end": 0, "name": "sketch002", "start": 0, @@ -1447,11 +1634,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1091, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1091, "end": 0, "start": 0, "type": "CallExpression", @@ -1462,14 +1651,17 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1141, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1147, "elements": [ { + "commentStart": 1148, "end": 0, "raw": "2.38", "start": 0, @@ -1481,6 +1673,7 @@ description: Result of parsing crazy_multi_profile.kcl } }, { + "commentStart": 1154, "end": 0, "raw": "5.62", "start": 0, @@ -1500,11 +1693,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1136, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1136, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1516,14 +1711,17 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1171, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1177, "elements": [ { + "commentStart": 1178, "end": 0, "raw": "2.13", "start": 0, @@ -1536,6 +1734,7 @@ description: Result of parsing crazy_multi_profile.kcl }, { "argument": { + "commentStart": 1185, "end": 0, "raw": "5.57", "start": 0, @@ -1546,6 +1745,7 @@ description: Result of parsing crazy_multi_profile.kcl "suffix": "None" } }, + "commentStart": 1184, "end": 0, "operator": "-", "start": 0, @@ -1561,11 +1761,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1166, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1166, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1577,16 +1779,19 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1202, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1216, "elements": [ { "arguments": [ { + "commentStart": 1231, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1594,11 +1799,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1217, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 1217, "end": 0, "start": 0, "type": "CallExpression", @@ -1607,6 +1814,7 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 1249, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1614,11 +1822,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1235, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 1235, "end": 0, "start": 0, "type": "CallExpression", @@ -1633,11 +1843,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1197, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1197, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1647,17 +1859,20 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [], "callee": { + "commentStart": 1259, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1259, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1091, "end": 0, "start": 0, "type": "PipeExpression", @@ -1673,9 +1888,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 1267, "declaration": { + "commentStart": 1267, "end": 0, "id": { + "commentStart": 1267, "end": 0, "name": "revolve001", "start": 0, @@ -1686,12 +1904,14 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1300, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1308, "end": 0, "raw": "45", "start": 0, @@ -1706,6 +1926,7 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1312, "end": 0, "name": "axis", "start": 0, @@ -1714,6 +1935,7 @@ description: Result of parsing crazy_multi_profile.kcl "arg": { "arguments": [ { + "commentStart": 1339, "end": 0, "name": "seg01", "start": 0, @@ -1722,11 +1944,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1319, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1319, "end": 0, "start": 0, "type": "CallExpression", @@ -1735,16 +1959,19 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1280, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 1280, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1288, "end": 0, "name": "profile004", "start": 0, @@ -1762,9 +1989,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 1347, "declaration": { + "commentStart": 1347, "end": 0, "id": { + "commentStart": 1347, "end": 0, "name": "extrude002", "start": 0, @@ -1775,12 +2005,14 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1380, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1389, "end": 0, "raw": "4", "start": 0, @@ -1794,16 +2026,19 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1360, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1360, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1368, "end": 0, "name": "profile006", "start": 0, @@ -1821,9 +2056,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 1392, "declaration": { + "commentStart": 1392, "end": 0, "id": { + "commentStart": 1392, "end": 0, "name": "sketch003", "start": 0, @@ -1832,6 +2070,7 @@ description: Result of parsing crazy_multi_profile.kcl "init": { "arguments": [ { + "commentStart": 1418, "end": 0, "raw": "'-XZ'", "start": 0, @@ -1841,11 +2080,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1404, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1404, "end": 0, "start": 0, "type": "CallExpression", @@ -1861,9 +2102,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 1425, "declaration": { + "commentStart": 1425, "end": 0, "id": { + "commentStart": 1425, "end": 0, "name": "profile007", "start": 0, @@ -1874,8 +2118,10 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 1453, "elements": [ { + "commentStart": 1454, "end": 0, "raw": "4.8", "start": 0, @@ -1887,6 +2133,7 @@ description: Result of parsing crazy_multi_profile.kcl } }, { + "commentStart": 1459, "end": 0, "raw": "7.55", "start": 0, @@ -1904,6 +2151,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "ArrayExpression" }, { + "commentStart": 1466, "end": 0, "name": "sketch003", "start": 0, @@ -1912,11 +2160,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1438, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1438, "end": 0, "start": 0, "type": "CallExpression", @@ -1927,14 +2177,17 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1487, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1493, "elements": [ { + "commentStart": 1494, "end": 0, "raw": "7.39", "start": 0, @@ -1946,6 +2199,7 @@ description: Result of parsing crazy_multi_profile.kcl } }, { + "commentStart": 1500, "end": 0, "raw": "2.58", "start": 0, @@ -1965,11 +2219,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1482, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1482, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1981,14 +2237,17 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1517, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1523, "elements": [ { + "commentStart": 1524, "end": 0, "raw": "7.02", "start": 0, @@ -2001,6 +2260,7 @@ description: Result of parsing crazy_multi_profile.kcl }, { "argument": { + "commentStart": 1531, "end": 0, "raw": "2.85", "start": 0, @@ -2011,6 +2271,7 @@ description: Result of parsing crazy_multi_profile.kcl "suffix": "None" } }, + "commentStart": 1530, "end": 0, "operator": "-", "start": 0, @@ -2026,11 +2287,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1512, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1512, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2038,6 +2301,7 @@ description: Result of parsing crazy_multi_profile.kcl "unlabeled": null } ], + "commentStart": 1438, "end": 0, "start": 0, "type": "PipeExpression", @@ -2053,9 +2317,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 1538, "declaration": { + "commentStart": 1538, "end": 0, "id": { + "commentStart": 1538, "end": 0, "name": "profile008", "start": 0, @@ -2066,8 +2333,10 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 1566, "elements": [ { + "commentStart": 1567, "end": 0, "raw": "5.54", "start": 0, @@ -2079,6 +2348,7 @@ description: Result of parsing crazy_multi_profile.kcl } }, { + "commentStart": 1573, "end": 0, "raw": "5.49", "start": 0, @@ -2096,6 +2366,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "ArrayExpression" }, { + "commentStart": 1580, "end": 0, "name": "sketch003", "start": 0, @@ -2104,11 +2375,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1551, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1551, "end": 0, "start": 0, "type": "CallExpression", @@ -2119,14 +2392,17 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1601, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1607, "elements": [ { + "commentStart": 1608, "end": 0, "raw": "6.34", "start": 0, @@ -2138,6 +2414,7 @@ description: Result of parsing crazy_multi_profile.kcl } }, { + "commentStart": 1614, "end": 0, "raw": "2.64", "start": 0, @@ -2157,11 +2434,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1596, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1596, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2173,14 +2452,17 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1631, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1637, "elements": [ { + "commentStart": 1638, "end": 0, "raw": "6.33", "start": 0, @@ -2193,6 +2475,7 @@ description: Result of parsing crazy_multi_profile.kcl }, { "argument": { + "commentStart": 1645, "end": 0, "raw": "2.96", "start": 0, @@ -2203,6 +2486,7 @@ description: Result of parsing crazy_multi_profile.kcl "suffix": "None" } }, + "commentStart": 1644, "end": 0, "operator": "-", "start": 0, @@ -2218,11 +2502,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1626, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1626, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2234,16 +2520,19 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1662, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1676, "elements": [ { "arguments": [ { + "commentStart": 1691, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2251,11 +2540,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1677, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 1677, "end": 0, "start": 0, "type": "CallExpression", @@ -2264,6 +2555,7 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 1709, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2271,11 +2563,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1695, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 1695, "end": 0, "start": 0, "type": "CallExpression", @@ -2290,11 +2584,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1657, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1657, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2304,17 +2600,20 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [], "callee": { + "commentStart": 1719, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1719, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1551, "end": 0, "start": 0, "type": "PipeExpression", @@ -2330,9 +2629,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 1727, "declaration": { + "commentStart": 1727, "end": 0, "id": { + "commentStart": 1727, "end": 0, "name": "profile009", "start": 0, @@ -2343,8 +2645,10 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 1755, "elements": [ { + "commentStart": 1756, "end": 0, "raw": "5.23", "start": 0, @@ -2356,6 +2660,7 @@ description: Result of parsing crazy_multi_profile.kcl } }, { + "commentStart": 1762, "end": 0, "raw": "1.95", "start": 0, @@ -2373,6 +2678,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "ArrayExpression" }, { + "commentStart": 1769, "end": 0, "name": "sketch003", "start": 0, @@ -2381,11 +2687,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1740, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1740, "end": 0, "start": 0, "type": "CallExpression", @@ -2396,14 +2704,17 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1790, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1796, "elements": [ { + "commentStart": 1797, "end": 0, "raw": "6.8", "start": 0, @@ -2415,6 +2726,7 @@ description: Result of parsing crazy_multi_profile.kcl } }, { + "commentStart": 1802, "end": 0, "raw": "2.17", "start": 0, @@ -2434,11 +2746,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1785, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1785, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2450,14 +2764,17 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1819, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1825, "elements": [ { + "commentStart": 1826, "end": 0, "raw": "7.34", "start": 0, @@ -2470,6 +2787,7 @@ description: Result of parsing crazy_multi_profile.kcl }, { "argument": { + "commentStart": 1833, "end": 0, "raw": "2.75", "start": 0, @@ -2480,6 +2798,7 @@ description: Result of parsing crazy_multi_profile.kcl "suffix": "None" } }, + "commentStart": 1832, "end": 0, "operator": "-", "start": 0, @@ -2495,11 +2814,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1814, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1814, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2511,16 +2832,19 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1850, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1864, "elements": [ { "arguments": [ { + "commentStart": 1879, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2528,11 +2852,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1865, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 1865, "end": 0, "start": 0, "type": "CallExpression", @@ -2541,6 +2867,7 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 1897, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2548,11 +2875,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1883, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 1883, "end": 0, "start": 0, "type": "CallExpression", @@ -2567,11 +2896,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1845, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1845, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2581,17 +2912,20 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [], "callee": { + "commentStart": 1907, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1907, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1740, "end": 0, "start": 0, "type": "PipeExpression", @@ -2607,9 +2941,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 1915, "declaration": { + "commentStart": 1915, "end": 0, "id": { + "commentStart": 1915, "end": 0, "name": "profile010", "start": 0, @@ -2620,14 +2957,17 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1946, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1955, "elements": [ { + "commentStart": 1956, "end": 0, "raw": "7.18", "start": 0, @@ -2640,6 +2980,7 @@ description: Result of parsing crazy_multi_profile.kcl }, { "argument": { + "commentStart": 1963, "end": 0, "raw": "2.11", "start": 0, @@ -2650,6 +2991,7 @@ description: Result of parsing crazy_multi_profile.kcl "suffix": "None" } }, + "commentStart": 1962, "end": 0, "operator": "-", "start": 0, @@ -2666,12 +3008,14 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 1970, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1979, "end": 0, "raw": "2.67", "start": 0, @@ -2685,16 +3029,19 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1928, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1928, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1935, "end": 0, "name": "sketch003", "start": 0, @@ -2712,9 +3059,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 1985, "declaration": { + "commentStart": 1985, "end": 0, "id": { + "commentStart": 1985, "end": 0, "name": "profile011", "start": 0, @@ -2725,8 +3075,10 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 2013, "elements": [ { + "commentStart": 2014, "end": 0, "raw": "5.07", "start": 0, @@ -2739,6 +3091,7 @@ description: Result of parsing crazy_multi_profile.kcl }, { "argument": { + "commentStart": 2021, "end": 0, "raw": "6.39", "start": 0, @@ -2749,6 +3102,7 @@ description: Result of parsing crazy_multi_profile.kcl "suffix": "None" } }, + "commentStart": 2020, "end": 0, "operator": "-", "start": 0, @@ -2762,6 +3116,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "ArrayExpression" }, { + "commentStart": 2028, "end": 0, "name": "sketch003", "start": 0, @@ -2770,11 +3125,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 1998, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1998, "end": 0, "start": 0, "type": "CallExpression", @@ -2783,8 +3140,10 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 2055, "elements": [ { + "commentStart": 2056, "end": 0, "raw": "0", "start": 0, @@ -2796,6 +3155,7 @@ description: Result of parsing crazy_multi_profile.kcl } }, { + "commentStart": 2059, "end": 0, "raw": "4.54", "start": 0, @@ -2813,12 +3173,14 @@ description: Result of parsing crazy_multi_profile.kcl "type": "ArrayExpression" }, { + "commentStart": 2066, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 2069, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2827,11 +3189,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 2044, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2044, "end": 0, "start": 0, "type": "CallExpression", @@ -2840,12 +3204,15 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 2108, "elements": [ { + "commentStart": 2117, "end": 0, "left": { "arguments": [ { + "commentStart": 2124, "end": 0, "name": "rectangleSegmentA002", "start": 0, @@ -2854,11 +3221,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 2117, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 2117, "end": 0, "start": 0, "type": "CallExpression", @@ -2866,6 +3235,7 @@ description: Result of parsing crazy_multi_profile.kcl }, "operator": "-", "right": { + "commentStart": 2148, "end": 0, "raw": "90", "start": 0, @@ -2881,6 +3251,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "BinaryExpression" }, { + "commentStart": 2159, "end": 0, "raw": "4.17", "start": 0, @@ -2898,6 +3269,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "ArrayExpression" }, { + "commentStart": 2172, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2905,11 +3277,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 2097, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2097, "end": 0, "start": 0, "type": "CallExpression", @@ -2918,10 +3292,12 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 2191, "elements": [ { "arguments": [ { + "commentStart": 2207, "end": 0, "name": "rectangleSegmentA002", "start": 0, @@ -2930,11 +3306,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 2200, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 2200, "end": 0, "start": 0, "type": "CallExpression", @@ -2944,6 +3322,7 @@ description: Result of parsing crazy_multi_profile.kcl "argument": { "arguments": [ { + "commentStart": 2245, "end": 0, "name": "rectangleSegmentA002", "start": 0, @@ -2952,16 +3331,19 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 2238, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 2238, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 2237, "end": 0, "operator": "-", "start": 0, @@ -2975,6 +3357,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "ArrayExpression" }, { + "commentStart": 2275, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2982,11 +3365,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 2180, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2180, "end": 0, "start": 0, "type": "CallExpression", @@ -2997,16 +3382,19 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 2288, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2302, "elements": [ { "arguments": [ { + "commentStart": 2317, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3014,11 +3402,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 2303, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 2303, "end": 0, "start": 0, "type": "CallExpression", @@ -3027,6 +3417,7 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [ { + "commentStart": 2335, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3034,11 +3425,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 2321, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 2321, "end": 0, "start": 0, "type": "CallExpression", @@ -3053,11 +3446,13 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 2283, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2283, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3067,17 +3462,20 @@ description: Result of parsing crazy_multi_profile.kcl { "arguments": [], "callee": { + "commentStart": 2345, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2345, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1998, "end": 0, "start": 0, "type": "PipeExpression", @@ -3093,9 +3491,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 2353, "declaration": { + "commentStart": 2353, "end": 0, "id": { + "commentStart": 2353, "end": 0, "name": "extrude003", "start": 0, @@ -3106,12 +3507,14 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 2386, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2395, "end": 0, "raw": "2.5", "start": 0, @@ -3125,16 +3528,19 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 2366, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2366, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2374, "end": 0, "name": "profile011", "start": 0, @@ -3152,9 +3558,12 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" }, { + "commentStart": 2400, "declaration": { + "commentStart": 2400, "end": 0, "id": { + "commentStart": 2400, "end": 0, "name": "revolve002", "start": 0, @@ -3165,12 +3574,14 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 2433, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2441, "end": 0, "raw": "45", "start": 0, @@ -3185,12 +3596,14 @@ description: Result of parsing crazy_multi_profile.kcl { "type": "LabeledArg", "label": { + "commentStart": 2445, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2452, "end": 0, "name": "seg02", "start": 0, @@ -3200,16 +3613,19 @@ description: Result of parsing crazy_multi_profile.kcl } ], "callee": { + "commentStart": 2413, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 2413, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2421, "end": 0, "name": "profile008", "start": 0, @@ -3227,6 +3643,7 @@ description: Result of parsing crazy_multi_profile.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/crazy_multi_profile/program_memory.snap b/rust/kcl-lib/tests/crazy_multi_profile/program_memory.snap index f93acb414..be57b04f1 100644 --- a/rust/kcl-lib/tests/crazy_multi_profile/program_memory.snap +++ b/rust/kcl-lib/tests/crazy_multi_profile/program_memory.snap @@ -15,6 +15,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -27,6 +28,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -56,6 +58,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl -3.66 ], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -80,6 +83,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl 5.36 ], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -344,6 +348,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -356,6 +361,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -385,6 +391,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl -3.66 ], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -409,6 +416,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl 5.36 ], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -580,6 +588,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2069, "end": 2090, "start": 2069, "type": "TagDeclarator", @@ -623,6 +632,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl -6.39 ], "tag": { + "commentStart": 2069, "end": 2090, "start": 2069, "type": "TagDeclarator", @@ -797,6 +807,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl -3.66 ], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -821,6 +832,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl 5.36 ], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -1013,6 +1025,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -1025,6 +1038,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -1054,6 +1068,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl -3.66 ], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -1078,6 +1093,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl 5.36 ], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -1246,6 +1262,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl 13.3 ], "tag": { + "commentStart": 539, "end": 560, "start": 539, "type": "TagDeclarator", @@ -1367,6 +1384,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -1379,6 +1397,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -1408,6 +1427,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl -3.66 ], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -1432,6 +1452,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl 5.36 ], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -1703,6 +1724,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -1715,6 +1737,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -1744,6 +1767,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl -3.66 ], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -1768,6 +1792,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl 5.36 ], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -1982,6 +2007,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -1994,6 +2020,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -2023,6 +2050,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl -3.66 ], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -2047,6 +2075,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl 5.36 ], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -2312,6 +2341,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -2324,6 +2354,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -2353,6 +2384,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl -3.66 ], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -2377,6 +2409,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl 5.36 ], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -3004,6 +3037,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl -6.39 ], "tag": { + "commentStart": 2069, "end": 2090, "start": 2069, "type": "TagDeclarator", @@ -3283,6 +3317,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -3295,6 +3330,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -3324,6 +3360,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl -3.66 ], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -3348,6 +3385,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl 5.36 ], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -3750,6 +3788,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -3762,6 +3801,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", @@ -3791,6 +3831,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl -3.66 ], "tag": { + "commentStart": 122, "end": 128, "start": 122, "type": "TagDeclarator", @@ -3815,6 +3856,7 @@ description: Variables in memory after executing crazy_multi_profile.kcl 5.36 ], "tag": { + "commentStart": 167, "end": 173, "start": 167, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/cube/ast.snap b/rust/kcl-lib/tests/cube/ast.snap index 419399a17..8912fd0fa 100644 --- a/rust/kcl-lib/tests/cube/ast.snap +++ b/rust/kcl-lib/tests/cube/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing cube.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "cube", "start": 0, @@ -18,17 +21,22 @@ description: Result of parsing cube.kcl "body": { "body": [ { + "commentStart": 32, "declaration": { + "commentStart": 32, "end": 0, "id": { + "commentStart": 32, "end": 0, "name": "l", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 36, "end": 0, "left": { + "commentStart": 36, "end": 0, "name": "sideLength", "start": 0, @@ -37,6 +45,7 @@ description: Result of parsing cube.kcl }, "operator": "/", "right": { + "commentStart": 49, "end": 0, "raw": "2", "start": 0, @@ -61,18 +70,23 @@ description: Result of parsing cube.kcl "type": "VariableDeclaration" }, { + "commentStart": 53, "declaration": { + "commentStart": 53, "end": 0, "id": { + "commentStart": 53, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 57, "computed": false, "end": 0, "object": { + "commentStart": 57, "end": 0, "name": "center", "start": 0, @@ -80,6 +94,7 @@ description: Result of parsing cube.kcl "type": "Identifier" }, "property": { + "commentStart": 64, "end": 0, "raw": "0", "start": 0, @@ -104,18 +119,23 @@ description: Result of parsing cube.kcl "type": "VariableDeclaration" }, { + "commentStart": 69, "declaration": { + "commentStart": 69, "end": 0, "id": { + "commentStart": 69, "end": 0, "name": "y", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 73, "computed": false, "end": 0, "object": { + "commentStart": 73, "end": 0, "name": "center", "start": 0, @@ -123,6 +143,7 @@ description: Result of parsing cube.kcl "type": "Identifier" }, "property": { + "commentStart": 80, "end": 0, "raw": "1", "start": 0, @@ -147,26 +168,33 @@ description: Result of parsing cube.kcl "type": "VariableDeclaration" }, { + "commentStart": 85, "declaration": { + "commentStart": 85, "end": 0, "id": { + "commentStart": 85, "end": 0, "name": "p0", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 90, "elements": [ { + "commentStart": 91, "end": 0, "left": { "argument": { + "commentStart": 92, "end": 0, "name": "l", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 91, "end": 0, "operator": "-", "start": 0, @@ -175,6 +203,7 @@ description: Result of parsing cube.kcl }, "operator": "+", "right": { + "commentStart": 96, "end": 0, "name": "x", "start": 0, @@ -186,15 +215,18 @@ description: Result of parsing cube.kcl "type": "BinaryExpression" }, { + "commentStart": 99, "end": 0, "left": { "argument": { + "commentStart": 100, "end": 0, "name": "l", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 99, "end": 0, "operator": "-", "start": 0, @@ -203,6 +235,7 @@ description: Result of parsing cube.kcl }, "operator": "+", "right": { + "commentStart": 104, "end": 0, "name": "y", "start": 0, @@ -229,26 +262,33 @@ description: Result of parsing cube.kcl "type": "VariableDeclaration" }, { + "commentStart": 109, "declaration": { + "commentStart": 109, "end": 0, "id": { + "commentStart": 109, "end": 0, "name": "p1", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 114, "elements": [ { + "commentStart": 115, "end": 0, "left": { "argument": { + "commentStart": 116, "end": 0, "name": "l", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 115, "end": 0, "operator": "-", "start": 0, @@ -257,6 +297,7 @@ description: Result of parsing cube.kcl }, "operator": "+", "right": { + "commentStart": 120, "end": 0, "name": "x", "start": 0, @@ -268,8 +309,10 @@ description: Result of parsing cube.kcl "type": "BinaryExpression" }, { + "commentStart": 123, "end": 0, "left": { + "commentStart": 123, "end": 0, "name": "l", "start": 0, @@ -278,6 +321,7 @@ description: Result of parsing cube.kcl }, "operator": "+", "right": { + "commentStart": 127, "end": 0, "name": "y", "start": 0, @@ -304,19 +348,25 @@ description: Result of parsing cube.kcl "type": "VariableDeclaration" }, { + "commentStart": 132, "declaration": { + "commentStart": 132, "end": 0, "id": { + "commentStart": 132, "end": 0, "name": "p2", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 137, "elements": [ { + "commentStart": 138, "end": 0, "left": { + "commentStart": 138, "end": 0, "name": "l", "start": 0, @@ -325,6 +375,7 @@ description: Result of parsing cube.kcl }, "operator": "+", "right": { + "commentStart": 142, "end": 0, "name": "x", "start": 0, @@ -336,8 +387,10 @@ description: Result of parsing cube.kcl "type": "BinaryExpression" }, { + "commentStart": 145, "end": 0, "left": { + "commentStart": 145, "end": 0, "name": "l", "start": 0, @@ -346,6 +399,7 @@ description: Result of parsing cube.kcl }, "operator": "+", "right": { + "commentStart": 149, "end": 0, "name": "y", "start": 0, @@ -372,19 +426,25 @@ description: Result of parsing cube.kcl "type": "VariableDeclaration" }, { + "commentStart": 154, "declaration": { + "commentStart": 154, "end": 0, "id": { + "commentStart": 154, "end": 0, "name": "p3", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 159, "elements": [ { + "commentStart": 160, "end": 0, "left": { + "commentStart": 160, "end": 0, "name": "l", "start": 0, @@ -393,6 +453,7 @@ description: Result of parsing cube.kcl }, "operator": "+", "right": { + "commentStart": 164, "end": 0, "name": "x", "start": 0, @@ -404,15 +465,18 @@ description: Result of parsing cube.kcl "type": "BinaryExpression" }, { + "commentStart": 167, "end": 0, "left": { "argument": { + "commentStart": 168, "end": 0, "name": "l", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 167, "end": 0, "operator": "-", "start": 0, @@ -421,6 +485,7 @@ description: Result of parsing cube.kcl }, "operator": "+", "right": { + "commentStart": 172, "end": 0, "name": "y", "start": 0, @@ -452,6 +517,7 @@ description: Result of parsing cube.kcl { "arguments": [ { + "commentStart": 199, "end": 0, "name": "XY", "start": 0, @@ -460,11 +526,13 @@ description: Result of parsing cube.kcl } ], "callee": { + "commentStart": 185, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 185, "end": 0, "start": 0, "type": "CallExpression", @@ -473,6 +541,7 @@ description: Result of parsing cube.kcl { "arguments": [ { + "commentStart": 225, "end": 0, "name": "p0", "start": 0, @@ -480,6 +549,7 @@ description: Result of parsing cube.kcl "type": "Identifier" }, { + "commentStart": 229, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -487,11 +557,13 @@ description: Result of parsing cube.kcl } ], "callee": { + "commentStart": 210, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 210, "end": 0, "start": 0, "type": "CallExpression", @@ -502,12 +574,14 @@ description: Result of parsing cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 244, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 258, "end": 0, "name": "p1", "start": 0, @@ -517,11 +591,13 @@ description: Result of parsing cube.kcl } ], "callee": { + "commentStart": 239, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 239, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -533,12 +609,14 @@ description: Result of parsing cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 274, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 288, "end": 0, "name": "p2", "start": 0, @@ -548,11 +626,13 @@ description: Result of parsing cube.kcl } ], "callee": { + "commentStart": 269, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 269, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -564,12 +644,14 @@ description: Result of parsing cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 304, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 318, "end": 0, "name": "p3", "start": 0, @@ -579,11 +661,13 @@ description: Result of parsing cube.kcl } ], "callee": { + "commentStart": 299, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 299, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -595,12 +679,14 @@ description: Result of parsing cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 334, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 348, "end": 0, "name": "p0", "start": 0, @@ -610,11 +696,13 @@ description: Result of parsing cube.kcl } ], "callee": { + "commentStart": 329, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 329, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -624,11 +712,13 @@ description: Result of parsing cube.kcl { "arguments": [], "callee": { + "commentStart": 359, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 359, "end": 0, "start": 0, "type": "CallExpression", @@ -639,12 +729,14 @@ description: Result of parsing cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 382, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 391, "end": 0, "name": "sideLength", "start": 0, @@ -654,11 +746,13 @@ description: Result of parsing cube.kcl } ], "callee": { + "commentStart": 374, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 374, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -666,22 +760,26 @@ description: Result of parsing cube.kcl "unlabeled": null } ], + "commentStart": 185, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, + "commentStart": 174, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 28, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "6": [ { + "commentStart": 174, "end": 0, "start": 0, "type": "NonCodeNode", @@ -695,11 +793,13 @@ description: Result of parsing cube.kcl }, "start": 0 }, + "commentStart": 7, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 8, "end": 0, "name": "sideLength", "start": 0, @@ -709,6 +809,7 @@ description: Result of parsing cube.kcl { "type": "Parameter", "identifier": { + "commentStart": 20, "end": 0, "name": "center", "start": 0, @@ -730,9 +831,12 @@ description: Result of parsing cube.kcl "type": "VariableDeclaration" }, { + "commentStart": 404, "declaration": { + "commentStart": 406, "end": 0, "id": { + "commentStart": 406, "end": 0, "name": "myCube", "start": 0, @@ -743,12 +847,14 @@ description: Result of parsing cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 420, "end": 0, "name": "sideLength", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 433, "end": 0, "raw": "40", "start": 0, @@ -763,14 +869,17 @@ description: Result of parsing cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 437, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 446, "elements": [ { + "commentStart": 447, "end": 0, "raw": "0", "start": 0, @@ -782,6 +891,7 @@ description: Result of parsing cube.kcl } }, { + "commentStart": 450, "end": 0, "raw": "0", "start": 0, @@ -801,11 +911,13 @@ description: Result of parsing cube.kcl } ], "callee": { + "commentStart": 415, "end": 0, "name": "cube", "start": 0, "type": "Identifier" }, + "commentStart": 415, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -822,11 +934,13 @@ description: Result of parsing cube.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 404, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/cube_with_error/ast.snap b/rust/kcl-lib/tests/cube_with_error/ast.snap index 4ba791888..e0ab7995d 100644 --- a/rust/kcl-lib/tests/cube_with_error/ast.snap +++ b/rust/kcl-lib/tests/cube_with_error/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing cube_with_error.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "cube", "start": 0, @@ -18,17 +21,22 @@ description: Result of parsing cube_with_error.kcl "body": { "body": [ { + "commentStart": 28, "declaration": { + "commentStart": 28, "end": 0, "id": { + "commentStart": 28, "end": 0, "name": "l", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "name": "length", "start": 0, @@ -37,6 +45,7 @@ description: Result of parsing cube_with_error.kcl }, "operator": "/", "right": { + "commentStart": 41, "end": 0, "raw": "2", "start": 0, @@ -61,18 +70,23 @@ description: Result of parsing cube_with_error.kcl "type": "VariableDeclaration" }, { + "commentStart": 45, "declaration": { + "commentStart": 45, "end": 0, "id": { + "commentStart": 45, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 49, "computed": false, "end": 0, "object": { + "commentStart": 49, "end": 0, "name": "center", "start": 0, @@ -80,6 +94,7 @@ description: Result of parsing cube_with_error.kcl "type": "Identifier" }, "property": { + "commentStart": 56, "end": 0, "raw": "0", "start": 0, @@ -104,18 +119,23 @@ description: Result of parsing cube_with_error.kcl "type": "VariableDeclaration" }, { + "commentStart": 61, "declaration": { + "commentStart": 61, "end": 0, "id": { + "commentStart": 61, "end": 0, "name": "y", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 65, "computed": false, "end": 0, "object": { + "commentStart": 65, "end": 0, "name": "center", "start": 0, @@ -123,6 +143,7 @@ description: Result of parsing cube_with_error.kcl "type": "Identifier" }, "property": { + "commentStart": 72, "end": 0, "raw": "1", "start": 0, @@ -147,26 +168,33 @@ description: Result of parsing cube_with_error.kcl "type": "VariableDeclaration" }, { + "commentStart": 77, "declaration": { + "commentStart": 77, "end": 0, "id": { + "commentStart": 77, "end": 0, "name": "p0", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 82, "elements": [ { + "commentStart": 83, "end": 0, "left": { "argument": { + "commentStart": 84, "end": 0, "name": "l", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 83, "end": 0, "operator": "-", "start": 0, @@ -175,6 +203,7 @@ description: Result of parsing cube_with_error.kcl }, "operator": "+", "right": { + "commentStart": 88, "end": 0, "name": "x", "start": 0, @@ -186,15 +215,18 @@ description: Result of parsing cube_with_error.kcl "type": "BinaryExpression" }, { + "commentStart": 91, "end": 0, "left": { "argument": { + "commentStart": 92, "end": 0, "name": "l", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 91, "end": 0, "operator": "-", "start": 0, @@ -203,6 +235,7 @@ description: Result of parsing cube_with_error.kcl }, "operator": "+", "right": { + "commentStart": 96, "end": 0, "name": "y", "start": 0, @@ -229,26 +262,33 @@ description: Result of parsing cube_with_error.kcl "type": "VariableDeclaration" }, { + "commentStart": 101, "declaration": { + "commentStart": 101, "end": 0, "id": { + "commentStart": 101, "end": 0, "name": "p1", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 106, "elements": [ { + "commentStart": 107, "end": 0, "left": { "argument": { + "commentStart": 108, "end": 0, "name": "l", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 107, "end": 0, "operator": "-", "start": 0, @@ -257,6 +297,7 @@ description: Result of parsing cube_with_error.kcl }, "operator": "+", "right": { + "commentStart": 112, "end": 0, "name": "x", "start": 0, @@ -268,8 +309,10 @@ description: Result of parsing cube_with_error.kcl "type": "BinaryExpression" }, { + "commentStart": 115, "end": 0, "left": { + "commentStart": 115, "end": 0, "name": "l", "start": 0, @@ -278,6 +321,7 @@ description: Result of parsing cube_with_error.kcl }, "operator": "+", "right": { + "commentStart": 119, "end": 0, "name": "y", "start": 0, @@ -304,19 +348,25 @@ description: Result of parsing cube_with_error.kcl "type": "VariableDeclaration" }, { + "commentStart": 124, "declaration": { + "commentStart": 124, "end": 0, "id": { + "commentStart": 124, "end": 0, "name": "p2", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 129, "elements": [ { + "commentStart": 130, "end": 0, "left": { + "commentStart": 130, "end": 0, "name": "l", "start": 0, @@ -325,6 +375,7 @@ description: Result of parsing cube_with_error.kcl }, "operator": "+", "right": { + "commentStart": 134, "end": 0, "name": "x", "start": 0, @@ -336,8 +387,10 @@ description: Result of parsing cube_with_error.kcl "type": "BinaryExpression" }, { + "commentStart": 137, "end": 0, "left": { + "commentStart": 137, "end": 0, "name": "l", "start": 0, @@ -346,6 +399,7 @@ description: Result of parsing cube_with_error.kcl }, "operator": "+", "right": { + "commentStart": 141, "end": 0, "name": "y", "start": 0, @@ -372,19 +426,25 @@ description: Result of parsing cube_with_error.kcl "type": "VariableDeclaration" }, { + "commentStart": 146, "declaration": { + "commentStart": 146, "end": 0, "id": { + "commentStart": 146, "end": 0, "name": "p3", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 151, "elements": [ { + "commentStart": 152, "end": 0, "left": { + "commentStart": 152, "end": 0, "name": "l", "start": 0, @@ -393,6 +453,7 @@ description: Result of parsing cube_with_error.kcl }, "operator": "+", "right": { + "commentStart": 156, "end": 0, "name": "x", "start": 0, @@ -404,15 +465,18 @@ description: Result of parsing cube_with_error.kcl "type": "BinaryExpression" }, { + "commentStart": 159, "end": 0, "left": { "argument": { + "commentStart": 160, "end": 0, "name": "l", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 159, "end": 0, "operator": "-", "start": 0, @@ -421,6 +485,7 @@ description: Result of parsing cube_with_error.kcl }, "operator": "+", "right": { + "commentStart": 164, "end": 0, "name": "y", "start": 0, @@ -452,6 +517,7 @@ description: Result of parsing cube_with_error.kcl { "arguments": [ { + "commentStart": 191, "end": 0, "name": "XY", "start": 0, @@ -460,11 +526,13 @@ description: Result of parsing cube_with_error.kcl } ], "callee": { + "commentStart": 177, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 177, "end": 0, "start": 0, "type": "CallExpression", @@ -473,6 +541,7 @@ description: Result of parsing cube_with_error.kcl { "arguments": [ { + "commentStart": 217, "end": 0, "name": "p0", "start": 0, @@ -480,6 +549,7 @@ description: Result of parsing cube_with_error.kcl "type": "Identifier" }, { + "commentStart": 221, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -487,11 +557,13 @@ description: Result of parsing cube_with_error.kcl } ], "callee": { + "commentStart": 202, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 202, "end": 0, "start": 0, "type": "CallExpression", @@ -502,12 +574,14 @@ description: Result of parsing cube_with_error.kcl { "type": "LabeledArg", "label": { + "commentStart": 236, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 250, "end": 0, "name": "p1", "start": 0, @@ -517,11 +591,13 @@ description: Result of parsing cube_with_error.kcl } ], "callee": { + "commentStart": 231, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 231, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -533,12 +609,14 @@ description: Result of parsing cube_with_error.kcl { "type": "LabeledArg", "label": { + "commentStart": 266, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 280, "end": 0, "name": "p2", "start": 0, @@ -548,11 +626,13 @@ description: Result of parsing cube_with_error.kcl } ], "callee": { + "commentStart": 261, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 261, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -564,12 +644,14 @@ description: Result of parsing cube_with_error.kcl { "type": "LabeledArg", "label": { + "commentStart": 296, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 310, "end": 0, "name": "p3", "start": 0, @@ -579,11 +661,13 @@ description: Result of parsing cube_with_error.kcl } ], "callee": { + "commentStart": 291, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 291, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -595,12 +679,14 @@ description: Result of parsing cube_with_error.kcl { "type": "LabeledArg", "label": { + "commentStart": 326, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 340, "end": 0, "name": "p0", "start": 0, @@ -610,11 +696,13 @@ description: Result of parsing cube_with_error.kcl } ], "callee": { + "commentStart": 321, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 321, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -624,11 +712,13 @@ description: Result of parsing cube_with_error.kcl { "arguments": [], "callee": { + "commentStart": 351, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 351, "end": 0, "start": 0, "type": "CallExpression", @@ -639,12 +729,14 @@ description: Result of parsing cube_with_error.kcl { "type": "LabeledArg", "label": { + "commentStart": 374, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 383, "end": 0, "name": "length", "start": 0, @@ -654,11 +746,13 @@ description: Result of parsing cube_with_error.kcl } ], "callee": { + "commentStart": 366, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 366, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -666,22 +760,26 @@ description: Result of parsing cube_with_error.kcl "unlabeled": null } ], + "commentStart": 177, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, + "commentStart": 166, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 24, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "6": [ { + "commentStart": 166, "end": 0, "start": 0, "type": "NonCodeNode", @@ -695,11 +793,13 @@ description: Result of parsing cube_with_error.kcl }, "start": 0 }, + "commentStart": 7, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 8, "end": 0, "name": "length", "start": 0, @@ -709,6 +809,7 @@ description: Result of parsing cube_with_error.kcl { "type": "Parameter", "identifier": { + "commentStart": 16, "end": 0, "name": "center", "start": 0, @@ -730,9 +831,12 @@ description: Result of parsing cube_with_error.kcl "type": "VariableDeclaration" }, { + "commentStart": 392, "declaration": { + "commentStart": 394, "end": 0, "id": { + "commentStart": 394, "end": 0, "name": "myCube", "start": 0, @@ -741,6 +845,7 @@ description: Result of parsing cube_with_error.kcl "init": { "arguments": [ { + "commentStart": 408, "end": 0, "raw": "40", "start": 0, @@ -752,8 +857,10 @@ description: Result of parsing cube_with_error.kcl } }, { + "commentStart": 412, "elements": [ { + "commentStart": 413, "end": 0, "raw": "0", "start": 0, @@ -765,6 +872,7 @@ description: Result of parsing cube_with_error.kcl } }, { + "commentStart": 416, "end": 0, "raw": "0", "start": 0, @@ -783,11 +891,13 @@ description: Result of parsing cube_with_error.kcl } ], "callee": { + "commentStart": 403, "end": 0, "name": "cube", "start": 0, "type": "Identifier" }, + "commentStart": 403, "end": 0, "start": 0, "type": "CallExpression", @@ -803,24 +913,33 @@ description: Result of parsing cube_with_error.kcl "type": "VariableDeclaration" }, { + "commentStart": 419, "end": 0, "expression": { + "commentStart": 465, "end": 0, "name": "foo", "start": 0, "type": "Identifier", "type": "Identifier" }, + "preComments": [ + "", + "", + "// Error, after creating meaningful output." + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 392, "end": 0, "start": 0, "type": "NonCodeNode", @@ -828,18 +947,6 @@ description: Result of parsing cube_with_error.kcl "type": "newLine" } } - ], - "1": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Error, after creating meaningful output.", - "style": "line" - } - } ] }, "startNodes": [] diff --git a/rust/kcl-lib/tests/double_map_fn/ast.snap b/rust/kcl-lib/tests/double_map_fn/ast.snap index 906573bd3..05839f5db 100644 --- a/rust/kcl-lib/tests/double_map_fn/ast.snap +++ b/rust/kcl-lib/tests/double_map_fn/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing double_map_fn.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "increment", "start": 0, @@ -19,8 +22,10 @@ description: Result of parsing double_map_fn.kcl "body": [ { "argument": { + "commentStart": 27, "end": 0, "left": { + "commentStart": 27, "end": 0, "name": "i", "start": 0, @@ -29,6 +34,7 @@ description: Result of parsing double_map_fn.kcl }, "operator": "+", "right": { + "commentStart": 31, "end": 0, "raw": "1", "start": 0, @@ -43,20 +49,24 @@ description: Result of parsing double_map_fn.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 20, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 16, "end": 0, "start": 0 }, + "commentStart": 12, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 13, "end": 0, "name": "i", "start": 0, @@ -78,17 +88,22 @@ description: Result of parsing double_map_fn.kcl "type": "VariableDeclaration" }, { + "commentStart": 34, "declaration": { + "commentStart": 36, "end": 0, "id": { + "commentStart": 36, "end": 0, "name": "xs", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 41, "end": 0, "endElement": { + "commentStart": 45, "end": 0, "raw": "2", "start": 0, @@ -102,6 +117,7 @@ description: Result of parsing double_map_fn.kcl "endInclusive": true, "start": 0, "startElement": { + "commentStart": 42, "end": 0, "raw": "0", "start": 0, @@ -125,9 +141,12 @@ description: Result of parsing double_map_fn.kcl "type": "VariableDeclaration" }, { + "commentStart": 48, "declaration": { + "commentStart": 48, "end": 0, "id": { + "commentStart": 48, "end": 0, "name": "ys", "start": 0, @@ -136,6 +155,7 @@ description: Result of parsing double_map_fn.kcl "init": { "body": [ { + "commentStart": 53, "end": 0, "name": "xs", "start": 0, @@ -145,12 +165,14 @@ description: Result of parsing double_map_fn.kcl { "arguments": [ { + "commentStart": 65, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 68, "end": 0, "name": "increment", "start": 0, @@ -159,11 +181,13 @@ description: Result of parsing double_map_fn.kcl } ], "callee": { + "commentStart": 61, "end": 0, "name": "map", "start": 0, "type": "Identifier" }, + "commentStart": 61, "end": 0, "start": 0, "type": "CallExpression", @@ -172,12 +196,14 @@ description: Result of parsing double_map_fn.kcl { "arguments": [ { + "commentStart": 88, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 91, "end": 0, "name": "increment", "start": 0, @@ -186,17 +212,20 @@ description: Result of parsing double_map_fn.kcl } ], "callee": { + "commentStart": 84, "end": 0, "name": "map", "start": 0, "type": "Identifier" }, + "commentStart": 84, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 53, "end": 0, "start": 0, "type": "PipeExpression", @@ -212,11 +241,13 @@ description: Result of parsing double_map_fn.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 34, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/fillet-and-shell/ast.snap b/rust/kcl-lib/tests/fillet-and-shell/ast.snap index 74d6fe262..840c14be0 100644 --- a/rust/kcl-lib/tests/fillet-and-shell/ast.snap +++ b/rust/kcl-lib/tests/fillet-and-shell/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing fillet-and-shell.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "rpizWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 12, "end": 0, "raw": "30", "start": 0, @@ -35,15 +39,19 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 15, "declaration": { + "commentStart": 15, "end": 0, "id": { + "commentStart": 15, "end": 0, "name": "rpizLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 28, "end": 0, "raw": "65", "start": 0, @@ -64,15 +72,19 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 30, "declaration": { + "commentStart": 32, "end": 0, "id": { + "commentStart": 32, "end": 0, "name": "caseThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 48, "end": 0, "raw": "1", "start": 0, @@ -93,15 +105,19 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 49, "declaration": { + "commentStart": 51, "end": 0, "id": { + "commentStart": 51, "end": 0, "name": "border", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 60, "end": 0, "raw": "4", "start": 0, @@ -122,15 +138,19 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 61, "declaration": { + "commentStart": 63, "end": 0, "id": { + "commentStart": 63, "end": 0, "name": "screwHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 77, "end": 0, "raw": "4", "start": 0, @@ -151,17 +171,22 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 78, "declaration": { + "commentStart": 80, "end": 0, "id": { + "commentStart": 80, "end": 0, "name": "caseWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 92, "end": 0, "left": { + "commentStart": 92, "end": 0, "name": "rpizWidth", "start": 0, @@ -170,8 +195,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 104, "end": 0, "left": { + "commentStart": 104, "end": 0, "name": "border", "start": 0, @@ -180,6 +207,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "*", "right": { + "commentStart": 113, "end": 0, "raw": "2", "start": 0, @@ -208,17 +236,22 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 115, "declaration": { + "commentStart": 115, "end": 0, "id": { + "commentStart": 115, "end": 0, "name": "caseLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 128, "end": 0, "left": { + "commentStart": 128, "end": 0, "name": "rpizLength", "start": 0, @@ -227,8 +260,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 141, "end": 0, "left": { + "commentStart": 141, "end": 0, "name": "border", "start": 0, @@ -237,6 +272,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "*", "right": { + "commentStart": 150, "end": 0, "raw": "2", "start": 0, @@ -265,15 +301,19 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 152, "declaration": { + "commentStart": 152, "end": 0, "id": { + "commentStart": 152, "end": 0, "name": "caseHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 165, "end": 0, "raw": "8", "start": 0, @@ -294,15 +334,19 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 166, "declaration": { + "commentStart": 168, "end": 0, "id": { + "commentStart": 168, "end": 0, "name": "widthBetweenScrews", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 189, "end": 0, "raw": "23", "start": 0, @@ -323,17 +367,22 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 192, "declaration": { + "commentStart": 192, "end": 0, "id": { + "commentStart": 192, "end": 0, "name": "lengthBetweenScrews", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 214, "end": 0, "left": { + "commentStart": 214, "end": 0, "raw": "29", "start": 0, @@ -346,6 +395,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "*", "right": { + "commentStart": 219, "end": 0, "raw": "2", "start": 0, @@ -370,15 +420,19 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 220, "declaration": { + "commentStart": 222, "end": 0, "id": { + "commentStart": 222, "end": 0, "name": "miniHdmiDistance", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 241, "end": 0, "raw": "12.4", "start": 0, @@ -399,15 +453,19 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 246, "declaration": { + "commentStart": 246, "end": 0, "id": { + "commentStart": 246, "end": 0, "name": "microUsb1Distance", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 266, "end": 0, "raw": "41.4", "start": 0, @@ -428,15 +486,19 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 271, "declaration": { + "commentStart": 271, "end": 0, "id": { + "commentStart": 271, "end": 0, "name": "microUsb2Distance", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 291, "end": 0, "raw": "54", "start": 0, @@ -457,15 +519,19 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 293, "declaration": { + "commentStart": 295, "end": 0, "id": { + "commentStart": 295, "end": 0, "name": "miniHdmiWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 311, "end": 0, "raw": "11.2", "start": 0, @@ -486,15 +552,19 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 316, "declaration": { + "commentStart": 316, "end": 0, "id": { + "commentStart": 316, "end": 0, "name": "microUsbWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 332, "end": 0, "raw": "7.4", "start": 0, @@ -515,15 +585,19 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 336, "declaration": { + "commentStart": 336, "end": 0, "id": { + "commentStart": 336, "end": 0, "name": "connectorPadding", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 355, "end": 0, "raw": "4", "start": 0, @@ -544,9 +618,12 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 356, "declaration": { + "commentStart": 358, "end": 0, "id": { + "commentStart": 358, "end": 0, "name": "miniHdmiHole", "start": 0, @@ -557,6 +634,7 @@ description: Result of parsing fillet-and-shell.kcl { "arguments": [ { + "commentStart": 387, "end": 0, "name": "XY", "start": 0, @@ -565,11 +643,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 373, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 373, "end": 0, "start": 0, "type": "CallExpression", @@ -578,8 +658,10 @@ description: Result of parsing fillet-and-shell.kcl { "arguments": [ { + "commentStart": 411, "elements": [ { + "commentStart": 420, "end": 0, "raw": "0", "start": 0, @@ -591,10 +673,13 @@ description: Result of parsing fillet-and-shell.kcl } }, { + "commentStart": 430, "end": 0, "left": { + "commentStart": 430, "end": 0, "left": { + "commentStart": 430, "end": 0, "name": "border", "start": 0, @@ -603,6 +688,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 439, "end": 0, "name": "miniHdmiDistance", "start": 0, @@ -615,8 +701,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "-", "right": { + "commentStart": 459, "end": 0, "left": { + "commentStart": 459, "end": 0, "name": "miniHdmiWidth", "start": 0, @@ -625,6 +713,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 475, "end": 0, "raw": "2", "start": 0, @@ -650,6 +739,7 @@ description: Result of parsing fillet-and-shell.kcl "type": "ArrayExpression" }, { + "commentStart": 486, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -657,11 +747,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 396, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 396, "end": 0, "start": 0, "type": "CallExpression", @@ -672,14 +764,17 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 499, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 513, "elements": [ { + "commentStart": 522, "end": 0, "raw": "0", "start": 0, @@ -691,10 +786,13 @@ description: Result of parsing fillet-and-shell.kcl } }, { + "commentStart": 532, "end": 0, "left": { + "commentStart": 532, "end": 0, "left": { + "commentStart": 532, "end": 0, "name": "border", "start": 0, @@ -703,6 +801,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 541, "end": 0, "name": "miniHdmiDistance", "start": 0, @@ -715,8 +814,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 560, "end": 0, "left": { + "commentStart": 560, "end": 0, "name": "miniHdmiWidth", "start": 0, @@ -725,6 +826,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 576, "end": 0, "raw": "2", "start": 0, @@ -752,11 +854,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 494, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 494, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -768,14 +872,17 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 596, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 610, "elements": [ { + "commentStart": 619, "end": 0, "raw": "1", "start": 0, @@ -787,10 +894,13 @@ description: Result of parsing fillet-and-shell.kcl } }, { + "commentStart": 629, "end": 0, "left": { + "commentStart": 629, "end": 0, "left": { + "commentStart": 629, "end": 0, "name": "border", "start": 0, @@ -799,6 +909,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 638, "end": 0, "name": "miniHdmiDistance", "start": 0, @@ -811,8 +922,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 657, "end": 0, "left": { + "commentStart": 657, "end": 0, "name": "miniHdmiWidth", "start": 0, @@ -821,6 +934,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 673, "end": 0, "raw": "2", "start": 0, @@ -848,11 +962,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 591, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 591, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -864,14 +980,17 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 693, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 707, "elements": [ { + "commentStart": 716, "end": 0, "raw": "1", "start": 0, @@ -883,10 +1002,13 @@ description: Result of parsing fillet-and-shell.kcl } }, { + "commentStart": 726, "end": 0, "left": { + "commentStart": 726, "end": 0, "left": { + "commentStart": 726, "end": 0, "name": "border", "start": 0, @@ -895,6 +1017,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 735, "end": 0, "name": "miniHdmiDistance", "start": 0, @@ -907,8 +1030,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "-", "right": { + "commentStart": 755, "end": 0, "left": { + "commentStart": 755, "end": 0, "name": "miniHdmiWidth", "start": 0, @@ -917,6 +1042,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 771, "end": 0, "raw": "2", "start": 0, @@ -944,11 +1070,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 688, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 688, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -958,6 +1086,7 @@ description: Result of parsing fillet-and-shell.kcl { "arguments": [ { + "commentStart": 793, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -965,17 +1094,20 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 787, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 787, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 373, "end": 0, "start": 0, "type": "PipeExpression", @@ -991,9 +1123,12 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 795, "declaration": { + "commentStart": 797, "end": 0, "id": { + "commentStart": 797, "end": 0, "name": "case", "start": 0, @@ -1004,6 +1139,7 @@ description: Result of parsing fillet-and-shell.kcl { "arguments": [ { + "commentStart": 818, "end": 0, "raw": "'XY'", "start": 0, @@ -1013,11 +1149,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 804, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 804, "end": 0, "start": 0, "type": "CallExpression", @@ -1026,8 +1164,10 @@ description: Result of parsing fillet-and-shell.kcl { "arguments": [ { + "commentStart": 844, "elements": [ { + "commentStart": 845, "end": 0, "raw": "0", "start": 0, @@ -1039,6 +1179,7 @@ description: Result of parsing fillet-and-shell.kcl } }, { + "commentStart": 848, "end": 0, "raw": "0", "start": 0, @@ -1056,6 +1197,7 @@ description: Result of parsing fillet-and-shell.kcl "type": "ArrayExpression" }, { + "commentStart": 852, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1063,11 +1205,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 829, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 829, "end": 0, "start": 0, "type": "CallExpression", @@ -1078,14 +1222,17 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 865, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 879, "elements": [ { + "commentStart": 880, "end": 0, "name": "caseWidth", "start": 0, @@ -1093,6 +1240,7 @@ description: Result of parsing fillet-and-shell.kcl "type": "Identifier" }, { + "commentStart": 891, "end": 0, "raw": "0", "start": 0, @@ -1113,12 +1261,14 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 895, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 901, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1128,11 +1278,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 860, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 860, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1144,14 +1296,17 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 919, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 933, "elements": [ { + "commentStart": 934, "end": 0, "name": "caseWidth", "start": 0, @@ -1159,6 +1314,7 @@ description: Result of parsing fillet-and-shell.kcl "type": "Identifier" }, { + "commentStart": 945, "end": 0, "name": "caseLength", "start": 0, @@ -1175,12 +1331,14 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 958, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 964, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1190,11 +1348,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 914, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 914, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1206,14 +1366,17 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 982, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 996, "elements": [ { + "commentStart": 997, "end": 0, "raw": "0", "start": 0, @@ -1225,6 +1388,7 @@ description: Result of parsing fillet-and-shell.kcl } }, { + "commentStart": 1000, "end": 0, "name": "caseLength", "start": 0, @@ -1241,12 +1405,14 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 1013, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1019, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1256,11 +1422,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 977, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 977, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1272,12 +1440,14 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 1038, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1044, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1287,11 +1457,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1032, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1032, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1303,12 +1475,14 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 1065, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1074, "end": 0, "name": "caseHeight", "start": 0, @@ -1318,11 +1492,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1057, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1057, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1334,12 +1510,14 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 1106, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1115, "end": 0, "raw": "1", "start": 0, @@ -1354,16 +1532,19 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 1125, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1132, "elements": [ { "arguments": [ { + "commentStart": 1163, "end": 0, "name": "edge1", "start": 0, @@ -1372,11 +1553,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1143, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1143, "end": 0, "start": 0, "type": "CallExpression", @@ -1385,6 +1568,7 @@ description: Result of parsing fillet-and-shell.kcl { "arguments": [ { + "commentStart": 1200, "end": 0, "name": "edge2", "start": 0, @@ -1393,11 +1577,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1180, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1180, "end": 0, "start": 0, "type": "CallExpression", @@ -1406,6 +1592,7 @@ description: Result of parsing fillet-and-shell.kcl { "arguments": [ { + "commentStart": 1237, "end": 0, "name": "edge3", "start": 0, @@ -1414,11 +1601,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1217, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1217, "end": 0, "start": 0, "type": "CallExpression", @@ -1427,6 +1616,7 @@ description: Result of parsing fillet-and-shell.kcl { "arguments": [ { + "commentStart": 1274, "end": 0, "name": "edge4", "start": 0, @@ -1435,11 +1625,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1254, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1254, "end": 0, "start": 0, "type": "CallExpression", @@ -1454,11 +1646,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1091, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1091, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1466,6 +1660,7 @@ description: Result of parsing fillet-and-shell.kcl "unlabeled": null } ], + "commentStart": 804, "end": 0, "start": 0, "type": "PipeExpression", @@ -1481,9 +1676,12 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 1297, "declaration": { + "commentStart": 1302, "end": 0, "id": { + "commentStart": 1302, "end": 0, "name": "m25Screw", "start": 0, @@ -1493,9 +1691,12 @@ description: Result of parsing fillet-and-shell.kcl "body": { "body": [ { + "commentStart": 1329, "declaration": { + "commentStart": 1329, "end": 0, "id": { + "commentStart": 1329, "end": 0, "name": "screw", "start": 0, @@ -1506,6 +1707,7 @@ description: Result of parsing fillet-and-shell.kcl { "arguments": [ { + "commentStart": 1351, "end": 0, "raw": "\"XY\"", "start": 0, @@ -1515,11 +1717,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1337, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1337, "end": 0, "start": 0, "type": "CallExpression", @@ -1528,8 +1732,10 @@ description: Result of parsing fillet-and-shell.kcl { "arguments": [ { + "commentStart": 1379, "elements": [ { + "commentStart": 1380, "end": 0, "raw": "0", "start": 0, @@ -1541,6 +1747,7 @@ description: Result of parsing fillet-and-shell.kcl } }, { + "commentStart": 1383, "end": 0, "raw": "0", "start": 0, @@ -1558,6 +1765,7 @@ description: Result of parsing fillet-and-shell.kcl "type": "ArrayExpression" }, { + "commentStart": 1387, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1565,11 +1773,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1364, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1364, "end": 0, "start": 0, "type": "CallExpression", @@ -1580,14 +1790,17 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 1404, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1413, "elements": [ { + "commentStart": 1414, "end": 0, "name": "x", "start": 0, @@ -1595,6 +1808,7 @@ description: Result of parsing fillet-and-shell.kcl "type": "Identifier" }, { + "commentStart": 1417, "end": 0, "name": "y", "start": 0, @@ -1611,12 +1825,14 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 1421, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1430, "end": 0, "raw": "2.5", "start": 0, @@ -1630,11 +1846,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1397, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1397, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1648,14 +1866,17 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 1454, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1463, "elements": [ { + "commentStart": 1464, "end": 0, "name": "x", "start": 0, @@ -1663,6 +1884,7 @@ description: Result of parsing fillet-and-shell.kcl "type": "Identifier" }, { + "commentStart": 1467, "end": 0, "name": "y", "start": 0, @@ -1679,12 +1901,14 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 1471, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1480, "end": 0, "raw": "1.25", "start": 0, @@ -1698,11 +1922,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1447, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1447, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1710,6 +1936,7 @@ description: Result of parsing fillet-and-shell.kcl "unlabeled": null }, { + "commentStart": 1487, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1717,11 +1944,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1442, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 1442, "end": 0, "start": 0, "type": "CallExpression", @@ -1732,12 +1961,14 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 1505, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1514, "end": 0, "name": "height", "start": 0, @@ -1747,11 +1978,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1497, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1497, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1759,6 +1992,7 @@ description: Result of parsing fillet-and-shell.kcl "unlabeled": null } ], + "commentStart": 1337, "end": 0, "start": 0, "type": "PipeExpression", @@ -1775,26 +2009,31 @@ description: Result of parsing fillet-and-shell.kcl }, { "argument": { + "commentStart": 1531, "end": 0, "name": "screw", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1524, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 1325, "end": 0, "start": 0 }, + "commentStart": 1310, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 1311, "end": 0, "name": "x", "start": 0, @@ -1804,6 +2043,7 @@ description: Result of parsing fillet-and-shell.kcl { "type": "Parameter", "identifier": { + "commentStart": 1314, "end": 0, "name": "y", "start": 0, @@ -1813,6 +2053,7 @@ description: Result of parsing fillet-and-shell.kcl { "type": "Parameter", "identifier": { + "commentStart": 1317, "end": 0, "name": "height", "start": 0, @@ -1834,14 +2075,18 @@ description: Result of parsing fillet-and-shell.kcl "type": "VariableDeclaration" }, { + "commentStart": 1538, "end": 0, "expression": { "arguments": [ { + "commentStart": 1549, "end": 0, "left": { + "commentStart": 1549, "end": 0, "left": { + "commentStart": 1549, "end": 0, "name": "border", "start": 0, @@ -1850,8 +2095,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 1558, "end": 0, "left": { + "commentStart": 1558, "end": 0, "name": "rpizWidth", "start": 0, @@ -1860,6 +2107,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 1570, "end": 0, "raw": "2", "start": 0, @@ -1880,8 +2128,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "-", "right": { + "commentStart": 1575, "end": 0, "left": { + "commentStart": 1575, "end": 0, "name": "widthBetweenScrews", "start": 0, @@ -1890,6 +2140,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 1596, "end": 0, "raw": "2", "start": 0, @@ -1909,12 +2160,16 @@ description: Result of parsing fillet-and-shell.kcl "type": "BinaryExpression" }, { + "commentStart": 1600, "end": 0, "left": { + "commentStart": 1600, "end": 0, "left": { + "commentStart": 1600, "end": 0, "left": { + "commentStart": 1600, "end": 0, "raw": "0", "start": 0, @@ -1927,6 +2182,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 1604, "end": 0, "name": "border", "start": 0, @@ -1939,8 +2195,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 1613, "end": 0, "left": { + "commentStart": 1613, "end": 0, "name": "rpizLength", "start": 0, @@ -1949,6 +2207,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 1626, "end": 0, "raw": "2", "start": 0, @@ -1969,8 +2228,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "-", "right": { + "commentStart": 1631, "end": 0, "left": { + "commentStart": 1631, "end": 0, "name": "lengthBetweenScrews", "start": 0, @@ -1979,6 +2240,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 1653, "end": 0, "raw": "2", "start": 0, @@ -1998,6 +2260,7 @@ description: Result of parsing fillet-and-shell.kcl "type": "BinaryExpression" }, { + "commentStart": 1657, "end": 0, "name": "screwHeight", "start": 0, @@ -2006,11 +2269,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1540, "end": 0, "name": "m25Screw", "start": 0, "type": "Identifier" }, + "commentStart": 1540, "end": 0, "start": 0, "type": "CallExpression", @@ -2021,14 +2286,18 @@ description: Result of parsing fillet-and-shell.kcl "type": "ExpressionStatement" }, { + "commentStart": 1669, "end": 0, "expression": { "arguments": [ { + "commentStart": 1680, "end": 0, "left": { + "commentStart": 1680, "end": 0, "left": { + "commentStart": 1680, "end": 0, "name": "border", "start": 0, @@ -2037,8 +2306,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 1689, "end": 0, "left": { + "commentStart": 1689, "end": 0, "name": "rpizWidth", "start": 0, @@ -2047,6 +2318,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 1701, "end": 0, "raw": "2", "start": 0, @@ -2067,8 +2339,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "-", "right": { + "commentStart": 1706, "end": 0, "left": { + "commentStart": 1706, "end": 0, "name": "widthBetweenScrews", "start": 0, @@ -2077,6 +2351,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 1727, "end": 0, "raw": "2", "start": 0, @@ -2096,12 +2371,16 @@ description: Result of parsing fillet-and-shell.kcl "type": "BinaryExpression" }, { + "commentStart": 1731, "end": 0, "left": { + "commentStart": 1731, "end": 0, "left": { + "commentStart": 1731, "end": 0, "left": { + "commentStart": 1731, "end": 0, "raw": "0", "start": 0, @@ -2114,6 +2393,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 1735, "end": 0, "name": "border", "start": 0, @@ -2126,8 +2406,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 1744, "end": 0, "left": { + "commentStart": 1744, "end": 0, "name": "rpizLength", "start": 0, @@ -2136,6 +2418,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 1757, "end": 0, "raw": "2", "start": 0, @@ -2156,8 +2439,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 1761, "end": 0, "left": { + "commentStart": 1761, "end": 0, "name": "lengthBetweenScrews", "start": 0, @@ -2166,6 +2451,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 1783, "end": 0, "raw": "2", "start": 0, @@ -2185,6 +2471,7 @@ description: Result of parsing fillet-and-shell.kcl "type": "BinaryExpression" }, { + "commentStart": 1786, "end": 0, "name": "screwHeight", "start": 0, @@ -2193,11 +2480,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1671, "end": 0, "name": "m25Screw", "start": 0, "type": "Identifier" }, + "commentStart": 1671, "end": 0, "start": 0, "type": "CallExpression", @@ -2208,14 +2497,18 @@ description: Result of parsing fillet-and-shell.kcl "type": "ExpressionStatement" }, { + "commentStart": 1798, "end": 0, "expression": { "arguments": [ { + "commentStart": 1809, "end": 0, "left": { + "commentStart": 1809, "end": 0, "left": { + "commentStart": 1809, "end": 0, "name": "border", "start": 0, @@ -2224,8 +2517,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 1818, "end": 0, "left": { + "commentStart": 1818, "end": 0, "name": "rpizWidth", "start": 0, @@ -2234,6 +2529,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 1830, "end": 0, "raw": "2", "start": 0, @@ -2254,8 +2550,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 1834, "end": 0, "left": { + "commentStart": 1834, "end": 0, "name": "widthBetweenScrews", "start": 0, @@ -2264,6 +2562,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 1855, "end": 0, "raw": "2", "start": 0, @@ -2283,12 +2582,16 @@ description: Result of parsing fillet-and-shell.kcl "type": "BinaryExpression" }, { + "commentStart": 1858, "end": 0, "left": { + "commentStart": 1858, "end": 0, "left": { + "commentStart": 1858, "end": 0, "left": { + "commentStart": 1858, "end": 0, "raw": "0", "start": 0, @@ -2301,6 +2604,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 1862, "end": 0, "name": "border", "start": 0, @@ -2313,8 +2617,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 1871, "end": 0, "left": { + "commentStart": 1871, "end": 0, "name": "rpizLength", "start": 0, @@ -2323,6 +2629,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 1884, "end": 0, "raw": "2", "start": 0, @@ -2343,8 +2650,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 1888, "end": 0, "left": { + "commentStart": 1888, "end": 0, "name": "lengthBetweenScrews", "start": 0, @@ -2353,6 +2662,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 1910, "end": 0, "raw": "2", "start": 0, @@ -2372,6 +2682,7 @@ description: Result of parsing fillet-and-shell.kcl "type": "BinaryExpression" }, { + "commentStart": 1913, "end": 0, "name": "screwHeight", "start": 0, @@ -2380,11 +2691,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1800, "end": 0, "name": "m25Screw", "start": 0, "type": "Identifier" }, + "commentStart": 1800, "end": 0, "start": 0, "type": "CallExpression", @@ -2395,14 +2708,18 @@ description: Result of parsing fillet-and-shell.kcl "type": "ExpressionStatement" }, { + "commentStart": 1925, "end": 0, "expression": { "arguments": [ { + "commentStart": 1936, "end": 0, "left": { + "commentStart": 1936, "end": 0, "left": { + "commentStart": 1936, "end": 0, "name": "border", "start": 0, @@ -2411,8 +2728,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 1945, "end": 0, "left": { + "commentStart": 1945, "end": 0, "name": "rpizWidth", "start": 0, @@ -2421,6 +2740,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 1957, "end": 0, "raw": "2", "start": 0, @@ -2441,8 +2761,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 1961, "end": 0, "left": { + "commentStart": 1961, "end": 0, "name": "widthBetweenScrews", "start": 0, @@ -2451,6 +2773,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 1982, "end": 0, "raw": "2", "start": 0, @@ -2470,12 +2793,16 @@ description: Result of parsing fillet-and-shell.kcl "type": "BinaryExpression" }, { + "commentStart": 1985, "end": 0, "left": { + "commentStart": 1985, "end": 0, "left": { + "commentStart": 1985, "end": 0, "left": { + "commentStart": 1985, "end": 0, "raw": "0", "start": 0, @@ -2488,6 +2815,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 1989, "end": 0, "name": "border", "start": 0, @@ -2500,8 +2828,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "+", "right": { + "commentStart": 1998, "end": 0, "left": { + "commentStart": 1998, "end": 0, "name": "rpizLength", "start": 0, @@ -2510,6 +2840,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 2011, "end": 0, "raw": "2", "start": 0, @@ -2530,8 +2861,10 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "-", "right": { + "commentStart": 2016, "end": 0, "left": { + "commentStart": 2016, "end": 0, "name": "lengthBetweenScrews", "start": 0, @@ -2540,6 +2873,7 @@ description: Result of parsing fillet-and-shell.kcl }, "operator": "/", "right": { + "commentStart": 2038, "end": 0, "raw": "2", "start": 0, @@ -2559,6 +2893,7 @@ description: Result of parsing fillet-and-shell.kcl "type": "BinaryExpression" }, { + "commentStart": 2042, "end": 0, "name": "screwHeight", "start": 0, @@ -2567,11 +2902,13 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 1927, "end": 0, "name": "m25Screw", "start": 0, "type": "Identifier" }, + "commentStart": 1927, "end": 0, "start": 0, "type": "CallExpression", @@ -2582,20 +2919,24 @@ description: Result of parsing fillet-and-shell.kcl "type": "ExpressionStatement" }, { + "commentStart": 2054, "end": 0, "expression": { "arguments": [ { "type": "LabeledArg", "label": { + "commentStart": 2068, "end": 0, "name": "faces", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2076, "elements": [ { + "commentStart": 2077, "end": 0, "raw": "'end'", "start": 0, @@ -2613,12 +2954,14 @@ description: Result of parsing fillet-and-shell.kcl { "type": "LabeledArg", "label": { + "commentStart": 2085, "end": 0, "name": "thickness", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2097, "end": 0, "name": "caseThickness", "start": 0, @@ -2628,16 +2971,19 @@ description: Result of parsing fillet-and-shell.kcl } ], "callee": { + "commentStart": 2056, "end": 0, "name": "shell", "start": 0, "type": "Identifier" }, + "commentStart": 2056, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2062, "end": 0, "name": "case", "start": 0, @@ -2650,11 +2996,13 @@ description: Result of parsing fillet-and-shell.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 30, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2665,6 +3013,7 @@ description: Result of parsing fillet-and-shell.kcl ], "2": [ { + "commentStart": 49, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2675,6 +3024,7 @@ description: Result of parsing fillet-and-shell.kcl ], "3": [ { + "commentStart": 61, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2685,6 +3035,7 @@ description: Result of parsing fillet-and-shell.kcl ], "4": [ { + "commentStart": 78, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2695,6 +3046,7 @@ description: Result of parsing fillet-and-shell.kcl ], "7": [ { + "commentStart": 166, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2705,6 +3057,7 @@ description: Result of parsing fillet-and-shell.kcl ], "9": [ { + "commentStart": 220, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2715,6 +3068,7 @@ description: Result of parsing fillet-and-shell.kcl ], "12": [ { + "commentStart": 293, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2725,6 +3079,7 @@ description: Result of parsing fillet-and-shell.kcl ], "15": [ { + "commentStart": 356, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2735,6 +3090,7 @@ description: Result of parsing fillet-and-shell.kcl ], "16": [ { + "commentStart": 795, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2745,6 +3101,7 @@ description: Result of parsing fillet-and-shell.kcl ], "17": [ { + "commentStart": 1297, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2755,6 +3112,7 @@ description: Result of parsing fillet-and-shell.kcl ], "18": [ { + "commentStart": 1538, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2765,6 +3123,7 @@ description: Result of parsing fillet-and-shell.kcl ], "19": [ { + "commentStart": 1669, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2775,6 +3134,7 @@ description: Result of parsing fillet-and-shell.kcl ], "20": [ { + "commentStart": 1798, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2785,6 +3145,7 @@ description: Result of parsing fillet-and-shell.kcl ], "21": [ { + "commentStart": 1925, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2795,6 +3156,7 @@ description: Result of parsing fillet-and-shell.kcl ], "22": [ { + "commentStart": 2054, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/fillet-and-shell/program_memory.snap b/rust/kcl-lib/tests/fillet-and-shell/program_memory.snap index fd326dd52..e8a813859 100644 --- a/rust/kcl-lib/tests/fillet-and-shell/program_memory.snap +++ b/rust/kcl-lib/tests/fillet-and-shell/program_memory.snap @@ -28,6 +28,7 @@ description: Variables in memory after executing fillet-and-shell.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 901, "end": 907, "start": 901, "type": "TagDeclarator", @@ -40,6 +41,7 @@ description: Variables in memory after executing fillet-and-shell.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 964, "end": 970, "start": 964, "type": "TagDeclarator", @@ -52,6 +54,7 @@ description: Variables in memory after executing fillet-and-shell.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1019, "end": 1025, "start": 1019, "type": "TagDeclarator", @@ -64,6 +67,7 @@ description: Variables in memory after executing fillet-and-shell.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1044, "end": 1050, "start": 1044, "type": "TagDeclarator", @@ -86,6 +90,7 @@ description: Variables in memory after executing fillet-and-shell.kcl 0.0 ], "tag": { + "commentStart": 901, "end": 907, "start": 901, "type": "TagDeclarator", @@ -110,6 +115,7 @@ description: Variables in memory after executing fillet-and-shell.kcl 0.0 ], "tag": { + "commentStart": 964, "end": 970, "start": 964, "type": "TagDeclarator", @@ -134,6 +140,7 @@ description: Variables in memory after executing fillet-and-shell.kcl 73.0 ], "tag": { + "commentStart": 1019, "end": 1025, "start": 1019, "type": "TagDeclarator", @@ -158,6 +165,7 @@ description: Variables in memory after executing fillet-and-shell.kcl 73.0 ], "tag": { + "commentStart": 1044, "end": 1050, "start": 1044, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/flush_batch_on_end/ast.snap b/rust/kcl-lib/tests/flush_batch_on_end/ast.snap index 1914ab0b1..da34d5b29 100644 --- a/rust/kcl-lib/tests/flush_batch_on_end/ast.snap +++ b/rust/kcl-lib/tests/flush_batch_on_end/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing flush_batch_on_end.kcl "Ok": { "body": [ { + "commentStart": 33, "declaration": { + "commentStart": 84, "end": 0, "id": { + "commentStart": 84, "end": 0, "name": "innerDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 100, "end": 0, "raw": "0.364", "start": 0, @@ -30,22 +34,33 @@ description: Result of parsing flush_batch_on_end.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Set units in inches (in)", + "", + "", + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 106, "declaration": { + "commentStart": 106, "end": 0, "id": { + "commentStart": 106, "end": 0, "name": "outerDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 122, "end": 0, "left": { + "commentStart": 122, "end": 0, "raw": "35", "start": 0, @@ -58,6 +73,7 @@ description: Result of parsing flush_batch_on_end.kcl }, "operator": "/", "right": { + "commentStart": 127, "end": 0, "raw": "64", "start": 0, @@ -82,17 +98,22 @@ description: Result of parsing flush_batch_on_end.kcl "type": "VariableDeclaration" }, { + "commentStart": 130, "declaration": { + "commentStart": 130, "end": 0, "id": { + "commentStart": 130, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 139, "end": 0, "left": { + "commentStart": 139, "end": 0, "raw": "1", "start": 0, @@ -105,8 +126,10 @@ description: Result of parsing flush_batch_on_end.kcl }, "operator": "+", "right": { + "commentStart": 143, "end": 0, "left": { + "commentStart": 143, "end": 0, "raw": "1", "start": 0, @@ -119,6 +142,7 @@ description: Result of parsing flush_batch_on_end.kcl }, "operator": "/", "right": { + "commentStart": 147, "end": 0, "raw": "2", "start": 0, @@ -147,9 +171,12 @@ description: Result of parsing flush_batch_on_end.kcl "type": "VariableDeclaration" }, { + "commentStart": 148, "declaration": { + "commentStart": 187, "end": 0, "id": { + "commentStart": 187, "end": 0, "name": "sketch000", "start": 0, @@ -158,6 +185,7 @@ description: Result of parsing flush_batch_on_end.kcl "init": { "arguments": [ { + "commentStart": 213, "end": 0, "raw": "'XY'", "start": 0, @@ -167,11 +195,13 @@ description: Result of parsing flush_batch_on_end.kcl } ], "callee": { + "commentStart": 199, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 199, "end": 0, "start": 0, "type": "CallExpression", @@ -182,14 +212,22 @@ description: Result of parsing flush_batch_on_end.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a sketch on the 'XY' plane" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 218, "declaration": { + "commentStart": 267, "end": 0, "id": { + "commentStart": 267, "end": 0, "name": "outerProfile", "start": 0, @@ -200,14 +238,17 @@ description: Result of parsing flush_batch_on_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 305, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 314, "elements": [ { + "commentStart": 315, "end": 0, "raw": "0.0", "start": 0, @@ -219,6 +260,7 @@ description: Result of parsing flush_batch_on_end.kcl } }, { + "commentStart": 320, "end": 0, "raw": "0.0", "start": 0, @@ -239,14 +281,17 @@ description: Result of parsing flush_batch_on_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 328, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 337, "end": 0, "left": { + "commentStart": 337, "end": 0, "name": "outerDiameter", "start": 0, @@ -255,6 +300,7 @@ description: Result of parsing flush_batch_on_end.kcl }, "operator": "/", "right": { + "commentStart": 353, "end": 0, "raw": "2", "start": 0, @@ -273,12 +319,14 @@ description: Result of parsing flush_batch_on_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 358, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 364, "end": 0, "start": 0, "type": "TagDeclarator", @@ -288,16 +336,19 @@ description: Result of parsing flush_batch_on_end.kcl } ], "callee": { + "commentStart": 282, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 282, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 292, "end": 0, "name": "sketch000", "start": 0, @@ -310,14 +361,22 @@ description: Result of parsing flush_batch_on_end.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a profile of the outside of the pipe" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 374, "declaration": { + "commentStart": 422, "end": 0, "id": { + "commentStart": 422, "end": 0, "name": "innerProfile", "start": 0, @@ -328,14 +387,17 @@ description: Result of parsing flush_batch_on_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 460, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 469, "elements": [ { + "commentStart": 470, "end": 0, "raw": "0.0", "start": 0, @@ -347,6 +409,7 @@ description: Result of parsing flush_batch_on_end.kcl } }, { + "commentStart": 475, "end": 0, "raw": "0.0", "start": 0, @@ -367,14 +430,17 @@ description: Result of parsing flush_batch_on_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 483, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 492, "end": 0, "left": { + "commentStart": 492, "end": 0, "name": "innerDiameter", "start": 0, @@ -383,6 +449,7 @@ description: Result of parsing flush_batch_on_end.kcl }, "operator": "/", "right": { + "commentStart": 508, "end": 0, "raw": "2", "start": 0, @@ -401,12 +468,14 @@ description: Result of parsing flush_batch_on_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 513, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 519, "end": 0, "start": 0, "type": "TagDeclarator", @@ -416,16 +485,19 @@ description: Result of parsing flush_batch_on_end.kcl } ], "callee": { + "commentStart": 437, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 437, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 447, "end": 0, "name": "sketch000", "start": 0, @@ -438,14 +510,22 @@ description: Result of parsing flush_batch_on_end.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a profile of the inside of the pipe" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 529, "declaration": { + "commentStart": 587, "end": 0, "id": { + "commentStart": 587, "end": 0, "name": "pipeProfile", "start": 0, @@ -454,6 +534,7 @@ description: Result of parsing flush_batch_on_end.kcl "init": { "body": [ { + "commentStart": 601, "end": 0, "name": "outerProfile", "start": 0, @@ -463,6 +544,7 @@ description: Result of parsing flush_batch_on_end.kcl { "arguments": [ { + "commentStart": 624, "end": 0, "name": "innerProfile", "start": 0, @@ -470,6 +552,7 @@ description: Result of parsing flush_batch_on_end.kcl "type": "Identifier" }, { + "commentStart": 638, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -477,22 +560,26 @@ description: Result of parsing flush_batch_on_end.kcl } ], "callee": { + "commentStart": 619, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 619, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 601, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 640, "end": 0, "start": 0, "type": "NonCodeNode", @@ -515,14 +602,22 @@ description: Result of parsing flush_batch_on_end.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a profile with holes sketch000Profile000Holes" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 689, "declaration": { + "commentStart": 689, "end": 0, "id": { + "commentStart": 689, "end": 0, "name": "pipe", "start": 0, @@ -533,12 +628,14 @@ description: Result of parsing flush_batch_on_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 717, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 726, "end": 0, "name": "length", "start": 0, @@ -548,16 +645,19 @@ description: Result of parsing flush_batch_on_end.kcl } ], "callee": { + "commentStart": 696, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 696, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 704, "end": 0, "name": "pipeProfile", "start": 0, @@ -575,11 +675,14 @@ description: Result of parsing flush_batch_on_end.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 1, "end": 0, "name": "settings", "start": 0, @@ -587,8 +690,10 @@ description: Result of parsing flush_batch_on_end.kcl }, "properties": [ { + "commentStart": 10, "end": 0, "key": { + "commentStart": 10, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -597,6 +702,7 @@ description: Result of parsing flush_batch_on_end.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 30, "end": 0, "name": "in", "start": 0, @@ -610,84 +716,16 @@ description: Result of parsing flush_batch_on_end.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "2": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a sketch on the 'XY' plane", - "style": "line" - } - } - ], - "3": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a profile of the outside of the pipe", - "style": "line" - } - } - ], - "4": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a profile of the inside of the pipe", - "style": "line" - } - } - ], - "5": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a profile with holes sketch000Profile000Holes", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units in inches (in)", - "style": "line" - } - }, - { + "commentStart": 33, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/flush_batch_on_end/input.kcl b/rust/kcl-lib/tests/flush_batch_on_end/input.kcl index 2c168fb6b..e147a1715 100644 --- a/rust/kcl-lib/tests/flush_batch_on_end/input.kcl +++ b/rust/kcl-lib/tests/flush_batch_on_end/input.kcl @@ -1,6 +1,6 @@ @settings(defaultLengthUnit = in) -// Set units in inches (in) +// Set units in inches (in) // Define constants innerDiameter = 0.364 diff --git a/rust/kcl-lib/tests/flush_batch_on_end/program_memory.snap b/rust/kcl-lib/tests/flush_batch_on_end/program_memory.snap index 371b41f35..c1b29e207 100644 --- a/rust/kcl-lib/tests/flush_batch_on_end/program_memory.snap +++ b/rust/kcl-lib/tests/flush_batch_on_end/program_memory.snap @@ -48,6 +48,7 @@ description: Variables in memory after executing flush_batch_on_end.kcl ], "radius": 0.182, "tag": { + "commentStart": 519, "end": 526, "start": 519, "type": "TagDeclarator", @@ -159,6 +160,7 @@ description: Variables in memory after executing flush_batch_on_end.kcl ], "radius": 0.2734375, "tag": { + "commentStart": 364, "end": 371, "start": 364, "type": "TagDeclarator", @@ -246,6 +248,7 @@ description: Variables in memory after executing flush_batch_on_end.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 364, "end": 371, "start": 364, "type": "TagDeclarator", @@ -274,6 +277,7 @@ description: Variables in memory after executing flush_batch_on_end.kcl ], "radius": 0.2734375, "tag": { + "commentStart": 364, "end": 371, "start": 364, "type": "TagDeclarator", @@ -378,6 +382,7 @@ description: Variables in memory after executing flush_batch_on_end.kcl ], "radius": 0.2734375, "tag": { + "commentStart": 364, "end": 371, "start": 364, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/flush_batch_on_end/unparsed.snap b/rust/kcl-lib/tests/flush_batch_on_end/unparsed.snap index 50c28ba8c..b78861884 100644 --- a/rust/kcl-lib/tests/flush_batch_on_end/unparsed.snap +++ b/rust/kcl-lib/tests/flush_batch_on_end/unparsed.snap @@ -3,8 +3,8 @@ source: kcl-lib/src/simulation_tests.rs description: Result of unparsing flush_batch_on_end.kcl --- @settings(defaultLengthUnit = in) -// Set units in inches (in) +// Set units in inches (in) // Define constants innerDiameter = 0.364 diff --git a/rust/kcl-lib/tests/function_sketch/ast.snap b/rust/kcl-lib/tests/function_sketch/ast.snap index 7a4ece7c8..1df556ae1 100644 --- a/rust/kcl-lib/tests/function_sketch/ast.snap +++ b/rust/kcl-lib/tests/function_sketch/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing function_sketch.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "box", "start": 0, @@ -18,9 +21,12 @@ description: Result of parsing function_sketch.kcl "body": { "body": [ { + "commentStart": 20, "declaration": { + "commentStart": 20, "end": 0, "id": { + "commentStart": 20, "end": 0, "name": "myBox", "start": 0, @@ -31,6 +37,7 @@ description: Result of parsing function_sketch.kcl { "arguments": [ { + "commentStart": 42, "end": 0, "raw": "'XY'", "start": 0, @@ -40,11 +47,13 @@ description: Result of parsing function_sketch.kcl } ], "callee": { + "commentStart": 28, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 28, "end": 0, "start": 0, "type": "CallExpression", @@ -53,8 +62,10 @@ description: Result of parsing function_sketch.kcl { "arguments": [ { + "commentStart": 70, "elements": [ { + "commentStart": 71, "end": 0, "raw": "0", "start": 0, @@ -66,6 +77,7 @@ description: Result of parsing function_sketch.kcl } }, { + "commentStart": 74, "end": 0, "raw": "0", "start": 0, @@ -83,6 +95,7 @@ description: Result of parsing function_sketch.kcl "type": "ArrayExpression" }, { + "commentStart": 78, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -90,11 +103,13 @@ description: Result of parsing function_sketch.kcl } ], "callee": { + "commentStart": 55, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 55, "end": 0, "start": 0, "type": "CallExpression", @@ -105,14 +120,17 @@ description: Result of parsing function_sketch.kcl { "type": "LabeledArg", "label": { + "commentStart": 93, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 99, "elements": [ { + "commentStart": 100, "end": 0, "raw": "0", "start": 0, @@ -124,6 +142,7 @@ description: Result of parsing function_sketch.kcl } }, { + "commentStart": 103, "end": 0, "name": "l", "start": 0, @@ -139,11 +158,13 @@ description: Result of parsing function_sketch.kcl } ], "callee": { + "commentStart": 88, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 88, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -155,14 +176,17 @@ description: Result of parsing function_sketch.kcl { "type": "LabeledArg", "label": { + "commentStart": 119, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 125, "elements": [ { + "commentStart": 126, "end": 0, "name": "w", "start": 0, @@ -170,6 +194,7 @@ description: Result of parsing function_sketch.kcl "type": "Identifier" }, { + "commentStart": 129, "end": 0, "raw": "0", "start": 0, @@ -189,11 +214,13 @@ description: Result of parsing function_sketch.kcl } ], "callee": { + "commentStart": 114, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 114, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -205,14 +232,17 @@ description: Result of parsing function_sketch.kcl { "type": "LabeledArg", "label": { + "commentStart": 145, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 151, "elements": [ { + "commentStart": 152, "end": 0, "raw": "0", "start": 0, @@ -225,12 +255,14 @@ description: Result of parsing function_sketch.kcl }, { "argument": { + "commentStart": 156, "end": 0, "name": "l", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 155, "end": 0, "operator": "-", "start": 0, @@ -246,11 +278,13 @@ description: Result of parsing function_sketch.kcl } ], "callee": { + "commentStart": 140, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 140, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -260,6 +294,7 @@ description: Result of parsing function_sketch.kcl { "arguments": [ { + "commentStart": 173, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -267,11 +302,13 @@ description: Result of parsing function_sketch.kcl } ], "callee": { + "commentStart": 167, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 167, "end": 0, "start": 0, "type": "CallExpression", @@ -282,12 +319,14 @@ description: Result of parsing function_sketch.kcl { "type": "LabeledArg", "label": { + "commentStart": 191, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 200, "end": 0, "name": "h", "start": 0, @@ -297,11 +336,13 @@ description: Result of parsing function_sketch.kcl } ], "callee": { + "commentStart": 183, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 183, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -309,6 +350,7 @@ description: Result of parsing function_sketch.kcl "unlabeled": null } ], + "commentStart": 28, "end": 0, "start": 0, "type": "PipeExpression", @@ -325,23 +367,27 @@ description: Result of parsing function_sketch.kcl }, { "argument": { + "commentStart": 213, "end": 0, "name": "myBox", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 202, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 16, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 202, "end": 0, "start": 0, "type": "NonCodeNode", @@ -355,11 +401,13 @@ description: Result of parsing function_sketch.kcl }, "start": 0 }, + "commentStart": 6, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 7, "end": 0, "name": "h", "start": 0, @@ -369,6 +417,7 @@ description: Result of parsing function_sketch.kcl { "type": "Parameter", "identifier": { + "commentStart": 10, "end": 0, "name": "l", "start": 0, @@ -378,6 +427,7 @@ description: Result of parsing function_sketch.kcl { "type": "Parameter", "identifier": { + "commentStart": 13, "end": 0, "name": "w", "start": 0, @@ -399,9 +449,12 @@ description: Result of parsing function_sketch.kcl "type": "VariableDeclaration" }, { + "commentStart": 220, "declaration": { + "commentStart": 222, "end": 0, "id": { + "commentStart": 222, "end": 0, "name": "fnBox", "start": 0, @@ -410,6 +463,7 @@ description: Result of parsing function_sketch.kcl "init": { "arguments": [ { + "commentStart": 234, "end": 0, "raw": "3", "start": 0, @@ -421,6 +475,7 @@ description: Result of parsing function_sketch.kcl } }, { + "commentStart": 237, "end": 0, "raw": "6", "start": 0, @@ -432,6 +487,7 @@ description: Result of parsing function_sketch.kcl } }, { + "commentStart": 240, "end": 0, "raw": "10", "start": 0, @@ -444,11 +500,13 @@ description: Result of parsing function_sketch.kcl } ], "callee": { + "commentStart": 230, "end": 0, "name": "box", "start": 0, "type": "Identifier" }, + "commentStart": 230, "end": 0, "start": 0, "type": "CallExpression", @@ -464,11 +522,13 @@ description: Result of parsing function_sketch.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 220, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/function_sketch_with_position/ast.snap b/rust/kcl-lib/tests/function_sketch_with_position/ast.snap index 76230e544..5b9b4928a 100644 --- a/rust/kcl-lib/tests/function_sketch_with_position/ast.snap +++ b/rust/kcl-lib/tests/function_sketch_with_position/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing function_sketch_with_position.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "box", "start": 0, @@ -18,9 +21,12 @@ description: Result of parsing function_sketch_with_position.kcl "body": { "body": [ { + "commentStart": 23, "declaration": { + "commentStart": 23, "end": 0, "id": { + "commentStart": 23, "end": 0, "name": "myBox", "start": 0, @@ -31,6 +37,7 @@ description: Result of parsing function_sketch_with_position.kcl { "arguments": [ { + "commentStart": 45, "end": 0, "raw": "'XY'", "start": 0, @@ -40,11 +47,13 @@ description: Result of parsing function_sketch_with_position.kcl } ], "callee": { + "commentStart": 31, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 31, "end": 0, "start": 0, "type": "CallExpression", @@ -53,6 +62,7 @@ description: Result of parsing function_sketch_with_position.kcl { "arguments": [ { + "commentStart": 73, "end": 0, "name": "p", "start": 0, @@ -60,6 +70,7 @@ description: Result of parsing function_sketch_with_position.kcl "type": "Identifier" }, { + "commentStart": 76, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -67,11 +78,13 @@ description: Result of parsing function_sketch_with_position.kcl } ], "callee": { + "commentStart": 58, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 58, "end": 0, "start": 0, "type": "CallExpression", @@ -82,14 +95,17 @@ description: Result of parsing function_sketch_with_position.kcl { "type": "LabeledArg", "label": { + "commentStart": 91, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 97, "elements": [ { + "commentStart": 98, "end": 0, "raw": "0", "start": 0, @@ -101,6 +117,7 @@ description: Result of parsing function_sketch_with_position.kcl } }, { + "commentStart": 101, "end": 0, "name": "l", "start": 0, @@ -116,11 +133,13 @@ description: Result of parsing function_sketch_with_position.kcl } ], "callee": { + "commentStart": 86, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 86, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -132,14 +151,17 @@ description: Result of parsing function_sketch_with_position.kcl { "type": "LabeledArg", "label": { + "commentStart": 117, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 123, "elements": [ { + "commentStart": 124, "end": 0, "name": "w", "start": 0, @@ -147,6 +169,7 @@ description: Result of parsing function_sketch_with_position.kcl "type": "Identifier" }, { + "commentStart": 127, "end": 0, "raw": "0", "start": 0, @@ -166,11 +189,13 @@ description: Result of parsing function_sketch_with_position.kcl } ], "callee": { + "commentStart": 112, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 112, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -182,14 +207,17 @@ description: Result of parsing function_sketch_with_position.kcl { "type": "LabeledArg", "label": { + "commentStart": 143, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 149, "elements": [ { + "commentStart": 150, "end": 0, "raw": "0", "start": 0, @@ -202,12 +230,14 @@ description: Result of parsing function_sketch_with_position.kcl }, { "argument": { + "commentStart": 154, "end": 0, "name": "l", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 153, "end": 0, "operator": "-", "start": 0, @@ -223,11 +253,13 @@ description: Result of parsing function_sketch_with_position.kcl } ], "callee": { + "commentStart": 138, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 138, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -237,6 +269,7 @@ description: Result of parsing function_sketch_with_position.kcl { "arguments": [ { + "commentStart": 171, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -244,11 +277,13 @@ description: Result of parsing function_sketch_with_position.kcl } ], "callee": { + "commentStart": 165, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 165, "end": 0, "start": 0, "type": "CallExpression", @@ -259,12 +294,14 @@ description: Result of parsing function_sketch_with_position.kcl { "type": "LabeledArg", "label": { + "commentStart": 189, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 198, "end": 0, "name": "h", "start": 0, @@ -274,11 +311,13 @@ description: Result of parsing function_sketch_with_position.kcl } ], "callee": { + "commentStart": 181, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 181, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -286,6 +325,7 @@ description: Result of parsing function_sketch_with_position.kcl "unlabeled": null } ], + "commentStart": 31, "end": 0, "start": 0, "type": "PipeExpression", @@ -302,23 +342,27 @@ description: Result of parsing function_sketch_with_position.kcl }, { "argument": { + "commentStart": 211, "end": 0, "name": "myBox", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 200, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 19, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 200, "end": 0, "start": 0, "type": "NonCodeNode", @@ -332,11 +376,13 @@ description: Result of parsing function_sketch_with_position.kcl }, "start": 0 }, + "commentStart": 6, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 7, "end": 0, "name": "p", "start": 0, @@ -346,6 +392,7 @@ description: Result of parsing function_sketch_with_position.kcl { "type": "Parameter", "identifier": { + "commentStart": 10, "end": 0, "name": "h", "start": 0, @@ -355,6 +402,7 @@ description: Result of parsing function_sketch_with_position.kcl { "type": "Parameter", "identifier": { + "commentStart": 13, "end": 0, "name": "l", "start": 0, @@ -364,6 +412,7 @@ description: Result of parsing function_sketch_with_position.kcl { "type": "Parameter", "identifier": { + "commentStart": 16, "end": 0, "name": "w", "start": 0, @@ -385,9 +434,12 @@ description: Result of parsing function_sketch_with_position.kcl "type": "VariableDeclaration" }, { + "commentStart": 218, "declaration": { + "commentStart": 220, "end": 0, "id": { + "commentStart": 220, "end": 0, "name": "thing", "start": 0, @@ -396,8 +448,10 @@ description: Result of parsing function_sketch_with_position.kcl "init": { "arguments": [ { + "commentStart": 232, "elements": [ { + "commentStart": 233, "end": 0, "raw": "0", "start": 0, @@ -409,6 +463,7 @@ description: Result of parsing function_sketch_with_position.kcl } }, { + "commentStart": 236, "end": 0, "raw": "0", "start": 0, @@ -426,6 +481,7 @@ description: Result of parsing function_sketch_with_position.kcl "type": "ArrayExpression" }, { + "commentStart": 240, "end": 0, "raw": "3", "start": 0, @@ -437,6 +493,7 @@ description: Result of parsing function_sketch_with_position.kcl } }, { + "commentStart": 243, "end": 0, "raw": "6", "start": 0, @@ -448,6 +505,7 @@ description: Result of parsing function_sketch_with_position.kcl } }, { + "commentStart": 246, "end": 0, "raw": "10", "start": 0, @@ -460,11 +518,13 @@ description: Result of parsing function_sketch_with_position.kcl } ], "callee": { + "commentStart": 228, "end": 0, "name": "box", "start": 0, "type": "Identifier" }, + "commentStart": 228, "end": 0, "start": 0, "type": "CallExpression", @@ -480,11 +540,13 @@ description: Result of parsing function_sketch_with_position.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 218, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/helix_ccw/ast.snap b/rust/kcl-lib/tests/helix_ccw/ast.snap index d149339fd..7e218c5b7 100644 --- a/rust/kcl-lib/tests/helix_ccw/ast.snap +++ b/rust/kcl-lib/tests/helix_ccw/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing helix_ccw.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "part001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing helix_ccw.kcl { "arguments": [ { + "commentStart": 24, "end": 0, "raw": "'XY'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing helix_ccw.kcl } ], "callee": { + "commentStart": 10, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 10, "end": 0, "start": 0, "type": "CallExpression", @@ -43,14 +49,17 @@ description: Result of parsing helix_ccw.kcl { "type": "LabeledArg", "label": { + "commentStart": 42, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 51, "elements": [ { + "commentStart": 52, "end": 0, "raw": "5", "start": 0, @@ -62,6 +71,7 @@ description: Result of parsing helix_ccw.kcl } }, { + "commentStart": 55, "end": 0, "raw": "5", "start": 0, @@ -82,12 +92,14 @@ description: Result of parsing helix_ccw.kcl { "type": "LabeledArg", "label": { + "commentStart": 59, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 68, "end": 0, "raw": "10", "start": 0, @@ -101,11 +113,13 @@ description: Result of parsing helix_ccw.kcl } ], "callee": { + "commentStart": 35, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 35, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -117,12 +131,14 @@ description: Result of parsing helix_ccw.kcl { "type": "LabeledArg", "label": { + "commentStart": 85, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 94, "end": 0, "raw": "10", "start": 0, @@ -136,11 +152,13 @@ description: Result of parsing helix_ccw.kcl } ], "callee": { + "commentStart": 77, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 77, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -150,11 +168,14 @@ description: Result of parsing helix_ccw.kcl { "arguments": [ { + "commentStart": 120, "end": 0, "properties": [ { + "commentStart": 129, "end": 0, "key": { + "commentStart": 129, "end": 0, "name": "revolutions", "start": 0, @@ -163,6 +184,7 @@ description: Result of parsing helix_ccw.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 143, "end": 0, "raw": "16", "start": 0, @@ -175,8 +197,10 @@ description: Result of parsing helix_ccw.kcl } }, { + "commentStart": 154, "end": 0, "key": { + "commentStart": 154, "end": 0, "name": "angleStart", "start": 0, @@ -185,6 +209,7 @@ description: Result of parsing helix_ccw.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 167, "end": 0, "raw": "0", "start": 0, @@ -197,8 +222,10 @@ description: Result of parsing helix_ccw.kcl } }, { + "commentStart": 177, "end": 0, "key": { + "commentStart": 177, "end": 0, "name": "ccw", "start": 0, @@ -207,6 +234,7 @@ description: Result of parsing helix_ccw.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 183, "end": 0, "raw": "true", "start": 0, @@ -221,6 +249,7 @@ description: Result of parsing helix_ccw.kcl "type": "ObjectExpression" }, { + "commentStart": 196, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -228,17 +257,20 @@ description: Result of parsing helix_ccw.kcl } ], "callee": { + "commentStart": 103, "end": 0, "name": "helixRevolutions", "start": 0, "type": "Identifier" }, + "commentStart": 103, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 10, "end": 0, "start": 0, "type": "PipeExpression", @@ -254,6 +286,7 @@ description: Result of parsing helix_ccw.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/helix_simple/ast.snap b/rust/kcl-lib/tests/helix_simple/ast.snap index e4781eb26..d6224c42b 100644 --- a/rust/kcl-lib/tests/helix_simple/ast.snap +++ b/rust/kcl-lib/tests/helix_simple/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing helix_simple.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 34, "end": 0, "id": { + "commentStart": 34, "end": 0, "name": "helper001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing helix_simple.kcl { "arguments": [ { + "commentStart": 60, "end": 0, "raw": "'XZ'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing helix_simple.kcl } ], "callee": { + "commentStart": 46, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 46, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing helix_simple.kcl { "arguments": [ { + "commentStart": 86, "elements": [ { + "commentStart": 87, "end": 0, "raw": "0", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing helix_simple.kcl } }, { + "commentStart": 90, "end": 0, "raw": "0", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing helix_simple.kcl "type": "ArrayExpression" }, { + "commentStart": 94, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing helix_simple.kcl } ], "callee": { + "commentStart": 71, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 71, "end": 0, "start": 0, "type": "CallExpression", @@ -93,14 +105,17 @@ description: Result of parsing helix_simple.kcl { "type": "LabeledArg", "label": { + "commentStart": 107, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 113, "elements": [ { + "commentStart": 114, "end": 0, "raw": "0", "start": 0, @@ -112,6 +127,7 @@ description: Result of parsing helix_simple.kcl } }, { + "commentStart": 117, "end": 0, "raw": "10", "start": 0, @@ -132,12 +148,14 @@ description: Result of parsing helix_simple.kcl { "type": "LabeledArg", "label": { + "commentStart": 122, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 128, "end": 0, "start": 0, "type": "TagDeclarator", @@ -147,11 +165,13 @@ description: Result of parsing helix_simple.kcl } ], "callee": { + "commentStart": 102, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 102, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -159,6 +179,7 @@ description: Result of parsing helix_simple.kcl "unlabeled": null } ], + "commentStart": 46, "end": 0, "start": 0, "type": "PipeExpression", @@ -169,14 +190,20 @@ description: Result of parsing helix_simple.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Create a helix around an edge." + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 137, "declaration": { + "commentStart": 139, "end": 0, "id": { + "commentStart": 139, "end": 0, "name": "helixPath", "start": 0, @@ -187,12 +214,14 @@ description: Result of parsing helix_simple.kcl { "type": "LabeledArg", "label": { + "commentStart": 160, "end": 0, "name": "angleStart", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 173, "end": 0, "raw": "0", "start": 0, @@ -207,12 +236,14 @@ description: Result of parsing helix_simple.kcl { "type": "LabeledArg", "label": { + "commentStart": 178, "end": 0, "name": "ccw", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 184, "end": 0, "raw": "true", "start": 0, @@ -224,12 +255,14 @@ description: Result of parsing helix_simple.kcl { "type": "LabeledArg", "label": { + "commentStart": 192, "end": 0, "name": "revolutions", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 206, "end": 0, "raw": "5", "start": 0, @@ -244,12 +277,14 @@ description: Result of parsing helix_simple.kcl { "type": "LabeledArg", "label": { + "commentStart": 211, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 220, "end": 0, "raw": "10", "start": 0, @@ -264,12 +299,14 @@ description: Result of parsing helix_simple.kcl { "type": "LabeledArg", "label": { + "commentStart": 226, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 235, "end": 0, "raw": "5", "start": 0, @@ -284,12 +321,14 @@ description: Result of parsing helix_simple.kcl { "type": "LabeledArg", "label": { + "commentStart": 240, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 247, "end": 0, "name": "edge001", "start": 0, @@ -299,11 +338,13 @@ description: Result of parsing helix_simple.kcl } ], "callee": { + "commentStart": 151, "end": 0, "name": "helix", "start": 0, "type": "Identifier" }, + "commentStart": 151, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -320,11 +361,13 @@ description: Result of parsing helix_simple.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 137, "end": 0, "start": 0, "type": "NonCodeNode", @@ -334,18 +377,7 @@ description: Result of parsing helix_simple.kcl } ] }, - "startNodes": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Create a helix around an edge.", - "style": "line" - } - } - ] + "startNodes": [] }, "start": 0 } diff --git a/rust/kcl-lib/tests/helix_simple/program_memory.snap b/rust/kcl-lib/tests/helix_simple/program_memory.snap index 545d96ccd..7c6f05aea 100644 --- a/rust/kcl-lib/tests/helix_simple/program_memory.snap +++ b/rust/kcl-lib/tests/helix_simple/program_memory.snap @@ -37,6 +37,7 @@ description: Variables in memory after executing helix_simple.kcl 0.0 ], "tag": { + "commentStart": 128, "end": 136, "start": 128, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/i_shape/ast.snap b/rust/kcl-lib/tests/i_shape/ast.snap index e05354393..31d83d544 100644 --- a/rust/kcl-lib/tests/i_shape/ast.snap +++ b/rust/kcl-lib/tests/i_shape/ast.snap @@ -6,17 +6,22 @@ description: Result of parsing i_shape.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "d_wrist_circumference", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 24, "elements": [ { + "commentStart": 25, "end": 0, "raw": "22.8", "start": 0, @@ -28,6 +33,7 @@ description: Result of parsing i_shape.kcl } }, { + "commentStart": 31, "end": 0, "raw": "10.7", "start": 0, @@ -39,6 +45,7 @@ description: Result of parsing i_shape.kcl } }, { + "commentStart": 37, "end": 0, "raw": "16.4", "start": 0, @@ -50,6 +57,7 @@ description: Result of parsing i_shape.kcl } }, { + "commentStart": 43, "end": 0, "raw": "18.5", "start": 0, @@ -76,24 +84,32 @@ description: Result of parsing i_shape.kcl "type": "VariableDeclaration" }, { + "commentStart": 49, "declaration": { + "commentStart": 49, "end": 0, "id": { + "commentStart": 49, "end": 0, "name": "width", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 57, "end": 0, "left": { + "commentStart": 57, "end": 0, "left": { + "commentStart": 57, "end": 0, "left": { + "commentStart": 57, "computed": false, "end": 0, "object": { + "commentStart": 57, "end": 0, "name": "d_wrist_circumference", "start": 0, @@ -101,6 +117,7 @@ description: Result of parsing i_shape.kcl "type": "Identifier" }, "property": { + "commentStart": 79, "end": 0, "raw": "0", "start": 0, @@ -117,9 +134,11 @@ description: Result of parsing i_shape.kcl }, "operator": "+", "right": { + "commentStart": 84, "computed": false, "end": 0, "object": { + "commentStart": 84, "end": 0, "name": "d_wrist_circumference", "start": 0, @@ -127,6 +146,7 @@ description: Result of parsing i_shape.kcl "type": "Identifier" }, "property": { + "commentStart": 106, "end": 0, "raw": "1", "start": 0, @@ -147,9 +167,11 @@ description: Result of parsing i_shape.kcl }, "operator": "+", "right": { + "commentStart": 111, "computed": false, "end": 0, "object": { + "commentStart": 111, "end": 0, "name": "d_wrist_circumference", "start": 0, @@ -157,6 +179,7 @@ description: Result of parsing i_shape.kcl "type": "Identifier" }, "property": { + "commentStart": 133, "end": 0, "raw": "2", "start": 0, @@ -177,9 +200,11 @@ description: Result of parsing i_shape.kcl }, "operator": "+", "right": { + "commentStart": 138, "computed": false, "end": 0, "object": { + "commentStart": 138, "end": 0, "name": "d_wrist_circumference", "start": 0, @@ -187,6 +212,7 @@ description: Result of parsing i_shape.kcl "type": "Identifier" }, "property": { + "commentStart": 160, "end": 0, "raw": "3", "start": 0, @@ -215,15 +241,19 @@ description: Result of parsing i_shape.kcl "type": "VariableDeclaration" }, { + "commentStart": 163, "declaration": { + "commentStart": 163, "end": 0, "id": { + "commentStart": 163, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 172, "end": 0, "raw": "120.0", "start": 0, @@ -244,15 +274,19 @@ description: Result of parsing i_shape.kcl "type": "VariableDeclaration" }, { + "commentStart": 178, "declaration": { + "commentStart": 178, "end": 0, "id": { + "commentStart": 178, "end": 0, "name": "hand_thickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 195, "end": 0, "raw": "24.0", "start": 0, @@ -273,15 +307,19 @@ description: Result of parsing i_shape.kcl "type": "VariableDeclaration" }, { + "commentStart": 200, "declaration": { + "commentStart": 200, "end": 0, "id": { + "commentStart": 200, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 216, "end": 0, "raw": "5.0", "start": 0, @@ -302,9 +340,12 @@ description: Result of parsing i_shape.kcl "type": "VariableDeclaration" }, { + "commentStart": 219, "declaration": { + "commentStart": 386, "end": 0, "id": { + "commentStart": 386, "end": 0, "name": "brace_base", "start": 0, @@ -315,6 +356,7 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 413, "end": 0, "name": "XY", "start": 0, @@ -323,11 +365,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 399, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 399, "end": 0, "start": 0, "type": "CallExpression", @@ -336,8 +380,10 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 437, "elements": [ { + "commentStart": 438, "end": 0, "name": "corner_radius", "start": 0, @@ -345,6 +391,7 @@ description: Result of parsing i_shape.kcl "type": "Identifier" }, { + "commentStart": 453, "end": 0, "raw": "0", "start": 0, @@ -362,6 +409,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 457, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -369,11 +417,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 422, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 422, "end": 0, "start": 0, "type": "CallExpression", @@ -384,16 +434,20 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 470, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 476, "elements": [ { + "commentStart": 477, "end": 0, "left": { + "commentStart": 477, "end": 0, "name": "width", "start": 0, @@ -402,6 +456,7 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 485, "end": 0, "name": "corner_radius", "start": 0, @@ -413,6 +468,7 @@ description: Result of parsing i_shape.kcl "type": "BinaryExpression" }, { + "commentStart": 500, "end": 0, "raw": "0.0", "start": 0, @@ -432,11 +488,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 465, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 465, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -446,8 +504,10 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 535, "elements": [ { + "commentStart": 536, "end": 0, "name": "corner_radius", "start": 0, @@ -455,6 +515,7 @@ description: Result of parsing i_shape.kcl "type": "Identifier" }, { + "commentStart": 551, "end": 0, "name": "corner_radius", "start": 0, @@ -468,6 +529,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 567, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -475,11 +537,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 511, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 511, "end": 0, "start": 0, "type": "CallExpression", @@ -490,14 +554,17 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 581, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 590, "end": 0, "left": { + "commentStart": 590, "end": 0, "raw": "25.0", "start": 0, @@ -510,6 +577,7 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 597, "end": 0, "name": "corner_radius", "start": 0, @@ -523,11 +591,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 575, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 575, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -537,15 +607,18 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 641, "elements": [ { "argument": { + "commentStart": 643, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 642, "end": 0, "operator": "-", "start": 0, @@ -553,6 +626,7 @@ description: Result of parsing i_shape.kcl "type": "UnaryExpression" }, { + "commentStart": 658, "end": 0, "name": "corner_radius", "start": 0, @@ -566,6 +640,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 674, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -573,11 +648,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 617, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 617, "end": 0, "start": 0, "type": "CallExpression", @@ -588,6 +665,7 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 688, "end": 0, "name": "length", "start": 0, @@ -595,11 +673,14 @@ description: Result of parsing i_shape.kcl }, "arg": { "argument": { + "commentStart": 699, "end": 0, "left": { + "commentStart": 699, "computed": false, "end": 0, "object": { + "commentStart": 699, "end": 0, "name": "d_wrist_circumference", "start": 0, @@ -607,6 +688,7 @@ description: Result of parsing i_shape.kcl "type": "Identifier" }, "property": { + "commentStart": 721, "end": 0, "raw": "0", "start": 0, @@ -623,8 +705,10 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 727, "end": 0, "left": { + "commentStart": 727, "end": 0, "name": "corner_radius", "start": 0, @@ -633,6 +717,7 @@ description: Result of parsing i_shape.kcl }, "operator": "*", "right": { + "commentStart": 743, "end": 0, "raw": "2", "start": 0, @@ -651,6 +736,7 @@ description: Result of parsing i_shape.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 697, "end": 0, "operator": "-", "start": 0, @@ -660,11 +746,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 682, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 682, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -674,15 +762,18 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 777, "elements": [ { "argument": { + "commentStart": 779, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 778, "end": 0, "operator": "-", "start": 0, @@ -690,6 +781,7 @@ description: Result of parsing i_shape.kcl "type": "UnaryExpression" }, { + "commentStart": 794, "end": 0, "name": "corner_radius", "start": 0, @@ -703,6 +795,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 810, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -710,11 +803,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 753, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 753, "end": 0, "start": 0, "type": "CallExpression", @@ -725,18 +820,23 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 824, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 833, "end": 0, "left": { + "commentStart": 833, "end": 0, "left": { + "commentStart": 833, "end": 0, "left": { + "commentStart": 833, "end": 0, "name": "length", "start": 0, @@ -745,6 +845,7 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 842, "end": 0, "raw": "25.0", "start": 0, @@ -761,6 +862,7 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 849, "end": 0, "raw": "23.0", "start": 0, @@ -777,8 +879,10 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 857, "end": 0, "left": { + "commentStart": 857, "end": 0, "name": "corner_radius", "start": 0, @@ -787,6 +891,7 @@ description: Result of parsing i_shape.kcl }, "operator": "*", "right": { + "commentStart": 873, "end": 0, "raw": "2", "start": 0, @@ -808,11 +913,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 818, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 818, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -822,8 +929,10 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 906, "elements": [ { + "commentStart": 907, "end": 0, "name": "corner_radius", "start": 0, @@ -831,6 +940,7 @@ description: Result of parsing i_shape.kcl "type": "Identifier" }, { + "commentStart": 922, "end": 0, "name": "corner_radius", "start": 0, @@ -844,6 +954,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 938, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -851,11 +962,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 882, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 882, "end": 0, "start": 0, "type": "CallExpression", @@ -866,14 +979,17 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 952, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 961, "end": 0, "left": { + "commentStart": 961, "end": 0, "raw": "15.0", "start": 0, @@ -886,8 +1002,10 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 969, "end": 0, "left": { + "commentStart": 969, "end": 0, "name": "corner_radius", "start": 0, @@ -896,6 +1014,7 @@ description: Result of parsing i_shape.kcl }, "operator": "*", "right": { + "commentStart": 985, "end": 0, "raw": "2", "start": 0, @@ -917,11 +1036,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 946, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 946, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -931,8 +1052,10 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 1018, "elements": [ { + "commentStart": 1019, "end": 0, "name": "corner_radius", "start": 0, @@ -940,6 +1063,7 @@ description: Result of parsing i_shape.kcl "type": "Identifier" }, { + "commentStart": 1034, "end": 0, "name": "corner_radius", "start": 0, @@ -953,6 +1077,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 1050, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -960,11 +1085,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 994, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 994, "end": 0, "start": 0, "type": "CallExpression", @@ -975,14 +1102,17 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 1064, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1073, "end": 0, "left": { + "commentStart": 1073, "end": 0, "raw": "23.0", "start": 0, @@ -995,6 +1125,7 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 1080, "end": 0, "name": "corner_radius", "start": 0, @@ -1008,11 +1139,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 1058, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1058, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1022,15 +1155,18 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 1124, "elements": [ { "argument": { + "commentStart": 1126, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1125, "end": 0, "operator": "-", "start": 0, @@ -1038,6 +1174,7 @@ description: Result of parsing i_shape.kcl "type": "UnaryExpression" }, { + "commentStart": 1141, "end": 0, "name": "corner_radius", "start": 0, @@ -1051,6 +1188,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 1157, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1058,11 +1196,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 1100, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 1100, "end": 0, "start": 0, "type": "CallExpression", @@ -1073,6 +1213,7 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 1171, "end": 0, "name": "length", "start": 0, @@ -1080,12 +1221,16 @@ description: Result of parsing i_shape.kcl }, "arg": { "argument": { + "commentStart": 1182, "end": 0, "left": { + "commentStart": 1182, "end": 0, "left": { + "commentStart": 1182, "end": 0, "left": { + "commentStart": 1182, "end": 0, "name": "hand_thickness", "start": 0, @@ -1094,6 +1239,7 @@ description: Result of parsing i_shape.kcl }, "operator": "+", "right": { + "commentStart": 1199, "end": 0, "raw": "15.0", "start": 0, @@ -1110,6 +1256,7 @@ description: Result of parsing i_shape.kcl }, "operator": "+", "right": { + "commentStart": 1206, "end": 0, "raw": "15.0", "start": 0, @@ -1126,8 +1273,10 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 1214, "end": 0, "left": { + "commentStart": 1214, "end": 0, "name": "corner_radius", "start": 0, @@ -1136,6 +1285,7 @@ description: Result of parsing i_shape.kcl }, "operator": "*", "right": { + "commentStart": 1230, "end": 0, "raw": "2", "start": 0, @@ -1154,6 +1304,7 @@ description: Result of parsing i_shape.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1180, "end": 0, "operator": "-", "start": 0, @@ -1163,11 +1314,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 1165, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1165, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1177,15 +1330,18 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 1264, "elements": [ { "argument": { + "commentStart": 1266, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1265, "end": 0, "operator": "-", "start": 0, @@ -1194,12 +1350,14 @@ description: Result of parsing i_shape.kcl }, { "argument": { + "commentStart": 1282, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1281, "end": 0, "operator": "-", "start": 0, @@ -1213,6 +1371,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 1298, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1220,11 +1379,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 1240, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 1240, "end": 0, "start": 0, "type": "CallExpression", @@ -1235,6 +1396,7 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 1312, "end": 0, "name": "length", "start": 0, @@ -1242,8 +1404,10 @@ description: Result of parsing i_shape.kcl }, "arg": { "argument": { + "commentStart": 1323, "end": 0, "left": { + "commentStart": 1323, "end": 0, "raw": "23.0", "start": 0, @@ -1256,6 +1420,7 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 1330, "end": 0, "name": "corner_radius", "start": 0, @@ -1266,6 +1431,7 @@ description: Result of parsing i_shape.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1321, "end": 0, "operator": "-", "start": 0, @@ -1275,11 +1441,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 1306, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1306, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1289,8 +1457,10 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 1375, "elements": [ { + "commentStart": 1376, "end": 0, "name": "corner_radius", "start": 0, @@ -1299,12 +1469,14 @@ description: Result of parsing i_shape.kcl }, { "argument": { + "commentStart": 1392, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1391, "end": 0, "operator": "-", "start": 0, @@ -1318,6 +1490,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 1408, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1325,11 +1498,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 1351, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 1351, "end": 0, "start": 0, "type": "CallExpression", @@ -1340,14 +1515,17 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 1422, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1431, "end": 0, "left": { + "commentStart": 1431, "end": 0, "raw": "15.0", "start": 0, @@ -1360,8 +1538,10 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 1439, "end": 0, "left": { + "commentStart": 1439, "end": 0, "name": "corner_radius", "start": 0, @@ -1370,6 +1550,7 @@ description: Result of parsing i_shape.kcl }, "operator": "*", "right": { + "commentStart": 1455, "end": 0, "raw": "2", "start": 0, @@ -1391,11 +1572,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 1416, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1416, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1405,8 +1588,10 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 1488, "elements": [ { + "commentStart": 1489, "end": 0, "name": "corner_radius", "start": 0, @@ -1415,12 +1600,14 @@ description: Result of parsing i_shape.kcl }, { "argument": { + "commentStart": 1505, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1504, "end": 0, "operator": "-", "start": 0, @@ -1434,6 +1621,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 1521, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1441,11 +1629,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 1464, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 1464, "end": 0, "start": 0, "type": "CallExpression", @@ -1456,6 +1646,7 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 1535, "end": 0, "name": "length", "start": 0, @@ -1463,12 +1654,16 @@ description: Result of parsing i_shape.kcl }, "arg": { "argument": { + "commentStart": 1546, "end": 0, "left": { + "commentStart": 1546, "end": 0, "left": { + "commentStart": 1546, "end": 0, "left": { + "commentStart": 1546, "end": 0, "name": "length", "start": 0, @@ -1477,6 +1672,7 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 1555, "end": 0, "raw": "25.0", "start": 0, @@ -1493,6 +1689,7 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 1562, "end": 0, "raw": "23.0", "start": 0, @@ -1509,8 +1706,10 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 1570, "end": 0, "left": { + "commentStart": 1570, "end": 0, "name": "corner_radius", "start": 0, @@ -1519,6 +1718,7 @@ description: Result of parsing i_shape.kcl }, "operator": "*", "right": { + "commentStart": 1586, "end": 0, "raw": "2", "start": 0, @@ -1537,6 +1737,7 @@ description: Result of parsing i_shape.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1544, "end": 0, "operator": "-", "start": 0, @@ -1546,11 +1747,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 1529, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1529, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1560,15 +1763,18 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 1620, "elements": [ { "argument": { + "commentStart": 1622, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1621, "end": 0, "operator": "-", "start": 0, @@ -1577,12 +1783,14 @@ description: Result of parsing i_shape.kcl }, { "argument": { + "commentStart": 1638, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1637, "end": 0, "operator": "-", "start": 0, @@ -1596,6 +1804,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 1654, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1603,11 +1812,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 1596, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 1596, "end": 0, "start": 0, "type": "CallExpression", @@ -1618,6 +1829,7 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 1668, "end": 0, "name": "length", "start": 0, @@ -1625,17 +1837,23 @@ description: Result of parsing i_shape.kcl }, "arg": { "argument": { + "commentStart": 1679, "end": 0, "left": { + "commentStart": 1679, "end": 0, "left": { + "commentStart": 1679, "end": 0, "left": { + "commentStart": 1679, "end": 0, "left": { + "commentStart": 1679, "computed": false, "end": 0, "object": { + "commentStart": 1679, "end": 0, "name": "d_wrist_circumference", "start": 0, @@ -1643,6 +1861,7 @@ description: Result of parsing i_shape.kcl "type": "Identifier" }, "property": { + "commentStart": 1701, "end": 0, "raw": "1", "start": 0, @@ -1659,9 +1878,11 @@ description: Result of parsing i_shape.kcl }, "operator": "+", "right": { + "commentStart": 1706, "computed": false, "end": 0, "object": { + "commentStart": 1706, "end": 0, "name": "d_wrist_circumference", "start": 0, @@ -1669,6 +1890,7 @@ description: Result of parsing i_shape.kcl "type": "Identifier" }, "property": { + "commentStart": 1728, "end": 0, "raw": "2", "start": 0, @@ -1689,9 +1911,11 @@ description: Result of parsing i_shape.kcl }, "operator": "+", "right": { + "commentStart": 1733, "computed": false, "end": 0, "object": { + "commentStart": 1733, "end": 0, "name": "d_wrist_circumference", "start": 0, @@ -1699,6 +1923,7 @@ description: Result of parsing i_shape.kcl "type": "Identifier" }, "property": { + "commentStart": 1755, "end": 0, "raw": "3", "start": 0, @@ -1719,6 +1944,7 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 1760, "end": 0, "name": "hand_thickness", "start": 0, @@ -1731,6 +1957,7 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 1777, "end": 0, "name": "corner_radius", "start": 0, @@ -1741,6 +1968,7 @@ description: Result of parsing i_shape.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1677, "end": 0, "operator": "-", "start": 0, @@ -1750,11 +1978,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 1662, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1662, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1764,15 +1994,18 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 1822, "elements": [ { "argument": { + "commentStart": 1824, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1823, "end": 0, "operator": "-", "start": 0, @@ -1781,12 +2014,14 @@ description: Result of parsing i_shape.kcl }, { "argument": { + "commentStart": 1840, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1839, "end": 0, "operator": "-", "start": 0, @@ -1800,6 +2035,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 1856, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1807,11 +2043,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 1798, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 1798, "end": 0, "start": 0, "type": "CallExpression", @@ -1822,6 +2060,7 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 1870, "end": 0, "name": "length", "start": 0, @@ -1829,8 +2068,10 @@ description: Result of parsing i_shape.kcl }, "arg": { "argument": { + "commentStart": 1881, "end": 0, "left": { + "commentStart": 1881, "end": 0, "raw": "25.0", "start": 0, @@ -1843,6 +2084,7 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 1888, "end": 0, "name": "corner_radius", "start": 0, @@ -1853,6 +2095,7 @@ description: Result of parsing i_shape.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1879, "end": 0, "operator": "-", "start": 0, @@ -1862,11 +2105,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 1864, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1864, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1876,8 +2121,10 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 1933, "elements": [ { + "commentStart": 1934, "end": 0, "name": "corner_radius", "start": 0, @@ -1886,12 +2133,14 @@ description: Result of parsing i_shape.kcl }, { "argument": { + "commentStart": 1950, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1949, "end": 0, "operator": "-", "start": 0, @@ -1905,6 +2154,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 1966, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1912,11 +2162,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 1909, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 1909, "end": 0, "start": 0, "type": "CallExpression", @@ -1925,6 +2177,7 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 1980, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1932,17 +2185,20 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 1974, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1974, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 399, "end": 0, "start": 0, "type": "PipeExpression", @@ -1953,14 +2209,24 @@ description: Result of parsing i_shape.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// At first I thought this was going to be symmetric,", + "// but I measured intentionally to not be symmetric,", + "// because your wrist isn't a perfect cylindrical surface" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1982, "declaration": { + "commentStart": 1984, "end": 0, "id": { + "commentStart": 1984, "end": 0, "name": "inner", "start": 0, @@ -1971,6 +2237,7 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 2006, "end": 0, "name": "XY", "start": 0, @@ -1979,11 +2246,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 1992, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1992, "end": 0, "start": 0, "type": "CallExpression", @@ -1992,8 +2261,10 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 2030, "elements": [ { + "commentStart": 2031, "end": 0, "raw": "0", "start": 0, @@ -2005,6 +2276,7 @@ description: Result of parsing i_shape.kcl } }, { + "commentStart": 2034, "end": 0, "raw": "0", "start": 0, @@ -2022,6 +2294,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 2038, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2029,11 +2302,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 2015, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2015, "end": 0, "start": 0, "type": "CallExpression", @@ -2044,12 +2319,14 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 2052, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2061, "end": 0, "raw": "1.0", "start": 0, @@ -2063,11 +2340,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 2046, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2046, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2077,8 +2356,10 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 2095, "elements": [ { + "commentStart": 2096, "end": 0, "name": "corner_radius", "start": 0, @@ -2086,6 +2367,7 @@ description: Result of parsing i_shape.kcl "type": "Identifier" }, { + "commentStart": 2111, "end": 0, "name": "corner_radius", "start": 0, @@ -2099,6 +2381,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 2127, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2106,11 +2389,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 2071, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 2071, "end": 0, "start": 0, "type": "CallExpression", @@ -2121,14 +2406,17 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 2141, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2150, "end": 0, "left": { + "commentStart": 2150, "end": 0, "raw": "25.0", "start": 0, @@ -2141,8 +2429,10 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 2158, "end": 0, "left": { + "commentStart": 2158, "end": 0, "name": "corner_radius", "start": 0, @@ -2151,6 +2441,7 @@ description: Result of parsing i_shape.kcl }, "operator": "*", "right": { + "commentStart": 2174, "end": 0, "raw": "2", "start": 0, @@ -2172,11 +2463,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 2135, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 2135, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2186,15 +2479,18 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 2207, "elements": [ { "argument": { + "commentStart": 2209, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2208, "end": 0, "operator": "-", "start": 0, @@ -2202,6 +2498,7 @@ description: Result of parsing i_shape.kcl "type": "UnaryExpression" }, { + "commentStart": 2224, "end": 0, "name": "corner_radius", "start": 0, @@ -2215,6 +2512,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 2240, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2222,11 +2520,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 2183, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 2183, "end": 0, "start": 0, "type": "CallExpression", @@ -2237,6 +2537,7 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 2254, "end": 0, "name": "length", "start": 0, @@ -2244,6 +2545,7 @@ description: Result of parsing i_shape.kcl }, "arg": { "argument": { + "commentStart": 2264, "end": 0, "raw": "1.0", "start": 0, @@ -2254,6 +2556,7 @@ description: Result of parsing i_shape.kcl "suffix": "None" } }, + "commentStart": 2263, "end": 0, "operator": "-", "start": 0, @@ -2263,11 +2566,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 2248, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2248, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2277,15 +2582,18 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 2298, "elements": [ { "argument": { + "commentStart": 2300, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2299, "end": 0, "operator": "-", "start": 0, @@ -2294,12 +2602,14 @@ description: Result of parsing i_shape.kcl }, { "argument": { + "commentStart": 2316, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2315, "end": 0, "operator": "-", "start": 0, @@ -2313,6 +2623,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 2332, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2320,11 +2631,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 2274, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 2274, "end": 0, "start": 0, "type": "CallExpression", @@ -2335,6 +2648,7 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 2346, "end": 0, "name": "length", "start": 0, @@ -2342,8 +2656,10 @@ description: Result of parsing i_shape.kcl }, "arg": { "argument": { + "commentStart": 2357, "end": 0, "left": { + "commentStart": 2357, "end": 0, "raw": "25.0", "start": 0, @@ -2356,8 +2672,10 @@ description: Result of parsing i_shape.kcl }, "operator": "-", "right": { + "commentStart": 2365, "end": 0, "left": { + "commentStart": 2365, "end": 0, "name": "corner_radius", "start": 0, @@ -2366,6 +2684,7 @@ description: Result of parsing i_shape.kcl }, "operator": "*", "right": { + "commentStart": 2381, "end": 0, "raw": "2", "start": 0, @@ -2384,6 +2703,7 @@ description: Result of parsing i_shape.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 2355, "end": 0, "operator": "-", "start": 0, @@ -2393,11 +2713,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 2340, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 2340, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2407,8 +2729,10 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 2415, "elements": [ { + "commentStart": 2416, "end": 0, "name": "corner_radius", "start": 0, @@ -2417,12 +2741,14 @@ description: Result of parsing i_shape.kcl }, { "argument": { + "commentStart": 2432, "end": 0, "name": "corner_radius", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2431, "end": 0, "operator": "-", "start": 0, @@ -2436,6 +2762,7 @@ description: Result of parsing i_shape.kcl "type": "ArrayExpression" }, { + "commentStart": 2448, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2443,11 +2770,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 2391, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 2391, "end": 0, "start": 0, "type": "CallExpression", @@ -2456,6 +2785,7 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 2462, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2463,17 +2793,20 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 2456, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2456, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1992, "end": 0, "start": 0, "type": "PipeExpression", @@ -2489,9 +2822,12 @@ description: Result of parsing i_shape.kcl "type": "VariableDeclaration" }, { + "commentStart": 2464, "declaration": { + "commentStart": 2466, "end": 0, "id": { + "commentStart": 2466, "end": 0, "name": "final", "start": 0, @@ -2500,6 +2836,7 @@ description: Result of parsing i_shape.kcl "init": { "body": [ { + "commentStart": 2474, "end": 0, "name": "brace_base", "start": 0, @@ -2509,6 +2846,7 @@ description: Result of parsing i_shape.kcl { "arguments": [ { + "commentStart": 2495, "end": 0, "name": "inner", "start": 0, @@ -2516,6 +2854,7 @@ description: Result of parsing i_shape.kcl "type": "Identifier" }, { + "commentStart": 2502, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2523,11 +2862,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 2490, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 2490, "end": 0, "start": 0, "type": "CallExpression", @@ -2538,12 +2879,14 @@ description: Result of parsing i_shape.kcl { "type": "LabeledArg", "label": { + "commentStart": 2518, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2527, "end": 0, "raw": "3.0", "start": 0, @@ -2557,11 +2900,13 @@ description: Result of parsing i_shape.kcl } ], "callee": { + "commentStart": 2510, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2510, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2569,6 +2914,7 @@ description: Result of parsing i_shape.kcl "unlabeled": null } ], + "commentStart": 2474, "end": 0, "start": 0, "type": "PipeExpression", @@ -2584,43 +2930,13 @@ description: Result of parsing i_shape.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { - "4": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "At first I thought this was going to be symmetric,", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "but I measured intentionally to not be symmetric,", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "because your wrist isn't a perfect cylindrical surface", - "style": "line" - } - } - ], "5": [ { + "commentStart": 1982, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2631,6 +2947,7 @@ description: Result of parsing i_shape.kcl ], "6": [ { + "commentStart": 2464, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/if_else/ast.snap b/rust/kcl-lib/tests/if_else/ast.snap index 34b9c5b73..0c06bd4d4 100644 --- a/rust/kcl-lib/tests/if_else/ast.snap +++ b/rust/kcl-lib/tests/if_else/ast.snap @@ -6,16 +6,21 @@ description: Result of parsing if_else.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 48, "end": 0, "id": { + "commentStart": 48, "end": 0, "name": "a", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 52, "cond": { + "commentStart": 55, "end": 0, "raw": "true", "start": 0, @@ -26,7 +31,9 @@ description: Result of parsing if_else.kcl "digest": null, "else_ifs": [ { + "commentStart": 68, "cond": { + "commentStart": 76, "end": 0, "raw": "true", "start": 0, @@ -40,8 +47,10 @@ description: Result of parsing if_else.kcl "then_val": { "body": [ { + "commentStart": 85, "end": 0, "expression": { + "commentStart": 85, "end": 0, "raw": "4", "start": 0, @@ -57,6 +66,7 @@ description: Result of parsing if_else.kcl "type": "ExpressionStatement" } ], + "commentStart": 81, "end": 0, "start": 0 }, @@ -67,8 +77,10 @@ description: Result of parsing if_else.kcl "final_else": { "body": [ { + "commentStart": 98, "end": 0, "expression": { + "commentStart": 98, "end": 0, "raw": "5", "start": 0, @@ -84,6 +96,7 @@ description: Result of parsing if_else.kcl "type": "ExpressionStatement" } ], + "commentStart": 98, "end": 0, "start": 0 }, @@ -91,8 +104,10 @@ description: Result of parsing if_else.kcl "then_val": { "body": [ { + "commentStart": 64, "end": 0, "expression": { + "commentStart": 64, "end": 0, "raw": "3", "start": 0, @@ -108,6 +123,7 @@ description: Result of parsing if_else.kcl "type": "ExpressionStatement" } ], + "commentStart": 64, "end": 0, "start": 0 }, @@ -124,10 +140,12 @@ description: Result of parsing if_else.kcl "type": "VariableDeclaration" }, { + "commentStart": 102, "end": 0, "expression": { "arguments": [ { + "commentStart": 114, "end": 0, "name": "a", "start": 0, @@ -135,6 +153,7 @@ description: Result of parsing if_else.kcl "type": "Identifier" }, { + "commentStart": 117, "end": 0, "raw": "3", "start": 0, @@ -146,6 +165,7 @@ description: Result of parsing if_else.kcl } }, { + "commentStart": 120, "end": 0, "raw": "0.001", "start": 0, @@ -157,6 +177,7 @@ description: Result of parsing if_else.kcl } }, { + "commentStart": 127, "end": 0, "raw": "\"the 'if' branch gets returned\"", "start": 0, @@ -166,11 +187,13 @@ description: Result of parsing if_else.kcl } ], "callee": { + "commentStart": 102, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 102, "end": 0, "start": 0, "type": "CallExpression", @@ -181,16 +204,21 @@ description: Result of parsing if_else.kcl "type": "ExpressionStatement" }, { + "commentStart": 159, "declaration": { + "commentStart": 161, "end": 0, "id": { + "commentStart": 161, "end": 0, "name": "b", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 165, "cond": { + "commentStart": 168, "end": 0, "raw": "false", "start": 0, @@ -201,7 +229,9 @@ description: Result of parsing if_else.kcl "digest": null, "else_ifs": [ { + "commentStart": 182, "cond": { + "commentStart": 190, "end": 0, "raw": "true", "start": 0, @@ -215,8 +245,10 @@ description: Result of parsing if_else.kcl "then_val": { "body": [ { + "commentStart": 199, "end": 0, "expression": { + "commentStart": 199, "end": 0, "raw": "4", "start": 0, @@ -232,6 +264,7 @@ description: Result of parsing if_else.kcl "type": "ExpressionStatement" } ], + "commentStart": 195, "end": 0, "start": 0 }, @@ -242,8 +275,10 @@ description: Result of parsing if_else.kcl "final_else": { "body": [ { + "commentStart": 212, "end": 0, "expression": { + "commentStart": 212, "end": 0, "raw": "5", "start": 0, @@ -259,6 +294,7 @@ description: Result of parsing if_else.kcl "type": "ExpressionStatement" } ], + "commentStart": 212, "end": 0, "start": 0 }, @@ -266,8 +302,10 @@ description: Result of parsing if_else.kcl "then_val": { "body": [ { + "commentStart": 178, "end": 0, "expression": { + "commentStart": 178, "end": 0, "raw": "3", "start": 0, @@ -283,6 +321,7 @@ description: Result of parsing if_else.kcl "type": "ExpressionStatement" } ], + "commentStart": 178, "end": 0, "start": 0 }, @@ -299,10 +338,12 @@ description: Result of parsing if_else.kcl "type": "VariableDeclaration" }, { + "commentStart": 216, "end": 0, "expression": { "arguments": [ { + "commentStart": 228, "end": 0, "name": "b", "start": 0, @@ -310,6 +351,7 @@ description: Result of parsing if_else.kcl "type": "Identifier" }, { + "commentStart": 231, "end": 0, "raw": "4", "start": 0, @@ -321,6 +363,7 @@ description: Result of parsing if_else.kcl } }, { + "commentStart": 234, "end": 0, "raw": "0.001", "start": 0, @@ -332,6 +375,7 @@ description: Result of parsing if_else.kcl } }, { + "commentStart": 241, "end": 0, "raw": "\"the 'else if' branch gets returned\"", "start": 0, @@ -341,11 +385,13 @@ description: Result of parsing if_else.kcl } ], "callee": { + "commentStart": 216, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 216, "end": 0, "start": 0, "type": "CallExpression", @@ -356,16 +402,21 @@ description: Result of parsing if_else.kcl "type": "ExpressionStatement" }, { + "commentStart": 278, "declaration": { + "commentStart": 280, "end": 0, "id": { + "commentStart": 280, "end": 0, "name": "c", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 284, "cond": { + "commentStart": 287, "end": 0, "raw": "false", "start": 0, @@ -376,7 +427,9 @@ description: Result of parsing if_else.kcl "digest": null, "else_ifs": [ { + "commentStart": 301, "cond": { + "commentStart": 309, "end": 0, "raw": "false", "start": 0, @@ -390,8 +443,10 @@ description: Result of parsing if_else.kcl "then_val": { "body": [ { + "commentStart": 319, "end": 0, "expression": { + "commentStart": 319, "end": 0, "raw": "4", "start": 0, @@ -407,6 +462,7 @@ description: Result of parsing if_else.kcl "type": "ExpressionStatement" } ], + "commentStart": 315, "end": 0, "start": 0 }, @@ -417,8 +473,10 @@ description: Result of parsing if_else.kcl "final_else": { "body": [ { + "commentStart": 332, "end": 0, "expression": { + "commentStart": 332, "end": 0, "raw": "5", "start": 0, @@ -434,6 +492,7 @@ description: Result of parsing if_else.kcl "type": "ExpressionStatement" } ], + "commentStart": 332, "end": 0, "start": 0 }, @@ -441,8 +500,10 @@ description: Result of parsing if_else.kcl "then_val": { "body": [ { + "commentStart": 297, "end": 0, "expression": { + "commentStart": 297, "end": 0, "raw": "3", "start": 0, @@ -458,6 +519,7 @@ description: Result of parsing if_else.kcl "type": "ExpressionStatement" } ], + "commentStart": 297, "end": 0, "start": 0 }, @@ -474,10 +536,12 @@ description: Result of parsing if_else.kcl "type": "VariableDeclaration" }, { + "commentStart": 336, "end": 0, "expression": { "arguments": [ { + "commentStart": 348, "end": 0, "name": "c", "start": 0, @@ -485,6 +549,7 @@ description: Result of parsing if_else.kcl "type": "Identifier" }, { + "commentStart": 351, "end": 0, "raw": "5", "start": 0, @@ -496,6 +561,7 @@ description: Result of parsing if_else.kcl } }, { + "commentStart": 354, "end": 0, "raw": "0.001", "start": 0, @@ -507,6 +573,7 @@ description: Result of parsing if_else.kcl } }, { + "commentStart": 361, "end": 0, "raw": "\"the 'else' branch gets returned\"", "start": 0, @@ -516,11 +583,13 @@ description: Result of parsing if_else.kcl } ], "callee": { + "commentStart": 336, "end": 0, "name": "assertEqual", "start": 0, "type": "Identifier" }, + "commentStart": 336, "end": 0, "start": 0, "type": "CallExpression", @@ -531,11 +600,13 @@ description: Result of parsing if_else.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 159, "end": 0, "start": 0, "type": "NonCodeNode", @@ -546,6 +617,7 @@ description: Result of parsing if_else.kcl ], "3": [ { + "commentStart": 278, "end": 0, "start": 0, "type": "NonCodeNode", @@ -557,6 +629,7 @@ description: Result of parsing if_else.kcl }, "startNodes": [ { + "commentStart": 0, "end": 0, "start": 0, "type": "NonCodeNode", @@ -567,6 +640,7 @@ description: Result of parsing if_else.kcl } }, { + "commentStart": 45, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/import_constant/ast.snap b/rust/kcl-lib/tests/import_constant/ast.snap index 243254465..6ab74e12a 100644 --- a/rust/kcl-lib/tests/import_constant/ast.snap +++ b/rust/kcl-lib/tests/import_constant/ast.snap @@ -6,6 +6,7 @@ description: Result of parsing import_constant.kcl "Ok": { "body": [ { + "commentStart": 0, "end": 0, "path": { "type": "Kcl", @@ -16,8 +17,10 @@ description: Result of parsing import_constant.kcl "items": [ { "alias": null, + "commentStart": 7, "end": 0, "name": { + "commentStart": 7, "end": 0, "name": "three", "start": 0, @@ -33,6 +36,7 @@ description: Result of parsing import_constant.kcl "type": "ImportStatement" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/import_cycle1/ast.snap b/rust/kcl-lib/tests/import_cycle1/ast.snap index 0c0747c12..3a24bff9e 100644 --- a/rust/kcl-lib/tests/import_cycle1/ast.snap +++ b/rust/kcl-lib/tests/import_cycle1/ast.snap @@ -6,6 +6,7 @@ description: Result of parsing import_cycle1.kcl "Ok": { "body": [ { + "commentStart": 33, "end": 0, "path": { "type": "Kcl", @@ -16,8 +17,10 @@ description: Result of parsing import_cycle1.kcl "items": [ { "alias": null, + "commentStart": 42, "end": 0, "name": { + "commentStart": 42, "end": 0, "name": "two", "start": 0, @@ -33,9 +36,12 @@ description: Result of parsing import_cycle1.kcl "type": "ImportStatement" }, { + "commentStart": 70, "declaration": { + "commentStart": 82, "end": 0, "id": { + "commentStart": 82, "end": 0, "name": "one", "start": 0, @@ -46,15 +52,18 @@ description: Result of parsing import_cycle1.kcl "body": [ { "argument": { + "commentStart": 99, "end": 0, "left": { "arguments": [], "callee": { + "commentStart": 99, "end": 0, "name": "two", "start": 0, "type": "Identifier" }, + "commentStart": 99, "end": 0, "start": 0, "type": "CallExpression", @@ -62,6 +71,7 @@ description: Result of parsing import_cycle1.kcl }, "operator": "-", "right": { + "commentStart": 107, "end": 0, "raw": "1", "start": 0, @@ -76,15 +86,18 @@ description: Result of parsing import_cycle1.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 92, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 88, "end": 0, "start": 0 }, + "commentStart": 85, "end": 0, "params": [], "start": 0, @@ -102,11 +115,14 @@ description: Result of parsing import_cycle1.kcl "visibility": "export" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 1, "end": 0, "name": "settings", "start": 0, @@ -114,8 +130,10 @@ description: Result of parsing import_cycle1.kcl }, "properties": [ { + "commentStart": 10, "end": 0, "key": { + "commentStart": 10, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -124,6 +142,7 @@ description: Result of parsing import_cycle1.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 30, "end": 0, "name": "in", "start": 0, @@ -140,6 +159,7 @@ description: Result of parsing import_cycle1.kcl "nonCodeNodes": { "0": [ { + "commentStart": 70, "end": 0, "start": 0, "type": "NonCodeNode", @@ -149,7 +169,17 @@ description: Result of parsing import_cycle1.kcl } ] }, - "startNodes": [] + "startNodes": [ + { + "commentStart": 33, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLine" + } + } + ] }, "start": 0 } diff --git a/rust/kcl-lib/tests/import_cycle1/execution_error.snap b/rust/kcl-lib/tests/import_cycle1/execution_error.snap index 0fa2d6ca2..b682c0315 100644 --- a/rust/kcl-lib/tests/import_cycle1/execution_error.snap +++ b/rust/kcl-lib/tests/import_cycle1/execution_error.snap @@ -7,10 +7,10 @@ KCL ImportCycle error × import cycle: circular import of modules is not allowed: tests/ │ import_cycle1/import_cycle2.kcl -> tests/import_cycle1/import_cycle3.kcl │ -> tests/import_cycle1/input.kcl - ╭─[2:1] - 1 │ @settings(defaultLengthUnit = in) - 2 │ import two from "import_cycle2.kcl" + ╭─[3:1] + 2 │ + 3 │ import two from "import_cycle2.kcl" · ─────────────────┬───────────────── · ╰── tests/import_cycle1/input.kcl - 3 │ + 4 │ ╰──── diff --git a/rust/kcl-lib/tests/import_cycle1/import_cycle2.kcl b/rust/kcl-lib/tests/import_cycle1/import_cycle2.kcl index 7f3b41cd2..1421085b8 100644 --- a/rust/kcl-lib/tests/import_cycle1/import_cycle2.kcl +++ b/rust/kcl-lib/tests/import_cycle1/import_cycle2.kcl @@ -1,4 +1,5 @@ @settings(defaultLengthUnit = mm) + import three from "import_cycle3.kcl" export fn two() { diff --git a/rust/kcl-lib/tests/import_cycle1/import_cycle3.kcl b/rust/kcl-lib/tests/import_cycle1/import_cycle3.kcl index 6e9867887..c6a16fac7 100644 --- a/rust/kcl-lib/tests/import_cycle1/import_cycle3.kcl +++ b/rust/kcl-lib/tests/import_cycle1/import_cycle3.kcl @@ -1,4 +1,5 @@ @settings(defaultLengthUnit = in) + import one from "input.kcl" export fn three() { diff --git a/rust/kcl-lib/tests/import_cycle1/input.kcl b/rust/kcl-lib/tests/import_cycle1/input.kcl index 6d1cb3751..dc8f4307f 100644 --- a/rust/kcl-lib/tests/import_cycle1/input.kcl +++ b/rust/kcl-lib/tests/import_cycle1/input.kcl @@ -1,4 +1,5 @@ @settings(defaultLengthUnit = in) + import two from "import_cycle2.kcl" export fn one() { diff --git a/rust/kcl-lib/tests/import_cycle1/unparsed.snap b/rust/kcl-lib/tests/import_cycle1/unparsed.snap index 8e02586c4..23a855581 100644 --- a/rust/kcl-lib/tests/import_cycle1/unparsed.snap +++ b/rust/kcl-lib/tests/import_cycle1/unparsed.snap @@ -3,6 +3,7 @@ source: kcl-lib/src/simulation_tests.rs description: Result of unparsing import_cycle1.kcl --- @settings(defaultLengthUnit = in) + import two from "import_cycle2.kcl" export fn one() { diff --git a/rust/kcl-lib/tests/import_cycle1/unparsed@import_cycle2.kcl.snap b/rust/kcl-lib/tests/import_cycle1/unparsed@import_cycle2.kcl.snap index a6ece1988..50f936581 100644 --- a/rust/kcl-lib/tests/import_cycle1/unparsed@import_cycle2.kcl.snap +++ b/rust/kcl-lib/tests/import_cycle1/unparsed@import_cycle2.kcl.snap @@ -3,6 +3,7 @@ source: kcl-lib/src/simulation_tests.rs description: Result of unparsing tests/import_cycle1/import_cycle2.kcl --- @settings(defaultLengthUnit = mm) + import three from "import_cycle3.kcl" export fn two() { diff --git a/rust/kcl-lib/tests/import_cycle1/unparsed@import_cycle3.kcl.snap b/rust/kcl-lib/tests/import_cycle1/unparsed@import_cycle3.kcl.snap index 9a193d3d4..c597c786e 100644 --- a/rust/kcl-lib/tests/import_cycle1/unparsed@import_cycle3.kcl.snap +++ b/rust/kcl-lib/tests/import_cycle1/unparsed@import_cycle3.kcl.snap @@ -3,6 +3,7 @@ source: kcl-lib/src/simulation_tests.rs description: Result of unparsing tests/import_cycle1/import_cycle3.kcl --- @settings(defaultLengthUnit = in) + import one from "input.kcl" export fn three() { diff --git a/rust/kcl-lib/tests/import_export/ast.snap b/rust/kcl-lib/tests/import_export/ast.snap index 0a57ed418..6b3221f1a 100644 --- a/rust/kcl-lib/tests/import_export/ast.snap +++ b/rust/kcl-lib/tests/import_export/ast.snap @@ -6,6 +6,7 @@ description: Result of parsing import_export.kcl "Ok": { "body": [ { + "commentStart": 0, "end": 0, "path": { "type": "Kcl", @@ -16,8 +17,10 @@ description: Result of parsing import_export.kcl "items": [ { "alias": null, + "commentStart": 7, "end": 0, "name": { + "commentStart": 7, "end": 0, "name": "three", "start": 0, @@ -33,6 +36,7 @@ description: Result of parsing import_export.kcl "type": "ImportStatement" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/import_file_not_exist_error/ast.snap b/rust/kcl-lib/tests/import_file_not_exist_error/ast.snap index 2f6df7f95..231acb04b 100644 --- a/rust/kcl-lib/tests/import_file_not_exist_error/ast.snap +++ b/rust/kcl-lib/tests/import_file_not_exist_error/ast.snap @@ -6,6 +6,7 @@ description: Result of parsing import_file_not_exist_error.kcl "Ok": { "body": [ { + "commentStart": 0, "end": 0, "path": { "type": "Kcl", @@ -16,8 +17,10 @@ description: Result of parsing import_file_not_exist_error.kcl "items": [ { "alias": null, + "commentStart": 7, "end": 0, "name": { + "commentStart": 7, "end": 0, "name": "hotdog", "start": 0, @@ -33,6 +36,7 @@ description: Result of parsing import_file_not_exist_error.kcl "type": "ImportStatement" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/import_file_parse_error/ast.snap b/rust/kcl-lib/tests/import_file_parse_error/ast.snap index 6308d4238..6e60e5de0 100644 --- a/rust/kcl-lib/tests/import_file_parse_error/ast.snap +++ b/rust/kcl-lib/tests/import_file_parse_error/ast.snap @@ -6,6 +6,7 @@ description: Result of parsing import_file_parse_error.kcl "Ok": { "body": [ { + "commentStart": 0, "end": 0, "path": { "type": "Kcl", @@ -16,8 +17,10 @@ description: Result of parsing import_file_parse_error.kcl "items": [ { "alias": null, + "commentStart": 7, "end": 0, "name": { + "commentStart": 7, "end": 0, "name": "hotdog", "start": 0, @@ -33,6 +36,7 @@ description: Result of parsing import_file_parse_error.kcl "type": "ImportStatement" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/import_foreign/ast.snap b/rust/kcl-lib/tests/import_foreign/ast.snap index 0c0cb541a..cc7c549ce 100644 --- a/rust/kcl-lib/tests/import_foreign/ast.snap +++ b/rust/kcl-lib/tests/import_foreign/ast.snap @@ -6,6 +6,7 @@ description: Result of parsing import_foreign.kcl "Ok": { "body": [ { + "commentStart": 0, "end": 0, "path": { "type": "Foreign", @@ -14,6 +15,7 @@ description: Result of parsing import_foreign.kcl "selector": { "type": "None", "alias": { + "commentStart": 32, "end": 0, "name": "cube", "start": 0, @@ -25,15 +27,19 @@ description: Result of parsing import_foreign.kcl "type": "ImportStatement" }, { + "commentStart": 36, "declaration": { + "commentStart": 38, "end": 0, "id": { + "commentStart": 38, "end": 0, "name": "model", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 46, "end": 0, "name": "cube", "start": 0, @@ -50,11 +56,13 @@ description: Result of parsing import_foreign.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 36, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/import_function_not_sketch/ast.snap b/rust/kcl-lib/tests/import_function_not_sketch/ast.snap index 2278de364..6c6d7463f 100644 --- a/rust/kcl-lib/tests/import_function_not_sketch/ast.snap +++ b/rust/kcl-lib/tests/import_function_not_sketch/ast.snap @@ -6,6 +6,7 @@ description: Result of parsing import_function_not_sketch.kcl "Ok": { "body": [ { + "commentStart": 33, "end": 0, "path": { "type": "Kcl", @@ -16,8 +17,10 @@ description: Result of parsing import_function_not_sketch.kcl "items": [ { "alias": null, + "commentStart": 42, "end": 0, "name": { + "commentStart": 42, "end": 0, "name": "two", "start": 0, @@ -33,9 +36,12 @@ description: Result of parsing import_function_not_sketch.kcl "type": "ImportStatement" }, { + "commentStart": 69, "declaration": { + "commentStart": 81, "end": 0, "id": { + "commentStart": 81, "end": 0, "name": "one", "start": 0, @@ -46,15 +52,18 @@ description: Result of parsing import_function_not_sketch.kcl "body": [ { "argument": { + "commentStart": 98, "end": 0, "left": { "arguments": [], "callee": { + "commentStart": 98, "end": 0, "name": "two", "start": 0, "type": "Identifier" }, + "commentStart": 98, "end": 0, "start": 0, "type": "CallExpression", @@ -62,6 +71,7 @@ description: Result of parsing import_function_not_sketch.kcl }, "operator": "-", "right": { + "commentStart": 106, "end": 0, "raw": "1", "start": 0, @@ -76,15 +86,18 @@ description: Result of parsing import_function_not_sketch.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 91, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 87, "end": 0, "start": 0 }, + "commentStart": 84, "end": 0, "params": [], "start": 0, @@ -102,11 +115,14 @@ description: Result of parsing import_function_not_sketch.kcl "visibility": "export" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 1, "end": 0, "name": "settings", "start": 0, @@ -114,8 +130,10 @@ description: Result of parsing import_function_not_sketch.kcl }, "properties": [ { + "commentStart": 10, "end": 0, "key": { + "commentStart": 10, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -124,6 +142,7 @@ description: Result of parsing import_function_not_sketch.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 30, "end": 0, "name": "in", "start": 0, @@ -140,6 +159,7 @@ description: Result of parsing import_function_not_sketch.kcl "nonCodeNodes": { "0": [ { + "commentStart": 69, "end": 0, "start": 0, "type": "NonCodeNode", @@ -149,7 +169,17 @@ description: Result of parsing import_function_not_sketch.kcl } ] }, - "startNodes": [] + "startNodes": [ + { + "commentStart": 33, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLine" + } + } + ] }, "start": 0 } diff --git a/rust/kcl-lib/tests/import_function_not_sketch/input.kcl b/rust/kcl-lib/tests/import_function_not_sketch/input.kcl index 7f7396771..951485510 100644 --- a/rust/kcl-lib/tests/import_function_not_sketch/input.kcl +++ b/rust/kcl-lib/tests/import_function_not_sketch/input.kcl @@ -1,4 +1,5 @@ @settings(defaultLengthUnit = in) + import two from "my_functions.kcl" export fn one() { diff --git a/rust/kcl-lib/tests/import_function_not_sketch/my_functions.kcl b/rust/kcl-lib/tests/import_function_not_sketch/my_functions.kcl index 4e4de9cac..a5f5f3fc5 100644 --- a/rust/kcl-lib/tests/import_function_not_sketch/my_functions.kcl +++ b/rust/kcl-lib/tests/import_function_not_sketch/my_functions.kcl @@ -1,6 +1,5 @@ @settings(defaultLengthUnit = mm) - export part001 = startSketchOn('XY') |> startProfileAt([4, 12], %) |> line(end = [2, 0]) diff --git a/rust/kcl-lib/tests/import_function_not_sketch/unparsed.snap b/rust/kcl-lib/tests/import_function_not_sketch/unparsed.snap index 91586d47e..74a4cfdd5 100644 --- a/rust/kcl-lib/tests/import_function_not_sketch/unparsed.snap +++ b/rust/kcl-lib/tests/import_function_not_sketch/unparsed.snap @@ -3,6 +3,7 @@ source: kcl-lib/src/simulation_tests.rs description: Result of unparsing import_function_not_sketch.kcl --- @settings(defaultLengthUnit = in) + import two from "my_functions.kcl" export fn one() { diff --git a/rust/kcl-lib/tests/import_function_not_sketch/unparsed@my_functions.kcl.snap b/rust/kcl-lib/tests/import_function_not_sketch/unparsed@my_functions.kcl.snap index 50f794040..b8581c544 100644 --- a/rust/kcl-lib/tests/import_function_not_sketch/unparsed@my_functions.kcl.snap +++ b/rust/kcl-lib/tests/import_function_not_sketch/unparsed@my_functions.kcl.snap @@ -4,7 +4,6 @@ description: Result of unparsing tests/import_function_not_sketch/my_functions.k --- @settings(defaultLengthUnit = mm) - export part001 = startSketchOn('XY') |> startProfileAt([4, 12], %) |> line(end = [2, 0]) diff --git a/rust/kcl-lib/tests/import_glob/ast.snap b/rust/kcl-lib/tests/import_glob/ast.snap index d5fedfcd5..9de80762d 100644 --- a/rust/kcl-lib/tests/import_glob/ast.snap +++ b/rust/kcl-lib/tests/import_glob/ast.snap @@ -6,12 +6,14 @@ description: Result of parsing import_glob.kcl "Ok": { "body": [ { + "commentStart": 0, "end": 0, "path": { "type": "Kcl", "filename": "export_constant.kcl" }, "selector": { + "commentStart": 7, "end": 0, "start": 0, "type": "Glob" @@ -21,6 +23,7 @@ description: Result of parsing import_glob.kcl "type": "ImportStatement" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/import_side_effect/ast.snap b/rust/kcl-lib/tests/import_side_effect/ast.snap index a10196372..5380d3bdf 100644 --- a/rust/kcl-lib/tests/import_side_effect/ast.snap +++ b/rust/kcl-lib/tests/import_side_effect/ast.snap @@ -6,6 +6,7 @@ description: Result of parsing import_side_effect.kcl "Ok": { "body": [ { + "commentStart": 0, "end": 0, "path": { "type": "Kcl", @@ -16,8 +17,10 @@ description: Result of parsing import_side_effect.kcl "items": [ { "alias": null, + "commentStart": 7, "end": 0, "name": { + "commentStart": 7, "end": 0, "name": "foo", "start": 0, @@ -33,6 +36,7 @@ description: Result of parsing import_side_effect.kcl "type": "ImportStatement" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/import_transform/ast.snap b/rust/kcl-lib/tests/import_transform/ast.snap index 12a6c933f..5bf58f9ee 100644 --- a/rust/kcl-lib/tests/import_transform/ast.snap +++ b/rust/kcl-lib/tests/import_transform/ast.snap @@ -6,6 +6,7 @@ description: Result of parsing import_transform.kcl "Ok": { "body": [ { + "commentStart": 0, "end": 0, "path": { "type": "Foreign", @@ -14,6 +15,7 @@ description: Result of parsing import_transform.kcl "selector": { "type": "None", "alias": { + "commentStart": 38, "end": 0, "name": "screw", "start": 0, @@ -25,10 +27,12 @@ description: Result of parsing import_transform.kcl "type": "ImportStatement" }, { + "commentStart": 43, "end": 0, "expression": { "body": [ { + "commentStart": 45, "end": 0, "name": "screw", "start": 0, @@ -40,12 +44,14 @@ description: Result of parsing import_transform.kcl { "type": "LabeledArg", "label": { + "commentStart": 81, "end": 0, "name": "roll", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 88, "end": 0, "raw": "3.14", "start": 0, @@ -60,12 +66,14 @@ description: Result of parsing import_transform.kcl { "type": "LabeledArg", "label": { + "commentStart": 101, "end": 0, "name": "pitch", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 109, "end": 0, "raw": "3.14", "start": 0, @@ -80,12 +88,14 @@ description: Result of parsing import_transform.kcl { "type": "LabeledArg", "label": { + "commentStart": 122, "end": 0, "name": "yaw", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 128, "end": 0, "raw": "3.14", "start": 0, @@ -99,16 +109,19 @@ description: Result of parsing import_transform.kcl } ], "callee": { + "commentStart": 56, "end": 0, "name": "rotate", "start": 0, "type": "Identifier" }, + "commentStart": 56, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 71, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -120,14 +133,17 @@ description: Result of parsing import_transform.kcl { "type": "LabeledArg", "label": { + "commentStart": 159, "end": 0, "name": "translate", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 171, "elements": [ { + "commentStart": 172, "end": 0, "raw": "3.14", "start": 0, @@ -139,6 +155,7 @@ description: Result of parsing import_transform.kcl } }, { + "commentStart": 178, "end": 0, "raw": "3.14", "start": 0, @@ -150,6 +167,7 @@ description: Result of parsing import_transform.kcl } }, { + "commentStart": 184, "end": 0, "raw": "3.14", "start": 0, @@ -169,16 +187,19 @@ description: Result of parsing import_transform.kcl } ], "callee": { + "commentStart": 146, "end": 0, "name": "translate", "start": 0, "type": "Identifier" }, + "commentStart": 146, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 156, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -190,14 +211,17 @@ description: Result of parsing import_transform.kcl { "type": "LabeledArg", "label": { + "commentStart": 205, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 213, "elements": [ { + "commentStart": 214, "end": 0, "raw": "3.14", "start": 0, @@ -209,6 +233,7 @@ description: Result of parsing import_transform.kcl } }, { + "commentStart": 220, "end": 0, "raw": "3.14", "start": 0, @@ -220,6 +245,7 @@ description: Result of parsing import_transform.kcl } }, { + "commentStart": 226, "end": 0, "raw": "3.14", "start": 0, @@ -239,16 +265,19 @@ description: Result of parsing import_transform.kcl } ], "callee": { + "commentStart": 196, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, + "commentStart": 196, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 202, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -256,6 +285,7 @@ description: Result of parsing import_transform.kcl } } ], + "commentStart": 45, "end": 0, "start": 0, "type": "PipeExpression", @@ -266,11 +296,13 @@ description: Result of parsing import_transform.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 43, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/import_whole/artifact_graph_flowchart.snap.md b/rust/kcl-lib/tests/import_whole/artifact_graph_flowchart.snap.md index 822c27b16..fcfabb01d 100644 --- a/rust/kcl-lib/tests/import_whole/artifact_graph_flowchart.snap.md +++ b/rust/kcl-lib/tests/import_whole/artifact_graph_flowchart.snap.md @@ -1,12 +1,12 @@ ```mermaid flowchart LR subgraph path2 [Path] - 2["Path
[61, 97, 3]"] - 3["Segment
[61, 97, 3]"] + 2["Path
[62, 98, 3]"] + 3["Segment
[62, 98, 3]"] 4[Solid2d] end - 1["Plane
[36, 55, 3]"] - 5["Sweep Extrusion
[103, 123, 3]"] + 1["Plane
[37, 56, 3]"] + 5["Sweep Extrusion
[104, 124, 3]"] 6[Wall] 7["Cap Start"] 8["Cap End"] diff --git a/rust/kcl-lib/tests/import_whole/ast.snap b/rust/kcl-lib/tests/import_whole/ast.snap index b137177b7..7f2e75536 100644 --- a/rust/kcl-lib/tests/import_whole/ast.snap +++ b/rust/kcl-lib/tests/import_whole/ast.snap @@ -6,6 +6,7 @@ description: Result of parsing import_whole.kcl "Ok": { "body": [ { + "commentStart": 33, "end": 0, "path": { "type": "Kcl", @@ -14,6 +15,7 @@ description: Result of parsing import_whole.kcl "selector": { "type": "None", "alias": { + "commentStart": 64, "end": 0, "name": "foo", "start": 0, @@ -25,9 +27,12 @@ description: Result of parsing import_whole.kcl "type": "ImportStatement" }, { + "commentStart": 67, "declaration": { + "commentStart": 69, "end": 0, "id": { + "commentStart": 69, "end": 0, "name": "bar", "start": 0, @@ -36,6 +41,7 @@ description: Result of parsing import_whole.kcl "init": { "body": [ { + "commentStart": 75, "end": 0, "name": "foo", "start": 0, @@ -47,14 +53,17 @@ description: Result of parsing import_whole.kcl { "type": "LabeledArg", "label": { + "commentStart": 90, "end": 0, "name": "faces", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 98, "elements": [ { + "commentStart": 99, "end": 0, "raw": "'end'", "start": 0, @@ -72,12 +81,14 @@ description: Result of parsing import_whole.kcl { "type": "LabeledArg", "label": { + "commentStart": 107, "end": 0, "name": "thickness", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 119, "end": 0, "raw": "0.25", "start": 0, @@ -91,11 +102,13 @@ description: Result of parsing import_whole.kcl } ], "callee": { + "commentStart": 84, "end": 0, "name": "shell", "start": 0, "type": "Identifier" }, + "commentStart": 84, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -103,6 +116,7 @@ description: Result of parsing import_whole.kcl "unlabeled": null } ], + "commentStart": 75, "end": 0, "start": 0, "type": "PipeExpression", @@ -118,11 +132,14 @@ description: Result of parsing import_whole.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 1, "end": 0, "name": "settings", "start": 0, @@ -130,8 +147,10 @@ description: Result of parsing import_whole.kcl }, "properties": [ { + "commentStart": 10, "end": 0, "key": { + "commentStart": 10, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -140,6 +159,7 @@ description: Result of parsing import_whole.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 30, "end": 0, "name": "mm", "start": 0, @@ -156,6 +176,7 @@ description: Result of parsing import_whole.kcl "nonCodeNodes": { "0": [ { + "commentStart": 67, "end": 0, "start": 0, "type": "NonCodeNode", @@ -165,7 +186,17 @@ description: Result of parsing import_whole.kcl } ] }, - "startNodes": [] + "startNodes": [ + { + "commentStart": 33, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLine" + } + } + ] }, "start": 0 } diff --git a/rust/kcl-lib/tests/import_whole/exported_mod.kcl b/rust/kcl-lib/tests/import_whole/exported_mod.kcl index 765515480..fc2bf6594 100644 --- a/rust/kcl-lib/tests/import_whole/exported_mod.kcl +++ b/rust/kcl-lib/tests/import_whole/exported_mod.kcl @@ -1,4 +1,5 @@ @settings(defaultLengthUnit = inch) + startSketchOn('XY') |> circle(center = [5, 5], radius = 10) |> extrude(length = 10) diff --git a/rust/kcl-lib/tests/import_whole/input.kcl b/rust/kcl-lib/tests/import_whole/input.kcl index 6d1cacfa6..66564616a 100644 --- a/rust/kcl-lib/tests/import_whole/input.kcl +++ b/rust/kcl-lib/tests/import_whole/input.kcl @@ -1,4 +1,5 @@ @settings(defaultLengthUnit = mm) + import "exported_mod.kcl" as foo bar = foo diff --git a/rust/kcl-lib/tests/import_whole/unparsed.snap b/rust/kcl-lib/tests/import_whole/unparsed.snap index a8f8d03f4..4999a8cdb 100644 --- a/rust/kcl-lib/tests/import_whole/unparsed.snap +++ b/rust/kcl-lib/tests/import_whole/unparsed.snap @@ -3,6 +3,7 @@ source: kcl-lib/src/simulation_tests.rs description: Result of unparsing import_whole.kcl --- @settings(defaultLengthUnit = mm) + import "exported_mod.kcl" as foo bar = foo diff --git a/rust/kcl-lib/tests/import_whole/unparsed@exported_mod.kcl.snap b/rust/kcl-lib/tests/import_whole/unparsed@exported_mod.kcl.snap index 2d582a56f..d0d0fcc2a 100644 --- a/rust/kcl-lib/tests/import_whole/unparsed@exported_mod.kcl.snap +++ b/rust/kcl-lib/tests/import_whole/unparsed@exported_mod.kcl.snap @@ -3,6 +3,7 @@ source: kcl-lib/src/simulation_tests.rs description: Result of unparsing tests/import_whole/exported_mod.kcl --- @settings(defaultLengthUnit = inch) + startSketchOn('XY') |> circle(center = [5, 5], radius = 10) |> extrude(length = 10) diff --git a/rust/kcl-lib/tests/index_of_array/ast.snap b/rust/kcl-lib/tests/index_of_array/ast.snap index 6ca874099..7385e840a 100644 --- a/rust/kcl-lib/tests/index_of_array/ast.snap +++ b/rust/kcl-lib/tests/index_of_array/ast.snap @@ -6,17 +6,22 @@ description: Result of parsing index_of_array.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 35, "end": 0, "id": { + "commentStart": 35, "end": 0, "name": "arr", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 41, "elements": [ { + "commentStart": 42, "end": 0, "raw": "90", "start": 0, @@ -28,6 +33,7 @@ description: Result of parsing index_of_array.kcl } }, { + "commentStart": 46, "end": 0, "raw": "91", "start": 0, @@ -39,6 +45,7 @@ description: Result of parsing index_of_array.kcl } }, { + "commentStart": 50, "end": 0, "raw": "92", "start": 0, @@ -65,18 +72,23 @@ description: Result of parsing index_of_array.kcl "type": "VariableDeclaration" }, { + "commentStart": 53, "declaration": { + "commentStart": 81, "end": 0, "id": { + "commentStart": 81, "end": 0, "name": "result0", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 91, "computed": false, "end": 0, "object": { + "commentStart": 91, "end": 0, "name": "arr", "start": 0, @@ -84,6 +96,7 @@ description: Result of parsing index_of_array.kcl "type": "Identifier" }, "property": { + "commentStart": 95, "end": 0, "raw": "1", "start": 0, @@ -108,10 +121,12 @@ description: Result of parsing index_of_array.kcl "type": "VariableDeclaration" }, { + "commentStart": 97, "end": 0, "expression": { "arguments": [ { + "commentStart": 118, "end": 0, "name": "result0", "start": 0, @@ -119,6 +134,7 @@ description: Result of parsing index_of_array.kcl "type": "Identifier" }, { + "commentStart": 127, "end": 0, "raw": "91", "start": 0, @@ -130,6 +146,7 @@ description: Result of parsing index_of_array.kcl } }, { + "commentStart": 131, "end": 0, "raw": "\"Literal property lookup\"", "start": 0, @@ -139,11 +156,13 @@ description: Result of parsing index_of_array.kcl } ], "callee": { + "commentStart": 99, "end": 0, "name": "assertLessThanOrEq", "start": 0, "type": "Identifier" }, + "commentStart": 99, "end": 0, "start": 0, "type": "CallExpression", @@ -154,10 +173,12 @@ description: Result of parsing index_of_array.kcl "type": "ExpressionStatement" }, { + "commentStart": 158, "end": 0, "expression": { "arguments": [ { + "commentStart": 180, "end": 0, "name": "result0", "start": 0, @@ -165,6 +186,7 @@ description: Result of parsing index_of_array.kcl "type": "Identifier" }, { + "commentStart": 189, "end": 0, "raw": "91", "start": 0, @@ -176,6 +198,7 @@ description: Result of parsing index_of_array.kcl } }, { + "commentStart": 193, "end": 0, "raw": "\"Literal property lookup\"", "start": 0, @@ -185,11 +208,13 @@ description: Result of parsing index_of_array.kcl } ], "callee": { + "commentStart": 158, "end": 0, "name": "assertGreaterThanOrEq", "start": 0, "type": "Identifier" }, + "commentStart": 158, "end": 0, "start": 0, "type": "CallExpression", @@ -200,9 +225,12 @@ description: Result of parsing index_of_array.kcl "type": "ExpressionStatement" }, { + "commentStart": 219, "declaration": { + "commentStart": 248, "end": 0, "id": { + "commentStart": 248, "end": 0, "name": "i", "start": 0, @@ -211,8 +239,10 @@ description: Result of parsing index_of_array.kcl "init": { "arguments": [ { + "commentStart": 256, "end": 0, "left": { + "commentStart": 256, "end": 0, "raw": "1", "start": 0, @@ -225,6 +255,7 @@ description: Result of parsing index_of_array.kcl }, "operator": "+", "right": { + "commentStart": 260, "end": 0, "raw": "0", "start": 0, @@ -241,11 +272,13 @@ description: Result of parsing index_of_array.kcl } ], "callee": { + "commentStart": 252, "end": 0, "name": "int", "start": 0, "type": "Identifier" }, + "commentStart": 252, "end": 0, "start": 0, "type": "CallExpression", @@ -261,18 +294,23 @@ description: Result of parsing index_of_array.kcl "type": "VariableDeclaration" }, { + "commentStart": 263, "declaration": { + "commentStart": 263, "end": 0, "id": { + "commentStart": 263, "end": 0, "name": "result1", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 273, "computed": true, "end": 0, "object": { + "commentStart": 273, "end": 0, "name": "arr", "start": 0, @@ -280,6 +318,7 @@ description: Result of parsing index_of_array.kcl "type": "Identifier" }, "property": { + "commentStart": 277, "end": 0, "name": "i", "start": 0, @@ -300,10 +339,12 @@ description: Result of parsing index_of_array.kcl "type": "VariableDeclaration" }, { + "commentStart": 279, "end": 0, "expression": { "arguments": [ { + "commentStart": 300, "end": 0, "name": "result1", "start": 0, @@ -311,6 +352,7 @@ description: Result of parsing index_of_array.kcl "type": "Identifier" }, { + "commentStart": 309, "end": 0, "raw": "91", "start": 0, @@ -322,6 +364,7 @@ description: Result of parsing index_of_array.kcl } }, { + "commentStart": 313, "end": 0, "raw": "\"Computed property lookup\"", "start": 0, @@ -331,11 +374,13 @@ description: Result of parsing index_of_array.kcl } ], "callee": { + "commentStart": 281, "end": 0, "name": "assertLessThanOrEq", "start": 0, "type": "Identifier" }, + "commentStart": 281, "end": 0, "start": 0, "type": "CallExpression", @@ -346,10 +391,12 @@ description: Result of parsing index_of_array.kcl "type": "ExpressionStatement" }, { + "commentStart": 341, "end": 0, "expression": { "arguments": [ { + "commentStart": 363, "end": 0, "name": "result1", "start": 0, @@ -357,6 +404,7 @@ description: Result of parsing index_of_array.kcl "type": "Identifier" }, { + "commentStart": 372, "end": 0, "raw": "91", "start": 0, @@ -368,6 +416,7 @@ description: Result of parsing index_of_array.kcl } }, { + "commentStart": 376, "end": 0, "raw": "\"Computed property lookup\"", "start": 0, @@ -377,11 +426,13 @@ description: Result of parsing index_of_array.kcl } ], "callee": { + "commentStart": 341, "end": 0, "name": "assertGreaterThanOrEq", "start": 0, "type": "Identifier" }, + "commentStart": 341, "end": 0, "start": 0, "type": "CallExpression", @@ -392,11 +443,13 @@ description: Result of parsing index_of_array.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 53, "end": 0, "start": 0, "type": "NonCodeNode", @@ -407,6 +460,7 @@ description: Result of parsing index_of_array.kcl } }, { + "commentStart": 78, "end": 0, "start": 0, "type": "NonCodeNode", @@ -417,6 +471,7 @@ description: Result of parsing index_of_array.kcl ], "1": [ { + "commentStart": 97, "end": 0, "start": 0, "type": "NonCodeNode", @@ -427,6 +482,7 @@ description: Result of parsing index_of_array.kcl ], "3": [ { + "commentStart": 219, "end": 0, "start": 0, "type": "NonCodeNode", @@ -437,6 +493,7 @@ description: Result of parsing index_of_array.kcl } }, { + "commentStart": 245, "end": 0, "start": 0, "type": "NonCodeNode", @@ -447,6 +504,7 @@ description: Result of parsing index_of_array.kcl ], "5": [ { + "commentStart": 279, "end": 0, "start": 0, "type": "NonCodeNode", @@ -458,6 +516,7 @@ description: Result of parsing index_of_array.kcl }, "startNodes": [ { + "commentStart": 0, "end": 0, "start": 0, "type": "NonCodeNode", @@ -468,6 +527,7 @@ description: Result of parsing index_of_array.kcl } }, { + "commentStart": 32, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/invalid_index_fractional/ast.snap b/rust/kcl-lib/tests/invalid_index_fractional/ast.snap index 20af091b7..bb305d347 100644 --- a/rust/kcl-lib/tests/invalid_index_fractional/ast.snap +++ b/rust/kcl-lib/tests/invalid_index_fractional/ast.snap @@ -6,17 +6,22 @@ description: Result of parsing invalid_index_fractional.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "arr", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "elements": [ { + "commentStart": 7, "end": 0, "raw": "1", "start": 0, @@ -28,6 +33,7 @@ description: Result of parsing invalid_index_fractional.kcl } }, { + "commentStart": 10, "end": 0, "raw": "2", "start": 0, @@ -39,6 +45,7 @@ description: Result of parsing invalid_index_fractional.kcl } }, { + "commentStart": 13, "end": 0, "raw": "3", "start": 0, @@ -65,18 +72,23 @@ description: Result of parsing invalid_index_fractional.kcl "type": "VariableDeclaration" }, { + "commentStart": 16, "declaration": { + "commentStart": 16, "end": 0, "id": { + "commentStart": 16, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 20, "computed": false, "end": 0, "object": { + "commentStart": 20, "end": 0, "name": "arr", "start": 0, @@ -84,6 +96,7 @@ description: Result of parsing invalid_index_fractional.kcl "type": "Identifier" }, "property": { + "commentStart": 24, "end": 0, "raw": "1.2", "start": 0, @@ -108,6 +121,7 @@ description: Result of parsing invalid_index_fractional.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/invalid_index_negative/ast.snap b/rust/kcl-lib/tests/invalid_index_negative/ast.snap index 3c94d3828..9ee44b61b 100644 --- a/rust/kcl-lib/tests/invalid_index_negative/ast.snap +++ b/rust/kcl-lib/tests/invalid_index_negative/ast.snap @@ -6,17 +6,22 @@ description: Result of parsing invalid_index_negative.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "arr", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "elements": [ { + "commentStart": 7, "end": 0, "raw": "1", "start": 0, @@ -28,6 +33,7 @@ description: Result of parsing invalid_index_negative.kcl } }, { + "commentStart": 10, "end": 0, "raw": "2", "start": 0, @@ -39,6 +45,7 @@ description: Result of parsing invalid_index_negative.kcl } }, { + "commentStart": 13, "end": 0, "raw": "3", "start": 0, @@ -65,9 +72,12 @@ description: Result of parsing invalid_index_negative.kcl "type": "VariableDeclaration" }, { + "commentStart": 16, "declaration": { + "commentStart": 16, "end": 0, "id": { + "commentStart": 16, "end": 0, "name": "i", "start": 0, @@ -75,6 +85,7 @@ description: Result of parsing invalid_index_negative.kcl }, "init": { "argument": { + "commentStart": 21, "end": 0, "raw": "1", "start": 0, @@ -85,6 +96,7 @@ description: Result of parsing invalid_index_negative.kcl "suffix": "None" } }, + "commentStart": 20, "end": 0, "operator": "-", "start": 0, @@ -101,18 +113,23 @@ description: Result of parsing invalid_index_negative.kcl "type": "VariableDeclaration" }, { + "commentStart": 23, "declaration": { + "commentStart": 23, "end": 0, "id": { + "commentStart": 23, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 27, "computed": true, "end": 0, "object": { + "commentStart": 27, "end": 0, "name": "arr", "start": 0, @@ -120,6 +137,7 @@ description: Result of parsing invalid_index_negative.kcl "type": "Identifier" }, "property": { + "commentStart": 31, "end": 0, "name": "i", "start": 0, @@ -140,6 +158,7 @@ description: Result of parsing invalid_index_negative.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/invalid_index_str/ast.snap b/rust/kcl-lib/tests/invalid_index_str/ast.snap index 4498becb6..841a4f276 100644 --- a/rust/kcl-lib/tests/invalid_index_str/ast.snap +++ b/rust/kcl-lib/tests/invalid_index_str/ast.snap @@ -6,17 +6,22 @@ description: Result of parsing invalid_index_str.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "arr", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "elements": [ { + "commentStart": 7, "end": 0, "raw": "1", "start": 0, @@ -28,6 +33,7 @@ description: Result of parsing invalid_index_str.kcl } }, { + "commentStart": 10, "end": 0, "raw": "2", "start": 0, @@ -39,6 +45,7 @@ description: Result of parsing invalid_index_str.kcl } }, { + "commentStart": 13, "end": 0, "raw": "3", "start": 0, @@ -65,18 +72,23 @@ description: Result of parsing invalid_index_str.kcl "type": "VariableDeclaration" }, { + "commentStart": 16, "declaration": { + "commentStart": 16, "end": 0, "id": { + "commentStart": 16, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 20, "computed": false, "end": 0, "object": { + "commentStart": 20, "end": 0, "name": "arr", "start": 0, @@ -84,6 +96,7 @@ description: Result of parsing invalid_index_str.kcl "type": "Identifier" }, "property": { + "commentStart": 24, "end": 0, "raw": "\"s\"", "start": 0, @@ -105,6 +118,7 @@ description: Result of parsing invalid_index_str.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/invalid_member_object/ast.snap b/rust/kcl-lib/tests/invalid_member_object/ast.snap index 6f75d1d3f..ad90075ec 100644 --- a/rust/kcl-lib/tests/invalid_member_object/ast.snap +++ b/rust/kcl-lib/tests/invalid_member_object/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing invalid_member_object.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "num", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "end": 0, "raw": "999", "start": 0, @@ -35,18 +39,23 @@ description: Result of parsing invalid_member_object.kcl "type": "VariableDeclaration" }, { + "commentStart": 10, "declaration": { + "commentStart": 10, "end": 0, "id": { + "commentStart": 10, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 14, "computed": false, "end": 0, "object": { + "commentStart": 14, "end": 0, "name": "num", "start": 0, @@ -54,6 +63,7 @@ description: Result of parsing invalid_member_object.kcl "type": "Identifier" }, "property": { + "commentStart": 18, "end": 0, "raw": "3", "start": 0, @@ -78,6 +88,7 @@ description: Result of parsing invalid_member_object.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/invalid_member_object_prop/ast.snap b/rust/kcl-lib/tests/invalid_member_object_prop/ast.snap index e759a52d8..1a76aa275 100644 --- a/rust/kcl-lib/tests/invalid_member_object_prop/ast.snap +++ b/rust/kcl-lib/tests/invalid_member_object_prop/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing invalid_member_object_prop.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "b", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4, "end": 0, "raw": "true", "start": 0, @@ -32,18 +36,23 @@ description: Result of parsing invalid_member_object_prop.kcl "type": "VariableDeclaration" }, { + "commentStart": 9, "declaration": { + "commentStart": 9, "end": 0, "id": { + "commentStart": 9, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 13, "computed": false, "end": 0, "object": { + "commentStart": 13, "end": 0, "name": "b", "start": 0, @@ -51,6 +60,7 @@ description: Result of parsing invalid_member_object_prop.kcl "type": "Identifier" }, "property": { + "commentStart": 15, "end": 0, "raw": "\"property\"", "start": 0, @@ -72,6 +82,7 @@ description: Result of parsing invalid_member_object_prop.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/kcl_samples/80-20-rail/ast.snap b/rust/kcl-lib/tests/kcl_samples/80-20-rail/ast.snap index e5247abe1..77a814d8e 100644 --- a/rust/kcl-lib/tests/kcl_samples/80-20-rail/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/80-20-rail/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing 80-20-rail.kcl "Ok": { "body": [ { + "commentStart": 182, "declaration": { + "commentStart": 206, "end": 0, "id": { + "commentStart": 206, "end": 0, "name": "rail8020", "start": 0, @@ -18,9 +21,12 @@ description: Result of parsing 80-20-rail.kcl "body": { "body": [ { + "commentStart": 253, "declaration": { + "commentStart": 286, "end": 0, "id": { + "commentStart": 286, "end": 0, "name": "sketch001", "start": 0, @@ -31,6 +37,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 312, "end": 0, "raw": "'-XZ'", "start": 0, @@ -40,11 +47,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 298, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 298, "end": 0, "start": 0, "type": "CallExpression", @@ -53,11 +62,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 341, "elements": [ { + "commentStart": 352, "computed": false, "end": 0, "object": { + "commentStart": 352, "end": 0, "name": "originStart", "start": 0, @@ -65,6 +77,7 @@ description: Result of parsing 80-20-rail.kcl "type": "Identifier" }, "property": { + "commentStart": 364, "end": 0, "raw": "0", "start": 0, @@ -80,10 +93,13 @@ description: Result of parsing 80-20-rail.kcl "type": "MemberExpression" }, { + "commentStart": 377, "end": 0, "left": { + "commentStart": 377, "end": 0, "left": { + "commentStart": 377, "end": 0, "raw": "0.1", "start": 0, @@ -96,6 +112,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 383, "end": 0, "name": "railHeight", "start": 0, @@ -108,9 +125,11 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "+", "right": { + "commentStart": 396, "computed": false, "end": 0, "object": { + "commentStart": 396, "end": 0, "name": "originStart", "start": 0, @@ -118,6 +137,7 @@ description: Result of parsing 80-20-rail.kcl "type": "Identifier" }, "property": { + "commentStart": 408, "end": 0, "raw": "1", "start": 0, @@ -143,6 +163,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ArrayExpression" }, { + "commentStart": 421, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -150,11 +171,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 326, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 326, "end": 0, "start": 0, "type": "CallExpression", @@ -163,11 +186,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 435, "end": 0, "properties": [ { + "commentStart": 446, "end": 0, "key": { + "commentStart": 446, "end": 0, "name": "angleStart", "start": 0, @@ -176,6 +202,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 459, "end": 0, "raw": "180", "start": 0, @@ -188,8 +215,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 473, "end": 0, "key": { + "commentStart": 473, "end": 0, "name": "angleEnd", "start": 0, @@ -198,6 +227,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 484, "end": 0, "raw": "270", "start": 0, @@ -210,8 +240,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 498, "end": 0, "key": { + "commentStart": 498, "end": 0, "name": "radius", "start": 0, @@ -220,8 +252,10 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 507, "end": 0, "left": { + "commentStart": 507, "end": 0, "raw": "0.1", "start": 0, @@ -234,6 +268,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 513, "end": 0, "name": "railHeight", "start": 0, @@ -251,6 +286,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 534, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -258,11 +294,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 431, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 431, "end": 0, "start": 0, "type": "CallExpression", @@ -271,11 +309,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 548, "end": 0, "properties": [ { + "commentStart": 559, "end": 0, "key": { + "commentStart": 559, "end": 0, "name": "angleStart", "start": 0, @@ -284,6 +325,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 572, "end": 0, "raw": "180", "start": 0, @@ -296,8 +338,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 586, "end": 0, "key": { + "commentStart": 586, "end": 0, "name": "angleEnd", "start": 0, @@ -306,6 +350,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 597, "end": 0, "raw": "0", "start": 0, @@ -318,8 +363,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 609, "end": 0, "key": { + "commentStart": 609, "end": 0, "name": "radius", "start": 0, @@ -328,10 +375,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 618, "end": 0, "left": { + "commentStart": 618, "end": 0, "left": { + "commentStart": 618, "end": 0, "raw": "0.072", "start": 0, @@ -344,6 +394,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 626, "end": 0, "raw": "4", "start": 0, @@ -360,6 +411,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 630, "end": 0, "name": "railHeight", "start": 0, @@ -377,6 +429,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 651, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -384,11 +437,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 544, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 544, "end": 0, "start": 0, "type": "CallExpression", @@ -399,14 +454,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 667, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 676, "end": 0, "left": { + "commentStart": 676, "end": 0, "raw": "0.1", "start": 0, @@ -419,6 +477,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 682, "end": 0, "name": "railHeight", "start": 0, @@ -432,11 +491,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 661, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 661, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -446,11 +507,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 705, "end": 0, "properties": [ { + "commentStart": 716, "end": 0, "key": { + "commentStart": 716, "end": 0, "name": "angleStart", "start": 0, @@ -459,6 +523,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 729, "end": 0, "raw": "180", "start": 0, @@ -471,8 +536,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 743, "end": 0, "key": { + "commentStart": 743, "end": 0, "name": "angleEnd", "start": 0, @@ -481,6 +548,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 754, "end": 0, "raw": "0", "start": 0, @@ -493,8 +561,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 766, "end": 0, "key": { + "commentStart": 766, "end": 0, "name": "radius", "start": 0, @@ -503,10 +573,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 775, "end": 0, "left": { + "commentStart": 775, "end": 0, "left": { + "commentStart": 775, "end": 0, "raw": "0.072", "start": 0, @@ -519,6 +592,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 783, "end": 0, "raw": "4", "start": 0, @@ -535,6 +609,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 787, "end": 0, "name": "railHeight", "start": 0, @@ -552,6 +627,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 808, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -559,11 +635,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 701, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 701, "end": 0, "start": 0, "type": "CallExpression", @@ -574,14 +652,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 824, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 833, "end": 0, "left": { + "commentStart": 833, "end": 0, "raw": "0.06", "start": 0, @@ -594,6 +675,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 840, "end": 0, "name": "railHeight", "start": 0, @@ -608,12 +690,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 852, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 858, "end": 0, "start": 0, "type": "TagDeclarator", @@ -623,11 +707,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 818, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 818, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -639,14 +725,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 879, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 888, "end": 0, "left": { + "commentStart": 888, "end": 0, "raw": "0.087", "start": 0, @@ -659,6 +748,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 896, "end": 0, "name": "railHeight", "start": 0, @@ -673,12 +763,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 908, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 914, "end": 0, "start": 0, "type": "TagDeclarator", @@ -688,11 +780,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 873, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 873, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -704,15 +798,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 935, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 944, "end": 0, "left": { "argument": { + "commentStart": 945, "end": 0, "raw": "0.183", "start": 0, @@ -723,6 +820,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 944, "end": 0, "operator": "-", "start": 0, @@ -731,6 +829,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 953, "end": 0, "name": "railHeight", "start": 0, @@ -745,12 +844,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 965, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 971, "end": 0, "start": 0, "type": "TagDeclarator", @@ -760,11 +861,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 929, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 929, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -774,11 +877,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 1000, "end": 0, "properties": [ { + "commentStart": 1011, "end": 0, "key": { + "commentStart": 1011, "end": 0, "name": "angle", "start": 0, @@ -787,6 +893,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1019, "end": 0, "raw": "45", "start": 0, @@ -799,8 +906,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 1032, "end": 0, "key": { + "commentStart": 1032, "end": 0, "name": "to", "start": 0, @@ -809,14 +918,19 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1038, "end": 0, "left": { + "commentStart": 1038, "end": 0, "left": { + "commentStart": 1038, "end": 0, "left": { + "commentStart": 1038, "end": 0, "left": { + "commentStart": 1038, "end": 0, "raw": "1", "start": 0, @@ -829,6 +943,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "-", "right": { + "commentStart": 1042, "end": 0, "raw": "0.356", "start": 0, @@ -845,6 +960,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 1051, "end": 0, "raw": "2", "start": 0, @@ -861,6 +977,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 1055, "end": 0, "name": "railHeight", "start": 0, @@ -873,9 +990,11 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "+", "right": { + "commentStart": 1068, "computed": false, "end": 0, "object": { + "commentStart": 1068, "end": 0, "name": "originStart", "start": 0, @@ -883,6 +1002,7 @@ description: Result of parsing 80-20-rail.kcl "type": "Identifier" }, "property": { + "commentStart": 1080, "end": 0, "raw": "1", "start": 0, @@ -908,12 +1028,14 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 1093, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1096, "end": 0, "start": 0, "type": "TagDeclarator", @@ -922,11 +1044,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 986, "end": 0, "name": "angledLineToY", "start": 0, "type": "Identifier" }, + "commentStart": 986, "end": 0, "start": 0, "type": "CallExpression", @@ -937,14 +1061,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 1117, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1126, "end": 0, "left": { + "commentStart": 1126, "end": 0, "raw": "0.232", "start": 0, @@ -957,6 +1084,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 1134, "end": 0, "name": "railHeight", "start": 0, @@ -971,12 +1099,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 1146, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1152, "end": 0, "start": 0, "type": "TagDeclarator", @@ -986,11 +1116,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 1111, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1111, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1000,11 +1132,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 1181, "end": 0, "properties": [ { + "commentStart": 1192, "end": 0, "key": { + "commentStart": 1192, "end": 0, "name": "angle", "start": 0, @@ -1014,6 +1149,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1201, "end": 0, "raw": "45", "start": 0, @@ -1024,6 +1160,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 1200, "end": 0, "operator": "-", "start": 0, @@ -1032,8 +1169,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 1214, "end": 0, "key": { + "commentStart": 1214, "end": 0, "name": "to", "start": 0, @@ -1042,10 +1181,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1219, "end": 0, "left": { + "commentStart": 1219, "end": 0, "left": { + "commentStart": 1219, "end": 0, "raw": "0.087", "start": 0, @@ -1058,6 +1200,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 1227, "end": 0, "name": "railHeight", "start": 0, @@ -1070,9 +1213,11 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "+", "right": { + "commentStart": 1240, "computed": false, "end": 0, "object": { + "commentStart": 1240, "end": 0, "name": "originStart", "start": 0, @@ -1080,6 +1225,7 @@ description: Result of parsing 80-20-rail.kcl "type": "Identifier" }, "property": { + "commentStart": 1252, "end": 0, "raw": "1", "start": 0, @@ -1105,12 +1251,14 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 1265, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1268, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1119,11 +1267,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 1167, "end": 0, "name": "angledLineToY", "start": 0, "type": "Identifier" }, + "commentStart": 1167, "end": 0, "start": 0, "type": "CallExpression", @@ -1134,15 +1284,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 1289, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1298, "end": 0, "left": { "argument": { + "commentStart": 1299, "end": 0, "raw": "0.183", "start": 0, @@ -1153,6 +1306,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 1298, "end": 0, "operator": "-", "start": 0, @@ -1161,6 +1315,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 1307, "end": 0, "name": "railHeight", "start": 0, @@ -1175,12 +1330,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 1319, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1325, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1190,11 +1347,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 1283, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1283, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1206,15 +1365,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 1346, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1355, "end": 0, "left": { "argument": { + "commentStart": 1356, "end": 0, "raw": "0.087", "start": 0, @@ -1225,6 +1387,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 1355, "end": 0, "operator": "-", "start": 0, @@ -1233,6 +1396,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 1364, "end": 0, "name": "railHeight", "start": 0, @@ -1247,12 +1411,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 1376, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1382, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1262,11 +1428,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 1340, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1340, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1278,14 +1446,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 1403, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1412, "end": 0, "left": { + "commentStart": 1412, "end": 0, "raw": "0.06", "start": 0, @@ -1298,6 +1469,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 1419, "end": 0, "name": "railHeight", "start": 0, @@ -1311,11 +1483,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 1397, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1397, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1325,11 +1499,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 1442, "end": 0, "properties": [ { + "commentStart": 1453, "end": 0, "key": { + "commentStart": 1453, "end": 0, "name": "angleStart", "start": 0, @@ -1338,6 +1515,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1466, "end": 0, "raw": "180", "start": 0, @@ -1350,8 +1528,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 1480, "end": 0, "key": { + "commentStart": 1480, "end": 0, "name": "angleEnd", "start": 0, @@ -1360,6 +1540,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1491, "end": 0, "raw": "0", "start": 0, @@ -1372,8 +1553,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 1503, "end": 0, "key": { + "commentStart": 1503, "end": 0, "name": "radius", "start": 0, @@ -1382,10 +1565,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1512, "end": 0, "left": { + "commentStart": 1512, "end": 0, "left": { + "commentStart": 1512, "end": 0, "raw": "0.072", "start": 0, @@ -1398,6 +1584,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 1520, "end": 0, "raw": "4", "start": 0, @@ -1414,6 +1601,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 1524, "end": 0, "name": "railHeight", "start": 0, @@ -1431,6 +1619,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 1545, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1438,11 +1627,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 1438, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 1438, "end": 0, "start": 0, "type": "CallExpression", @@ -1453,14 +1644,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 1561, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1570, "end": 0, "left": { + "commentStart": 1570, "end": 0, "raw": "0.1", "start": 0, @@ -1473,6 +1667,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 1576, "end": 0, "name": "railHeight", "start": 0, @@ -1486,11 +1681,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 1555, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1555, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1500,11 +1697,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 1599, "end": 0, "properties": [ { + "commentStart": 1610, "end": 0, "key": { + "commentStart": 1610, "end": 0, "name": "angleStart", "start": 0, @@ -1513,6 +1713,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1623, "end": 0, "raw": "180", "start": 0, @@ -1525,8 +1726,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 1637, "end": 0, "key": { + "commentStart": 1637, "end": 0, "name": "angleEnd", "start": 0, @@ -1535,6 +1738,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1648, "end": 0, "raw": "0", "start": 0, @@ -1547,8 +1751,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 1660, "end": 0, "key": { + "commentStart": 1660, "end": 0, "name": "radius", "start": 0, @@ -1557,10 +1763,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1669, "end": 0, "left": { + "commentStart": 1669, "end": 0, "left": { + "commentStart": 1669, "end": 0, "raw": "0.072", "start": 0, @@ -1573,6 +1782,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 1677, "end": 0, "raw": "4", "start": 0, @@ -1589,6 +1799,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 1681, "end": 0, "name": "railHeight", "start": 0, @@ -1606,6 +1817,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 1702, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1613,11 +1825,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 1595, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 1595, "end": 0, "start": 0, "type": "CallExpression", @@ -1626,11 +1840,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 1716, "end": 0, "properties": [ { + "commentStart": 1727, "end": 0, "key": { + "commentStart": 1727, "end": 0, "name": "angleStart", "start": 0, @@ -1640,6 +1857,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1741, "end": 0, "raw": "90", "start": 0, @@ -1650,6 +1868,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 1740, "end": 0, "operator": "-", "start": 0, @@ -1658,8 +1877,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 1754, "end": 0, "key": { + "commentStart": 1754, "end": 0, "name": "angleEnd", "start": 0, @@ -1668,6 +1889,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1765, "end": 0, "raw": "0", "start": 0, @@ -1680,8 +1902,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 1777, "end": 0, "key": { + "commentStart": 1777, "end": 0, "name": "radius", "start": 0, @@ -1690,8 +1914,10 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1786, "end": 0, "left": { + "commentStart": 1786, "end": 0, "raw": "0.1", "start": 0, @@ -1704,6 +1930,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 1792, "end": 0, "name": "railHeight", "start": 0, @@ -1721,6 +1948,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 1813, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1728,11 +1956,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 1712, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 1712, "end": 0, "start": 0, "type": "CallExpression", @@ -1741,11 +1971,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 1860, "end": 0, "properties": [ { + "commentStart": 1871, "end": 0, "key": { + "commentStart": 1871, "end": 0, "name": "angleStart", "start": 0, @@ -1754,6 +1987,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1884, "end": 0, "raw": "270", "start": 0, @@ -1766,8 +2000,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 1898, "end": 0, "key": { + "commentStart": 1898, "end": 0, "name": "angleEnd", "start": 0, @@ -1776,6 +2012,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1909, "end": 0, "raw": "90", "start": 0, @@ -1788,8 +2025,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 1922, "end": 0, "key": { + "commentStart": 1922, "end": 0, "name": "radius", "start": 0, @@ -1798,10 +2037,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1931, "end": 0, "left": { + "commentStart": 1931, "end": 0, "left": { + "commentStart": 1931, "end": 0, "raw": "0.072", "start": 0, @@ -1814,6 +2056,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 1939, "end": 0, "raw": "4", "start": 0, @@ -1830,6 +2073,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 1943, "end": 0, "name": "railHeight", "start": 0, @@ -1847,6 +2091,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 1964, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1854,11 +2099,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 1856, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 1856, "end": 0, "start": 0, "type": "CallExpression", @@ -1869,14 +2116,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 1980, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1989, "end": 0, "left": { + "commentStart": 1989, "end": 0, "raw": "0.1", "start": 0, @@ -1889,6 +2139,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 1995, "end": 0, "name": "railHeight", "start": 0, @@ -1902,11 +2153,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 1974, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1974, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1916,11 +2169,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 2018, "end": 0, "properties": [ { + "commentStart": 2029, "end": 0, "key": { + "commentStart": 2029, "end": 0, "name": "angleStart", "start": 0, @@ -1929,6 +2185,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2042, "end": 0, "raw": "270", "start": 0, @@ -1941,8 +2198,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 2056, "end": 0, "key": { + "commentStart": 2056, "end": 0, "name": "angleEnd", "start": 0, @@ -1951,6 +2210,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2067, "end": 0, "raw": "90", "start": 0, @@ -1963,8 +2223,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 2080, "end": 0, "key": { + "commentStart": 2080, "end": 0, "name": "radius", "start": 0, @@ -1973,10 +2235,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2089, "end": 0, "left": { + "commentStart": 2089, "end": 0, "left": { + "commentStart": 2089, "end": 0, "raw": "0.072", "start": 0, @@ -1989,6 +2254,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 2097, "end": 0, "raw": "4", "start": 0, @@ -2005,6 +2271,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 2101, "end": 0, "name": "railHeight", "start": 0, @@ -2022,6 +2289,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 2122, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2029,11 +2297,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 2014, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 2014, "end": 0, "start": 0, "type": "CallExpression", @@ -2044,14 +2314,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 2138, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2147, "end": 0, "left": { + "commentStart": 2147, "end": 0, "raw": "0.06", "start": 0, @@ -2064,6 +2337,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 2154, "end": 0, "name": "railHeight", "start": 0, @@ -2078,12 +2352,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 2166, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2172, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2093,11 +2369,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 2132, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 2132, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2109,15 +2387,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 2193, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2202, "end": 0, "left": { "argument": { + "commentStart": 2203, "end": 0, "raw": "0.087", "start": 0, @@ -2128,6 +2409,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 2202, "end": 0, "operator": "-", "start": 0, @@ -2136,6 +2418,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 2211, "end": 0, "name": "railHeight", "start": 0, @@ -2150,12 +2433,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 2223, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2229, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2165,11 +2450,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 2187, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2187, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2181,15 +2468,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 2251, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2260, "end": 0, "left": { "argument": { + "commentStart": 2261, "end": 0, "raw": "0.183", "start": 0, @@ -2200,6 +2490,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 2260, "end": 0, "operator": "-", "start": 0, @@ -2208,6 +2499,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 2269, "end": 0, "name": "railHeight", "start": 0, @@ -2222,12 +2514,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 2281, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2287, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2237,11 +2531,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 2245, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 2245, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2251,11 +2547,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 2327, "end": 0, "properties": [ { + "commentStart": 2338, "end": 0, "key": { + "commentStart": 2338, "end": 0, "name": "angle", "start": 0, @@ -2264,6 +2563,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2346, "end": 0, "raw": "135", "start": 0, @@ -2276,8 +2576,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 2360, "end": 0, "key": { + "commentStart": 2360, "end": 0, "name": "to", "start": 0, @@ -2286,16 +2588,22 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2367, "end": 0, "left": { + "commentStart": 2367, "end": 0, "left": { + "commentStart": 2367, "end": 0, "left": { + "commentStart": 2367, "end": 0, "left": { + "commentStart": 2367, "end": 0, "left": { + "commentStart": 2367, "end": 0, "raw": "1", "start": 0, @@ -2308,6 +2616,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "-", "right": { + "commentStart": 2371, "end": 0, "raw": "0.356", "start": 0, @@ -2324,6 +2633,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 2380, "end": 0, "raw": "2", "start": 0, @@ -2340,6 +2650,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "+", "right": { + "commentStart": 2384, "end": 0, "raw": "0.356", "start": 0, @@ -2356,6 +2667,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 2393, "end": 0, "name": "railHeight", "start": 0, @@ -2368,9 +2680,11 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "+", "right": { + "commentStart": 2406, "computed": false, "end": 0, "object": { + "commentStart": 2406, "end": 0, "name": "originStart", "start": 0, @@ -2378,6 +2692,7 @@ description: Result of parsing 80-20-rail.kcl "type": "Identifier" }, "property": { + "commentStart": 2418, "end": 0, "raw": "0", "start": 0, @@ -2403,12 +2718,14 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 2431, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 2434, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2417,11 +2734,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 2313, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 2313, "end": 0, "start": 0, "type": "CallExpression", @@ -2432,14 +2751,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 2466, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2475, "end": 0, "left": { + "commentStart": 2475, "end": 0, "raw": "0.232", "start": 0, @@ -2452,6 +2774,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 2483, "end": 0, "name": "railHeight", "start": 0, @@ -2466,12 +2789,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 2495, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2501, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2481,11 +2806,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 2460, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 2460, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2495,11 +2822,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 2537, "end": 0, "properties": [ { + "commentStart": 2548, "end": 0, "key": { + "commentStart": 2548, "end": 0, "name": "angle", "start": 0, @@ -2508,6 +2838,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2556, "end": 0, "raw": "45", "start": 0, @@ -2520,8 +2851,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 2569, "end": 0, "key": { + "commentStart": 2569, "end": 0, "name": "to", "start": 0, @@ -2530,12 +2863,16 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2575, "end": 0, "left": { + "commentStart": 2575, "end": 0, "left": { + "commentStart": 2575, "end": 0, "left": { + "commentStart": 2575, "end": 0, "raw": "1", "start": 0, @@ -2548,6 +2885,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "-", "right": { + "commentStart": 2579, "end": 0, "raw": "0.087", "start": 0, @@ -2564,6 +2902,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 2588, "end": 0, "name": "railHeight", "start": 0, @@ -2576,9 +2915,11 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "+", "right": { + "commentStart": 2601, "computed": false, "end": 0, "object": { + "commentStart": 2601, "end": 0, "name": "originStart", "start": 0, @@ -2586,6 +2927,7 @@ description: Result of parsing 80-20-rail.kcl "type": "Identifier" }, "property": { + "commentStart": 2613, "end": 0, "raw": "0", "start": 0, @@ -2611,12 +2953,14 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 2626, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 2629, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2625,11 +2969,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 2523, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 2523, "end": 0, "start": 0, "type": "CallExpression", @@ -2640,15 +2986,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 2657, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2666, "end": 0, "left": { "argument": { + "commentStart": 2667, "end": 0, "raw": "0.183", "start": 0, @@ -2659,6 +3008,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 2666, "end": 0, "operator": "-", "start": 0, @@ -2667,6 +3017,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 2675, "end": 0, "name": "railHeight", "start": 0, @@ -2681,12 +3032,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 2687, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2693, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2696,11 +3049,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 2651, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 2651, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2712,14 +3067,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 2721, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2730, "end": 0, "left": { + "commentStart": 2730, "end": 0, "raw": "0.087", "start": 0, @@ -2732,6 +3090,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 2738, "end": 0, "name": "railHeight", "start": 0, @@ -2746,12 +3105,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 2750, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2756, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2761,11 +3122,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 2715, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2715, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2777,14 +3140,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 2778, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2787, "end": 0, "left": { + "commentStart": 2787, "end": 0, "raw": "0.06", "start": 0, @@ -2797,6 +3163,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 2794, "end": 0, "name": "railHeight", "start": 0, @@ -2810,11 +3177,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 2772, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 2772, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2824,11 +3193,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 2817, "end": 0, "properties": [ { + "commentStart": 2828, "end": 0, "key": { + "commentStart": 2828, "end": 0, "name": "angleStart", "start": 0, @@ -2837,6 +3209,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2841, "end": 0, "raw": "270", "start": 0, @@ -2849,8 +3222,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 2855, "end": 0, "key": { + "commentStart": 2855, "end": 0, "name": "angleEnd", "start": 0, @@ -2859,6 +3234,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2866, "end": 0, "raw": "90", "start": 0, @@ -2871,8 +3247,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 2879, "end": 0, "key": { + "commentStart": 2879, "end": 0, "name": "radius", "start": 0, @@ -2881,10 +3259,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2888, "end": 0, "left": { + "commentStart": 2888, "end": 0, "left": { + "commentStart": 2888, "end": 0, "raw": "0.072", "start": 0, @@ -2897,6 +3278,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 2896, "end": 0, "raw": "4", "start": 0, @@ -2913,6 +3295,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 2900, "end": 0, "name": "railHeight", "start": 0, @@ -2930,6 +3313,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 2921, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2937,11 +3321,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 2813, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 2813, "end": 0, "start": 0, "type": "CallExpression", @@ -2952,14 +3338,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 2937, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2946, "end": 0, "left": { + "commentStart": 2946, "end": 0, "raw": "0.1", "start": 0, @@ -2972,6 +3361,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 2952, "end": 0, "name": "railHeight", "start": 0, @@ -2985,11 +3375,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 2931, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 2931, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2999,11 +3391,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 2975, "end": 0, "properties": [ { + "commentStart": 2986, "end": 0, "key": { + "commentStart": 2986, "end": 0, "name": "angleStart", "start": 0, @@ -3012,6 +3407,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2999, "end": 0, "raw": "270", "start": 0, @@ -3024,8 +3420,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 3013, "end": 0, "key": { + "commentStart": 3013, "end": 0, "name": "angleEnd", "start": 0, @@ -3034,6 +3432,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3024, "end": 0, "raw": "90", "start": 0, @@ -3046,8 +3445,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 3037, "end": 0, "key": { + "commentStart": 3037, "end": 0, "name": "radius", "start": 0, @@ -3056,10 +3457,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3046, "end": 0, "left": { + "commentStart": 3046, "end": 0, "left": { + "commentStart": 3046, "end": 0, "raw": "0.072", "start": 0, @@ -3072,6 +3476,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 3054, "end": 0, "raw": "4", "start": 0, @@ -3088,6 +3493,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 3058, "end": 0, "name": "railHeight", "start": 0, @@ -3105,6 +3511,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 3079, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3112,11 +3519,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 2971, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 2971, "end": 0, "start": 0, "type": "CallExpression", @@ -3125,11 +3534,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 3126, "end": 0, "properties": [ { + "commentStart": 3137, "end": 0, "key": { + "commentStart": 3137, "end": 0, "name": "angleStart", "start": 0, @@ -3138,6 +3550,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3150, "end": 0, "raw": "0", "start": 0, @@ -3150,8 +3563,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 3162, "end": 0, "key": { + "commentStart": 3162, "end": 0, "name": "angleEnd", "start": 0, @@ -3160,6 +3575,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3173, "end": 0, "raw": "90", "start": 0, @@ -3172,8 +3588,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 3186, "end": 0, "key": { + "commentStart": 3186, "end": 0, "name": "radius", "start": 0, @@ -3182,8 +3600,10 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3195, "end": 0, "left": { + "commentStart": 3195, "end": 0, "raw": "0.1", "start": 0, @@ -3196,6 +3616,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 3201, "end": 0, "name": "railHeight", "start": 0, @@ -3213,6 +3634,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 3222, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3220,11 +3642,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 3122, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 3122, "end": 0, "start": 0, "type": "CallExpression", @@ -3233,11 +3657,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 3236, "end": 0, "properties": [ { + "commentStart": 3247, "end": 0, "key": { + "commentStart": 3247, "end": 0, "name": "angleStart", "start": 0, @@ -3246,6 +3673,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3260, "end": 0, "raw": "0", "start": 0, @@ -3258,8 +3686,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 3272, "end": 0, "key": { + "commentStart": 3272, "end": 0, "name": "angleEnd", "start": 0, @@ -3269,6 +3699,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 3284, "end": 0, "raw": "180", "start": 0, @@ -3279,6 +3710,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 3283, "end": 0, "operator": "-", "start": 0, @@ -3287,8 +3719,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 3298, "end": 0, "key": { + "commentStart": 3298, "end": 0, "name": "radius", "start": 0, @@ -3297,10 +3731,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3307, "end": 0, "left": { + "commentStart": 3307, "end": 0, "left": { + "commentStart": 3307, "end": 0, "raw": "0.072", "start": 0, @@ -3313,6 +3750,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 3315, "end": 0, "raw": "4", "start": 0, @@ -3329,6 +3767,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 3319, "end": 0, "name": "railHeight", "start": 0, @@ -3346,6 +3785,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 3340, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3353,11 +3793,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 3232, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 3232, "end": 0, "start": 0, "type": "CallExpression", @@ -3368,15 +3810,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 3356, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3365, "end": 0, "left": { "argument": { + "commentStart": 3366, "end": 0, "raw": "0.1", "start": 0, @@ -3387,6 +3832,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 3365, "end": 0, "operator": "-", "start": 0, @@ -3395,6 +3841,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 3372, "end": 0, "name": "railHeight", "start": 0, @@ -3408,11 +3855,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 3350, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3350, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3422,11 +3871,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 3395, "end": 0, "properties": [ { + "commentStart": 3406, "end": 0, "key": { + "commentStart": 3406, "end": 0, "name": "angleStart", "start": 0, @@ -3435,6 +3887,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3419, "end": 0, "raw": "0", "start": 0, @@ -3447,8 +3900,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 3431, "end": 0, "key": { + "commentStart": 3431, "end": 0, "name": "angleEnd", "start": 0, @@ -3458,6 +3913,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 3443, "end": 0, "raw": "180", "start": 0, @@ -3468,6 +3924,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 3442, "end": 0, "operator": "-", "start": 0, @@ -3476,8 +3933,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 3457, "end": 0, "key": { + "commentStart": 3457, "end": 0, "name": "radius", "start": 0, @@ -3486,10 +3945,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3466, "end": 0, "left": { + "commentStart": 3466, "end": 0, "left": { + "commentStart": 3466, "end": 0, "raw": "0.072", "start": 0, @@ -3502,6 +3964,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 3474, "end": 0, "raw": "4", "start": 0, @@ -3518,6 +3981,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 3478, "end": 0, "name": "railHeight", "start": 0, @@ -3535,6 +3999,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 3499, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3542,11 +4007,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 3391, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 3391, "end": 0, "start": 0, "type": "CallExpression", @@ -3557,15 +4024,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 3515, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3524, "end": 0, "left": { "argument": { + "commentStart": 3525, "end": 0, "raw": "0.06", "start": 0, @@ -3576,6 +4046,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 3524, "end": 0, "operator": "-", "start": 0, @@ -3584,6 +4055,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 3532, "end": 0, "name": "railHeight", "start": 0, @@ -3598,12 +4070,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 3544, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3550, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3613,11 +4087,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 3509, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3509, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3629,15 +4105,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 3572, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3581, "end": 0, "left": { "argument": { + "commentStart": 3582, "end": 0, "raw": "0.087", "start": 0, @@ -3648,6 +4127,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 3581, "end": 0, "operator": "-", "start": 0, @@ -3656,6 +4136,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 3590, "end": 0, "name": "railHeight", "start": 0, @@ -3670,12 +4151,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 3602, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3608, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3685,11 +4168,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 3566, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 3566, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3701,14 +4186,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 3630, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3639, "end": 0, "left": { + "commentStart": 3639, "end": 0, "raw": "0.183", "start": 0, @@ -3721,6 +4209,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 3647, "end": 0, "name": "railHeight", "start": 0, @@ -3735,12 +4224,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 3659, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3665, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3750,11 +4241,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 3624, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3624, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3764,11 +4257,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 3695, "end": 0, "properties": [ { + "commentStart": 3706, "end": 0, "key": { + "commentStart": 3706, "end": 0, "name": "angle", "start": 0, @@ -3777,6 +4273,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3714, "end": 0, "raw": "45", "start": 0, @@ -3789,8 +4286,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 3727, "end": 0, "key": { + "commentStart": 3727, "end": 0, "name": "to", "start": 0, @@ -3799,16 +4298,22 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3734, "end": 0, "left": { + "commentStart": 3734, "end": 0, "left": { + "commentStart": 3734, "end": 0, "left": { + "commentStart": 3734, "end": 0, "left": { + "commentStart": 3734, "end": 0, "left": { + "commentStart": 3734, "end": 0, "raw": "1", "start": 0, @@ -3821,6 +4326,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "-", "right": { + "commentStart": 3738, "end": 0, "raw": "0.356", "start": 0, @@ -3837,6 +4343,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 3747, "end": 0, "raw": "2", "start": 0, @@ -3853,6 +4360,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "+", "right": { + "commentStart": 3751, "end": 0, "raw": "0.356", "start": 0, @@ -3869,6 +4377,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 3760, "end": 0, "name": "railHeight", "start": 0, @@ -3881,9 +4390,11 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "+", "right": { + "commentStart": 3773, "computed": false, "end": 0, "object": { + "commentStart": 3773, "end": 0, "name": "originStart", "start": 0, @@ -3891,6 +4402,7 @@ description: Result of parsing 80-20-rail.kcl "type": "Identifier" }, "property": { + "commentStart": 3785, "end": 0, "raw": "1", "start": 0, @@ -3916,12 +4428,14 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 3798, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 3801, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3930,11 +4444,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 3681, "end": 0, "name": "angledLineToY", "start": 0, "type": "Identifier" }, + "commentStart": 3681, "end": 0, "start": 0, "type": "CallExpression", @@ -3945,15 +4461,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 3823, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3832, "end": 0, "left": { "argument": { + "commentStart": 3833, "end": 0, "raw": "0.232", "start": 0, @@ -3964,6 +4483,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 3832, "end": 0, "operator": "-", "start": 0, @@ -3972,6 +4492,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 3841, "end": 0, "name": "railHeight", "start": 0, @@ -3986,12 +4507,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 3853, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3859, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4001,11 +4524,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 3817, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3817, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4015,11 +4540,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 3889, "end": 0, "properties": [ { + "commentStart": 3900, "end": 0, "key": { + "commentStart": 3900, "end": 0, "name": "angle", "start": 0, @@ -4028,6 +4556,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3908, "end": 0, "raw": "135", "start": 0, @@ -4040,8 +4569,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 3922, "end": 0, "key": { + "commentStart": 3922, "end": 0, "name": "to", "start": 0, @@ -4050,12 +4581,16 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3928, "end": 0, "left": { + "commentStart": 3928, "end": 0, "left": { + "commentStart": 3928, "end": 0, "left": { + "commentStart": 3928, "end": 0, "raw": "1", "start": 0, @@ -4068,6 +4603,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "-", "right": { + "commentStart": 3932, "end": 0, "raw": "0.087", "start": 0, @@ -4084,6 +4620,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 3941, "end": 0, "name": "railHeight", "start": 0, @@ -4096,9 +4633,11 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "+", "right": { + "commentStart": 3954, "computed": false, "end": 0, "object": { + "commentStart": 3954, "end": 0, "name": "originStart", "start": 0, @@ -4106,6 +4645,7 @@ description: Result of parsing 80-20-rail.kcl "type": "Identifier" }, "property": { + "commentStart": 3966, "end": 0, "raw": "1", "start": 0, @@ -4131,12 +4671,14 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 3979, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 3982, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4145,11 +4687,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 3875, "end": 0, "name": "angledLineToY", "start": 0, "type": "Identifier" }, + "commentStart": 3875, "end": 0, "start": 0, "type": "CallExpression", @@ -4160,14 +4704,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 4004, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4013, "end": 0, "left": { + "commentStart": 4013, "end": 0, "raw": "0.183", "start": 0, @@ -4180,6 +4727,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 4021, "end": 0, "name": "railHeight", "start": 0, @@ -4194,12 +4742,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 4033, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4039, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4209,11 +4759,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 3998, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3998, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4225,14 +4777,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 4061, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4070, "end": 0, "left": { + "commentStart": 4070, "end": 0, "raw": "0.087", "start": 0, @@ -4245,6 +4800,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 4078, "end": 0, "name": "railHeight", "start": 0, @@ -4259,12 +4815,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 4090, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4096, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4274,11 +4832,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 4055, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 4055, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4290,15 +4850,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 4118, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4127, "end": 0, "left": { "argument": { + "commentStart": 4128, "end": 0, "raw": "0.06", "start": 0, @@ -4309,6 +4872,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 4127, "end": 0, "operator": "-", "start": 0, @@ -4317,6 +4881,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 4135, "end": 0, "name": "railHeight", "start": 0, @@ -4330,11 +4895,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 4112, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 4112, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4344,11 +4911,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 4158, "end": 0, "properties": [ { + "commentStart": 4169, "end": 0, "key": { + "commentStart": 4169, "end": 0, "name": "angleStart", "start": 0, @@ -4357,6 +4927,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4182, "end": 0, "raw": "0", "start": 0, @@ -4369,8 +4940,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 4194, "end": 0, "key": { + "commentStart": 4194, "end": 0, "name": "angleEnd", "start": 0, @@ -4380,6 +4953,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 4206, "end": 0, "raw": "180", "start": 0, @@ -4390,6 +4964,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 4205, "end": 0, "operator": "-", "start": 0, @@ -4398,8 +4973,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 4220, "end": 0, "key": { + "commentStart": 4220, "end": 0, "name": "radius", "start": 0, @@ -4408,10 +4985,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4229, "end": 0, "left": { + "commentStart": 4229, "end": 0, "left": { + "commentStart": 4229, "end": 0, "raw": "0.072", "start": 0, @@ -4424,6 +5004,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 4237, "end": 0, "raw": "4", "start": 0, @@ -4440,6 +5021,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 4241, "end": 0, "name": "railHeight", "start": 0, @@ -4457,6 +5039,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 4262, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4464,11 +5047,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 4154, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 4154, "end": 0, "start": 0, "type": "CallExpression", @@ -4479,15 +5064,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 4278, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4287, "end": 0, "left": { "argument": { + "commentStart": 4288, "end": 0, "raw": "0.1", "start": 0, @@ -4498,6 +5086,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 4287, "end": 0, "operator": "-", "start": 0, @@ -4506,6 +5095,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 4294, "end": 0, "name": "railHeight", "start": 0, @@ -4519,11 +5109,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 4272, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 4272, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4533,11 +5125,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 4317, "end": 0, "properties": [ { + "commentStart": 4328, "end": 0, "key": { + "commentStart": 4328, "end": 0, "name": "angleStart", "start": 0, @@ -4546,6 +5141,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4341, "end": 0, "raw": "0", "start": 0, @@ -4558,8 +5154,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 4353, "end": 0, "key": { + "commentStart": 4353, "end": 0, "name": "angleEnd", "start": 0, @@ -4569,6 +5167,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 4365, "end": 0, "raw": "180", "start": 0, @@ -4579,6 +5178,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 4364, "end": 0, "operator": "-", "start": 0, @@ -4587,8 +5187,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 4379, "end": 0, "key": { + "commentStart": 4379, "end": 0, "name": "radius", "start": 0, @@ -4597,10 +5199,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4388, "end": 0, "left": { + "commentStart": 4388, "end": 0, "left": { + "commentStart": 4388, "end": 0, "raw": "0.072", "start": 0, @@ -4613,6 +5218,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 4396, "end": 0, "raw": "4", "start": 0, @@ -4629,6 +5235,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 4400, "end": 0, "name": "railHeight", "start": 0, @@ -4646,6 +5253,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 4421, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4653,11 +5261,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 4313, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 4313, "end": 0, "start": 0, "type": "CallExpression", @@ -4666,11 +5276,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 4435, "end": 0, "properties": [ { + "commentStart": 4446, "end": 0, "key": { + "commentStart": 4446, "end": 0, "name": "angleStart", "start": 0, @@ -4679,6 +5292,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4459, "end": 0, "raw": "90", "start": 0, @@ -4691,8 +5305,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 4472, "end": 0, "key": { + "commentStart": 4472, "end": 0, "name": "angleEnd", "start": 0, @@ -4701,6 +5317,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4483, "end": 0, "raw": "180", "start": 0, @@ -4713,8 +5330,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 4497, "end": 0, "key": { + "commentStart": 4497, "end": 0, "name": "radius", "start": 0, @@ -4723,8 +5342,10 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4506, "end": 0, "left": { + "commentStart": 4506, "end": 0, "raw": "0.1", "start": 0, @@ -4737,6 +5358,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 4512, "end": 0, "name": "railHeight", "start": 0, @@ -4754,6 +5376,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 4533, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4761,11 +5384,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 4431, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 4431, "end": 0, "start": 0, "type": "CallExpression", @@ -4774,11 +5399,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 4580, "end": 0, "properties": [ { + "commentStart": 4591, "end": 0, "key": { + "commentStart": 4591, "end": 0, "name": "angleStart", "start": 0, @@ -4787,6 +5415,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4604, "end": 0, "raw": "90", "start": 0, @@ -4799,8 +5428,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 4617, "end": 0, "key": { + "commentStart": 4617, "end": 0, "name": "angleEnd", "start": 0, @@ -4810,6 +5441,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 4629, "end": 0, "raw": "90", "start": 0, @@ -4820,6 +5452,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 4628, "end": 0, "operator": "-", "start": 0, @@ -4828,8 +5461,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 4642, "end": 0, "key": { + "commentStart": 4642, "end": 0, "name": "radius", "start": 0, @@ -4838,10 +5473,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4651, "end": 0, "left": { + "commentStart": 4651, "end": 0, "left": { + "commentStart": 4651, "end": 0, "raw": "0.072", "start": 0, @@ -4854,6 +5492,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 4659, "end": 0, "raw": "4", "start": 0, @@ -4870,6 +5509,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 4663, "end": 0, "name": "railHeight", "start": 0, @@ -4887,6 +5527,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 4684, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4894,11 +5535,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 4576, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 4576, "end": 0, "start": 0, "type": "CallExpression", @@ -4909,15 +5552,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 4700, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4709, "end": 0, "left": { "argument": { + "commentStart": 4710, "end": 0, "raw": "0.1", "start": 0, @@ -4928,6 +5574,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 4709, "end": 0, "operator": "-", "start": 0, @@ -4936,6 +5583,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 4716, "end": 0, "name": "railHeight", "start": 0, @@ -4949,11 +5597,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 4694, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 4694, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4963,11 +5613,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 4739, "end": 0, "properties": [ { + "commentStart": 4750, "end": 0, "key": { + "commentStart": 4750, "end": 0, "name": "angleStart", "start": 0, @@ -4976,6 +5629,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4763, "end": 0, "raw": "90", "start": 0, @@ -4988,8 +5642,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 4776, "end": 0, "key": { + "commentStart": 4776, "end": 0, "name": "angleEnd", "start": 0, @@ -4999,6 +5655,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 4788, "end": 0, "raw": "90", "start": 0, @@ -5009,6 +5666,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 4787, "end": 0, "operator": "-", "start": 0, @@ -5017,8 +5675,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 4801, "end": 0, "key": { + "commentStart": 4801, "end": 0, "name": "radius", "start": 0, @@ -5027,10 +5687,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4810, "end": 0, "left": { + "commentStart": 4810, "end": 0, "left": { + "commentStart": 4810, "end": 0, "raw": "0.072", "start": 0, @@ -5043,6 +5706,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 4818, "end": 0, "raw": "4", "start": 0, @@ -5059,6 +5723,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 4822, "end": 0, "name": "railHeight", "start": 0, @@ -5076,6 +5741,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 4843, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -5083,11 +5749,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 4735, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 4735, "end": 0, "start": 0, "type": "CallExpression", @@ -5098,15 +5766,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 4859, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4868, "end": 0, "left": { "argument": { + "commentStart": 4869, "end": 0, "raw": "0.06", "start": 0, @@ -5117,6 +5788,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 4868, "end": 0, "operator": "-", "start": 0, @@ -5125,6 +5797,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 4876, "end": 0, "name": "railHeight", "start": 0, @@ -5139,12 +5812,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 4888, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4894, "end": 0, "start": 0, "type": "TagDeclarator", @@ -5154,11 +5829,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 4853, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 4853, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5170,14 +5847,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 4916, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4925, "end": 0, "left": { + "commentStart": 4925, "end": 0, "raw": "0.087", "start": 0, @@ -5190,6 +5870,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 4933, "end": 0, "name": "railHeight", "start": 0, @@ -5204,12 +5885,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 4945, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4951, "end": 0, "start": 0, "type": "TagDeclarator", @@ -5219,11 +5902,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 4910, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 4910, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5235,14 +5920,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 4973, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4982, "end": 0, "left": { + "commentStart": 4982, "end": 0, "raw": "0.183", "start": 0, @@ -5255,6 +5943,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 4990, "end": 0, "name": "railHeight", "start": 0, @@ -5269,12 +5958,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 5002, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5008, "end": 0, "start": 0, "type": "TagDeclarator", @@ -5284,11 +5975,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 4967, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 4967, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5298,11 +5991,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 5038, "end": 0, "properties": [ { + "commentStart": 5049, "end": 0, "key": { + "commentStart": 5049, "end": 0, "name": "angle", "start": 0, @@ -5311,6 +6007,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5057, "end": 0, "raw": "135", "start": 0, @@ -5323,8 +6020,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 5071, "end": 0, "key": { + "commentStart": 5071, "end": 0, "name": "to", "start": 0, @@ -5333,14 +6032,19 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5077, "end": 0, "left": { + "commentStart": 5077, "end": 0, "left": { + "commentStart": 5077, "end": 0, "left": { + "commentStart": 5077, "end": 0, "left": { + "commentStart": 5077, "end": 0, "raw": "1", "start": 0, @@ -5353,6 +6057,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "-", "right": { + "commentStart": 5081, "end": 0, "raw": "0.356", "start": 0, @@ -5369,6 +6074,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 5090, "end": 0, "raw": "2", "start": 0, @@ -5385,6 +6091,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 5094, "end": 0, "name": "railHeight", "start": 0, @@ -5397,9 +6104,11 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "+", "right": { + "commentStart": 5107, "computed": false, "end": 0, "object": { + "commentStart": 5107, "end": 0, "name": "originStart", "start": 0, @@ -5407,6 +6116,7 @@ description: Result of parsing 80-20-rail.kcl "type": "Identifier" }, "property": { + "commentStart": 5119, "end": 0, "raw": "0", "start": 0, @@ -5432,12 +6142,14 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 5132, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 5135, "end": 0, "start": 0, "type": "TagDeclarator", @@ -5446,11 +6158,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 5024, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 5024, "end": 0, "start": 0, "type": "CallExpression", @@ -5461,15 +6175,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 5157, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5166, "end": 0, "left": { "argument": { + "commentStart": 5167, "end": 0, "raw": "0.232", "start": 0, @@ -5480,6 +6197,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 5166, "end": 0, "operator": "-", "start": 0, @@ -5488,6 +6206,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 5175, "end": 0, "name": "railHeight", "start": 0, @@ -5502,12 +6221,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 5187, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5193, "end": 0, "start": 0, "type": "TagDeclarator", @@ -5517,11 +6238,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 5151, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 5151, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5531,11 +6254,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 5223, "end": 0, "properties": [ { + "commentStart": 5234, "end": 0, "key": { + "commentStart": 5234, "end": 0, "name": "angle", "start": 0, @@ -5544,6 +6270,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5242, "end": 0, "raw": "45", "start": 0, @@ -5556,8 +6283,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 5255, "end": 0, "key": { + "commentStart": 5255, "end": 0, "name": "to", "start": 0, @@ -5566,10 +6295,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5260, "end": 0, "left": { + "commentStart": 5260, "end": 0, "left": { + "commentStart": 5260, "end": 0, "raw": "0.087", "start": 0, @@ -5582,6 +6314,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 5268, "end": 0, "name": "railHeight", "start": 0, @@ -5594,9 +6327,11 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "+", "right": { + "commentStart": 5281, "computed": false, "end": 0, "object": { + "commentStart": 5281, "end": 0, "name": "originStart", "start": 0, @@ -5604,6 +6339,7 @@ description: Result of parsing 80-20-rail.kcl "type": "Identifier" }, "property": { + "commentStart": 5293, "end": 0, "raw": "0", "start": 0, @@ -5629,12 +6365,14 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 5306, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 5309, "end": 0, "start": 0, "type": "TagDeclarator", @@ -5643,11 +6381,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 5209, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 5209, "end": 0, "start": 0, "type": "CallExpression", @@ -5658,14 +6398,17 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 5331, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5340, "end": 0, "left": { + "commentStart": 5340, "end": 0, "raw": "0.183", "start": 0, @@ -5678,6 +6421,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 5348, "end": 0, "name": "railHeight", "start": 0, @@ -5692,12 +6436,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 5360, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5366, "end": 0, "start": 0, "type": "TagDeclarator", @@ -5707,11 +6453,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 5325, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 5325, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5723,15 +6471,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 5388, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5397, "end": 0, "left": { "argument": { + "commentStart": 5398, "end": 0, "raw": "0.087", "start": 0, @@ -5742,6 +6493,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 5397, "end": 0, "operator": "-", "start": 0, @@ -5750,6 +6502,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 5406, "end": 0, "name": "railHeight", "start": 0, @@ -5764,12 +6517,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 5418, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5424, "end": 0, "start": 0, "type": "TagDeclarator", @@ -5779,11 +6534,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 5382, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 5382, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5795,15 +6552,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 5446, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5455, "end": 0, "left": { "argument": { + "commentStart": 5456, "end": 0, "raw": "0.06", "start": 0, @@ -5814,6 +6574,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 5455, "end": 0, "operator": "-", "start": 0, @@ -5822,6 +6583,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 5463, "end": 0, "name": "railHeight", "start": 0, @@ -5835,11 +6597,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 5440, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 5440, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5849,11 +6613,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 5486, "end": 0, "properties": [ { + "commentStart": 5497, "end": 0, "key": { + "commentStart": 5497, "end": 0, "name": "angleStart", "start": 0, @@ -5862,6 +6629,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5510, "end": 0, "raw": "90", "start": 0, @@ -5874,8 +6642,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 5523, "end": 0, "key": { + "commentStart": 5523, "end": 0, "name": "angleEnd", "start": 0, @@ -5885,6 +6655,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 5535, "end": 0, "raw": "90", "start": 0, @@ -5895,6 +6666,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 5534, "end": 0, "operator": "-", "start": 0, @@ -5903,8 +6675,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 5548, "end": 0, "key": { + "commentStart": 5548, "end": 0, "name": "radius", "start": 0, @@ -5913,10 +6687,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5557, "end": 0, "left": { + "commentStart": 5557, "end": 0, "left": { + "commentStart": 5557, "end": 0, "raw": "0.072", "start": 0, @@ -5929,6 +6706,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 5565, "end": 0, "raw": "4", "start": 0, @@ -5945,6 +6723,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 5569, "end": 0, "name": "railHeight", "start": 0, @@ -5962,6 +6741,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 5590, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -5969,11 +6749,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 5482, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 5482, "end": 0, "start": 0, "type": "CallExpression", @@ -5984,15 +6766,18 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 5606, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5615, "end": 0, "left": { "argument": { + "commentStart": 5616, "end": 0, "raw": "0.1", "start": 0, @@ -6003,6 +6788,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 5615, "end": 0, "operator": "-", "start": 0, @@ -6011,6 +6797,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 5622, "end": 0, "name": "railHeight", "start": 0, @@ -6024,11 +6811,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 5600, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 5600, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6038,11 +6827,14 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 5645, "end": 0, "properties": [ { + "commentStart": 5656, "end": 0, "key": { + "commentStart": 5656, "end": 0, "name": "angleStart", "start": 0, @@ -6051,6 +6843,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5669, "end": 0, "raw": "90", "start": 0, @@ -6063,8 +6856,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 5682, "end": 0, "key": { + "commentStart": 5682, "end": 0, "name": "angleEnd", "start": 0, @@ -6074,6 +6869,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 5694, "end": 0, "raw": "90", "start": 0, @@ -6084,6 +6880,7 @@ description: Result of parsing 80-20-rail.kcl "suffix": "None" } }, + "commentStart": 5693, "end": 0, "operator": "-", "start": 0, @@ -6092,8 +6889,10 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 5707, "end": 0, "key": { + "commentStart": 5707, "end": 0, "name": "radius", "start": 0, @@ -6102,10 +6901,13 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5716, "end": 0, "left": { + "commentStart": 5716, "end": 0, "left": { + "commentStart": 5716, "end": 0, "raw": "0.072", "start": 0, @@ -6118,6 +6920,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 5724, "end": 0, "raw": "4", "start": 0, @@ -6134,6 +6937,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 5728, "end": 0, "name": "railHeight", "start": 0, @@ -6151,6 +6955,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ObjectExpression" }, { + "commentStart": 5749, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -6158,11 +6963,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 5641, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 5641, "end": 0, "start": 0, "type": "CallExpression", @@ -6171,11 +6978,13 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [], "callee": { + "commentStart": 5759, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 5759, "end": 0, "start": 0, "type": "CallExpression", @@ -6188,18 +6997,23 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 5834, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5843, "elements": [ { + "commentStart": 5856, "end": 0, "left": { + "commentStart": 5856, "end": 0, "left": { + "commentStart": 5856, "end": 0, "raw": ".5", "start": 0, @@ -6212,6 +7026,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 5861, "end": 0, "name": "railHeight", "start": 0, @@ -6224,9 +7039,11 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "+", "right": { + "commentStart": 5874, "computed": false, "end": 0, "object": { + "commentStart": 5874, "end": 0, "name": "originStart", "start": 0, @@ -6234,6 +7051,7 @@ description: Result of parsing 80-20-rail.kcl "type": "Identifier" }, "property": { + "commentStart": 5886, "end": 0, "raw": "0", "start": 0, @@ -6253,10 +7071,13 @@ description: Result of parsing 80-20-rail.kcl "type": "BinaryExpression" }, { + "commentStart": 5901, "end": 0, "left": { + "commentStart": 5901, "end": 0, "left": { + "commentStart": 5901, "end": 0, "raw": ".5", "start": 0, @@ -6269,6 +7090,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 5906, "end": 0, "name": "railHeight", "start": 0, @@ -6281,9 +7103,11 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "+", "right": { + "commentStart": 5919, "computed": false, "end": 0, "object": { + "commentStart": 5919, "end": 0, "name": "originStart", "start": 0, @@ -6291,6 +7115,7 @@ description: Result of parsing 80-20-rail.kcl "type": "Identifier" }, "property": { + "commentStart": 5931, "end": 0, "raw": "1", "start": 0, @@ -6319,16 +7144,20 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 5955, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5964, "end": 0, "left": { + "commentStart": 5964, "end": 0, "left": { + "commentStart": 5964, "end": 0, "raw": ".205", "start": 0, @@ -6341,6 +7170,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "*", "right": { + "commentStart": 5971, "end": 0, "name": "railHeight", "start": 0, @@ -6353,6 +7183,7 @@ description: Result of parsing 80-20-rail.kcl }, "operator": "/", "right": { + "commentStart": 5984, "end": 0, "raw": "2", "start": 0, @@ -6370,11 +7201,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 5817, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 5817, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6382,6 +7215,7 @@ description: Result of parsing 80-20-rail.kcl "unlabeled": null }, { + "commentStart": 5996, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -6389,11 +7223,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 5812, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 5812, "end": 0, "start": 0, "type": "CallExpression", @@ -6404,12 +7240,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 6014, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6023, "end": 0, "name": "railLength", "start": 0, @@ -6419,11 +7257,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6006, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 6006, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6435,12 +7275,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 6059, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6068, "end": 0, "raw": "0.06", "start": 0, @@ -6455,16 +7297,19 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 6083, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6090, "elements": [ { "arguments": [ { + "commentStart": 6123, "end": 0, "name": "edge3", "start": 0, @@ -6473,11 +7318,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6103, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6103, "end": 0, "start": 0, "type": "CallExpression", @@ -6486,6 +7333,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6162, "end": 0, "name": "edge4", "start": 0, @@ -6494,11 +7342,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6142, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6142, "end": 0, "start": 0, "type": "CallExpression", @@ -6507,6 +7357,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6201, "end": 0, "name": "edge5", "start": 0, @@ -6515,11 +7366,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6181, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6181, "end": 0, "start": 0, "type": "CallExpression", @@ -6528,6 +7381,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6240, "end": 0, "name": "edge6", "start": 0, @@ -6536,11 +7390,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6220, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6220, "end": 0, "start": 0, "type": "CallExpression", @@ -6549,6 +7405,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6279, "end": 0, "name": "edge11", "start": 0, @@ -6557,11 +7414,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6259, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6259, "end": 0, "start": 0, "type": "CallExpression", @@ -6570,6 +7429,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6319, "end": 0, "name": "edge12", "start": 0, @@ -6578,11 +7438,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6299, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6299, "end": 0, "start": 0, "type": "CallExpression", @@ -6591,6 +7453,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6359, "end": 0, "name": "edge13", "start": 0, @@ -6599,11 +7462,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6339, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6339, "end": 0, "start": 0, "type": "CallExpression", @@ -6612,6 +7477,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6399, "end": 0, "name": "edge14", "start": 0, @@ -6620,11 +7486,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6379, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6379, "end": 0, "start": 0, "type": "CallExpression", @@ -6633,6 +7501,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6439, "end": 0, "name": "edge19", "start": 0, @@ -6641,11 +7510,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6419, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6419, "end": 0, "start": 0, "type": "CallExpression", @@ -6654,6 +7525,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6479, "end": 0, "name": "edge20", "start": 0, @@ -6662,11 +7534,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6459, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6459, "end": 0, "start": 0, "type": "CallExpression", @@ -6675,6 +7549,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6519, "end": 0, "name": "edge21", "start": 0, @@ -6683,11 +7558,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6499, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6499, "end": 0, "start": 0, "type": "CallExpression", @@ -6696,6 +7573,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6559, "end": 0, "name": "edge22", "start": 0, @@ -6704,11 +7582,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6539, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6539, "end": 0, "start": 0, "type": "CallExpression", @@ -6717,6 +7597,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6599, "end": 0, "name": "edge27", "start": 0, @@ -6725,11 +7606,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6579, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6579, "end": 0, "start": 0, "type": "CallExpression", @@ -6738,6 +7621,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6639, "end": 0, "name": "edge28", "start": 0, @@ -6746,11 +7630,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6619, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6619, "end": 0, "start": 0, "type": "CallExpression", @@ -6759,6 +7645,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6679, "end": 0, "name": "edge29", "start": 0, @@ -6767,11 +7654,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6659, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6659, "end": 0, "start": 0, "type": "CallExpression", @@ -6780,6 +7669,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6719, "end": 0, "name": "edge30", "start": 0, @@ -6788,11 +7678,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6699, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6699, "end": 0, "start": 0, "type": "CallExpression", @@ -6807,11 +7699,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6042, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 6042, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6823,12 +7717,14 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 6771, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6780, "end": 0, "raw": "0.03", "start": 0, @@ -6843,16 +7739,19 @@ description: Result of parsing 80-20-rail.kcl { "type": "LabeledArg", "label": { + "commentStart": 6795, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6802, "elements": [ { "arguments": [ { + "commentStart": 6835, "end": 0, "name": "edge1", "start": 0, @@ -6861,11 +7760,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6815, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6815, "end": 0, "start": 0, "type": "CallExpression", @@ -6874,6 +7775,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6874, "end": 0, "name": "edge2", "start": 0, @@ -6882,11 +7784,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6854, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6854, "end": 0, "start": 0, "type": "CallExpression", @@ -6895,6 +7799,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6913, "end": 0, "name": "edge7", "start": 0, @@ -6903,11 +7808,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6893, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6893, "end": 0, "start": 0, "type": "CallExpression", @@ -6916,6 +7823,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6952, "end": 0, "name": "edge8", "start": 0, @@ -6924,11 +7832,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6932, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6932, "end": 0, "start": 0, "type": "CallExpression", @@ -6937,6 +7847,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 6991, "end": 0, "name": "edge9", "start": 0, @@ -6945,11 +7856,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6971, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6971, "end": 0, "start": 0, "type": "CallExpression", @@ -6958,6 +7871,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 7030, "end": 0, "name": "edge10", "start": 0, @@ -6966,11 +7880,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 7010, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 7010, "end": 0, "start": 0, "type": "CallExpression", @@ -6979,6 +7895,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 7070, "end": 0, "name": "edge15", "start": 0, @@ -6987,11 +7904,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 7050, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 7050, "end": 0, "start": 0, "type": "CallExpression", @@ -7000,6 +7919,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 7110, "end": 0, "name": "edge16", "start": 0, @@ -7008,11 +7928,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 7090, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 7090, "end": 0, "start": 0, "type": "CallExpression", @@ -7021,6 +7943,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 7150, "end": 0, "name": "edge17", "start": 0, @@ -7029,11 +7952,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 7130, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 7130, "end": 0, "start": 0, "type": "CallExpression", @@ -7042,6 +7967,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 7190, "end": 0, "name": "edge18", "start": 0, @@ -7050,11 +7976,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 7170, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 7170, "end": 0, "start": 0, "type": "CallExpression", @@ -7063,6 +7991,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 7230, "end": 0, "name": "edge23", "start": 0, @@ -7071,11 +8000,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 7210, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 7210, "end": 0, "start": 0, "type": "CallExpression", @@ -7084,6 +8015,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 7270, "end": 0, "name": "edge24", "start": 0, @@ -7092,11 +8024,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 7250, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 7250, "end": 0, "start": 0, "type": "CallExpression", @@ -7105,6 +8039,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 7310, "end": 0, "name": "edge25", "start": 0, @@ -7113,11 +8048,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 7290, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 7290, "end": 0, "start": 0, "type": "CallExpression", @@ -7126,6 +8063,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 7350, "end": 0, "name": "edge26", "start": 0, @@ -7134,11 +8072,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 7330, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 7330, "end": 0, "start": 0, "type": "CallExpression", @@ -7147,6 +8087,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 7390, "end": 0, "name": "edge31", "start": 0, @@ -7155,11 +8096,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 7370, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 7370, "end": 0, "start": 0, "type": "CallExpression", @@ -7168,6 +8111,7 @@ description: Result of parsing 80-20-rail.kcl { "arguments": [ { + "commentStart": 7430, "end": 0, "name": "edge32", "start": 0, @@ -7176,11 +8120,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 7410, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 7410, "end": 0, "start": 0, "type": "CallExpression", @@ -7195,11 +8141,13 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 6754, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 6754, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7207,11 +8155,13 @@ description: Result of parsing 80-20-rail.kcl "unlabeled": null } ], + "commentStart": 298, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "18": [ { + "commentStart": 1819, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7224,6 +8174,7 @@ description: Result of parsing 80-20-rail.kcl ], "24": [ { + "commentStart": 2295, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7236,6 +8187,7 @@ description: Result of parsing 80-20-rail.kcl ], "25": [ { + "commentStart": 2442, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7248,6 +8200,7 @@ description: Result of parsing 80-20-rail.kcl ], "26": [ { + "commentStart": 2509, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7260,6 +8213,7 @@ description: Result of parsing 80-20-rail.kcl ], "27": [ { + "commentStart": 2637, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7272,6 +8226,7 @@ description: Result of parsing 80-20-rail.kcl ], "28": [ { + "commentStart": 2701, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7284,6 +8239,7 @@ description: Result of parsing 80-20-rail.kcl ], "33": [ { + "commentStart": 3085, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7296,6 +8252,7 @@ description: Result of parsing 80-20-rail.kcl ], "50": [ { + "commentStart": 4539, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7308,6 +8265,7 @@ description: Result of parsing 80-20-rail.kcl ], "66": [ { + "commentStart": 5770, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7330,47 +8288,40 @@ description: Result of parsing 80-20-rail.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Sketch side 1 of profile" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "argument": { + "commentStart": 7467, "end": 0, "name": "sketch001", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 7460, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 253, "end": 0, - "nonCodeMeta": { - "nonCodeNodes": {}, - "startNodes": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Sketch side 1 of profile", - "style": "line" - } - } - ] - }, "start": 0 }, + "commentStart": 214, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 215, "end": 0, "name": "originStart", "start": 0, @@ -7380,6 +8331,7 @@ description: Result of parsing 80-20-rail.kcl { "type": "Parameter", "identifier": { + "commentStart": 228, "end": 0, "name": "railHeight", "start": 0, @@ -7389,6 +8341,7 @@ description: Result of parsing 80-20-rail.kcl { "type": "Parameter", "identifier": { + "commentStart": 240, "end": 0, "name": "railLength", "start": 0, @@ -7405,17 +8358,23 @@ description: Result of parsing 80-20-rail.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "// Define function" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 7478, "end": 0, "expression": { "arguments": [ { + "commentStart": 7530, "elements": [ { + "commentStart": 7531, "end": 0, "raw": "0", "start": 0, @@ -7427,6 +8386,7 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 7534, "end": 0, "raw": "0", "start": 0, @@ -7444,6 +8404,7 @@ description: Result of parsing 80-20-rail.kcl "type": "ArrayExpression" }, { + "commentStart": 7538, "end": 0, "raw": "1.5", "start": 0, @@ -7455,6 +8416,7 @@ description: Result of parsing 80-20-rail.kcl } }, { + "commentStart": 7543, "end": 0, "raw": "48", "start": 0, @@ -7467,35 +8429,54 @@ description: Result of parsing 80-20-rail.kcl } ], "callee": { + "commentStart": 7521, "end": 0, "name": "rail8020", "start": 0, "type": "Identifier" }, + "commentStart": 7521, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "preComments": [ + "", + "", + "// Generate one adjustable rail of 80/20" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 150, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// 80/20 Rail", + "// An 80/20 extruded aluminum linear rail. T-slot profile adjustable by profile height, rail length, and origin position", + "", + "", + "// Set units" + ], "properties": [ { + "commentStart": 159, "end": 0, "key": { + "commentStart": 159, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -7504,6 +8485,7 @@ description: Result of parsing 80-20-rail.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 179, "end": 0, "name": "in", "start": 0, @@ -7517,76 +8499,16 @@ description: Result of parsing 80-20-rail.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "0": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Generate one adjustable rail of 80/20", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "80/20 Rail", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "An 80/20 extruded aluminum linear rail. T-slot profile adjustable by profile height, rail length, and origin position", - "style": "line" - } - }, - { + "commentStart": 182, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define function", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/a-parametric-bearing-pillow-block/ast.snap b/rust/kcl-lib/tests/kcl_samples/a-parametric-bearing-pillow-block/ast.snap index 1d2f9db1c..3a29f74b7 100644 --- a/rust/kcl-lib/tests/kcl_samples/a-parametric-bearing-pillow-block/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/a-parametric-bearing-pillow-block/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "Ok": { "body": [ { + "commentStart": 595, "declaration": { + "commentStart": 731, "end": 0, "id": { + "commentStart": 731, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 740, "end": 0, "raw": "6", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants such as length, width, height, counter-bore depth and diameter, bearing diameter, hole location padding, and more" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 742, "declaration": { + "commentStart": 742, "end": 0, "id": { + "commentStart": 742, "end": 0, "name": "width", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 750, "end": 0, "raw": "4", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "VariableDeclaration" }, { + "commentStart": 752, "declaration": { + "commentStart": 752, "end": 0, "id": { + "commentStart": 752, "end": 0, "name": "height", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 761, "end": 0, "raw": "1", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "VariableDeclaration" }, { + "commentStart": 763, "declaration": { + "commentStart": 763, "end": 0, "id": { + "commentStart": 763, "end": 0, "name": "cbDepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 773, "end": 0, "raw": ".25", "start": 0, @@ -122,15 +141,19 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "VariableDeclaration" }, { + "commentStart": 777, "declaration": { + "commentStart": 777, "end": 0, "id": { + "commentStart": 777, "end": 0, "name": "cbDia", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 785, "end": 0, "raw": ".7", "start": 0, @@ -151,15 +174,19 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "VariableDeclaration" }, { + "commentStart": 788, "declaration": { + "commentStart": 788, "end": 0, "id": { + "commentStart": 788, "end": 0, "name": "holeDia", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 798, "end": 0, "raw": ".375", "start": 0, @@ -180,15 +207,19 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "VariableDeclaration" }, { + "commentStart": 803, "declaration": { + "commentStart": 803, "end": 0, "id": { + "commentStart": 803, "end": 0, "name": "padding", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 813, "end": 0, "raw": "1.5", "start": 0, @@ -209,15 +240,19 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "VariableDeclaration" }, { + "commentStart": 817, "declaration": { + "commentStart": 817, "end": 0, "id": { + "commentStart": 817, "end": 0, "name": "bearingDia", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 830, "end": 0, "raw": "3", "start": 0, @@ -238,9 +273,12 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "VariableDeclaration" }, { + "commentStart": 831, "declaration": { + "commentStart": 933, "end": 0, "id": { + "commentStart": 933, "end": 0, "name": "extrude001", "start": 0, @@ -251,6 +289,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "arguments": [ { + "commentStart": 960, "end": 0, "raw": "'XY'", "start": 0, @@ -260,11 +299,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 946, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 946, "end": 0, "start": 0, "type": "CallExpression", @@ -273,17 +314,21 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "arguments": [ { + "commentStart": 986, "elements": [ { + "commentStart": 987, "end": 0, "left": { "argument": { + "commentStart": 988, "end": 0, "name": "width", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 987, "end": 0, "operator": "-", "start": 0, @@ -292,6 +337,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 996, "end": 0, "raw": "2", "start": 0, @@ -307,15 +353,18 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "BinaryExpression" }, { + "commentStart": 999, "end": 0, "left": { "argument": { + "commentStart": 1000, "end": 0, "name": "length", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 999, "end": 0, "operator": "-", "start": 0, @@ -324,6 +373,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1009, "end": 0, "raw": "2", "start": 0, @@ -345,6 +395,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "ArrayExpression" }, { + "commentStart": 1013, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -352,11 +403,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 971, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 971, "end": 0, "start": 0, "type": "CallExpression", @@ -367,16 +420,20 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1026, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1040, "elements": [ { + "commentStart": 1041, "end": 0, "left": { + "commentStart": 1041, "end": 0, "name": "width", "start": 0, @@ -385,6 +442,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1049, "end": 0, "raw": "2", "start": 0, @@ -400,15 +458,18 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "BinaryExpression" }, { + "commentStart": 1052, "end": 0, "left": { "argument": { + "commentStart": 1053, "end": 0, "name": "length", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1052, "end": 0, "operator": "-", "start": 0, @@ -417,6 +478,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1062, "end": 0, "raw": "2", "start": 0, @@ -440,11 +502,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 1021, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1021, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -456,16 +520,20 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1076, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1090, "elements": [ { + "commentStart": 1091, "end": 0, "left": { + "commentStart": 1091, "end": 0, "name": "width", "start": 0, @@ -474,6 +542,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1099, "end": 0, "raw": "2", "start": 0, @@ -489,8 +558,10 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "BinaryExpression" }, { + "commentStart": 1102, "end": 0, "left": { + "commentStart": 1102, "end": 0, "name": "length", "start": 0, @@ -499,6 +570,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1111, "end": 0, "raw": "2", "start": 0, @@ -522,11 +594,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 1071, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1071, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -538,23 +612,28 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1125, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1139, "elements": [ { + "commentStart": 1140, "end": 0, "left": { "argument": { + "commentStart": 1141, "end": 0, "name": "width", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1140, "end": 0, "operator": "-", "start": 0, @@ -563,6 +642,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1149, "end": 0, "raw": "2", "start": 0, @@ -578,8 +658,10 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "BinaryExpression" }, { + "commentStart": 1152, "end": 0, "left": { + "commentStart": 1152, "end": 0, "name": "length", "start": 0, @@ -588,6 +670,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1161, "end": 0, "raw": "2", "start": 0, @@ -611,11 +694,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 1120, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1120, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -625,11 +710,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "arguments": [], "callee": { + "commentStart": 1170, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1170, "end": 0, "start": 0, "type": "CallExpression", @@ -640,12 +727,14 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1191, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1200, "end": 0, "name": "height", "start": 0, @@ -655,11 +744,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 1183, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1183, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -667,6 +758,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "unlabeled": null } ], + "commentStart": 946, "end": 0, "start": 0, "type": "PipeExpression", @@ -677,14 +769,22 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// (Needs to be updated). Sketch the block and extrude up to where the counterbore diameter starts." + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1211, "declaration": { + "commentStart": 1211, "end": 0, "id": { + "commentStart": 1211, "end": 0, "name": "extrude002", "start": 0, @@ -695,6 +795,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "arguments": [ { + "commentStart": 1238, "end": 0, "name": "extrude001", "start": 0, @@ -702,6 +803,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "Identifier" }, { + "commentStart": 1250, "end": 0, "raw": "'end'", "start": 0, @@ -711,11 +813,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 1224, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1224, "end": 0, "start": 0, "type": "CallExpression", @@ -726,19 +830,24 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1276, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1285, "elements": [ { "argument": { + "commentStart": 1298, "end": 0, "left": { + "commentStart": 1298, "end": 0, "left": { + "commentStart": 1298, "end": 0, "name": "width", "start": 0, @@ -747,6 +856,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1306, "end": 0, "raw": "2", "start": 0, @@ -763,8 +873,10 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "-", "right": { + "commentStart": 1311, "end": 0, "left": { + "commentStart": 1311, "end": 0, "name": "padding", "start": 0, @@ -773,6 +885,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1321, "end": 0, "raw": "2", "start": 0, @@ -791,6 +904,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1296, "end": 0, "operator": "-", "start": 0, @@ -799,10 +913,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, { "argument": { + "commentStart": 1337, "end": 0, "left": { + "commentStart": 1337, "end": 0, "left": { + "commentStart": 1337, "end": 0, "name": "length", "start": 0, @@ -811,6 +928,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1346, "end": 0, "raw": "2", "start": 0, @@ -827,8 +945,10 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "-", "right": { + "commentStart": 1351, "end": 0, "left": { + "commentStart": 1351, "end": 0, "name": "padding", "start": 0, @@ -837,6 +957,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1361, "end": 0, "raw": "2", "start": 0, @@ -855,6 +976,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1335, "end": 0, "operator": "-", "start": 0, @@ -871,14 +993,17 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1380, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1389, "end": 0, "left": { + "commentStart": 1389, "end": 0, "name": "cbDia", "start": 0, @@ -887,6 +1012,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1397, "end": 0, "raw": "2", "start": 0, @@ -904,11 +1030,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 1262, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1262, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -920,12 +1048,14 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1435, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1447, "end": 0, "raw": "2", "start": 0, @@ -940,14 +1070,17 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1456, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1467, "end": 0, "left": { + "commentStart": 1467, "end": 0, "name": "length", "start": 0, @@ -956,6 +1089,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "-", "right": { + "commentStart": 1476, "end": 0, "name": "padding", "start": 0, @@ -970,14 +1104,17 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1491, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1498, "elements": [ { + "commentStart": 1499, "end": 0, "raw": "0", "start": 0, @@ -989,6 +1126,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } }, { + "commentStart": 1502, "end": 0, "raw": "1", "start": 0, @@ -1008,11 +1146,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 1412, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, + "commentStart": 1412, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1024,12 +1164,14 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1541, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1553, "end": 0, "raw": "2", "start": 0, @@ -1044,14 +1186,17 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1562, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1573, "end": 0, "left": { + "commentStart": 1573, "end": 0, "name": "width", "start": 0, @@ -1060,6 +1205,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "-", "right": { + "commentStart": 1581, "end": 0, "name": "padding", "start": 0, @@ -1074,14 +1220,17 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1596, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1603, "elements": [ { + "commentStart": 1604, "end": 0, "raw": "1", "start": 0, @@ -1093,6 +1242,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } }, { + "commentStart": 1607, "end": 0, "raw": "0", "start": 0, @@ -1112,11 +1262,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 1518, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, + "commentStart": 1518, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1128,6 +1280,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1633, "end": 0, "name": "length", "start": 0, @@ -1135,12 +1288,14 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "arg": { "argument": { + "commentStart": 1643, "end": 0, "name": "cbDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1642, "end": 0, "operator": "-", "start": 0, @@ -1150,16 +1305,19 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 1622, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1622, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1630, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1167,6 +1325,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } } ], + "commentStart": 1224, "end": 0, "start": 0, "type": "PipeExpression", @@ -1182,9 +1341,12 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "VariableDeclaration" }, { + "commentStart": 1651, "declaration": { + "commentStart": 1653, "end": 0, "id": { + "commentStart": 1653, "end": 0, "name": "extrude003", "start": 0, @@ -1195,6 +1357,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "arguments": [ { + "commentStart": 1680, "end": 0, "name": "extrude001", "start": 0, @@ -1202,6 +1365,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "Identifier" }, { + "commentStart": 1692, "end": 0, "raw": "'start'", "start": 0, @@ -1211,11 +1375,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 1666, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1666, "end": 0, "start": 0, "type": "CallExpression", @@ -1226,19 +1392,24 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1722, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1731, "elements": [ { "argument": { + "commentStart": 1746, "end": 0, "left": { + "commentStart": 1746, "end": 0, "left": { + "commentStart": 1746, "end": 0, "name": "width", "start": 0, @@ -1247,6 +1418,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1754, "end": 0, "raw": "2", "start": 0, @@ -1263,8 +1435,10 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "-", "right": { + "commentStart": 1759, "end": 0, "left": { + "commentStart": 1759, "end": 0, "name": "padding", "start": 0, @@ -1273,6 +1447,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1769, "end": 0, "raw": "2", "start": 0, @@ -1291,6 +1466,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1744, "end": 0, "operator": "-", "start": 0, @@ -1299,10 +1475,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, { "argument": { + "commentStart": 1787, "end": 0, "left": { + "commentStart": 1787, "end": 0, "left": { + "commentStart": 1787, "end": 0, "name": "length", "start": 0, @@ -1311,6 +1490,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1796, "end": 0, "raw": "2", "start": 0, @@ -1327,8 +1507,10 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "-", "right": { + "commentStart": 1801, "end": 0, "left": { + "commentStart": 1801, "end": 0, "name": "padding", "start": 0, @@ -1337,6 +1519,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1811, "end": 0, "raw": "2", "start": 0, @@ -1355,6 +1538,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1785, "end": 0, "operator": "-", "start": 0, @@ -1371,14 +1555,17 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1834, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1843, "end": 0, "left": { + "commentStart": 1843, "end": 0, "name": "holeDia", "start": 0, @@ -1387,6 +1574,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 1853, "end": 0, "raw": "2", "start": 0, @@ -1404,11 +1592,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 1706, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1706, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1420,12 +1610,14 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1891, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1903, "end": 0, "raw": "2", "start": 0, @@ -1440,14 +1632,17 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1912, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1923, "end": 0, "left": { + "commentStart": 1923, "end": 0, "name": "length", "start": 0, @@ -1456,6 +1651,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "-", "right": { + "commentStart": 1932, "end": 0, "name": "padding", "start": 0, @@ -1470,14 +1666,17 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1947, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1954, "elements": [ { + "commentStart": 1955, "end": 0, "raw": "0", "start": 0, @@ -1489,6 +1688,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } }, { + "commentStart": 1958, "end": 0, "raw": "1", "start": 0, @@ -1508,11 +1708,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 1868, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, + "commentStart": 1868, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1524,12 +1726,14 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 1996, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2008, "end": 0, "raw": "2", "start": 0, @@ -1544,14 +1748,17 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 2017, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2028, "end": 0, "left": { + "commentStart": 2028, "end": 0, "name": "width", "start": 0, @@ -1560,6 +1767,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "-", "right": { + "commentStart": 2036, "end": 0, "name": "padding", "start": 0, @@ -1574,14 +1782,17 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 2051, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2058, "elements": [ { + "commentStart": 2059, "end": 0, "raw": "1", "start": 0, @@ -1593,6 +1804,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } }, { + "commentStart": 2062, "end": 0, "raw": "0", "start": 0, @@ -1612,11 +1824,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 1973, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, + "commentStart": 1973, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1628,21 +1842,25 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 2085, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2094, "end": 0, "left": { "argument": { + "commentStart": 2095, "end": 0, "name": "height", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2094, "end": 0, "operator": "-", "start": 0, @@ -1651,6 +1869,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "+", "right": { + "commentStart": 2104, "end": 0, "name": "cbDepth", "start": 0, @@ -1664,11 +1883,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 2077, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2077, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1676,6 +1897,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "unlabeled": null } ], + "commentStart": 1666, "end": 0, "start": 0, "type": "PipeExpression", @@ -1691,9 +1913,12 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "VariableDeclaration" }, { + "commentStart": 2112, "declaration": { + "commentStart": 2114, "end": 0, "id": { + "commentStart": 2114, "end": 0, "name": "extrude004", "start": 0, @@ -1704,6 +1929,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "arguments": [ { + "commentStart": 2141, "end": 0, "name": "extrude001", "start": 0, @@ -1711,6 +1937,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "Identifier" }, { + "commentStart": 2153, "end": 0, "raw": "'end'", "start": 0, @@ -1720,11 +1947,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 2127, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2127, "end": 0, "start": 0, "type": "CallExpression", @@ -1735,14 +1964,17 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 2179, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2188, "elements": [ { + "commentStart": 2189, "end": 0, "raw": "0", "start": 0, @@ -1754,6 +1986,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } }, { + "commentStart": 2192, "end": 0, "raw": "0", "start": 0, @@ -1774,14 +2007,17 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 2202, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2211, "end": 0, "left": { + "commentStart": 2211, "end": 0, "name": "bearingDia", "start": 0, @@ -1790,6 +2026,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "operator": "/", "right": { + "commentStart": 2222, "end": 0, "raw": "2", "start": 0, @@ -1807,11 +2044,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 2165, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2165, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1823,6 +2062,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl { "type": "LabeledArg", "label": { + "commentStart": 2244, "end": 0, "name": "length", "start": 0, @@ -1830,12 +2070,14 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "arg": { "argument": { + "commentStart": 2254, "end": 0, "name": "height", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2253, "end": 0, "operator": "-", "start": 0, @@ -1845,11 +2087,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl } ], "callee": { + "commentStart": 2236, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2236, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1857,6 +2101,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "unlabeled": null } ], + "commentStart": 2127, "end": 0, "start": 0, "type": "PipeExpression", @@ -1872,20 +2117,32 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 563, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// A Parametric Bearing Pillow Block", + "// A bearing pillow block, also known as a plummer block or pillow block bearing, is a pedestal used to provide support for a rotating shaft with the help of compatible bearings and various accessories. Housing a bearing, the pillow block provides a secure and stable foundation that allows the shaft to rotate smoothly within its machinery setup. These components are essential in a wide range of mechanical systems and machinery, playing a key role in reducing friction and supporting radial and axial loads.", + "", + "", + "// Set units" + ], "properties": [ { + "commentStart": 572, "end": 0, "key": { + "commentStart": 572, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -1894,6 +2151,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 592, "end": 0, "name": "in", "start": 0, @@ -1908,20 +2166,9 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl ], "nonCodeMeta": { "nonCodeNodes": { - "7": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "(Needs to be updated). Sketch the block and extrude up to where the counterbore diameter starts.", - "style": "line" - } - } - ], "9": [ { + "commentStart": 1651, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1932,6 +2179,7 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl ], "10": [ { + "commentStart": 2112, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1943,60 +2191,13 @@ description: Result of parsing a-parametric-bearing-pillow-block.kcl }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A Parametric Bearing Pillow Block", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A bearing pillow block, also known as a plummer block or pillow block bearing, is a pedestal used to provide support for a rotating shaft with the help of compatible bearings and various accessories. Housing a bearing, the pillow block provides a secure and stable foundation that allows the shaft to rotate smoothly within its machinery setup. These components are essential in a wide range of mechanical systems and machinery, playing a key role in reducing friction and supporting radial and axial loads.", - "style": "line" - } - }, - { + "commentStart": 595, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants such as length, width, height, counter-bore depth and diameter, bearing diameter, hole location padding, and more", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/ball-bearing/ast.snap b/rust/kcl-lib/tests/kcl_samples/ball-bearing/ast.snap index fcd487a7f..8da2955b3 100644 --- a/rust/kcl-lib/tests/kcl_samples/ball-bearing/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/ball-bearing/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing ball-bearing.kcl "Ok": { "body": [ { + "commentStart": 295, "declaration": { + "commentStart": 385, "end": 0, "id": { + "commentStart": 385, "end": 0, "name": "outsideDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 403, "end": 0, "raw": "1.625", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing ball-bearing.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants like ball diameter, inside diamter, overhange length, and thickness" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 409, "declaration": { + "commentStart": 409, "end": 0, "id": { + "commentStart": 409, "end": 0, "name": "sphereDia", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 421, "end": 0, "raw": "0.25", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" }, { + "commentStart": 426, "declaration": { + "commentStart": 426, "end": 0, "id": { + "commentStart": 426, "end": 0, "name": "shaftDia", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 437, "end": 0, "raw": "0.75", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" }, { + "commentStart": 442, "declaration": { + "commentStart": 442, "end": 0, "id": { + "commentStart": 442, "end": 0, "name": "overallThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 461, "end": 0, "raw": "0.313", "start": 0, @@ -122,15 +141,19 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" }, { + "commentStart": 467, "declaration": { + "commentStart": 467, "end": 0, "id": { + "commentStart": 467, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 483, "end": 0, "raw": "0.100", "start": 0, @@ -151,15 +174,19 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" }, { + "commentStart": 489, "declaration": { + "commentStart": 489, "end": 0, "id": { + "commentStart": 489, "end": 0, "name": "overHangLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 506, "end": 0, "raw": ".3", "start": 0, @@ -180,15 +207,19 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" }, { + "commentStart": 509, "declaration": { + "commentStart": 509, "end": 0, "id": { + "commentStart": 509, "end": 0, "name": "nBalls", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 518, "end": 0, "raw": "10", "start": 0, @@ -209,17 +240,22 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" }, { + "commentStart": 521, "declaration": { + "commentStart": 521, "end": 0, "id": { + "commentStart": 521, "end": 0, "name": "chainWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 534, "end": 0, "left": { + "commentStart": 534, "end": 0, "name": "sphereDia", "start": 0, @@ -228,6 +264,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 546, "end": 0, "raw": "2", "start": 0, @@ -252,17 +289,22 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" }, { + "commentStart": 548, "declaration": { + "commentStart": 548, "end": 0, "id": { + "commentStart": 548, "end": 0, "name": "chainThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 565, "end": 0, "left": { + "commentStart": 565, "end": 0, "name": "sphereDia", "start": 0, @@ -271,6 +313,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 577, "end": 0, "raw": "8", "start": 0, @@ -295,17 +338,22 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" }, { + "commentStart": 579, "declaration": { + "commentStart": 579, "end": 0, "id": { + "commentStart": 579, "end": 0, "name": "linkDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 594, "end": 0, "left": { + "commentStart": 594, "end": 0, "name": "sphereDia", "start": 0, @@ -314,6 +362,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 606, "end": 0, "raw": "4", "start": 0, @@ -338,9 +387,12 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" }, { + "commentStart": 607, "declaration": { + "commentStart": 644, "end": 0, "id": { + "commentStart": 644, "end": 0, "name": "insideWallSketch", "start": 0, @@ -355,21 +407,25 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 695, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 704, "end": 0, "left": { "argument": { + "commentStart": 705, "end": 0, "name": "overallThickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 704, "end": 0, "operator": "-", "start": 0, @@ -378,6 +434,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 724, "end": 0, "raw": "2", "start": 0, @@ -395,16 +452,19 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 677, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 677, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 689, "end": 0, "raw": "\"XY\"", "start": 0, @@ -415,11 +475,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 663, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 663, "end": 0, "start": 0, "type": "CallExpression", @@ -430,14 +492,17 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 748, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 757, "elements": [ { + "commentStart": 758, "end": 0, "raw": "0", "start": 0, @@ -449,6 +514,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 761, "end": 0, "raw": "0", "start": 0, @@ -469,16 +535,20 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 772, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 781, "end": 0, "left": { + "commentStart": 781, "end": 0, "left": { + "commentStart": 781, "end": 0, "name": "shaftDia", "start": 0, @@ -487,6 +557,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 792, "end": 0, "raw": "2", "start": 0, @@ -503,6 +574,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "+", "right": { + "commentStart": 796, "end": 0, "name": "wallThickness", "start": 0, @@ -516,11 +588,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 733, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 733, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -534,14 +608,17 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 842, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 851, "elements": [ { + "commentStart": 852, "end": 0, "raw": "0", "start": 0, @@ -553,6 +630,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 855, "end": 0, "raw": "0", "start": 0, @@ -573,14 +651,17 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 866, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 875, "end": 0, "left": { + "commentStart": 875, "end": 0, "name": "shaftDia", "start": 0, @@ -589,6 +670,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 886, "end": 0, "raw": "2", "start": 0, @@ -606,11 +688,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 827, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 827, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -618,6 +702,7 @@ description: Result of parsing ball-bearing.kcl "unlabeled": null }, { + "commentStart": 896, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -625,22 +710,26 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 822, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 822, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 663, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 898, "end": 0, "start": 0, "type": "NonCodeNode", @@ -663,14 +752,22 @@ description: Result of parsing ball-bearing.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Sketch the inside bearing piece" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 936, "declaration": { + "commentStart": 936, "end": 0, "id": { + "commentStart": 936, "end": 0, "name": "insideWall", "start": 0, @@ -681,12 +778,14 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 975, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 984, "end": 0, "name": "overallThickness", "start": 0, @@ -696,16 +795,19 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 949, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 949, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 957, "end": 0, "name": "insideWallSketch", "start": 0, @@ -723,9 +825,12 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" }, { + "commentStart": 1001, "declaration": { + "commentStart": 1044, "end": 0, "id": { + "commentStart": 1044, "end": 0, "name": "ballsSketch", "start": 0, @@ -736,6 +841,7 @@ description: Result of parsing ball-bearing.kcl { "arguments": [ { + "commentStart": 1072, "end": 0, "raw": "\"XY\"", "start": 0, @@ -745,11 +851,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 1058, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1058, "end": 0, "start": 0, "type": "CallExpression", @@ -758,12 +866,16 @@ description: Result of parsing ball-bearing.kcl { "arguments": [ { + "commentStart": 1098, "elements": [ { + "commentStart": 1099, "end": 0, "left": { + "commentStart": 1099, "end": 0, "left": { + "commentStart": 1099, "end": 0, "name": "shaftDia", "start": 0, @@ -772,6 +884,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 1110, "end": 0, "raw": "2", "start": 0, @@ -788,6 +901,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "+", "right": { + "commentStart": 1114, "end": 0, "name": "wallThickness", "start": 0, @@ -799,6 +913,7 @@ description: Result of parsing ball-bearing.kcl "type": "BinaryExpression" }, { + "commentStart": 1129, "end": 0, "raw": "0.001", "start": 0, @@ -816,6 +931,7 @@ description: Result of parsing ball-bearing.kcl "type": "ArrayExpression" }, { + "commentStart": 1137, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -823,11 +939,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 1083, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1083, "end": 0, "start": 0, "type": "CallExpression", @@ -836,11 +954,14 @@ description: Result of parsing ball-bearing.kcl { "arguments": [ { + "commentStart": 1149, "end": 0, "properties": [ { + "commentStart": 1158, "end": 0, "key": { + "commentStart": 1158, "end": 0, "name": "angleEnd", "start": 0, @@ -849,6 +970,7 @@ description: Result of parsing ball-bearing.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1169, "end": 0, "raw": "0", "start": 0, @@ -861,8 +983,10 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 1179, "end": 0, "key": { + "commentStart": 1179, "end": 0, "name": "angleStart", "start": 0, @@ -871,6 +995,7 @@ description: Result of parsing ball-bearing.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1192, "end": 0, "raw": "180", "start": 0, @@ -883,8 +1008,10 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 1204, "end": 0, "key": { + "commentStart": 1204, "end": 0, "name": "radius", "start": 0, @@ -893,8 +1020,10 @@ description: Result of parsing ball-bearing.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1213, "end": 0, "left": { + "commentStart": 1213, "end": 0, "name": "sphereDia", "start": 0, @@ -903,6 +1032,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 1225, "end": 0, "raw": "2", "start": 0, @@ -924,6 +1054,7 @@ description: Result of parsing ball-bearing.kcl "type": "ObjectExpression" }, { + "commentStart": 1235, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -931,11 +1062,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 1145, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 1145, "end": 0, "start": 0, "type": "CallExpression", @@ -944,22 +1077,26 @@ description: Result of parsing ball-bearing.kcl { "arguments": [], "callee": { + "commentStart": 1243, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1243, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1058, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "3": [ { + "commentStart": 1250, "end": 0, "start": 0, "type": "NonCodeNode", @@ -982,14 +1119,22 @@ description: Result of parsing ball-bearing.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Create the sketch of one of the balls" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1324, "declaration": { + "commentStart": 1324, "end": 0, "id": { + "commentStart": 1324, "end": 0, "name": "balls", "start": 0, @@ -1002,12 +1147,14 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 1353, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1360, "end": 0, "raw": "\"X\"", "start": 0, @@ -1018,16 +1165,19 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 1332, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 1332, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1340, "end": 0, "name": "ballsSketch", "start": 0, @@ -1040,12 +1190,14 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 1396, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1409, "end": 0, "raw": "360", "start": 0, @@ -1060,14 +1212,17 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 1421, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1428, "elements": [ { + "commentStart": 1429, "end": 0, "raw": "0", "start": 0, @@ -1079,6 +1234,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 1432, "end": 0, "raw": "0", "start": 0, @@ -1090,6 +1246,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 1435, "end": 0, "raw": "1", "start": 0, @@ -1110,14 +1267,17 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 1446, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1455, "elements": [ { + "commentStart": 1456, "end": 0, "raw": "0", "start": 0, @@ -1129,6 +1289,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 1459, "end": 0, "raw": "0", "start": 0, @@ -1140,6 +1301,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 1462, "end": 0, "raw": "0", "start": 0, @@ -1160,12 +1322,14 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 1473, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1485, "end": 0, "name": "nBalls", "start": 0, @@ -1176,12 +1340,14 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 1500, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1519, "end": 0, "raw": "true", "start": 0, @@ -1192,11 +1358,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 1370, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 1370, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1204,11 +1372,13 @@ description: Result of parsing ball-bearing.kcl "unlabeled": null } ], + "commentStart": 1332, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 1530, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1236,9 +1406,12 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" }, { + "commentStart": 1584, "declaration": { + "commentStart": 1584, "end": 0, "id": { + "commentStart": 1584, "end": 0, "name": "chainSketch", "start": 0, @@ -1249,6 +1422,7 @@ description: Result of parsing ball-bearing.kcl { "arguments": [ { + "commentStart": 1612, "end": 0, "raw": "\"XY\"", "start": 0, @@ -1258,11 +1432,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 1598, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1598, "end": 0, "start": 0, "type": "CallExpression", @@ -1271,16 +1447,22 @@ description: Result of parsing ball-bearing.kcl { "arguments": [ { + "commentStart": 1638, "elements": [ { + "commentStart": 1647, "end": 0, "left": { + "commentStart": 1647, "end": 0, "left": { + "commentStart": 1647, "end": 0, "left": { + "commentStart": 1647, "end": 0, "left": { + "commentStart": 1647, "end": 0, "name": "shaftDia", "start": 0, @@ -1289,6 +1471,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 1658, "end": 0, "raw": "2", "start": 0, @@ -1305,6 +1488,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "+", "right": { + "commentStart": 1662, "end": 0, "name": "wallThickness", "start": 0, @@ -1317,8 +1501,10 @@ description: Result of parsing ball-bearing.kcl }, "operator": "+", "right": { + "commentStart": 1678, "end": 0, "left": { + "commentStart": 1678, "end": 0, "name": "sphereDia", "start": 0, @@ -1327,6 +1513,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 1690, "end": 0, "raw": "2", "start": 0, @@ -1347,8 +1534,10 @@ description: Result of parsing ball-bearing.kcl }, "operator": "-", "right": { + "commentStart": 1695, "end": 0, "left": { + "commentStart": 1695, "end": 0, "name": "chainWidth", "start": 0, @@ -1357,6 +1546,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 1708, "end": 0, "raw": "2", "start": 0, @@ -1376,8 +1566,10 @@ description: Result of parsing ball-bearing.kcl "type": "BinaryExpression" }, { + "commentStart": 1719, "end": 0, "left": { + "commentStart": 1719, "end": 0, "raw": "0.125", "start": 0, @@ -1394,6 +1586,7 @@ description: Result of parsing ball-bearing.kcl { "arguments": [ { + "commentStart": 1741, "end": 0, "raw": "60", "start": 0, @@ -1406,11 +1599,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 1731, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 1731, "end": 0, "start": 0, "type": "CallExpression", @@ -1418,11 +1613,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 1727, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, + "commentStart": 1727, "end": 0, "start": 0, "type": "CallExpression", @@ -1439,6 +1636,7 @@ description: Result of parsing ball-bearing.kcl "type": "ArrayExpression" }, { + "commentStart": 1754, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1446,11 +1644,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 1623, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1623, "end": 0, "start": 0, "type": "CallExpression", @@ -1459,11 +1659,14 @@ description: Result of parsing ball-bearing.kcl { "arguments": [ { + "commentStart": 1766, "end": 0, "properties": [ { + "commentStart": 1775, "end": 0, "key": { + "commentStart": 1775, "end": 0, "name": "angleEnd", "start": 0, @@ -1472,6 +1675,7 @@ description: Result of parsing ball-bearing.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1786, "end": 0, "raw": "60", "start": 0, @@ -1484,8 +1688,10 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 1797, "end": 0, "key": { + "commentStart": 1797, "end": 0, "name": "angleStart", "start": 0, @@ -1494,6 +1700,7 @@ description: Result of parsing ball-bearing.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1810, "end": 0, "raw": "120", "start": 0, @@ -1506,8 +1713,10 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 1822, "end": 0, "key": { + "commentStart": 1822, "end": 0, "name": "radius", "start": 0, @@ -1516,8 +1725,10 @@ description: Result of parsing ball-bearing.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1831, "end": 0, "left": { + "commentStart": 1831, "end": 0, "name": "sphereDia", "start": 0, @@ -1526,6 +1737,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 1843, "end": 0, "raw": "2", "start": 0, @@ -1547,6 +1759,7 @@ description: Result of parsing ball-bearing.kcl "type": "ObjectExpression" }, { + "commentStart": 1853, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1554,11 +1767,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 1762, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 1762, "end": 0, "start": 0, "type": "CallExpression", @@ -1569,14 +1784,17 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 1866, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1872, "elements": [ { + "commentStart": 1873, "end": 0, "raw": "0", "start": 0, @@ -1588,6 +1806,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 1876, "end": 0, "name": "chainThickness", "start": 0, @@ -1603,11 +1822,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 1861, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1861, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1619,21 +1840,25 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 1903, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1909, "elements": [ { "argument": { + "commentStart": 1911, "end": 0, "name": "chainWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1910, "end": 0, "operator": "-", "start": 0, @@ -1641,6 +1866,7 @@ description: Result of parsing ball-bearing.kcl "type": "UnaryExpression" }, { + "commentStart": 1923, "end": 0, "raw": "0", "start": 0, @@ -1660,11 +1886,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 1898, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1898, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1674,22 +1902,26 @@ description: Result of parsing ball-bearing.kcl { "arguments": [], "callee": { + "commentStart": 1932, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1932, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1598, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "5": [ { + "commentStart": 1939, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1717,9 +1949,12 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" }, { + "commentStart": 1969, "declaration": { + "commentStart": 1969, "end": 0, "id": { + "commentStart": 1969, "end": 0, "name": "chainHead", "start": 0, @@ -1732,12 +1967,14 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2002, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2009, "end": 0, "raw": "\"X\"", "start": 0, @@ -1748,16 +1985,19 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 1981, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 1981, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1989, "end": 0, "name": "chainSketch", "start": 0, @@ -1770,12 +2010,14 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2045, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2058, "end": 0, "raw": "360", "start": 0, @@ -1790,14 +2032,17 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2070, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2077, "elements": [ { + "commentStart": 2078, "end": 0, "raw": "0", "start": 0, @@ -1809,6 +2054,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 2081, "end": 0, "raw": "0", "start": 0, @@ -1820,6 +2066,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 2084, "end": 0, "raw": "1", "start": 0, @@ -1840,14 +2087,17 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2095, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2104, "elements": [ { + "commentStart": 2105, "end": 0, "raw": "0", "start": 0, @@ -1859,6 +2109,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 2108, "end": 0, "raw": "0", "start": 0, @@ -1870,6 +2121,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 2111, "end": 0, "raw": "0", "start": 0, @@ -1890,12 +2142,14 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2122, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2134, "end": 0, "name": "nBalls", "start": 0, @@ -1906,12 +2160,14 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2149, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2168, "end": 0, "raw": "true", "start": 0, @@ -1922,11 +2178,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 2019, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 2019, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1934,11 +2192,13 @@ description: Result of parsing ball-bearing.kcl "unlabeled": null } ], + "commentStart": 1981, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 2179, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1966,9 +2226,12 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" }, { + "commentStart": 2238, "declaration": { + "commentStart": 2238, "end": 0, "id": { + "commentStart": 2238, "end": 0, "name": "linkSketch", "start": 0, @@ -1979,6 +2242,7 @@ description: Result of parsing ball-bearing.kcl { "arguments": [ { + "commentStart": 2265, "end": 0, "raw": "\"XZ\"", "start": 0, @@ -1988,11 +2252,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 2251, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2251, "end": 0, "start": 0, "type": "CallExpression", @@ -2003,20 +2269,26 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2291, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2300, "elements": [ { + "commentStart": 2311, "end": 0, "left": { + "commentStart": 2311, "end": 0, "left": { + "commentStart": 2311, "end": 0, "left": { + "commentStart": 2311, "end": 0, "name": "shaftDia", "start": 0, @@ -2025,6 +2297,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 2322, "end": 0, "raw": "2", "start": 0, @@ -2041,6 +2314,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "+", "right": { + "commentStart": 2326, "end": 0, "name": "wallThickness", "start": 0, @@ -2053,8 +2327,10 @@ description: Result of parsing ball-bearing.kcl }, "operator": "+", "right": { + "commentStart": 2342, "end": 0, "left": { + "commentStart": 2342, "end": 0, "name": "sphereDia", "start": 0, @@ -2063,6 +2339,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 2354, "end": 0, "raw": "2", "start": 0, @@ -2082,6 +2359,7 @@ description: Result of parsing ball-bearing.kcl "type": "BinaryExpression" }, { + "commentStart": 2366, "end": 0, "raw": "0", "start": 0, @@ -2102,14 +2380,17 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2385, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2394, "end": 0, "left": { + "commentStart": 2394, "end": 0, "name": "linkDiameter", "start": 0, @@ -2118,6 +2399,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 2409, "end": 0, "raw": "2", "start": 0, @@ -2135,11 +2417,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 2276, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2276, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2147,11 +2431,13 @@ description: Result of parsing ball-bearing.kcl "unlabeled": null } ], + "commentStart": 2251, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 2417, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2179,9 +2465,12 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" }, { + "commentStart": 2446, "declaration": { + "commentStart": 2446, "end": 0, "id": { + "commentStart": 2446, "end": 0, "name": "linkRevolve", "start": 0, @@ -2194,12 +2483,14 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2480, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2487, "end": 0, "raw": "'Y'", "start": 0, @@ -2211,14 +2502,17 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2492, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2500, "end": 0, "left": { + "commentStart": 2500, "end": 0, "raw": "360", "start": 0, @@ -2231,6 +2525,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 2506, "end": 0, "name": "nBalls", "start": 0, @@ -2244,16 +2539,19 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 2460, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 2460, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2468, "end": 0, "name": "linkSketch", "start": 0, @@ -2266,12 +2564,14 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2545, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2558, "end": 0, "raw": "360", "start": 0, @@ -2286,14 +2586,17 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2570, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2577, "elements": [ { + "commentStart": 2578, "end": 0, "raw": "0", "start": 0, @@ -2305,6 +2608,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 2581, "end": 0, "raw": "0", "start": 0, @@ -2316,6 +2620,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 2584, "end": 0, "raw": "1", "start": 0, @@ -2336,14 +2641,17 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2595, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2604, "elements": [ { + "commentStart": 2605, "end": 0, "raw": "0", "start": 0, @@ -2355,6 +2663,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 2608, "end": 0, "raw": "0", "start": 0, @@ -2366,6 +2675,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 2611, "end": 0, "raw": "0", "start": 0, @@ -2386,12 +2696,14 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2622, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2634, "end": 0, "name": "nBalls", "start": 0, @@ -2402,12 +2714,14 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2649, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2668, "end": 0, "raw": "true", "start": 0, @@ -2418,11 +2732,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 2519, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 2519, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2430,11 +2746,13 @@ description: Result of parsing ball-bearing.kcl "unlabeled": null } ], + "commentStart": 2460, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 2679, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2462,9 +2780,12 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" }, { + "commentStart": 2724, "declaration": { + "commentStart": 2724, "end": 0, "id": { + "commentStart": 2724, "end": 0, "name": "outsideWallSketch", "start": 0, @@ -2479,21 +2800,25 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2776, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2785, "end": 0, "left": { "argument": { + "commentStart": 2786, "end": 0, "name": "overallThickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2785, "end": 0, "operator": "-", "start": 0, @@ -2502,6 +2827,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 2805, "end": 0, "raw": "2", "start": 0, @@ -2519,16 +2845,19 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 2758, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 2758, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2770, "end": 0, "raw": "\"XY\"", "start": 0, @@ -2539,11 +2868,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 2744, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2744, "end": 0, "start": 0, "type": "CallExpression", @@ -2554,14 +2885,17 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2829, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2838, "elements": [ { + "commentStart": 2839, "end": 0, "raw": "0", "start": 0, @@ -2573,6 +2907,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 2842, "end": 0, "raw": "0", "start": 0, @@ -2593,14 +2928,17 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2853, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2862, "end": 0, "left": { + "commentStart": 2862, "end": 0, "name": "outsideDiameter", "start": 0, @@ -2609,6 +2947,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 2880, "end": 0, "raw": "2", "start": 0, @@ -2626,11 +2965,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 2814, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2814, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2644,14 +2985,17 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2914, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2923, "elements": [ { + "commentStart": 2924, "end": 0, "raw": "0", "start": 0, @@ -2663,6 +3007,7 @@ description: Result of parsing ball-bearing.kcl } }, { + "commentStart": 2927, "end": 0, "raw": "0", "start": 0, @@ -2683,18 +3028,23 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 2938, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2947, "end": 0, "left": { + "commentStart": 2947, "end": 0, "left": { + "commentStart": 2947, "end": 0, "left": { + "commentStart": 2947, "end": 0, "name": "shaftDia", "start": 0, @@ -2703,6 +3053,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "/", "right": { + "commentStart": 2958, "end": 0, "raw": "2", "start": 0, @@ -2719,6 +3070,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "+", "right": { + "commentStart": 2962, "end": 0, "name": "wallThickness", "start": 0, @@ -2731,6 +3083,7 @@ description: Result of parsing ball-bearing.kcl }, "operator": "+", "right": { + "commentStart": 2978, "end": 0, "name": "sphereDia", "start": 0, @@ -2744,11 +3097,13 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 2899, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2899, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2756,6 +3111,7 @@ description: Result of parsing ball-bearing.kcl "unlabeled": null }, { + "commentStart": 2996, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2763,17 +3119,20 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 2894, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 2894, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 2744, "end": 0, "start": 0, "type": "PipeExpression", @@ -2789,9 +3148,12 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" }, { + "commentStart": 2998, "declaration": { + "commentStart": 3000, "end": 0, "id": { + "commentStart": 3000, "end": 0, "name": "outsideWall", "start": 0, @@ -2802,12 +3164,14 @@ description: Result of parsing ball-bearing.kcl { "type": "LabeledArg", "label": { + "commentStart": 3041, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3050, "end": 0, "name": "overallThickness", "start": 0, @@ -2817,16 +3181,19 @@ description: Result of parsing ball-bearing.kcl } ], "callee": { + "commentStart": 3014, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 3014, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 3022, "end": 0, "name": "outsideWallSketch", "start": 0, @@ -2844,20 +3211,32 @@ description: Result of parsing ball-bearing.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 263, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Ball Bearing", + "// A ball bearing is a type of rolling-element bearing that uses balls to maintain the separation between the bearing races. The primary purpose of a ball bearing is to reduce rotational friction and support radial and axial loads.", + "", + "", + "// Set units" + ], "properties": [ { + "commentStart": 272, "end": 0, "key": { + "commentStart": 272, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -2866,6 +3245,7 @@ description: Result of parsing ball-bearing.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 292, "end": 0, "name": "in", "start": 0, @@ -2880,32 +3260,9 @@ description: Result of parsing ball-bearing.kcl ], "nonCodeMeta": { "nonCodeNodes": { - "9": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Sketch the inside bearing piece", - "style": "line" - } - } - ], - "11": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the sketch of one of the balls", - "style": "line" - } - } - ], "18": [ { + "commentStart": 2998, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2916,6 +3273,7 @@ description: Result of parsing ball-bearing.kcl ], "19": [ { + "commentStart": 3067, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2929,60 +3287,13 @@ description: Result of parsing ball-bearing.kcl }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Ball Bearing", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A ball bearing is a type of rolling-element bearing that uses balls to maintain the separation between the bearing races. The primary purpose of a ball bearing is to reduce rotational friction and support radial and axial loads.", - "style": "line" - } - }, - { + "commentStart": 295, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants like ball diameter, inside diamter, overhange length, and thickness", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/bench/ast.snap b/rust/kcl-lib/tests/kcl_samples/bench/ast.snap index cfe9997bf..303c91692 100644 --- a/rust/kcl-lib/tests/kcl_samples/bench/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/bench/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing bench.kcl "Ok": { "body": [ { + "commentStart": 394, "declaration": { + "commentStart": 423, "end": 0, "id": { + "commentStart": 423, "end": 0, "name": "benchLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 437, "end": 0, "raw": "56", "start": 0, @@ -30,23 +34,34 @@ description: Result of parsing bench.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define the bench length" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 439, "end": 0, "path": { "type": "Kcl", "filename": "bench-parts.kcl" }, + "preComments": [ + "", + "", + "// Import various constants and functions from our library" + ], "selector": { "type": "List", "items": [ { "alias": null, + "commentStart": 507, "end": 0, "name": { + "commentStart": 507, "end": 0, "name": "dividerThickness", "start": 0, @@ -62,6 +77,7 @@ description: Result of parsing bench.kcl "type": "ImportStatement" }, { + "commentStart": 547, "end": 0, "path": { "type": "Kcl", @@ -72,8 +88,10 @@ description: Result of parsing bench.kcl "items": [ { "alias": null, + "commentStart": 554, "end": 0, "name": { + "commentStart": 554, "end": 0, "name": "divider", "start": 0, @@ -89,6 +107,7 @@ description: Result of parsing bench.kcl "type": "ImportStatement" }, { + "commentStart": 585, "end": 0, "path": { "type": "Kcl", @@ -99,8 +118,10 @@ description: Result of parsing bench.kcl "items": [ { "alias": null, + "commentStart": 592, "end": 0, "name": { + "commentStart": 592, "end": 0, "name": "connector", "start": 0, @@ -116,6 +137,7 @@ description: Result of parsing bench.kcl "type": "ImportStatement" }, { + "commentStart": 625, "end": 0, "path": { "type": "Kcl", @@ -126,8 +148,10 @@ description: Result of parsing bench.kcl "items": [ { "alias": null, + "commentStart": 632, "end": 0, "name": { + "commentStart": 632, "end": 0, "name": "seatSlats", "start": 0, @@ -143,6 +167,7 @@ description: Result of parsing bench.kcl "type": "ImportStatement" }, { + "commentStart": 665, "end": 0, "path": { "type": "Kcl", @@ -153,8 +178,10 @@ description: Result of parsing bench.kcl "items": [ { "alias": null, + "commentStart": 672, "end": 0, "name": { + "commentStart": 672, "end": 0, "name": "backSlats", "start": 0, @@ -170,6 +197,7 @@ description: Result of parsing bench.kcl "type": "ImportStatement" }, { + "commentStart": 705, "end": 0, "path": { "type": "Kcl", @@ -180,8 +208,10 @@ description: Result of parsing bench.kcl "items": [ { "alias": null, + "commentStart": 712, "end": 0, "name": { + "commentStart": 712, "end": 0, "name": "armRest", "start": 0, @@ -197,10 +227,12 @@ description: Result of parsing bench.kcl "type": "ImportStatement" }, { + "commentStart": 742, "end": 0, "expression": { "arguments": [ { + "commentStart": 811, "end": 0, "raw": "\"YZ\"", "start": 0, @@ -210,21 +242,29 @@ description: Result of parsing bench.kcl } ], "callee": { + "commentStart": 803, "end": 0, "name": "divider", "start": 0, "type": "Identifier" }, + "commentStart": 803, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "preComments": [ + "", + "", + "// Create the dividers, these hold the seat and back slats" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 817, "end": 0, "expression": { "arguments": [ @@ -233,14 +273,17 @@ description: Result of parsing bench.kcl { "type": "LabeledArg", "label": { + "commentStart": 844, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 853, "end": 0, "left": { + "commentStart": 853, "end": 0, "name": "benchLength", "start": 0, @@ -249,6 +292,7 @@ description: Result of parsing bench.kcl }, "operator": "/", "right": { + "commentStart": 867, "end": 0, "raw": "2", "start": 0, @@ -266,16 +310,19 @@ description: Result of parsing bench.kcl } ], "callee": { + "commentStart": 825, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 825, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 837, "end": 0, "raw": "\"-YZ\"", "start": 0, @@ -286,11 +333,13 @@ description: Result of parsing bench.kcl } ], "callee": { + "commentStart": 817, "end": 0, "name": "divider", "start": 0, "type": "Identifier" }, + "commentStart": 817, "end": 0, "start": 0, "type": "CallExpression", @@ -301,6 +350,7 @@ description: Result of parsing bench.kcl "type": "ExpressionStatement" }, { + "commentStart": 871, "end": 0, "expression": { "arguments": [ @@ -309,14 +359,17 @@ description: Result of parsing bench.kcl { "type": "LabeledArg", "label": { + "commentStart": 897, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 906, "end": 0, "left": { + "commentStart": 906, "end": 0, "name": "benchLength", "start": 0, @@ -325,6 +378,7 @@ description: Result of parsing bench.kcl }, "operator": "/", "right": { + "commentStart": 920, "end": 0, "raw": "2", "start": 0, @@ -342,16 +396,19 @@ description: Result of parsing bench.kcl } ], "callee": { + "commentStart": 879, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 879, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 891, "end": 0, "raw": "\"YZ\"", "start": 0, @@ -362,11 +419,13 @@ description: Result of parsing bench.kcl } ], "callee": { + "commentStart": 871, "end": 0, "name": "divider", "start": 0, "type": "Identifier" }, + "commentStart": 871, "end": 0, "start": 0, "type": "CallExpression", @@ -377,6 +436,7 @@ description: Result of parsing bench.kcl "type": "ExpressionStatement" }, { + "commentStart": 923, "end": 0, "expression": { "arguments": [ @@ -385,21 +445,25 @@ description: Result of parsing bench.kcl { "type": "LabeledArg", "label": { + "commentStart": 999, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1008, "end": 0, "left": { "argument": { + "commentStart": 1009, "end": 0, "name": "benchLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1008, "end": 0, "operator": "-", "start": 0, @@ -408,6 +472,7 @@ description: Result of parsing bench.kcl }, "operator": "/", "right": { + "commentStart": 1023, "end": 0, "raw": "2", "start": 0, @@ -425,16 +490,19 @@ description: Result of parsing bench.kcl } ], "callee": { + "commentStart": 981, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 981, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 993, "end": 0, "raw": "\"YZ\"", "start": 0, @@ -444,6 +512,7 @@ description: Result of parsing bench.kcl } }, { + "commentStart": 1027, "end": 0, "name": "benchLength", "start": 0, @@ -452,21 +521,29 @@ description: Result of parsing bench.kcl } ], "callee": { + "commentStart": 971, "end": 0, "name": "connector", "start": 0, "type": "Identifier" }, + "commentStart": 971, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "preComments": [ + "", + "", + "// Create the connectors to join the dividers" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 1039, "end": 0, "expression": { "arguments": [ @@ -475,23 +552,28 @@ description: Result of parsing bench.kcl { "type": "LabeledArg", "label": { + "commentStart": 1094, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1103, "end": 0, "left": { + "commentStart": 1103, "end": 0, "left": { "argument": { + "commentStart": 1104, "end": 0, "name": "benchLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1103, "end": 0, "operator": "-", "start": 0, @@ -500,6 +582,7 @@ description: Result of parsing bench.kcl }, "operator": "/", "right": { + "commentStart": 1118, "end": 0, "raw": "2", "start": 0, @@ -516,8 +599,10 @@ description: Result of parsing bench.kcl }, "operator": "-", "right": { + "commentStart": 1122, "end": 0, "left": { + "commentStart": 1122, "end": 0, "name": "dividerThickness", "start": 0, @@ -526,6 +611,7 @@ description: Result of parsing bench.kcl }, "operator": "/", "right": { + "commentStart": 1141, "end": 0, "raw": "2", "start": 0, @@ -547,16 +633,19 @@ description: Result of parsing bench.kcl } ], "callee": { + "commentStart": 1076, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 1076, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1088, "end": 0, "raw": "\"YZ\"", "start": 0, @@ -566,8 +655,10 @@ description: Result of parsing bench.kcl } }, { + "commentStart": 1145, "end": 0, "left": { + "commentStart": 1145, "end": 0, "name": "benchLength", "start": 0, @@ -576,6 +667,7 @@ description: Result of parsing bench.kcl }, "operator": "+", "right": { + "commentStart": 1159, "end": 0, "name": "dividerThickness", "start": 0, @@ -588,21 +680,29 @@ description: Result of parsing bench.kcl } ], "callee": { + "commentStart": 1066, "end": 0, "name": "seatSlats", "start": 0, "type": "Identifier" }, + "commentStart": 1066, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "preComments": [ + "", + "", + "// Create the seat slats" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 1176, "end": 0, "expression": { "arguments": [ @@ -611,23 +711,28 @@ description: Result of parsing bench.kcl { "type": "LabeledArg", "label": { + "commentStart": 1231, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1240, "end": 0, "left": { + "commentStart": 1240, "end": 0, "left": { "argument": { + "commentStart": 1241, "end": 0, "name": "benchLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1240, "end": 0, "operator": "-", "start": 0, @@ -636,6 +741,7 @@ description: Result of parsing bench.kcl }, "operator": "/", "right": { + "commentStart": 1255, "end": 0, "raw": "2", "start": 0, @@ -652,8 +758,10 @@ description: Result of parsing bench.kcl }, "operator": "-", "right": { + "commentStart": 1259, "end": 0, "left": { + "commentStart": 1259, "end": 0, "name": "dividerThickness", "start": 0, @@ -662,6 +770,7 @@ description: Result of parsing bench.kcl }, "operator": "/", "right": { + "commentStart": 1278, "end": 0, "raw": "2", "start": 0, @@ -683,16 +792,19 @@ description: Result of parsing bench.kcl } ], "callee": { + "commentStart": 1213, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 1213, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1225, "end": 0, "raw": "\"YZ\"", "start": 0, @@ -702,8 +814,10 @@ description: Result of parsing bench.kcl } }, { + "commentStart": 1282, "end": 0, "left": { + "commentStart": 1282, "end": 0, "name": "benchLength", "start": 0, @@ -712,6 +826,7 @@ description: Result of parsing bench.kcl }, "operator": "+", "right": { + "commentStart": 1296, "end": 0, "name": "dividerThickness", "start": 0, @@ -724,25 +839,34 @@ description: Result of parsing bench.kcl } ], "callee": { + "commentStart": 1203, "end": 0, "name": "backSlats", "start": 0, "type": "Identifier" }, + "commentStart": 1203, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "preComments": [ + "", + "", + "// Create the back slats" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 1313, "end": 0, "expression": { "arguments": [ { + "commentStart": 1347, "end": 0, "raw": "\"-YZ\"", "start": 0, @@ -751,8 +875,10 @@ description: Result of parsing bench.kcl "value": "-YZ" }, { + "commentStart": 1354, "end": 0, "left": { + "commentStart": 1354, "end": 0, "name": "benchLength", "start": 0, @@ -761,6 +887,7 @@ description: Result of parsing bench.kcl }, "operator": "/", "right": { + "commentStart": 1368, "end": 0, "raw": "2", "start": 0, @@ -777,25 +904,34 @@ description: Result of parsing bench.kcl } ], "callee": { + "commentStart": 1339, "end": 0, "name": "armRest", "start": 0, "type": "Identifier" }, + "commentStart": 1339, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "preComments": [ + "", + "", + "// Create the arm rests" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 1371, "end": 0, "expression": { "arguments": [ { + "commentStart": 1379, "end": 0, "raw": "\"-YZ\"", "start": 0, @@ -804,15 +940,18 @@ description: Result of parsing bench.kcl "value": "-YZ" }, { + "commentStart": 1386, "end": 0, "left": { "argument": { + "commentStart": 1387, "end": 0, "name": "benchLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1386, "end": 0, "operator": "-", "start": 0, @@ -821,6 +960,7 @@ description: Result of parsing bench.kcl }, "operator": "/", "right": { + "commentStart": 1401, "end": 0, "raw": "2", "start": 0, @@ -837,11 +977,13 @@ description: Result of parsing bench.kcl } ], "callee": { + "commentStart": 1371, "end": 0, "name": "armRest", "start": 0, "type": "Identifier" }, + "commentStart": 1371, "end": 0, "start": 0, "type": "CallExpression", @@ -852,20 +994,32 @@ description: Result of parsing bench.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 362, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Bench", + "// This is a slight remix of Depep1's original 3D Boaty (https://www.printables.com/model/1141963-3d-boaty). This is a tool used for benchmarking 3D FDM printers for bed adhesion, overhangs, bridging and top surface quality. The name of this file is a bit of misnomer, the shape of the object is a typical park bench.", + "", + "", + "// Set units in millimeters (mm)" + ], "properties": [ { + "commentStart": 371, "end": 0, "key": { + "commentStart": 371, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -874,6 +1028,7 @@ description: Result of parsing bench.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 391, "end": 0, "name": "mm", "start": 0, @@ -887,136 +1042,16 @@ description: Result of parsing bench.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "0": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Import various constants and functions from our library", - "style": "line" - } - } - ], - "6": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the dividers, these hold the seat and back slats", - "style": "line" - } - } - ], - "9": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the connectors to join the dividers", - "style": "line" - } - } - ], - "10": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the seat slats", - "style": "line" - } - } - ], - "11": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the back slats", - "style": "line" - } - } - ], - "12": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the arm rests", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Bench", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "This is a slight remix of Depep1's original 3D Boaty (https://www.printables.com/model/1141963-3d-boaty). This is a tool used for benchmarking 3D FDM printers for bed adhesion, overhangs, bridging and top surface quality. The name of this file is a bit of misnomer, the shape of the object is a typical park bench.", - "style": "line" - } - }, - { + "commentStart": 394, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units in millimeters (mm)", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define the bench length", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/bracket/ast.snap b/rust/kcl-lib/tests/kcl_samples/bracket/ast.snap index 3f26e4dc9..d3072ba67 100644 --- a/rust/kcl-lib/tests/kcl_samples/bracket/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/bracket/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing bracket.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 424, "end": 0, "id": { + "commentStart": 424, "end": 0, "name": "sigmaAllow", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 437, "end": 0, "raw": "35000", "start": 0, @@ -30,20 +34,31 @@ description: Result of parsing bracket.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Shelf Bracket", + "// This is a bracket that holds a shelf. It is made of aluminum and is designed to hold a force of 300 lbs. The bracket is 6 inches wide and the force is applied at the end of the shelf, 12 inches from the wall. The bracket has a factor of safety of 1.2. The legs of the bracket are 5 inches and 2 inches long. The thickness of the bracket is calculated from the constraints provided.", + "", + "", + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 442, "declaration": { + "commentStart": 469, "end": 0, "id": { + "commentStart": 469, "end": 0, "name": "width", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 477, "end": 0, "raw": "6", "start": 0, @@ -64,15 +79,19 @@ description: Result of parsing bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 478, "declaration": { + "commentStart": 487, "end": 0, "id": { + "commentStart": 487, "end": 0, "name": "p", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 491, "end": 0, "raw": "300", "start": 0, @@ -93,15 +112,19 @@ description: Result of parsing bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 494, "declaration": { + "commentStart": 519, "end": 0, "id": { + "commentStart": 519, "end": 0, "name": "factorOfSafety", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 536, "end": 0, "raw": "1.2", "start": 0, @@ -122,15 +145,19 @@ description: Result of parsing bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 539, "declaration": { + "commentStart": 554, "end": 0, "id": { + "commentStart": 554, "end": 0, "name": "shelfMountL", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 568, "end": 0, "raw": "5", "start": 0, @@ -151,15 +178,19 @@ description: Result of parsing bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 569, "declaration": { + "commentStart": 580, "end": 0, "id": { + "commentStart": 580, "end": 0, "name": "wallMountL", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 593, "end": 0, "raw": "2", "start": 0, @@ -180,15 +211,19 @@ description: Result of parsing bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 594, "declaration": { + "commentStart": 605, "end": 0, "id": { + "commentStart": 605, "end": 0, "name": "shelfDepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 618, "end": 0, "raw": "12", "start": 0, @@ -209,17 +244,22 @@ description: Result of parsing bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 620, "declaration": { + "commentStart": 666, "end": 0, "id": { + "commentStart": 666, "end": 0, "name": "moment", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 675, "end": 0, "left": { + "commentStart": 675, "end": 0, "name": "shelfDepth", "start": 0, @@ -228,6 +268,7 @@ description: Result of parsing bracket.kcl }, "operator": "*", "right": { + "commentStart": 688, "end": 0, "name": "p", "start": 0, @@ -248,9 +289,12 @@ description: Result of parsing bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 689, "declaration": { + "commentStart": 816, "end": 0, "id": { + "commentStart": 816, "end": 0, "name": "thickness", "start": 0, @@ -259,12 +303,16 @@ description: Result of parsing bracket.kcl "init": { "arguments": [ { + "commentStart": 833, "end": 0, "left": { + "commentStart": 833, "end": 0, "left": { + "commentStart": 833, "end": 0, "left": { + "commentStart": 833, "end": 0, "name": "moment", "start": 0, @@ -273,6 +321,7 @@ description: Result of parsing bracket.kcl }, "operator": "*", "right": { + "commentStart": 842, "end": 0, "name": "factorOfSafety", "start": 0, @@ -285,6 +334,7 @@ description: Result of parsing bracket.kcl }, "operator": "*", "right": { + "commentStart": 859, "end": 0, "raw": "6", "start": 0, @@ -301,8 +351,10 @@ description: Result of parsing bracket.kcl }, "operator": "/", "right": { + "commentStart": 864, "end": 0, "left": { + "commentStart": 864, "end": 0, "name": "sigmaAllow", "start": 0, @@ -311,6 +363,7 @@ description: Result of parsing bracket.kcl }, "operator": "*", "right": { + "commentStart": 877, "end": 0, "name": "width", "start": 0, @@ -327,11 +380,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 828, "end": 0, "name": "sqrt", "start": 0, "type": "Identifier" }, + "commentStart": 828, "end": 0, "start": 0, "type": "CallExpression", @@ -342,20 +397,27 @@ description: Result of parsing bracket.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Calculate required thickness of bracket" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 884, "declaration": { + "commentStart": 959, "end": 0, "id": { + "commentStart": 959, "end": 0, "name": "filletRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 974, "end": 0, "raw": ".25", "start": 0, @@ -376,17 +438,22 @@ description: Result of parsing bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 978, "declaration": { + "commentStart": 978, "end": 0, "id": { + "commentStart": 978, "end": 0, "name": "extFilletRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 996, "end": 0, "left": { + "commentStart": 996, "end": 0, "name": "filletRadius", "start": 0, @@ -395,6 +462,7 @@ description: Result of parsing bracket.kcl }, "operator": "+", "right": { + "commentStart": 1011, "end": 0, "name": "thickness", "start": 0, @@ -415,15 +483,19 @@ description: Result of parsing bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 1021, "declaration": { + "commentStart": 1021, "end": 0, "id": { + "commentStart": 1021, "end": 0, "name": "mountingHoleDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1044, "end": 0, "raw": "0.5", "start": 0, @@ -444,9 +516,12 @@ description: Result of parsing bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 1047, "declaration": { + "commentStart": 1049, "end": 0, "id": { + "commentStart": 1049, "end": 0, "name": "sketch001", "start": 0, @@ -457,6 +532,7 @@ description: Result of parsing bracket.kcl { "arguments": [ { + "commentStart": 1075, "end": 0, "raw": "'XZ'", "start": 0, @@ -466,11 +542,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1061, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1061, "end": 0, "start": 0, "type": "CallExpression", @@ -479,8 +557,10 @@ description: Result of parsing bracket.kcl { "arguments": [ { + "commentStart": 1101, "elements": [ { + "commentStart": 1102, "end": 0, "raw": "0", "start": 0, @@ -492,6 +572,7 @@ description: Result of parsing bracket.kcl } }, { + "commentStart": 1105, "end": 0, "raw": "0", "start": 0, @@ -509,6 +590,7 @@ description: Result of parsing bracket.kcl "type": "ArrayExpression" }, { + "commentStart": 1109, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -516,11 +598,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1086, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1086, "end": 0, "start": 0, "type": "CallExpression", @@ -531,14 +615,17 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1123, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1132, "end": 0, "left": { + "commentStart": 1132, "end": 0, "name": "shelfMountL", "start": 0, @@ -547,6 +634,7 @@ description: Result of parsing bracket.kcl }, "operator": "-", "right": { + "commentStart": 1146, "end": 0, "name": "thickness", "start": 0, @@ -561,12 +649,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1157, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1163, "end": 0, "start": 0, "type": "TagDeclarator", @@ -576,11 +666,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1117, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1117, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -592,12 +684,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1182, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1191, "end": 0, "name": "thickness", "start": 0, @@ -608,12 +702,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1202, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1208, "end": 0, "start": 0, "type": "TagDeclarator", @@ -623,11 +719,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1176, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1176, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -639,6 +737,7 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1227, "end": 0, "name": "length", "start": 0, @@ -646,12 +745,14 @@ description: Result of parsing bracket.kcl }, "arg": { "argument": { + "commentStart": 1237, "end": 0, "name": "shelfMountL", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1236, "end": 0, "operator": "-", "start": 0, @@ -662,12 +763,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1250, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1256, "end": 0, "start": 0, "type": "TagDeclarator", @@ -677,11 +780,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1221, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1221, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -693,6 +798,7 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1275, "end": 0, "name": "length", "start": 0, @@ -700,12 +806,14 @@ description: Result of parsing bracket.kcl }, "arg": { "argument": { + "commentStart": 1285, "end": 0, "name": "wallMountL", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1284, "end": 0, "operator": "-", "start": 0, @@ -716,12 +824,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1297, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1303, "end": 0, "start": 0, "type": "TagDeclarator", @@ -731,11 +841,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1269, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1269, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -747,12 +859,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1322, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1331, "end": 0, "name": "thickness", "start": 0, @@ -763,12 +877,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1342, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1348, "end": 0, "start": 0, "type": "TagDeclarator", @@ -778,11 +894,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1316, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1316, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -794,16 +912,19 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1366, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1380, "elements": [ { "arguments": [ { + "commentStart": 1395, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -811,11 +932,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1381, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 1381, "end": 0, "start": 0, "type": "CallExpression", @@ -824,6 +947,7 @@ description: Result of parsing bracket.kcl { "arguments": [ { + "commentStart": 1413, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -831,11 +955,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1399, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 1399, "end": 0, "start": 0, "type": "CallExpression", @@ -851,12 +977,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1418, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1424, "end": 0, "start": 0, "type": "TagDeclarator", @@ -866,11 +994,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1361, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1361, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -880,11 +1010,13 @@ description: Result of parsing bracket.kcl { "arguments": [], "callee": { + "commentStart": 1437, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1437, "end": 0, "start": 0, "type": "CallExpression", @@ -895,12 +1027,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1461, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1470, "end": 0, "name": "width", "start": 0, @@ -910,16 +1044,19 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1450, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1450, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1458, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -931,12 +1068,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1497, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1506, "end": 0, "name": "extFilletRadius", "start": 0, @@ -947,16 +1086,19 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1530, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1537, "elements": [ { "arguments": [ { + "commentStart": 1558, "end": 0, "name": "seg03", "start": 0, @@ -965,11 +1107,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1538, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1538, "end": 0, "start": 0, "type": "CallExpression", @@ -984,11 +1128,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1482, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1482, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1000,12 +1146,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1594, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1603, "end": 0, "name": "filletRadius", "start": 0, @@ -1016,16 +1164,19 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1624, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1631, "elements": [ { "arguments": [ { + "commentStart": 1652, "end": 0, "name": "seg06", "start": 0, @@ -1034,11 +1185,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1632, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1632, "end": 0, "start": 0, "type": "CallExpression", @@ -1053,11 +1206,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1579, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1579, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1069,12 +1224,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1687, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1696, "end": 0, "name": "filletRadius", "start": 0, @@ -1085,14 +1242,17 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1716, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1723, "elements": [ { + "commentStart": 1724, "end": 0, "name": "seg02", "start": 0, @@ -1102,6 +1262,7 @@ description: Result of parsing bracket.kcl { "arguments": [ { + "commentStart": 1747, "end": 0, "name": "seg02", "start": 0, @@ -1110,11 +1271,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1731, "end": 0, "name": "getOppositeEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1731, "end": 0, "start": 0, "type": "CallExpression", @@ -1129,11 +1292,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1673, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1673, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1145,12 +1310,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1781, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1790, "end": 0, "name": "filletRadius", "start": 0, @@ -1161,14 +1328,17 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1810, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1817, "elements": [ { + "commentStart": 1818, "end": 0, "name": "seg05", "start": 0, @@ -1178,6 +1348,7 @@ description: Result of parsing bracket.kcl { "arguments": [ { + "commentStart": 1841, "end": 0, "name": "seg05", "start": 0, @@ -1186,11 +1357,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1825, "end": 0, "name": "getOppositeEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1825, "end": 0, "start": 0, "type": "CallExpression", @@ -1205,11 +1378,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1767, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1767, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1217,6 +1392,7 @@ description: Result of parsing bracket.kcl "unlabeled": null } ], + "commentStart": 1061, "end": 0, "start": 0, "type": "PipeExpression", @@ -1232,9 +1408,12 @@ description: Result of parsing bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 1855, "declaration": { + "commentStart": 1857, "end": 0, "id": { + "commentStart": 1857, "end": 0, "name": "sketch002", "start": 0, @@ -1245,6 +1424,7 @@ description: Result of parsing bracket.kcl { "arguments": [ { + "commentStart": 1883, "end": 0, "name": "sketch001", "start": 0, @@ -1252,6 +1432,7 @@ description: Result of parsing bracket.kcl "type": "Identifier" }, { + "commentStart": 1894, "end": 0, "name": "seg03", "start": 0, @@ -1260,11 +1441,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1869, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1869, "end": 0, "start": 0, "type": "CallExpression", @@ -1275,15 +1458,18 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1918, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1927, "elements": [ { "argument": { + "commentStart": 1929, "end": 0, "raw": "1.25", "start": 0, @@ -1294,6 +1480,7 @@ description: Result of parsing bracket.kcl "suffix": "None" } }, + "commentStart": 1928, "end": 0, "operator": "-", "start": 0, @@ -1301,6 +1488,7 @@ description: Result of parsing bracket.kcl "type": "UnaryExpression" }, { + "commentStart": 1935, "end": 0, "raw": "1", "start": 0, @@ -1321,14 +1509,17 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1943, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1952, "end": 0, "left": { + "commentStart": 1952, "end": 0, "name": "mountingHoleDiameter", "start": 0, @@ -1337,6 +1528,7 @@ description: Result of parsing bracket.kcl }, "operator": "/", "right": { + "commentStart": 1975, "end": 0, "raw": "2", "start": 0, @@ -1354,11 +1546,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1906, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1906, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1370,12 +1564,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2008, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2020, "end": 0, "raw": "2", "start": 0, @@ -1390,12 +1586,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2027, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2038, "end": 0, "raw": "2.5", "start": 0, @@ -1410,15 +1608,18 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2047, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2054, "elements": [ { "argument": { + "commentStart": 2056, "end": 0, "raw": "1", "start": 0, @@ -1429,6 +1630,7 @@ description: Result of parsing bracket.kcl "suffix": "None" } }, + "commentStart": 2055, "end": 0, "operator": "-", "start": 0, @@ -1436,6 +1638,7 @@ description: Result of parsing bracket.kcl "type": "UnaryExpression" }, { + "commentStart": 2059, "end": 0, "raw": "0", "start": 0, @@ -1455,11 +1658,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 1987, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, + "commentStart": 1987, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1471,12 +1676,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2093, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2105, "end": 0, "raw": "2", "start": 0, @@ -1491,12 +1698,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2112, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2123, "end": 0, "raw": "4", "start": 0, @@ -1511,14 +1720,17 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2130, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2137, "elements": [ { + "commentStart": 2138, "end": 0, "raw": "0", "start": 0, @@ -1530,6 +1742,7 @@ description: Result of parsing bracket.kcl } }, { + "commentStart": 2141, "end": 0, "raw": "1", "start": 0, @@ -1549,11 +1762,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 2072, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, + "commentStart": 2072, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1565,21 +1780,25 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2165, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2174, "end": 0, "left": { "argument": { + "commentStart": 2175, "end": 0, "name": "thickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2174, "end": 0, "operator": "-", "start": 0, @@ -1588,6 +1807,7 @@ description: Result of parsing bracket.kcl }, "operator": "-", "right": { + "commentStart": 2185, "end": 0, "raw": ".01", "start": 0, @@ -1605,16 +1825,19 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 2154, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2154, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2162, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1622,6 +1845,7 @@ description: Result of parsing bracket.kcl } } ], + "commentStart": 1869, "end": 0, "start": 0, "type": "PipeExpression", @@ -1637,9 +1861,12 @@ description: Result of parsing bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 2189, "declaration": { + "commentStart": 2191, "end": 0, "id": { + "commentStart": 2191, "end": 0, "name": "sketch003", "start": 0, @@ -1650,6 +1877,7 @@ description: Result of parsing bracket.kcl { "arguments": [ { + "commentStart": 2217, "end": 0, "name": "sketch001", "start": 0, @@ -1657,6 +1885,7 @@ description: Result of parsing bracket.kcl "type": "Identifier" }, { + "commentStart": 2228, "end": 0, "name": "seg04", "start": 0, @@ -1665,11 +1894,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 2203, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2203, "end": 0, "start": 0, "type": "CallExpression", @@ -1680,14 +1911,17 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2252, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2261, "elements": [ { + "commentStart": 2262, "end": 0, "raw": "1", "start": 0, @@ -1700,6 +1934,7 @@ description: Result of parsing bracket.kcl }, { "argument": { + "commentStart": 2266, "end": 0, "raw": "1", "start": 0, @@ -1710,6 +1945,7 @@ description: Result of parsing bracket.kcl "suffix": "None" } }, + "commentStart": 2265, "end": 0, "operator": "-", "start": 0, @@ -1726,14 +1962,17 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2274, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2283, "end": 0, "left": { + "commentStart": 2283, "end": 0, "name": "mountingHoleDiameter", "start": 0, @@ -1742,6 +1981,7 @@ description: Result of parsing bracket.kcl }, "operator": "/", "right": { + "commentStart": 2306, "end": 0, "raw": "2", "start": 0, @@ -1759,11 +1999,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 2240, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2240, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1775,12 +2017,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2339, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2351, "end": 0, "raw": "2", "start": 0, @@ -1795,12 +2039,14 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2358, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2369, "end": 0, "raw": "4", "start": 0, @@ -1815,14 +2061,17 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2376, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2383, "elements": [ { + "commentStart": 2384, "end": 0, "raw": "1", "start": 0, @@ -1834,6 +2083,7 @@ description: Result of parsing bracket.kcl } }, { + "commentStart": 2387, "end": 0, "raw": "0", "start": 0, @@ -1853,11 +2103,13 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 2318, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, + "commentStart": 2318, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1869,21 +2121,25 @@ description: Result of parsing bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2411, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2420, "end": 0, "left": { "argument": { + "commentStart": 2421, "end": 0, "name": "thickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2420, "end": 0, "operator": "-", "start": 0, @@ -1892,6 +2148,7 @@ description: Result of parsing bracket.kcl }, "operator": "-", "right": { + "commentStart": 2431, "end": 0, "raw": "0.1", "start": 0, @@ -1909,16 +2166,19 @@ description: Result of parsing bracket.kcl } ], "callee": { + "commentStart": 2400, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2400, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2408, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1926,6 +2186,7 @@ description: Result of parsing bracket.kcl } } ], + "commentStart": 2203, "end": 0, "start": 0, "type": "PipeExpression", @@ -1941,11 +2202,13 @@ description: Result of parsing bracket.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 442, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1958,6 +2221,7 @@ description: Result of parsing bracket.kcl ], "1": [ { + "commentStart": 478, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1970,6 +2234,7 @@ description: Result of parsing bracket.kcl ], "2": [ { + "commentStart": 494, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1982,6 +2247,7 @@ description: Result of parsing bracket.kcl ], "3": [ { + "commentStart": 539, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1994,6 +2260,7 @@ description: Result of parsing bracket.kcl ], "4": [ { + "commentStart": 569, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2006,6 +2273,7 @@ description: Result of parsing bracket.kcl ], "5": [ { + "commentStart": 594, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2018,6 +2286,7 @@ description: Result of parsing bracket.kcl ], "6": [ { + "commentStart": 620, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2030,6 +2299,7 @@ description: Result of parsing bracket.kcl ], "7": [ { + "commentStart": 689, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2040,26 +2310,18 @@ description: Result of parsing bracket.kcl } }, { + "commentStart": 771, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Calculate required thickness of bracket", - "style": "line" - } } ], "8": [ { + "commentStart": 884, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2070,6 +2332,7 @@ description: Result of parsing bracket.kcl } }, { + "commentStart": 957, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2080,6 +2343,7 @@ description: Result of parsing bracket.kcl ], "11": [ { + "commentStart": 1047, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2090,6 +2354,7 @@ description: Result of parsing bracket.kcl ], "12": [ { + "commentStart": 1855, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2100,6 +2365,7 @@ description: Result of parsing bracket.kcl ], "13": [ { + "commentStart": 2189, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2109,46 +2375,7 @@ description: Result of parsing bracket.kcl } ] }, - "startNodes": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Shelf Bracket", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "This is a bracket that holds a shelf. It is made of aluminum and is designed to hold a force of 300 lbs. The bracket is 6 inches wide and the force is applied at the end of the shelf, 12 inches from the wall. The bracket has a factor of safety of 1.2. The legs of the bracket are 5 inches and 2 inches long. The thickness of the bracket is calculated from the constraints provided.", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } - } - ] + "startNodes": [] }, "start": 0 } diff --git a/rust/kcl-lib/tests/kcl_samples/bracket/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/bracket/program_memory.snap index 67e4f7acc..3b7c914d7 100644 --- a/rust/kcl-lib/tests/kcl_samples/bracket/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/bracket/program_memory.snap @@ -150,6 +150,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1163, "end": 1169, "start": 1163, "type": "TagDeclarator", @@ -162,6 +163,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1208, "end": 1214, "start": 1208, "type": "TagDeclarator", @@ -174,6 +176,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1256, "end": 1262, "start": 1256, "type": "TagDeclarator", @@ -186,6 +189,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1303, "end": 1309, "start": 1303, "type": "TagDeclarator", @@ -198,6 +202,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1348, "end": 1354, "start": 1348, "type": "TagDeclarator", @@ -210,6 +215,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1424, "end": 1430, "start": 1424, "type": "TagDeclarator", @@ -232,6 +238,7 @@ description: Variables in memory after executing bracket.kcl 0.0 ], "tag": { + "commentStart": 1163, "end": 1169, "start": 1163, "type": "TagDeclarator", @@ -256,6 +263,7 @@ description: Variables in memory after executing bracket.kcl 0.0 ], "tag": { + "commentStart": 1208, "end": 1214, "start": 1208, "type": "TagDeclarator", @@ -280,6 +288,7 @@ description: Variables in memory after executing bracket.kcl 0.3513 ], "tag": { + "commentStart": 1256, "end": 1262, "start": 1256, "type": "TagDeclarator", @@ -304,6 +313,7 @@ description: Variables in memory after executing bracket.kcl 0.3513 ], "tag": { + "commentStart": 1303, "end": 1309, "start": 1303, "type": "TagDeclarator", @@ -328,6 +338,7 @@ description: Variables in memory after executing bracket.kcl -1.6487 ], "tag": { + "commentStart": 1348, "end": 1354, "start": 1348, "type": "TagDeclarator", @@ -352,6 +363,7 @@ description: Variables in memory after executing bracket.kcl -1.6487 ], "tag": { + "commentStart": 1424, "end": 1430, "start": 1424, "type": "TagDeclarator", @@ -595,6 +607,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1163, "end": 1169, "start": 1163, "type": "TagDeclarator", @@ -607,6 +620,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1208, "end": 1214, "start": 1208, "type": "TagDeclarator", @@ -619,6 +633,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1256, "end": 1262, "start": 1256, "type": "TagDeclarator", @@ -631,6 +646,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1303, "end": 1309, "start": 1303, "type": "TagDeclarator", @@ -643,6 +659,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1348, "end": 1354, "start": 1348, "type": "TagDeclarator", @@ -655,6 +672,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1424, "end": 1430, "start": 1424, "type": "TagDeclarator", @@ -677,6 +695,7 @@ description: Variables in memory after executing bracket.kcl 0.0 ], "tag": { + "commentStart": 1163, "end": 1169, "start": 1163, "type": "TagDeclarator", @@ -701,6 +720,7 @@ description: Variables in memory after executing bracket.kcl 0.0 ], "tag": { + "commentStart": 1208, "end": 1214, "start": 1208, "type": "TagDeclarator", @@ -725,6 +745,7 @@ description: Variables in memory after executing bracket.kcl 0.3513 ], "tag": { + "commentStart": 1256, "end": 1262, "start": 1256, "type": "TagDeclarator", @@ -749,6 +770,7 @@ description: Variables in memory after executing bracket.kcl 0.3513 ], "tag": { + "commentStart": 1303, "end": 1309, "start": 1303, "type": "TagDeclarator", @@ -773,6 +795,7 @@ description: Variables in memory after executing bracket.kcl -1.6487 ], "tag": { + "commentStart": 1348, "end": 1354, "start": 1348, "type": "TagDeclarator", @@ -797,6 +820,7 @@ description: Variables in memory after executing bracket.kcl -1.6487 ], "tag": { + "commentStart": 1424, "end": 1430, "start": 1424, "type": "TagDeclarator", @@ -1072,6 +1096,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1163, "end": 1169, "start": 1163, "type": "TagDeclarator", @@ -1084,6 +1109,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1208, "end": 1214, "start": 1208, "type": "TagDeclarator", @@ -1096,6 +1122,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1256, "end": 1262, "start": 1256, "type": "TagDeclarator", @@ -1108,6 +1135,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1303, "end": 1309, "start": 1303, "type": "TagDeclarator", @@ -1120,6 +1148,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1348, "end": 1354, "start": 1348, "type": "TagDeclarator", @@ -1132,6 +1161,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1424, "end": 1430, "start": 1424, "type": "TagDeclarator", @@ -1154,6 +1184,7 @@ description: Variables in memory after executing bracket.kcl 0.0 ], "tag": { + "commentStart": 1163, "end": 1169, "start": 1163, "type": "TagDeclarator", @@ -1178,6 +1209,7 @@ description: Variables in memory after executing bracket.kcl 0.0 ], "tag": { + "commentStart": 1208, "end": 1214, "start": 1208, "type": "TagDeclarator", @@ -1202,6 +1234,7 @@ description: Variables in memory after executing bracket.kcl 0.3513 ], "tag": { + "commentStart": 1256, "end": 1262, "start": 1256, "type": "TagDeclarator", @@ -1226,6 +1259,7 @@ description: Variables in memory after executing bracket.kcl 0.3513 ], "tag": { + "commentStart": 1303, "end": 1309, "start": 1303, "type": "TagDeclarator", @@ -1250,6 +1284,7 @@ description: Variables in memory after executing bracket.kcl -1.6487 ], "tag": { + "commentStart": 1348, "end": 1354, "start": 1348, "type": "TagDeclarator", @@ -1274,6 +1309,7 @@ description: Variables in memory after executing bracket.kcl -1.6487 ], "tag": { + "commentStart": 1424, "end": 1430, "start": 1424, "type": "TagDeclarator", @@ -1549,6 +1585,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1163, "end": 1169, "start": 1163, "type": "TagDeclarator", @@ -1561,6 +1598,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1208, "end": 1214, "start": 1208, "type": "TagDeclarator", @@ -1573,6 +1611,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1256, "end": 1262, "start": 1256, "type": "TagDeclarator", @@ -1585,6 +1624,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1303, "end": 1309, "start": 1303, "type": "TagDeclarator", @@ -1597,6 +1637,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1348, "end": 1354, "start": 1348, "type": "TagDeclarator", @@ -1609,6 +1650,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1424, "end": 1430, "start": 1424, "type": "TagDeclarator", @@ -1631,6 +1673,7 @@ description: Variables in memory after executing bracket.kcl 0.0 ], "tag": { + "commentStart": 1163, "end": 1169, "start": 1163, "type": "TagDeclarator", @@ -1655,6 +1698,7 @@ description: Variables in memory after executing bracket.kcl 0.0 ], "tag": { + "commentStart": 1208, "end": 1214, "start": 1208, "type": "TagDeclarator", @@ -1679,6 +1723,7 @@ description: Variables in memory after executing bracket.kcl 0.3513 ], "tag": { + "commentStart": 1256, "end": 1262, "start": 1256, "type": "TagDeclarator", @@ -1703,6 +1748,7 @@ description: Variables in memory after executing bracket.kcl 0.3513 ], "tag": { + "commentStart": 1303, "end": 1309, "start": 1303, "type": "TagDeclarator", @@ -1727,6 +1773,7 @@ description: Variables in memory after executing bracket.kcl -1.6487 ], "tag": { + "commentStart": 1348, "end": 1354, "start": 1348, "type": "TagDeclarator", @@ -1751,6 +1798,7 @@ description: Variables in memory after executing bracket.kcl -1.6487 ], "tag": { + "commentStart": 1424, "end": 1430, "start": 1424, "type": "TagDeclarator", @@ -2026,6 +2074,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1163, "end": 1169, "start": 1163, "type": "TagDeclarator", @@ -2038,6 +2087,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1208, "end": 1214, "start": 1208, "type": "TagDeclarator", @@ -2050,6 +2100,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1256, "end": 1262, "start": 1256, "type": "TagDeclarator", @@ -2062,6 +2113,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1303, "end": 1309, "start": 1303, "type": "TagDeclarator", @@ -2074,6 +2126,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1348, "end": 1354, "start": 1348, "type": "TagDeclarator", @@ -2086,6 +2139,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1424, "end": 1430, "start": 1424, "type": "TagDeclarator", @@ -2108,6 +2162,7 @@ description: Variables in memory after executing bracket.kcl 0.0 ], "tag": { + "commentStart": 1163, "end": 1169, "start": 1163, "type": "TagDeclarator", @@ -2132,6 +2187,7 @@ description: Variables in memory after executing bracket.kcl 0.0 ], "tag": { + "commentStart": 1208, "end": 1214, "start": 1208, "type": "TagDeclarator", @@ -2156,6 +2212,7 @@ description: Variables in memory after executing bracket.kcl 0.3513 ], "tag": { + "commentStart": 1256, "end": 1262, "start": 1256, "type": "TagDeclarator", @@ -2180,6 +2237,7 @@ description: Variables in memory after executing bracket.kcl 0.3513 ], "tag": { + "commentStart": 1303, "end": 1309, "start": 1303, "type": "TagDeclarator", @@ -2204,6 +2262,7 @@ description: Variables in memory after executing bracket.kcl -1.6487 ], "tag": { + "commentStart": 1348, "end": 1354, "start": 1348, "type": "TagDeclarator", @@ -2228,6 +2287,7 @@ description: Variables in memory after executing bracket.kcl -1.6487 ], "tag": { + "commentStart": 1424, "end": 1430, "start": 1424, "type": "TagDeclarator", @@ -2508,6 +2568,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1163, "end": 1169, "start": 1163, "type": "TagDeclarator", @@ -2520,6 +2581,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1208, "end": 1214, "start": 1208, "type": "TagDeclarator", @@ -2532,6 +2594,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1256, "end": 1262, "start": 1256, "type": "TagDeclarator", @@ -2544,6 +2607,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1303, "end": 1309, "start": 1303, "type": "TagDeclarator", @@ -2556,6 +2620,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1348, "end": 1354, "start": 1348, "type": "TagDeclarator", @@ -2568,6 +2633,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1424, "end": 1430, "start": 1424, "type": "TagDeclarator", @@ -2590,6 +2656,7 @@ description: Variables in memory after executing bracket.kcl 0.0 ], "tag": { + "commentStart": 1163, "end": 1169, "start": 1163, "type": "TagDeclarator", @@ -2614,6 +2681,7 @@ description: Variables in memory after executing bracket.kcl 0.0 ], "tag": { + "commentStart": 1208, "end": 1214, "start": 1208, "type": "TagDeclarator", @@ -2638,6 +2706,7 @@ description: Variables in memory after executing bracket.kcl 0.3513 ], "tag": { + "commentStart": 1256, "end": 1262, "start": 1256, "type": "TagDeclarator", @@ -2662,6 +2731,7 @@ description: Variables in memory after executing bracket.kcl 0.3513 ], "tag": { + "commentStart": 1303, "end": 1309, "start": 1303, "type": "TagDeclarator", @@ -2686,6 +2756,7 @@ description: Variables in memory after executing bracket.kcl -1.6487 ], "tag": { + "commentStart": 1348, "end": 1354, "start": 1348, "type": "TagDeclarator", @@ -2710,6 +2781,7 @@ description: Variables in memory after executing bracket.kcl -1.6487 ], "tag": { + "commentStart": 1424, "end": 1430, "start": 1424, "type": "TagDeclarator", @@ -2985,6 +3057,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1163, "end": 1169, "start": 1163, "type": "TagDeclarator", @@ -2997,6 +3070,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1208, "end": 1214, "start": 1208, "type": "TagDeclarator", @@ -3009,6 +3083,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1256, "end": 1262, "start": 1256, "type": "TagDeclarator", @@ -3021,6 +3096,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1303, "end": 1309, "start": 1303, "type": "TagDeclarator", @@ -3033,6 +3109,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1348, "end": 1354, "start": 1348, "type": "TagDeclarator", @@ -3045,6 +3122,7 @@ description: Variables in memory after executing bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1424, "end": 1430, "start": 1424, "type": "TagDeclarator", @@ -3067,6 +3145,7 @@ description: Variables in memory after executing bracket.kcl 0.0 ], "tag": { + "commentStart": 1163, "end": 1169, "start": 1163, "type": "TagDeclarator", @@ -3091,6 +3170,7 @@ description: Variables in memory after executing bracket.kcl 0.0 ], "tag": { + "commentStart": 1208, "end": 1214, "start": 1208, "type": "TagDeclarator", @@ -3115,6 +3195,7 @@ description: Variables in memory after executing bracket.kcl 0.3513 ], "tag": { + "commentStart": 1256, "end": 1262, "start": 1256, "type": "TagDeclarator", @@ -3139,6 +3220,7 @@ description: Variables in memory after executing bracket.kcl 0.3513 ], "tag": { + "commentStart": 1303, "end": 1309, "start": 1303, "type": "TagDeclarator", @@ -3163,6 +3245,7 @@ description: Variables in memory after executing bracket.kcl -1.6487 ], "tag": { + "commentStart": 1348, "end": 1354, "start": 1348, "type": "TagDeclarator", @@ -3187,6 +3270,7 @@ description: Variables in memory after executing bracket.kcl -1.6487 ], "tag": { + "commentStart": 1424, "end": 1430, "start": 1424, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/kcl_samples/car-wheel-assembly/ast.snap b/rust/kcl-lib/tests/kcl_samples/car-wheel-assembly/ast.snap index e03b0e7f8..20199e934 100644 --- a/rust/kcl-lib/tests/kcl_samples/car-wheel-assembly/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/car-wheel-assembly/ast.snap @@ -6,6 +6,7 @@ description: Result of parsing car-wheel-assembly.kcl "Ok": { "body": [ { + "commentStart": 127, "end": 0, "path": { "type": "Kcl", @@ -14,6 +15,7 @@ description: Result of parsing car-wheel-assembly.kcl "selector": { "type": "None", "alias": { + "commentStart": 155, "end": 0, "name": "carWheel", "start": 0, @@ -25,6 +27,7 @@ description: Result of parsing car-wheel-assembly.kcl "type": "ImportStatement" }, { + "commentStart": 164, "end": 0, "path": { "type": "Kcl", @@ -33,6 +36,7 @@ description: Result of parsing car-wheel-assembly.kcl "selector": { "type": "None", "alias": { + "commentStart": 190, "end": 0, "name": "carRotor", "start": 0, @@ -44,6 +48,7 @@ description: Result of parsing car-wheel-assembly.kcl "type": "ImportStatement" }, { + "commentStart": 199, "end": 0, "path": { "type": "Kcl", @@ -52,6 +57,7 @@ description: Result of parsing car-wheel-assembly.kcl "selector": { "type": "None", "alias": { + "commentStart": 229, "end": 0, "name": "brakeCaliper", "start": 0, @@ -63,6 +69,7 @@ description: Result of parsing car-wheel-assembly.kcl "type": "ImportStatement" }, { + "commentStart": 242, "end": 0, "path": { "type": "Kcl", @@ -71,6 +78,7 @@ description: Result of parsing car-wheel-assembly.kcl "selector": { "type": "None", "alias": { + "commentStart": 266, "end": 0, "name": "lugNut", "start": 0, @@ -82,6 +90,7 @@ description: Result of parsing car-wheel-assembly.kcl "type": "ImportStatement" }, { + "commentStart": 273, "end": 0, "path": { "type": "Kcl", @@ -90,6 +99,7 @@ description: Result of parsing car-wheel-assembly.kcl "selector": { "type": "None", "alias": { + "commentStart": 298, "end": 0, "name": "carTire", "start": 0, @@ -101,6 +111,7 @@ description: Result of parsing car-wheel-assembly.kcl "type": "ImportStatement" }, { + "commentStart": 306, "end": 0, "path": { "type": "Kcl", @@ -111,8 +122,10 @@ description: Result of parsing car-wheel-assembly.kcl "items": [ { "alias": null, + "commentStart": 313, "end": 0, "name": { + "commentStart": 313, "end": 0, "name": "lugCount", "start": 0, @@ -128,10 +141,12 @@ description: Result of parsing car-wheel-assembly.kcl "type": "ImportStatement" }, { + "commentStart": 340, "end": 0, "expression": { "body": [ { + "commentStart": 342, "end": 0, "name": "carRotor", "start": 0, @@ -143,14 +158,17 @@ description: Result of parsing car-wheel-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 366, "end": 0, "name": "translate", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 378, "elements": [ { + "commentStart": 379, "end": 0, "raw": "0", "start": 0, @@ -162,6 +180,7 @@ description: Result of parsing car-wheel-assembly.kcl } }, { + "commentStart": 382, "end": 0, "raw": "0.5", "start": 0, @@ -173,6 +192,7 @@ description: Result of parsing car-wheel-assembly.kcl } }, { + "commentStart": 387, "end": 0, "raw": "0", "start": 0, @@ -192,11 +212,13 @@ description: Result of parsing car-wheel-assembly.kcl } ], "callee": { + "commentStart": 356, "end": 0, "name": "translate", "start": 0, "type": "Identifier" }, + "commentStart": 356, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -204,6 +226,7 @@ description: Result of parsing car-wheel-assembly.kcl "unlabeled": null } ], + "commentStart": 342, "end": 0, "start": 0, "type": "PipeExpression", @@ -214,8 +237,10 @@ description: Result of parsing car-wheel-assembly.kcl "type": "ExpressionStatement" }, { + "commentStart": 391, "end": 0, "expression": { + "commentStart": 391, "end": 0, "name": "carWheel", "start": 0, @@ -227,10 +252,12 @@ description: Result of parsing car-wheel-assembly.kcl "type": "ExpressionStatement" }, { + "commentStart": 400, "end": 0, "expression": { "body": [ { + "commentStart": 400, "end": 0, "name": "lugNut", "start": 0, @@ -242,12 +269,14 @@ description: Result of parsing car-wheel-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 436, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 449, "end": 0, "raw": "360", "start": 0, @@ -262,14 +291,17 @@ description: Result of parsing car-wheel-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 459, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 466, "elements": [ { + "commentStart": 467, "end": 0, "raw": "0", "start": 0, @@ -281,6 +313,7 @@ description: Result of parsing car-wheel-assembly.kcl } }, { + "commentStart": 470, "end": 0, "raw": "1", "start": 0, @@ -292,6 +325,7 @@ description: Result of parsing car-wheel-assembly.kcl } }, { + "commentStart": 473, "end": 0, "raw": "0", "start": 0, @@ -312,14 +346,17 @@ description: Result of parsing car-wheel-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 482, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 491, "elements": [ { + "commentStart": 492, "end": 0, "raw": "0", "start": 0, @@ -331,6 +368,7 @@ description: Result of parsing car-wheel-assembly.kcl } }, { + "commentStart": 495, "end": 0, "raw": "0", "start": 0, @@ -342,6 +380,7 @@ description: Result of parsing car-wheel-assembly.kcl } }, { + "commentStart": 498, "end": 0, "raw": "0", "start": 0, @@ -362,12 +401,14 @@ description: Result of parsing car-wheel-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 507, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 519, "end": 0, "name": "lugCount", "start": 0, @@ -378,12 +419,14 @@ description: Result of parsing car-wheel-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 534, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 553, "end": 0, "raw": "false", "start": 0, @@ -394,11 +437,13 @@ description: Result of parsing car-wheel-assembly.kcl } ], "callee": { + "commentStart": 412, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 412, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -406,6 +451,7 @@ description: Result of parsing car-wheel-assembly.kcl "unlabeled": null } ], + "commentStart": 400, "end": 0, "start": 0, "type": "PipeExpression", @@ -416,10 +462,12 @@ description: Result of parsing car-wheel-assembly.kcl "type": "ExpressionStatement" }, { + "commentStart": 564, "end": 0, "expression": { "body": [ { + "commentStart": 564, "end": 0, "name": "brakeCaliper", "start": 0, @@ -431,14 +479,17 @@ description: Result of parsing car-wheel-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 592, "end": 0, "name": "translate", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 604, "elements": [ { + "commentStart": 605, "end": 0, "raw": "0", "start": 0, @@ -450,6 +501,7 @@ description: Result of parsing car-wheel-assembly.kcl } }, { + "commentStart": 608, "end": 0, "raw": "0.5", "start": 0, @@ -461,6 +513,7 @@ description: Result of parsing car-wheel-assembly.kcl } }, { + "commentStart": 613, "end": 0, "raw": "0", "start": 0, @@ -480,11 +533,13 @@ description: Result of parsing car-wheel-assembly.kcl } ], "callee": { + "commentStart": 582, "end": 0, "name": "translate", "start": 0, "type": "Identifier" }, + "commentStart": 582, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -492,6 +547,7 @@ description: Result of parsing car-wheel-assembly.kcl "unlabeled": null } ], + "commentStart": 564, "end": 0, "start": 0, "type": "PipeExpression", @@ -502,8 +558,10 @@ description: Result of parsing car-wheel-assembly.kcl "type": "ExpressionStatement" }, { + "commentStart": 617, "end": 0, "expression": { + "commentStart": 617, "end": 0, "name": "carTire", "start": 0, @@ -515,20 +573,32 @@ description: Result of parsing car-wheel-assembly.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 95, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Car Wheel Assembly", + "// A car wheel assembly with a rotor, tire, and lug nuts.", + "", + "", + "// Set units" + ], "properties": [ { + "commentStart": 104, "end": 0, "key": { + "commentStart": 104, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -537,6 +607,7 @@ description: Result of parsing car-wheel-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 124, "end": 0, "name": "in", "start": 0, @@ -553,6 +624,7 @@ description: Result of parsing car-wheel-assembly.kcl "nonCodeNodes": { "5": [ { + "commentStart": 340, "end": 0, "start": 0, "type": "NonCodeNode", @@ -564,44 +636,7 @@ description: Result of parsing car-wheel-assembly.kcl }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Car Wheel Assembly", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A car wheel assembly with a rotor, tire, and lug nuts.", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units", - "style": "line" - } - }, - { + "commentStart": 127, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/kcl_samples/color-cube/ast.snap b/rust/kcl-lib/tests/kcl_samples/color-cube/ast.snap index d12bbdea2..b2ae54fd9 100644 --- a/rust/kcl-lib/tests/kcl_samples/color-cube/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/color-cube/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing color-cube.kcl "Ok": { "body": [ { + "commentStart": 166, "declaration": { + "commentStart": 207, "end": 0, "id": { + "commentStart": 207, "end": 0, "name": "size", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 214, "end": 0, "raw": "100", "start": 0, @@ -30,22 +34,30 @@ description: Result of parsing color-cube.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Globals referenced in drawRectangle" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 218, "declaration": { + "commentStart": 218, "end": 0, "id": { + "commentStart": 218, "end": 0, "name": "halfSize", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 229, "end": 0, "left": { + "commentStart": 229, "end": 0, "name": "size", "start": 0, @@ -54,6 +66,7 @@ description: Result of parsing color-cube.kcl }, "operator": "/", "right": { + "commentStart": 234, "end": 0, "raw": "2", "start": 0, @@ -78,15 +91,19 @@ description: Result of parsing color-cube.kcl "type": "VariableDeclaration" }, { + "commentStart": 236, "declaration": { + "commentStart": 236, "end": 0, "id": { + "commentStart": 236, "end": 0, "name": "extrudeLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 252, "end": 0, "raw": "1.0", "start": 0, @@ -107,15 +124,19 @@ description: Result of parsing color-cube.kcl "type": "VariableDeclaration" }, { + "commentStart": 256, "declaration": { + "commentStart": 256, "end": 0, "id": { + "commentStart": 256, "end": 0, "name": "metalConstant", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 272, "end": 0, "raw": "50", "start": 0, @@ -136,15 +157,19 @@ description: Result of parsing color-cube.kcl "type": "VariableDeclaration" }, { + "commentStart": 275, "declaration": { + "commentStart": 275, "end": 0, "id": { + "commentStart": 275, "end": 0, "name": "roughnessConstant", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 295, "end": 0, "raw": "50", "start": 0, @@ -165,9 +190,12 @@ description: Result of parsing color-cube.kcl "type": "VariableDeclaration" }, { + "commentStart": 297, "declaration": { + "commentStart": 338, "end": 0, "id": { + "commentStart": 338, "end": 0, "name": "bluePlane", "start": 0, @@ -178,12 +206,14 @@ description: Result of parsing color-cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 368, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 377, "end": 0, "name": "halfSize", "start": 0, @@ -193,16 +223,19 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 350, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 350, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 362, "end": 0, "raw": "'XY'", "start": 0, @@ -216,14 +249,22 @@ description: Result of parsing color-cube.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Create planes for 6 sides of a cube" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 387, "declaration": { + "commentStart": 387, "end": 0, "id": { + "commentStart": 387, "end": 0, "name": "yellowPlane", "start": 0, @@ -234,6 +275,7 @@ description: Result of parsing color-cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 419, "end": 0, "name": "offset", "start": 0, @@ -241,12 +283,14 @@ description: Result of parsing color-cube.kcl }, "arg": { "argument": { + "commentStart": 429, "end": 0, "name": "halfSize", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 428, "end": 0, "operator": "-", "start": 0, @@ -256,16 +300,19 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 401, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 401, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 413, "end": 0, "raw": "'XY'", "start": 0, @@ -284,9 +331,12 @@ description: Result of parsing color-cube.kcl "type": "VariableDeclaration" }, { + "commentStart": 439, "declaration": { + "commentStart": 439, "end": 0, "id": { + "commentStart": 439, "end": 0, "name": "greenPlane", "start": 0, @@ -297,6 +347,7 @@ description: Result of parsing color-cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 470, "end": 0, "name": "offset", "start": 0, @@ -304,12 +355,14 @@ description: Result of parsing color-cube.kcl }, "arg": { "argument": { + "commentStart": 480, "end": 0, "name": "halfSize", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 479, "end": 0, "operator": "-", "start": 0, @@ -319,16 +372,19 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 452, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 452, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 464, "end": 0, "raw": "'XZ'", "start": 0, @@ -347,9 +403,12 @@ description: Result of parsing color-cube.kcl "type": "VariableDeclaration" }, { + "commentStart": 490, "declaration": { + "commentStart": 490, "end": 0, "id": { + "commentStart": 490, "end": 0, "name": "purplePlane", "start": 0, @@ -360,6 +419,7 @@ description: Result of parsing color-cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 523, "end": 0, "name": "offset", "start": 0, @@ -367,12 +427,14 @@ description: Result of parsing color-cube.kcl }, "arg": { "argument": { + "commentStart": 533, "end": 0, "name": "halfSize", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 532, "end": 0, "operator": "-", "start": 0, @@ -382,16 +444,19 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 504, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 504, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 516, "end": 0, "raw": "'-XZ'", "start": 0, @@ -410,9 +475,12 @@ description: Result of parsing color-cube.kcl "type": "VariableDeclaration" }, { + "commentStart": 543, "declaration": { + "commentStart": 543, "end": 0, "id": { + "commentStart": 543, "end": 0, "name": "redPlane", "start": 0, @@ -423,14 +491,17 @@ description: Result of parsing color-cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 572, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 581, "end": 0, "left": { + "commentStart": 581, "end": 0, "name": "halfSize", "start": 0, @@ -439,6 +510,7 @@ description: Result of parsing color-cube.kcl }, "operator": "-", "right": { + "commentStart": 592, "end": 0, "name": "extrudeLength", "start": 0, @@ -452,16 +524,19 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 554, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 554, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 566, "end": 0, "raw": "'YZ'", "start": 0, @@ -480,9 +555,12 @@ description: Result of parsing color-cube.kcl "type": "VariableDeclaration" }, { + "commentStart": 607, "declaration": { + "commentStart": 607, "end": 0, "id": { + "commentStart": 607, "end": 0, "name": "tealPlane", "start": 0, @@ -493,6 +571,7 @@ description: Result of parsing color-cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 637, "end": 0, "name": "offset", "start": 0, @@ -500,12 +579,14 @@ description: Result of parsing color-cube.kcl }, "arg": { "argument": { + "commentStart": 647, "end": 0, "name": "halfSize", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 646, "end": 0, "operator": "-", "start": 0, @@ -515,16 +596,19 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 619, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 619, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 631, "end": 0, "raw": "'YZ'", "start": 0, @@ -543,9 +627,12 @@ description: Result of parsing color-cube.kcl "type": "VariableDeclaration" }, { + "commentStart": 656, "declaration": { + "commentStart": 721, "end": 0, "id": { + "commentStart": 721, "end": 0, "name": "sketchRectangle", "start": 0, @@ -558,6 +645,7 @@ description: Result of parsing color-cube.kcl "argument": { "body": [ { + "commentStart": 765, "end": 0, "name": "profile", "start": 0, @@ -567,15 +655,18 @@ description: Result of parsing color-cube.kcl { "arguments": [ { + "commentStart": 793, "elements": [ { "argument": { + "commentStart": 795, "end": 0, "name": "halfSize", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 794, "end": 0, "operator": "-", "start": 0, @@ -583,6 +674,7 @@ description: Result of parsing color-cube.kcl "type": "UnaryExpression" }, { + "commentStart": 805, "end": 0, "name": "halfSize", "start": 0, @@ -596,6 +688,7 @@ description: Result of parsing color-cube.kcl "type": "ArrayExpression" }, { + "commentStart": 816, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -603,11 +696,13 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 778, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 778, "end": 0, "start": 0, "type": "CallExpression", @@ -616,8 +711,10 @@ description: Result of parsing color-cube.kcl { "arguments": [ { + "commentStart": 835, "elements": [ { + "commentStart": 836, "end": 0, "raw": "0", "start": 0, @@ -629,6 +726,7 @@ description: Result of parsing color-cube.kcl } }, { + "commentStart": 839, "end": 0, "name": "size", "start": 0, @@ -642,12 +740,14 @@ description: Result of parsing color-cube.kcl "type": "ArrayExpression" }, { + "commentStart": 846, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 849, "end": 0, "start": 0, "type": "TagDeclarator", @@ -656,11 +756,13 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 824, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 824, "end": 0, "start": 0, "type": "CallExpression", @@ -669,12 +771,15 @@ description: Result of parsing color-cube.kcl { "arguments": [ { + "commentStart": 888, "elements": [ { + "commentStart": 897, "end": 0, "left": { "arguments": [ { + "commentStart": 904, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -683,11 +788,13 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 897, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 897, "end": 0, "start": 0, "type": "CallExpression", @@ -695,6 +802,7 @@ description: Result of parsing color-cube.kcl }, "operator": "-", "right": { + "commentStart": 928, "end": 0, "raw": "90", "start": 0, @@ -710,6 +818,7 @@ description: Result of parsing color-cube.kcl "type": "BinaryExpression" }, { + "commentStart": 939, "end": 0, "name": "size", "start": 0, @@ -723,12 +832,14 @@ description: Result of parsing color-cube.kcl "type": "ArrayExpression" }, { + "commentStart": 952, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 955, "end": 0, "start": 0, "type": "TagDeclarator", @@ -737,11 +848,13 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 877, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 877, "end": 0, "start": 0, "type": "CallExpression", @@ -750,10 +863,12 @@ description: Result of parsing color-cube.kcl { "arguments": [ { + "commentStart": 994, "elements": [ { "arguments": [ { + "commentStart": 1010, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -762,11 +877,13 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 1003, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 1003, "end": 0, "start": 0, "type": "CallExpression", @@ -776,6 +893,7 @@ description: Result of parsing color-cube.kcl "argument": { "arguments": [ { + "commentStart": 1048, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -784,16 +902,19 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 1041, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1041, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 1040, "end": 0, "operator": "-", "start": 0, @@ -807,12 +928,14 @@ description: Result of parsing color-cube.kcl "type": "ArrayExpression" }, { + "commentStart": 1078, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1081, "end": 0, "start": 0, "type": "TagDeclarator", @@ -821,11 +944,13 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 983, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 983, "end": 0, "start": 0, "type": "CallExpression", @@ -836,16 +961,19 @@ description: Result of parsing color-cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 1114, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1128, "elements": [ { "arguments": [ { + "commentStart": 1143, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -853,11 +981,13 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 1129, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 1129, "end": 0, "start": 0, "type": "CallExpression", @@ -866,6 +996,7 @@ description: Result of parsing color-cube.kcl { "arguments": [ { + "commentStart": 1161, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -873,11 +1004,13 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 1147, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 1147, "end": 0, "start": 0, "type": "CallExpression", @@ -892,11 +1025,13 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 1109, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1109, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -906,11 +1041,13 @@ description: Result of parsing color-cube.kcl { "arguments": [], "callee": { + "commentStart": 1171, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1171, "end": 0, "start": 0, "type": "CallExpression", @@ -921,12 +1058,14 @@ description: Result of parsing color-cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 1195, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1204, "end": 0, "name": "extrudeLength", "start": 0, @@ -936,16 +1075,19 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 1184, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1184, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1192, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -957,12 +1099,14 @@ description: Result of parsing color-cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 1235, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1243, "end": 0, "name": "color", "start": 0, @@ -973,12 +1117,14 @@ description: Result of parsing color-cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 1250, "end": 0, "name": "metalness", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1262, "end": 0, "name": "metalConstant", "start": 0, @@ -989,12 +1135,14 @@ description: Result of parsing color-cube.kcl { "type": "LabeledArg", "label": { + "commentStart": 1277, "end": 0, "name": "roughness", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1289, "end": 0, "name": "roughnessConstant", "start": 0, @@ -1004,11 +1152,13 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 1224, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, + "commentStart": 1224, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1016,25 +1166,30 @@ description: Result of parsing color-cube.kcl "unlabeled": null } ], + "commentStart": 765, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, + "commentStart": 758, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 754, "end": 0, "start": 0 }, + "commentStart": 737, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 738, "end": 0, "name": "profile", "start": 0, @@ -1044,6 +1199,7 @@ description: Result of parsing color-cube.kcl { "type": "Parameter", "identifier": { + "commentStart": 747, "end": 0, "name": "color", "start": 0, @@ -1060,15 +1216,22 @@ description: Result of parsing color-cube.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// Sketch a rectangle centered at the origin of the profile" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1309, "end": 0, "expression": { "arguments": [ { + "commentStart": 1359, "end": 0, "name": "bluePlane", "start": 0, @@ -1076,6 +1239,7 @@ description: Result of parsing color-cube.kcl "type": "Identifier" }, { + "commentStart": 1369, "end": 0, "raw": "'#0000FF'", "start": 0, @@ -1085,25 +1249,34 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 1343, "end": 0, "name": "sketchRectangle", "start": 0, "type": "Identifier" }, + "commentStart": 1343, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "preComments": [ + "", + "", + "// Sketch each side of the cube" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 1380, "end": 0, "expression": { "arguments": [ { + "commentStart": 1396, "end": 0, "name": "yellowPlane", "start": 0, @@ -1111,6 +1284,7 @@ description: Result of parsing color-cube.kcl "type": "Identifier" }, { + "commentStart": 1408, "end": 0, "raw": "'#FFFF00'", "start": 0, @@ -1120,11 +1294,13 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 1380, "end": 0, "name": "sketchRectangle", "start": 0, "type": "Identifier" }, + "commentStart": 1380, "end": 0, "start": 0, "type": "CallExpression", @@ -1135,10 +1311,12 @@ description: Result of parsing color-cube.kcl "type": "ExpressionStatement" }, { + "commentStart": 1419, "end": 0, "expression": { "arguments": [ { + "commentStart": 1435, "end": 0, "name": "greenPlane", "start": 0, @@ -1146,6 +1324,7 @@ description: Result of parsing color-cube.kcl "type": "Identifier" }, { + "commentStart": 1446, "end": 0, "raw": "'#00FF00'", "start": 0, @@ -1155,11 +1334,13 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 1419, "end": 0, "name": "sketchRectangle", "start": 0, "type": "Identifier" }, + "commentStart": 1419, "end": 0, "start": 0, "type": "CallExpression", @@ -1170,10 +1351,12 @@ description: Result of parsing color-cube.kcl "type": "ExpressionStatement" }, { + "commentStart": 1457, "end": 0, "expression": { "arguments": [ { + "commentStart": 1473, "end": 0, "name": "redPlane", "start": 0, @@ -1181,6 +1364,7 @@ description: Result of parsing color-cube.kcl "type": "Identifier" }, { + "commentStart": 1482, "end": 0, "raw": "'#FF0000'", "start": 0, @@ -1190,11 +1374,13 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 1457, "end": 0, "name": "sketchRectangle", "start": 0, "type": "Identifier" }, + "commentStart": 1457, "end": 0, "start": 0, "type": "CallExpression", @@ -1205,10 +1391,12 @@ description: Result of parsing color-cube.kcl "type": "ExpressionStatement" }, { + "commentStart": 1493, "end": 0, "expression": { "arguments": [ { + "commentStart": 1509, "end": 0, "name": "tealPlane", "start": 0, @@ -1216,6 +1404,7 @@ description: Result of parsing color-cube.kcl "type": "Identifier" }, { + "commentStart": 1519, "end": 0, "raw": "'#00FFFF'", "start": 0, @@ -1225,11 +1414,13 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 1493, "end": 0, "name": "sketchRectangle", "start": 0, "type": "Identifier" }, + "commentStart": 1493, "end": 0, "start": 0, "type": "CallExpression", @@ -1240,10 +1431,12 @@ description: Result of parsing color-cube.kcl "type": "ExpressionStatement" }, { + "commentStart": 1530, "end": 0, "expression": { "arguments": [ { + "commentStart": 1546, "end": 0, "name": "purplePlane", "start": 0, @@ -1251,6 +1444,7 @@ description: Result of parsing color-cube.kcl "type": "Identifier" }, { + "commentStart": 1558, "end": 0, "raw": "'#FF00FF'", "start": 0, @@ -1260,11 +1454,13 @@ description: Result of parsing color-cube.kcl } ], "callee": { + "commentStart": 1530, "end": 0, "name": "sketchRectangle", "start": 0, "type": "Identifier" }, + "commentStart": 1530, "end": 0, "start": 0, "type": "CallExpression", @@ -1275,20 +1471,32 @@ description: Result of parsing color-cube.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 134, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Color Cube", + "// This is a color cube centered about the origin. It is used to help determine orientation in the scene.", + "", + "", + "// Set unit" + ], "properties": [ { + "commentStart": 143, "end": 0, "key": { + "commentStart": 143, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -1297,6 +1505,7 @@ description: Result of parsing color-cube.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 163, "end": 0, "name": "mm", "start": 0, @@ -1310,100 +1519,16 @@ description: Result of parsing color-cube.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "4": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create planes for 6 sides of a cube", - "style": "line" - } - } - ], - "10": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Sketch a rectangle centered at the origin of the profile", - "style": "line" - } - } - ], - "11": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Sketch each side of the cube", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Color Cube", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "This is a color cube centered about the origin. It is used to help determine orientation in the scene.", - "style": "line" - } - }, - { + "commentStart": 166, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set unit", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Globals referenced in drawRectangle", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/cycloidal-gear/ast.snap b/rust/kcl-lib/tests/kcl_samples/cycloidal-gear/ast.snap index b36adf785..e0e3206b7 100644 --- a/rust/kcl-lib/tests/kcl_samples/cycloidal-gear/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/cycloidal-gear/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing cycloidal-gear.kcl "Ok": { "body": [ { + "commentStart": 203, "declaration": { + "commentStart": 209, "end": 0, "id": { + "commentStart": 209, "end": 0, "name": "cycloidalGear", "start": 0, @@ -18,9 +21,12 @@ description: Result of parsing cycloidal-gear.kcl "body": { "body": [ { + "commentStart": 273, "declaration": { + "commentStart": 438, "end": 0, "id": { + "commentStart": 438, "end": 0, "name": "gearSketch", "start": 0, @@ -30,19 +36,25 @@ description: Result of parsing cycloidal-gear.kcl "body": { "body": [ { + "commentStart": 464, "declaration": { + "commentStart": 464, "end": 0, "id": { + "commentStart": 464, "end": 0, "name": "helixAngleP", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 478, "end": 0, "left": { + "commentStart": 478, "end": 0, "left": { + "commentStart": 478, "end": 0, "name": "helixAngle", "start": 0, @@ -51,6 +63,7 @@ description: Result of parsing cycloidal-gear.kcl }, "operator": "*", "right": { + "commentStart": 491, "end": 0, "name": "gHeight", "start": 0, @@ -63,6 +76,7 @@ description: Result of parsing cycloidal-gear.kcl }, "operator": "/", "right": { + "commentStart": 501, "end": 0, "name": "gearHeight", "start": 0, @@ -83,9 +97,12 @@ description: Result of parsing cycloidal-gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 516, "declaration": { + "commentStart": 516, "end": 0, "id": { + "commentStart": 516, "end": 0, "name": "gearProfile", "start": 0, @@ -100,12 +117,14 @@ description: Result of parsing cycloidal-gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 562, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 571, "end": 0, "name": "gHeight", "start": 0, @@ -115,16 +134,19 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 544, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 544, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 556, "end": 0, "raw": "\"XY\"", "start": 0, @@ -135,11 +157,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 530, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 530, "end": 0, "start": 0, "type": "CallExpression", @@ -148,14 +172,19 @@ description: Result of parsing cycloidal-gear.kcl { "arguments": [ { + "commentStart": 605, "elements": [ { + "commentStart": 618, "end": 0, "left": { + "commentStart": 618, "end": 0, "left": { + "commentStart": 618, "end": 0, "left": { + "commentStart": 618, "end": 0, "name": "gearPitch", "start": 0, @@ -164,6 +193,7 @@ description: Result of parsing cycloidal-gear.kcl }, "operator": "*", "right": { + "commentStart": 630, "end": 0, "raw": "1.55", "start": 0, @@ -184,6 +214,7 @@ description: Result of parsing cycloidal-gear.kcl { "arguments": [ { + "commentStart": 651, "end": 0, "name": "helixAngleP", "start": 0, @@ -192,11 +223,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 641, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 641, "end": 0, "start": 0, "type": "CallExpression", @@ -204,11 +237,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 637, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 637, "end": 0, "start": 0, "type": "CallExpression", @@ -220,8 +255,10 @@ description: Result of parsing cycloidal-gear.kcl }, "operator": "+", "right": { + "commentStart": 667, "end": 0, "left": { + "commentStart": 667, "end": 0, "name": "gearPitch", "start": 0, @@ -235,12 +272,14 @@ description: Result of parsing cycloidal-gear.kcl "arguments": [ { "argument": { + "commentStart": 694, "end": 0, "name": "helixAngleP", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 693, "end": 0, "operator": "-", "start": 0, @@ -249,11 +288,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 683, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 683, "end": 0, "start": 0, "type": "CallExpression", @@ -261,11 +302,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 679, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, + "commentStart": 679, "end": 0, "start": 0, "type": "CallExpression", @@ -280,12 +323,16 @@ description: Result of parsing cycloidal-gear.kcl "type": "BinaryExpression" }, { + "commentStart": 720, "end": 0, "left": { + "commentStart": 720, "end": 0, "left": { + "commentStart": 720, "end": 0, "left": { + "commentStart": 720, "end": 0, "name": "gearPitch", "start": 0, @@ -294,6 +341,7 @@ description: Result of parsing cycloidal-gear.kcl }, "operator": "*", "right": { + "commentStart": 732, "end": 0, "raw": "1.55", "start": 0, @@ -314,6 +362,7 @@ description: Result of parsing cycloidal-gear.kcl { "arguments": [ { + "commentStart": 753, "end": 0, "name": "helixAngleP", "start": 0, @@ -322,11 +371,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 743, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 743, "end": 0, "start": 0, "type": "CallExpression", @@ -334,11 +385,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 739, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, + "commentStart": 739, "end": 0, "start": 0, "type": "CallExpression", @@ -350,8 +403,10 @@ description: Result of parsing cycloidal-gear.kcl }, "operator": "+", "right": { + "commentStart": 769, "end": 0, "left": { + "commentStart": 769, "end": 0, "name": "gearPitch", "start": 0, @@ -365,12 +420,14 @@ description: Result of parsing cycloidal-gear.kcl "arguments": [ { "argument": { + "commentStart": 796, "end": 0, "name": "helixAngleP", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 795, "end": 0, "operator": "-", "start": 0, @@ -379,11 +436,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 785, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 785, "end": 0, "start": 0, "type": "CallExpression", @@ -391,11 +450,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 781, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 781, "end": 0, "start": 0, "type": "CallExpression", @@ -416,6 +477,7 @@ description: Result of parsing cycloidal-gear.kcl "type": "ArrayExpression" }, { + "commentStart": 822, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -423,11 +485,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 590, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 590, "end": 0, "start": 0, "type": "CallExpression", @@ -436,11 +500,14 @@ description: Result of parsing cycloidal-gear.kcl { "arguments": [ { + "commentStart": 838, "end": 0, "properties": [ { + "commentStart": 851, "end": 0, "key": { + "commentStart": 851, "end": 0, "name": "angleStart", "start": 0, @@ -449,8 +516,10 @@ description: Result of parsing cycloidal-gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 864, "end": 0, "left": { + "commentStart": 864, "end": 0, "raw": "90", "start": 0, @@ -463,6 +532,7 @@ description: Result of parsing cycloidal-gear.kcl }, "operator": "+", "right": { + "commentStart": 869, "end": 0, "name": "helixAngleP", "start": 0, @@ -475,8 +545,10 @@ description: Result of parsing cycloidal-gear.kcl } }, { + "commentStart": 893, "end": 0, "key": { + "commentStart": 893, "end": 0, "name": "angleEnd", "start": 0, @@ -485,9 +557,11 @@ description: Result of parsing cycloidal-gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 904, "end": 0, "left": { "argument": { + "commentStart": 905, "end": 0, "raw": "90", "start": 0, @@ -498,6 +572,7 @@ description: Result of parsing cycloidal-gear.kcl "suffix": "None" } }, + "commentStart": 904, "end": 0, "operator": "-", "start": 0, @@ -506,6 +581,7 @@ description: Result of parsing cycloidal-gear.kcl }, "operator": "+", "right": { + "commentStart": 910, "end": 0, "name": "helixAngleP", "start": 0, @@ -518,8 +594,10 @@ description: Result of parsing cycloidal-gear.kcl } }, { + "commentStart": 934, "end": 0, "key": { + "commentStart": 934, "end": 0, "name": "radius", "start": 0, @@ -528,6 +606,7 @@ description: Result of parsing cycloidal-gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 943, "end": 0, "name": "gearPitch", "start": 0, @@ -541,6 +620,7 @@ description: Result of parsing cycloidal-gear.kcl "type": "ObjectExpression" }, { + "commentStart": 965, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -548,11 +628,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 834, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 834, "end": 0, "start": 0, "type": "CallExpression", @@ -561,11 +643,14 @@ description: Result of parsing cycloidal-gear.kcl { "arguments": [ { + "commentStart": 991, "end": 0, "properties": [ { + "commentStart": 1004, "end": 0, "key": { + "commentStart": 1004, "end": 0, "name": "radius", "start": 0, @@ -574,8 +659,10 @@ description: Result of parsing cycloidal-gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1013, "end": 0, "left": { + "commentStart": 1013, "end": 0, "name": "gearPitch", "start": 0, @@ -584,6 +671,7 @@ description: Result of parsing cycloidal-gear.kcl }, "operator": "*", "right": { + "commentStart": 1025, "end": 0, "raw": "1.67", "start": 0, @@ -600,8 +688,10 @@ description: Result of parsing cycloidal-gear.kcl } }, { + "commentStart": 1042, "end": 0, "key": { + "commentStart": 1042, "end": 0, "name": "offset", "start": 0, @@ -610,6 +700,7 @@ description: Result of parsing cycloidal-gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1051, "end": 0, "raw": "60", "start": 0, @@ -627,6 +718,7 @@ description: Result of parsing cycloidal-gear.kcl "type": "ObjectExpression" }, { + "commentStart": 1066, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -634,11 +726,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 977, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 977, "end": 0, "start": 0, "type": "CallExpression", @@ -647,11 +741,14 @@ description: Result of parsing cycloidal-gear.kcl { "arguments": [ { + "commentStart": 1092, "end": 0, "properties": [ { + "commentStart": 1094, "end": 0, "key": { + "commentStart": 1094, "end": 0, "name": "radius", "start": 0, @@ -660,6 +757,7 @@ description: Result of parsing cycloidal-gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1103, "end": 0, "name": "gearPitch", "start": 0, @@ -668,8 +766,10 @@ description: Result of parsing cycloidal-gear.kcl } }, { + "commentStart": 1114, "end": 0, "key": { + "commentStart": 1114, "end": 0, "name": "offset", "start": 0, @@ -679,6 +779,7 @@ description: Result of parsing cycloidal-gear.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1124, "end": 0, "raw": "180", "start": 0, @@ -689,6 +790,7 @@ description: Result of parsing cycloidal-gear.kcl "suffix": "None" } }, + "commentStart": 1123, "end": 0, "operator": "-", "start": 0, @@ -702,6 +804,7 @@ description: Result of parsing cycloidal-gear.kcl "type": "ObjectExpression" }, { + "commentStart": 1131, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -709,11 +812,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 1078, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 1078, "end": 0, "start": 0, "type": "CallExpression", @@ -722,11 +827,14 @@ description: Result of parsing cycloidal-gear.kcl { "arguments": [ { + "commentStart": 1157, "end": 0, "properties": [ { + "commentStart": 1170, "end": 0, "key": { + "commentStart": 1170, "end": 0, "name": "radius", "start": 0, @@ -735,8 +843,10 @@ description: Result of parsing cycloidal-gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1179, "end": 0, "left": { + "commentStart": 1179, "end": 0, "name": "gearPitch", "start": 0, @@ -745,6 +855,7 @@ description: Result of parsing cycloidal-gear.kcl }, "operator": "*", "right": { + "commentStart": 1191, "end": 0, "raw": "1.67", "start": 0, @@ -761,8 +872,10 @@ description: Result of parsing cycloidal-gear.kcl } }, { + "commentStart": 1208, "end": 0, "key": { + "commentStart": 1208, "end": 0, "name": "offset", "start": 0, @@ -771,6 +884,7 @@ description: Result of parsing cycloidal-gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1217, "end": 0, "raw": "60", "start": 0, @@ -788,6 +902,7 @@ description: Result of parsing cycloidal-gear.kcl "type": "ObjectExpression" }, { + "commentStart": 1232, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -795,11 +910,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 1143, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 1143, "end": 0, "start": 0, "type": "CallExpression", @@ -808,11 +925,14 @@ description: Result of parsing cycloidal-gear.kcl { "arguments": [ { + "commentStart": 1258, "end": 0, "properties": [ { + "commentStart": 1260, "end": 0, "key": { + "commentStart": 1260, "end": 0, "name": "radius", "start": 0, @@ -821,6 +941,7 @@ description: Result of parsing cycloidal-gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1269, "end": 0, "name": "gearPitch", "start": 0, @@ -829,8 +950,10 @@ description: Result of parsing cycloidal-gear.kcl } }, { + "commentStart": 1280, "end": 0, "key": { + "commentStart": 1280, "end": 0, "name": "offset", "start": 0, @@ -840,6 +963,7 @@ description: Result of parsing cycloidal-gear.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1290, "end": 0, "raw": "180", "start": 0, @@ -850,6 +974,7 @@ description: Result of parsing cycloidal-gear.kcl "suffix": "None" } }, + "commentStart": 1289, "end": 0, "operator": "-", "start": 0, @@ -863,6 +988,7 @@ description: Result of parsing cycloidal-gear.kcl "type": "ObjectExpression" }, { + "commentStart": 1297, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -870,11 +996,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 1244, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 1244, "end": 0, "start": 0, "type": "CallExpression", @@ -883,10 +1011,12 @@ description: Result of parsing cycloidal-gear.kcl { "arguments": [ { + "commentStart": 1325, "elements": [ { "arguments": [ { + "commentStart": 1340, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -894,11 +1024,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 1326, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 1326, "end": 0, "start": 0, "type": "CallExpression", @@ -907,6 +1039,7 @@ description: Result of parsing cycloidal-gear.kcl { "arguments": [ { + "commentStart": 1358, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -914,11 +1047,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 1344, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 1344, "end": 0, "start": 0, "type": "CallExpression", @@ -931,6 +1066,7 @@ description: Result of parsing cycloidal-gear.kcl "type": "ArrayExpression" }, { + "commentStart": 1363, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -938,11 +1074,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 1309, "end": 0, "name": "tangentialArcTo", "start": 0, "type": "Identifier" }, + "commentStart": 1309, "end": 0, "start": 0, "type": "CallExpression", @@ -951,6 +1089,7 @@ description: Result of parsing cycloidal-gear.kcl { "arguments": [ { + "commentStart": 1381, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -958,11 +1097,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 1375, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1375, "end": 0, "start": 0, "type": "CallExpression", @@ -975,14 +1116,17 @@ description: Result of parsing cycloidal-gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 1417, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1426, "elements": [ { + "commentStart": 1427, "end": 0, "raw": "0", "start": 0, @@ -994,6 +1138,7 @@ description: Result of parsing cycloidal-gear.kcl } }, { + "commentStart": 1430, "end": 0, "raw": "0", "start": 0, @@ -1014,14 +1159,17 @@ description: Result of parsing cycloidal-gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 1445, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1454, "end": 0, "left": { + "commentStart": 1454, "end": 0, "name": "holeDiameter", "start": 0, @@ -1030,6 +1178,7 @@ description: Result of parsing cycloidal-gear.kcl }, "operator": "/", "right": { + "commentStart": 1469, "end": 0, "raw": "2", "start": 0, @@ -1047,11 +1196,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 1398, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1398, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1059,6 +1210,7 @@ description: Result of parsing cycloidal-gear.kcl "unlabeled": null }, { + "commentStart": 1483, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1066,17 +1218,20 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 1393, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 1393, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 530, "end": 0, "start": 0, "type": "PipeExpression", @@ -1093,26 +1248,31 @@ description: Result of parsing cycloidal-gear.kcl }, { "argument": { + "commentStart": 1497, "end": 0, "name": "gearProfile", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1490, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 458, "end": 0, "start": 0 }, + "commentStart": 448, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 449, "end": 0, "name": "gHeight", "start": 0, @@ -1129,14 +1289,20 @@ description: Result of parsing cycloidal-gear.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "// Create a function to draw the gear profile as a sketch. Rotate each profile about the gear's axis by an helix angle proportional to the total gear height" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1514, "declaration": { + "commentStart": 1600, "end": 0, "id": { + "commentStart": 1600, "end": 0, "name": "gearLoft", "start": 0, @@ -1145,10 +1311,12 @@ description: Result of parsing cycloidal-gear.kcl "init": { "arguments": [ { + "commentStart": 1616, "elements": [ { "arguments": [ { + "commentStart": 1633, "end": 0, "raw": "0", "start": 0, @@ -1161,11 +1329,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 1622, "end": 0, "name": "gearSketch", "start": 0, "type": "Identifier" }, + "commentStart": 1622, "end": 0, "start": 0, "type": "CallExpression", @@ -1174,8 +1344,10 @@ description: Result of parsing cycloidal-gear.kcl { "arguments": [ { + "commentStart": 1652, "end": 0, "left": { + "commentStart": 1652, "end": 0, "name": "gearHeight", "start": 0, @@ -1184,6 +1356,7 @@ description: Result of parsing cycloidal-gear.kcl }, "operator": "/", "right": { + "commentStart": 1665, "end": 0, "raw": "2", "start": 0, @@ -1200,11 +1373,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 1641, "end": 0, "name": "gearSketch", "start": 0, "type": "Identifier" }, + "commentStart": 1641, "end": 0, "start": 0, "type": "CallExpression", @@ -1213,6 +1388,7 @@ description: Result of parsing cycloidal-gear.kcl { "arguments": [ { + "commentStart": 1684, "end": 0, "name": "gearHeight", "start": 0, @@ -1221,11 +1397,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 1673, "end": 0, "name": "gearSketch", "start": 0, "type": "Identifier" }, + "commentStart": 1673, "end": 0, "start": 0, "type": "CallExpression", @@ -1239,11 +1417,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 1611, "end": 0, "name": "loft", "start": 0, "type": "Identifier" }, + "commentStart": 1611, "end": 0, "start": 0, "type": "CallExpression", @@ -1254,41 +1434,38 @@ description: Result of parsing cycloidal-gear.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Draw sketches of the gear profile along the gear height and loft them together" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { "argument": { + "commentStart": 1711, "end": 0, "name": "gearLoft", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1700, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 273, "end": 0, "nonCodeMeta": { "nonCodeNodes": { - "0": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Draw sketches of the gear profile along the gear height and loft them together", - "style": "line" - } - } - ], "1": [ { + "commentStart": 1700, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1298,26 +1475,17 @@ description: Result of parsing cycloidal-gear.kcl } ] }, - "startNodes": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Create a function to draw the gear profile as a sketch. Rotate each profile about the gear's axis by an helix angle proportional to the total gear height", - "style": "line" - } - } - ] + "startNodes": [] }, "start": 0 }, + "commentStart": 222, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 223, "end": 0, "name": "gearPitch", "start": 0, @@ -1327,6 +1495,7 @@ description: Result of parsing cycloidal-gear.kcl { "type": "Parameter", "identifier": { + "commentStart": 234, "end": 0, "name": "gearHeight", "start": 0, @@ -1336,6 +1505,7 @@ description: Result of parsing cycloidal-gear.kcl { "type": "Parameter", "identifier": { + "commentStart": 246, "end": 0, "name": "holeDiameter", "start": 0, @@ -1345,6 +1515,7 @@ description: Result of parsing cycloidal-gear.kcl { "type": "Parameter", "identifier": { + "commentStart": 260, "end": 0, "name": "helixAngle", "start": 0, @@ -1366,10 +1537,12 @@ description: Result of parsing cycloidal-gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 1721, "end": 0, "expression": { "arguments": [ { + "commentStart": 1737, "end": 0, "raw": ".3", "start": 0, @@ -1381,6 +1554,7 @@ description: Result of parsing cycloidal-gear.kcl } }, { + "commentStart": 1741, "end": 0, "raw": "1.5", "start": 0, @@ -1392,6 +1566,7 @@ description: Result of parsing cycloidal-gear.kcl } }, { + "commentStart": 1746, "end": 0, "raw": "0.297", "start": 0, @@ -1404,6 +1579,7 @@ description: Result of parsing cycloidal-gear.kcl }, { "argument": { + "commentStart": 1754, "end": 0, "raw": "80", "start": 0, @@ -1414,6 +1590,7 @@ description: Result of parsing cycloidal-gear.kcl "suffix": "None" } }, + "commentStart": 1753, "end": 0, "operator": "-", "start": 0, @@ -1422,11 +1599,13 @@ description: Result of parsing cycloidal-gear.kcl } ], "callee": { + "commentStart": 1723, "end": 0, "name": "cycloidalGear", "start": 0, "type": "Identifier" }, + "commentStart": 1723, "end": 0, "start": 0, "type": "CallExpression", @@ -1437,20 +1616,32 @@ description: Result of parsing cycloidal-gear.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 171, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Cycloidal Gear", + "// A cycloidal gear is a gear with a continuous, curved tooth profile. They are used in watchmaking and high precision robotics actuation", + "", + "", + "// Set Units" + ], "properties": [ { + "commentStart": 180, "end": 0, "key": { + "commentStart": 180, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -1459,6 +1650,7 @@ description: Result of parsing cycloidal-gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 200, "end": 0, "name": "in", "start": 0, @@ -1475,6 +1667,7 @@ description: Result of parsing cycloidal-gear.kcl "nonCodeNodes": { "0": [ { + "commentStart": 1721, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1486,44 +1679,7 @@ description: Result of parsing cycloidal-gear.kcl }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Cycloidal Gear", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A cycloidal gear is a gear with a continuous, curved tooth profile. They are used in watchmaking and high precision robotics actuation", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set Units", - "style": "line" - } - }, - { + "commentStart": 203, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/kcl_samples/dodecahedron/ast.snap b/rust/kcl-lib/tests/kcl_samples/dodecahedron/ast.snap index bbff5a54b..a500c87c4 100644 --- a/rust/kcl-lib/tests/kcl_samples/dodecahedron/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/dodecahedron/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing dodecahedron.kcl "Ok": { "body": [ { + "commentStart": 305, "declaration": { + "commentStart": 351, "end": 0, "id": { + "commentStart": 351, "end": 0, "name": "circR", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 359, "end": 0, "raw": "25", "start": 0, @@ -30,22 +34,31 @@ description: Result of parsing dodecahedron.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Input parameters", + "// circumscribed radius" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 361, "declaration": { + "commentStart": 421, "end": 0, "id": { + "commentStart": 421, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 437, "end": 0, "left": { + "commentStart": 437, "end": 0, "name": "circR", "start": 0, @@ -54,6 +67,7 @@ description: Result of parsing dodecahedron.kcl }, "operator": "*", "right": { + "commentStart": 445, "end": 0, "raw": "0.2", "start": 0, @@ -73,14 +87,23 @@ description: Result of parsing dodecahedron.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Calculated parameters", + "// thickness of the dodecahedron" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 448, "declaration": { + "commentStart": 484, "end": 0, "id": { + "commentStart": 484, "end": 0, "name": "dihedral", "start": 0, @@ -90,10 +113,12 @@ description: Result of parsing dodecahedron.kcl "arguments": [ { "argument": { + "commentStart": 502, "end": 0, "left": { "arguments": [ { + "commentStart": 507, "end": 0, "raw": "5", "start": 0, @@ -106,11 +131,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 502, "end": 0, "name": "sqrt", "start": 0, "type": "Identifier" }, + "commentStart": 502, "end": 0, "start": 0, "type": "CallExpression", @@ -118,6 +145,7 @@ description: Result of parsing dodecahedron.kcl }, "operator": "/", "right": { + "commentStart": 512, "end": 0, "raw": "5", "start": 0, @@ -132,6 +160,7 @@ description: Result of parsing dodecahedron.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 500, "end": 0, "operator": "-", "start": 0, @@ -140,11 +169,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 495, "end": 0, "name": "acos", "start": 0, "type": "Identifier" }, + "commentStart": 495, "end": 0, "start": 0, "type": "CallExpression", @@ -155,24 +186,35 @@ description: Result of parsing dodecahedron.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// angle between faces in radians" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 515, "declaration": { + "commentStart": 537, "end": 0, "id": { + "commentStart": 537, "end": 0, "name": "inscR", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 545, "end": 0, "left": { + "commentStart": 545, "end": 0, "left": { + "commentStart": 545, "end": 0, "name": "circR", "start": 0, @@ -181,6 +223,7 @@ description: Result of parsing dodecahedron.kcl }, "operator": "/", "right": { + "commentStart": 553, "end": 0, "raw": "15", "start": 0, @@ -199,8 +242,10 @@ description: Result of parsing dodecahedron.kcl "right": { "arguments": [ { + "commentStart": 563, "end": 0, "left": { + "commentStart": 563, "end": 0, "raw": "75", "start": 0, @@ -213,8 +258,10 @@ description: Result of parsing dodecahedron.kcl }, "operator": "+", "right": { + "commentStart": 568, "end": 0, "left": { + "commentStart": 568, "end": 0, "raw": "30", "start": 0, @@ -229,6 +276,7 @@ description: Result of parsing dodecahedron.kcl "right": { "arguments": [ { + "commentStart": 578, "end": 0, "raw": "5", "start": 0, @@ -241,11 +289,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 573, "end": 0, "name": "sqrt", "start": 0, "type": "Identifier" }, + "commentStart": 573, "end": 0, "start": 0, "type": "CallExpression", @@ -261,11 +311,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 558, "end": 0, "name": "sqrt", "start": 0, "type": "Identifier" }, + "commentStart": 558, "end": 0, "start": 0, "type": "CallExpression", @@ -280,24 +332,35 @@ description: Result of parsing dodecahedron.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// inscribed radius" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 581, "declaration": { + "commentStart": 607, "end": 0, "id": { + "commentStart": 607, "end": 0, "name": "edgeL", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 615, "end": 0, "left": { + "commentStart": 615, "end": 0, "left": { + "commentStart": 615, "end": 0, "raw": "4", "start": 0, @@ -310,6 +373,7 @@ description: Result of parsing dodecahedron.kcl }, "operator": "*", "right": { + "commentStart": 619, "end": 0, "name": "circR", "start": 0, @@ -322,10 +386,12 @@ description: Result of parsing dodecahedron.kcl }, "operator": "/", "right": { + "commentStart": 628, "end": 0, "left": { "arguments": [ { + "commentStart": 633, "end": 0, "raw": "3", "start": 0, @@ -338,11 +404,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 628, "end": 0, "name": "sqrt", "start": 0, "type": "Identifier" }, + "commentStart": 628, "end": 0, "start": 0, "type": "CallExpression", @@ -350,8 +418,10 @@ description: Result of parsing dodecahedron.kcl }, "operator": "*", "right": { + "commentStart": 639, "end": 0, "left": { + "commentStart": 639, "end": 0, "raw": "1", "start": 0, @@ -366,6 +436,7 @@ description: Result of parsing dodecahedron.kcl "right": { "arguments": [ { + "commentStart": 648, "end": 0, "raw": "5", "start": 0, @@ -378,11 +449,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 643, "end": 0, "name": "sqrt", "start": 0, "type": "Identifier" }, + "commentStart": 643, "end": 0, "start": 0, "type": "CallExpression", @@ -405,24 +478,35 @@ description: Result of parsing dodecahedron.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// pentagon edge length" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 652, "declaration": { + "commentStart": 673, "end": 0, "id": { + "commentStart": 673, "end": 0, "name": "pentR", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 681, "end": 0, "left": { + "commentStart": 681, "end": 0, "left": { + "commentStart": 681, "end": 0, "name": "edgeL", "start": 0, @@ -431,6 +515,7 @@ description: Result of parsing dodecahedron.kcl }, "operator": "/", "right": { + "commentStart": 689, "end": 0, "raw": "2", "start": 0, @@ -451,6 +536,7 @@ description: Result of parsing dodecahedron.kcl { "arguments": [ { + "commentStart": 707, "end": 0, "raw": "36", "start": 0, @@ -463,11 +549,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 697, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 697, "end": 0, "start": 0, "type": "CallExpression", @@ -475,11 +563,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 693, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, + "commentStart": 693, "end": 0, "start": 0, "type": "CallExpression", @@ -494,25 +584,36 @@ description: Result of parsing dodecahedron.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// pentagon radius" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 711, "declaration": { + "commentStart": 758, "end": 0, "id": { + "commentStart": 758, "end": 0, "name": "plane", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 766, "end": 0, "properties": [ { + "commentStart": 770, "end": 0, "key": { + "commentStart": 770, "end": 0, "name": "plane", "start": 0, @@ -521,11 +622,14 @@ description: Result of parsing dodecahedron.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 778, "end": 0, "properties": [ { + "commentStart": 784, "end": 0, "key": { + "commentStart": 784, "end": 0, "name": "origin", "start": 0, @@ -534,17 +638,21 @@ description: Result of parsing dodecahedron.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 793, "elements": [ { + "commentStart": 801, "end": 0, "left": { "argument": { + "commentStart": 802, "end": 0, "name": "inscR", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 801, "end": 0, "operator": "-", "start": 0, @@ -557,10 +665,12 @@ description: Result of parsing dodecahedron.kcl { "arguments": [ { + "commentStart": 824, "end": 0, "left": { "arguments": [ { + "commentStart": 834, "end": 0, "name": "dihedral", "start": 0, @@ -569,11 +679,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 824, "end": 0, "name": "toDegrees", "start": 0, "type": "Identifier" }, + "commentStart": 824, "end": 0, "start": 0, "type": "CallExpression", @@ -581,6 +693,7 @@ description: Result of parsing dodecahedron.kcl }, "operator": "-", "right": { + "commentStart": 846, "end": 0, "raw": "90", "start": 0, @@ -597,11 +710,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 814, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 814, "end": 0, "start": 0, "type": "CallExpression", @@ -609,11 +724,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 810, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 810, "end": 0, "start": 0, "type": "CallExpression", @@ -624,6 +741,7 @@ description: Result of parsing dodecahedron.kcl "type": "BinaryExpression" }, { + "commentStart": 858, "end": 0, "raw": "0", "start": 0, @@ -635,8 +753,10 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 867, "end": 0, "left": { + "commentStart": 867, "end": 0, "name": "inscR", "start": 0, @@ -645,8 +765,10 @@ description: Result of parsing dodecahedron.kcl }, "operator": "-", "right": { + "commentStart": 876, "end": 0, "left": { + "commentStart": 876, "end": 0, "name": "inscR", "start": 0, @@ -659,10 +781,12 @@ description: Result of parsing dodecahedron.kcl { "arguments": [ { + "commentStart": 898, "end": 0, "left": { "arguments": [ { + "commentStart": 908, "end": 0, "name": "dihedral", "start": 0, @@ -671,11 +795,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 898, "end": 0, "name": "toDegrees", "start": 0, "type": "Identifier" }, + "commentStart": 898, "end": 0, "start": 0, "type": "CallExpression", @@ -683,6 +809,7 @@ description: Result of parsing dodecahedron.kcl }, "operator": "-", "right": { + "commentStart": 920, "end": 0, "raw": "90", "start": 0, @@ -699,11 +826,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 888, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 888, "end": 0, "start": 0, "type": "CallExpression", @@ -711,11 +840,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 884, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, + "commentStart": 884, "end": 0, "start": 0, "type": "CallExpression", @@ -737,8 +868,10 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 937, "end": 0, "key": { + "commentStart": 937, "end": 0, "name": "xAxis", "start": 0, @@ -747,10 +880,12 @@ description: Result of parsing dodecahedron.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 945, "elements": [ { "arguments": [ { + "commentStart": 950, "end": 0, "name": "dihedral", "start": 0, @@ -759,17 +894,20 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 946, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 946, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { + "commentStart": 961, "end": 0, "raw": "0.0", "start": 0, @@ -783,6 +921,7 @@ description: Result of parsing dodecahedron.kcl { "arguments": [ { + "commentStart": 970, "end": 0, "name": "dihedral", "start": 0, @@ -791,11 +930,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 966, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, + "commentStart": 966, "end": 0, "start": 0, "type": "CallExpression", @@ -809,8 +950,10 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 986, "end": 0, "key": { + "commentStart": 986, "end": 0, "name": "yAxis", "start": 0, @@ -819,8 +962,10 @@ description: Result of parsing dodecahedron.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 994, "elements": [ { + "commentStart": 995, "end": 0, "raw": "0", "start": 0, @@ -832,6 +977,7 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 998, "end": 0, "raw": "1", "start": 0, @@ -843,6 +989,7 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1001, "end": 0, "raw": "0", "start": 0, @@ -861,8 +1008,10 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1009, "end": 0, "key": { + "commentStart": 1009, "end": 0, "name": "zAxis", "start": 0, @@ -871,10 +1020,12 @@ description: Result of parsing dodecahedron.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1017, "elements": [ { "arguments": [ { + "commentStart": 1022, "end": 0, "name": "dihedral", "start": 0, @@ -883,17 +1034,20 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 1018, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, + "commentStart": 1018, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { + "commentStart": 1033, "end": 0, "raw": "0", "start": 0, @@ -908,6 +1062,7 @@ description: Result of parsing dodecahedron.kcl "argument": { "arguments": [ { + "commentStart": 1041, "end": 0, "name": "dihedral", "start": 0, @@ -916,16 +1071,19 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 1037, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 1037, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 1036, "end": 0, "operator": "-", "start": 0, @@ -955,14 +1113,22 @@ description: Result of parsing dodecahedron.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Define a plane for the bottom angled face" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1057, "declaration": { + "commentStart": 1126, "end": 0, "id": { + "commentStart": 1126, "end": 0, "name": "bottomFace", "start": 0, @@ -973,6 +1139,7 @@ description: Result of parsing dodecahedron.kcl { "arguments": [ { + "commentStart": 1153, "end": 0, "raw": "'XY'", "start": 0, @@ -982,11 +1149,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 1139, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1139, "end": 0, "start": 0, "type": "CallExpression", @@ -995,11 +1164,14 @@ description: Result of parsing dodecahedron.kcl { "arguments": [ { + "commentStart": 1172, "end": 0, "properties": [ { + "commentStart": 1181, "end": 0, "key": { + "commentStart": 1181, "end": 0, "name": "radius", "start": 0, @@ -1008,6 +1180,7 @@ description: Result of parsing dodecahedron.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1190, "end": 0, "name": "pentR", "start": 0, @@ -1016,8 +1189,10 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1204, "end": 0, "key": { + "commentStart": 1204, "end": 0, "name": "numSides", "start": 0, @@ -1026,6 +1201,7 @@ description: Result of parsing dodecahedron.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1215, "end": 0, "raw": "5", "start": 0, @@ -1038,8 +1214,10 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1225, "end": 0, "key": { + "commentStart": 1225, "end": 0, "name": "center", "start": 0, @@ -1048,8 +1226,10 @@ description: Result of parsing dodecahedron.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1234, "elements": [ { + "commentStart": 1235, "end": 0, "raw": "0", "start": 0, @@ -1061,6 +1241,7 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1238, "end": 0, "raw": "0", "start": 0, @@ -1079,8 +1260,10 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1249, "end": 0, "key": { + "commentStart": 1249, "end": 0, "name": "inscribed", "start": 0, @@ -1089,6 +1272,7 @@ description: Result of parsing dodecahedron.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1261, "end": 0, "raw": "true", "start": 0, @@ -1103,6 +1287,7 @@ description: Result of parsing dodecahedron.kcl "type": "ObjectExpression" }, { + "commentStart": 1274, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1110,17 +1295,20 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 1164, "end": 0, "name": "polygon", "start": 0, "type": "Identifier" }, + "commentStart": 1164, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1139, "end": 0, "start": 0, "type": "PipeExpression", @@ -1131,14 +1319,22 @@ description: Result of parsing dodecahedron.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Create a regular pentagon inscribed in a circle of radius pentR" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1276, "declaration": { + "commentStart": 1278, "end": 0, "id": { + "commentStart": 1278, "end": 0, "name": "bottomSideFace", "start": 0, @@ -1149,6 +1345,7 @@ description: Result of parsing dodecahedron.kcl { "arguments": [ { + "commentStart": 1309, "end": 0, "name": "plane", "start": 0, @@ -1157,11 +1354,13 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 1295, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1295, "end": 0, "start": 0, "type": "CallExpression", @@ -1170,11 +1369,14 @@ description: Result of parsing dodecahedron.kcl { "arguments": [ { + "commentStart": 1329, "end": 0, "properties": [ { + "commentStart": 1338, "end": 0, "key": { + "commentStart": 1338, "end": 0, "name": "radius", "start": 0, @@ -1183,6 +1385,7 @@ description: Result of parsing dodecahedron.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1347, "end": 0, "name": "pentR", "start": 0, @@ -1191,8 +1394,10 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1361, "end": 0, "key": { + "commentStart": 1361, "end": 0, "name": "numSides", "start": 0, @@ -1201,6 +1406,7 @@ description: Result of parsing dodecahedron.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1372, "end": 0, "raw": "5", "start": 0, @@ -1213,8 +1419,10 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1382, "end": 0, "key": { + "commentStart": 1382, "end": 0, "name": "center", "start": 0, @@ -1223,8 +1431,10 @@ description: Result of parsing dodecahedron.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1391, "elements": [ { + "commentStart": 1392, "end": 0, "raw": "0", "start": 0, @@ -1236,6 +1446,7 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1395, "end": 0, "raw": "0", "start": 0, @@ -1254,8 +1465,10 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1406, "end": 0, "key": { + "commentStart": 1406, "end": 0, "name": "inscribed", "start": 0, @@ -1264,6 +1477,7 @@ description: Result of parsing dodecahedron.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1418, "end": 0, "raw": "true", "start": 0, @@ -1278,6 +1492,7 @@ description: Result of parsing dodecahedron.kcl "type": "ObjectExpression" }, { + "commentStart": 1431, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1285,22 +1500,26 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 1321, "end": 0, "name": "polygon", "start": 0, "type": "Identifier" }, + "commentStart": 1321, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1295, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 1433, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1328,9 +1547,12 @@ description: Result of parsing dodecahedron.kcl "type": "VariableDeclaration" }, { + "commentStart": 1470, "declaration": { + "commentStart": 1470, "end": 0, "id": { + "commentStart": 1470, "end": 0, "name": "bottom", "start": 0, @@ -1341,12 +1563,14 @@ description: Result of parsing dodecahedron.kcl { "type": "LabeledArg", "label": { + "commentStart": 1499, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1508, "end": 0, "name": "wallThickness", "start": 0, @@ -1356,16 +1580,19 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 1479, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1479, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1487, "end": 0, "name": "bottomFace", "start": 0, @@ -1383,9 +1610,12 @@ description: Result of parsing dodecahedron.kcl "type": "VariableDeclaration" }, { + "commentStart": 1523, "declaration": { + "commentStart": 1523, "end": 0, "id": { + "commentStart": 1523, "end": 0, "name": "bottomSide", "start": 0, @@ -1396,12 +1626,14 @@ description: Result of parsing dodecahedron.kcl { "type": "LabeledArg", "label": { + "commentStart": 1560, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1569, "end": 0, "name": "wallThickness", "start": 0, @@ -1411,16 +1643,19 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 1536, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1536, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1544, "end": 0, "name": "bottomSideFace", "start": 0, @@ -1438,9 +1673,12 @@ description: Result of parsing dodecahedron.kcl "type": "VariableDeclaration" }, { + "commentStart": 1583, "declaration": { + "commentStart": 1637, "end": 0, "id": { + "commentStart": 1637, "end": 0, "name": "bottomBowl", "start": 0, @@ -1451,12 +1689,14 @@ description: Result of parsing dodecahedron.kcl { "type": "LabeledArg", "label": { + "commentStart": 1685, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1697, "end": 0, "raw": "5", "start": 0, @@ -1471,14 +1711,17 @@ description: Result of parsing dodecahedron.kcl { "type": "LabeledArg", "label": { + "commentStart": 1702, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1709, "elements": [ { + "commentStart": 1710, "end": 0, "raw": "0", "start": 0, @@ -1490,6 +1733,7 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1713, "end": 0, "raw": "0", "start": 0, @@ -1501,6 +1745,7 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1716, "end": 0, "raw": "1", "start": 0, @@ -1521,14 +1766,17 @@ description: Result of parsing dodecahedron.kcl { "type": "LabeledArg", "label": { + "commentStart": 1722, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1731, "elements": [ { + "commentStart": 1732, "end": 0, "raw": "0", "start": 0, @@ -1540,6 +1788,7 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1735, "end": 0, "raw": "0", "start": 0, @@ -1551,6 +1800,7 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1738, "end": 0, "raw": "0", "start": 0, @@ -1571,12 +1821,14 @@ description: Result of parsing dodecahedron.kcl { "type": "LabeledArg", "label": { + "commentStart": 1744, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1757, "end": 0, "raw": "360", "start": 0, @@ -1591,12 +1843,14 @@ description: Result of parsing dodecahedron.kcl { "type": "LabeledArg", "label": { + "commentStart": 1764, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1783, "end": 0, "raw": "true", "start": 0, @@ -1607,16 +1861,19 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 1650, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 1650, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1671, "end": 0, "name": "bottomSide", "start": 0, @@ -1629,23 +1886,31 @@ description: Result of parsing dodecahedron.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Pattern the sides so we have a full dodecahedron" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1789, "end": 0, "expression": { "arguments": [ { "type": "LabeledArg", "label": { + "commentStart": 1867, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1879, "end": 0, "raw": "2", "start": 0, @@ -1660,14 +1925,17 @@ description: Result of parsing dodecahedron.kcl { "type": "LabeledArg", "label": { + "commentStart": 1884, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1891, "elements": [ { + "commentStart": 1892, "end": 0, "raw": "0", "start": 0, @@ -1679,6 +1947,7 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1895, "end": 0, "raw": "1", "start": 0, @@ -1690,6 +1959,7 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1898, "end": 0, "raw": "0", "start": 0, @@ -1710,14 +1980,17 @@ description: Result of parsing dodecahedron.kcl { "type": "LabeledArg", "label": { + "commentStart": 1904, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1913, "elements": [ { + "commentStart": 1914, "end": 0, "raw": "0", "start": 0, @@ -1729,6 +2002,7 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1917, "end": 0, "raw": "0", "start": 0, @@ -1740,6 +2014,7 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 1920, "end": 0, "name": "inscR", "start": 0, @@ -1756,12 +2031,14 @@ description: Result of parsing dodecahedron.kcl { "type": "LabeledArg", "label": { + "commentStart": 1930, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1943, "end": 0, "raw": "360", "start": 0, @@ -1776,12 +2053,14 @@ description: Result of parsing dodecahedron.kcl { "type": "LabeledArg", "label": { + "commentStart": 1950, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1969, "end": 0, "raw": "true", "start": 0, @@ -1792,16 +2071,19 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 1836, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 1836, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1857, "end": 0, "name": "bottom", "start": 0, @@ -1809,23 +2091,31 @@ description: Result of parsing dodecahedron.kcl "type": "Identifier" } }, + "preComments": [ + "", + "", + "// pattern the bottom to create the top face" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 1975, "end": 0, "expression": { "arguments": [ { "type": "LabeledArg", "label": { + "commentStart": 2065, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2077, "end": 0, "raw": "2", "start": 0, @@ -1840,14 +2130,17 @@ description: Result of parsing dodecahedron.kcl { "type": "LabeledArg", "label": { + "commentStart": 2082, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2089, "elements": [ { + "commentStart": 2090, "end": 0, "raw": "0", "start": 0, @@ -1859,6 +2152,7 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 2093, "end": 0, "raw": "1", "start": 0, @@ -1870,6 +2164,7 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 2096, "end": 0, "raw": "0", "start": 0, @@ -1890,14 +2185,17 @@ description: Result of parsing dodecahedron.kcl { "type": "LabeledArg", "label": { + "commentStart": 2102, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2111, "elements": [ { + "commentStart": 2112, "end": 0, "raw": "0", "start": 0, @@ -1909,6 +2207,7 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 2115, "end": 0, "raw": "0", "start": 0, @@ -1920,6 +2219,7 @@ description: Result of parsing dodecahedron.kcl } }, { + "commentStart": 2118, "end": 0, "name": "inscR", "start": 0, @@ -1936,12 +2236,14 @@ description: Result of parsing dodecahedron.kcl { "type": "LabeledArg", "label": { + "commentStart": 2128, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2141, "end": 0, "raw": "360", "start": 0, @@ -1956,12 +2258,14 @@ description: Result of parsing dodecahedron.kcl { "type": "LabeledArg", "label": { + "commentStart": 2148, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2167, "end": 0, "raw": "true", "start": 0, @@ -1972,16 +2276,19 @@ description: Result of parsing dodecahedron.kcl } ], "callee": { + "commentStart": 2030, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 2030, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2051, "end": 0, "name": "bottomBowl", "start": 0, @@ -1989,25 +2296,42 @@ description: Result of parsing dodecahedron.kcl "type": "Identifier" } }, + "preComments": [ + "", + "", + "// pattern the bottom angled faces to create the top" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 273, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Hollow Dodecahedron", + "// A regular dodecahedron or pentagonal dodecahedron is a dodecahedron composed of regular pentagonal faces, three meeting at each vertex. This example shows constructing the individual faces of the dodecahedron and extruding inwards.", + "", + "", + "// Set units" + ], "properties": [ { + "commentStart": 282, "end": 0, "key": { + "commentStart": 282, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -2016,6 +2340,7 @@ description: Result of parsing dodecahedron.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 302, "end": 0, "name": "in", "start": 0, @@ -2030,102 +2355,9 @@ description: Result of parsing dodecahedron.kcl ], "nonCodeMeta": { "nonCodeNodes": { - "0": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Calculated parameters", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "thickness of the dodecahedron", - "style": "line" - } - } - ], - "1": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "angle between faces in radians", - "style": "line" - } - } - ], - "2": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "inscribed radius", - "style": "line" - } - } - ], - "3": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "pentagon edge length", - "style": "line" - } - } - ], - "4": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "pentagon radius", - "style": "line" - } - } - ], - "5": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Define a plane for the bottom angled face", - "style": "line" - } - } - ], - "6": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create a regular pentagon inscribed in a circle of radius pentR", - "style": "line" - } - } - ], "7": [ { + "commentStart": 1276, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2133,110 +2365,17 @@ description: Result of parsing dodecahedron.kcl "type": "newLine" } } - ], - "10": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Pattern the sides so we have a full dodecahedron", - "style": "line" - } - } - ], - "11": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "pattern the bottom to create the top face", - "style": "line" - } - } - ], - "12": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "pattern the bottom angled faces to create the top", - "style": "line" - } - } ] }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Hollow Dodecahedron", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A regular dodecahedron or pentagonal dodecahedron is a dodecahedron composed of regular pentagonal faces, three meeting at each vertex. This example shows constructing the individual faces of the dodecahedron and extruding inwards.", - "style": "line" - } - }, - { + "commentStart": 305, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Input parameters", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "circumscribed radius", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/enclosure/ast.snap b/rust/kcl-lib/tests/kcl_samples/enclosure/ast.snap index 7f04d82e3..0dcdc2643 100644 --- a/rust/kcl-lib/tests/kcl_samples/enclosure/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/enclosure/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing enclosure.kcl "Ok": { "body": [ { + "commentStart": 115, "declaration": { + "commentStart": 117, "end": 0, "id": { + "commentStart": 117, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 126, "end": 0, "raw": "175", "start": 0, @@ -35,15 +39,19 @@ description: Result of parsing enclosure.kcl "type": "VariableDeclaration" }, { + "commentStart": 130, "declaration": { + "commentStart": 130, "end": 0, "id": { + "commentStart": 130, "end": 0, "name": "width", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 138, "end": 0, "raw": "125", "start": 0, @@ -64,15 +72,19 @@ description: Result of parsing enclosure.kcl "type": "VariableDeclaration" }, { + "commentStart": 142, "declaration": { + "commentStart": 142, "end": 0, "id": { + "commentStart": 142, "end": 0, "name": "height", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 151, "end": 0, "raw": "70", "start": 0, @@ -93,15 +105,19 @@ description: Result of parsing enclosure.kcl "type": "VariableDeclaration" }, { + "commentStart": 154, "declaration": { + "commentStart": 154, "end": 0, "id": { + "commentStart": 154, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 170, "end": 0, "raw": "3", "start": 0, @@ -122,15 +138,19 @@ description: Result of parsing enclosure.kcl "type": "VariableDeclaration" }, { + "commentStart": 172, "declaration": { + "commentStart": 172, "end": 0, "id": { + "commentStart": 172, "end": 0, "name": "holeDia", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 182, "end": 0, "raw": "4", "start": 0, @@ -151,9 +171,12 @@ description: Result of parsing enclosure.kcl "type": "VariableDeclaration" }, { + "commentStart": 183, "declaration": { + "commentStart": 231, "end": 0, "id": { + "commentStart": 231, "end": 0, "name": "sketch001", "start": 0, @@ -164,6 +187,7 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 257, "end": 0, "raw": "'XY'", "start": 0, @@ -173,11 +197,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 243, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 243, "end": 0, "start": 0, "type": "CallExpression", @@ -186,8 +212,10 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 283, "elements": [ { + "commentStart": 284, "end": 0, "raw": "0", "start": 0, @@ -199,6 +227,7 @@ description: Result of parsing enclosure.kcl } }, { + "commentStart": 287, "end": 0, "raw": "0", "start": 0, @@ -216,6 +245,7 @@ description: Result of parsing enclosure.kcl "type": "ArrayExpression" }, { + "commentStart": 291, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -223,11 +253,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 268, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 268, "end": 0, "start": 0, "type": "CallExpression", @@ -236,8 +268,10 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 310, "elements": [ { + "commentStart": 311, "end": 0, "raw": "0", "start": 0, @@ -249,6 +283,7 @@ description: Result of parsing enclosure.kcl } }, { + "commentStart": 314, "end": 0, "name": "width", "start": 0, @@ -262,12 +297,14 @@ description: Result of parsing enclosure.kcl "type": "ArrayExpression" }, { + "commentStart": 322, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 325, "end": 0, "start": 0, "type": "TagDeclarator", @@ -276,11 +313,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 299, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 299, "end": 0, "start": 0, "type": "CallExpression", @@ -289,12 +328,15 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 364, "elements": [ { + "commentStart": 373, "end": 0, "left": { "arguments": [ { + "commentStart": 380, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -303,11 +345,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 373, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 373, "end": 0, "start": 0, "type": "CallExpression", @@ -315,6 +359,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 404, "end": 0, "raw": "90", "start": 0, @@ -330,6 +375,7 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 415, "end": 0, "name": "length", "start": 0, @@ -343,12 +389,14 @@ description: Result of parsing enclosure.kcl "type": "ArrayExpression" }, { + "commentStart": 430, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 433, "end": 0, "start": 0, "type": "TagDeclarator", @@ -357,11 +405,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 353, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 353, "end": 0, "start": 0, "type": "CallExpression", @@ -370,10 +420,12 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 472, "elements": [ { "arguments": [ { + "commentStart": 488, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -382,11 +434,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 481, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 481, "end": 0, "start": 0, "type": "CallExpression", @@ -396,6 +450,7 @@ description: Result of parsing enclosure.kcl "argument": { "arguments": [ { + "commentStart": 526, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -404,16 +459,19 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 519, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 519, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 518, "end": 0, "operator": "-", "start": 0, @@ -427,12 +485,14 @@ description: Result of parsing enclosure.kcl "type": "ArrayExpression" }, { + "commentStart": 556, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 559, "end": 0, "start": 0, "type": "TagDeclarator", @@ -441,11 +501,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 461, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 461, "end": 0, "start": 0, "type": "CallExpression", @@ -456,16 +518,19 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 592, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 606, "elements": [ { "arguments": [ { + "commentStart": 621, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -473,11 +538,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 607, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 607, "end": 0, "start": 0, "type": "CallExpression", @@ -486,6 +553,7 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 639, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -493,11 +561,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 625, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 625, "end": 0, "start": 0, "type": "CallExpression", @@ -513,12 +583,14 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 644, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 650, "end": 0, "start": 0, "type": "TagDeclarator", @@ -528,11 +600,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 587, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 587, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -542,17 +616,20 @@ description: Result of parsing enclosure.kcl { "arguments": [], "callee": { + "commentStart": 678, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 678, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 243, "end": 0, "start": 0, "type": "PipeExpression", @@ -563,14 +640,22 @@ description: Result of parsing enclosure.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Model a box with base enclosure dimensions" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 686, "declaration": { + "commentStart": 686, "end": 0, "id": { + "commentStart": 686, "end": 0, "name": "extrude001", "start": 0, @@ -583,12 +668,14 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 718, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 727, "end": 0, "name": "height", "start": 0, @@ -598,16 +685,19 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 699, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 699, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 707, "end": 0, "name": "sketch001", "start": 0, @@ -620,14 +710,17 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 755, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 764, "end": 0, "left": { + "commentStart": 764, "end": 0, "name": "wallThickness", "start": 0, @@ -636,6 +729,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 780, "end": 0, "raw": "4", "start": 0, @@ -654,16 +748,19 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 790, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 797, "elements": [ { "arguments": [ { + "commentStart": 828, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -672,11 +769,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 808, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 808, "end": 0, "start": 0, "type": "CallExpression", @@ -685,6 +784,7 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 880, "end": 0, "name": "rectangleSegmentB001", "start": 0, @@ -693,11 +793,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 860, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 860, "end": 0, "start": 0, "type": "CallExpression", @@ -706,6 +808,7 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 932, "end": 0, "name": "rectangleSegmentC001", "start": 0, @@ -714,11 +817,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 912, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 912, "end": 0, "start": 0, "type": "CallExpression", @@ -727,6 +832,7 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 984, "end": 0, "name": "rectangleSegmentD001", "start": 0, @@ -735,11 +841,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 964, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 964, "end": 0, "start": 0, "type": "CallExpression", @@ -754,11 +862,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 740, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 740, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -770,14 +880,17 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 1114, "end": 0, "name": "faces", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1122, "elements": [ { + "commentStart": 1123, "end": 0, "raw": "\"end\"", "start": 0, @@ -795,12 +908,14 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 1138, "end": 0, "name": "thickness", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1150, "end": 0, "name": "wallThickness", "start": 0, @@ -810,11 +925,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 1100, "end": 0, "name": "shell", "start": 0, "type": "Identifier" }, + "commentStart": 1100, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -822,11 +939,13 @@ description: Result of parsing enclosure.kcl "unlabeled": null } ], + "commentStart": 699, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 1023, "end": 0, "start": 0, "type": "NonCodeNode", @@ -839,6 +958,7 @@ description: Result of parsing enclosure.kcl ], "2": [ { + "commentStart": 1170, "end": 0, "start": 0, "type": "NonCodeNode", @@ -866,9 +986,12 @@ description: Result of parsing enclosure.kcl "type": "VariableDeclaration" }, { + "commentStart": 1262, "declaration": { + "commentStart": 1265, "end": 0, "id": { + "commentStart": 1265, "end": 0, "name": "function001", "start": 0, @@ -878,20 +1001,26 @@ description: Result of parsing enclosure.kcl "body": { "body": [ { + "commentStart": 1291, "declaration": { + "commentStart": 1342, "end": 0, "id": { + "commentStart": 1342, "end": 0, "name": "plane001", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1353, "end": 0, "properties": [ { + "commentStart": 1359, "end": 0, "key": { + "commentStart": 1359, "end": 0, "name": "plane", "start": 0, @@ -900,11 +1029,14 @@ description: Result of parsing enclosure.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1367, "end": 0, "properties": [ { + "commentStart": 1375, "end": 0, "key": { + "commentStart": 1375, "end": 0, "name": "origin", "start": 0, @@ -913,8 +1045,10 @@ description: Result of parsing enclosure.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1384, "elements": [ { + "commentStart": 1385, "end": 0, "raw": "0.0", "start": 0, @@ -926,6 +1060,7 @@ description: Result of parsing enclosure.kcl } }, { + "commentStart": 1390, "end": 0, "raw": "0.0", "start": 0, @@ -937,6 +1072,7 @@ description: Result of parsing enclosure.kcl } }, { + "commentStart": 1395, "end": 0, "name": "wallThickness", "start": 0, @@ -951,8 +1087,10 @@ description: Result of parsing enclosure.kcl } }, { + "commentStart": 1417, "end": 0, "key": { + "commentStart": 1417, "end": 0, "name": "xAxis", "start": 0, @@ -961,8 +1099,10 @@ description: Result of parsing enclosure.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1425, "elements": [ { + "commentStart": 1426, "end": 0, "raw": "1.0", "start": 0, @@ -974,6 +1114,7 @@ description: Result of parsing enclosure.kcl } }, { + "commentStart": 1431, "end": 0, "raw": "0.0", "start": 0, @@ -985,6 +1126,7 @@ description: Result of parsing enclosure.kcl } }, { + "commentStart": 1436, "end": 0, "raw": "0.0", "start": 0, @@ -1003,8 +1145,10 @@ description: Result of parsing enclosure.kcl } }, { + "commentStart": 1448, "end": 0, "key": { + "commentStart": 1448, "end": 0, "name": "yAxis", "start": 0, @@ -1013,8 +1157,10 @@ description: Result of parsing enclosure.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1456, "elements": [ { + "commentStart": 1457, "end": 0, "raw": "0.0", "start": 0, @@ -1026,6 +1172,7 @@ description: Result of parsing enclosure.kcl } }, { + "commentStart": 1462, "end": 0, "raw": "1.0", "start": 0, @@ -1037,6 +1184,7 @@ description: Result of parsing enclosure.kcl } }, { + "commentStart": 1467, "end": 0, "raw": "0.0", "start": 0, @@ -1055,8 +1203,10 @@ description: Result of parsing enclosure.kcl } }, { + "commentStart": 1479, "end": 0, "key": { + "commentStart": 1479, "end": 0, "name": "zAxis", "start": 0, @@ -1065,8 +1215,10 @@ description: Result of parsing enclosure.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1487, "elements": [ { + "commentStart": 1488, "end": 0, "raw": "0.0", "start": 0, @@ -1078,6 +1230,7 @@ description: Result of parsing enclosure.kcl } }, { + "commentStart": 1493, "end": 0, "raw": "0.0", "start": 0, @@ -1089,6 +1242,7 @@ description: Result of parsing enclosure.kcl } }, { + "commentStart": 1498, "end": 0, "raw": "1.0", "start": 0, @@ -1122,14 +1276,20 @@ description: Result of parsing enclosure.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Create a plane to sketch on shell interior" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1514, "declaration": { + "commentStart": 1573, "end": 0, "id": { + "commentStart": 1573, "end": 0, "name": "sketch002", "start": 0, @@ -1140,6 +1300,7 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 1599, "end": 0, "name": "plane001", "start": 0, @@ -1148,11 +1309,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 1585, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1585, "end": 0, "start": 0, "type": "CallExpression", @@ -1163,17 +1326,21 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 1633, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1642, "elements": [ { + "commentStart": 1643, "computed": false, "end": 0, "object": { + "commentStart": 1643, "end": 0, "name": "originStart", "start": 0, @@ -1181,6 +1348,7 @@ description: Result of parsing enclosure.kcl "type": "Identifier" }, "property": { + "commentStart": 1655, "end": 0, "raw": "0", "start": 0, @@ -1196,9 +1364,11 @@ description: Result of parsing enclosure.kcl "type": "MemberExpression" }, { + "commentStart": 1659, "computed": false, "end": 0, "object": { + "commentStart": 1659, "end": 0, "name": "originStart", "start": 0, @@ -1206,6 +1376,7 @@ description: Result of parsing enclosure.kcl "type": "Identifier" }, "property": { + "commentStart": 1671, "end": 0, "raw": "1", "start": 0, @@ -1230,14 +1401,17 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 1685, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1694, "end": 0, "left": { + "commentStart": 1694, "end": 0, "name": "holeDia", "start": 0, @@ -1246,6 +1420,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 1704, "end": 0, "name": "wallThickness", "start": 0, @@ -1259,11 +1434,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 1616, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1616, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1277,17 +1454,21 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 1756, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1765, "elements": [ { + "commentStart": 1766, "computed": false, "end": 0, "object": { + "commentStart": 1766, "end": 0, "name": "originStart", "start": 0, @@ -1295,6 +1476,7 @@ description: Result of parsing enclosure.kcl "type": "Identifier" }, "property": { + "commentStart": 1778, "end": 0, "raw": "0", "start": 0, @@ -1310,9 +1492,11 @@ description: Result of parsing enclosure.kcl "type": "MemberExpression" }, { + "commentStart": 1782, "computed": false, "end": 0, "object": { + "commentStart": 1782, "end": 0, "name": "originStart", "start": 0, @@ -1320,6 +1504,7 @@ description: Result of parsing enclosure.kcl "type": "Identifier" }, "property": { + "commentStart": 1794, "end": 0, "raw": "1", "start": 0, @@ -1344,12 +1529,14 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 1808, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1817, "end": 0, "name": "holeDia", "start": 0, @@ -1359,11 +1546,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 1739, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1739, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1371,6 +1560,7 @@ description: Result of parsing enclosure.kcl "unlabeled": null }, { + "commentStart": 1835, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1378,17 +1568,20 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 1734, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 1734, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1585, "end": 0, "start": 0, "type": "PipeExpression", @@ -1399,14 +1592,22 @@ description: Result of parsing enclosure.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Create a pillar with a fasterner hole at the center" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1840, "declaration": { + "commentStart": 1840, "end": 0, "id": { + "commentStart": 1840, "end": 0, "name": "extrude002", "start": 0, @@ -1417,14 +1618,17 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 1872, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1881, "end": 0, "left": { + "commentStart": 1881, "end": 0, "name": "height", "start": 0, @@ -1433,6 +1637,7 @@ description: Result of parsing enclosure.kcl }, "operator": "-", "right": { + "commentStart": 1890, "end": 0, "name": "wallThickness", "start": 0, @@ -1446,16 +1651,19 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 1853, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1853, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1861, "end": 0, "name": "sketch002", "start": 0, @@ -1474,35 +1682,27 @@ description: Result of parsing enclosure.kcl }, { "argument": { + "commentStart": 1915, "end": 0, "name": "extrude002", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1904, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 1291, "end": 0, "nonCodeMeta": { "nonCodeNodes": { - "0": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create a pillar with a fasterner hole at the center", - "style": "line" - } - } - ], "2": [ { + "commentStart": 1904, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1512,26 +1712,17 @@ description: Result of parsing enclosure.kcl } ] }, - "startNodes": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Create a plane to sketch on shell interior", - "style": "line" - } - } - ] + "startNodes": [] }, "start": 0 }, + "commentStart": 1276, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 1277, "end": 0, "name": "originStart", "start": 0, @@ -1553,16 +1744,21 @@ description: Result of parsing enclosure.kcl "type": "VariableDeclaration" }, { + "commentStart": 1927, "end": 0, "expression": { "arguments": [ { + "commentStart": 1985, "elements": [ { + "commentStart": 1989, "end": 0, "left": { + "commentStart": 1989, "end": 0, "left": { + "commentStart": 1989, "end": 0, "name": "wallThickness", "start": 0, @@ -1571,6 +1767,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 2005, "end": 0, "raw": "3", "start": 0, @@ -1587,6 +1784,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 2009, "end": 0, "name": "holeDia", "start": 0, @@ -1598,10 +1796,13 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 2020, "end": 0, "left": { + "commentStart": 2020, "end": 0, "left": { + "commentStart": 2020, "end": 0, "name": "wallThickness", "start": 0, @@ -1610,6 +1811,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 2036, "end": 0, "raw": "3", "start": 0, @@ -1626,6 +1828,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 2040, "end": 0, "name": "holeDia", "start": 0, @@ -1644,31 +1847,43 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 1973, "end": 0, "name": "function001", "start": 0, "type": "Identifier" }, + "commentStart": 1973, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "preComments": [ + "", + "", + "// Place the internal pillar at each corner" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 2051, "end": 0, "expression": { "arguments": [ { + "commentStart": 2063, "elements": [ { + "commentStart": 2067, "end": 0, "left": { + "commentStart": 2067, "end": 0, "left": { + "commentStart": 2067, "end": 0, "name": "wallThickness", "start": 0, @@ -1677,6 +1892,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 2083, "end": 0, "raw": "3", "start": 0, @@ -1693,6 +1909,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 2087, "end": 0, "name": "holeDia", "start": 0, @@ -1704,8 +1921,10 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 2098, "end": 0, "left": { + "commentStart": 2098, "end": 0, "name": "length", "start": 0, @@ -1714,10 +1933,13 @@ description: Result of parsing enclosure.kcl }, "operator": "-", "right": { + "commentStart": 2108, "end": 0, "left": { + "commentStart": 2108, "end": 0, "left": { + "commentStart": 2108, "end": 0, "name": "wallThickness", "start": 0, @@ -1726,6 +1948,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 2124, "end": 0, "raw": "3", "start": 0, @@ -1742,6 +1965,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 2128, "end": 0, "name": "holeDia", "start": 0, @@ -1764,11 +1988,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 2051, "end": 0, "name": "function001", "start": 0, "type": "Identifier" }, + "commentStart": 2051, "end": 0, "start": 0, "type": "CallExpression", @@ -1779,14 +2005,18 @@ description: Result of parsing enclosure.kcl "type": "ExpressionStatement" }, { + "commentStart": 2140, "end": 0, "expression": { "arguments": [ { + "commentStart": 2152, "elements": [ { + "commentStart": 2156, "end": 0, "left": { + "commentStart": 2156, "end": 0, "name": "width", "start": 0, @@ -1795,10 +2025,13 @@ description: Result of parsing enclosure.kcl }, "operator": "-", "right": { + "commentStart": 2165, "end": 0, "left": { + "commentStart": 2165, "end": 0, "left": { + "commentStart": 2165, "end": 0, "name": "wallThickness", "start": 0, @@ -1807,6 +2040,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 2181, "end": 0, "raw": "3", "start": 0, @@ -1823,6 +2057,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 2185, "end": 0, "name": "holeDia", "start": 0, @@ -1838,10 +2073,13 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 2197, "end": 0, "left": { + "commentStart": 2197, "end": 0, "left": { + "commentStart": 2197, "end": 0, "name": "wallThickness", "start": 0, @@ -1850,6 +2088,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 2213, "end": 0, "raw": "3", "start": 0, @@ -1866,6 +2105,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 2217, "end": 0, "name": "holeDia", "start": 0, @@ -1884,11 +2124,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 2140, "end": 0, "name": "function001", "start": 0, "type": "Identifier" }, + "commentStart": 2140, "end": 0, "start": 0, "type": "CallExpression", @@ -1899,14 +2141,18 @@ description: Result of parsing enclosure.kcl "type": "ExpressionStatement" }, { + "commentStart": 2228, "end": 0, "expression": { "arguments": [ { + "commentStart": 2240, "elements": [ { + "commentStart": 2244, "end": 0, "left": { + "commentStart": 2244, "end": 0, "name": "width", "start": 0, @@ -1915,10 +2161,13 @@ description: Result of parsing enclosure.kcl }, "operator": "-", "right": { + "commentStart": 2253, "end": 0, "left": { + "commentStart": 2253, "end": 0, "left": { + "commentStart": 2253, "end": 0, "name": "wallThickness", "start": 0, @@ -1927,6 +2176,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 2269, "end": 0, "raw": "3", "start": 0, @@ -1943,6 +2193,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 2273, "end": 0, "name": "holeDia", "start": 0, @@ -1958,8 +2209,10 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 2285, "end": 0, "left": { + "commentStart": 2285, "end": 0, "name": "length", "start": 0, @@ -1968,10 +2221,13 @@ description: Result of parsing enclosure.kcl }, "operator": "-", "right": { + "commentStart": 2295, "end": 0, "left": { + "commentStart": 2295, "end": 0, "left": { + "commentStart": 2295, "end": 0, "name": "wallThickness", "start": 0, @@ -1980,6 +2236,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 2311, "end": 0, "raw": "3", "start": 0, @@ -1996,6 +2253,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 2315, "end": 0, "name": "holeDia", "start": 0, @@ -2018,11 +2276,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 2228, "end": 0, "name": "function001", "start": 0, "type": "Identifier" }, + "commentStart": 2228, "end": 0, "start": 0, "type": "CallExpression", @@ -2033,9 +2293,12 @@ description: Result of parsing enclosure.kcl "type": "ExpressionStatement" }, { + "commentStart": 2326, "declaration": { + "commentStart": 2369, "end": 0, "id": { + "commentStart": 2369, "end": 0, "name": "sketch003", "start": 0, @@ -2046,6 +2309,7 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 2395, "end": 0, "raw": "'XY'", "start": 0, @@ -2055,11 +2319,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 2381, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2381, "end": 0, "start": 0, "type": "CallExpression", @@ -2068,10 +2334,13 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 2421, "elements": [ { + "commentStart": 2422, "end": 0, "left": { + "commentStart": 2422, "end": 0, "name": "width", "start": 0, @@ -2080,6 +2349,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 2430, "end": 0, "raw": "1.2", "start": 0, @@ -2095,6 +2365,7 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 2435, "end": 0, "raw": "0", "start": 0, @@ -2112,6 +2383,7 @@ description: Result of parsing enclosure.kcl "type": "ArrayExpression" }, { + "commentStart": 2439, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2119,11 +2391,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 2406, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2406, "end": 0, "start": 0, "type": "CallExpression", @@ -2132,8 +2406,10 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 2458, "elements": [ { + "commentStart": 2459, "end": 0, "raw": "0", "start": 0, @@ -2145,6 +2421,7 @@ description: Result of parsing enclosure.kcl } }, { + "commentStart": 2462, "end": 0, "name": "width", "start": 0, @@ -2158,12 +2435,14 @@ description: Result of parsing enclosure.kcl "type": "ArrayExpression" }, { + "commentStart": 2470, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 2473, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2172,11 +2451,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 2447, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2447, "end": 0, "start": 0, "type": "CallExpression", @@ -2185,12 +2466,15 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 2512, "elements": [ { + "commentStart": 2521, "end": 0, "left": { "arguments": [ { + "commentStart": 2528, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -2199,11 +2483,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 2521, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 2521, "end": 0, "start": 0, "type": "CallExpression", @@ -2211,6 +2497,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 2552, "end": 0, "raw": "90", "start": 0, @@ -2226,6 +2513,7 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 2563, "end": 0, "name": "length", "start": 0, @@ -2239,12 +2527,14 @@ description: Result of parsing enclosure.kcl "type": "ArrayExpression" }, { + "commentStart": 2578, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 2581, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2253,11 +2543,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 2501, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2501, "end": 0, "start": 0, "type": "CallExpression", @@ -2266,10 +2558,12 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 2620, "elements": [ { "arguments": [ { + "commentStart": 2636, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -2278,11 +2572,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 2629, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 2629, "end": 0, "start": 0, "type": "CallExpression", @@ -2292,6 +2588,7 @@ description: Result of parsing enclosure.kcl "argument": { "arguments": [ { + "commentStart": 2674, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -2300,16 +2597,19 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 2667, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 2667, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 2666, "end": 0, "operator": "-", "start": 0, @@ -2323,12 +2623,14 @@ description: Result of parsing enclosure.kcl "type": "ArrayExpression" }, { + "commentStart": 2704, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 2707, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2337,11 +2639,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 2609, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2609, "end": 0, "start": 0, "type": "CallExpression", @@ -2352,16 +2656,19 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 2740, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2754, "elements": [ { "arguments": [ { + "commentStart": 2769, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2369,11 +2676,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 2755, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 2755, "end": 0, "start": 0, "type": "CallExpression", @@ -2382,6 +2691,7 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 2787, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2389,11 +2699,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 2773, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 2773, "end": 0, "start": 0, "type": "CallExpression", @@ -2409,12 +2721,14 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 2792, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2798, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2424,11 +2738,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 2735, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2735, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2438,11 +2754,13 @@ description: Result of parsing enclosure.kcl { "arguments": [], "callee": { + "commentStart": 2826, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2826, "end": 0, "start": 0, "type": "CallExpression", @@ -2455,20 +2773,26 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 2859, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2868, "elements": [ { + "commentStart": 2879, "end": 0, "left": { + "commentStart": 2879, "end": 0, "left": { + "commentStart": 2879, "end": 0, "left": { + "commentStart": 2879, "end": 0, "name": "width", "start": 0, @@ -2477,6 +2801,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 2887, "end": 0, "raw": "1.2", "start": 0, @@ -2493,8 +2818,10 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 2893, "end": 0, "left": { + "commentStart": 2893, "end": 0, "name": "wallThickness", "start": 0, @@ -2503,6 +2830,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 2909, "end": 0, "raw": "3", "start": 0, @@ -2523,6 +2851,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 2913, "end": 0, "name": "holeDia", "start": 0, @@ -2534,10 +2863,13 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 2931, "end": 0, "left": { + "commentStart": 2931, "end": 0, "left": { + "commentStart": 2931, "end": 0, "name": "wallThickness", "start": 0, @@ -2546,6 +2878,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 2947, "end": 0, "raw": "3", "start": 0, @@ -2562,6 +2895,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 2951, "end": 0, "name": "holeDia", "start": 0, @@ -2582,12 +2916,14 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 2976, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2985, "end": 0, "name": "holeDia", "start": 0, @@ -2597,11 +2933,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 2844, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2844, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2609,6 +2947,7 @@ description: Result of parsing enclosure.kcl "unlabeled": null }, { + "commentStart": 3001, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2616,11 +2955,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 2839, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 2839, "end": 0, "start": 0, "type": "CallExpression", @@ -2633,20 +2974,26 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 3029, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3038, "elements": [ { + "commentStart": 3049, "end": 0, "left": { + "commentStart": 3049, "end": 0, "left": { + "commentStart": 3049, "end": 0, "left": { + "commentStart": 3049, "end": 0, "name": "width", "start": 0, @@ -2655,6 +3002,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 3057, "end": 0, "raw": "1.2", "start": 0, @@ -2671,8 +3019,10 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 3063, "end": 0, "left": { + "commentStart": 3063, "end": 0, "name": "wallThickness", "start": 0, @@ -2681,6 +3031,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 3079, "end": 0, "raw": "3", "start": 0, @@ -2701,6 +3052,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 3083, "end": 0, "name": "holeDia", "start": 0, @@ -2712,8 +3064,10 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 3101, "end": 0, "left": { + "commentStart": 3101, "end": 0, "name": "length", "start": 0, @@ -2722,10 +3076,13 @@ description: Result of parsing enclosure.kcl }, "operator": "-", "right": { + "commentStart": 3111, "end": 0, "left": { + "commentStart": 3111, "end": 0, "left": { + "commentStart": 3111, "end": 0, "name": "wallThickness", "start": 0, @@ -2734,6 +3091,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 3127, "end": 0, "raw": "3", "start": 0, @@ -2750,6 +3108,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 3131, "end": 0, "name": "holeDia", "start": 0, @@ -2774,12 +3133,14 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 3157, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3166, "end": 0, "name": "holeDia", "start": 0, @@ -2789,11 +3150,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 3014, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 3014, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2801,6 +3164,7 @@ description: Result of parsing enclosure.kcl "unlabeled": null }, { + "commentStart": 3182, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2808,11 +3172,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 3009, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 3009, "end": 0, "start": 0, "type": "CallExpression", @@ -2825,18 +3191,23 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 3210, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3219, "elements": [ { + "commentStart": 3230, "end": 0, "left": { + "commentStart": 3230, "end": 0, "left": { + "commentStart": 3230, "end": 0, "name": "width", "start": 0, @@ -2845,6 +3216,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 3238, "end": 0, "raw": "2.2", "start": 0, @@ -2861,10 +3233,13 @@ description: Result of parsing enclosure.kcl }, "operator": "-", "right": { + "commentStart": 3245, "end": 0, "left": { + "commentStart": 3245, "end": 0, "left": { + "commentStart": 3245, "end": 0, "name": "wallThickness", "start": 0, @@ -2873,6 +3248,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 3261, "end": 0, "raw": "3", "start": 0, @@ -2889,6 +3265,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 3265, "end": 0, "name": "holeDia", "start": 0, @@ -2904,10 +3281,13 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 3284, "end": 0, "left": { + "commentStart": 3284, "end": 0, "left": { + "commentStart": 3284, "end": 0, "name": "wallThickness", "start": 0, @@ -2916,6 +3296,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 3300, "end": 0, "raw": "3", "start": 0, @@ -2932,6 +3313,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 3304, "end": 0, "name": "holeDia", "start": 0, @@ -2952,12 +3334,14 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 3329, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3338, "end": 0, "name": "holeDia", "start": 0, @@ -2967,11 +3351,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 3195, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 3195, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2979,6 +3365,7 @@ description: Result of parsing enclosure.kcl "unlabeled": null }, { + "commentStart": 3354, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2986,11 +3373,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 3190, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 3190, "end": 0, "start": 0, "type": "CallExpression", @@ -3003,18 +3392,23 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 3382, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3391, "elements": [ { + "commentStart": 3402, "end": 0, "left": { + "commentStart": 3402, "end": 0, "left": { + "commentStart": 3402, "end": 0, "name": "width", "start": 0, @@ -3023,6 +3417,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 3410, "end": 0, "raw": "2.2", "start": 0, @@ -3039,10 +3434,13 @@ description: Result of parsing enclosure.kcl }, "operator": "-", "right": { + "commentStart": 3417, "end": 0, "left": { + "commentStart": 3417, "end": 0, "left": { + "commentStart": 3417, "end": 0, "name": "wallThickness", "start": 0, @@ -3051,6 +3449,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 3433, "end": 0, "raw": "3", "start": 0, @@ -3067,6 +3466,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 3437, "end": 0, "name": "holeDia", "start": 0, @@ -3082,8 +3482,10 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 3456, "end": 0, "left": { + "commentStart": 3456, "end": 0, "name": "length", "start": 0, @@ -3092,10 +3494,13 @@ description: Result of parsing enclosure.kcl }, "operator": "-", "right": { + "commentStart": 3466, "end": 0, "left": { + "commentStart": 3466, "end": 0, "left": { + "commentStart": 3466, "end": 0, "name": "wallThickness", "start": 0, @@ -3104,6 +3509,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 3482, "end": 0, "raw": "3", "start": 0, @@ -3120,6 +3526,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 3486, "end": 0, "name": "holeDia", "start": 0, @@ -3144,12 +3551,14 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 3512, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3521, "end": 0, "name": "holeDia", "start": 0, @@ -3159,11 +3568,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 3367, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 3367, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3171,6 +3582,7 @@ description: Result of parsing enclosure.kcl "unlabeled": null }, { + "commentStart": 3537, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3178,17 +3590,20 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 3362, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 3362, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 2381, "end": 0, "start": 0, "type": "PipeExpression", @@ -3199,14 +3614,22 @@ description: Result of parsing enclosure.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Define lid position and outer surface" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 3540, "declaration": { + "commentStart": 3540, "end": 0, "id": { + "commentStart": 3540, "end": 0, "name": "extrude003", "start": 0, @@ -3219,12 +3642,14 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 3572, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3581, "end": 0, "name": "wallThickness", "start": 0, @@ -3234,16 +3659,19 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 3553, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 3553, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 3561, "end": 0, "name": "sketch003", "start": 0, @@ -3256,14 +3684,17 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 3616, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3625, "end": 0, "left": { + "commentStart": 3625, "end": 0, "name": "wallThickness", "start": 0, @@ -3272,6 +3703,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 3641, "end": 0, "raw": "4", "start": 0, @@ -3290,16 +3722,19 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 3651, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3658, "elements": [ { "arguments": [ { + "commentStart": 3689, "end": 0, "name": "rectangleSegmentA002", "start": 0, @@ -3308,11 +3743,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 3669, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 3669, "end": 0, "start": 0, "type": "CallExpression", @@ -3321,6 +3758,7 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 3741, "end": 0, "name": "rectangleSegmentB002", "start": 0, @@ -3329,11 +3767,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 3721, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 3721, "end": 0, "start": 0, "type": "CallExpression", @@ -3342,6 +3782,7 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 3793, "end": 0, "name": "rectangleSegmentC002", "start": 0, @@ -3350,11 +3791,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 3773, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 3773, "end": 0, "start": 0, "type": "CallExpression", @@ -3363,6 +3806,7 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 3845, "end": 0, "name": "rectangleSegmentD002", "start": 0, @@ -3371,11 +3815,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 3825, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 3825, "end": 0, "start": 0, "type": "CallExpression", @@ -3390,11 +3836,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 3601, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 3601, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3402,11 +3850,13 @@ description: Result of parsing enclosure.kcl "unlabeled": null } ], + "commentStart": 3553, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 3882, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3434,9 +3884,12 @@ description: Result of parsing enclosure.kcl "type": "VariableDeclaration" }, { + "commentStart": 3925, "declaration": { + "commentStart": 3925, "end": 0, "id": { + "commentStart": 3925, "end": 0, "name": "sketch004", "start": 0, @@ -3447,6 +3900,7 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 3951, "end": 0, "name": "extrude003", "start": 0, @@ -3454,6 +3908,7 @@ description: Result of parsing enclosure.kcl "type": "Identifier" }, { + "commentStart": 3963, "end": 0, "raw": "'END'", "start": 0, @@ -3463,11 +3918,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 3937, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 3937, "end": 0, "start": 0, "type": "CallExpression", @@ -3476,12 +3933,16 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 3990, "elements": [ { + "commentStart": 3999, "end": 0, "left": { + "commentStart": 3999, "end": 0, "left": { + "commentStart": 3999, "end": 0, "name": "width", "start": 0, @@ -3490,6 +3951,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 4007, "end": 0, "raw": "1.2", "start": 0, @@ -3506,6 +3968,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 4013, "end": 0, "name": "wallThickness", "start": 0, @@ -3517,6 +3980,7 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 4035, "end": 0, "name": "wallThickness", "start": 0, @@ -3530,6 +3994,7 @@ description: Result of parsing enclosure.kcl "type": "ArrayExpression" }, { + "commentStart": 4057, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3537,11 +4002,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 3975, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 3975, "end": 0, "start": 0, "type": "CallExpression", @@ -3550,8 +4017,10 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 4076, "elements": [ { + "commentStart": 4077, "end": 0, "raw": "0", "start": 0, @@ -3563,8 +4032,10 @@ description: Result of parsing enclosure.kcl } }, { + "commentStart": 4080, "end": 0, "left": { + "commentStart": 4080, "end": 0, "name": "width", "start": 0, @@ -3573,8 +4044,10 @@ description: Result of parsing enclosure.kcl }, "operator": "-", "right": { + "commentStart": 4089, "end": 0, "left": { + "commentStart": 4089, "end": 0, "raw": "2", "start": 0, @@ -3587,6 +4060,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 4093, "end": 0, "name": "wallThickness", "start": 0, @@ -3608,12 +4082,14 @@ description: Result of parsing enclosure.kcl "type": "ArrayExpression" }, { + "commentStart": 4110, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 4113, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3622,11 +4098,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 4065, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 4065, "end": 0, "start": 0, "type": "CallExpression", @@ -3635,12 +4113,15 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 4152, "elements": [ { + "commentStart": 4161, "end": 0, "left": { "arguments": [ { + "commentStart": 4168, "end": 0, "name": "rectangleSegmentA003", "start": 0, @@ -3649,11 +4130,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 4161, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 4161, "end": 0, "start": 0, "type": "CallExpression", @@ -3661,6 +4144,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 4192, "end": 0, "raw": "90", "start": 0, @@ -3676,8 +4160,10 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 4203, "end": 0, "left": { + "commentStart": 4203, "end": 0, "name": "length", "start": 0, @@ -3686,8 +4172,10 @@ description: Result of parsing enclosure.kcl }, "operator": "-", "right": { + "commentStart": 4213, "end": 0, "left": { + "commentStart": 4213, "end": 0, "raw": "2", "start": 0, @@ -3700,6 +4188,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 4217, "end": 0, "name": "wallThickness", "start": 0, @@ -3721,12 +4210,14 @@ description: Result of parsing enclosure.kcl "type": "ArrayExpression" }, { + "commentStart": 4240, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 4243, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3735,11 +4226,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 4141, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 4141, "end": 0, "start": 0, "type": "CallExpression", @@ -3748,10 +4241,12 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 4282, "elements": [ { "arguments": [ { + "commentStart": 4298, "end": 0, "name": "rectangleSegmentA003", "start": 0, @@ -3760,11 +4255,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 4291, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 4291, "end": 0, "start": 0, "type": "CallExpression", @@ -3774,6 +4271,7 @@ description: Result of parsing enclosure.kcl "argument": { "arguments": [ { + "commentStart": 4336, "end": 0, "name": "rectangleSegmentA003", "start": 0, @@ -3782,16 +4280,19 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 4329, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 4329, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 4328, "end": 0, "operator": "-", "start": 0, @@ -3805,12 +4306,14 @@ description: Result of parsing enclosure.kcl "type": "ArrayExpression" }, { + "commentStart": 4366, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 4369, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3819,11 +4322,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 4271, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 4271, "end": 0, "start": 0, "type": "CallExpression", @@ -3834,16 +4339,19 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 4402, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4416, "elements": [ { "arguments": [ { + "commentStart": 4431, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3851,11 +4359,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 4417, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 4417, "end": 0, "start": 0, "type": "CallExpression", @@ -3864,6 +4374,7 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 4449, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3871,11 +4382,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 4435, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 4435, "end": 0, "start": 0, "type": "CallExpression", @@ -3891,12 +4404,14 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 4454, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4460, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3906,11 +4421,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 4397, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4397, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3920,11 +4437,13 @@ description: Result of parsing enclosure.kcl { "arguments": [], "callee": { + "commentStart": 4488, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 4488, "end": 0, "start": 0, "type": "CallExpression", @@ -3937,20 +4456,26 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 4521, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4530, "elements": [ { + "commentStart": 4541, "end": 0, "left": { + "commentStart": 4541, "end": 0, "left": { + "commentStart": 4541, "end": 0, "left": { + "commentStart": 4541, "end": 0, "name": "width", "start": 0, @@ -3959,6 +4484,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 4549, "end": 0, "raw": "1.2", "start": 0, @@ -3975,8 +4501,10 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 4555, "end": 0, "left": { + "commentStart": 4555, "end": 0, "name": "wallThickness", "start": 0, @@ -3985,6 +4513,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 4571, "end": 0, "raw": "3", "start": 0, @@ -4005,6 +4534,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 4575, "end": 0, "name": "holeDia", "start": 0, @@ -4016,10 +4546,13 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 4593, "end": 0, "left": { + "commentStart": 4593, "end": 0, "left": { + "commentStart": 4593, "end": 0, "name": "wallThickness", "start": 0, @@ -4028,6 +4561,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 4609, "end": 0, "raw": "3", "start": 0, @@ -4044,6 +4578,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 4613, "end": 0, "name": "holeDia", "start": 0, @@ -4064,14 +4599,17 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 4638, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4647, "end": 0, "left": { + "commentStart": 4647, "end": 0, "name": "holeDia", "start": 0, @@ -4080,6 +4618,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 4657, "end": 0, "name": "wallThickness", "start": 0, @@ -4093,11 +4632,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 4506, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 4506, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4105,6 +4646,7 @@ description: Result of parsing enclosure.kcl "unlabeled": null }, { + "commentStart": 4679, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4112,11 +4654,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 4501, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 4501, "end": 0, "start": 0, "type": "CallExpression", @@ -4129,20 +4673,26 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 4707, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4716, "elements": [ { + "commentStart": 4727, "end": 0, "left": { + "commentStart": 4727, "end": 0, "left": { + "commentStart": 4727, "end": 0, "left": { + "commentStart": 4727, "end": 0, "name": "width", "start": 0, @@ -4151,6 +4701,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 4735, "end": 0, "raw": "1.2", "start": 0, @@ -4167,8 +4718,10 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 4741, "end": 0, "left": { + "commentStart": 4741, "end": 0, "name": "wallThickness", "start": 0, @@ -4177,6 +4730,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 4757, "end": 0, "raw": "3", "start": 0, @@ -4197,6 +4751,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 4761, "end": 0, "name": "holeDia", "start": 0, @@ -4208,8 +4763,10 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 4779, "end": 0, "left": { + "commentStart": 4779, "end": 0, "name": "length", "start": 0, @@ -4218,10 +4775,13 @@ description: Result of parsing enclosure.kcl }, "operator": "-", "right": { + "commentStart": 4789, "end": 0, "left": { + "commentStart": 4789, "end": 0, "left": { + "commentStart": 4789, "end": 0, "name": "wallThickness", "start": 0, @@ -4230,6 +4790,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 4805, "end": 0, "raw": "3", "start": 0, @@ -4246,6 +4807,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 4809, "end": 0, "name": "holeDia", "start": 0, @@ -4270,14 +4832,17 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 4835, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4844, "end": 0, "left": { + "commentStart": 4844, "end": 0, "name": "holeDia", "start": 0, @@ -4286,6 +4851,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 4854, "end": 0, "name": "wallThickness", "start": 0, @@ -4299,11 +4865,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 4692, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 4692, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4311,6 +4879,7 @@ description: Result of parsing enclosure.kcl "unlabeled": null }, { + "commentStart": 4876, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4318,11 +4887,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 4687, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 4687, "end": 0, "start": 0, "type": "CallExpression", @@ -4335,18 +4906,23 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 4904, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4913, "elements": [ { + "commentStart": 4924, "end": 0, "left": { + "commentStart": 4924, "end": 0, "left": { + "commentStart": 4924, "end": 0, "name": "width", "start": 0, @@ -4355,6 +4931,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 4932, "end": 0, "raw": "2.2", "start": 0, @@ -4371,10 +4948,13 @@ description: Result of parsing enclosure.kcl }, "operator": "-", "right": { + "commentStart": 4939, "end": 0, "left": { + "commentStart": 4939, "end": 0, "left": { + "commentStart": 4939, "end": 0, "name": "wallThickness", "start": 0, @@ -4383,6 +4963,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 4955, "end": 0, "raw": "3", "start": 0, @@ -4399,6 +4980,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 4959, "end": 0, "name": "holeDia", "start": 0, @@ -4414,10 +4996,13 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 4978, "end": 0, "left": { + "commentStart": 4978, "end": 0, "left": { + "commentStart": 4978, "end": 0, "name": "wallThickness", "start": 0, @@ -4426,6 +5011,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 4994, "end": 0, "raw": "3", "start": 0, @@ -4442,6 +5028,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 4998, "end": 0, "name": "holeDia", "start": 0, @@ -4462,14 +5049,17 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 5023, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5032, "end": 0, "left": { + "commentStart": 5032, "end": 0, "name": "holeDia", "start": 0, @@ -4478,6 +5068,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 5042, "end": 0, "name": "wallThickness", "start": 0, @@ -4491,11 +5082,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 4889, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 4889, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4503,6 +5096,7 @@ description: Result of parsing enclosure.kcl "unlabeled": null }, { + "commentStart": 5064, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4510,11 +5104,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 4884, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 4884, "end": 0, "start": 0, "type": "CallExpression", @@ -4527,18 +5123,23 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 5092, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5101, "elements": [ { + "commentStart": 5112, "end": 0, "left": { + "commentStart": 5112, "end": 0, "left": { + "commentStart": 5112, "end": 0, "name": "width", "start": 0, @@ -4547,6 +5148,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 5120, "end": 0, "raw": "2.2", "start": 0, @@ -4563,10 +5165,13 @@ description: Result of parsing enclosure.kcl }, "operator": "-", "right": { + "commentStart": 5127, "end": 0, "left": { + "commentStart": 5127, "end": 0, "left": { + "commentStart": 5127, "end": 0, "name": "wallThickness", "start": 0, @@ -4575,6 +5180,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 5143, "end": 0, "raw": "3", "start": 0, @@ -4591,6 +5197,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 5147, "end": 0, "name": "holeDia", "start": 0, @@ -4606,8 +5213,10 @@ description: Result of parsing enclosure.kcl "type": "BinaryExpression" }, { + "commentStart": 5166, "end": 0, "left": { + "commentStart": 5166, "end": 0, "name": "length", "start": 0, @@ -4616,10 +5225,13 @@ description: Result of parsing enclosure.kcl }, "operator": "-", "right": { + "commentStart": 5176, "end": 0, "left": { + "commentStart": 5176, "end": 0, "left": { + "commentStart": 5176, "end": 0, "name": "wallThickness", "start": 0, @@ -4628,6 +5240,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 5192, "end": 0, "raw": "3", "start": 0, @@ -4644,6 +5257,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 5196, "end": 0, "name": "holeDia", "start": 0, @@ -4668,14 +5282,17 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 5222, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5231, "end": 0, "left": { + "commentStart": 5231, "end": 0, "name": "holeDia", "start": 0, @@ -4684,6 +5301,7 @@ description: Result of parsing enclosure.kcl }, "operator": "+", "right": { + "commentStart": 5241, "end": 0, "name": "wallThickness", "start": 0, @@ -4697,11 +5315,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 5077, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 5077, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4709,6 +5329,7 @@ description: Result of parsing enclosure.kcl "unlabeled": null }, { + "commentStart": 5263, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4716,17 +5337,20 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 5072, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 5072, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 3937, "end": 0, "start": 0, "type": "PipeExpression", @@ -4742,9 +5366,12 @@ description: Result of parsing enclosure.kcl "type": "VariableDeclaration" }, { + "commentStart": 5266, "declaration": { + "commentStart": 5266, "end": 0, "id": { + "commentStart": 5266, "end": 0, "name": "extrude004", "start": 0, @@ -4757,12 +5384,14 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 5298, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5307, "end": 0, "name": "wallThickness", "start": 0, @@ -4772,16 +5401,19 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 5279, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 5279, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 5287, "end": 0, "name": "sketch004", "start": 0, @@ -4794,14 +5426,17 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 5342, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5351, "end": 0, "left": { + "commentStart": 5351, "end": 0, "name": "wallThickness", "start": 0, @@ -4810,6 +5445,7 @@ description: Result of parsing enclosure.kcl }, "operator": "*", "right": { + "commentStart": 5367, "end": 0, "raw": "3", "start": 0, @@ -4828,16 +5464,19 @@ description: Result of parsing enclosure.kcl { "type": "LabeledArg", "label": { + "commentStart": 5377, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5384, "elements": [ { "arguments": [ { + "commentStart": 5415, "end": 0, "name": "rectangleSegmentA003", "start": 0, @@ -4846,11 +5485,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 5395, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 5395, "end": 0, "start": 0, "type": "CallExpression", @@ -4859,6 +5500,7 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 5467, "end": 0, "name": "rectangleSegmentB003", "start": 0, @@ -4867,11 +5509,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 5447, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 5447, "end": 0, "start": 0, "type": "CallExpression", @@ -4880,6 +5524,7 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 5519, "end": 0, "name": "rectangleSegmentC003", "start": 0, @@ -4888,11 +5533,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 5499, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 5499, "end": 0, "start": 0, "type": "CallExpression", @@ -4901,6 +5548,7 @@ description: Result of parsing enclosure.kcl { "arguments": [ { + "commentStart": 5571, "end": 0, "name": "rectangleSegmentD003", "start": 0, @@ -4909,11 +5557,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 5551, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 5551, "end": 0, "start": 0, "type": "CallExpression", @@ -4928,11 +5578,13 @@ description: Result of parsing enclosure.kcl } ], "callee": { + "commentStart": 5327, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 5327, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4940,6 +5592,7 @@ description: Result of parsing enclosure.kcl "unlabeled": null } ], + "commentStart": 5279, "end": 0, "start": 0, "type": "PipeExpression", @@ -4955,20 +5608,32 @@ description: Result of parsing enclosure.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 83, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Enclosure", + "// An enclosure body and sealing lid for storing items", + "", + "", + "// Set units" + ], "properties": [ { + "commentStart": 92, "end": 0, "key": { + "commentStart": 92, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -4977,6 +5642,7 @@ description: Result of parsing enclosure.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 112, "end": 0, "name": "mm", "start": 0, @@ -4990,84 +5656,10 @@ description: Result of parsing enclosure.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "4": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Model a box with base enclosure dimensions", - "style": "line" - } - } - ], - "7": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Place the internal pillar at each corner", - "style": "line" - } - } - ], - "11": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Define lid position and outer surface", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Enclosure", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "An enclosure body and sealing lid for storing items", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units", - "style": "line" - } - }, - { + "commentStart": 115, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/kcl_samples/enclosure/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/enclosure/program_memory.snap index c6f9369fc..bae56090d 100644 --- a/rust/kcl-lib/tests/kcl_samples/enclosure/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/enclosure/program_memory.snap @@ -15,6 +15,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 325, "end": 346, "start": 325, "type": "TagDeclarator", @@ -27,6 +28,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 433, "end": 454, "start": 433, "type": "TagDeclarator", @@ -39,6 +41,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 559, "end": 580, "start": 559, "type": "TagDeclarator", @@ -51,6 +54,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 650, "end": 671, "start": 650, "type": "TagDeclarator", @@ -73,6 +77,7 @@ description: Variables in memory after executing enclosure.kcl 0.0 ], "tag": { + "commentStart": 325, "end": 346, "start": 325, "type": "TagDeclarator", @@ -97,6 +102,7 @@ description: Variables in memory after executing enclosure.kcl 0.0 ], "tag": { + "commentStart": 433, "end": 454, "start": 433, "type": "TagDeclarator", @@ -121,6 +127,7 @@ description: Variables in memory after executing enclosure.kcl 175.0 ], "tag": { + "commentStart": 559, "end": 580, "start": 559, "type": "TagDeclarator", @@ -145,6 +152,7 @@ description: Variables in memory after executing enclosure.kcl 175.0 ], "tag": { + "commentStart": 650, "end": 671, "start": 650, "type": "TagDeclarator", @@ -300,6 +308,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2473, "end": 2494, "start": 2473, "type": "TagDeclarator", @@ -312,6 +321,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2581, "end": 2602, "start": 2581, "type": "TagDeclarator", @@ -324,6 +334,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2707, "end": 2728, "start": 2707, "type": "TagDeclarator", @@ -336,6 +347,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2798, "end": 2819, "start": 2798, "type": "TagDeclarator", @@ -358,6 +370,7 @@ description: Variables in memory after executing enclosure.kcl 0.0 ], "tag": { + "commentStart": 2473, "end": 2494, "start": 2473, "type": "TagDeclarator", @@ -382,6 +395,7 @@ description: Variables in memory after executing enclosure.kcl 0.0 ], "tag": { + "commentStart": 2581, "end": 2602, "start": 2581, "type": "TagDeclarator", @@ -406,6 +420,7 @@ description: Variables in memory after executing enclosure.kcl 175.0 ], "tag": { + "commentStart": 2707, "end": 2728, "start": 2707, "type": "TagDeclarator", @@ -430,6 +445,7 @@ description: Variables in memory after executing enclosure.kcl 175.0 ], "tag": { + "commentStart": 2798, "end": 2819, "start": 2798, "type": "TagDeclarator", @@ -585,6 +601,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4113, "end": 4134, "start": 4113, "type": "TagDeclarator", @@ -597,6 +614,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4243, "end": 4264, "start": 4243, "type": "TagDeclarator", @@ -609,6 +627,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4369, "end": 4390, "start": 4369, "type": "TagDeclarator", @@ -621,6 +640,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4460, "end": 4481, "start": 4460, "type": "TagDeclarator", @@ -643,6 +663,7 @@ description: Variables in memory after executing enclosure.kcl 3.0 ], "tag": { + "commentStart": 4113, "end": 4134, "start": 4113, "type": "TagDeclarator", @@ -667,6 +688,7 @@ description: Variables in memory after executing enclosure.kcl 3.0 ], "tag": { + "commentStart": 4243, "end": 4264, "start": 4243, "type": "TagDeclarator", @@ -691,6 +713,7 @@ description: Variables in memory after executing enclosure.kcl 172.0 ], "tag": { + "commentStart": 4369, "end": 4390, "start": 4369, "type": "TagDeclarator", @@ -715,6 +738,7 @@ description: Variables in memory after executing enclosure.kcl 172.0 ], "tag": { + "commentStart": 4460, "end": 4481, "start": 4460, "type": "TagDeclarator", @@ -779,6 +803,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2473, "end": 2494, "start": 2473, "type": "TagDeclarator", @@ -791,6 +816,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2581, "end": 2602, "start": 2581, "type": "TagDeclarator", @@ -803,6 +829,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2707, "end": 2728, "start": 2707, "type": "TagDeclarator", @@ -815,6 +842,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2798, "end": 2819, "start": 2798, "type": "TagDeclarator", @@ -837,6 +865,7 @@ description: Variables in memory after executing enclosure.kcl 0.0 ], "tag": { + "commentStart": 2473, "end": 2494, "start": 2473, "type": "TagDeclarator", @@ -861,6 +890,7 @@ description: Variables in memory after executing enclosure.kcl 0.0 ], "tag": { + "commentStart": 2581, "end": 2602, "start": 2581, "type": "TagDeclarator", @@ -885,6 +915,7 @@ description: Variables in memory after executing enclosure.kcl 175.0 ], "tag": { + "commentStart": 2707, "end": 2728, "start": 2707, "type": "TagDeclarator", @@ -909,6 +940,7 @@ description: Variables in memory after executing enclosure.kcl 175.0 ], "tag": { + "commentStart": 2798, "end": 2819, "start": 2798, "type": "TagDeclarator", @@ -1253,6 +1285,7 @@ description: Variables in memory after executing enclosure.kcl 0.0 ], "tag": { + "commentStart": 325, "end": 346, "start": 325, "type": "TagDeclarator", @@ -1277,6 +1310,7 @@ description: Variables in memory after executing enclosure.kcl 0.0 ], "tag": { + "commentStart": 433, "end": 454, "start": 433, "type": "TagDeclarator", @@ -1301,6 +1335,7 @@ description: Variables in memory after executing enclosure.kcl 175.0 ], "tag": { + "commentStart": 559, "end": 580, "start": 559, "type": "TagDeclarator", @@ -1325,6 +1360,7 @@ description: Variables in memory after executing enclosure.kcl 175.0 ], "tag": { + "commentStart": 650, "end": 671, "start": 650, "type": "TagDeclarator", @@ -1447,6 +1483,7 @@ description: Variables in memory after executing enclosure.kcl 0.0 ], "tag": { + "commentStart": 2473, "end": 2494, "start": 2473, "type": "TagDeclarator", @@ -1471,6 +1508,7 @@ description: Variables in memory after executing enclosure.kcl 0.0 ], "tag": { + "commentStart": 2581, "end": 2602, "start": 2581, "type": "TagDeclarator", @@ -1495,6 +1533,7 @@ description: Variables in memory after executing enclosure.kcl 175.0 ], "tag": { + "commentStart": 2707, "end": 2728, "start": 2707, "type": "TagDeclarator", @@ -1519,6 +1558,7 @@ description: Variables in memory after executing enclosure.kcl 175.0 ], "tag": { + "commentStart": 2798, "end": 2819, "start": 2798, "type": "TagDeclarator", @@ -1641,6 +1681,7 @@ description: Variables in memory after executing enclosure.kcl 3.0 ], "tag": { + "commentStart": 4113, "end": 4134, "start": 4113, "type": "TagDeclarator", @@ -1665,6 +1706,7 @@ description: Variables in memory after executing enclosure.kcl 3.0 ], "tag": { + "commentStart": 4243, "end": 4264, "start": 4243, "type": "TagDeclarator", @@ -1689,6 +1731,7 @@ description: Variables in memory after executing enclosure.kcl 172.0 ], "tag": { + "commentStart": 4369, "end": 4390, "start": 4369, "type": "TagDeclarator", @@ -1713,6 +1756,7 @@ description: Variables in memory after executing enclosure.kcl 172.0 ], "tag": { + "commentStart": 4460, "end": 4481, "start": 4460, "type": "TagDeclarator", @@ -1777,6 +1821,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2473, "end": 2494, "start": 2473, "type": "TagDeclarator", @@ -1789,6 +1834,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2581, "end": 2602, "start": 2581, "type": "TagDeclarator", @@ -1801,6 +1847,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2707, "end": 2728, "start": 2707, "type": "TagDeclarator", @@ -1813,6 +1860,7 @@ description: Variables in memory after executing enclosure.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2798, "end": 2819, "start": 2798, "type": "TagDeclarator", @@ -1835,6 +1883,7 @@ description: Variables in memory after executing enclosure.kcl 0.0 ], "tag": { + "commentStart": 2473, "end": 2494, "start": 2473, "type": "TagDeclarator", @@ -1859,6 +1908,7 @@ description: Variables in memory after executing enclosure.kcl 0.0 ], "tag": { + "commentStart": 2581, "end": 2602, "start": 2581, "type": "TagDeclarator", @@ -1883,6 +1933,7 @@ description: Variables in memory after executing enclosure.kcl 175.0 ], "tag": { + "commentStart": 2707, "end": 2728, "start": 2707, "type": "TagDeclarator", @@ -1907,6 +1958,7 @@ description: Variables in memory after executing enclosure.kcl 175.0 ], "tag": { + "commentStart": 2798, "end": 2819, "start": 2798, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/kcl_samples/exhaust-manifold/ast.snap b/rust/kcl-lib/tests/kcl_samples/exhaust-manifold/ast.snap index d9771e377..51a2f5ddb 100644 --- a/rust/kcl-lib/tests/kcl_samples/exhaust-manifold/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/exhaust-manifold/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing exhaust-manifold.kcl "Ok": { "body": [ { + "commentStart": 126, "declaration": { + "commentStart": 148, "end": 0, "id": { + "commentStart": 148, "end": 0, "name": "primaryTubeDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 170, "end": 0, "raw": "1.625", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing exhaust-manifold.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define Constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 176, "declaration": { + "commentStart": 176, "end": 0, "id": { + "commentStart": 176, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 192, "end": 0, "raw": "0.080", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing exhaust-manifold.kcl "type": "VariableDeclaration" }, { + "commentStart": 198, "declaration": { + "commentStart": 198, "end": 0, "id": { + "commentStart": 198, "end": 0, "name": "plateHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 212, "end": 0, "raw": "0.125", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing exhaust-manifold.kcl "type": "VariableDeclaration" }, { + "commentStart": 218, "declaration": { + "commentStart": 218, "end": 0, "id": { + "commentStart": 218, "end": 0, "name": "bendRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 231, "end": 0, "raw": "3", "start": 0, @@ -122,9 +141,12 @@ description: Result of parsing exhaust-manifold.kcl "type": "VariableDeclaration" }, { + "commentStart": 232, "declaration": { + "commentStart": 318, "end": 0, "id": { + "commentStart": 318, "end": 0, "name": "primaryTube", "start": 0, @@ -134,17 +156,22 @@ description: Result of parsing exhaust-manifold.kcl "body": { "body": [ { + "commentStart": 377, "declaration": { + "commentStart": 418, "end": 0, "id": { + "commentStart": 418, "end": 0, "name": "pos001", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 427, "end": 0, "left": { + "commentStart": 427, "end": 0, "name": "n", "start": 0, @@ -153,6 +180,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "*", "right": { + "commentStart": 431, "end": 0, "raw": "2", "start": 0, @@ -172,25 +200,34 @@ description: Result of parsing exhaust-manifold.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Create an index for the function" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 434, "declaration": { + "commentStart": 496, "end": 0, "id": { + "commentStart": 496, "end": 0, "name": "sweepPlane", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 509, "end": 0, "properties": [ { + "commentStart": 515, "end": 0, "key": { + "commentStart": 515, "end": 0, "name": "plane", "start": 0, @@ -199,11 +236,14 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 523, "end": 0, "properties": [ { + "commentStart": 531, "end": 0, "key": { + "commentStart": 531, "end": 0, "name": "origin", "start": 0, @@ -212,8 +252,10 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 540, "elements": [ { + "commentStart": 541, "end": 0, "name": "pos001", "start": 0, @@ -221,6 +263,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "Identifier" }, { + "commentStart": 549, "end": 0, "raw": "0.0", "start": 0, @@ -232,6 +275,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 554, "end": 0, "raw": "0", "start": 0, @@ -250,8 +294,10 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 564, "end": 0, "key": { + "commentStart": 564, "end": 0, "name": "xAxis", "start": 0, @@ -260,6 +306,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 572, "elements": [ { "arguments": [ @@ -267,12 +314,14 @@ description: Result of parsing exhaust-manifold.kcl "arguments": [ { "argument": { + "commentStart": 597, "end": 0, "name": "angle001", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 596, "end": 0, "operator": "-", "start": 0, @@ -281,11 +330,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 586, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 586, "end": 0, "start": 0, "type": "CallExpression", @@ -293,11 +344,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 582, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, + "commentStart": 582, "end": 0, "start": 0, "type": "CallExpression", @@ -309,12 +362,14 @@ description: Result of parsing exhaust-manifold.kcl "arguments": [ { "argument": { + "commentStart": 632, "end": 0, "name": "angle001", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 631, "end": 0, "operator": "-", "start": 0, @@ -323,11 +378,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 621, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 621, "end": 0, "start": 0, "type": "CallExpression", @@ -335,17 +392,20 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 617, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 617, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { + "commentStart": 652, "end": 0, "raw": "0.0", "start": 0, @@ -364,8 +424,10 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 671, "end": 0, "key": { + "commentStart": 671, "end": 0, "name": "yAxis", "start": 0, @@ -374,8 +436,10 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 679, "elements": [ { + "commentStart": 680, "end": 0, "raw": "0.0", "start": 0, @@ -387,6 +451,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 685, "end": 0, "raw": "0.0", "start": 0, @@ -398,6 +463,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 690, "end": 0, "raw": "1.0", "start": 0, @@ -416,8 +482,10 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 702, "end": 0, "key": { + "commentStart": 702, "end": 0, "name": "zAxis", "start": 0, @@ -426,8 +494,10 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 710, "elements": [ { + "commentStart": 711, "end": 0, "raw": "1.0", "start": 0, @@ -439,6 +509,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 716, "end": 0, "raw": "0.0", "start": 0, @@ -450,6 +521,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 721, "end": 0, "raw": "0.0", "start": 0, @@ -483,14 +555,22 @@ description: Result of parsing exhaust-manifold.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Define a plane for each sweep path defined by an angle" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 737, "declaration": { + "commentStart": 771, "end": 0, "id": { + "commentStart": 771, "end": 0, "name": "sweepPath", "start": 0, @@ -501,6 +581,7 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 797, "end": 0, "name": "sweepPlane", "start": 0, @@ -509,11 +590,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 783, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 783, "end": 0, "start": 0, "type": "CallExpression", @@ -522,8 +605,10 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 831, "elements": [ { + "commentStart": 832, "end": 0, "raw": "0", "start": 0, @@ -535,6 +620,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 835, "end": 0, "name": "plateHeight", "start": 0, @@ -548,6 +634,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ArrayExpression" }, { + "commentStart": 849, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -555,11 +642,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 816, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 816, "end": 0, "start": 0, "type": "CallExpression", @@ -570,14 +659,17 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 864, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 870, "elements": [ { + "commentStart": 871, "end": 0, "raw": "0", "start": 0, @@ -589,6 +681,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 874, "end": 0, "name": "length001", "start": 0, @@ -604,11 +697,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 859, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 859, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -618,11 +713,14 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 907, "end": 0, "properties": [ { + "commentStart": 909, "end": 0, "key": { + "commentStart": 909, "end": 0, "name": "offset", "start": 0, @@ -632,6 +730,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 919, "end": 0, "raw": "80", "start": 0, @@ -642,6 +741,7 @@ description: Result of parsing exhaust-manifold.kcl "suffix": "None" } }, + "commentStart": 918, "end": 0, "operator": "-", "start": 0, @@ -650,8 +750,10 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 923, "end": 0, "key": { + "commentStart": 923, "end": 0, "name": "radius", "start": 0, @@ -660,6 +762,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 932, "end": 0, "name": "bendRadius", "start": 0, @@ -673,12 +776,14 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectExpression" }, { + "commentStart": 946, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 949, "end": 0, "start": 0, "type": "TagDeclarator", @@ -687,11 +792,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 893, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 893, "end": 0, "start": 0, "type": "CallExpression", @@ -700,11 +807,14 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 975, "end": 0, "properties": [ { + "commentStart": 986, "end": 0, "key": { + "commentStart": 986, "end": 0, "name": "angle", "start": 0, @@ -715,6 +825,7 @@ description: Result of parsing exhaust-manifold.kcl "value": { "arguments": [ { + "commentStart": 1007, "end": 0, "name": "arc01", "start": 0, @@ -723,11 +834,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 994, "end": 0, "name": "tangentToEnd", "start": 0, "type": "Identifier" }, + "commentStart": 994, "end": 0, "start": 0, "type": "CallExpression", @@ -735,8 +848,10 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1024, "end": 0, "key": { + "commentStart": 1024, "end": 0, "name": "length", "start": 0, @@ -745,6 +860,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1033, "end": 0, "name": "length002", "start": 0, @@ -758,6 +874,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectExpression" }, { + "commentStart": 1053, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -765,11 +882,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 964, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 964, "end": 0, "start": 0, "type": "CallExpression", @@ -778,11 +897,14 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 1077, "end": 0, "properties": [ { + "commentStart": 1079, "end": 0, "key": { + "commentStart": 1079, "end": 0, "name": "offset", "start": 0, @@ -791,6 +913,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1088, "end": 0, "raw": "85", "start": 0, @@ -803,8 +926,10 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1092, "end": 0, "key": { + "commentStart": 1092, "end": 0, "name": "radius", "start": 0, @@ -813,6 +938,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1101, "end": 0, "name": "bendRadius", "start": 0, @@ -826,12 +952,14 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectExpression" }, { + "commentStart": 1115, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1118, "end": 0, "start": 0, "type": "TagDeclarator", @@ -840,11 +968,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1063, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 1063, "end": 0, "start": 0, "type": "CallExpression", @@ -853,11 +983,14 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 1144, "end": 0, "properties": [ { + "commentStart": 1155, "end": 0, "key": { + "commentStart": 1155, "end": 0, "name": "angle", "start": 0, @@ -868,6 +1001,7 @@ description: Result of parsing exhaust-manifold.kcl "value": { "arguments": [ { + "commentStart": 1176, "end": 0, "name": "arc02", "start": 0, @@ -876,11 +1010,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1163, "end": 0, "name": "tangentToEnd", "start": 0, "type": "Identifier" }, + "commentStart": 1163, "end": 0, "start": 0, "type": "CallExpression", @@ -888,8 +1024,10 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1193, "end": 0, "key": { + "commentStart": 1193, "end": 0, "name": "length", "start": 0, @@ -898,6 +1036,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1202, "end": 0, "name": "length003", "start": 0, @@ -911,6 +1050,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectExpression" }, { + "commentStart": 1222, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -918,22 +1058,26 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1133, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1133, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 783, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "6": [ { + "commentStart": 1226, "end": 0, "start": 0, "type": "NonCodeNode", @@ -956,14 +1100,22 @@ description: Result of parsing exhaust-manifold.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Draw a path for each sweep" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1286, "declaration": { + "commentStart": 1286, "end": 0, "id": { + "commentStart": 1286, "end": 0, "name": "sweepProfile", "start": 0, @@ -974,6 +1126,7 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 1315, "end": 0, "raw": "'XY'", "start": 0, @@ -983,11 +1136,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1301, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1301, "end": 0, "start": 0, "type": "CallExpression", @@ -998,14 +1153,17 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 1345, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1354, "elements": [ { + "commentStart": 1355, "end": 0, "name": "pos001", "start": 0, @@ -1013,6 +1171,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "Identifier" }, { + "commentStart": 1363, "end": 0, "raw": "0", "start": 0, @@ -1033,14 +1192,17 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 1376, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1385, "end": 0, "left": { + "commentStart": 1385, "end": 0, "name": "primaryTubeDiameter", "start": 0, @@ -1049,6 +1211,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "/", "right": { + "commentStart": 1407, "end": 0, "raw": "2", "start": 0, @@ -1066,11 +1229,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1328, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1328, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1084,14 +1249,17 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 1447, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1456, "elements": [ { + "commentStart": 1457, "end": 0, "name": "pos001", "start": 0, @@ -1099,6 +1267,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "Identifier" }, { + "commentStart": 1465, "end": 0, "raw": "0", "start": 0, @@ -1119,16 +1288,20 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 1478, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1487, "end": 0, "left": { + "commentStart": 1487, "end": 0, "left": { + "commentStart": 1487, "end": 0, "name": "primaryTubeDiameter", "start": 0, @@ -1137,6 +1310,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "/", "right": { + "commentStart": 1509, "end": 0, "raw": "2", "start": 0, @@ -1153,6 +1327,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "-", "right": { + "commentStart": 1513, "end": 0, "name": "wallThickness", "start": 0, @@ -1166,11 +1341,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1430, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1430, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1178,6 +1355,7 @@ description: Result of parsing exhaust-manifold.kcl "unlabeled": null }, { + "commentStart": 1537, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1185,11 +1363,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1425, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 1425, "end": 0, "start": 0, "type": "CallExpression", @@ -1200,12 +1380,14 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 1553, "end": 0, "name": "path", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1560, "end": 0, "name": "sweepPath", "start": 0, @@ -1215,11 +1397,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1547, "end": 0, "name": "sweep", "start": 0, "type": "Identifier" }, + "commentStart": 1547, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1227,6 +1411,7 @@ description: Result of parsing exhaust-manifold.kcl "unlabeled": null } ], + "commentStart": 1301, "end": 0, "start": 0, "type": "PipeExpression", @@ -1243,47 +1428,27 @@ description: Result of parsing exhaust-manifold.kcl }, { "argument": { + "commentStart": 1581, "end": 0, "properties": [], "start": 0, "type": "ObjectExpression", "type": "ObjectExpression" }, + "commentStart": 1570, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 377, "end": 0, "nonCodeMeta": { "nonCodeNodes": { - "0": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Define a plane for each sweep path defined by an angle", - "style": "line" - } - } - ], - "1": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Draw a path for each sweep", - "style": "line" - } - } - ], "3": [ { + "commentStart": 1570, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1293,26 +1458,17 @@ description: Result of parsing exhaust-manifold.kcl } ] }, - "startNodes": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Create an index for the function", - "style": "line" - } - } - ] + "startNodes": [] }, "start": 0 }, + "commentStart": 329, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 330, "end": 0, "name": "n", "start": 0, @@ -1322,6 +1478,7 @@ description: Result of parsing exhaust-manifold.kcl { "type": "Parameter", "identifier": { + "commentStart": 333, "end": 0, "name": "angle001", "start": 0, @@ -1331,6 +1488,7 @@ description: Result of parsing exhaust-manifold.kcl { "type": "Parameter", "identifier": { + "commentStart": 343, "end": 0, "name": "length001", "start": 0, @@ -1340,6 +1498,7 @@ description: Result of parsing exhaust-manifold.kcl { "type": "Parameter", "identifier": { + "commentStart": 354, "end": 0, "name": "length002", "start": 0, @@ -1349,6 +1508,7 @@ description: Result of parsing exhaust-manifold.kcl { "type": "Parameter", "identifier": { + "commentStart": 365, "end": 0, "name": "length003", "start": 0, @@ -1365,15 +1525,22 @@ description: Result of parsing exhaust-manifold.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// Create a function to draw each primary tube with specified lengths and angles" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1587, "end": 0, "expression": { "arguments": [ { + "commentStart": 1676, "end": 0, "raw": "0", "start": 0, @@ -1385,6 +1552,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1679, "end": 0, "raw": "0", "start": 0, @@ -1396,6 +1564,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1682, "end": 0, "raw": "3", "start": 0, @@ -1407,6 +1576,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1685, "end": 0, "raw": "6", "start": 0, @@ -1418,6 +1588,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1688, "end": 0, "raw": "5", "start": 0, @@ -1430,25 +1601,34 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1664, "end": 0, "name": "primaryTube", "start": 0, "type": "Identifier" }, + "commentStart": 1664, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "preComments": [ + "", + "", + "// Draw a primary tube for each cylinder with specified lengths and angles" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 1691, "end": 0, "expression": { "arguments": [ { + "commentStart": 1703, "end": 0, "raw": "1", "start": 0, @@ -1460,6 +1640,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1706, "end": 0, "raw": "1", "start": 0, @@ -1471,6 +1652,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1709, "end": 0, "raw": "3", "start": 0, @@ -1482,6 +1664,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1712, "end": 0, "raw": "6", "start": 0, @@ -1493,6 +1676,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1715, "end": 0, "raw": "5", "start": 0, @@ -1505,11 +1689,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1691, "end": 0, "name": "primaryTube", "start": 0, "type": "Identifier" }, + "commentStart": 1691, "end": 0, "start": 0, "type": "CallExpression", @@ -1520,10 +1706,12 @@ description: Result of parsing exhaust-manifold.kcl "type": "ExpressionStatement" }, { + "commentStart": 1718, "end": 0, "expression": { "arguments": [ { + "commentStart": 1730, "end": 0, "raw": "2", "start": 0, @@ -1535,6 +1723,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1733, "end": 0, "raw": "24.3", "start": 0, @@ -1546,6 +1735,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1739, "end": 0, "raw": "5", "start": 0, @@ -1557,6 +1747,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1742, "end": 0, "raw": "5", "start": 0, @@ -1568,6 +1759,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1745, "end": 0, "raw": "3", "start": 0, @@ -1580,11 +1772,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1718, "end": 0, "name": "primaryTube", "start": 0, "type": "Identifier" }, + "commentStart": 1718, "end": 0, "start": 0, "type": "CallExpression", @@ -1595,10 +1789,12 @@ description: Result of parsing exhaust-manifold.kcl "type": "ExpressionStatement" }, { + "commentStart": 1748, "end": 0, "expression": { "arguments": [ { + "commentStart": 1760, "end": 0, "raw": "3", "start": 0, @@ -1610,6 +1806,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1763, "end": 0, "raw": "25.2", "start": 0, @@ -1621,6 +1818,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1769, "end": 0, "raw": "5", "start": 0, @@ -1632,6 +1830,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1772, "end": 0, "raw": "5", "start": 0, @@ -1643,6 +1842,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1775, "end": 0, "raw": "3", "start": 0, @@ -1655,11 +1855,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1748, "end": 0, "name": "primaryTube", "start": 0, "type": "Identifier" }, + "commentStart": 1748, "end": 0, "start": 0, "type": "CallExpression", @@ -1670,9 +1872,12 @@ description: Result of parsing exhaust-manifold.kcl "type": "ExpressionStatement" }, { + "commentStart": 1777, "declaration": { + "commentStart": 1824, "end": 0, "id": { + "commentStart": 1824, "end": 0, "name": "flangeSketch", "start": 0, @@ -1683,6 +1888,7 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 1853, "end": 0, "raw": "'XY'", "start": 0, @@ -1692,11 +1898,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1839, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1839, "end": 0, "start": 0, "type": "CallExpression", @@ -1705,10 +1913,13 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 1879, "elements": [ { + "commentStart": 1880, "end": 0, "left": { + "commentStart": 1880, "end": 0, "raw": "3", "start": 0, @@ -1721,6 +1932,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "+", "right": { + "commentStart": 1884, "end": 0, "raw": "1.3", "start": 0, @@ -1737,6 +1949,7 @@ description: Result of parsing exhaust-manifold.kcl }, { "argument": { + "commentStart": 1890, "end": 0, "raw": "1.25", "start": 0, @@ -1747,6 +1960,7 @@ description: Result of parsing exhaust-manifold.kcl "suffix": "None" } }, + "commentStart": 1889, "end": 0, "operator": "-", "start": 0, @@ -1760,6 +1974,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ArrayExpression" }, { + "commentStart": 1897, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1767,11 +1982,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1864, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1864, "end": 0, "start": 0, "type": "CallExpression", @@ -1782,6 +1999,7 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 1911, "end": 0, "name": "length", "start": 0, @@ -1789,6 +2007,7 @@ description: Result of parsing exhaust-manifold.kcl }, "arg": { "argument": { + "commentStart": 1921, "end": 0, "raw": "2.6", "start": 0, @@ -1799,6 +2018,7 @@ description: Result of parsing exhaust-manifold.kcl "suffix": "None" } }, + "commentStart": 1920, "end": 0, "operator": "-", "start": 0, @@ -1809,12 +2029,14 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 1926, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1932, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1824,11 +2046,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1905, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1905, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1838,11 +2062,14 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 1959, "end": 0, "properties": [ { + "commentStart": 1961, "end": 0, "key": { + "commentStart": 1961, "end": 0, "name": "radius", "start": 0, @@ -1851,6 +2078,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1970, "end": 0, "raw": ".3", "start": 0, @@ -1863,8 +2091,10 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 1974, "end": 0, "key": { + "commentStart": 1974, "end": 0, "name": "offset", "start": 0, @@ -1874,6 +2104,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1984, "end": 0, "raw": "40", "start": 0, @@ -1884,6 +2115,7 @@ description: Result of parsing exhaust-manifold.kcl "suffix": "None" } }, + "commentStart": 1983, "end": 0, "operator": "-", "start": 0, @@ -1897,6 +2129,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectExpression" }, { + "commentStart": 1990, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1904,11 +2137,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1945, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 1945, "end": 0, "start": 0, "type": "CallExpression", @@ -1917,11 +2152,14 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 2012, "end": 0, "properties": [ { + "commentStart": 2014, "end": 0, "key": { + "commentStart": 2014, "end": 0, "name": "radius", "start": 0, @@ -1930,6 +2168,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2023, "end": 0, "raw": ".9", "start": 0, @@ -1942,8 +2181,10 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 2027, "end": 0, "key": { + "commentStart": 2027, "end": 0, "name": "offset", "start": 0, @@ -1952,6 +2193,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2036, "end": 0, "raw": "80", "start": 0, @@ -1969,6 +2211,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectExpression" }, { + "commentStart": 2042, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1976,11 +2219,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 1998, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 1998, "end": 0, "start": 0, "type": "CallExpression", @@ -1989,11 +2234,14 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 2064, "end": 0, "properties": [ { + "commentStart": 2066, "end": 0, "key": { + "commentStart": 2066, "end": 0, "name": "radius", "start": 0, @@ -2002,6 +2250,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2075, "end": 0, "raw": ".3", "start": 0, @@ -2014,8 +2263,10 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 2079, "end": 0, "key": { + "commentStart": 2079, "end": 0, "name": "offset", "start": 0, @@ -2025,6 +2276,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 2089, "end": 0, "raw": "40", "start": 0, @@ -2035,6 +2287,7 @@ description: Result of parsing exhaust-manifold.kcl "suffix": "None" } }, + "commentStart": 2088, "end": 0, "operator": "-", "start": 0, @@ -2048,6 +2301,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectExpression" }, { + "commentStart": 2095, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2055,11 +2309,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2050, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 2050, "end": 0, "start": 0, "type": "CallExpression", @@ -2070,6 +2326,7 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 2109, "end": 0, "name": "length", "start": 0, @@ -2077,6 +2334,7 @@ description: Result of parsing exhaust-manifold.kcl }, "arg": { "argument": { + "commentStart": 2119, "end": 0, "raw": "1.4", "start": 0, @@ -2087,6 +2345,7 @@ description: Result of parsing exhaust-manifold.kcl "suffix": "None" } }, + "commentStart": 2118, "end": 0, "operator": "-", "start": 0, @@ -2097,12 +2356,14 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 2124, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2130, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2112,11 +2373,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2103, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2103, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2128,6 +2391,7 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 2149, "end": 0, "name": "length", "start": 0, @@ -2136,6 +2400,7 @@ description: Result of parsing exhaust-manifold.kcl "arg": { "arguments": [ { + "commentStart": 2165, "end": 0, "name": "seg01", "start": 0, @@ -2144,11 +2409,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2158, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 2158, "end": 0, "start": 0, "type": "CallExpression", @@ -2158,12 +2425,14 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 2173, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2179, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2173,11 +2442,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2143, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 2143, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2189,12 +2460,14 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 2198, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2207, "end": 0, "raw": "3.1", "start": 0, @@ -2209,12 +2482,14 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 2212, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2218, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2224,11 +2499,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2192, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2192, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2238,11 +2515,14 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 2245, "end": 0, "properties": [ { + "commentStart": 2247, "end": 0, "key": { + "commentStart": 2247, "end": 0, "name": "radius", "start": 0, @@ -2251,6 +2531,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2256, "end": 0, "raw": ".3", "start": 0, @@ -2263,8 +2544,10 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 2260, "end": 0, "key": { + "commentStart": 2260, "end": 0, "name": "offset", "start": 0, @@ -2274,6 +2557,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 2270, "end": 0, "raw": "40", "start": 0, @@ -2284,6 +2568,7 @@ description: Result of parsing exhaust-manifold.kcl "suffix": "None" } }, + "commentStart": 2269, "end": 0, "operator": "-", "start": 0, @@ -2297,6 +2582,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectExpression" }, { + "commentStart": 2276, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2304,11 +2590,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2231, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 2231, "end": 0, "start": 0, "type": "CallExpression", @@ -2317,11 +2605,14 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 2298, "end": 0, "properties": [ { + "commentStart": 2300, "end": 0, "key": { + "commentStart": 2300, "end": 0, "name": "radius", "start": 0, @@ -2330,6 +2621,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2309, "end": 0, "raw": "1.5", "start": 0, @@ -2342,8 +2634,10 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 2314, "end": 0, "key": { + "commentStart": 2314, "end": 0, "name": "offset", "start": 0, @@ -2352,6 +2646,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2323, "end": 0, "raw": "80", "start": 0, @@ -2369,6 +2664,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectExpression" }, { + "commentStart": 2329, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2376,11 +2672,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2284, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 2284, "end": 0, "start": 0, "type": "CallExpression", @@ -2389,11 +2687,14 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 2351, "end": 0, "properties": [ { + "commentStart": 2353, "end": 0, "key": { + "commentStart": 2353, "end": 0, "name": "radius", "start": 0, @@ -2402,6 +2703,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2362, "end": 0, "raw": ".3", "start": 0, @@ -2414,8 +2716,10 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 2366, "end": 0, "key": { + "commentStart": 2366, "end": 0, "name": "offset", "start": 0, @@ -2425,6 +2729,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 2376, "end": 0, "raw": "40", "start": 0, @@ -2435,6 +2740,7 @@ description: Result of parsing exhaust-manifold.kcl "suffix": "None" } }, + "commentStart": 2375, "end": 0, "operator": "-", "start": 0, @@ -2448,6 +2754,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectExpression" }, { + "commentStart": 2382, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2455,11 +2762,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2337, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 2337, "end": 0, "start": 0, "type": "CallExpression", @@ -2470,6 +2779,7 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 2396, "end": 0, "name": "length", "start": 0, @@ -2478,6 +2788,7 @@ description: Result of parsing exhaust-manifold.kcl "arg": { "arguments": [ { + "commentStart": 2412, "end": 0, "name": "seg05", "start": 0, @@ -2486,11 +2797,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2405, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 2405, "end": 0, "start": 0, "type": "CallExpression", @@ -2500,12 +2813,14 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 2420, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2426, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2515,11 +2830,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2390, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2390, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2531,6 +2848,7 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 2445, "end": 0, "name": "endAbsolute", "start": 0, @@ -2539,6 +2857,7 @@ description: Result of parsing exhaust-manifold.kcl "arg": { "arguments": [ { + "commentStart": 2473, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2546,11 +2865,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2459, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 2459, "end": 0, "start": 0, "type": "CallExpression", @@ -2560,12 +2881,14 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 2477, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2483, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2575,11 +2898,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2439, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 2439, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2591,6 +2916,7 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 2502, "end": 0, "name": "length", "start": 0, @@ -2600,6 +2926,7 @@ description: Result of parsing exhaust-manifold.kcl "argument": { "arguments": [ { + "commentStart": 2519, "end": 0, "name": "seg03", "start": 0, @@ -2608,16 +2935,19 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2512, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 2512, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 2511, "end": 0, "operator": "-", "start": 0, @@ -2628,12 +2958,14 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 2527, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2533, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2643,11 +2975,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2496, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2496, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2657,11 +2991,14 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 2560, "end": 0, "properties": [ { + "commentStart": 2562, "end": 0, "key": { + "commentStart": 2562, "end": 0, "name": "radius", "start": 0, @@ -2670,6 +3007,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2571, "end": 0, "raw": ".3", "start": 0, @@ -2682,8 +3020,10 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 2575, "end": 0, "key": { + "commentStart": 2575, "end": 0, "name": "offset", "start": 0, @@ -2693,6 +3033,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 2585, "end": 0, "raw": "40", "start": 0, @@ -2703,6 +3044,7 @@ description: Result of parsing exhaust-manifold.kcl "suffix": "None" } }, + "commentStart": 2584, "end": 0, "operator": "-", "start": 0, @@ -2716,6 +3058,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectExpression" }, { + "commentStart": 2591, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2723,11 +3066,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2546, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 2546, "end": 0, "start": 0, "type": "CallExpression", @@ -2736,11 +3081,14 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 2613, "end": 0, "properties": [ { + "commentStart": 2615, "end": 0, "key": { + "commentStart": 2615, "end": 0, "name": "radius", "start": 0, @@ -2749,6 +3097,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2624, "end": 0, "raw": ".9", "start": 0, @@ -2761,8 +3110,10 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 2628, "end": 0, "key": { + "commentStart": 2628, "end": 0, "name": "offset", "start": 0, @@ -2771,6 +3122,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2637, "end": 0, "raw": "80", "start": 0, @@ -2788,6 +3140,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ObjectExpression" }, { + "commentStart": 2643, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2795,11 +3148,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2599, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 2599, "end": 0, "start": 0, "type": "CallExpression", @@ -2808,10 +3163,12 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 2667, "elements": [ { "arguments": [ { + "commentStart": 2682, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2819,11 +3176,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2668, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 2668, "end": 0, "start": 0, "type": "CallExpression", @@ -2832,6 +3191,7 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 2700, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2839,11 +3199,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2686, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 2686, "end": 0, "start": 0, "type": "CallExpression", @@ -2856,6 +3218,7 @@ description: Result of parsing exhaust-manifold.kcl "type": "ArrayExpression" }, { + "commentStart": 2705, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2863,11 +3226,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2651, "end": 0, "name": "tangentialArcTo", "start": 0, "type": "Identifier" }, + "commentStart": 2651, "end": 0, "start": 0, "type": "CallExpression", @@ -2876,11 +3241,13 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [], "callee": { + "commentStart": 2713, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2713, "end": 0, "start": 0, "type": "CallExpression", @@ -2893,14 +3260,17 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 2807, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2816, "elements": [ { + "commentStart": 2817, "end": 0, "raw": "0", "start": 0, @@ -2912,6 +3282,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 2820, "end": 0, "raw": "0", "start": 0, @@ -2932,16 +3303,20 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 2831, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2840, "end": 0, "left": { + "commentStart": 2840, "end": 0, "left": { + "commentStart": 2840, "end": 0, "name": "primaryTubeDiameter", "start": 0, @@ -2950,6 +3325,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "/", "right": { + "commentStart": 2862, "end": 0, "raw": "2", "start": 0, @@ -2966,6 +3342,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "-", "right": { + "commentStart": 2866, "end": 0, "name": "wallThickness", "start": 0, @@ -2979,11 +3356,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2792, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2792, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2991,6 +3370,7 @@ description: Result of parsing exhaust-manifold.kcl "unlabeled": null }, { + "commentStart": 2888, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2998,11 +3378,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2787, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 2787, "end": 0, "start": 0, "type": "CallExpression", @@ -3015,14 +3397,17 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 2916, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2925, "elements": [ { + "commentStart": 2926, "end": 0, "raw": "2", "start": 0, @@ -3034,6 +3419,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 2929, "end": 0, "raw": "0", "start": 0, @@ -3054,16 +3440,20 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 2940, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2949, "end": 0, "left": { + "commentStart": 2949, "end": 0, "left": { + "commentStart": 2949, "end": 0, "name": "primaryTubeDiameter", "start": 0, @@ -3072,6 +3462,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "/", "right": { + "commentStart": 2971, "end": 0, "raw": "2", "start": 0, @@ -3088,6 +3479,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "-", "right": { + "commentStart": 2975, "end": 0, "name": "wallThickness", "start": 0, @@ -3101,11 +3493,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2901, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2901, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3113,6 +3507,7 @@ description: Result of parsing exhaust-manifold.kcl "unlabeled": null }, { + "commentStart": 2997, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3120,11 +3515,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 2896, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 2896, "end": 0, "start": 0, "type": "CallExpression", @@ -3137,14 +3534,17 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 3025, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3034, "elements": [ { + "commentStart": 3035, "end": 0, "raw": "4", "start": 0, @@ -3156,6 +3556,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 3038, "end": 0, "raw": "0", "start": 0, @@ -3176,16 +3577,20 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 3049, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3058, "end": 0, "left": { + "commentStart": 3058, "end": 0, "left": { + "commentStart": 3058, "end": 0, "name": "primaryTubeDiameter", "start": 0, @@ -3194,6 +3599,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "/", "right": { + "commentStart": 3080, "end": 0, "raw": "2", "start": 0, @@ -3210,6 +3616,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "-", "right": { + "commentStart": 3084, "end": 0, "name": "wallThickness", "start": 0, @@ -3223,11 +3630,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 3010, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 3010, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3235,6 +3644,7 @@ description: Result of parsing exhaust-manifold.kcl "unlabeled": null }, { + "commentStart": 3106, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3242,11 +3652,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 3005, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 3005, "end": 0, "start": 0, "type": "CallExpression", @@ -3259,14 +3671,17 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 3134, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3143, "elements": [ { + "commentStart": 3144, "end": 0, "raw": "6", "start": 0, @@ -3278,6 +3693,7 @@ description: Result of parsing exhaust-manifold.kcl } }, { + "commentStart": 3147, "end": 0, "raw": "0", "start": 0, @@ -3298,16 +3714,20 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 3158, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3167, "end": 0, "left": { + "commentStart": 3167, "end": 0, "left": { + "commentStart": 3167, "end": 0, "name": "primaryTubeDiameter", "start": 0, @@ -3316,6 +3736,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "/", "right": { + "commentStart": 3189, "end": 0, "raw": "2", "start": 0, @@ -3332,6 +3753,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "-", "right": { + "commentStart": 3193, "end": 0, "name": "wallThickness", "start": 0, @@ -3345,11 +3767,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 3119, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 3119, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3357,6 +3781,7 @@ description: Result of parsing exhaust-manifold.kcl "unlabeled": null }, { + "commentStart": 3215, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3364,11 +3789,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 3114, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 3114, "end": 0, "start": 0, "type": "CallExpression", @@ -3381,23 +3808,28 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 3282, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3291, "elements": [ { + "commentStart": 3302, "end": 0, "left": { "argument": { + "commentStart": 3303, "end": 0, "name": "primaryTubeDiameter", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3302, "end": 0, "operator": "-", "start": 0, @@ -3406,6 +3838,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "*", "right": { + "commentStart": 3325, "end": 0, "raw": ".6", "start": 0, @@ -3421,15 +3854,18 @@ description: Result of parsing exhaust-manifold.kcl "type": "BinaryExpression" }, { + "commentStart": 3338, "end": 0, "left": { "argument": { + "commentStart": 3339, "end": 0, "name": "primaryTubeDiameter", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3338, "end": 0, "operator": "-", "start": 0, @@ -3438,6 +3874,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "*", "right": { + "commentStart": 3361, "end": 0, "raw": ".6", "start": 0, @@ -3462,14 +3899,17 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 3381, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3390, "end": 0, "left": { + "commentStart": 3390, "end": 0, "raw": "0.25", "start": 0, @@ -3482,6 +3922,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "/", "right": { + "commentStart": 3397, "end": 0, "raw": "2", "start": 0, @@ -3499,11 +3940,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 3267, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 3267, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3511,6 +3954,7 @@ description: Result of parsing exhaust-manifold.kcl "unlabeled": null }, { + "commentStart": 3407, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3518,11 +3962,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 3262, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 3262, "end": 0, "start": 0, "type": "CallExpression", @@ -3535,16 +3981,20 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 3435, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3444, "elements": [ { + "commentStart": 3455, "end": 0, "left": { + "commentStart": 3455, "end": 0, "name": "primaryTubeDiameter", "start": 0, @@ -3553,6 +4003,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "*", "right": { + "commentStart": 3477, "end": 0, "raw": ".6", "start": 0, @@ -3568,8 +4019,10 @@ description: Result of parsing exhaust-manifold.kcl "type": "BinaryExpression" }, { + "commentStart": 3490, "end": 0, "left": { + "commentStart": 3490, "end": 0, "name": "primaryTubeDiameter", "start": 0, @@ -3578,6 +4031,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "*", "right": { + "commentStart": 3512, "end": 0, "raw": ".6", "start": 0, @@ -3602,14 +4056,17 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 3532, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3541, "end": 0, "left": { + "commentStart": 3541, "end": 0, "raw": "0.25", "start": 0, @@ -3622,6 +4079,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "/", "right": { + "commentStart": 3548, "end": 0, "raw": "2", "start": 0, @@ -3639,11 +4097,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 3420, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 3420, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3651,6 +4111,7 @@ description: Result of parsing exhaust-manifold.kcl "unlabeled": null }, { + "commentStart": 3558, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3658,11 +4119,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 3415, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 3415, "end": 0, "start": 0, "type": "CallExpression", @@ -3675,18 +4138,23 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 3586, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3595, "elements": [ { + "commentStart": 3606, "end": 0, "left": { + "commentStart": 3606, "end": 0, "left": { + "commentStart": 3606, "end": 0, "raw": "3", "start": 0, @@ -3699,6 +4167,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "*", "right": { + "commentStart": 3610, "end": 0, "raw": "2", "start": 0, @@ -3715,8 +4184,10 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "-", "right": { + "commentStart": 3615, "end": 0, "left": { + "commentStart": 3615, "end": 0, "name": "primaryTubeDiameter", "start": 0, @@ -3725,6 +4196,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "*", "right": { + "commentStart": 3637, "end": 0, "raw": ".6", "start": 0, @@ -3744,8 +4216,10 @@ description: Result of parsing exhaust-manifold.kcl "type": "BinaryExpression" }, { + "commentStart": 3651, "end": 0, "left": { + "commentStart": 3651, "end": 0, "name": "primaryTubeDiameter", "start": 0, @@ -3754,6 +4228,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "*", "right": { + "commentStart": 3673, "end": 0, "raw": ".6", "start": 0, @@ -3778,14 +4253,17 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 3693, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3702, "end": 0, "left": { + "commentStart": 3702, "end": 0, "raw": "0.25", "start": 0, @@ -3798,6 +4276,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "/", "right": { + "commentStart": 3709, "end": 0, "raw": "2", "start": 0, @@ -3815,11 +4294,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 3571, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 3571, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3827,6 +4308,7 @@ description: Result of parsing exhaust-manifold.kcl "unlabeled": null }, { + "commentStart": 3719, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3834,11 +4316,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 3566, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 3566, "end": 0, "start": 0, "type": "CallExpression", @@ -3851,18 +4335,23 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 3747, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3756, "elements": [ { + "commentStart": 3767, "end": 0, "left": { + "commentStart": 3767, "end": 0, "left": { + "commentStart": 3767, "end": 0, "raw": "3", "start": 0, @@ -3875,6 +4364,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "*", "right": { + "commentStart": 3771, "end": 0, "raw": "2", "start": 0, @@ -3891,8 +4381,10 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "+", "right": { + "commentStart": 3775, "end": 0, "left": { + "commentStart": 3775, "end": 0, "name": "primaryTubeDiameter", "start": 0, @@ -3901,6 +4393,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "*", "right": { + "commentStart": 3797, "end": 0, "raw": ".6", "start": 0, @@ -3920,15 +4413,18 @@ description: Result of parsing exhaust-manifold.kcl "type": "BinaryExpression" }, { + "commentStart": 3810, "end": 0, "left": { "argument": { + "commentStart": 3811, "end": 0, "name": "primaryTubeDiameter", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3810, "end": 0, "operator": "-", "start": 0, @@ -3937,6 +4433,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "*", "right": { + "commentStart": 3833, "end": 0, "raw": ".6", "start": 0, @@ -3961,14 +4458,17 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 3853, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3862, "end": 0, "left": { + "commentStart": 3862, "end": 0, "raw": "0.25", "start": 0, @@ -3981,6 +4481,7 @@ description: Result of parsing exhaust-manifold.kcl }, "operator": "/", "right": { + "commentStart": 3869, "end": 0, "raw": "2", "start": 0, @@ -3998,11 +4499,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 3732, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 3732, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4010,6 +4513,7 @@ description: Result of parsing exhaust-manifold.kcl "unlabeled": null }, { + "commentStart": 3879, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4017,11 +4521,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 3727, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 3727, "end": 0, "start": 0, "type": "CallExpression", @@ -4032,12 +4538,14 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 3941, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3950, "end": 0, "name": "plateHeight", "start": 0, @@ -4047,11 +4555,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 3933, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 3933, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4063,12 +4573,14 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 3983, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3992, "end": 0, "raw": "1.5", "start": 0, @@ -4083,16 +4595,19 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 4004, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4011, "elements": [ { "arguments": [ { + "commentStart": 4042, "end": 0, "name": "seg04", "start": 0, @@ -4101,11 +4616,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 4022, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 4022, "end": 0, "start": 0, "type": "CallExpression", @@ -4114,6 +4631,7 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 4079, "end": 0, "name": "seg07", "start": 0, @@ -4122,11 +4640,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 4059, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 4059, "end": 0, "start": 0, "type": "CallExpression", @@ -4141,11 +4661,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 3968, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 3968, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4157,12 +4679,14 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 4122, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4131, "end": 0, "raw": ".25", "start": 0, @@ -4177,16 +4701,19 @@ description: Result of parsing exhaust-manifold.kcl { "type": "LabeledArg", "label": { + "commentStart": 4143, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4150, "elements": [ { "arguments": [ { + "commentStart": 4181, "end": 0, "name": "seg03", "start": 0, @@ -4195,11 +4722,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 4161, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 4161, "end": 0, "start": 0, "type": "CallExpression", @@ -4208,6 +4737,7 @@ description: Result of parsing exhaust-manifold.kcl { "arguments": [ { + "commentStart": 4218, "end": 0, "name": "seg08", "start": 0, @@ -4216,11 +4746,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 4198, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 4198, "end": 0, "start": 0, "type": "CallExpression", @@ -4235,11 +4767,13 @@ description: Result of parsing exhaust-manifold.kcl } ], "callee": { + "commentStart": 4107, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 4107, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4247,11 +4781,13 @@ description: Result of parsing exhaust-manifold.kcl "unlabeled": null } ], + "commentStart": 1839, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "18": [ { + "commentStart": 2722, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4264,6 +4800,7 @@ description: Result of parsing exhaust-manifold.kcl ], "22": [ { + "commentStart": 3219, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4276,6 +4813,7 @@ description: Result of parsing exhaust-manifold.kcl ], "26": [ { + "commentStart": 3883, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4298,25 +4836,42 @@ description: Result of parsing exhaust-manifold.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Create the mounting flange for the header" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 94, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Exhaust Manifold", + "// A welded exhaust header for an inline 4-cylinder engine", + "", + "", + "// Set Units" + ], "properties": [ { + "commentStart": 103, "end": 0, "key": { + "commentStart": 103, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -4325,6 +4880,7 @@ description: Result of parsing exhaust-manifold.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 123, "end": 0, "name": "in", "start": 0, @@ -4338,100 +4894,16 @@ description: Result of parsing exhaust-manifold.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "3": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create a function to draw each primary tube with specified lengths and angles", - "style": "line" - } - } - ], - "4": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Draw a primary tube for each cylinder with specified lengths and angles", - "style": "line" - } - } - ], - "8": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the mounting flange for the header", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Exhaust Manifold", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A welded exhaust header for an inline 4-cylinder engine", - "style": "line" - } - }, - { + "commentStart": 126, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set Units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define Constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/exhaust-manifold/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/exhaust-manifold/program_memory.snap index dbda90acb..e3e2809f5 100644 --- a/rust/kcl-lib/tests/kcl_samples/exhaust-manifold/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/exhaust-manifold/program_memory.snap @@ -28,6 +28,7 @@ description: Variables in memory after executing exhaust-manifold.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1932, "end": 1938, "start": 1932, "type": "TagDeclarator", @@ -61,6 +62,7 @@ description: Variables in memory after executing exhaust-manifold.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2130, "end": 2136, "start": 2130, "type": "TagDeclarator", @@ -73,6 +75,7 @@ description: Variables in memory after executing exhaust-manifold.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2179, "end": 2185, "start": 2179, "type": "TagDeclarator", @@ -85,6 +88,7 @@ description: Variables in memory after executing exhaust-manifold.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2218, "end": 2224, "start": 2218, "type": "TagDeclarator", @@ -118,6 +122,7 @@ description: Variables in memory after executing exhaust-manifold.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2426, "end": 2432, "start": 2426, "type": "TagDeclarator", @@ -130,6 +135,7 @@ description: Variables in memory after executing exhaust-manifold.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2483, "end": 2489, "start": 2483, "type": "TagDeclarator", @@ -142,6 +148,7 @@ description: Variables in memory after executing exhaust-manifold.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2533, "end": 2539, "start": 2533, "type": "TagDeclarator", @@ -185,6 +192,7 @@ description: Variables in memory after executing exhaust-manifold.kcl -1.25 ], "tag": { + "commentStart": 1932, "end": 1938, "start": 1932, "type": "TagDeclarator", @@ -281,6 +289,7 @@ description: Variables in memory after executing exhaust-manifold.kcl -1.25 ], "tag": { + "commentStart": 2130, "end": 2136, "start": 2130, "type": "TagDeclarator", @@ -305,6 +314,7 @@ description: Variables in memory after executing exhaust-manifold.kcl -1.25 ], "tag": { + "commentStart": 2179, "end": 2185, "start": 2179, "type": "TagDeclarator", @@ -329,6 +339,7 @@ description: Variables in memory after executing exhaust-manifold.kcl 1.35 ], "tag": { + "commentStart": 2218, "end": 2224, "start": 2218, "type": "TagDeclarator", @@ -425,6 +436,7 @@ description: Variables in memory after executing exhaust-manifold.kcl 1.35 ], "tag": { + "commentStart": 2426, "end": 2432, "start": 2426, "type": "TagDeclarator", @@ -449,6 +461,7 @@ description: Variables in memory after executing exhaust-manifold.kcl 1.35 ], "tag": { + "commentStart": 2483, "end": 2489, "start": 2483, "type": "TagDeclarator", @@ -473,6 +486,7 @@ description: Variables in memory after executing exhaust-manifold.kcl -1.25 ], "tag": { + "commentStart": 2533, "end": 2539, "start": 2533, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/kcl_samples/flange/ast.snap b/rust/kcl-lib/tests/kcl_samples/flange/ast.snap index 63c6556e1..b521c61c1 100644 --- a/rust/kcl-lib/tests/kcl_samples/flange/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/flange/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing flange.kcl "Ok": { "body": [ { + "commentStart": 333, "declaration": { + "commentStart": 355, "end": 0, "id": { + "commentStart": 355, "end": 0, "name": "mountingHoleDia", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 373, "end": 0, "raw": ".625", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing flange.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 378, "declaration": { + "commentStart": 378, "end": 0, "id": { + "commentStart": 378, "end": 0, "name": "baseDia", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 388, "end": 0, "raw": "4.625", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing flange.kcl "type": "VariableDeclaration" }, { + "commentStart": 394, "declaration": { + "commentStart": 394, "end": 0, "id": { + "commentStart": 394, "end": 0, "name": "pipeDia", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 404, "end": 0, "raw": "1.25", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing flange.kcl "type": "VariableDeclaration" }, { + "commentStart": 409, "declaration": { + "commentStart": 409, "end": 0, "id": { + "commentStart": 409, "end": 0, "name": "totalThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 426, "end": 0, "raw": "0.813", "start": 0, @@ -122,15 +141,19 @@ description: Result of parsing flange.kcl "type": "VariableDeclaration" }, { + "commentStart": 432, "declaration": { + "commentStart": 432, "end": 0, "id": { + "commentStart": 432, "end": 0, "name": "topTotalDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 451, "end": 0, "raw": "2.313", "start": 0, @@ -151,15 +174,19 @@ description: Result of parsing flange.kcl "type": "VariableDeclaration" }, { + "commentStart": 457, "declaration": { + "commentStart": 457, "end": 0, "id": { + "commentStart": 457, "end": 0, "name": "bottomThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 475, "end": 0, "raw": "0.06", "start": 0, @@ -180,15 +207,19 @@ description: Result of parsing flange.kcl "type": "VariableDeclaration" }, { + "commentStart": 480, "declaration": { + "commentStart": 480, "end": 0, "id": { + "commentStart": 480, "end": 0, "name": "bottomTotalDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 502, "end": 0, "raw": "2.5", "start": 0, @@ -209,15 +240,19 @@ description: Result of parsing flange.kcl "type": "VariableDeclaration" }, { + "commentStart": 506, "declaration": { + "commentStart": 506, "end": 0, "id": { + "commentStart": 506, "end": 0, "name": "mountingHolePlacementDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 538, "end": 0, "raw": "3.5", "start": 0, @@ -238,15 +273,19 @@ description: Result of parsing flange.kcl "type": "VariableDeclaration" }, { + "commentStart": 542, "declaration": { + "commentStart": 542, "end": 0, "id": { + "commentStart": 542, "end": 0, "name": "baseThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 558, "end": 0, "raw": ".625", "start": 0, @@ -267,17 +306,22 @@ description: Result of parsing flange.kcl "type": "VariableDeclaration" }, { + "commentStart": 563, "declaration": { + "commentStart": 563, "end": 0, "id": { + "commentStart": 563, "end": 0, "name": "topTotalThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 583, "end": 0, "left": { + "commentStart": 583, "end": 0, "name": "totalThickness", "start": 0, @@ -286,8 +330,10 @@ description: Result of parsing flange.kcl }, "operator": "-", "right": { + "commentStart": 601, "end": 0, "left": { + "commentStart": 601, "end": 0, "name": "bottomThickness", "start": 0, @@ -296,6 +342,7 @@ description: Result of parsing flange.kcl }, "operator": "+", "right": { + "commentStart": 619, "end": 0, "name": "baseThickness", "start": 0, @@ -320,15 +367,19 @@ description: Result of parsing flange.kcl "type": "VariableDeclaration" }, { + "commentStart": 634, "declaration": { + "commentStart": 634, "end": 0, "id": { + "commentStart": 634, "end": 0, "name": "nHoles", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 643, "end": 0, "raw": "4", "start": 0, @@ -349,10 +400,12 @@ description: Result of parsing flange.kcl "type": "VariableDeclaration" }, { + "commentStart": 644, "end": 0, "expression": { "arguments": [ { + "commentStart": 717, "end": 0, "name": "nHoles", "start": 0, @@ -360,6 +413,7 @@ description: Result of parsing flange.kcl "type": "Identifier" }, { + "commentStart": 725, "end": 0, "raw": "1", "start": 0, @@ -371,6 +425,7 @@ description: Result of parsing flange.kcl } }, { + "commentStart": 728, "end": 0, "raw": "\"nHoles must be greater than 1\"", "start": 0, @@ -380,24 +435,34 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 699, "end": 0, "name": "assertGreaterThan", "start": 0, "type": "Identifier" }, + "commentStart": 699, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "preComments": [ + "", + "", + "// Add assertion so nHoles are always greater than 1" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 760, "declaration": { + "commentStart": 816, "end": 0, "id": { + "commentStart": 816, "end": 0, "name": "circles", "start": 0, @@ -408,6 +473,7 @@ description: Result of parsing flange.kcl { "arguments": [ { + "commentStart": 840, "end": 0, "raw": "'XY'", "start": 0, @@ -417,11 +483,13 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 826, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 826, "end": 0, "start": 0, "type": "CallExpression", @@ -432,16 +500,20 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 866, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 875, "elements": [ { + "commentStart": 876, "end": 0, "left": { + "commentStart": 876, "end": 0, "name": "mountingHolePlacementDiameter", "start": 0, @@ -450,6 +522,7 @@ description: Result of parsing flange.kcl }, "operator": "/", "right": { + "commentStart": 908, "end": 0, "raw": "2", "start": 0, @@ -465,6 +538,7 @@ description: Result of parsing flange.kcl "type": "BinaryExpression" }, { + "commentStart": 911, "end": 0, "raw": "0", "start": 0, @@ -485,14 +559,17 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 922, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 931, "end": 0, "left": { + "commentStart": 931, "end": 0, "name": "mountingHoleDia", "start": 0, @@ -501,6 +578,7 @@ description: Result of parsing flange.kcl }, "operator": "/", "right": { + "commentStart": 949, "end": 0, "raw": "2", "start": 0, @@ -518,11 +596,13 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 851, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 851, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -534,12 +614,14 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 989, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1002, "end": 0, "raw": "360", "start": 0, @@ -554,14 +636,17 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 1014, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1023, "elements": [ { + "commentStart": 1024, "end": 0, "raw": "0", "start": 0, @@ -573,6 +658,7 @@ description: Result of parsing flange.kcl } }, { + "commentStart": 1027, "end": 0, "raw": "0", "start": 0, @@ -593,12 +679,14 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 1038, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1050, "end": 0, "name": "nHoles", "start": 0, @@ -609,12 +697,14 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 1065, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1084, "end": 0, "raw": "true", "start": 0, @@ -625,11 +715,13 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 963, "end": 0, "name": "patternCircular2d", "start": 0, "type": "Identifier" }, + "commentStart": 963, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -637,11 +729,13 @@ description: Result of parsing flange.kcl "unlabeled": null } ], + "commentStart": 826, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 1095, "end": 0, "start": 0, "type": "NonCodeNode", @@ -664,14 +758,22 @@ description: Result of parsing flange.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Create the circular pattern for the mounting holes" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1157, "declaration": { + "commentStart": 1157, "end": 0, "id": { + "commentStart": 1157, "end": 0, "name": "flangeBase", "start": 0, @@ -682,6 +784,7 @@ description: Result of parsing flange.kcl { "arguments": [ { + "commentStart": 1184, "end": 0, "raw": "'XY'", "start": 0, @@ -691,11 +794,13 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 1170, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1170, "end": 0, "start": 0, "type": "CallExpression", @@ -706,14 +811,17 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 1210, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1219, "elements": [ { + "commentStart": 1220, "end": 0, "raw": "0", "start": 0, @@ -725,6 +833,7 @@ description: Result of parsing flange.kcl } }, { + "commentStart": 1223, "end": 0, "raw": "0", "start": 0, @@ -745,14 +854,17 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 1234, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1243, "end": 0, "left": { + "commentStart": 1243, "end": 0, "name": "baseDia", "start": 0, @@ -761,6 +873,7 @@ description: Result of parsing flange.kcl }, "operator": "/", "right": { + "commentStart": 1253, "end": 0, "raw": "2", "start": 0, @@ -778,11 +891,13 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 1195, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1195, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -792,6 +907,7 @@ description: Result of parsing flange.kcl { "arguments": [ { + "commentStart": 1272, "end": 0, "name": "circles", "start": 0, @@ -799,6 +915,7 @@ description: Result of parsing flange.kcl "type": "Identifier" }, { + "commentStart": 1281, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -806,11 +923,13 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 1267, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 1267, "end": 0, "start": 0, "type": "CallExpression", @@ -821,12 +940,14 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 1297, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1306, "end": 0, "name": "baseThickness", "start": 0, @@ -836,11 +957,13 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 1289, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1289, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -848,11 +971,13 @@ description: Result of parsing flange.kcl "unlabeled": null } ], + "commentStart": 1170, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "3": [ { + "commentStart": 1320, "end": 0, "start": 0, "type": "NonCodeNode", @@ -880,9 +1005,12 @@ description: Result of parsing flange.kcl "type": "VariableDeclaration" }, { + "commentStart": 1376, "declaration": { + "commentStart": 1376, "end": 0, "id": { + "commentStart": 1376, "end": 0, "name": "topExtrusion", "start": 0, @@ -893,6 +1021,7 @@ description: Result of parsing flange.kcl { "arguments": [ { + "commentStart": 1405, "end": 0, "name": "flangeBase", "start": 0, @@ -900,6 +1029,7 @@ description: Result of parsing flange.kcl "type": "Identifier" }, { + "commentStart": 1417, "end": 0, "raw": "'end'", "start": 0, @@ -909,11 +1039,13 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 1391, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1391, "end": 0, "start": 0, "type": "CallExpression", @@ -924,14 +1056,17 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 1444, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1453, "elements": [ { + "commentStart": 1454, "end": 0, "raw": "0", "start": 0, @@ -943,6 +1078,7 @@ description: Result of parsing flange.kcl } }, { + "commentStart": 1457, "end": 0, "raw": "0", "start": 0, @@ -963,14 +1099,17 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 1468, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1477, "end": 0, "left": { + "commentStart": 1477, "end": 0, "name": "topTotalDiameter", "start": 0, @@ -979,6 +1118,7 @@ description: Result of parsing flange.kcl }, "operator": "/", "right": { + "commentStart": 1496, "end": 0, "raw": "2", "start": 0, @@ -996,11 +1136,13 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 1429, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1429, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1012,12 +1154,14 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 1518, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1527, "end": 0, "name": "topTotalThickness", "start": 0, @@ -1027,11 +1171,13 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 1510, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1510, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1039,11 +1185,13 @@ description: Result of parsing flange.kcl "unlabeled": null } ], + "commentStart": 1391, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 1545, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1071,9 +1219,12 @@ description: Result of parsing flange.kcl "type": "VariableDeclaration" }, { + "commentStart": 1604, "declaration": { + "commentStart": 1604, "end": 0, "id": { + "commentStart": 1604, "end": 0, "name": "bottomExtrusion", "start": 0, @@ -1084,6 +1235,7 @@ description: Result of parsing flange.kcl { "arguments": [ { + "commentStart": 1636, "end": 0, "name": "flangeBase", "start": 0, @@ -1091,6 +1243,7 @@ description: Result of parsing flange.kcl "type": "Identifier" }, { + "commentStart": 1648, "end": 0, "raw": "'start'", "start": 0, @@ -1100,11 +1253,13 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 1622, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1622, "end": 0, "start": 0, "type": "CallExpression", @@ -1115,14 +1270,17 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 1677, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1686, "elements": [ { + "commentStart": 1687, "end": 0, "raw": "0", "start": 0, @@ -1134,6 +1292,7 @@ description: Result of parsing flange.kcl } }, { + "commentStart": 1690, "end": 0, "raw": "0", "start": 0, @@ -1154,14 +1313,17 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 1701, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1710, "end": 0, "left": { + "commentStart": 1710, "end": 0, "name": "bottomTotalDiameter", "start": 0, @@ -1170,6 +1332,7 @@ description: Result of parsing flange.kcl }, "operator": "/", "right": { + "commentStart": 1732, "end": 0, "raw": "2", "start": 0, @@ -1187,11 +1350,13 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 1662, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1662, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1203,12 +1368,14 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 1754, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1763, "end": 0, "name": "bottomThickness", "start": 0, @@ -1218,11 +1385,13 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 1746, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1746, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1230,11 +1399,13 @@ description: Result of parsing flange.kcl "unlabeled": null } ], + "commentStart": 1622, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 1779, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1262,9 +1433,12 @@ description: Result of parsing flange.kcl "type": "VariableDeclaration" }, { + "commentStart": 1819, "declaration": { + "commentStart": 1819, "end": 0, "id": { + "commentStart": 1819, "end": 0, "name": "pipeHole", "start": 0, @@ -1275,6 +1449,7 @@ description: Result of parsing flange.kcl { "arguments": [ { + "commentStart": 1844, "end": 0, "name": "topExtrusion", "start": 0, @@ -1282,6 +1457,7 @@ description: Result of parsing flange.kcl "type": "Identifier" }, { + "commentStart": 1858, "end": 0, "raw": "'end'", "start": 0, @@ -1291,11 +1467,13 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 1830, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1830, "end": 0, "start": 0, "type": "CallExpression", @@ -1306,14 +1484,17 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 1877, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1886, "elements": [ { + "commentStart": 1887, "end": 0, "raw": "0", "start": 0, @@ -1325,6 +1506,7 @@ description: Result of parsing flange.kcl } }, { + "commentStart": 1890, "end": 0, "raw": "0", "start": 0, @@ -1345,14 +1527,17 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 1894, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1903, "end": 0, "left": { + "commentStart": 1903, "end": 0, "name": "pipeDia", "start": 0, @@ -1361,6 +1546,7 @@ description: Result of parsing flange.kcl }, "operator": "/", "right": { + "commentStart": 1911, "end": 0, "raw": "2", "start": 0, @@ -1378,11 +1564,13 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 1870, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1870, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1394,6 +1582,7 @@ description: Result of parsing flange.kcl { "type": "LabeledArg", "label": { + "commentStart": 1930, "end": 0, "name": "length", "start": 0, @@ -1401,10 +1590,13 @@ description: Result of parsing flange.kcl }, "arg": { "argument": { + "commentStart": 1941, "end": 0, "left": { + "commentStart": 1941, "end": 0, "left": { + "commentStart": 1941, "end": 0, "name": "topTotalThickness", "start": 0, @@ -1413,6 +1605,7 @@ description: Result of parsing flange.kcl }, "operator": "+", "right": { + "commentStart": 1961, "end": 0, "name": "baseThickness", "start": 0, @@ -1425,6 +1618,7 @@ description: Result of parsing flange.kcl }, "operator": "+", "right": { + "commentStart": 1977, "end": 0, "name": "bottomThickness", "start": 0, @@ -1435,6 +1629,7 @@ description: Result of parsing flange.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1939, "end": 0, "operator": "-", "start": 0, @@ -1444,16 +1639,19 @@ description: Result of parsing flange.kcl } ], "callee": { + "commentStart": 1919, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1919, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1927, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1461,6 +1659,7 @@ description: Result of parsing flange.kcl } } ], + "commentStart": 1830, "end": 0, "start": 0, "type": "PipeExpression", @@ -1476,20 +1675,32 @@ description: Result of parsing flange.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 301, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Flange", + "// A flange is a flat rim, collar, or rib, typically forged or cast, that is used to strengthen an object, guide it, or attach it to another object. Flanges are known for their use in various applications, including piping, plumbing, and mechanical engineering, among others.", + "", + "", + "// Set units" + ], "properties": [ { + "commentStart": 310, "end": 0, "key": { + "commentStart": 310, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -1498,6 +1709,7 @@ description: Result of parsing flange.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 330, "end": 0, "name": "in", "start": 0, @@ -1511,88 +1723,16 @@ description: Result of parsing flange.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "10": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Add assertion so nHoles are always greater than 1", - "style": "line" - } - } - ], - "11": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the circular pattern for the mounting holes", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Flange", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A flange is a flat rim, collar, or rib, typically forged or cast, that is used to strengthen an object, guide it, or attach it to another object. Flanges are known for their use in various applications, including piping, plumbing, and mechanical engineering, among others.", - "style": "line" - } - }, - { + "commentStart": 333, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/focusrite-scarlett-mounting-bracket/ast.snap b/rust/kcl-lib/tests/kcl_samples/focusrite-scarlett-mounting-bracket/ast.snap index 811ca3038..a98cfe1fa 100644 --- a/rust/kcl-lib/tests/kcl_samples/focusrite-scarlett-mounting-bracket/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/focusrite-scarlett-mounting-bracket/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "Ok": { "body": [ { + "commentStart": 357, "declaration": { + "commentStart": 385, "end": 0, "id": { + "commentStart": 385, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 394, "end": 0, "raw": "6.0", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// define constants in mm" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 398, "declaration": { + "commentStart": 398, "end": 0, "id": { + "commentStart": 398, "end": 0, "name": "width", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 406, "end": 0, "raw": "144.0", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 412, "declaration": { + "commentStart": 412, "end": 0, "id": { + "commentStart": 412, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 421, "end": 0, "raw": "80.0", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 426, "declaration": { + "commentStart": 426, "end": 0, "id": { + "commentStart": 426, "end": 0, "name": "depth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 434, "end": 0, "raw": "45.0", "start": 0, @@ -122,15 +141,19 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 439, "declaration": { + "commentStart": 439, "end": 0, "id": { + "commentStart": 439, "end": 0, "name": "thk", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 445, "end": 0, "raw": "4", "start": 0, @@ -151,15 +174,19 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 447, "declaration": { + "commentStart": 447, "end": 0, "id": { + "commentStart": 447, "end": 0, "name": "holeDiam", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 458, "end": 0, "raw": "5", "start": 0, @@ -180,15 +207,19 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 460, "declaration": { + "commentStart": 460, "end": 0, "id": { + "commentStart": 460, "end": 0, "name": "tabLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 472, "end": 0, "raw": "25", "start": 0, @@ -209,15 +240,19 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 475, "declaration": { + "commentStart": 475, "end": 0, "id": { + "commentStart": 475, "end": 0, "name": "tabWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 486, "end": 0, "raw": "12", "start": 0, @@ -238,15 +273,19 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 489, "declaration": { + "commentStart": 489, "end": 0, "id": { + "commentStart": 489, "end": 0, "name": "tabThk", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 498, "end": 0, "raw": "4", "start": 0, @@ -267,9 +306,12 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 499, "declaration": { + "commentStart": 539, "end": 0, "id": { + "commentStart": 539, "end": 0, "name": "rectShape", "start": 0, @@ -279,9 +321,12 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "body": { "body": [ { + "commentStart": 564, "declaration": { + "commentStart": 564, "end": 0, "id": { + "commentStart": 564, "end": 0, "name": "rr", "start": 0, @@ -292,6 +337,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 583, "end": 0, "raw": "'xy'", "start": 0, @@ -301,11 +347,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 569, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 569, "end": 0, "start": 0, "type": "CallExpression", @@ -314,13 +362,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 611, "elements": [ { + "commentStart": 612, "end": 0, "left": { + "commentStart": 612, "computed": false, "end": 0, "object": { + "commentStart": 612, "end": 0, "name": "pos", "start": 0, @@ -328,6 +380,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "Identifier" }, "property": { + "commentStart": 616, "end": 0, "raw": "0", "start": 0, @@ -344,8 +397,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "-", "right": { + "commentStart": 622, "end": 0, "left": { + "commentStart": 622, "end": 0, "name": "w", "start": 0, @@ -354,6 +409,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 626, "end": 0, "raw": "2", "start": 0, @@ -373,11 +429,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 630, "end": 0, "left": { + "commentStart": 630, "computed": false, "end": 0, "object": { + "commentStart": 630, "end": 0, "name": "pos", "start": 0, @@ -385,6 +444,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "Identifier" }, "property": { + "commentStart": 634, "end": 0, "raw": "1", "start": 0, @@ -401,8 +461,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "-", "right": { + "commentStart": 640, "end": 0, "left": { + "commentStart": 640, "end": 0, "name": "l", "start": 0, @@ -411,6 +473,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 644, "end": 0, "raw": "2", "start": 0, @@ -436,6 +499,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "ArrayExpression" }, { + "commentStart": 649, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -443,11 +507,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 596, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 596, "end": 0, "start": 0, "type": "CallExpression", @@ -458,19 +524,24 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 664, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 678, "elements": [ { + "commentStart": 679, "end": 0, "left": { + "commentStart": 679, "computed": false, "end": 0, "object": { + "commentStart": 679, "end": 0, "name": "pos", "start": 0, @@ -478,6 +549,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "Identifier" }, "property": { + "commentStart": 683, "end": 0, "raw": "0", "start": 0, @@ -494,8 +566,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 688, "end": 0, "left": { + "commentStart": 688, "end": 0, "name": "w", "start": 0, @@ -504,6 +578,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 692, "end": 0, "raw": "2", "start": 0, @@ -523,11 +598,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 695, "end": 0, "left": { + "commentStart": 695, "computed": false, "end": 0, "object": { + "commentStart": 695, "end": 0, "name": "pos", "start": 0, @@ -535,6 +613,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "Identifier" }, "property": { + "commentStart": 699, "end": 0, "raw": "1", "start": 0, @@ -551,8 +630,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "-", "right": { + "commentStart": 705, "end": 0, "left": { + "commentStart": 705, "end": 0, "name": "l", "start": 0, @@ -561,6 +642,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 709, "end": 0, "raw": "2", "start": 0, @@ -589,12 +671,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 714, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 720, "end": 0, "start": 0, "type": "TagDeclarator", @@ -604,11 +688,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 659, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 659, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -620,19 +706,24 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 741, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 755, "elements": [ { + "commentStart": 756, "end": 0, "left": { + "commentStart": 756, "computed": false, "end": 0, "object": { + "commentStart": 756, "end": 0, "name": "pos", "start": 0, @@ -640,6 +731,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "Identifier" }, "property": { + "commentStart": 760, "end": 0, "raw": "0", "start": 0, @@ -656,8 +748,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 765, "end": 0, "left": { + "commentStart": 765, "end": 0, "name": "w", "start": 0, @@ -666,6 +760,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 769, "end": 0, "raw": "2", "start": 0, @@ -685,11 +780,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 772, "end": 0, "left": { + "commentStart": 772, "computed": false, "end": 0, "object": { + "commentStart": 772, "end": 0, "name": "pos", "start": 0, @@ -697,6 +795,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "Identifier" }, "property": { + "commentStart": 776, "end": 0, "raw": "1", "start": 0, @@ -713,8 +812,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 781, "end": 0, "left": { + "commentStart": 781, "end": 0, "name": "l", "start": 0, @@ -723,6 +824,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 785, "end": 0, "raw": "2", "start": 0, @@ -751,12 +853,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 789, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 795, "end": 0, "start": 0, "type": "TagDeclarator", @@ -766,11 +870,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 736, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 736, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -782,19 +888,24 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 816, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 830, "elements": [ { + "commentStart": 831, "end": 0, "left": { + "commentStart": 831, "computed": false, "end": 0, "object": { + "commentStart": 831, "end": 0, "name": "pos", "start": 0, @@ -802,6 +913,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "Identifier" }, "property": { + "commentStart": 835, "end": 0, "raw": "0", "start": 0, @@ -818,8 +930,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "-", "right": { + "commentStart": 841, "end": 0, "left": { + "commentStart": 841, "end": 0, "name": "w", "start": 0, @@ -828,6 +942,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 845, "end": 0, "raw": "2", "start": 0, @@ -847,11 +962,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 849, "end": 0, "left": { + "commentStart": 849, "computed": false, "end": 0, "object": { + "commentStart": 849, "end": 0, "name": "pos", "start": 0, @@ -859,6 +977,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "Identifier" }, "property": { + "commentStart": 853, "end": 0, "raw": "1", "start": 0, @@ -875,8 +994,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 858, "end": 0, "left": { + "commentStart": 858, "end": 0, "name": "l", "start": 0, @@ -885,6 +1006,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 862, "end": 0, "raw": "2", "start": 0, @@ -913,12 +1035,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 866, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 872, "end": 0, "start": 0, "type": "TagDeclarator", @@ -928,11 +1052,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 811, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 811, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -944,12 +1070,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 894, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 900, "end": 0, "start": 0, "type": "TagDeclarator", @@ -959,11 +1087,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 888, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 888, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -971,6 +1101,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "unlabeled": null } ], + "commentStart": 569, "end": 0, "start": 0, "type": "PipeExpression", @@ -987,26 +1118,31 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, { "argument": { + "commentStart": 918, "end": 0, "name": "rr", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 911, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 560, "end": 0, "start": 0 }, + "commentStart": 548, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 549, "end": 0, "name": "pos", "start": 0, @@ -1016,6 +1152,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "Parameter", "identifier": { + "commentStart": 554, "end": 0, "name": "w", "start": 0, @@ -1025,6 +1162,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "Parameter", "identifier": { + "commentStart": 557, "end": 0, "name": "l", "start": 0, @@ -1041,25 +1179,36 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// define a rectangular shape func" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 922, "declaration": { + "commentStart": 952, "end": 0, "id": { + "commentStart": 952, "end": 0, "name": "bracketPlane", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 967, "end": 0, "properties": [ { + "commentStart": 971, "end": 0, "key": { + "commentStart": 971, "end": 0, "name": "plane", "start": 0, @@ -1068,11 +1217,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 979, "end": 0, "properties": [ { + "commentStart": 985, "end": 0, "key": { + "commentStart": 985, "end": 0, "name": "origin", "start": 0, @@ -1081,11 +1233,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 994, "end": 0, "properties": [ { + "commentStart": 996, "end": 0, "key": { + "commentStart": 996, "end": 0, "name": "x", "start": 0, @@ -1094,6 +1249,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1000, "end": 0, "raw": "0", "start": 0, @@ -1106,8 +1262,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 1003, "end": 0, "key": { + "commentStart": 1003, "end": 0, "name": "y", "start": 0, @@ -1116,10 +1274,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1007, "end": 0, "left": { + "commentStart": 1007, "end": 0, "left": { + "commentStart": 1007, "end": 0, "name": "length", "start": 0, @@ -1128,6 +1289,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 1016, "end": 0, "raw": "2", "start": 0, @@ -1144,6 +1306,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 1020, "end": 0, "name": "thk", "start": 0, @@ -1156,8 +1319,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 1025, "end": 0, "key": { + "commentStart": 1025, "end": 0, "name": "z", "start": 0, @@ -1166,6 +1331,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1029, "end": 0, "raw": "0", "start": 0, @@ -1184,8 +1350,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 1038, "end": 0, "key": { + "commentStart": 1038, "end": 0, "name": "xAxis", "start": 0, @@ -1194,11 +1362,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1046, "end": 0, "properties": [ { + "commentStart": 1048, "end": 0, "key": { + "commentStart": 1048, "end": 0, "name": "x", "start": 0, @@ -1207,6 +1378,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1052, "end": 0, "raw": "1", "start": 0, @@ -1219,8 +1391,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 1055, "end": 0, "key": { + "commentStart": 1055, "end": 0, "name": "y", "start": 0, @@ -1229,6 +1403,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1059, "end": 0, "raw": "0", "start": 0, @@ -1241,8 +1416,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 1062, "end": 0, "key": { + "commentStart": 1062, "end": 0, "name": "z", "start": 0, @@ -1251,6 +1428,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1066, "end": 0, "raw": "0", "start": 0, @@ -1269,8 +1447,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 1075, "end": 0, "key": { + "commentStart": 1075, "end": 0, "name": "yAxis", "start": 0, @@ -1279,11 +1459,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1083, "end": 0, "properties": [ { + "commentStart": 1085, "end": 0, "key": { + "commentStart": 1085, "end": 0, "name": "x", "start": 0, @@ -1292,6 +1475,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1089, "end": 0, "raw": "0", "start": 0, @@ -1304,8 +1488,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 1092, "end": 0, "key": { + "commentStart": 1092, "end": 0, "name": "y", "start": 0, @@ -1314,6 +1500,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1096, "end": 0, "raw": "0", "start": 0, @@ -1326,8 +1513,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 1099, "end": 0, "key": { + "commentStart": 1099, "end": 0, "name": "z", "start": 0, @@ -1336,6 +1525,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1103, "end": 0, "raw": "1", "start": 0, @@ -1354,8 +1544,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 1112, "end": 0, "key": { + "commentStart": 1112, "end": 0, "name": "zAxis", "start": 0, @@ -1364,11 +1556,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1120, "end": 0, "properties": [ { + "commentStart": 1122, "end": 0, "key": { + "commentStart": 1122, "end": 0, "name": "x", "start": 0, @@ -1377,6 +1572,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1126, "end": 0, "raw": "0", "start": 0, @@ -1389,8 +1585,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 1129, "end": 0, "key": { + "commentStart": 1129, "end": 0, "name": "y", "start": 0, @@ -1400,6 +1598,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1134, "end": 0, "raw": "1", "start": 0, @@ -1410,6 +1609,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "suffix": "None" } }, + "commentStart": 1133, "end": 0, "operator": "-", "start": 0, @@ -1418,8 +1618,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 1137, "end": 0, "key": { + "commentStart": 1137, "end": 0, "name": "z", "start": 0, @@ -1428,6 +1630,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1141, "end": 0, "raw": "0", "start": 0, @@ -1461,14 +1664,22 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// define the bracket plane" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1150, "declaration": { + "commentStart": 1199, "end": 0, "id": { + "commentStart": 1199, "end": 0, "name": "bracketSketch", "start": 0, @@ -1478,9 +1689,12 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "body": { "body": [ { + "commentStart": 1226, "declaration": { + "commentStart": 1226, "end": 0, "id": { + "commentStart": 1226, "end": 0, "name": "s", "start": 0, @@ -1491,6 +1705,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 1244, "end": 0, "name": "bracketPlane", "start": 0, @@ -1499,11 +1714,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 1230, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1230, "end": 0, "start": 0, "type": "CallExpression", @@ -1512,19 +1729,24 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 1280, "elements": [ { + "commentStart": 1281, "end": 0, "left": { + "commentStart": 1281, "end": 0, "left": { "argument": { + "commentStart": 1282, "end": 0, "name": "w", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1281, "end": 0, "operator": "-", "start": 0, @@ -1533,6 +1755,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 1286, "end": 0, "raw": "2", "start": 0, @@ -1549,6 +1772,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "-", "right": { + "commentStart": 1290, "end": 0, "name": "t", "start": 0, @@ -1560,8 +1784,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 1293, "end": 0, "left": { + "commentStart": 1293, "end": 0, "name": "d", "start": 0, @@ -1570,6 +1796,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 1297, "end": 0, "name": "t", "start": 0, @@ -1587,6 +1814,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "ArrayExpression" }, { + "commentStart": 1301, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1594,11 +1822,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 1265, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1265, "end": 0, "start": 0, "type": "CallExpression", @@ -1609,25 +1839,31 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1316, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1330, "elements": [ { + "commentStart": 1331, "end": 0, "left": { + "commentStart": 1331, "end": 0, "left": { "argument": { + "commentStart": 1332, "end": 0, "name": "w", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1331, "end": 0, "operator": "-", "start": 0, @@ -1636,6 +1872,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 1336, "end": 0, "raw": "2", "start": 0, @@ -1652,6 +1889,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "-", "right": { + "commentStart": 1340, "end": 0, "name": "t", "start": 0, @@ -1664,12 +1902,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, { "argument": { + "commentStart": 1344, "end": 0, "name": "t", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1343, "end": 0, "operator": "-", "start": 0, @@ -1686,12 +1926,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1348, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1354, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1701,11 +1943,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 1311, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1311, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1717,18 +1961,23 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1374, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1388, "elements": [ { + "commentStart": 1389, "end": 0, "left": { + "commentStart": 1389, "end": 0, "left": { + "commentStart": 1389, "end": 0, "name": "w", "start": 0, @@ -1737,6 +1986,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 1393, "end": 0, "raw": "2", "start": 0, @@ -1753,6 +2003,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 1397, "end": 0, "name": "t", "start": 0, @@ -1765,12 +2016,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, { "argument": { + "commentStart": 1401, "end": 0, "name": "t", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1400, "end": 0, "operator": "-", "start": 0, @@ -1787,12 +2040,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1405, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1411, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1802,11 +2057,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 1369, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1369, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1818,18 +2075,23 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1431, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1445, "elements": [ { + "commentStart": 1446, "end": 0, "left": { + "commentStart": 1446, "end": 0, "left": { + "commentStart": 1446, "end": 0, "name": "w", "start": 0, @@ -1838,6 +2100,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 1450, "end": 0, "raw": "2", "start": 0, @@ -1854,6 +2117,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 1454, "end": 0, "name": "t", "start": 0, @@ -1865,8 +2129,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 1457, "end": 0, "left": { + "commentStart": 1457, "end": 0, "name": "d", "start": 0, @@ -1875,6 +2141,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 1461, "end": 0, "name": "t", "start": 0, @@ -1895,12 +2162,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1465, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1471, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1910,11 +2179,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 1426, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1426, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1926,16 +2197,20 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1491, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1505, "elements": [ { + "commentStart": 1506, "end": 0, "left": { + "commentStart": 1506, "end": 0, "name": "w", "start": 0, @@ -1944,6 +2219,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 1510, "end": 0, "raw": "2", "start": 0, @@ -1959,8 +2235,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 1513, "end": 0, "left": { + "commentStart": 1513, "end": 0, "name": "d", "start": 0, @@ -1969,6 +2247,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 1517, "end": 0, "name": "t", "start": 0, @@ -1989,12 +2268,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1521, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1527, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2004,11 +2285,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 1486, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1486, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2020,16 +2303,20 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1547, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1561, "elements": [ { + "commentStart": 1562, "end": 0, "left": { + "commentStart": 1562, "end": 0, "name": "w", "start": 0, @@ -2038,6 +2325,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 1566, "end": 0, "raw": "2", "start": 0, @@ -2053,6 +2341,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 1569, "end": 0, "raw": "0", "start": 0, @@ -2073,12 +2362,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1573, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1579, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2088,11 +2379,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 1542, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1542, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2104,23 +2397,28 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1599, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1613, "elements": [ { + "commentStart": 1614, "end": 0, "left": { "argument": { + "commentStart": 1615, "end": 0, "name": "w", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1614, "end": 0, "operator": "-", "start": 0, @@ -2129,6 +2427,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 1619, "end": 0, "raw": "2", "start": 0, @@ -2144,6 +2443,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 1622, "end": 0, "raw": "0", "start": 0, @@ -2164,12 +2464,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1626, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1632, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2179,11 +2481,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 1594, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1594, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2195,23 +2499,28 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1652, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1666, "elements": [ { + "commentStart": 1667, "end": 0, "left": { "argument": { + "commentStart": 1668, "end": 0, "name": "w", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1667, "end": 0, "operator": "-", "start": 0, @@ -2220,6 +2529,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 1672, "end": 0, "raw": "2", "start": 0, @@ -2235,8 +2545,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 1675, "end": 0, "left": { + "commentStart": 1675, "end": 0, "name": "d", "start": 0, @@ -2245,6 +2557,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 1679, "end": 0, "name": "t", "start": 0, @@ -2265,12 +2578,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1683, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1689, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2280,11 +2595,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 1647, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1647, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2296,12 +2613,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1710, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1716, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2311,11 +2630,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 1704, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1704, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2323,6 +2644,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "unlabeled": null } ], + "commentStart": 1230, "end": 0, "start": 0, "type": "PipeExpression", @@ -2339,26 +2661,31 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, { "argument": { + "commentStart": 1733, "end": 0, "name": "s", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1726, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 1222, "end": 0, "start": 0 }, + "commentStart": 1212, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 1213, "end": 0, "name": "w", "start": 0, @@ -2368,6 +2695,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "Parameter", "identifier": { + "commentStart": 1216, "end": 0, "name": "d", "start": 0, @@ -2377,6 +2705,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "Parameter", "identifier": { + "commentStart": 1219, "end": 0, "name": "t", "start": 0, @@ -2393,14 +2722,22 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// build the bracket sketch around the body" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1736, "declaration": { + "commentStart": 1771, "end": 0, "id": { + "commentStart": 1771, "end": 0, "name": "bs", "start": 0, @@ -2409,6 +2746,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "init": { "arguments": [ { + "commentStart": 1790, "end": 0, "name": "width", "start": 0, @@ -2416,6 +2754,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "Identifier" }, { + "commentStart": 1797, "end": 0, "name": "depth", "start": 0, @@ -2423,6 +2762,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "Identifier" }, { + "commentStart": 1804, "end": 0, "name": "thk", "start": 0, @@ -2431,11 +2771,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 1776, "end": 0, "name": "bracketSketch", "start": 0, "type": "Identifier" }, + "commentStart": 1776, "end": 0, "start": 0, "type": "CallExpression", @@ -2446,14 +2788,22 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// build the body of the bracket" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1809, "declaration": { + "commentStart": 1809, "end": 0, "id": { + "commentStart": 1809, "end": 0, "name": "bracketBody", "start": 0, @@ -2462,6 +2812,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "init": { "body": [ { + "commentStart": 1823, "end": 0, "name": "bs", "start": 0, @@ -2473,14 +2824,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1839, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1848, "end": 0, "left": { + "commentStart": 1848, "end": 0, "name": "length", "start": 0, @@ -2489,8 +2843,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 1857, "end": 0, "left": { + "commentStart": 1857, "end": 0, "raw": "2", "start": 0, @@ -2503,6 +2859,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "*", "right": { + "commentStart": 1861, "end": 0, "name": "thk", "start": 0, @@ -2520,11 +2877,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 1831, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1831, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2536,12 +2895,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1886, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1895, "end": 0, "name": "radius", "start": 0, @@ -2552,22 +2913,27 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1910, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1917, "elements": [ { "arguments": [ { + "commentStart": 1952, "computed": false, "end": 0, "object": { + "commentStart": 1952, "computed": false, "end": 0, "object": { + "commentStart": 1952, "end": 0, "name": "bs", "start": 0, @@ -2575,6 +2941,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "Identifier" }, "property": { + "commentStart": 1955, "end": 0, "name": "tags", "start": 0, @@ -2586,6 +2953,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "MemberExpression" }, "property": { + "commentStart": 1960, "end": 0, "name": "edge7", "start": 0, @@ -2598,11 +2966,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 1928, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1928, "end": 0, "start": 0, "type": "CallExpression", @@ -2611,12 +2981,15 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 2001, "computed": false, "end": 0, "object": { + "commentStart": 2001, "computed": false, "end": 0, "object": { + "commentStart": 2001, "end": 0, "name": "bs", "start": 0, @@ -2624,6 +2997,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "Identifier" }, "property": { + "commentStart": 2004, "end": 0, "name": "tags", "start": 0, @@ -2635,6 +3009,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "MemberExpression" }, "property": { + "commentStart": 2009, "end": 0, "name": "edge2", "start": 0, @@ -2647,11 +3022,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 1977, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1977, "end": 0, "start": 0, "type": "CallExpression", @@ -2660,12 +3037,15 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 2050, "computed": false, "end": 0, "object": { + "commentStart": 2050, "computed": false, "end": 0, "object": { + "commentStart": 2050, "end": 0, "name": "bs", "start": 0, @@ -2673,6 +3053,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "Identifier" }, "property": { + "commentStart": 2053, "end": 0, "name": "tags", "start": 0, @@ -2684,6 +3065,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "MemberExpression" }, "property": { + "commentStart": 2058, "end": 0, "name": "edge3", "start": 0, @@ -2696,11 +3078,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 2026, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 2026, "end": 0, "start": 0, "type": "CallExpression", @@ -2709,12 +3093,15 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 2099, "computed": false, "end": 0, "object": { + "commentStart": 2099, "computed": false, "end": 0, "object": { + "commentStart": 2099, "end": 0, "name": "bs", "start": 0, @@ -2722,6 +3109,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "Identifier" }, "property": { + "commentStart": 2102, "end": 0, "name": "tags", "start": 0, @@ -2733,6 +3121,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "MemberExpression" }, "property": { + "commentStart": 2107, "end": 0, "name": "edge6", "start": 0, @@ -2745,11 +3134,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 2075, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 2075, "end": 0, "start": 0, "type": "CallExpression", @@ -2764,11 +3155,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 1871, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1871, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2776,11 +3169,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "unlabeled": null } ], + "commentStart": 1823, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 2129, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2808,20 +3203,26 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 2155, "declaration": { + "commentStart": 2155, "end": 0, "id": { + "commentStart": 2155, "end": 0, "name": "tabPlane", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 2166, "end": 0, "properties": [ { + "commentStart": 2170, "end": 0, "key": { + "commentStart": 2170, "end": 0, "name": "plane", "start": 0, @@ -2830,11 +3231,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2178, "end": 0, "properties": [ { + "commentStart": 2184, "end": 0, "key": { + "commentStart": 2184, "end": 0, "name": "origin", "start": 0, @@ -2843,11 +3247,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2193, "end": 0, "properties": [ { + "commentStart": 2195, "end": 0, "key": { + "commentStart": 2195, "end": 0, "name": "x", "start": 0, @@ -2856,6 +3263,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2199, "end": 0, "raw": "0", "start": 0, @@ -2868,8 +3276,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 2202, "end": 0, "key": { + "commentStart": 2202, "end": 0, "name": "y", "start": 0, @@ -2878,6 +3288,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2206, "end": 0, "raw": "0", "start": 0, @@ -2890,8 +3301,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 2209, "end": 0, "key": { + "commentStart": 2209, "end": 0, "name": "z", "start": 0, @@ -2900,8 +3313,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2213, "end": 0, "left": { + "commentStart": 2213, "end": 0, "name": "depth", "start": 0, @@ -2910,6 +3325,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 2221, "end": 0, "name": "thk", "start": 0, @@ -2928,8 +3344,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 2232, "end": 0, "key": { + "commentStart": 2232, "end": 0, "name": "xAxis", "start": 0, @@ -2938,11 +3356,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2240, "end": 0, "properties": [ { + "commentStart": 2242, "end": 0, "key": { + "commentStart": 2242, "end": 0, "name": "x", "start": 0, @@ -2951,6 +3372,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2246, "end": 0, "raw": "1", "start": 0, @@ -2963,8 +3385,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 2249, "end": 0, "key": { + "commentStart": 2249, "end": 0, "name": "y", "start": 0, @@ -2973,6 +3397,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2253, "end": 0, "raw": "0", "start": 0, @@ -2985,8 +3410,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 2256, "end": 0, "key": { + "commentStart": 2256, "end": 0, "name": "z", "start": 0, @@ -2995,6 +3422,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2260, "end": 0, "raw": "0", "start": 0, @@ -3013,8 +3441,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 2269, "end": 0, "key": { + "commentStart": 2269, "end": 0, "name": "yAxis", "start": 0, @@ -3023,11 +3453,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2277, "end": 0, "properties": [ { + "commentStart": 2279, "end": 0, "key": { + "commentStart": 2279, "end": 0, "name": "x", "start": 0, @@ -3036,6 +3469,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2283, "end": 0, "raw": "0", "start": 0, @@ -3048,8 +3482,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 2286, "end": 0, "key": { + "commentStart": 2286, "end": 0, "name": "y", "start": 0, @@ -3058,6 +3494,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2290, "end": 0, "raw": "1", "start": 0, @@ -3070,8 +3507,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 2293, "end": 0, "key": { + "commentStart": 2293, "end": 0, "name": "z", "start": 0, @@ -3080,6 +3519,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2297, "end": 0, "raw": "0", "start": 0, @@ -3098,8 +3538,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 2306, "end": 0, "key": { + "commentStart": 2306, "end": 0, "name": "zAxis", "start": 0, @@ -3108,11 +3550,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2314, "end": 0, "properties": [ { + "commentStart": 2316, "end": 0, "key": { + "commentStart": 2316, "end": 0, "name": "x", "start": 0, @@ -3121,6 +3566,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2320, "end": 0, "raw": "0", "start": 0, @@ -3133,8 +3579,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 2323, "end": 0, "key": { + "commentStart": 2323, "end": 0, "name": "y", "start": 0, @@ -3143,6 +3591,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2327, "end": 0, "raw": "0", "start": 0, @@ -3155,8 +3604,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 2330, "end": 0, "key": { + "commentStart": 2330, "end": 0, "name": "z", "start": 0, @@ -3165,6 +3616,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2334, "end": 0, "raw": "1", "start": 0, @@ -3203,9 +3655,12 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 2343, "declaration": { + "commentStart": 2400, "end": 0, "id": { + "commentStart": 2400, "end": 0, "name": "tabsR", "start": 0, @@ -3216,6 +3671,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 2422, "end": 0, "name": "tabPlane", "start": 0, @@ -3224,11 +3680,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 2408, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2408, "end": 0, "start": 0, "type": "CallExpression", @@ -3237,12 +3695,16 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 2452, "elements": [ { + "commentStart": 2453, "end": 0, "left": { + "commentStart": 2453, "end": 0, "left": { + "commentStart": 2453, "end": 0, "name": "width", "start": 0, @@ -3251,6 +3713,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 2461, "end": 0, "raw": "2", "start": 0, @@ -3267,6 +3730,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 2465, "end": 0, "name": "thk", "start": 0, @@ -3278,10 +3742,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 2470, "end": 0, "left": { + "commentStart": 2470, "end": 0, "left": { + "commentStart": 2470, "end": 0, "name": "length", "start": 0, @@ -3290,6 +3757,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 2479, "end": 0, "raw": "2", "start": 0, @@ -3306,6 +3774,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 2483, "end": 0, "name": "thk", "start": 0, @@ -3323,6 +3792,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "ArrayExpression" }, { + "commentStart": 2489, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3330,11 +3800,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 2437, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2437, "end": 0, "start": 0, "type": "CallExpression", @@ -3345,14 +3817,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2502, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2508, "elements": [ { + "commentStart": 2509, "end": 0, "name": "tabWidth", "start": 0, @@ -3360,15 +3835,18 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "Identifier" }, { + "commentStart": 2519, "end": 0, "left": { "argument": { + "commentStart": 2520, "end": 0, "name": "tabLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2519, "end": 0, "operator": "-", "start": 0, @@ -3377,6 +3855,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 2532, "end": 0, "raw": "3", "start": 0, @@ -3401,12 +3880,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2536, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2542, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3416,11 +3897,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 2497, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2497, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3432,14 +3915,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2561, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2567, "elements": [ { + "commentStart": 2568, "end": 0, "raw": "0", "start": 0, @@ -3451,17 +3937,21 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 2571, "end": 0, "left": { + "commentStart": 2571, "end": 0, "left": { "argument": { + "commentStart": 2572, "end": 0, "name": "tabLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2571, "end": 0, "operator": "-", "start": 0, @@ -3470,6 +3960,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 2584, "end": 0, "raw": "3", "start": 0, @@ -3486,6 +3977,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "*", "right": { + "commentStart": 2588, "end": 0, "raw": "2", "start": 0, @@ -3510,12 +4002,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2592, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2598, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3525,11 +4019,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 2556, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2556, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3541,21 +4037,25 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2617, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2623, "elements": [ { "argument": { + "commentStart": 2625, "end": 0, "name": "tabWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2624, "end": 0, "operator": "-", "start": 0, @@ -3563,15 +4063,18 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "UnaryExpression" }, { + "commentStart": 2635, "end": 0, "left": { "argument": { + "commentStart": 2636, "end": 0, "name": "tabLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2635, "end": 0, "operator": "-", "start": 0, @@ -3580,6 +4083,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 2648, "end": 0, "raw": "3", "start": 0, @@ -3604,12 +4108,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2652, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2658, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3619,11 +4125,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 2612, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2612, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3635,12 +4143,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2678, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2684, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3650,11 +4160,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 2672, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2672, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3668,20 +4180,26 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2718, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2727, "elements": [ { + "commentStart": 2738, "end": 0, "left": { + "commentStart": 2738, "end": 0, "left": { + "commentStart": 2738, "end": 0, "left": { + "commentStart": 2738, "end": 0, "name": "width", "start": 0, @@ -3690,6 +4208,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 2746, "end": 0, "raw": "2", "start": 0, @@ -3706,6 +4225,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 2750, "end": 0, "name": "thk", "start": 0, @@ -3718,8 +4238,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 2756, "end": 0, "left": { + "commentStart": 2756, "end": 0, "name": "tabWidth", "start": 0, @@ -3728,6 +4250,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 2767, "end": 0, "raw": "2", "start": 0, @@ -3747,12 +4270,16 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 2779, "end": 0, "left": { + "commentStart": 2779, "end": 0, "left": { + "commentStart": 2779, "end": 0, "left": { + "commentStart": 2779, "end": 0, "name": "length", "start": 0, @@ -3761,6 +4288,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 2788, "end": 0, "raw": "2", "start": 0, @@ -3777,6 +4305,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 2792, "end": 0, "name": "thk", "start": 0, @@ -3789,8 +4318,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "-", "right": { + "commentStart": 2799, "end": 0, "left": { + "commentStart": 2799, "end": 0, "name": "tabLength", "start": 0, @@ -3799,8 +4330,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 2812, "end": 0, "left": { + "commentStart": 2812, "end": 0, "raw": "3", "start": 0, @@ -3813,6 +4346,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 2816, "end": 0, "raw": "2", "start": 0, @@ -3845,14 +4379,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2837, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2846, "end": 0, "left": { + "commentStart": 2846, "end": 0, "name": "holeDiam", "start": 0, @@ -3861,6 +4398,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 2857, "end": 0, "raw": "2", "start": 0, @@ -3878,11 +4416,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 2703, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2703, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3890,6 +4430,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "unlabeled": null }, { + "commentStart": 2867, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3897,11 +4438,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 2698, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 2698, "end": 0, "start": 0, "type": "CallExpression", @@ -3912,6 +4455,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2883, "end": 0, "name": "length", "start": 0, @@ -3919,12 +4463,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "arg": { "argument": { + "commentStart": 2893, "end": 0, "name": "tabThk", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2892, "end": 0, "operator": "-", "start": 0, @@ -3934,11 +4480,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 2875, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2875, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3950,14 +4498,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2921, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2930, "end": 0, "left": { + "commentStart": 2930, "end": 0, "name": "holeDiam", "start": 0, @@ -3966,6 +4517,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 2941, "end": 0, "raw": "2", "start": 0, @@ -3984,16 +4536,19 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2951, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2958, "elements": [ { "arguments": [ { + "commentStart": 2989, "end": 0, "name": "edge11", "start": 0, @@ -4002,11 +4557,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 2969, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 2969, "end": 0, "start": 0, "type": "CallExpression", @@ -4015,6 +4572,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 3027, "end": 0, "name": "edge12", "start": 0, @@ -4023,11 +4581,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 3007, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 3007, "end": 0, "start": 0, "type": "CallExpression", @@ -4042,11 +4602,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 2906, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 2906, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4058,14 +4620,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3080, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3087, "elements": [ { + "commentStart": 3088, "end": 0, "raw": "0", "start": 0, @@ -4078,6 +4643,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, { "argument": { + "commentStart": 3092, "end": 0, "raw": "1", "start": 0, @@ -4088,6 +4654,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "suffix": "None" } }, + "commentStart": 3091, "end": 0, "operator": "-", "start": 0, @@ -4095,6 +4662,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "UnaryExpression" }, { + "commentStart": 3095, "end": 0, "raw": "0", "start": 0, @@ -4115,12 +4683,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3106, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3118, "end": 0, "raw": "2", "start": 0, @@ -4135,16 +4705,20 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3128, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3139, "end": 0, "left": { + "commentStart": 3139, "end": 0, "left": { + "commentStart": 3139, "end": 0, "name": "length", "start": 0, @@ -4153,8 +4727,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 3148, "end": 0, "left": { + "commentStart": 3148, "end": 0, "raw": "2", "start": 0, @@ -4167,6 +4743,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "*", "right": { + "commentStart": 3152, "end": 0, "name": "thk", "start": 0, @@ -4183,10 +4760,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "-", "right": { + "commentStart": 3159, "end": 0, "left": { + "commentStart": 3159, "end": 0, "left": { + "commentStart": 3159, "end": 0, "name": "tabLength", "start": 0, @@ -4195,6 +4775,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "*", "right": { + "commentStart": 3171, "end": 0, "raw": "4", "start": 0, @@ -4211,6 +4792,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 3175, "end": 0, "raw": "3", "start": 0, @@ -4232,11 +4814,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 3056, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 3056, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4244,11 +4828,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "unlabeled": null } ], + "commentStart": 2408, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "9": [ { + "commentStart": 3184, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4271,14 +4857,22 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// build the tabs of the mounting bracket (right side)" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 3240, "declaration": { + "commentStart": 3240, "end": 0, "id": { + "commentStart": 3240, "end": 0, "name": "tabsL", "start": 0, @@ -4289,6 +4883,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 3262, "end": 0, "name": "tabPlane", "start": 0, @@ -4297,11 +4892,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 3248, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 3248, "end": 0, "start": 0, "type": "CallExpression", @@ -4310,19 +4907,24 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 3292, "elements": [ { + "commentStart": 3293, "end": 0, "left": { + "commentStart": 3293, "end": 0, "left": { "argument": { + "commentStart": 3294, "end": 0, "name": "width", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3293, "end": 0, "operator": "-", "start": 0, @@ -4331,6 +4933,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 3302, "end": 0, "raw": "2", "start": 0, @@ -4347,6 +4950,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "-", "right": { + "commentStart": 3306, "end": 0, "name": "thk", "start": 0, @@ -4358,10 +4962,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 3311, "end": 0, "left": { + "commentStart": 3311, "end": 0, "left": { + "commentStart": 3311, "end": 0, "name": "length", "start": 0, @@ -4370,6 +4977,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 3320, "end": 0, "raw": "2", "start": 0, @@ -4386,6 +4994,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 3324, "end": 0, "name": "thk", "start": 0, @@ -4403,6 +5012,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "ArrayExpression" }, { + "commentStart": 3330, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4410,11 +5020,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 3277, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 3277, "end": 0, "start": 0, "type": "CallExpression", @@ -4425,21 +5037,25 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3343, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3349, "elements": [ { "argument": { + "commentStart": 3351, "end": 0, "name": "tabWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3350, "end": 0, "operator": "-", "start": 0, @@ -4447,15 +5063,18 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "UnaryExpression" }, { + "commentStart": 3361, "end": 0, "left": { "argument": { + "commentStart": 3362, "end": 0, "name": "tabLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3361, "end": 0, "operator": "-", "start": 0, @@ -4464,6 +5083,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 3374, "end": 0, "raw": "3", "start": 0, @@ -4488,12 +5108,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3378, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3384, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4503,11 +5125,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 3338, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3338, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4519,14 +5143,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3403, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3409, "elements": [ { + "commentStart": 3410, "end": 0, "raw": "0", "start": 0, @@ -4538,17 +5165,21 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 3413, "end": 0, "left": { + "commentStart": 3413, "end": 0, "left": { "argument": { + "commentStart": 3414, "end": 0, "name": "tabLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3413, "end": 0, "operator": "-", "start": 0, @@ -4557,6 +5188,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 3426, "end": 0, "raw": "3", "start": 0, @@ -4573,6 +5205,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "*", "right": { + "commentStart": 3430, "end": 0, "raw": "2", "start": 0, @@ -4597,12 +5230,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3434, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3440, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4612,11 +5247,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 3398, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3398, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4628,14 +5265,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3459, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3465, "elements": [ { + "commentStart": 3466, "end": 0, "name": "tabWidth", "start": 0, @@ -4643,15 +5283,18 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "Identifier" }, { + "commentStart": 3476, "end": 0, "left": { "argument": { + "commentStart": 3477, "end": 0, "name": "tabLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3476, "end": 0, "operator": "-", "start": 0, @@ -4660,6 +5303,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 3489, "end": 0, "raw": "3", "start": 0, @@ -4684,12 +5328,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3493, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3499, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4699,11 +5345,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 3454, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3454, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4715,12 +5363,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3519, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3525, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4730,11 +5380,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 3513, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 3513, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4748,27 +5400,34 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3559, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3568, "elements": [ { + "commentStart": 3579, "end": 0, "left": { + "commentStart": 3579, "end": 0, "left": { + "commentStart": 3579, "end": 0, "left": { "argument": { + "commentStart": 3580, "end": 0, "name": "width", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3579, "end": 0, "operator": "-", "start": 0, @@ -4777,6 +5436,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 3588, "end": 0, "raw": "2", "start": 0, @@ -4793,6 +5453,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "-", "right": { + "commentStart": 3592, "end": 0, "name": "thk", "start": 0, @@ -4805,8 +5466,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "-", "right": { + "commentStart": 3599, "end": 0, "left": { + "commentStart": 3599, "end": 0, "name": "tabWidth", "start": 0, @@ -4815,6 +5478,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 3610, "end": 0, "raw": "2", "start": 0, @@ -4834,12 +5498,16 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 3623, "end": 0, "left": { + "commentStart": 3623, "end": 0, "left": { + "commentStart": 3623, "end": 0, "left": { + "commentStart": 3623, "end": 0, "name": "length", "start": 0, @@ -4848,6 +5516,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 3632, "end": 0, "raw": "2", "start": 0, @@ -4864,6 +5533,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 3636, "end": 0, "name": "thk", "start": 0, @@ -4876,8 +5546,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "-", "right": { + "commentStart": 3643, "end": 0, "left": { + "commentStart": 3643, "end": 0, "name": "tabLength", "start": 0, @@ -4886,8 +5558,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 3656, "end": 0, "left": { + "commentStart": 3656, "end": 0, "raw": "3", "start": 0, @@ -4900,6 +5574,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 3660, "end": 0, "raw": "2", "start": 0, @@ -4932,14 +5607,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3681, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3690, "end": 0, "left": { + "commentStart": 3690, "end": 0, "name": "holeDiam", "start": 0, @@ -4948,6 +5626,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 3701, "end": 0, "raw": "2", "start": 0, @@ -4965,11 +5644,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 3544, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 3544, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4977,6 +5658,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "unlabeled": null }, { + "commentStart": 3711, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4984,11 +5666,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 3539, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 3539, "end": 0, "start": 0, "type": "CallExpression", @@ -4999,6 +5683,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3727, "end": 0, "name": "length", "start": 0, @@ -5006,12 +5691,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "arg": { "argument": { + "commentStart": 3737, "end": 0, "name": "tabThk", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3736, "end": 0, "operator": "-", "start": 0, @@ -5021,11 +5708,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 3719, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 3719, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5037,14 +5726,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3765, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3774, "end": 0, "left": { + "commentStart": 3774, "end": 0, "name": "holeDiam", "start": 0, @@ -5053,6 +5745,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 3785, "end": 0, "raw": "2", "start": 0, @@ -5071,16 +5764,19 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3795, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3802, "elements": [ { "arguments": [ { + "commentStart": 3833, "end": 0, "name": "edge21", "start": 0, @@ -5089,11 +5785,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 3813, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 3813, "end": 0, "start": 0, "type": "CallExpression", @@ -5102,6 +5800,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 3871, "end": 0, "name": "edge22", "start": 0, @@ -5110,11 +5809,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 3851, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 3851, "end": 0, "start": 0, "type": "CallExpression", @@ -5129,11 +5830,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 3750, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 3750, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5145,14 +5848,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3924, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3931, "elements": [ { + "commentStart": 3932, "end": 0, "raw": "0", "start": 0, @@ -5165,6 +5871,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, { "argument": { + "commentStart": 3936, "end": 0, "raw": "1", "start": 0, @@ -5175,6 +5882,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "suffix": "None" } }, + "commentStart": 3935, "end": 0, "operator": "-", "start": 0, @@ -5182,6 +5890,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "UnaryExpression" }, { + "commentStart": 3939, "end": 0, "raw": "0", "start": 0, @@ -5202,12 +5911,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3950, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3962, "end": 0, "raw": "2", "start": 0, @@ -5222,16 +5933,20 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3972, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3983, "end": 0, "left": { + "commentStart": 3983, "end": 0, "left": { + "commentStart": 3983, "end": 0, "name": "length", "start": 0, @@ -5240,8 +5955,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 3992, "end": 0, "left": { + "commentStart": 3992, "end": 0, "raw": "2", "start": 0, @@ -5254,6 +5971,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "*", "right": { + "commentStart": 3996, "end": 0, "name": "thk", "start": 0, @@ -5270,10 +5988,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "-", "right": { + "commentStart": 4003, "end": 0, "left": { + "commentStart": 4003, "end": 0, "left": { + "commentStart": 4003, "end": 0, "name": "tabLength", "start": 0, @@ -5282,6 +6003,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "*", "right": { + "commentStart": 4015, "end": 0, "raw": "4", "start": 0, @@ -5298,6 +6020,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 4019, "end": 0, "raw": "3", "start": 0, @@ -5319,11 +6042,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 3900, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 3900, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5331,11 +6056,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "unlabeled": null } ], + "commentStart": 3248, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "9": [ { + "commentStart": 4028, "end": 0, "start": 0, "type": "NonCodeNode", @@ -5363,20 +6090,26 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 4068, "declaration": { + "commentStart": 4068, "end": 0, "id": { + "commentStart": 4068, "end": 0, "name": "retPlane", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4079, "end": 0, "properties": [ { + "commentStart": 4083, "end": 0, "key": { + "commentStart": 4083, "end": 0, "name": "plane", "start": 0, @@ -5385,11 +6118,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4091, "end": 0, "properties": [ { + "commentStart": 4097, "end": 0, "key": { + "commentStart": 4097, "end": 0, "name": "origin", "start": 0, @@ -5398,11 +6134,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4106, "end": 0, "properties": [ { + "commentStart": 4108, "end": 0, "key": { + "commentStart": 4108, "end": 0, "name": "x", "start": 0, @@ -5411,17 +6150,21 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4112, "end": 0, "left": { + "commentStart": 4112, "end": 0, "left": { "argument": { + "commentStart": 4113, "end": 0, "name": "width", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4112, "end": 0, "operator": "-", "start": 0, @@ -5430,6 +6173,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 4121, "end": 0, "raw": "2", "start": 0, @@ -5446,6 +6190,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 4125, "end": 0, "raw": "20", "start": 0, @@ -5462,8 +6207,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 4129, "end": 0, "key": { + "commentStart": 4129, "end": 0, "name": "y", "start": 0, @@ -5472,6 +6219,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4133, "end": 0, "raw": "0", "start": 0, @@ -5484,8 +6232,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 4136, "end": 0, "key": { + "commentStart": 4136, "end": 0, "name": "z", "start": 0, @@ -5494,6 +6244,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4140, "end": 0, "raw": "0", "start": 0, @@ -5512,8 +6263,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 4149, "end": 0, "key": { + "commentStart": 4149, "end": 0, "name": "xAxis", "start": 0, @@ -5522,11 +6275,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4157, "end": 0, "properties": [ { + "commentStart": 4159, "end": 0, "key": { + "commentStart": 4159, "end": 0, "name": "x", "start": 0, @@ -5535,6 +6291,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4163, "end": 0, "raw": "0", "start": 0, @@ -5547,8 +6304,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 4166, "end": 0, "key": { + "commentStart": 4166, "end": 0, "name": "y", "start": 0, @@ -5557,6 +6316,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4170, "end": 0, "raw": "1", "start": 0, @@ -5569,8 +6329,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 4173, "end": 0, "key": { + "commentStart": 4173, "end": 0, "name": "z", "start": 0, @@ -5579,6 +6341,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4177, "end": 0, "raw": "0", "start": 0, @@ -5597,8 +6360,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 4186, "end": 0, "key": { + "commentStart": 4186, "end": 0, "name": "yAxis", "start": 0, @@ -5607,11 +6372,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4194, "end": 0, "properties": [ { + "commentStart": 4196, "end": 0, "key": { + "commentStart": 4196, "end": 0, "name": "x", "start": 0, @@ -5620,6 +6388,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4200, "end": 0, "raw": "0", "start": 0, @@ -5632,8 +6401,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 4203, "end": 0, "key": { + "commentStart": 4203, "end": 0, "name": "y", "start": 0, @@ -5642,6 +6413,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4207, "end": 0, "raw": "0", "start": 0, @@ -5654,8 +6426,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 4210, "end": 0, "key": { + "commentStart": 4210, "end": 0, "name": "z", "start": 0, @@ -5664,6 +6438,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4214, "end": 0, "raw": "1", "start": 0, @@ -5682,8 +6457,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 4223, "end": 0, "key": { + "commentStart": 4223, "end": 0, "name": "zAxis", "start": 0, @@ -5692,11 +6469,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4231, "end": 0, "properties": [ { + "commentStart": 4233, "end": 0, "key": { + "commentStart": 4233, "end": 0, "name": "x", "start": 0, @@ -5705,6 +6485,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4237, "end": 0, "raw": "1", "start": 0, @@ -5717,8 +6498,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 4240, "end": 0, "key": { + "commentStart": 4240, "end": 0, "name": "y", "start": 0, @@ -5727,6 +6510,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4244, "end": 0, "raw": "0", "start": 0, @@ -5739,8 +6523,10 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 4247, "end": 0, "key": { + "commentStart": 4247, "end": 0, "name": "z", "start": 0, @@ -5749,6 +6535,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4251, "end": 0, "raw": "0", "start": 0, @@ -5787,9 +6574,12 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 4260, "declaration": { + "commentStart": 4303, "end": 0, "id": { + "commentStart": 4303, "end": 0, "name": "retFront", "start": 0, @@ -5800,6 +6590,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 4328, "end": 0, "name": "retPlane", "start": 0, @@ -5808,11 +6599,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 4314, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 4314, "end": 0, "start": 0, "type": "CallExpression", @@ -5821,19 +6614,24 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 4358, "elements": [ { + "commentStart": 4359, "end": 0, "left": { + "commentStart": 4359, "end": 0, "left": { "argument": { + "commentStart": 4360, "end": 0, "name": "length", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4359, "end": 0, "operator": "-", "start": 0, @@ -5842,6 +6640,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 4369, "end": 0, "raw": "2", "start": 0, @@ -5858,6 +6657,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "-", "right": { + "commentStart": 4373, "end": 0, "name": "thk", "start": 0, @@ -5869,6 +6669,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 4378, "end": 0, "raw": "0", "start": 0, @@ -5886,6 +6687,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "ArrayExpression" }, { + "commentStart": 4382, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -5893,11 +6695,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 4343, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 4343, "end": 0, "start": 0, "type": "CallExpression", @@ -5908,14 +6712,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 4395, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4401, "elements": [ { + "commentStart": 4402, "end": 0, "raw": "0", "start": 0, @@ -5927,6 +6734,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 4405, "end": 0, "name": "thk", "start": 0, @@ -5942,11 +6750,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 4390, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4390, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5958,14 +6768,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 4421, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4427, "elements": [ { + "commentStart": 4428, "end": 0, "name": "thk", "start": 0, @@ -5974,12 +6787,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, { "argument": { + "commentStart": 4434, "end": 0, "name": "thk", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4433, "end": 0, "operator": "-", "start": 0, @@ -5995,11 +6810,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 4416, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4416, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6009,11 +6826,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [], "callee": { + "commentStart": 4445, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 4445, "end": 0, "start": 0, "type": "CallExpression", @@ -6024,14 +6843,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 4466, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4475, "end": 0, "left": { + "commentStart": 4475, "end": 0, "name": "width", "start": 0, @@ -6040,6 +6862,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "-", "right": { + "commentStart": 4483, "end": 0, "raw": "40", "start": 0, @@ -6057,11 +6880,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 4458, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 4458, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6069,11 +6894,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "unlabeled": null } ], + "commentStart": 4314, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "5": [ { + "commentStart": 4486, "end": 0, "start": 0, "type": "NonCodeNode", @@ -6096,14 +6923,22 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// build the retention bump in the front" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 4528, "declaration": { + "commentStart": 4528, "end": 0, "id": { + "commentStart": 4528, "end": 0, "name": "retBack", "start": 0, @@ -6114,6 +6949,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 4552, "end": 0, "name": "retPlane", "start": 0, @@ -6122,11 +6958,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 4538, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 4538, "end": 0, "start": 0, "type": "CallExpression", @@ -6135,12 +6973,16 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [ { + "commentStart": 4582, "elements": [ { + "commentStart": 4583, "end": 0, "left": { + "commentStart": 4583, "end": 0, "left": { + "commentStart": 4583, "end": 0, "name": "length", "start": 0, @@ -6149,6 +6991,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "/", "right": { + "commentStart": 4592, "end": 0, "raw": "2", "start": 0, @@ -6165,6 +7008,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "+", "right": { + "commentStart": 4596, "end": 0, "name": "thk", "start": 0, @@ -6176,6 +7020,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 4601, "end": 0, "raw": "0", "start": 0, @@ -6193,6 +7038,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "ArrayExpression" }, { + "commentStart": 4605, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -6200,11 +7046,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 4567, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 4567, "end": 0, "start": 0, "type": "CallExpression", @@ -6215,14 +7063,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 4618, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4624, "elements": [ { + "commentStart": 4625, "end": 0, "raw": "0", "start": 0, @@ -6234,6 +7085,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } }, { + "commentStart": 4628, "end": 0, "name": "thk", "start": 0, @@ -6249,11 +7101,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 4613, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4613, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6265,21 +7119,25 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 4644, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4650, "elements": [ { "argument": { + "commentStart": 4652, "end": 0, "name": "thk", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4651, "end": 0, "operator": "-", "start": 0, @@ -6287,6 +7145,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "UnaryExpression" }, { + "commentStart": 4657, "end": 0, "raw": "0", "start": 0, @@ -6306,11 +7165,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 4639, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4639, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6322,14 +7183,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 4671, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4677, "elements": [ { + "commentStart": 4678, "end": 0, "raw": "0", "start": 0, @@ -6342,12 +7206,14 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, { "argument": { + "commentStart": 4682, "end": 0, "name": "thk", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4681, "end": 0, "operator": "-", "start": 0, @@ -6363,11 +7229,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 4666, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4666, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6377,11 +7245,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "arguments": [], "callee": { + "commentStart": 4693, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 4693, "end": 0, "start": 0, "type": "CallExpression", @@ -6392,14 +7262,17 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 4714, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4723, "end": 0, "left": { + "commentStart": 4723, "end": 0, "name": "width", "start": 0, @@ -6408,6 +7281,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl }, "operator": "-", "right": { + "commentStart": 4731, "end": 0, "raw": "40", "start": 0, @@ -6425,11 +7299,13 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "callee": { + "commentStart": 4706, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 4706, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6437,6 +7313,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "unlabeled": null } ], + "commentStart": 4538, "end": 0, "start": 0, "type": "PipeExpression", @@ -6452,20 +7329,32 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 325, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// A mounting bracket for the Focusrite Scarlett Solo audio interface", + "// This is a bracket that holds an audio device underneath a desk or shelf. The audio device has dimensions of 144mm wide, 80mm length and 45mm depth with fillets of 6mm. This mounting bracket is designed to be 3D printed with PLA material", + "", + "", + "// Set units" + ], "properties": [ { + "commentStart": 334, "end": 0, "key": { + "commentStart": 334, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -6474,6 +7363,7 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 354, "end": 0, "name": "mm", "start": 0, @@ -6487,136 +7377,16 @@ description: Result of parsing focusrite-scarlett-mounting-bracket.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "8": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "define a rectangular shape func", - "style": "line" - } - } - ], - "9": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "define the bracket plane", - "style": "line" - } - } - ], - "10": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "build the bracket sketch around the body", - "style": "line" - } - } - ], - "11": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "build the body of the bracket", - "style": "line" - } - } - ], - "14": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "build the tabs of the mounting bracket (right side)", - "style": "line" - } - } - ], - "17": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "build the retention bump in the front", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A mounting bracket for the Focusrite Scarlett Solo audio interface", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "This is a bracket that holds an audio device underneath a desk or shelf. The audio device has dimensions of 144mm wide, 80mm length and 45mm depth with fillets of 6mm. This mounting bracket is designed to be 3D printed with PLA material", - "style": "line" - } - }, - { + "commentStart": 357, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "define constants in mm", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/focusrite-scarlett-mounting-bracket/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/focusrite-scarlett-mounting-bracket/program_memory.snap index 01d1644ae..1673b4688 100644 --- a/rust/kcl-lib/tests/kcl_samples/focusrite-scarlett-mounting-bracket/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/focusrite-scarlett-mounting-bracket/program_memory.snap @@ -15,6 +15,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1354, "end": 1360, "start": 1354, "type": "TagDeclarator", @@ -27,6 +28,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1411, "end": 1417, "start": 1411, "type": "TagDeclarator", @@ -39,6 +41,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1471, "end": 1477, "start": 1471, "type": "TagDeclarator", @@ -51,6 +54,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1527, "end": 1533, "start": 1527, "type": "TagDeclarator", @@ -63,6 +67,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1579, "end": 1585, "start": 1579, "type": "TagDeclarator", @@ -75,6 +80,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1632, "end": 1638, "start": 1632, "type": "TagDeclarator", @@ -87,6 +93,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1689, "end": 1695, "start": 1689, "type": "TagDeclarator", @@ -99,6 +106,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1716, "end": 1722, "start": 1716, "type": "TagDeclarator", @@ -121,6 +129,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 49.0 ], "tag": { + "commentStart": 1354, "end": 1360, "start": 1354, "type": "TagDeclarator", @@ -145,6 +154,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra -4.0 ], "tag": { + "commentStart": 1411, "end": 1417, "start": 1411, "type": "TagDeclarator", @@ -169,6 +179,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra -4.0 ], "tag": { + "commentStart": 1471, "end": 1477, "start": 1471, "type": "TagDeclarator", @@ -193,6 +204,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 49.0 ], "tag": { + "commentStart": 1527, "end": 1533, "start": 1527, "type": "TagDeclarator", @@ -217,6 +229,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 49.0 ], "tag": { + "commentStart": 1579, "end": 1585, "start": 1579, "type": "TagDeclarator", @@ -241,6 +254,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 0.0 ], "tag": { + "commentStart": 1632, "end": 1638, "start": 1632, "type": "TagDeclarator", @@ -265,6 +279,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 0.0 ], "tag": { + "commentStart": 1689, "end": 1695, "start": 1689, "type": "TagDeclarator", @@ -289,6 +304,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 49.0 ], "tag": { + "commentStart": 1716, "end": 1722, "start": 1716, "type": "TagDeclarator", @@ -628,6 +644,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 49.0 ], "tag": { + "commentStart": 1354, "end": 1360, "start": 1354, "type": "TagDeclarator", @@ -652,6 +669,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra -4.0 ], "tag": { + "commentStart": 1411, "end": 1417, "start": 1411, "type": "TagDeclarator", @@ -676,6 +694,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra -4.0 ], "tag": { + "commentStart": 1471, "end": 1477, "start": 1471, "type": "TagDeclarator", @@ -700,6 +719,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 49.0 ], "tag": { + "commentStart": 1527, "end": 1533, "start": 1527, "type": "TagDeclarator", @@ -724,6 +744,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 49.0 ], "tag": { + "commentStart": 1579, "end": 1585, "start": 1579, "type": "TagDeclarator", @@ -748,6 +769,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 0.0 ], "tag": { + "commentStart": 1632, "end": 1638, "start": 1632, "type": "TagDeclarator", @@ -772,6 +794,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 0.0 ], "tag": { + "commentStart": 1689, "end": 1695, "start": 1689, "type": "TagDeclarator", @@ -796,6 +819,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 49.0 ], "tag": { + "commentStart": 1716, "end": 1722, "start": 1716, "type": "TagDeclarator", @@ -1784,6 +1808,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 3384, "end": 3391, "start": 3384, "type": "TagDeclarator", @@ -1796,6 +1821,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 3440, "end": 3447, "start": 3440, "type": "TagDeclarator", @@ -1808,6 +1834,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 3499, "end": 3506, "start": 3499, "type": "TagDeclarator", @@ -1820,6 +1847,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 3525, "end": 3532, "start": 3525, "type": "TagDeclarator", @@ -1842,6 +1870,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 44.0 ], "tag": { + "commentStart": 3384, "end": 3391, "start": 3384, "type": "TagDeclarator", @@ -1866,6 +1895,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 35.6667 ], "tag": { + "commentStart": 3440, "end": 3447, "start": 3440, "type": "TagDeclarator", @@ -1890,6 +1920,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 19.0 ], "tag": { + "commentStart": 3499, "end": 3506, "start": 3499, "type": "TagDeclarator", @@ -1914,6 +1945,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 10.6667 ], "tag": { + "commentStart": 3525, "end": 3532, "start": 3525, "type": "TagDeclarator", @@ -2036,6 +2068,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 3384, "end": 3391, "start": 3384, "type": "TagDeclarator", @@ -2048,6 +2081,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 3440, "end": 3447, "start": 3440, "type": "TagDeclarator", @@ -2060,6 +2094,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 3499, "end": 3506, "start": 3499, "type": "TagDeclarator", @@ -2072,6 +2107,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 3525, "end": 3532, "start": 3525, "type": "TagDeclarator", @@ -2094,6 +2130,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 44.0 ], "tag": { + "commentStart": 3384, "end": 3391, "start": 3384, "type": "TagDeclarator", @@ -2118,6 +2155,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 35.6667 ], "tag": { + "commentStart": 3440, "end": 3447, "start": 3440, "type": "TagDeclarator", @@ -2142,6 +2180,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 19.0 ], "tag": { + "commentStart": 3499, "end": 3506, "start": 3499, "type": "TagDeclarator", @@ -2166,6 +2205,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 10.6667 ], "tag": { + "commentStart": 3525, "end": 3532, "start": 3525, "type": "TagDeclarator", @@ -2293,6 +2333,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2542, "end": 2549, "start": 2542, "type": "TagDeclarator", @@ -2305,6 +2346,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2598, "end": 2605, "start": 2598, "type": "TagDeclarator", @@ -2317,6 +2359,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2658, "end": 2665, "start": 2658, "type": "TagDeclarator", @@ -2329,6 +2372,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2684, "end": 2691, "start": 2684, "type": "TagDeclarator", @@ -2351,6 +2395,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 44.0 ], "tag": { + "commentStart": 2542, "end": 2549, "start": 2542, "type": "TagDeclarator", @@ -2375,6 +2420,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 35.6667 ], "tag": { + "commentStart": 2598, "end": 2605, "start": 2598, "type": "TagDeclarator", @@ -2399,6 +2445,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 19.0 ], "tag": { + "commentStart": 2658, "end": 2665, "start": 2658, "type": "TagDeclarator", @@ -2423,6 +2470,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 10.6667 ], "tag": { + "commentStart": 2684, "end": 2691, "start": 2684, "type": "TagDeclarator", @@ -2545,6 +2593,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2542, "end": 2549, "start": 2542, "type": "TagDeclarator", @@ -2557,6 +2606,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2598, "end": 2605, "start": 2598, "type": "TagDeclarator", @@ -2569,6 +2619,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2658, "end": 2665, "start": 2658, "type": "TagDeclarator", @@ -2581,6 +2632,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2684, "end": 2691, "start": 2684, "type": "TagDeclarator", @@ -2603,6 +2655,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 44.0 ], "tag": { + "commentStart": 2542, "end": 2549, "start": 2542, "type": "TagDeclarator", @@ -2627,6 +2680,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 35.6667 ], "tag": { + "commentStart": 2598, "end": 2605, "start": 2598, "type": "TagDeclarator", @@ -2651,6 +2705,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 19.0 ], "tag": { + "commentStart": 2658, "end": 2665, "start": 2658, "type": "TagDeclarator", @@ -2675,6 +2730,7 @@ description: Variables in memory after executing focusrite-scarlett-mounting-bra 10.6667 ], "tag": { + "commentStart": 2684, "end": 2691, "start": 2684, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/kcl_samples/food-service-spatula/ast.snap b/rust/kcl-lib/tests/kcl_samples/food-service-spatula/ast.snap index 9327f20d5..7579ccc8a 100644 --- a/rust/kcl-lib/tests/kcl_samples/food-service-spatula/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/food-service-spatula/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing food-service-spatula.kcl "Ok": { "body": [ { + "commentStart": 129, "declaration": { + "commentStart": 171, "end": 0, "id": { + "commentStart": 171, "end": 0, "name": "flipperThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 190, "end": 0, "raw": "3.5", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing food-service-spatula.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants in millimeters (mm)" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 194, "declaration": { + "commentStart": 194, "end": 0, "id": { + "commentStart": 194, "end": 0, "name": "flipperLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 210, "end": 0, "raw": "70.0", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 215, "declaration": { + "commentStart": 215, "end": 0, "id": { + "commentStart": 215, "end": 0, "name": "handleWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 229, "end": 0, "raw": "15.0", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 234, "declaration": { + "commentStart": 234, "end": 0, "id": { + "commentStart": 234, "end": 0, "name": "gripLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 247, "end": 0, "raw": "150.0", "start": 0, @@ -122,15 +141,19 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 253, "declaration": { + "commentStart": 253, "end": 0, "id": { + "commentStart": 253, "end": 0, "name": "flipperFilletRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 275, "end": 0, "raw": "5.0", "start": 0, @@ -151,15 +174,19 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 279, "declaration": { + "commentStart": 279, "end": 0, "id": { + "commentStart": 279, "end": 0, "name": "flipperSlotWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 298, "end": 0, "raw": "10.0", "start": 0, @@ -180,15 +207,19 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 303, "declaration": { + "commentStart": 303, "end": 0, "id": { + "commentStart": 303, "end": 0, "name": "gripWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 315, "end": 0, "raw": "10.0", "start": 0, @@ -209,15 +240,19 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 320, "declaration": { + "commentStart": 320, "end": 0, "id": { + "commentStart": 320, "end": 0, "name": "gripHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 333, "end": 0, "raw": "20.0", "start": 0, @@ -238,15 +273,19 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 338, "declaration": { + "commentStart": 338, "end": 0, "id": { + "commentStart": 338, "end": 0, "name": "gripFilletRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 357, "end": 0, "raw": "3.0", "start": 0, @@ -267,15 +306,19 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 361, "declaration": { + "commentStart": 361, "end": 0, "id": { + "commentStart": 361, "end": 0, "name": "gripSlotWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 377, "end": 0, "raw": "8.0", "start": 0, @@ -296,9 +339,12 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 380, "declaration": { + "commentStart": 477, "end": 0, "id": { + "commentStart": 477, "end": 0, "name": "slot", "start": 0, @@ -308,21 +354,28 @@ description: Result of parsing food-service-spatula.kcl "body": { "body": [ { + "commentStart": 514, "declaration": { + "commentStart": 514, "end": 0, "id": { + "commentStart": 514, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 522, "cond": { + "commentStart": 525, "end": 0, "left": { + "commentStart": 525, "computed": false, "end": 0, "object": { + "commentStart": 525, "end": 0, "name": "start", "start": 0, @@ -330,6 +383,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 531, "end": 0, "raw": "0", "start": 0, @@ -346,9 +400,11 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "==", "right": { + "commentStart": 537, "computed": false, "end": 0, "object": { + "commentStart": 537, "end": 0, "name": "end", "start": 0, @@ -356,6 +412,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 541, "end": 0, "raw": "0", "start": 0, @@ -380,14 +437,19 @@ description: Result of parsing food-service-spatula.kcl "final_else": { "body": [ { + "commentStart": 626, "end": 0, "expression": { + "commentStart": 626, "cond": { + "commentStart": 629, "end": 0, "left": { + "commentStart": 629, "computed": false, "end": 0, "object": { + "commentStart": 629, "end": 0, "name": "end", "start": 0, @@ -395,6 +457,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 633, "end": 0, "raw": "0", "start": 0, @@ -411,9 +474,11 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "<", "right": { + "commentStart": 638, "computed": false, "end": 0, "object": { + "commentStart": 638, "end": 0, "name": "start", "start": 0, @@ -421,6 +486,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 644, "end": 0, "raw": "0", "start": 0, @@ -445,19 +511,24 @@ description: Result of parsing food-service-spatula.kcl "final_else": { "body": [ { + "commentStart": 739, "end": 0, "expression": { "arguments": [ { "arguments": [ { + "commentStart": 761, "end": 0, "left": { + "commentStart": 761, "end": 0, "left": { + "commentStart": 761, "computed": false, "end": 0, "object": { + "commentStart": 761, "end": 0, "name": "end", "start": 0, @@ -465,6 +536,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 765, "end": 0, "raw": "1", "start": 0, @@ -481,9 +553,11 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "-", "right": { + "commentStart": 770, "computed": false, "end": 0, "object": { + "commentStart": 770, "end": 0, "name": "start", "start": 0, @@ -491,6 +565,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 776, "end": 0, "raw": "1", "start": 0, @@ -511,11 +586,14 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "/", "right": { + "commentStart": 783, "end": 0, "left": { + "commentStart": 783, "computed": false, "end": 0, "object": { + "commentStart": 783, "end": 0, "name": "end", "start": 0, @@ -523,6 +601,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 787, "end": 0, "raw": "0", "start": 0, @@ -539,9 +618,11 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "-", "right": { + "commentStart": 792, "computed": false, "end": 0, "object": { + "commentStart": 792, "end": 0, "name": "start", "start": 0, @@ -549,6 +630,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 798, "end": 0, "raw": "0", "start": 0, @@ -573,11 +655,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 755, "end": 0, "name": "atan", "start": 0, "type": "Identifier" }, + "commentStart": 755, "end": 0, "start": 0, "type": "CallExpression", @@ -585,11 +669,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 739, "end": 0, "name": "toDegrees", "start": 0, "type": "Identifier" }, + "commentStart": 739, "end": 0, "start": 0, "type": "CallExpression", @@ -600,6 +686,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ExpressionStatement" } ], + "commentStart": 739, "end": 0, "start": 0 }, @@ -607,21 +694,27 @@ description: Result of parsing food-service-spatula.kcl "then_val": { "body": [ { + "commentStart": 655, "end": 0, "expression": { + "commentStart": 655, "end": 0, "left": { "arguments": [ { "arguments": [ { + "commentStart": 671, "end": 0, "left": { + "commentStart": 671, "end": 0, "left": { + "commentStart": 671, "computed": false, "end": 0, "object": { + "commentStart": 671, "end": 0, "name": "end", "start": 0, @@ -629,6 +722,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 675, "end": 0, "raw": "1", "start": 0, @@ -645,9 +739,11 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "-", "right": { + "commentStart": 680, "computed": false, "end": 0, "object": { + "commentStart": 680, "end": 0, "name": "start", "start": 0, @@ -655,6 +751,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 686, "end": 0, "raw": "1", "start": 0, @@ -675,11 +772,14 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "/", "right": { + "commentStart": 693, "end": 0, "left": { + "commentStart": 693, "computed": false, "end": 0, "object": { + "commentStart": 693, "end": 0, "name": "end", "start": 0, @@ -687,6 +787,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 697, "end": 0, "raw": "0", "start": 0, @@ -703,9 +804,11 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "-", "right": { + "commentStart": 702, "computed": false, "end": 0, "object": { + "commentStart": 702, "end": 0, "name": "start", "start": 0, @@ -713,6 +816,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 708, "end": 0, "raw": "0", "start": 0, @@ -737,11 +841,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 665, "end": 0, "name": "atan", "start": 0, "type": "Identifier" }, + "commentStart": 665, "end": 0, "start": 0, "type": "CallExpression", @@ -749,11 +855,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 655, "end": 0, "name": "toDegrees", "start": 0, "type": "Identifier" }, + "commentStart": 655, "end": 0, "start": 0, "type": "CallExpression", @@ -761,6 +869,7 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "+", "right": { + "commentStart": 716, "end": 0, "raw": "180", "start": 0, @@ -780,6 +889,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ExpressionStatement" } ], + "commentStart": 655, "end": 0, "start": 0 }, @@ -791,6 +901,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ExpressionStatement" } ], + "commentStart": 626, "end": 0, "start": 0 }, @@ -798,14 +909,19 @@ description: Result of parsing food-service-spatula.kcl "then_val": { "body": [ { + "commentStart": 550, "end": 0, "expression": { + "commentStart": 550, "cond": { + "commentStart": 553, "end": 0, "left": { + "commentStart": 553, "computed": false, "end": 0, "object": { + "commentStart": 553, "end": 0, "name": "end", "start": 0, @@ -813,6 +929,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 557, "end": 0, "raw": "1", "start": 0, @@ -829,9 +946,11 @@ description: Result of parsing food-service-spatula.kcl }, "operator": ">", "right": { + "commentStart": 562, "computed": false, "end": 0, "object": { + "commentStart": 562, "end": 0, "name": "start", "start": 0, @@ -839,6 +958,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 568, "end": 0, "raw": "1", "start": 0, @@ -863,8 +983,10 @@ description: Result of parsing food-service-spatula.kcl "final_else": { "body": [ { + "commentStart": 601, "end": 0, "expression": { + "commentStart": 601, "end": 0, "raw": "270", "start": 0, @@ -880,6 +1002,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ExpressionStatement" } ], + "commentStart": 601, "end": 0, "start": 0 }, @@ -887,8 +1010,10 @@ description: Result of parsing food-service-spatula.kcl "then_val": { "body": [ { + "commentStart": 579, "end": 0, "expression": { + "commentStart": 579, "end": 0, "raw": "90", "start": 0, @@ -904,6 +1029,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ExpressionStatement" } ], + "commentStart": 579, "end": 0, "start": 0 }, @@ -915,6 +1041,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ExpressionStatement" } ], + "commentStart": 550, "end": 0, "start": 0 }, @@ -931,9 +1058,12 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 816, "declaration": { + "commentStart": 816, "end": 0, "id": { + "commentStart": 816, "end": 0, "name": "dist", "start": 0, @@ -942,15 +1072,19 @@ description: Result of parsing food-service-spatula.kcl "init": { "arguments": [ { + "commentStart": 828, "end": 0, "left": { "arguments": [ { + "commentStart": 832, "end": 0, "left": { + "commentStart": 832, "computed": false, "end": 0, "object": { + "commentStart": 832, "end": 0, "name": "end", "start": 0, @@ -958,6 +1092,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 836, "end": 0, "raw": "1", "start": 0, @@ -974,9 +1109,11 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "-", "right": { + "commentStart": 841, "computed": false, "end": 0, "object": { + "commentStart": 841, "end": 0, "name": "start", "start": 0, @@ -984,6 +1121,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 847, "end": 0, "raw": "1", "start": 0, @@ -1003,6 +1141,7 @@ description: Result of parsing food-service-spatula.kcl "type": "BinaryExpression" }, { + "commentStart": 851, "end": 0, "raw": "2", "start": 0, @@ -1015,11 +1154,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 828, "end": 0, "name": "pow", "start": 0, "type": "Identifier" }, + "commentStart": 828, "end": 0, "start": 0, "type": "CallExpression", @@ -1029,11 +1170,14 @@ description: Result of parsing food-service-spatula.kcl "right": { "arguments": [ { + "commentStart": 860, "end": 0, "left": { + "commentStart": 860, "computed": false, "end": 0, "object": { + "commentStart": 860, "end": 0, "name": "end", "start": 0, @@ -1041,6 +1185,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 864, "end": 0, "raw": "0", "start": 0, @@ -1057,9 +1202,11 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "-", "right": { + "commentStart": 869, "computed": false, "end": 0, "object": { + "commentStart": 869, "end": 0, "name": "start", "start": 0, @@ -1067,6 +1214,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 875, "end": 0, "raw": "0", "start": 0, @@ -1086,6 +1234,7 @@ description: Result of parsing food-service-spatula.kcl "type": "BinaryExpression" }, { + "commentStart": 879, "end": 0, "raw": "2", "start": 0, @@ -1098,11 +1247,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 856, "end": 0, "name": "pow", "start": 0, "type": "Identifier" }, + "commentStart": 856, "end": 0, "start": 0, "type": "CallExpression", @@ -1114,11 +1265,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 823, "end": 0, "name": "sqrt", "start": 0, "type": "Identifier" }, + "commentStart": 823, "end": 0, "start": 0, "type": "CallExpression", @@ -1134,21 +1287,28 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 885, "declaration": { + "commentStart": 885, "end": 0, "id": { + "commentStart": 885, "end": 0, "name": "xstart", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 894, "end": 0, "left": { + "commentStart": 894, "end": 0, "left": { + "commentStart": 894, "end": 0, "left": { + "commentStart": 894, "end": 0, "name": "width", "start": 0, @@ -1157,6 +1317,7 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "/", "right": { + "commentStart": 902, "end": 0, "raw": "2", "start": 0, @@ -1177,8 +1338,10 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 920, "end": 0, "left": { + "commentStart": 920, "end": 0, "name": "angle", "start": 0, @@ -1187,6 +1350,7 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "-", "right": { + "commentStart": 928, "end": 0, "raw": "90", "start": 0, @@ -1203,11 +1367,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 910, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 910, "end": 0, "start": 0, "type": "CallExpression", @@ -1215,11 +1381,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 906, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 906, "end": 0, "start": 0, "type": "CallExpression", @@ -1231,9 +1399,11 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "+", "right": { + "commentStart": 935, "computed": false, "end": 0, "object": { + "commentStart": 935, "end": 0, "name": "start", "start": 0, @@ -1241,6 +1411,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 941, "end": 0, "raw": "0", "start": 0, @@ -1269,21 +1440,28 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 946, "declaration": { + "commentStart": 946, "end": 0, "id": { + "commentStart": 946, "end": 0, "name": "ystart", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 955, "end": 0, "left": { + "commentStart": 955, "end": 0, "left": { + "commentStart": 955, "end": 0, "left": { + "commentStart": 955, "end": 0, "name": "width", "start": 0, @@ -1292,6 +1470,7 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "/", "right": { + "commentStart": 963, "end": 0, "raw": "2", "start": 0, @@ -1312,8 +1491,10 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 981, "end": 0, "left": { + "commentStart": 981, "end": 0, "name": "angle", "start": 0, @@ -1322,6 +1503,7 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "-", "right": { + "commentStart": 989, "end": 0, "raw": "90", "start": 0, @@ -1338,11 +1520,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 971, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 971, "end": 0, "start": 0, "type": "CallExpression", @@ -1350,11 +1534,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 967, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, + "commentStart": 967, "end": 0, "start": 0, "type": "CallExpression", @@ -1366,9 +1552,11 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "+", "right": { + "commentStart": 996, "computed": false, "end": 0, "object": { + "commentStart": 996, "end": 0, "name": "start", "start": 0, @@ -1376,6 +1564,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, "property": { + "commentStart": 1002, "end": 0, "raw": "1", "start": 0, @@ -1404,9 +1593,12 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 1007, "declaration": { + "commentStart": 1007, "end": 0, "id": { + "commentStart": 1007, "end": 0, "name": "slotSketch", "start": 0, @@ -1417,8 +1609,10 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 1035, "elements": [ { + "commentStart": 1036, "end": 0, "name": "xstart", "start": 0, @@ -1426,6 +1620,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, { + "commentStart": 1044, "end": 0, "name": "ystart", "start": 0, @@ -1439,6 +1634,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ArrayExpression" }, { + "commentStart": 1053, "end": 0, "name": "sketch1", "start": 0, @@ -1447,11 +1643,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 1020, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1020, "end": 0, "start": 0, "type": "CallExpression", @@ -1460,11 +1658,14 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 1080, "end": 0, "properties": [ { + "commentStart": 1082, "end": 0, "key": { + "commentStart": 1082, "end": 0, "name": "angle", "start": 0, @@ -1473,6 +1674,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1090, "end": 0, "name": "angle", "start": 0, @@ -1481,8 +1683,10 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 1097, "end": 0, "key": { + "commentStart": 1097, "end": 0, "name": "length", "start": 0, @@ -1491,6 +1695,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1106, "end": 0, "name": "dist", "start": 0, @@ -1504,12 +1709,14 @@ description: Result of parsing food-service-spatula.kcl "type": "ObjectExpression" }, { + "commentStart": 1114, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1117, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1518,11 +1725,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 1069, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1069, "end": 0, "start": 0, "type": "CallExpression", @@ -1531,11 +1740,14 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 1148, "end": 0, "properties": [ { + "commentStart": 1150, "end": 0, "key": { + "commentStart": 1150, "end": 0, "name": "radius", "start": 0, @@ -1544,8 +1756,10 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1159, "end": 0, "left": { + "commentStart": 1159, "end": 0, "name": "width", "start": 0, @@ -1554,6 +1768,7 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "/", "right": { + "commentStart": 1167, "end": 0, "raw": "2", "start": 0, @@ -1570,8 +1785,10 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 1170, "end": 0, "key": { + "commentStart": 1170, "end": 0, "name": "offset", "start": 0, @@ -1580,6 +1797,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1179, "end": 0, "raw": "180", "start": 0, @@ -1597,12 +1815,14 @@ description: Result of parsing food-service-spatula.kcl "type": "ObjectExpression" }, { + "commentStart": 1186, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1189, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1611,11 +1831,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 1134, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 1134, "end": 0, "start": 0, "type": "CallExpression", @@ -1624,11 +1846,14 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 1216, "end": 0, "properties": [ { + "commentStart": 1218, "end": 0, "key": { + "commentStart": 1218, "end": 0, "name": "angle", "start": 0, @@ -1637,6 +1862,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1226, "end": 0, "name": "angle", "start": 0, @@ -1645,8 +1871,10 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 1233, "end": 0, "key": { + "commentStart": 1233, "end": 0, "name": "length", "start": 0, @@ -1656,12 +1884,14 @@ description: Result of parsing food-service-spatula.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1243, "end": 0, "name": "dist", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1242, "end": 0, "operator": "-", "start": 0, @@ -1675,12 +1905,14 @@ description: Result of parsing food-service-spatula.kcl "type": "ObjectExpression" }, { + "commentStart": 1251, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1254, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1689,11 +1921,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 1205, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1205, "end": 0, "start": 0, "type": "CallExpression", @@ -1702,10 +1936,12 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 1287, "elements": [ { "arguments": [ { + "commentStart": 1302, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1713,11 +1949,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 1288, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 1288, "end": 0, "start": 0, "type": "CallExpression", @@ -1726,6 +1964,7 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 1320, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1733,11 +1972,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 1306, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 1306, "end": 0, "start": 0, "type": "CallExpression", @@ -1750,12 +1991,14 @@ description: Result of parsing food-service-spatula.kcl "type": "ArrayExpression" }, { + "commentStart": 1325, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1328, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1764,11 +2007,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 1271, "end": 0, "name": "tangentialArcTo", "start": 0, "type": "Identifier" }, + "commentStart": 1271, "end": 0, "start": 0, "type": "CallExpression", @@ -1777,17 +2022,20 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [], "callee": { + "commentStart": 1344, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1344, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1020, "end": 0, "start": 0, "type": "PipeExpression", @@ -1804,26 +2052,31 @@ description: Result of parsing food-service-spatula.kcl }, { "argument": { + "commentStart": 1361, "end": 0, "name": "slotSketch", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1354, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 510, "end": 0, "start": 0 }, + "commentStart": 481, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 482, "end": 0, "name": "sketch1", "start": 0, @@ -1833,6 +2086,7 @@ description: Result of parsing food-service-spatula.kcl { "type": "Parameter", "identifier": { + "commentStart": 491, "end": 0, "name": "start", "start": 0, @@ -1842,6 +2096,7 @@ description: Result of parsing food-service-spatula.kcl { "type": "Parameter", "identifier": { + "commentStart": 498, "end": 0, "name": "end", "start": 0, @@ -1851,6 +2106,7 @@ description: Result of parsing food-service-spatula.kcl { "type": "Parameter", "identifier": { + "commentStart": 503, "end": 0, "name": "width", "start": 0, @@ -1867,14 +2123,22 @@ description: Result of parsing food-service-spatula.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// function for drawing slots on a sketch given the start and end points as well as a width" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1373, "declaration": { + "commentStart": 1412, "end": 0, "id": { + "commentStart": 1412, "end": 0, "name": "sketch000", "start": 0, @@ -1883,6 +2147,7 @@ description: Result of parsing food-service-spatula.kcl "init": { "arguments": [ { + "commentStart": 1438, "end": 0, "raw": "'XY'", "start": 0, @@ -1892,11 +2157,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 1424, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1424, "end": 0, "start": 0, "type": "CallExpression", @@ -1907,14 +2174,22 @@ description: Result of parsing food-service-spatula.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a sketch on the \"XY\" plane" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1443, "declaration": { + "commentStart": 1480, "end": 0, "id": { + "commentStart": 1480, "end": 0, "name": "flipperProfile", "start": 0, @@ -1925,15 +2200,18 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 1512, "elements": [ { "argument": { + "commentStart": 1514, "end": 0, "name": "flipperLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1513, "end": 0, "operator": "-", "start": 0, @@ -1942,6 +2220,7 @@ description: Result of parsing food-service-spatula.kcl }, { "argument": { + "commentStart": 1530, "end": 0, "raw": "32.0", "start": 0, @@ -1952,6 +2231,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 1529, "end": 0, "operator": "-", "start": 0, @@ -1965,6 +2245,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ArrayExpression" }, { + "commentStart": 1537, "end": 0, "name": "sketch000", "start": 0, @@ -1973,11 +2254,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 1497, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1497, "end": 0, "start": 0, "type": "CallExpression", @@ -1988,14 +2271,17 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 1558, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1564, "elements": [ { + "commentStart": 1565, "end": 0, "name": "flipperLength", "start": 0, @@ -2003,6 +2289,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, { + "commentStart": 1580, "end": 0, "raw": "2.0", "start": 0, @@ -2022,11 +2309,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 1553, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1553, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2038,12 +2327,14 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 1597, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1606, "end": 0, "raw": "60.0", "start": 0, @@ -2058,12 +2349,14 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 1612, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1618, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2073,11 +2366,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 1591, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1591, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2089,21 +2384,25 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 1639, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1645, "elements": [ { "argument": { + "commentStart": 1647, "end": 0, "name": "flipperLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1646, "end": 0, "operator": "-", "start": 0, @@ -2111,6 +2410,7 @@ description: Result of parsing food-service-spatula.kcl "type": "UnaryExpression" }, { + "commentStart": 1662, "end": 0, "raw": "2.0", "start": 0, @@ -2130,11 +2430,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 1634, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1634, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2144,11 +2446,14 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 1677, "end": 0, "properties": [ { + "commentStart": 1686, "end": 0, "key": { + "commentStart": 1686, "end": 0, "name": "angleEnd", "start": 0, @@ -2157,6 +2462,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1697, "end": 0, "raw": "196.912390", "start": 0, @@ -2169,8 +2475,10 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 1716, "end": 0, "key": { + "commentStart": 1716, "end": 0, "name": "angleStart", "start": 0, @@ -2179,6 +2487,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1729, "end": 0, "raw": "163.087610", "start": 0, @@ -2191,8 +2500,10 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 1748, "end": 0, "key": { + "commentStart": 1748, "end": 0, "name": "radius", "start": 0, @@ -2201,6 +2512,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1757, "end": 0, "raw": "110.0", "start": 0, @@ -2218,6 +2530,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ObjectExpression" }, { + "commentStart": 1771, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2225,11 +2538,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 1673, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 1673, "end": 0, "start": 0, "type": "CallExpression", @@ -2238,22 +2553,26 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [], "callee": { + "commentStart": 1779, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1779, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1497, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "5": [ { + "commentStart": 1786, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2276,14 +2595,22 @@ description: Result of parsing food-service-spatula.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a profile of the flipper" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1822, "declaration": { + "commentStart": 1822, "end": 0, "id": { + "commentStart": 1822, "end": 0, "name": "slotProfile000", "start": 0, @@ -2292,6 +2619,7 @@ description: Result of parsing food-service-spatula.kcl "init": { "arguments": [ { + "commentStart": 1844, "end": 0, "name": "sketch000", "start": 0, @@ -2299,9 +2627,11 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, { + "commentStart": 1855, "elements": [ { "argument": { + "commentStart": 1857, "end": 0, "raw": "25", "start": 0, @@ -2312,6 +2642,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 1856, "end": 0, "operator": "-", "start": 0, @@ -2319,6 +2650,7 @@ description: Result of parsing food-service-spatula.kcl "type": "UnaryExpression" }, { + "commentStart": 1861, "end": 0, "raw": "0", "start": 0, @@ -2336,9 +2668,11 @@ description: Result of parsing food-service-spatula.kcl "type": "ArrayExpression" }, { + "commentStart": 1865, "elements": [ { "argument": { + "commentStart": 1867, "end": 0, "raw": "55", "start": 0, @@ -2349,6 +2683,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 1866, "end": 0, "operator": "-", "start": 0, @@ -2356,6 +2691,7 @@ description: Result of parsing food-service-spatula.kcl "type": "UnaryExpression" }, { + "commentStart": 1871, "end": 0, "raw": "0", "start": 0, @@ -2373,6 +2709,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ArrayExpression" }, { + "commentStart": 1875, "end": 0, "name": "flipperSlotWidth", "start": 0, @@ -2381,11 +2718,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 1839, "end": 0, "name": "slot", "start": 0, "type": "Identifier" }, + "commentStart": 1839, "end": 0, "start": 0, "type": "CallExpression", @@ -2401,9 +2740,12 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 1892, "declaration": { + "commentStart": 1930, "end": 0, "id": { + "commentStart": 1930, "end": 0, "name": "slotProfile001", "start": 0, @@ -2412,6 +2754,7 @@ description: Result of parsing food-service-spatula.kcl "init": { "arguments": [ { + "commentStart": 1952, "end": 0, "name": "sketch000", "start": 0, @@ -2419,9 +2762,11 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, { + "commentStart": 1963, "elements": [ { "argument": { + "commentStart": 1965, "end": 0, "raw": "25", "start": 0, @@ -2432,6 +2777,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 1964, "end": 0, "operator": "-", "start": 0, @@ -2439,6 +2785,7 @@ description: Result of parsing food-service-spatula.kcl "type": "UnaryExpression" }, { + "commentStart": 1969, "end": 0, "raw": "18", "start": 0, @@ -2456,9 +2803,11 @@ description: Result of parsing food-service-spatula.kcl "type": "ArrayExpression" }, { + "commentStart": 1974, "elements": [ { "argument": { + "commentStart": 1976, "end": 0, "raw": "55", "start": 0, @@ -2469,6 +2818,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 1975, "end": 0, "operator": "-", "start": 0, @@ -2476,6 +2826,7 @@ description: Result of parsing food-service-spatula.kcl "type": "UnaryExpression" }, { + "commentStart": 1980, "end": 0, "raw": "19", "start": 0, @@ -2493,6 +2844,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ArrayExpression" }, { + "commentStart": 1985, "end": 0, "name": "flipperSlotWidth", "start": 0, @@ -2501,11 +2853,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 1947, "end": 0, "name": "slot", "start": 0, "type": "Identifier" }, + "commentStart": 1947, "end": 0, "start": 0, "type": "CallExpression", @@ -2516,14 +2870,22 @@ description: Result of parsing food-service-spatula.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a profile of the top slot" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2002, "declaration": { + "commentStart": 2043, "end": 0, "id": { + "commentStart": 2043, "end": 0, "name": "slotProfile002", "start": 0, @@ -2532,6 +2894,7 @@ description: Result of parsing food-service-spatula.kcl "init": { "arguments": [ { + "commentStart": 2065, "end": 0, "name": "sketch000", "start": 0, @@ -2539,9 +2902,11 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, { + "commentStart": 2076, "elements": [ { "argument": { + "commentStart": 2078, "end": 0, "raw": "25", "start": 0, @@ -2552,6 +2917,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 2077, "end": 0, "operator": "-", "start": 0, @@ -2560,6 +2926,7 @@ description: Result of parsing food-service-spatula.kcl }, { "argument": { + "commentStart": 2083, "end": 0, "raw": "18", "start": 0, @@ -2570,6 +2937,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 2082, "end": 0, "operator": "-", "start": 0, @@ -2583,9 +2951,11 @@ description: Result of parsing food-service-spatula.kcl "type": "ArrayExpression" }, { + "commentStart": 2088, "elements": [ { "argument": { + "commentStart": 2090, "end": 0, "raw": "55", "start": 0, @@ -2596,6 +2966,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 2089, "end": 0, "operator": "-", "start": 0, @@ -2604,6 +2975,7 @@ description: Result of parsing food-service-spatula.kcl }, { "argument": { + "commentStart": 2095, "end": 0, "raw": "19", "start": 0, @@ -2614,6 +2986,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 2094, "end": 0, "operator": "-", "start": 0, @@ -2627,6 +3000,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ArrayExpression" }, { + "commentStart": 2100, "end": 0, "name": "flipperSlotWidth", "start": 0, @@ -2635,11 +3009,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 2060, "end": 0, "name": "slot", "start": 0, "type": "Identifier" }, + "commentStart": 2060, "end": 0, "start": 0, "type": "CallExpression", @@ -2650,14 +3026,22 @@ description: Result of parsing food-service-spatula.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a profile of the bottom slot" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2117, "declaration": { + "commentStart": 2166, "end": 0, "id": { + "commentStart": 2166, "end": 0, "name": "spatulaProfile", "start": 0, @@ -2666,6 +3050,7 @@ description: Result of parsing food-service-spatula.kcl "init": { "body": [ { + "commentStart": 2183, "end": 0, "name": "flipperProfile", "start": 0, @@ -2675,6 +3060,7 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 2208, "end": 0, "name": "slotProfile000", "start": 0, @@ -2682,6 +3068,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, { + "commentStart": 2224, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2689,11 +3076,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 2203, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 2203, "end": 0, "start": 0, "type": "CallExpression", @@ -2702,6 +3091,7 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 2237, "end": 0, "name": "slotProfile001", "start": 0, @@ -2709,6 +3099,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, { + "commentStart": 2253, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2716,11 +3107,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 2232, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 2232, "end": 0, "start": 0, "type": "CallExpression", @@ -2729,6 +3122,7 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 2266, "end": 0, "name": "slotProfile002", "start": 0, @@ -2736,6 +3130,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, { + "commentStart": 2282, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2743,22 +3138,26 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 2261, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 2261, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 2183, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "3": [ { + "commentStart": 2284, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2781,14 +3180,22 @@ description: Result of parsing food-service-spatula.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a profile with slots for the spatula" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2339, "declaration": { + "commentStart": 2339, "end": 0, "id": { + "commentStart": 2339, "end": 0, "name": "flipper", "start": 0, @@ -2799,12 +3206,14 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 2373, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2382, "end": 0, "name": "flipperThickness", "start": 0, @@ -2814,16 +3223,19 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 2349, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2349, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2357, "end": 0, "name": "spatulaProfile", "start": 0, @@ -2841,18 +3253,21 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 2399, "end": 0, "expression": { "arguments": [ { "type": "LabeledArg", "label": { + "commentStart": 2457, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2466, "end": 0, "name": "flipperFilletRadius", "start": 0, @@ -2863,16 +3278,19 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 2489, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2496, "elements": [ { "arguments": [ { + "commentStart": 2522, "end": 0, "name": "backEdge", "start": 0, @@ -2881,11 +3299,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 2502, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 2502, "end": 0, "start": 0, "type": "CallExpression", @@ -2894,6 +3314,7 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 2561, "end": 0, "name": "backEdge", "start": 0, @@ -2902,11 +3323,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 2537, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 2537, "end": 0, "start": 0, "type": "CallExpression", @@ -2921,16 +3344,19 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 2436, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 2436, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2446, "end": 0, "name": "flipper", "start": 0, @@ -2938,14 +3364,22 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" } }, + "preComments": [ + "", + "", + "// fillet the edges of the flipper" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 2576, "declaration": { + "commentStart": 2644, "end": 0, "id": { + "commentStart": 2644, "end": 0, "name": "sketch001", "start": 0, @@ -2958,21 +3392,25 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 2688, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2697, "end": 0, "left": { "argument": { + "commentStart": 2698, "end": 0, "name": "handleWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2697, "end": 0, "operator": "-", "start": 0, @@ -2981,6 +3419,7 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "/", "right": { + "commentStart": 2712, "end": 0, "raw": "2", "start": 0, @@ -2998,16 +3437,19 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 2670, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 2670, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2682, "end": 0, "raw": "\"XZ\"", "start": 0, @@ -3018,11 +3460,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 2656, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2656, "end": 0, "start": 0, "type": "CallExpression", @@ -3033,14 +3477,22 @@ description: Result of parsing food-service-spatula.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a sketch on the \"XZ\" plane offset by half the thickness" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2715, "declaration": { + "commentStart": 2759, "end": 0, "id": { + "commentStart": 2759, "end": 0, "name": "handleProfile", "start": 0, @@ -3051,8 +3503,10 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 2790, "elements": [ { + "commentStart": 2791, "end": 0, "raw": "0.0", "start": 0, @@ -3064,6 +3518,7 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 2796, "end": 0, "name": "flipperThickness", "start": 0, @@ -3077,6 +3532,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ArrayExpression" }, { + "commentStart": 2815, "end": 0, "name": "sketch001", "start": 0, @@ -3085,11 +3541,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 2775, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2775, "end": 0, "start": 0, "type": "CallExpression", @@ -3100,14 +3558,17 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 2836, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2842, "elements": [ { + "commentStart": 2843, "end": 0, "raw": "31.819805", "start": 0, @@ -3119,6 +3580,7 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 2854, "end": 0, "raw": "31.819805", "start": 0, @@ -3139,12 +3601,14 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 2866, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2872, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3154,11 +3618,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 2831, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2831, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3170,14 +3636,17 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 2901, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2907, "elements": [ { + "commentStart": 2908, "end": 0, "raw": "140.953893", "start": 0, @@ -3189,6 +3658,7 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 2920, "end": 0, "raw": "51.303021", "start": 0, @@ -3208,11 +3678,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 2896, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2896, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3224,15 +3696,18 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 2942, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2948, "elements": [ { "argument": { + "commentStart": 2950, "end": 0, "raw": "1.710101", "start": 0, @@ -3243,6 +3718,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 2949, "end": 0, "operator": "-", "start": 0, @@ -3250,6 +3726,7 @@ description: Result of parsing food-service-spatula.kcl "type": "UnaryExpression" }, { + "commentStart": 2960, "end": 0, "raw": "4.698463", "start": 0, @@ -3269,11 +3746,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 2937, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2937, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3285,15 +3764,18 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 2981, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2987, "elements": [ { "argument": { + "commentStart": 2989, "end": 0, "raw": "141.995517", "start": 0, @@ -3304,6 +3786,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 2988, "end": 0, "operator": "-", "start": 0, @@ -3312,6 +3795,7 @@ description: Result of parsing food-service-spatula.kcl }, { "argument": { + "commentStart": 3002, "end": 0, "raw": "51.682142", "start": 0, @@ -3322,6 +3806,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 3001, "end": 0, "operator": "-", "start": 0, @@ -3338,12 +3823,14 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 3014, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3020, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3353,11 +3840,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 2976, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2976, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3369,15 +3858,18 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 3046, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3052, "elements": [ { "argument": { + "commentStart": 3054, "end": 0, "raw": "36.139148", "start": 0, @@ -3388,6 +3880,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 3053, "end": 0, "operator": "-", "start": 0, @@ -3396,6 +3889,7 @@ description: Result of parsing food-service-spatula.kcl }, { "argument": { + "commentStart": 3066, "end": 0, "raw": "36.139148", "start": 0, @@ -3406,6 +3900,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 3065, "end": 0, "operator": "-", "start": 0, @@ -3421,11 +3916,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 3041, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3041, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3437,12 +3934,14 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 3089, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3098, "end": 0, "raw": "7.071068", "start": 0, @@ -3456,11 +3955,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 3083, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3083, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3470,22 +3971,26 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [], "callee": { + "commentStart": 3113, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 3113, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 2775, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "7": [ { + "commentStart": 3120, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3508,14 +4013,22 @@ description: Result of parsing food-service-spatula.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a profile of the spatula handle" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 3156, "declaration": { + "commentStart": 3156, "end": 0, "id": { + "commentStart": 3156, "end": 0, "name": "handle", "start": 0, @@ -3526,12 +4039,14 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 3188, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3197, "end": 0, "name": "handleWidth", "start": 0, @@ -3541,16 +4056,19 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 3165, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 3165, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 3173, "end": 0, "name": "handleProfile", "start": 0, @@ -3568,18 +4086,21 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 3209, "end": 0, "expression": { "arguments": [ { "type": "LabeledArg", "label": { + "commentStart": 3272, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3281, "end": 0, "raw": "4", "start": 0, @@ -3594,16 +4115,19 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 3286, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3293, "elements": [ { "arguments": [ { + "commentStart": 3319, "end": 0, "name": "handleBottomEdge", "start": 0, @@ -3612,11 +4136,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 3299, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 3299, "end": 0, "start": 0, "type": "CallExpression", @@ -3625,6 +4151,7 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 3362, "end": 0, "name": "handleTopEdge", "start": 0, @@ -3633,11 +4160,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 3342, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 3342, "end": 0, "start": 0, "type": "CallExpression", @@ -3652,16 +4181,19 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 3252, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 3252, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 3262, "end": 0, "name": "handle", "start": 0, @@ -3669,25 +4201,36 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" } }, + "preComments": [ + "", + "", + "// fillet the bend of the spatula handle" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 3382, "declaration": { + "commentStart": 3436, "end": 0, "id": { + "commentStart": 3436, "end": 0, "name": "handlePlane", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 3450, "end": 0, "properties": [ { + "commentStart": 3454, "end": 0, "key": { + "commentStart": 3454, "end": 0, "name": "plane", "start": 0, @@ -3696,11 +4239,14 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3462, "end": 0, "properties": [ { + "commentStart": 3468, "end": 0, "key": { + "commentStart": 3468, "end": 0, "name": "origin", "start": 0, @@ -3709,8 +4255,10 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3477, "elements": [ { + "commentStart": 3478, "end": 0, "raw": "208.593833", "start": 0, @@ -3722,6 +4270,7 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 3490, "end": 0, "raw": "0.0", "start": 0, @@ -3733,6 +4282,7 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 3495, "end": 0, "raw": "75.921946", "start": 0, @@ -3751,8 +4301,10 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 3511, "end": 0, "key": { + "commentStart": 3511, "end": 0, "name": "xAxis", "start": 0, @@ -3761,8 +4313,10 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3519, "elements": [ { + "commentStart": 3520, "end": 0, "raw": "0.342020", "start": 0, @@ -3775,6 +4329,7 @@ description: Result of parsing food-service-spatula.kcl }, { "argument": { + "commentStart": 3531, "end": 0, "raw": "0.0", "start": 0, @@ -3785,6 +4340,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 3530, "end": 0, "operator": "-", "start": 0, @@ -3793,6 +4349,7 @@ description: Result of parsing food-service-spatula.kcl }, { "argument": { + "commentStart": 3537, "end": 0, "raw": "0.939693", "start": 0, @@ -3803,6 +4360,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 3536, "end": 0, "operator": "-", "start": 0, @@ -3817,8 +4375,10 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 3552, "end": 0, "key": { + "commentStart": 3552, "end": 0, "name": "yAxis", "start": 0, @@ -3827,8 +4387,10 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3560, "elements": [ { + "commentStart": 3561, "end": 0, "raw": "0.0", "start": 0, @@ -3840,6 +4402,7 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 3566, "end": 0, "raw": "1.0", "start": 0, @@ -3851,6 +4414,7 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 3571, "end": 0, "raw": "0.0", "start": 0, @@ -3869,8 +4433,10 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 3581, "end": 0, "key": { + "commentStart": 3581, "end": 0, "name": "zAxis", "start": 0, @@ -3879,8 +4445,10 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3589, "elements": [ { + "commentStart": 3590, "end": 0, "raw": "0.939693", "start": 0, @@ -3893,6 +4461,7 @@ description: Result of parsing food-service-spatula.kcl }, { "argument": { + "commentStart": 3601, "end": 0, "raw": "0.0", "start": 0, @@ -3903,6 +4472,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 3600, "end": 0, "operator": "-", "start": 0, @@ -3910,6 +4480,7 @@ description: Result of parsing food-service-spatula.kcl "type": "UnaryExpression" }, { + "commentStart": 3606, "end": 0, "raw": "0.342020", "start": 0, @@ -3943,14 +4514,22 @@ description: Result of parsing food-service-spatula.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// define a plane which is at the end of the handle" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 3621, "declaration": { + "commentStart": 3662, "end": 0, "id": { + "commentStart": 3662, "end": 0, "name": "sketch002", "start": 0, @@ -3959,6 +4538,7 @@ description: Result of parsing food-service-spatula.kcl "init": { "arguments": [ { + "commentStart": 3688, "end": 0, "name": "handlePlane", "start": 0, @@ -3967,11 +4547,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 3674, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 3674, "end": 0, "start": 0, "type": "CallExpression", @@ -3982,14 +4564,22 @@ description: Result of parsing food-service-spatula.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a sketch on the handle plane" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 3700, "declaration": { + "commentStart": 3734, "end": 0, "id": { + "commentStart": 3734, "end": 0, "name": "gripProfile", "start": 0, @@ -4000,9 +4590,11 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 3763, "elements": [ { "argument": { + "commentStart": 3765, "end": 0, "raw": "26.806746", "start": 0, @@ -4013,6 +4605,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 3764, "end": 0, "operator": "-", "start": 0, @@ -4021,6 +4614,7 @@ description: Result of parsing food-service-spatula.kcl }, { "argument": { + "commentStart": 3777, "end": 0, "raw": "10.0", "start": 0, @@ -4031,6 +4625,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 3776, "end": 0, "operator": "-", "start": 0, @@ -4044,6 +4639,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ArrayExpression" }, { + "commentStart": 3784, "end": 0, "name": "sketch002", "start": 0, @@ -4052,11 +4648,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 3748, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 3748, "end": 0, "start": 0, "type": "CallExpression", @@ -4067,14 +4665,17 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 3806, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3815, "end": 0, "left": { + "commentStart": 3815, "end": 0, "name": "gripWidth", "start": 0, @@ -4083,8 +4684,10 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "-", "right": { + "commentStart": 3828, "end": 0, "left": { + "commentStart": 3828, "end": 0, "raw": "2", "start": 0, @@ -4097,6 +4700,7 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "*", "right": { + "commentStart": 3832, "end": 0, "name": "gripFilletRadius", "start": 0, @@ -4114,11 +4718,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 3800, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3800, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4128,11 +4734,14 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 3860, "end": 0, "properties": [ { + "commentStart": 3869, "end": 0, "key": { + "commentStart": 3869, "end": 0, "name": "angleStart", "start": 0, @@ -4142,6 +4751,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 3883, "end": 0, "raw": "90.0", "start": 0, @@ -4152,6 +4762,7 @@ description: Result of parsing food-service-spatula.kcl "suffix": "None" } }, + "commentStart": 3882, "end": 0, "operator": "-", "start": 0, @@ -4160,8 +4771,10 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 3896, "end": 0, "key": { + "commentStart": 3896, "end": 0, "name": "angleEnd", "start": 0, @@ -4170,6 +4783,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3907, "end": 0, "raw": "0.0", "start": 0, @@ -4182,8 +4796,10 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 3919, "end": 0, "key": { + "commentStart": 3919, "end": 0, "name": "radius", "start": 0, @@ -4192,6 +4808,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3928, "end": 0, "name": "gripFilletRadius", "start": 0, @@ -4205,6 +4822,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ObjectExpression" }, { + "commentStart": 3953, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4212,11 +4830,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 3856, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 3856, "end": 0, "start": 0, "type": "CallExpression", @@ -4227,14 +4847,17 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 3967, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3976, "end": 0, "left": { + "commentStart": 3976, "end": 0, "name": "gripHeight", "start": 0, @@ -4243,8 +4866,10 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "-", "right": { + "commentStart": 3990, "end": 0, "left": { + "commentStart": 3990, "end": 0, "raw": "2", "start": 0, @@ -4257,6 +4882,7 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "*", "right": { + "commentStart": 3994, "end": 0, "name": "gripFilletRadius", "start": 0, @@ -4274,11 +4900,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 3961, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 3961, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4288,11 +4916,14 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 4022, "end": 0, "properties": [ { + "commentStart": 4031, "end": 0, "key": { + "commentStart": 4031, "end": 0, "name": "angleStart", "start": 0, @@ -4301,6 +4932,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4044, "end": 0, "raw": "0.0", "start": 0, @@ -4313,8 +4945,10 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 4056, "end": 0, "key": { + "commentStart": 4056, "end": 0, "name": "angleEnd", "start": 0, @@ -4323,6 +4957,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4067, "end": 0, "raw": "90.0", "start": 0, @@ -4335,8 +4970,10 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 4080, "end": 0, "key": { + "commentStart": 4080, "end": 0, "name": "radius", "start": 0, @@ -4345,6 +4982,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4089, "end": 0, "name": "gripFilletRadius", "start": 0, @@ -4358,6 +4996,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ObjectExpression" }, { + "commentStart": 4114, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4365,11 +5004,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 4018, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 4018, "end": 0, "start": 0, "type": "CallExpression", @@ -4380,6 +5021,7 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 4128, "end": 0, "name": "length", "start": 0, @@ -4387,8 +5029,10 @@ description: Result of parsing food-service-spatula.kcl }, "arg": { "argument": { + "commentStart": 4139, "end": 0, "left": { + "commentStart": 4139, "end": 0, "name": "gripWidth", "start": 0, @@ -4397,8 +5041,10 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "-", "right": { + "commentStart": 4152, "end": 0, "left": { + "commentStart": 4152, "end": 0, "raw": "2", "start": 0, @@ -4411,6 +5057,7 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "*", "right": { + "commentStart": 4156, "end": 0, "name": "gripFilletRadius", "start": 0, @@ -4425,6 +5072,7 @@ description: Result of parsing food-service-spatula.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 4137, "end": 0, "operator": "-", "start": 0, @@ -4434,11 +5082,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 4122, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 4122, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4448,11 +5098,14 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 4185, "end": 0, "properties": [ { + "commentStart": 4194, "end": 0, "key": { + "commentStart": 4194, "end": 0, "name": "angleStart", "start": 0, @@ -4461,6 +5114,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4207, "end": 0, "raw": "90.0", "start": 0, @@ -4473,8 +5127,10 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 4220, "end": 0, "key": { + "commentStart": 4220, "end": 0, "name": "angleEnd", "start": 0, @@ -4483,6 +5139,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4231, "end": 0, "raw": "180.0", "start": 0, @@ -4495,8 +5152,10 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 4245, "end": 0, "key": { + "commentStart": 4245, "end": 0, "name": "radius", "start": 0, @@ -4505,6 +5164,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4254, "end": 0, "name": "gripFilletRadius", "start": 0, @@ -4518,6 +5178,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ObjectExpression" }, { + "commentStart": 4279, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4525,11 +5186,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 4181, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 4181, "end": 0, "start": 0, "type": "CallExpression", @@ -4540,6 +5203,7 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 4293, "end": 0, "name": "length", "start": 0, @@ -4547,8 +5211,10 @@ description: Result of parsing food-service-spatula.kcl }, "arg": { "argument": { + "commentStart": 4304, "end": 0, "left": { + "commentStart": 4304, "end": 0, "name": "gripHeight", "start": 0, @@ -4557,8 +5223,10 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "-", "right": { + "commentStart": 4318, "end": 0, "left": { + "commentStart": 4318, "end": 0, "raw": "2", "start": 0, @@ -4571,6 +5239,7 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "*", "right": { + "commentStart": 4322, "end": 0, "name": "gripFilletRadius", "start": 0, @@ -4585,6 +5254,7 @@ description: Result of parsing food-service-spatula.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 4302, "end": 0, "operator": "-", "start": 0, @@ -4595,12 +5265,14 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 4342, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4348, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4610,11 +5282,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 4287, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 4287, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4624,11 +5298,14 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [ { + "commentStart": 4371, "end": 0, "properties": [ { + "commentStart": 4380, "end": 0, "key": { + "commentStart": 4380, "end": 0, "name": "angleStart", "start": 0, @@ -4637,6 +5314,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4393, "end": 0, "raw": "180.0", "start": 0, @@ -4649,8 +5327,10 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 4407, "end": 0, "key": { + "commentStart": 4407, "end": 0, "name": "angleEnd", "start": 0, @@ -4659,6 +5339,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4418, "end": 0, "raw": "270.0", "start": 0, @@ -4671,8 +5352,10 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 4432, "end": 0, "key": { + "commentStart": 4432, "end": 0, "name": "radius", "start": 0, @@ -4681,6 +5364,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4441, "end": 0, "name": "gripFilletRadius", "start": 0, @@ -4694,6 +5378,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ObjectExpression" }, { + "commentStart": 4466, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4701,11 +5386,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 4367, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 4367, "end": 0, "start": 0, "type": "CallExpression", @@ -4714,22 +5401,26 @@ description: Result of parsing food-service-spatula.kcl { "arguments": [], "callee": { + "commentStart": 4474, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 4474, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 3748, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "9": [ { + "commentStart": 4481, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4752,14 +5443,22 @@ description: Result of parsing food-service-spatula.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a profile of the grip" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 4530, "declaration": { + "commentStart": 4530, "end": 0, "id": { + "commentStart": 4530, "end": 0, "name": "grip", "start": 0, @@ -4770,6 +5469,7 @@ description: Result of parsing food-service-spatula.kcl { "type": "LabeledArg", "label": { + "commentStart": 4558, "end": 0, "name": "length", "start": 0, @@ -4777,12 +5477,14 @@ description: Result of parsing food-service-spatula.kcl }, "arg": { "argument": { + "commentStart": 4568, "end": 0, "name": "gripLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4567, "end": 0, "operator": "-", "start": 0, @@ -4792,16 +5494,19 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 4537, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 4537, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 4545, "end": 0, "name": "gripProfile", "start": 0, @@ -4819,9 +5524,12 @@ description: Result of parsing food-service-spatula.kcl "type": "VariableDeclaration" }, { + "commentStart": 4579, "declaration": { + "commentStart": 4625, "end": 0, "id": { + "commentStart": 4625, "end": 0, "name": "sketch003", "start": 0, @@ -4830,6 +5538,7 @@ description: Result of parsing food-service-spatula.kcl "init": { "arguments": [ { + "commentStart": 4651, "end": 0, "name": "grip", "start": 0, @@ -4837,6 +5546,7 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, { + "commentStart": 4657, "end": 0, "name": "gripEdgeTop", "start": 0, @@ -4845,11 +5555,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 4637, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 4637, "end": 0, "start": 0, "type": "CallExpression", @@ -4860,14 +5572,22 @@ description: Result of parsing food-service-spatula.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a sketch on the grip for the hole" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 4669, "declaration": { + "commentStart": 4709, "end": 0, "id": { + "commentStart": 4709, "end": 0, "name": "gripHoleProfile", "start": 0, @@ -4876,6 +5596,7 @@ description: Result of parsing food-service-spatula.kcl "init": { "arguments": [ { + "commentStart": 4732, "end": 0, "name": "sketch003", "start": 0, @@ -4883,8 +5604,10 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" }, { + "commentStart": 4743, "elements": [ { + "commentStart": 4744, "end": 0, "raw": "0", "start": 0, @@ -4896,6 +5619,7 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 4747, "end": 0, "raw": "200", "start": 0, @@ -4913,8 +5637,10 @@ description: Result of parsing food-service-spatula.kcl "type": "ArrayExpression" }, { + "commentStart": 4753, "elements": [ { + "commentStart": 4754, "end": 0, "raw": "0", "start": 0, @@ -4926,6 +5652,7 @@ description: Result of parsing food-service-spatula.kcl } }, { + "commentStart": 4757, "end": 0, "raw": "210", "start": 0, @@ -4943,6 +5670,7 @@ description: Result of parsing food-service-spatula.kcl "type": "ArrayExpression" }, { + "commentStart": 4763, "end": 0, "name": "gripSlotWidth", "start": 0, @@ -4951,11 +5679,13 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 4727, "end": 0, "name": "slot", "start": 0, "type": "Identifier" }, + "commentStart": 4727, "end": 0, "start": 0, "type": "CallExpression", @@ -4966,32 +5696,42 @@ description: Result of parsing food-service-spatula.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a profile for the grip hole" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 4777, "end": 0, "expression": { "arguments": [ { "type": "LabeledArg", "label": { + "commentStart": 4830, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4839, "end": 0, "left": { "argument": { + "commentStart": 4840, "end": 0, "name": "gripWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4839, "end": 0, "operator": "-", "start": 0, @@ -5000,6 +5740,7 @@ description: Result of parsing food-service-spatula.kcl }, "operator": "-", "right": { + "commentStart": 4850, "end": 0, "raw": "20", "start": 0, @@ -5017,16 +5758,19 @@ description: Result of parsing food-service-spatula.kcl } ], "callee": { + "commentStart": 4805, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 4805, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 4813, "end": 0, "name": "gripHoleProfile", "start": 0, @@ -5034,25 +5778,42 @@ description: Result of parsing food-service-spatula.kcl "type": "Identifier" } }, + "preComments": [ + "", + "", + "// cut a hole in the grip" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 97, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Food Service Spatula", + "// Use these spatulas for mixing, flipping, and scraping.", + "", + "", + "// Set units" + ], "properties": [ { + "commentStart": 106, "end": 0, "key": { + "commentStart": 106, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -5061,6 +5822,7 @@ description: Result of parsing food-service-spatula.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 126, "end": 0, "name": "mm", "start": 0, @@ -5074,256 +5836,16 @@ description: Result of parsing food-service-spatula.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "9": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "function for drawing slots on a sketch given the start and end points as well as a width", - "style": "line" - } - } - ], - "10": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a sketch on the \"XY\" plane", - "style": "line" - } - } - ], - "11": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a profile of the flipper", - "style": "line" - } - } - ], - "13": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a profile of the top slot", - "style": "line" - } - } - ], - "14": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a profile of the bottom slot", - "style": "line" - } - } - ], - "15": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a profile with slots for the spatula", - "style": "line" - } - } - ], - "17": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "fillet the edges of the flipper", - "style": "line" - } - } - ], - "18": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a sketch on the \"XZ\" plane offset by half the thickness", - "style": "line" - } - } - ], - "19": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a profile of the spatula handle", - "style": "line" - } - } - ], - "21": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "fillet the bend of the spatula handle", - "style": "line" - } - } - ], - "22": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "define a plane which is at the end of the handle", - "style": "line" - } - } - ], - "23": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a sketch on the handle plane", - "style": "line" - } - } - ], - "24": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a profile of the grip", - "style": "line" - } - } - ], - "26": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a sketch on the grip for the hole", - "style": "line" - } - } - ], - "27": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a profile for the grip hole", - "style": "line" - } - } - ], - "28": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "cut a hole in the grip", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Food Service Spatula", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Use these spatulas for mixing, flipping, and scraping.", - "style": "line" - } - }, - { + "commentStart": 129, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants in millimeters (mm)", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/food-service-spatula/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/food-service-spatula/program_memory.snap index d7b3295b5..941874b6d 100644 --- a/rust/kcl-lib/tests/kcl_samples/food-service-spatula/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/food-service-spatula/program_memory.snap @@ -37,6 +37,7 @@ description: Variables in memory after executing food-service-spatula.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1618, "end": 1627, "start": 1618, "type": "TagDeclarator", @@ -99,6 +100,7 @@ description: Variables in memory after executing food-service-spatula.kcl -30.0 ], "tag": { + "commentStart": 1618, "end": 1627, "start": 1618, "type": "TagDeclarator", @@ -305,6 +307,7 @@ description: Variables in memory after executing food-service-spatula.kcl -30.0 ], "tag": { + "commentStart": 1618, "end": 1627, "start": 1618, "type": "TagDeclarator", @@ -523,6 +526,7 @@ description: Variables in memory after executing food-service-spatula.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4348, "end": 4360, "start": 4348, "type": "TagDeclarator", @@ -684,6 +688,7 @@ description: Variables in memory after executing food-service-spatula.kcl 7.0 ], "tag": { + "commentStart": 4348, "end": 4360, "start": 4348, "type": "TagDeclarator", @@ -857,6 +862,7 @@ description: Variables in memory after executing food-service-spatula.kcl 200.0 ], "tag": { + "commentStart": 1117, "end": 1125, "start": 1117, "type": "TagDeclarator", @@ -886,6 +892,7 @@ description: Variables in memory after executing food-service-spatula.kcl 210.0 ], "tag": { + "commentStart": 1189, "end": 1196, "start": 1189, "type": "TagDeclarator", @@ -910,6 +917,7 @@ description: Variables in memory after executing food-service-spatula.kcl 210.0 ], "tag": { + "commentStart": 1254, "end": 1262, "start": 1254, "type": "TagDeclarator", @@ -939,6 +947,7 @@ description: Variables in memory after executing food-service-spatula.kcl 200.0 ], "tag": { + "commentStart": 1328, "end": 1335, "start": 1328, "type": "TagDeclarator", @@ -1045,6 +1054,7 @@ description: Variables in memory after executing food-service-spatula.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4348, "end": 4360, "start": 4348, "type": "TagDeclarator", @@ -1206,6 +1216,7 @@ description: Variables in memory after executing food-service-spatula.kcl 7.0 ], "tag": { + "commentStart": 4348, "end": 4360, "start": 4348, "type": "TagDeclarator", @@ -1539,6 +1550,7 @@ description: Variables in memory after executing food-service-spatula.kcl 7.0 ], "tag": { + "commentStart": 4348, "end": 4360, "start": 4348, "type": "TagDeclarator", @@ -1696,6 +1708,7 @@ description: Variables in memory after executing food-service-spatula.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2872, "end": 2889, "start": 2872, "type": "TagDeclarator", @@ -1722,6 +1735,7 @@ description: Variables in memory after executing food-service-spatula.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 3020, "end": 3034, "start": 3020, "type": "TagDeclarator", @@ -1765,6 +1779,7 @@ description: Variables in memory after executing food-service-spatula.kcl 3.5 ], "tag": { + "commentStart": 2872, "end": 2889, "start": 2872, "type": "TagDeclarator", @@ -1827,6 +1842,7 @@ description: Variables in memory after executing food-service-spatula.kcl 91.3213 ], "tag": { + "commentStart": 3020, "end": 3034, "start": 3020, "type": "TagDeclarator", @@ -2177,6 +2193,7 @@ description: Variables in memory after executing food-service-spatula.kcl 3.5 ], "tag": { + "commentStart": 2872, "end": 2889, "start": 2872, "type": "TagDeclarator", @@ -2239,6 +2256,7 @@ description: Variables in memory after executing food-service-spatula.kcl 91.3213 ], "tag": { + "commentStart": 3020, "end": 3034, "start": 3020, "type": "TagDeclarator", @@ -2569,6 +2587,7 @@ description: Variables in memory after executing food-service-spatula.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4348, "end": 4360, "start": 4348, "type": "TagDeclarator", @@ -2730,6 +2749,7 @@ description: Variables in memory after executing food-service-spatula.kcl 7.0 ], "tag": { + "commentStart": 4348, "end": 4360, "start": 4348, "type": "TagDeclarator", @@ -2879,6 +2899,7 @@ description: Variables in memory after executing food-service-spatula.kcl 5.0 ], "tag": { + "commentStart": 1117, "end": 1125, "start": 1117, "type": "TagDeclarator", @@ -2908,6 +2929,7 @@ description: Variables in memory after executing food-service-spatula.kcl 5.0 ], "tag": { + "commentStart": 1189, "end": 1196, "start": 1189, "type": "TagDeclarator", @@ -2932,6 +2954,7 @@ description: Variables in memory after executing food-service-spatula.kcl -5.0 ], "tag": { + "commentStart": 1254, "end": 1262, "start": 1254, "type": "TagDeclarator", @@ -2961,6 +2984,7 @@ description: Variables in memory after executing food-service-spatula.kcl -5.0 ], "tag": { + "commentStart": 1328, "end": 1335, "start": 1328, "type": "TagDeclarator", @@ -3083,6 +3107,7 @@ description: Variables in memory after executing food-service-spatula.kcl 22.9972 ], "tag": { + "commentStart": 1117, "end": 1125, "start": 1117, "type": "TagDeclarator", @@ -3112,6 +3137,7 @@ description: Variables in memory after executing food-service-spatula.kcl 23.9972 ], "tag": { + "commentStart": 1189, "end": 1196, "start": 1189, "type": "TagDeclarator", @@ -3136,6 +3162,7 @@ description: Variables in memory after executing food-service-spatula.kcl 14.0028 ], "tag": { + "commentStart": 1254, "end": 1262, "start": 1254, "type": "TagDeclarator", @@ -3165,6 +3192,7 @@ description: Variables in memory after executing food-service-spatula.kcl 13.0028 ], "tag": { + "commentStart": 1328, "end": 1335, "start": 1328, "type": "TagDeclarator", @@ -3287,6 +3315,7 @@ description: Variables in memory after executing food-service-spatula.kcl -13.0028 ], "tag": { + "commentStart": 1117, "end": 1125, "start": 1117, "type": "TagDeclarator", @@ -3316,6 +3345,7 @@ description: Variables in memory after executing food-service-spatula.kcl -14.0028 ], "tag": { + "commentStart": 1189, "end": 1196, "start": 1189, "type": "TagDeclarator", @@ -3340,6 +3370,7 @@ description: Variables in memory after executing food-service-spatula.kcl -23.9972 ], "tag": { + "commentStart": 1254, "end": 1262, "start": 1254, "type": "TagDeclarator", @@ -3369,6 +3400,7 @@ description: Variables in memory after executing food-service-spatula.kcl -22.9972 ], "tag": { + "commentStart": 1328, "end": 1335, "start": 1328, "type": "TagDeclarator", @@ -3510,6 +3542,7 @@ description: Variables in memory after executing food-service-spatula.kcl -30.0 ], "tag": { + "commentStart": 1618, "end": 1627, "start": 1618, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/kcl_samples/french-press/ast.snap b/rust/kcl-lib/tests/kcl_samples/french-press/ast.snap index 6f4bfbc51..bd6f75de8 100644 --- a/rust/kcl-lib/tests/kcl_samples/french-press/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/french-press/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing french-press.kcl "Ok": { "body": [ { + "commentStart": 104, "declaration": { + "commentStart": 126, "end": 0, "id": { + "commentStart": 126, "end": 0, "name": "carafeDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 143, "end": 0, "raw": "4.41", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing french-press.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 148, "declaration": { + "commentStart": 148, "end": 0, "id": { + "commentStart": 148, "end": 0, "name": "carafeHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 163, "end": 0, "raw": "7.32", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing french-press.kcl "type": "VariableDeclaration" }, { + "commentStart": 168, "declaration": { + "commentStart": 168, "end": 0, "id": { + "commentStart": 168, "end": 0, "name": "handleThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 186, "end": 0, "raw": "0.65", "start": 0, @@ -93,9 +108,12 @@ description: Result of parsing french-press.kcl "type": "VariableDeclaration" }, { + "commentStart": 190, "declaration": { + "commentStart": 229, "end": 0, "id": { + "commentStart": 229, "end": 0, "name": "sketch001", "start": 0, @@ -106,6 +124,7 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 255, "end": 0, "raw": "'XZ'", "start": 0, @@ -115,11 +134,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 241, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 241, "end": 0, "start": 0, "type": "CallExpression", @@ -128,10 +149,13 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 281, "elements": [ { + "commentStart": 282, "end": 0, "left": { + "commentStart": 282, "end": 0, "name": "carafeDiameter", "start": 0, @@ -140,6 +164,7 @@ description: Result of parsing french-press.kcl }, "operator": "/", "right": { + "commentStart": 299, "end": 0, "raw": "2", "start": 0, @@ -155,6 +180,7 @@ description: Result of parsing french-press.kcl "type": "BinaryExpression" }, { + "commentStart": 302, "end": 0, "raw": "5.7", "start": 0, @@ -172,6 +198,7 @@ description: Result of parsing french-press.kcl "type": "ArrayExpression" }, { + "commentStart": 308, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -179,11 +206,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 266, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 266, "end": 0, "start": 0, "type": "CallExpression", @@ -192,8 +221,10 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 327, "elements": [ { + "commentStart": 328, "end": 0, "raw": "0", "start": 0, @@ -205,6 +236,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 331, "end": 0, "raw": "0.1", "start": 0, @@ -222,12 +254,14 @@ description: Result of parsing french-press.kcl "type": "ArrayExpression" }, { + "commentStart": 337, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 340, "end": 0, "start": 0, "type": "TagDeclarator", @@ -236,11 +270,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 316, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 316, "end": 0, "start": 0, "type": "CallExpression", @@ -249,12 +285,15 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 379, "elements": [ { + "commentStart": 388, "end": 0, "left": { "arguments": [ { + "commentStart": 395, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -263,11 +302,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 388, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 388, "end": 0, "start": 0, "type": "CallExpression", @@ -275,6 +316,7 @@ description: Result of parsing french-press.kcl }, "operator": "-", "right": { + "commentStart": 419, "end": 0, "raw": "90", "start": 0, @@ -291,6 +333,7 @@ description: Result of parsing french-press.kcl }, { "argument": { + "commentStart": 431, "end": 0, "raw": "0.75", "start": 0, @@ -301,6 +344,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 430, "end": 0, "operator": "-", "start": 0, @@ -314,12 +358,14 @@ description: Result of parsing french-press.kcl "type": "ArrayExpression" }, { + "commentStart": 444, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 447, "end": 0, "start": 0, "type": "TagDeclarator", @@ -328,11 +374,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 368, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 368, "end": 0, "start": 0, "type": "CallExpression", @@ -341,10 +389,12 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 486, "elements": [ { "arguments": [ { + "commentStart": 502, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -353,11 +403,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 495, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 495, "end": 0, "start": 0, "type": "CallExpression", @@ -367,6 +419,7 @@ description: Result of parsing french-press.kcl "argument": { "arguments": [ { + "commentStart": 540, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -375,16 +428,19 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 533, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 533, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 532, "end": 0, "operator": "-", "start": 0, @@ -398,12 +454,14 @@ description: Result of parsing french-press.kcl "type": "ArrayExpression" }, { + "commentStart": 570, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 573, "end": 0, "start": 0, "type": "TagDeclarator", @@ -412,11 +470,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 475, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 475, "end": 0, "start": 0, "type": "CallExpression", @@ -427,16 +487,19 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 606, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 620, "elements": [ { "arguments": [ { + "commentStart": 635, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -444,11 +507,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 621, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 621, "end": 0, "start": 0, "type": "CallExpression", @@ -457,6 +522,7 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 653, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -464,11 +530,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 639, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 639, "end": 0, "start": 0, "type": "CallExpression", @@ -483,11 +551,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 601, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 601, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -497,11 +567,13 @@ description: Result of parsing french-press.kcl { "arguments": [], "callee": { + "commentStart": 663, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 663, "end": 0, "start": 0, "type": "CallExpression", @@ -512,12 +584,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 684, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 692, "end": 0, "raw": "360", "start": 0, @@ -532,12 +606,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 697, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 704, "end": 0, "raw": "'Y'", "start": 0, @@ -548,11 +624,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 676, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 676, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -560,11 +638,13 @@ description: Result of parsing french-press.kcl "unlabeled": null } ], + "commentStart": 241, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "7": [ { + "commentStart": 708, "end": 0, "start": 0, "type": "NonCodeNode", @@ -587,25 +667,36 @@ description: Result of parsing french-press.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Upper ring of the metal structure" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 759, "declaration": { + "commentStart": 759, "end": 0, "id": { + "commentStart": 759, "end": 0, "name": "plane001", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 770, "end": 0, "properties": [ { + "commentStart": 774, "end": 0, "key": { + "commentStart": 774, "end": 0, "name": "plane", "start": 0, @@ -614,11 +705,14 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 782, "end": 0, "properties": [ { + "commentStart": 788, "end": 0, "key": { + "commentStart": 788, "end": 0, "name": "origin", "start": 0, @@ -627,9 +721,11 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 797, "elements": [ { "argument": { + "commentStart": 799, "end": 0, "raw": "0.26", "start": 0, @@ -640,6 +736,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 798, "end": 0, "operator": "-", "start": 0, @@ -647,6 +744,7 @@ description: Result of parsing french-press.kcl "type": "UnaryExpression" }, { + "commentStart": 805, "end": 0, "raw": "0.26", "start": 0, @@ -658,6 +756,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 811, "end": 0, "raw": "0.0", "start": 0, @@ -676,8 +775,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 821, "end": 0, "key": { + "commentStart": 821, "end": 0, "name": "xAxis", "start": 0, @@ -686,8 +787,10 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 829, "elements": [ { + "commentStart": 830, "end": 0, "raw": "1", "start": 0, @@ -699,6 +802,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 833, "end": 0, "raw": "1", "start": 0, @@ -710,6 +814,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 836, "end": 0, "raw": "0.0", "start": 0, @@ -728,8 +833,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 846, "end": 0, "key": { + "commentStart": 846, "end": 0, "name": "yAxis", "start": 0, @@ -738,8 +845,10 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 854, "elements": [ { + "commentStart": 855, "end": 0, "raw": "0.0", "start": 0, @@ -751,6 +860,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 860, "end": 0, "raw": "0.0", "start": 0, @@ -762,6 +872,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 865, "end": 0, "raw": "1.0", "start": 0, @@ -780,8 +891,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 875, "end": 0, "key": { + "commentStart": 875, "end": 0, "name": "zAxis", "start": 0, @@ -790,8 +903,10 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 883, "elements": [ { + "commentStart": 884, "end": 0, "raw": "1.0", "start": 0, @@ -803,6 +918,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 889, "end": 0, "raw": "0.0", "start": 0, @@ -814,6 +930,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 894, "end": 0, "raw": "0.0", "start": 0, @@ -852,9 +969,12 @@ description: Result of parsing french-press.kcl "type": "VariableDeclaration" }, { + "commentStart": 904, "declaration": { + "commentStart": 945, "end": 0, "id": { + "commentStart": 945, "end": 0, "name": "sketch002", "start": 0, @@ -865,6 +985,7 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 971, "end": 0, "name": "plane001", "start": 0, @@ -873,11 +994,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 957, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 957, "end": 0, "start": 0, "type": "CallExpression", @@ -886,10 +1009,13 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 1001, "elements": [ { + "commentStart": 1002, "end": 0, "left": { + "commentStart": 1002, "end": 0, "name": "carafeDiameter", "start": 0, @@ -898,6 +1024,7 @@ description: Result of parsing french-press.kcl }, "operator": "/", "right": { + "commentStart": 1019, "end": 0, "raw": "2", "start": 0, @@ -913,6 +1040,7 @@ description: Result of parsing french-press.kcl "type": "BinaryExpression" }, { + "commentStart": 1022, "end": 0, "raw": "5.7", "start": 0, @@ -930,6 +1058,7 @@ description: Result of parsing french-press.kcl "type": "ArrayExpression" }, { + "commentStart": 1028, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -937,11 +1066,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 986, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 986, "end": 0, "start": 0, "type": "CallExpression", @@ -952,12 +1083,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 1042, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1051, "end": 0, "raw": "0.1", "start": 0, @@ -971,11 +1104,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1036, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1036, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -987,6 +1122,7 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 1067, "end": 0, "name": "length", "start": 0, @@ -994,6 +1130,7 @@ description: Result of parsing french-press.kcl }, "arg": { "argument": { + "commentStart": 1077, "end": 0, "raw": "5.2", "start": 0, @@ -1004,6 +1141,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 1076, "end": 0, "operator": "-", "start": 0, @@ -1014,12 +1152,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 1082, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1088, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1029,11 +1169,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1061, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1061, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1043,11 +1185,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 1105, "end": 0, "properties": [ { + "commentStart": 1114, "end": 0, "key": { + "commentStart": 1114, "end": 0, "name": "angleStart", "start": 0, @@ -1056,6 +1201,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1127, "end": 0, "raw": "180", "start": 0, @@ -1068,8 +1214,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 1139, "end": 0, "key": { + "commentStart": 1139, "end": 0, "name": "angleEnd", "start": 0, @@ -1078,6 +1226,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1150, "end": 0, "raw": "205", "start": 0, @@ -1090,8 +1239,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 1162, "end": 0, "key": { + "commentStart": 1162, "end": 0, "name": "radius", "start": 0, @@ -1100,6 +1251,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1171, "end": 0, "raw": "0.3", "start": 0, @@ -1117,6 +1269,7 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 1183, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1124,11 +1277,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1101, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 1101, "end": 0, "start": 0, "type": "CallExpression", @@ -1137,11 +1292,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 1202, "end": 0, "properties": [ { + "commentStart": 1204, "end": 0, "key": { + "commentStart": 1204, "end": 0, "name": "angle", "start": 0, @@ -1151,6 +1309,7 @@ description: Result of parsing french-press.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1213, "end": 0, "raw": "60", "start": 0, @@ -1161,6 +1320,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 1212, "end": 0, "operator": "-", "start": 0, @@ -1169,8 +1329,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 1217, "end": 0, "key": { + "commentStart": 1217, "end": 0, "name": "length", "start": 0, @@ -1179,6 +1341,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1226, "end": 0, "raw": "0.6", "start": 0, @@ -1196,12 +1359,14 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 1233, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1236, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1210,11 +1375,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1191, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1191, "end": 0, "start": 0, "type": "CallExpression", @@ -1223,11 +1390,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 1253, "end": 0, "properties": [ { + "commentStart": 1262, "end": 0, "key": { + "commentStart": 1262, "end": 0, "name": "angleStart", "start": 0, @@ -1236,6 +1406,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1275, "end": 0, "raw": "30", "start": 0, @@ -1248,8 +1419,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 1286, "end": 0, "key": { + "commentStart": 1286, "end": 0, "name": "angleEnd", "start": 0, @@ -1259,6 +1432,7 @@ description: Result of parsing french-press.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1298, "end": 0, "raw": "120", "start": 0, @@ -1269,6 +1443,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 1297, "end": 0, "operator": "-", "start": 0, @@ -1277,8 +1452,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 1310, "end": 0, "key": { + "commentStart": 1310, "end": 0, "name": "radius", "start": 0, @@ -1287,6 +1464,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1319, "end": 0, "raw": "0.6", "start": 0, @@ -1304,6 +1482,7 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 1331, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1311,11 +1490,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1249, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 1249, "end": 0, "start": 0, "type": "CallExpression", @@ -1324,11 +1505,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 1353, "end": 0, "properties": [ { + "commentStart": 1355, "end": 0, "key": { + "commentStart": 1355, "end": 0, "name": "angle", "start": 0, @@ -1337,6 +1521,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1363, "end": 0, "raw": "150", "start": 0, @@ -1349,8 +1534,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 1368, "end": 0, "key": { + "commentStart": 1368, "end": 0, "name": "to", "start": 0, @@ -1360,6 +1547,7 @@ description: Result of parsing french-press.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1374, "end": 0, "raw": "0.2", "start": 0, @@ -1370,6 +1558,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 1373, "end": 0, "operator": "-", "start": 0, @@ -1383,12 +1572,14 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 1381, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1384, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1397,11 +1588,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1339, "end": 0, "name": "angledLineToY", "start": 0, "type": "Identifier" }, + "commentStart": 1339, "end": 0, "start": 0, "type": "CallExpression", @@ -1410,11 +1603,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 1401, "end": 0, "properties": [ { + "commentStart": 1410, "end": 0, "key": { + "commentStart": 1410, "end": 0, "name": "angleStart", "start": 0, @@ -1423,6 +1619,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1423, "end": 0, "raw": "60", "start": 0, @@ -1435,8 +1632,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 1434, "end": 0, "key": { + "commentStart": 1434, "end": 0, "name": "angleEnd", "start": 0, @@ -1445,6 +1644,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1445, "end": 0, "raw": "90", "start": 0, @@ -1457,8 +1657,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 1456, "end": 0, "key": { + "commentStart": 1456, "end": 0, "name": "radius", "start": 0, @@ -1467,6 +1669,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1465, "end": 0, "raw": "0.5", "start": 0, @@ -1484,6 +1687,7 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 1477, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1491,11 +1695,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1397, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 1397, "end": 0, "start": 0, "type": "CallExpression", @@ -1506,12 +1712,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 1491, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1505, "end": 0, "raw": "0.1", "start": 0, @@ -1526,12 +1734,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 1510, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1516, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1541,11 +1751,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1485, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1485, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1557,12 +1769,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 1537, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1546, "end": 0, "raw": "0.1", "start": 0, @@ -1576,11 +1790,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1531, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1531, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1592,16 +1808,19 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 1562, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1571, "end": 0, "left": { "arguments": [ { + "commentStart": 1578, "end": 0, "name": "edgeLen", "start": 0, @@ -1610,11 +1829,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1571, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1571, "end": 0, "start": 0, "type": "CallExpression", @@ -1622,6 +1843,7 @@ description: Result of parsing french-press.kcl }, "operator": "+", "right": { + "commentStart": 1589, "end": 0, "raw": "0.035", "start": 0, @@ -1640,12 +1862,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 1596, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1602, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1655,11 +1879,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1556, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1556, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1669,11 +1895,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 1619, "end": 0, "properties": [ { + "commentStart": 1628, "end": 0, "key": { + "commentStart": 1628, "end": 0, "name": "angleStart", "start": 0, @@ -1682,6 +1911,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1641, "end": 0, "raw": "90", "start": 0, @@ -1694,8 +1924,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 1652, "end": 0, "key": { + "commentStart": 1652, "end": 0, "name": "angleEnd", "start": 0, @@ -1704,6 +1936,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1663, "end": 0, "raw": "60", "start": 0, @@ -1716,8 +1949,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 1674, "end": 0, "key": { + "commentStart": 1674, "end": 0, "name": "radius", "start": 0, @@ -1726,6 +1961,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1683, "end": 0, "raw": "0.6", "start": 0, @@ -1743,6 +1979,7 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 1695, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1750,11 +1987,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1615, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 1615, "end": 0, "start": 0, "type": "CallExpression", @@ -1763,11 +2002,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 1714, "end": 0, "properties": [ { + "commentStart": 1723, "end": 0, "key": { + "commentStart": 1723, "end": 0, "name": "angle", "start": 0, @@ -1776,6 +2018,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1731, "end": 0, "raw": "150", "start": 0, @@ -1788,8 +2031,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 1743, "end": 0, "key": { + "commentStart": 1743, "end": 0, "name": "length", "start": 0, @@ -1798,11 +2043,13 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1752, "end": 0, "left": { "argument": { "arguments": [ { + "commentStart": 1760, "end": 0, "name": "edge3", "start": 0, @@ -1811,16 +2058,19 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1753, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1753, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 1752, "end": 0, "operator": "-", "start": 0, @@ -1829,6 +2079,7 @@ description: Result of parsing french-press.kcl }, "operator": "+", "right": { + "commentStart": 1769, "end": 0, "raw": "0.035", "start": 0, @@ -1850,12 +2101,14 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 1783, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1786, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1864,11 +2117,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1703, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1703, "end": 0, "start": 0, "type": "CallExpression", @@ -1877,11 +2132,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 1803, "end": 0, "properties": [ { + "commentStart": 1812, "end": 0, "key": { + "commentStart": 1812, "end": 0, "name": "angleStart", "start": 0, @@ -1891,6 +2149,7 @@ description: Result of parsing french-press.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1826, "end": 0, "raw": "120", "start": 0, @@ -1901,6 +2160,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 1825, "end": 0, "operator": "-", "start": 0, @@ -1909,8 +2169,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 1838, "end": 0, "key": { + "commentStart": 1838, "end": 0, "name": "angleEnd", "start": 0, @@ -1919,6 +2181,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1849, "end": 0, "raw": "30", "start": 0, @@ -1931,8 +2194,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 1860, "end": 0, "key": { + "commentStart": 1860, "end": 0, "name": "radius", "start": 0, @@ -1941,6 +2206,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1869, "end": 0, "raw": "0.5", "start": 0, @@ -1958,6 +2224,7 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 1881, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1965,11 +2232,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1799, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 1799, "end": 0, "start": 0, "type": "CallExpression", @@ -1978,11 +2247,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 1900, "end": 0, "properties": [ { + "commentStart": 1909, "end": 0, "key": { + "commentStart": 1909, "end": 0, "name": "angle", "start": 0, @@ -1992,6 +2264,7 @@ description: Result of parsing french-press.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1918, "end": 0, "raw": "60", "start": 0, @@ -2002,6 +2275,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 1917, "end": 0, "operator": "-", "start": 0, @@ -2010,8 +2284,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 1929, "end": 0, "key": { + "commentStart": 1929, "end": 0, "name": "length", "start": 0, @@ -2020,11 +2296,13 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1938, "end": 0, "left": { "argument": { "arguments": [ { + "commentStart": 1946, "end": 0, "name": "edge2", "start": 0, @@ -2033,16 +2311,19 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1939, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1939, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 1938, "end": 0, "operator": "-", "start": 0, @@ -2051,6 +2332,7 @@ description: Result of parsing french-press.kcl }, "operator": "+", "right": { + "commentStart": 1955, "end": 0, "raw": "0.035", "start": 0, @@ -2072,12 +2354,14 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 1969, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1972, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2086,11 +2370,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1889, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1889, "end": 0, "start": 0, "type": "CallExpression", @@ -2099,11 +2385,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 1989, "end": 0, "properties": [ { + "commentStart": 1998, "end": 0, "key": { + "commentStart": 1998, "end": 0, "name": "angleStart", "start": 0, @@ -2112,6 +2401,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2011, "end": 0, "raw": "205", "start": 0, @@ -2124,8 +2414,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 2023, "end": 0, "key": { + "commentStart": 2023, "end": 0, "name": "angleEnd", "start": 0, @@ -2134,6 +2426,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2034, "end": 0, "raw": "180", "start": 0, @@ -2146,8 +2439,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 2046, "end": 0, "key": { + "commentStart": 2046, "end": 0, "name": "radius", "start": 0, @@ -2156,6 +2451,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2055, "end": 0, "raw": "0.6", "start": 0, @@ -2173,6 +2469,7 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 2067, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2180,11 +2477,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 1985, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 1985, "end": 0, "start": 0, "type": "CallExpression", @@ -2195,16 +2494,19 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2080, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2094, "elements": [ { "arguments": [ { + "commentStart": 2109, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2212,11 +2514,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2095, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 2095, "end": 0, "start": 0, "type": "CallExpression", @@ -2225,6 +2529,7 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 2127, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2232,11 +2537,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2113, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 2113, "end": 0, "start": 0, "type": "CallExpression", @@ -2251,11 +2558,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2075, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2075, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2265,11 +2574,13 @@ description: Result of parsing french-press.kcl { "arguments": [], "callee": { + "commentStart": 2137, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2137, "end": 0, "start": 0, "type": "CallExpression", @@ -2280,12 +2591,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2158, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2167, "end": 0, "raw": "0.75", "start": 0, @@ -2299,11 +2612,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2150, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2150, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2315,14 +2630,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2204, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2211, "elements": [ { + "commentStart": 2212, "end": 0, "raw": "0", "start": 0, @@ -2334,6 +2652,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 2215, "end": 0, "raw": "0", "start": 0, @@ -2345,6 +2664,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 2218, "end": 0, "raw": "1", "start": 0, @@ -2365,14 +2685,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2229, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2238, "elements": [ { + "commentStart": 2239, "end": 0, "raw": "0", "start": 0, @@ -2384,6 +2707,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 2242, "end": 0, "raw": "0", "start": 0, @@ -2395,6 +2719,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 2245, "end": 0, "raw": "0", "start": 0, @@ -2415,12 +2740,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2256, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2268, "end": 0, "raw": "4", "start": 0, @@ -2435,12 +2762,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2278, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2291, "end": 0, "raw": "360", "start": 0, @@ -2455,12 +2784,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2303, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2322, "end": 0, "raw": "true", "start": 0, @@ -2471,11 +2802,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2178, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 2178, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2483,11 +2816,13 @@ description: Result of parsing french-press.kcl "unlabeled": null } ], + "commentStart": 957, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "20": [ { + "commentStart": 2333, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2510,14 +2845,22 @@ description: Result of parsing french-press.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Cross section of the metal supports" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2350, "declaration": { + "commentStart": 2350, "end": 0, "id": { + "commentStart": 2350, "end": 0, "name": "sketch003", "start": 0, @@ -2532,12 +2875,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2394, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2403, "end": 0, "raw": "1", "start": 0, @@ -2551,16 +2896,19 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2376, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 2376, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2388, "end": 0, "raw": "'XY'", "start": 0, @@ -2571,11 +2919,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2362, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2362, "end": 0, "start": 0, "type": "CallExpression", @@ -2586,14 +2936,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2427, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2436, "elements": [ { + "commentStart": 2437, "end": 0, "raw": "0", "start": 0, @@ -2605,6 +2958,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 2440, "end": 0, "raw": "0", "start": 0, @@ -2625,16 +2979,20 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2451, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2460, "end": 0, "left": { + "commentStart": 2460, "end": 0, "left": { + "commentStart": 2460, "end": 0, "name": "carafeDiameter", "start": 0, @@ -2643,6 +3001,7 @@ description: Result of parsing french-press.kcl }, "operator": "/", "right": { + "commentStart": 2477, "end": 0, "raw": "2", "start": 0, @@ -2659,6 +3018,7 @@ description: Result of parsing french-press.kcl }, "operator": "-", "right": { + "commentStart": 2481, "end": 0, "raw": "0.15", "start": 0, @@ -2676,11 +3036,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2412, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2412, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2688,6 +3050,7 @@ description: Result of parsing french-press.kcl "unlabeled": null } ], + "commentStart": 2362, "end": 0, "start": 0, "type": "PipeExpression", @@ -2703,9 +3066,12 @@ description: Result of parsing french-press.kcl "type": "VariableDeclaration" }, { + "commentStart": 2492, "declaration": { + "commentStart": 2494, "end": 0, "id": { + "commentStart": 2494, "end": 0, "name": "extrude001", "start": 0, @@ -2716,12 +3082,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2526, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2535, "end": 0, "raw": "0.050", "start": 0, @@ -2735,16 +3103,19 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2507, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2507, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2515, "end": 0, "name": "sketch003", "start": 0, @@ -2762,9 +3133,12 @@ description: Result of parsing french-press.kcl "type": "VariableDeclaration" }, { + "commentStart": 2541, "declaration": { + "commentStart": 2543, "end": 0, "id": { + "commentStart": 2543, "end": 0, "name": "sketch004", "start": 0, @@ -2775,6 +3149,7 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 2569, "end": 0, "name": "extrude001", "start": 0, @@ -2782,6 +3157,7 @@ description: Result of parsing french-press.kcl "type": "Identifier" }, { + "commentStart": 2581, "end": 0, "raw": "'END'", "start": 0, @@ -2791,11 +3167,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2555, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2555, "end": 0, "start": 0, "type": "CallExpression", @@ -2804,8 +3182,10 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 2608, "elements": [ { + "commentStart": 2609, "end": 0, "raw": "0.3", "start": 0, @@ -2817,6 +3197,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 2614, "end": 0, "raw": "0.17", "start": 0, @@ -2834,6 +3215,7 @@ description: Result of parsing french-press.kcl "type": "ArrayExpression" }, { + "commentStart": 2621, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2841,11 +3223,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2593, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2593, "end": 0, "start": 0, "type": "CallExpression", @@ -2856,12 +3240,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2635, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2644, "end": 0, "raw": "1.2", "start": 0, @@ -2875,11 +3261,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2629, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 2629, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2889,11 +3277,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 2658, "end": 0, "properties": [ { + "commentStart": 2667, "end": 0, "key": { + "commentStart": 2667, "end": 0, "name": "angleStart", "start": 0, @@ -2902,6 +3293,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2680, "end": 0, "raw": "90", "start": 0, @@ -2914,8 +3306,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 2691, "end": 0, "key": { + "commentStart": 2691, "end": 0, "name": "angleEnd", "start": 0, @@ -2925,6 +3319,7 @@ description: Result of parsing french-press.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 2703, "end": 0, "raw": "30", "start": 0, @@ -2935,6 +3330,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 2702, "end": 0, "operator": "-", "start": 0, @@ -2943,8 +3339,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 2714, "end": 0, "key": { + "commentStart": 2714, "end": 0, "name": "radius", "start": 0, @@ -2953,6 +3351,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2723, "end": 0, "raw": "1.2", "start": 0, @@ -2970,6 +3369,7 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 2735, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2977,11 +3377,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2654, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 2654, "end": 0, "start": 0, "type": "CallExpression", @@ -2992,16 +3394,19 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2748, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2762, "elements": [ { "arguments": [ { + "commentStart": 2777, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3009,11 +3414,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2763, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 2763, "end": 0, "start": 0, "type": "CallExpression", @@ -3022,6 +3429,7 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 2795, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3029,11 +3437,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2781, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 2781, "end": 0, "start": 0, "type": "CallExpression", @@ -3048,11 +3458,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2743, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2743, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3062,11 +3474,13 @@ description: Result of parsing french-press.kcl { "arguments": [], "callee": { + "commentStart": 2805, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2805, "end": 0, "start": 0, "type": "CallExpression", @@ -3077,14 +3491,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2844, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2853, "elements": [ { + "commentStart": 2854, "end": 0, "raw": "0", "start": 0, @@ -3096,6 +3513,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 2857, "end": 0, "raw": "0", "start": 0, @@ -3116,12 +3534,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2868, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2880, "end": 0, "raw": "3", "start": 0, @@ -3136,12 +3556,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2890, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2903, "end": 0, "raw": "360", "start": 0, @@ -3156,12 +3578,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2915, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2934, "end": 0, "raw": "true", "start": 0, @@ -3172,11 +3596,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2818, "end": 0, "name": "patternCircular2d", "start": 0, "type": "Identifier" }, + "commentStart": 2818, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3184,6 +3610,7 @@ description: Result of parsing french-press.kcl "unlabeled": null } ], + "commentStart": 2555, "end": 0, "start": 0, "type": "PipeExpression", @@ -3199,9 +3626,12 @@ description: Result of parsing french-press.kcl "type": "VariableDeclaration" }, { + "commentStart": 2945, "declaration": { + "commentStart": 2947, "end": 0, "id": { + "commentStart": 2947, "end": 0, "name": "extrude002", "start": 0, @@ -3212,6 +3642,7 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 2979, "end": 0, "name": "length", "start": 0, @@ -3219,6 +3650,7 @@ description: Result of parsing french-press.kcl }, "arg": { "argument": { + "commentStart": 2989, "end": 0, "raw": "0.050", "start": 0, @@ -3229,6 +3661,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 2988, "end": 0, "operator": "-", "start": 0, @@ -3238,16 +3671,19 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 2960, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2960, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2968, "end": 0, "name": "sketch004", "start": 0, @@ -3265,9 +3701,12 @@ description: Result of parsing french-press.kcl "type": "VariableDeclaration" }, { + "commentStart": 2995, "declaration": { + "commentStart": 3014, "end": 0, "id": { + "commentStart": 3014, "end": 0, "name": "sketch005", "start": 0, @@ -3278,6 +3717,7 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 3040, "end": 0, "raw": "'XZ'", "start": 0, @@ -3287,11 +3727,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3026, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 3026, "end": 0, "start": 0, "type": "CallExpression", @@ -3300,8 +3742,10 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 3066, "elements": [ { + "commentStart": 3067, "end": 0, "raw": "0.15", "start": 0, @@ -3313,6 +3757,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 3073, "end": 0, "raw": "1.11", "start": 0, @@ -3330,6 +3775,7 @@ description: Result of parsing french-press.kcl "type": "ArrayExpression" }, { + "commentStart": 3080, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3337,11 +3783,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3051, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 3051, "end": 0, "start": 0, "type": "CallExpression", @@ -3352,16 +3800,20 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 3094, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3108, "end": 0, "left": { + "commentStart": 3108, "end": 0, "left": { + "commentStart": 3108, "end": 0, "name": "carafeDiameter", "start": 0, @@ -3370,6 +3822,7 @@ description: Result of parsing french-press.kcl }, "operator": "/", "right": { + "commentStart": 3125, "end": 0, "raw": "2", "start": 0, @@ -3386,6 +3839,7 @@ description: Result of parsing french-press.kcl }, "operator": "-", "right": { + "commentStart": 3129, "end": 0, "raw": "0.2", "start": 0, @@ -3403,11 +3857,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3088, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3088, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3417,11 +3873,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 3153, "end": 0, "properties": [ { + "commentStart": 3162, "end": 0, "key": { + "commentStart": 3162, "end": 0, "name": "angle", "start": 0, @@ -3430,6 +3889,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3170, "end": 0, "raw": "30", "start": 0, @@ -3442,8 +3902,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 3181, "end": 0, "key": { + "commentStart": 3181, "end": 0, "name": "to", "start": 0, @@ -3452,10 +3914,13 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3186, "end": 0, "left": { + "commentStart": 3186, "end": 0, "left": { + "commentStart": 3186, "end": 0, "name": "carafeDiameter", "start": 0, @@ -3464,6 +3929,7 @@ description: Result of parsing french-press.kcl }, "operator": "/", "right": { + "commentStart": 3203, "end": 0, "raw": "2", "start": 0, @@ -3480,6 +3946,7 @@ description: Result of parsing french-press.kcl }, "operator": "-", "right": { + "commentStart": 3207, "end": 0, "raw": "0.07", "start": 0, @@ -3501,12 +3968,14 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 3220, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 3223, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3515,11 +3984,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3139, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 3139, "end": 0, "start": 0, "type": "CallExpression", @@ -3528,11 +3999,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 3246, "end": 0, "properties": [ { + "commentStart": 3248, "end": 0, "key": { + "commentStart": 3248, "end": 0, "name": "angle", "start": 0, @@ -3542,6 +4016,7 @@ description: Result of parsing french-press.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 3257, "end": 0, "raw": "60", "start": 0, @@ -3552,6 +4027,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 3256, "end": 0, "operator": "-", "start": 0, @@ -3560,8 +4036,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 3261, "end": 0, "key": { + "commentStart": 3261, "end": 0, "name": "length", "start": 0, @@ -3570,6 +4048,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3270, "end": 0, "raw": "0.050", "start": 0, @@ -3587,6 +4066,7 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 3279, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3594,11 +4074,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3235, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 3235, "end": 0, "start": 0, "type": "CallExpression", @@ -3607,11 +4089,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 3298, "end": 0, "properties": [ { + "commentStart": 3300, "end": 0, "key": { + "commentStart": 3300, "end": 0, "name": "angle", "start": 0, @@ -3620,6 +4105,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3308, "end": 0, "raw": "30", "start": 0, @@ -3632,8 +4118,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 3312, "end": 0, "key": { + "commentStart": 3312, "end": 0, "name": "length", "start": 0, @@ -3645,6 +4133,7 @@ description: Result of parsing french-press.kcl "argument": { "arguments": [ { + "commentStart": 3329, "end": 0, "name": "seg1", "start": 0, @@ -3653,16 +4142,19 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3322, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 3322, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 3321, "end": 0, "operator": "-", "start": 0, @@ -3676,6 +4168,7 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 3338, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3683,11 +4176,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3287, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 3287, "end": 0, "start": 0, "type": "CallExpression", @@ -3698,12 +4193,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 3352, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3366, "end": 0, "raw": "0.15", "start": 0, @@ -3717,11 +4214,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3346, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3346, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3733,16 +4232,19 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 3382, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3396, "elements": [ { "arguments": [ { + "commentStart": 3411, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3750,11 +4252,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3397, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 3397, "end": 0, "start": 0, "type": "CallExpression", @@ -3763,6 +4267,7 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 3429, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3770,11 +4275,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3415, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 3415, "end": 0, "start": 0, "type": "CallExpression", @@ -3789,11 +4296,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3377, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3377, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3803,11 +4312,13 @@ description: Result of parsing french-press.kcl { "arguments": [], "callee": { + "commentStart": 3439, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 3439, "end": 0, "start": 0, "type": "CallExpression", @@ -3818,12 +4329,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 3460, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3467, "end": 0, "raw": "'y'", "start": 0, @@ -3834,11 +4347,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3452, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 3452, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3846,11 +4361,13 @@ description: Result of parsing french-press.kcl "unlabeled": null } ], + "commentStart": 3026, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "9": [ { + "commentStart": 3471, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3873,14 +4390,22 @@ description: Result of parsing french-press.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Filter screen" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 3493, "declaration": { + "commentStart": 3493, "end": 0, "id": { + "commentStart": 3493, "end": 0, "name": "sketch006", "start": 0, @@ -3891,6 +4416,7 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 3519, "end": 0, "raw": "'XZ'", "start": 0, @@ -3900,11 +4426,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3505, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 3505, "end": 0, "start": 0, "type": "CallExpression", @@ -3913,8 +4441,10 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 3545, "elements": [ { + "commentStart": 3546, "end": 0, "raw": "0.1", "start": 0, @@ -3926,6 +4456,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 3551, "end": 0, "raw": "1", "start": 0, @@ -3943,6 +4474,7 @@ description: Result of parsing french-press.kcl "type": "ArrayExpression" }, { + "commentStart": 3555, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3950,11 +4482,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3530, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 3530, "end": 0, "start": 0, "type": "CallExpression", @@ -3965,14 +4499,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 3568, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3574, "elements": [ { + "commentStart": 3575, "end": 0, "raw": "0.1", "start": 0, @@ -3984,6 +4521,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 3580, "end": 0, "raw": "0", "start": 0, @@ -4003,11 +4541,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3563, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3563, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4017,11 +4557,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 3603, "end": 0, "properties": [ { + "commentStart": 3605, "end": 0, "key": { + "commentStart": 3605, "end": 0, "name": "angle", "start": 0, @@ -4030,6 +4573,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3613, "end": 0, "raw": "10", "start": 0, @@ -4042,8 +4586,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 3617, "end": 0, "key": { + "commentStart": 3617, "end": 0, "name": "to", "start": 0, @@ -4052,6 +4598,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3622, "end": 0, "raw": "0.05", "start": 0, @@ -4069,6 +4616,7 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 3630, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4076,11 +4624,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3589, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 3589, "end": 0, "start": 0, "type": "CallExpression", @@ -4091,12 +4641,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 3644, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3653, "end": 0, "raw": "10", "start": 0, @@ -4110,11 +4662,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3638, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 3638, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4126,14 +4680,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 3667, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3673, "elements": [ { + "commentStart": 3674, "end": 0, "raw": "0.6", "start": 0, @@ -4145,6 +4702,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 3679, "end": 0, "raw": "0", "start": 0, @@ -4164,11 +4722,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3662, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3662, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4180,6 +4740,7 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 3694, "end": 0, "name": "length", "start": 0, @@ -4187,6 +4748,7 @@ description: Result of parsing french-press.kcl }, "arg": { "argument": { + "commentStart": 3704, "end": 0, "raw": ".05", "start": 0, @@ -4197,6 +4759,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 3703, "end": 0, "operator": "-", "start": 0, @@ -4206,11 +4769,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3688, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 3688, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4220,11 +4785,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 3728, "end": 0, "properties": [ { + "commentStart": 3730, "end": 0, "key": { + "commentStart": 3730, "end": 0, "name": "radius", "start": 0, @@ -4233,6 +4801,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3739, "end": 0, "raw": "0.6", "start": 0, @@ -4245,8 +4814,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 3744, "end": 0, "key": { + "commentStart": 3744, "end": 0, "name": "offset", "start": 0, @@ -4256,6 +4827,7 @@ description: Result of parsing french-press.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 3754, "end": 0, "raw": "90", "start": 0, @@ -4266,6 +4838,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 3753, "end": 0, "operator": "-", "start": 0, @@ -4279,6 +4852,7 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 3760, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4286,11 +4860,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3714, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 3714, "end": 0, "start": 0, "type": "CallExpression", @@ -4301,16 +4877,19 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 3773, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3787, "elements": [ { "arguments": [ { + "commentStart": 3802, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4318,11 +4897,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3788, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 3788, "end": 0, "start": 0, "type": "CallExpression", @@ -4331,6 +4912,7 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 3820, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4338,11 +4920,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3806, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 3806, "end": 0, "start": 0, "type": "CallExpression", @@ -4357,11 +4941,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3768, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3768, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4371,11 +4957,13 @@ description: Result of parsing french-press.kcl { "arguments": [], "callee": { + "commentStart": 3830, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 3830, "end": 0, "start": 0, "type": "CallExpression", @@ -4386,12 +4974,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 3851, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3858, "end": 0, "raw": "'y'", "start": 0, @@ -4402,11 +4992,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3843, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 3843, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4414,11 +5006,13 @@ description: Result of parsing french-press.kcl "unlabeled": null } ], + "commentStart": 3505, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "10": [ { + "commentStart": 3862, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4446,9 +5040,12 @@ description: Result of parsing french-press.kcl "type": "VariableDeclaration" }, { + "commentStart": 3880, "declaration": { + "commentStart": 3880, "end": 0, "id": { + "commentStart": 3880, "end": 0, "name": "sketch007", "start": 0, @@ -4463,12 +5060,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 3924, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3933, "end": 0, "raw": "1.12", "start": 0, @@ -4482,16 +5081,19 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3906, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 3906, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 3918, "end": 0, "raw": "'XY'", "start": 0, @@ -4502,11 +5104,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3892, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 3892, "end": 0, "start": 0, "type": "CallExpression", @@ -4517,14 +5121,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 3960, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3969, "elements": [ { + "commentStart": 3970, "end": 0, "raw": "0", "start": 0, @@ -4536,6 +5143,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 3973, "end": 0, "raw": "0", "start": 0, @@ -4556,16 +5164,20 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 3984, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3993, "end": 0, "left": { + "commentStart": 3993, "end": 0, "left": { + "commentStart": 3993, "end": 0, "name": "carafeDiameter", "start": 0, @@ -4574,6 +5186,7 @@ description: Result of parsing french-press.kcl }, "operator": "/", "right": { + "commentStart": 4010, "end": 0, "raw": "2", "start": 0, @@ -4590,6 +5203,7 @@ description: Result of parsing french-press.kcl }, "operator": "-", "right": { + "commentStart": 4014, "end": 0, "raw": "0.24", "start": 0, @@ -4607,11 +5221,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 3945, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 3945, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4625,14 +5241,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4043, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4052, "elements": [ { + "commentStart": 4053, "end": 0, "raw": "0", "start": 0, @@ -4644,6 +5263,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 4056, "end": 0, "raw": "0", "start": 0, @@ -4664,12 +5284,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4060, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4069, "end": 0, "raw": ".15", "start": 0, @@ -4683,11 +5305,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 4036, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 4036, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4695,6 +5319,7 @@ description: Result of parsing french-press.kcl "unlabeled": null }, { + "commentStart": 4075, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4702,17 +5327,20 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 4031, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 4031, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 3892, "end": 0, "start": 0, "type": "PipeExpression", @@ -4728,9 +5356,12 @@ description: Result of parsing french-press.kcl "type": "VariableDeclaration" }, { + "commentStart": 4077, "declaration": { + "commentStart": 4079, "end": 0, "id": { + "commentStart": 4079, "end": 0, "name": "extrude003", "start": 0, @@ -4741,12 +5372,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4111, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4120, "end": 0, "raw": "0.050", "start": 0, @@ -4760,16 +5393,19 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 4092, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 4092, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 4100, "end": 0, "name": "sketch007", "start": 0, @@ -4787,9 +5423,12 @@ description: Result of parsing french-press.kcl "type": "VariableDeclaration" }, { + "commentStart": 4126, "declaration": { + "commentStart": 4165, "end": 0, "id": { + "commentStart": 4165, "end": 0, "name": "sketch008", "start": 0, @@ -4800,6 +5439,7 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 4191, "end": 0, "name": "extrude003", "start": 0, @@ -4807,6 +5447,7 @@ description: Result of parsing french-press.kcl "type": "Identifier" }, { + "commentStart": 4203, "end": 0, "raw": "'END'", "start": 0, @@ -4816,11 +5457,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 4177, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 4177, "end": 0, "start": 0, "type": "CallExpression", @@ -4831,14 +5474,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4222, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4231, "elements": [ { + "commentStart": 4232, "end": 0, "raw": "1.4", "start": 0, @@ -4850,6 +5496,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 4237, "end": 0, "raw": "0", "start": 0, @@ -4870,12 +5517,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4241, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4250, "end": 0, "raw": ".3", "start": 0, @@ -4889,11 +5538,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 4215, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 4215, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4905,14 +5556,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4285, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4294, "elements": [ { + "commentStart": 4295, "end": 0, "raw": "0", "start": 0, @@ -4924,6 +5578,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 4298, "end": 0, "raw": "0", "start": 0, @@ -4944,12 +5599,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4309, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4321, "end": 0, "raw": "8", "start": 0, @@ -4964,12 +5621,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4331, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4344, "end": 0, "raw": "360", "start": 0, @@ -4984,12 +5643,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4356, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4375, "end": 0, "raw": "true", "start": 0, @@ -5000,11 +5661,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 4259, "end": 0, "name": "patternCircular2d", "start": 0, "type": "Identifier" }, + "commentStart": 4259, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5012,6 +5675,7 @@ description: Result of parsing french-press.kcl "unlabeled": null } ], + "commentStart": 4177, "end": 0, "start": 0, "type": "PipeExpression", @@ -5022,14 +5686,22 @@ description: Result of parsing french-press.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Pattern holes in the spiral plate" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 4386, "declaration": { + "commentStart": 4388, "end": 0, "id": { + "commentStart": 4388, "end": 0, "name": "extrude004", "start": 0, @@ -5040,6 +5712,7 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4420, "end": 0, "name": "length", "start": 0, @@ -5047,6 +5720,7 @@ description: Result of parsing french-press.kcl }, "arg": { "argument": { + "commentStart": 4430, "end": 0, "raw": "0.050", "start": 0, @@ -5057,6 +5731,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 4429, "end": 0, "operator": "-", "start": 0, @@ -5066,16 +5741,19 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 4401, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 4401, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 4409, "end": 0, "name": "sketch008", "start": 0, @@ -5093,9 +5771,12 @@ description: Result of parsing french-press.kcl "type": "VariableDeclaration" }, { + "commentStart": 4436, "declaration": { + "commentStart": 4475, "end": 0, "id": { + "commentStart": 4475, "end": 0, "name": "sketch009", "start": 0, @@ -5106,6 +5787,7 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 4501, "end": 0, "name": "extrude003", "start": 0, @@ -5113,6 +5795,7 @@ description: Result of parsing french-press.kcl "type": "Identifier" }, { + "commentStart": 4513, "end": 0, "raw": "'END'", "start": 0, @@ -5122,11 +5805,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 4487, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 4487, "end": 0, "start": 0, "type": "CallExpression", @@ -5137,14 +5822,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4532, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4541, "elements": [ { + "commentStart": 4542, "end": 0, "raw": "0.6", "start": 0, @@ -5156,6 +5844,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 4547, "end": 0, "raw": "0", "start": 0, @@ -5176,12 +5865,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4551, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4560, "end": 0, "raw": ".2", "start": 0, @@ -5195,11 +5886,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 4525, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 4525, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5211,14 +5904,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4595, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4604, "elements": [ { + "commentStart": 4605, "end": 0, "raw": "0", "start": 0, @@ -5230,6 +5926,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 4608, "end": 0, "raw": "0", "start": 0, @@ -5250,12 +5947,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4619, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4631, "end": 0, "raw": "4", "start": 0, @@ -5270,12 +5969,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4641, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4654, "end": 0, "raw": "360", "start": 0, @@ -5290,12 +5991,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4666, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4685, "end": 0, "raw": "true", "start": 0, @@ -5306,11 +6009,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 4569, "end": 0, "name": "patternCircular2d", "start": 0, "type": "Identifier" }, + "commentStart": 4569, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5318,6 +6023,7 @@ description: Result of parsing french-press.kcl "unlabeled": null } ], + "commentStart": 4487, "end": 0, "start": 0, "type": "PipeExpression", @@ -5328,14 +6034,22 @@ description: Result of parsing french-press.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Pattern holes in the spiral plate" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 4696, "declaration": { + "commentStart": 4698, "end": 0, "id": { + "commentStart": 4698, "end": 0, "name": "extrude005", "start": 0, @@ -5346,6 +6060,7 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4730, "end": 0, "name": "length", "start": 0, @@ -5353,6 +6068,7 @@ description: Result of parsing french-press.kcl }, "arg": { "argument": { + "commentStart": 4740, "end": 0, "raw": "0.050", "start": 0, @@ -5363,6 +6079,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 4739, "end": 0, "operator": "-", "start": 0, @@ -5372,16 +6089,19 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 4711, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 4711, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 4719, "end": 0, "name": "sketch009", "start": 0, @@ -5399,9 +6119,12 @@ description: Result of parsing french-press.kcl "type": "VariableDeclaration" }, { + "commentStart": 4746, "declaration": { + "commentStart": 4779, "end": 0, "id": { + "commentStart": 4779, "end": 0, "name": "sketch010", "start": 0, @@ -5412,6 +6135,7 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 4805, "end": 0, "raw": "\"XY\"", "start": 0, @@ -5421,11 +6145,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 4791, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 4791, "end": 0, "start": 0, "type": "CallExpression", @@ -5436,14 +6162,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4831, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4840, "elements": [ { + "commentStart": 4841, "end": 0, "raw": "0", "start": 0, @@ -5455,6 +6184,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 4844, "end": 0, "raw": "0", "start": 0, @@ -5475,14 +6205,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 4855, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4864, "end": 0, "left": { + "commentStart": 4864, "end": 0, "name": "carafeDiameter", "start": 0, @@ -5491,6 +6224,7 @@ description: Result of parsing french-press.kcl }, "operator": "/", "right": { + "commentStart": 4881, "end": 0, "raw": "2", "start": 0, @@ -5508,11 +6242,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 4816, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 4816, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5520,11 +6256,13 @@ description: Result of parsing french-press.kcl "unlabeled": null } ], + "commentStart": 4791, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 4889, "end": 0, "start": 0, "type": "NonCodeNode", @@ -5547,14 +6285,22 @@ description: Result of parsing french-press.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Extrude a glass carafe body" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 4972, "declaration": { + "commentStart": 4972, "end": 0, "id": { + "commentStart": 4972, "end": 0, "name": "extrude006", "start": 0, @@ -5567,12 +6313,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 5004, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5013, "end": 0, "name": "carafeHeight", "start": 0, @@ -5582,16 +6330,19 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 4985, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 4985, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 4993, "end": 0, "name": "sketch010", "start": 0, @@ -5604,14 +6355,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 5038, "end": 0, "name": "faces", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5046, "elements": [ { + "commentStart": 5047, "end": 0, "raw": "\"end\"", "start": 0, @@ -5629,12 +6383,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 5055, "end": 0, "name": "thickness", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5067, "end": 0, "raw": ".07", "start": 0, @@ -5648,11 +6404,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5032, "end": 0, "name": "shell", "start": 0, "type": "Identifier" }, + "commentStart": 5032, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5660,11 +6418,13 @@ description: Result of parsing french-press.kcl "unlabeled": null } ], + "commentStart": 4985, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 5071, "end": 0, "start": 0, "type": "NonCodeNode", @@ -5692,9 +6452,12 @@ description: Result of parsing french-press.kcl "type": "VariableDeclaration" }, { + "commentStart": 5101, "declaration": { + "commentStart": 5101, "end": 0, "id": { + "commentStart": 5101, "end": 0, "name": "sketch011", "start": 0, @@ -5705,6 +6468,7 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 5127, "end": 0, "raw": "'XZ'", "start": 0, @@ -5714,11 +6478,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5113, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 5113, "end": 0, "start": 0, "type": "CallExpression", @@ -5727,8 +6493,10 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 5153, "elements": [ { + "commentStart": 5154, "end": 0, "raw": "0.2", "start": 0, @@ -5740,8 +6508,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 5159, "end": 0, "left": { + "commentStart": 5159, "end": 0, "name": "carafeHeight", "start": 0, @@ -5750,6 +6520,7 @@ description: Result of parsing french-press.kcl }, "operator": "-", "right": { + "commentStart": 5174, "end": 0, "raw": "0.7", "start": 0, @@ -5771,6 +6542,7 @@ description: Result of parsing french-press.kcl "type": "ArrayExpression" }, { + "commentStart": 5180, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -5778,11 +6550,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5138, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 5138, "end": 0, "start": 0, "type": "CallExpression", @@ -5793,16 +6567,20 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 5194, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5203, "end": 0, "left": { + "commentStart": 5203, "end": 0, "left": { + "commentStart": 5203, "end": 0, "name": "carafeDiameter", "start": 0, @@ -5811,6 +6589,7 @@ description: Result of parsing french-press.kcl }, "operator": "/", "right": { + "commentStart": 5220, "end": 0, "raw": "2", "start": 0, @@ -5827,6 +6606,7 @@ description: Result of parsing french-press.kcl }, "operator": "-", "right": { + "commentStart": 5224, "end": 0, "raw": "0.3", "start": 0, @@ -5844,11 +6624,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5188, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 5188, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5860,12 +6642,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 5240, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5249, "end": 0, "raw": "0.7", "start": 0, @@ -5879,11 +6663,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5234, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 5234, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5895,12 +6681,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 5265, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5274, "end": 0, "raw": "0.3", "start": 0, @@ -5914,11 +6702,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5259, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 5259, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5930,12 +6720,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 5290, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5299, "end": 0, "raw": "0.4", "start": 0, @@ -5949,11 +6741,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5284, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 5284, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5965,15 +6759,18 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 5314, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5320, "elements": [ { "argument": { + "commentStart": 5322, "end": 0, "raw": "0.02", "start": 0, @@ -5984,6 +6781,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 5321, "end": 0, "operator": "-", "start": 0, @@ -5991,6 +6789,7 @@ description: Result of parsing french-press.kcl "type": "UnaryExpression" }, { + "commentStart": 5328, "end": 0, "raw": "0.02", "start": 0, @@ -6010,11 +6809,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5309, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5309, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6024,11 +6825,14 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 5352, "end": 0, "properties": [ { + "commentStart": 5361, "end": 0, "key": { + "commentStart": 5361, "end": 0, "name": "to", "start": 0, @@ -6037,19 +6841,24 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5366, "elements": [ { + "commentStart": 5367, "end": 0, "left": { + "commentStart": 5367, "end": 0, "left": { "argument": { + "commentStart": 5368, "end": 0, "name": "carafeDiameter", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 5367, "end": 0, "operator": "-", "start": 0, @@ -6058,6 +6867,7 @@ description: Result of parsing french-press.kcl }, "operator": "/", "right": { + "commentStart": 5385, "end": 0, "raw": "2", "start": 0, @@ -6074,6 +6884,7 @@ description: Result of parsing french-press.kcl }, "operator": "-", "right": { + "commentStart": 5389, "end": 0, "raw": "0.1", "start": 0, @@ -6089,6 +6900,7 @@ description: Result of parsing french-press.kcl "type": "BinaryExpression" }, { + "commentStart": 5394, "end": 0, "raw": "1", "start": 0, @@ -6107,8 +6919,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 5405, "end": 0, "key": { + "commentStart": 5405, "end": 0, "name": "control1", "start": 0, @@ -6117,9 +6931,11 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5416, "elements": [ { "argument": { + "commentStart": 5418, "end": 0, "raw": "0.3", "start": 0, @@ -6130,6 +6946,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 5417, "end": 0, "operator": "-", "start": 0, @@ -6137,6 +6954,7 @@ description: Result of parsing french-press.kcl "type": "UnaryExpression" }, { + "commentStart": 5423, "end": 0, "raw": "0", "start": 0, @@ -6155,8 +6973,10 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 5434, "end": 0, "key": { + "commentStart": 5434, "end": 0, "name": "control2", "start": 0, @@ -6165,10 +6985,13 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5445, "elements": [ { + "commentStart": 5446, "end": 0, "left": { + "commentStart": 5446, "end": 0, "name": "carafeDiameter", "start": 0, @@ -6177,6 +7000,7 @@ description: Result of parsing french-press.kcl }, "operator": "/", "right": { + "commentStart": 5463, "end": 0, "raw": "10", "start": 0, @@ -6192,6 +7016,7 @@ description: Result of parsing french-press.kcl "type": "BinaryExpression" }, { + "commentStart": 5467, "end": 0, "raw": "1", "start": 0, @@ -6215,6 +7040,7 @@ description: Result of parsing french-press.kcl "type": "ObjectExpression" }, { + "commentStart": 5478, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -6222,11 +7048,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5340, "end": 0, "name": "bezierCurve", "start": 0, "type": "Identifier" }, + "commentStart": 5340, "end": 0, "start": 0, "type": "CallExpression", @@ -6237,16 +7065,19 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 5491, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5505, "elements": [ { "arguments": [ { + "commentStart": 5520, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -6254,11 +7085,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5506, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 5506, "end": 0, "start": 0, "type": "CallExpression", @@ -6267,6 +7100,7 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 5538, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -6274,11 +7108,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5524, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 5524, "end": 0, "start": 0, "type": "CallExpression", @@ -6293,11 +7129,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5486, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5486, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6307,11 +7145,13 @@ description: Result of parsing french-press.kcl { "arguments": [], "callee": { + "commentStart": 5548, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 5548, "end": 0, "start": 0, "type": "CallExpression", @@ -6322,12 +7162,14 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 5569, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5576, "end": 0, "raw": "'y'", "start": 0, @@ -6338,11 +7180,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5561, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 5561, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6350,11 +7194,13 @@ description: Result of parsing french-press.kcl "unlabeled": null } ], + "commentStart": 5113, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "10": [ { + "commentStart": 5580, "end": 0, "start": 0, "type": "NonCodeNode", @@ -6382,9 +7228,12 @@ description: Result of parsing french-press.kcl "type": "VariableDeclaration" }, { + "commentStart": 5609, "declaration": { + "commentStart": 5609, "end": 0, "id": { + "commentStart": 5609, "end": 0, "name": "sketch012", "start": 0, @@ -6399,14 +7248,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 5653, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5662, "end": 0, "left": { + "commentStart": 5662, "end": 0, "name": "handleThickness", "start": 0, @@ -6415,6 +7267,7 @@ description: Result of parsing french-press.kcl }, "operator": "/", "right": { + "commentStart": 5680, "end": 0, "raw": "2", "start": 0, @@ -6432,16 +7285,19 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5635, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 5635, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 5647, "end": 0, "raw": "'XZ'", "start": 0, @@ -6452,11 +7308,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5621, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 5621, "end": 0, "start": 0, "type": "CallExpression", @@ -6465,8 +7323,10 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 5704, "elements": [ { + "commentStart": 5705, "end": 0, "raw": "2.3", "start": 0, @@ -6478,6 +7338,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 5710, "end": 0, "raw": "6.4", "start": 0, @@ -6495,6 +7356,7 @@ description: Result of parsing french-press.kcl "type": "ArrayExpression" }, { + "commentStart": 5716, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -6502,11 +7364,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5689, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 5689, "end": 0, "start": 0, "type": "CallExpression", @@ -6517,14 +7381,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 5729, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5735, "elements": [ { + "commentStart": 5736, "end": 0, "raw": "0.56", "start": 0, @@ -6536,6 +7403,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 5742, "end": 0, "raw": "0", "start": 0, @@ -6555,11 +7423,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5724, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5724, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6569,8 +7439,10 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 5767, "elements": [ { + "commentStart": 5768, "end": 0, "raw": "4.1", "start": 0, @@ -6582,6 +7454,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 5773, "end": 0, "raw": "5.26", "start": 0, @@ -6599,6 +7472,7 @@ description: Result of parsing french-press.kcl "type": "ArrayExpression" }, { + "commentStart": 5780, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -6606,11 +7480,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5751, "end": 0, "name": "tangentialArcTo", "start": 0, "type": "Identifier" }, + "commentStart": 5751, "end": 0, "start": 0, "type": "CallExpression", @@ -6619,8 +7495,10 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 5804, "elements": [ { + "commentStart": 5805, "end": 0, "raw": "4.17", "start": 0, @@ -6632,6 +7510,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 5811, "end": 0, "raw": "1.6", "start": 0, @@ -6649,6 +7528,7 @@ description: Result of parsing french-press.kcl "type": "ArrayExpression" }, { + "commentStart": 5817, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -6656,11 +7536,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5788, "end": 0, "name": "tangentialArcTo", "start": 0, "type": "Identifier" }, + "commentStart": 5788, "end": 0, "start": 0, "type": "CallExpression", @@ -6669,8 +7551,10 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 5841, "elements": [ { + "commentStart": 5842, "end": 0, "raw": "3.13", "start": 0, @@ -6682,6 +7566,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 5848, "end": 0, "raw": "0.61", "start": 0, @@ -6699,6 +7584,7 @@ description: Result of parsing french-press.kcl "type": "ArrayExpression" }, { + "commentStart": 5855, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -6706,11 +7592,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5825, "end": 0, "name": "tangentialArcTo", "start": 0, "type": "Identifier" }, + "commentStart": 5825, "end": 0, "start": 0, "type": "CallExpression", @@ -6721,15 +7609,18 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 5868, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5874, "elements": [ { "argument": { + "commentStart": 5876, "end": 0, "raw": "1.09", "start": 0, @@ -6740,6 +7631,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 5875, "end": 0, "operator": "-", "start": 0, @@ -6747,6 +7639,7 @@ description: Result of parsing french-press.kcl "type": "UnaryExpression" }, { + "commentStart": 5882, "end": 0, "raw": "0", "start": 0, @@ -6766,11 +7659,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5863, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5863, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6782,14 +7677,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 5896, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5902, "elements": [ { + "commentStart": 5903, "end": 0, "raw": "0", "start": 0, @@ -6801,6 +7699,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 5906, "end": 0, "raw": "0.43", "start": 0, @@ -6820,11 +7719,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5891, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5891, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6836,14 +7737,17 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 5923, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5929, "elements": [ { + "commentStart": 5930, "end": 0, "raw": "0.99", "start": 0, @@ -6856,6 +7760,7 @@ description: Result of parsing french-press.kcl }, { "argument": { + "commentStart": 5937, "end": 0, "raw": "0.02", "start": 0, @@ -6866,6 +7771,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 5936, "end": 0, "operator": "-", "start": 0, @@ -6881,11 +7787,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5918, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5918, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6895,8 +7803,10 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 5965, "elements": [ { + "commentStart": 5966, "end": 0, "raw": "3.63", "start": 0, @@ -6908,6 +7818,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 5972, "end": 0, "raw": "1.6", "start": 0, @@ -6925,6 +7836,7 @@ description: Result of parsing french-press.kcl "type": "ArrayExpression" }, { + "commentStart": 5978, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -6932,11 +7844,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5949, "end": 0, "name": "tangentialArcTo", "start": 0, "type": "Identifier" }, + "commentStart": 5949, "end": 0, "start": 0, "type": "CallExpression", @@ -6945,8 +7859,10 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 6002, "elements": [ { + "commentStart": 6003, "end": 0, "raw": "3.56", "start": 0, @@ -6958,6 +7874,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 6009, "end": 0, "raw": "5.15", "start": 0, @@ -6975,6 +7892,7 @@ description: Result of parsing french-press.kcl "type": "ArrayExpression" }, { + "commentStart": 6016, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -6982,11 +7900,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 5986, "end": 0, "name": "tangentialArcTo", "start": 0, "type": "Identifier" }, + "commentStart": 5986, "end": 0, "start": 0, "type": "CallExpression", @@ -6995,8 +7915,10 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 6040, "elements": [ { + "commentStart": 6041, "end": 0, "raw": "2.72", "start": 0, @@ -7008,6 +7930,7 @@ description: Result of parsing french-press.kcl } }, { + "commentStart": 6047, "end": 0, "raw": "5.88", "start": 0, @@ -7025,6 +7948,7 @@ description: Result of parsing french-press.kcl "type": "ArrayExpression" }, { + "commentStart": 6054, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -7032,11 +7956,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 6024, "end": 0, "name": "tangentialArcTo", "start": 0, "type": "Identifier" }, + "commentStart": 6024, "end": 0, "start": 0, "type": "CallExpression", @@ -7047,15 +7973,18 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 6067, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6073, "elements": [ { "argument": { + "commentStart": 6075, "end": 0, "raw": "0.4", "start": 0, @@ -7066,6 +7995,7 @@ description: Result of parsing french-press.kcl "suffix": "None" } }, + "commentStart": 6074, "end": 0, "operator": "-", "start": 0, @@ -7073,6 +8003,7 @@ description: Result of parsing french-press.kcl "type": "UnaryExpression" }, { + "commentStart": 6080, "end": 0, "raw": "0", "start": 0, @@ -7092,11 +8023,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 6062, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6062, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7108,16 +8041,19 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 6094, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6108, "elements": [ { "arguments": [ { + "commentStart": 6123, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -7125,11 +8061,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 6109, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 6109, "end": 0, "start": 0, "type": "CallExpression", @@ -7138,6 +8076,7 @@ description: Result of parsing french-press.kcl { "arguments": [ { + "commentStart": 6141, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -7145,11 +8084,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 6127, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 6127, "end": 0, "start": 0, "type": "CallExpression", @@ -7164,11 +8105,13 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 6089, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6089, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7178,17 +8121,20 @@ description: Result of parsing french-press.kcl { "arguments": [], "callee": { + "commentStart": 6151, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 6151, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 5621, "end": 0, "start": 0, "type": "PipeExpression", @@ -7204,9 +8150,12 @@ description: Result of parsing french-press.kcl "type": "VariableDeclaration" }, { + "commentStart": 6159, "declaration": { + "commentStart": 6159, "end": 0, "id": { + "commentStart": 6159, "end": 0, "name": "extrude007", "start": 0, @@ -7217,6 +8166,7 @@ description: Result of parsing french-press.kcl { "type": "LabeledArg", "label": { + "commentStart": 6191, "end": 0, "name": "length", "start": 0, @@ -7224,12 +8174,14 @@ description: Result of parsing french-press.kcl }, "arg": { "argument": { + "commentStart": 6201, "end": 0, "name": "handleThickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 6200, "end": 0, "operator": "-", "start": 0, @@ -7239,16 +8191,19 @@ description: Result of parsing french-press.kcl } ], "callee": { + "commentStart": 6172, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 6172, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 6180, "end": 0, "name": "sketch012", "start": 0, @@ -7266,20 +8221,32 @@ description: Result of parsing french-press.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 72, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// French Press", + "// A french press immersion coffee maker", + "", + "", + "// Set units" + ], "properties": [ { + "commentStart": 81, "end": 0, "key": { + "commentStart": 81, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -7288,6 +8255,7 @@ description: Result of parsing french-press.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 101, "end": 0, "name": "in", "start": 0, @@ -7302,32 +8270,9 @@ description: Result of parsing french-press.kcl ], "nonCodeMeta": { "nonCodeNodes": { - "2": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Upper ring of the metal structure", - "style": "line" - } - } - ], - "4": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Cross section of the metal supports", - "style": "line" - } - } - ], "6": [ { + "commentStart": 2492, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7338,6 +8283,7 @@ description: Result of parsing french-press.kcl ], "7": [ { + "commentStart": 2541, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7348,6 +8294,7 @@ description: Result of parsing french-press.kcl ], "8": [ { + "commentStart": 2945, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7356,20 +8303,9 @@ description: Result of parsing french-press.kcl } } ], - "9": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Filter screen", - "style": "line" - } - } - ], "12": [ { + "commentStart": 4077, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7378,20 +8314,9 @@ description: Result of parsing french-press.kcl } } ], - "13": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Pattern holes in the spiral plate", - "style": "line" - } - } - ], "14": [ { + "commentStart": 4386, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7400,20 +8325,9 @@ description: Result of parsing french-press.kcl } } ], - "15": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Pattern holes in the spiral plate", - "style": "line" - } - } - ], "16": [ { + "commentStart": 4696, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7421,76 +8335,17 @@ description: Result of parsing french-press.kcl "type": "newLine" } } - ], - "17": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Extrude a glass carafe body", - "style": "line" - } - } ] }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "French Press", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A french press immersion coffee maker", - "style": "line" - } - }, - { + "commentStart": 104, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/french-press/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/french-press/program_memory.snap index 6864ba9c9..418961cf5 100644 --- a/rust/kcl-lib/tests/kcl_samples/french-press/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/french-press/program_memory.snap @@ -4336,6 +4336,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 340, "end": 361, "start": 340, "type": "TagDeclarator", @@ -4348,6 +4349,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 447, "end": 468, "start": 447, "type": "TagDeclarator", @@ -4360,6 +4362,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 573, "end": 594, "start": 573, "type": "TagDeclarator", @@ -4389,6 +4392,7 @@ description: Variables in memory after executing french-press.kcl 5.7 ], "tag": { + "commentStart": 340, "end": 361, "start": 340, "type": "TagDeclarator", @@ -4413,6 +4417,7 @@ description: Variables in memory after executing french-press.kcl 5.7 ], "tag": { + "commentStart": 447, "end": 468, "start": 447, "type": "TagDeclarator", @@ -4437,6 +4442,7 @@ description: Variables in memory after executing french-press.kcl 6.45 ], "tag": { + "commentStart": 573, "end": 594, "start": 573, "type": "TagDeclarator", @@ -4587,6 +4593,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1088, "end": 1094, "start": 1088, "type": "TagDeclarator", @@ -4606,6 +4613,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1236, "end": 1242, "start": 1236, "type": "TagDeclarator", @@ -4625,6 +4633,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1384, "end": 1390, "start": 1384, "type": "TagDeclarator", @@ -4644,6 +4653,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1516, "end": 1524, "start": 1516, "type": "TagDeclarator", @@ -4663,6 +4673,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1602, "end": 1608, "start": 1602, "type": "TagDeclarator", @@ -4682,6 +4693,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1786, "end": 1792, "start": 1786, "type": "TagDeclarator", @@ -4701,6 +4713,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1972, "end": 1978, "start": 1972, "type": "TagDeclarator", @@ -4756,6 +4769,7 @@ description: Variables in memory after executing french-press.kcl 5.7 ], "tag": { + "commentStart": 1088, "end": 1094, "start": 1088, "type": "TagDeclarator", @@ -4805,6 +4819,7 @@ description: Variables in memory after executing french-press.kcl 0.3732 ], "tag": { + "commentStart": 1236, "end": 1242, "start": 1236, "type": "TagDeclarator", @@ -4854,6 +4869,7 @@ description: Variables in memory after executing french-press.kcl -0.966 ], "tag": { + "commentStart": 1384, "end": 1390, "start": 1384, "type": "TagDeclarator", @@ -4903,6 +4919,7 @@ description: Variables in memory after executing french-press.kcl -0.133 ], "tag": { + "commentStart": 1516, "end": 1524, "start": 1516, "type": "TagDeclarator", @@ -4946,6 +4963,7 @@ description: Variables in memory after executing french-press.kcl -0.033 ], "tag": { + "commentStart": 1602, "end": 1608, "start": 1602, "type": "TagDeclarator", @@ -4995,6 +5013,7 @@ description: Variables in memory after executing french-press.kcl -0.1134 ], "tag": { + "commentStart": 1786, "end": 1792, "start": 1786, "type": "TagDeclarator", @@ -5044,6 +5063,7 @@ description: Variables in memory after executing french-press.kcl -0.1789 ], "tag": { + "commentStart": 1972, "end": 1978, "start": 1972, "type": "TagDeclarator", @@ -5232,6 +5252,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1088, "end": 1094, "start": 1088, "type": "TagDeclarator", @@ -5251,6 +5272,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1236, "end": 1242, "start": 1236, "type": "TagDeclarator", @@ -5270,6 +5292,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1384, "end": 1390, "start": 1384, "type": "TagDeclarator", @@ -5289,6 +5312,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1516, "end": 1524, "start": 1516, "type": "TagDeclarator", @@ -5308,6 +5332,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1602, "end": 1608, "start": 1602, "type": "TagDeclarator", @@ -5327,6 +5352,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1786, "end": 1792, "start": 1786, "type": "TagDeclarator", @@ -5346,6 +5372,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1972, "end": 1978, "start": 1972, "type": "TagDeclarator", @@ -5401,6 +5428,7 @@ description: Variables in memory after executing french-press.kcl 5.7 ], "tag": { + "commentStart": 1088, "end": 1094, "start": 1088, "type": "TagDeclarator", @@ -5450,6 +5478,7 @@ description: Variables in memory after executing french-press.kcl 0.3732 ], "tag": { + "commentStart": 1236, "end": 1242, "start": 1236, "type": "TagDeclarator", @@ -5499,6 +5528,7 @@ description: Variables in memory after executing french-press.kcl -0.966 ], "tag": { + "commentStart": 1384, "end": 1390, "start": 1384, "type": "TagDeclarator", @@ -5548,6 +5578,7 @@ description: Variables in memory after executing french-press.kcl -0.133 ], "tag": { + "commentStart": 1516, "end": 1524, "start": 1516, "type": "TagDeclarator", @@ -5591,6 +5622,7 @@ description: Variables in memory after executing french-press.kcl -0.033 ], "tag": { + "commentStart": 1602, "end": 1608, "start": 1602, "type": "TagDeclarator", @@ -5640,6 +5672,7 @@ description: Variables in memory after executing french-press.kcl -0.1134 ], "tag": { + "commentStart": 1786, "end": 1792, "start": 1786, "type": "TagDeclarator", @@ -5689,6 +5722,7 @@ description: Variables in memory after executing french-press.kcl -0.1789 ], "tag": { + "commentStart": 1972, "end": 1978, "start": 1972, "type": "TagDeclarator", @@ -5877,6 +5911,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1088, "end": 1094, "start": 1088, "type": "TagDeclarator", @@ -5896,6 +5931,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1236, "end": 1242, "start": 1236, "type": "TagDeclarator", @@ -5915,6 +5951,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1384, "end": 1390, "start": 1384, "type": "TagDeclarator", @@ -5934,6 +5971,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1516, "end": 1524, "start": 1516, "type": "TagDeclarator", @@ -5953,6 +5991,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1602, "end": 1608, "start": 1602, "type": "TagDeclarator", @@ -5972,6 +6011,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1786, "end": 1792, "start": 1786, "type": "TagDeclarator", @@ -5991,6 +6031,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1972, "end": 1978, "start": 1972, "type": "TagDeclarator", @@ -6046,6 +6087,7 @@ description: Variables in memory after executing french-press.kcl 5.7 ], "tag": { + "commentStart": 1088, "end": 1094, "start": 1088, "type": "TagDeclarator", @@ -6095,6 +6137,7 @@ description: Variables in memory after executing french-press.kcl 0.3732 ], "tag": { + "commentStart": 1236, "end": 1242, "start": 1236, "type": "TagDeclarator", @@ -6144,6 +6187,7 @@ description: Variables in memory after executing french-press.kcl -0.966 ], "tag": { + "commentStart": 1384, "end": 1390, "start": 1384, "type": "TagDeclarator", @@ -6193,6 +6237,7 @@ description: Variables in memory after executing french-press.kcl -0.133 ], "tag": { + "commentStart": 1516, "end": 1524, "start": 1516, "type": "TagDeclarator", @@ -6236,6 +6281,7 @@ description: Variables in memory after executing french-press.kcl -0.033 ], "tag": { + "commentStart": 1602, "end": 1608, "start": 1602, "type": "TagDeclarator", @@ -6285,6 +6331,7 @@ description: Variables in memory after executing french-press.kcl -0.1134 ], "tag": { + "commentStart": 1786, "end": 1792, "start": 1786, "type": "TagDeclarator", @@ -6334,6 +6381,7 @@ description: Variables in memory after executing french-press.kcl -0.1789 ], "tag": { + "commentStart": 1972, "end": 1978, "start": 1972, "type": "TagDeclarator", @@ -6522,6 +6570,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1088, "end": 1094, "start": 1088, "type": "TagDeclarator", @@ -6541,6 +6590,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1236, "end": 1242, "start": 1236, "type": "TagDeclarator", @@ -6560,6 +6610,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1384, "end": 1390, "start": 1384, "type": "TagDeclarator", @@ -6579,6 +6630,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1516, "end": 1524, "start": 1516, "type": "TagDeclarator", @@ -6598,6 +6650,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1602, "end": 1608, "start": 1602, "type": "TagDeclarator", @@ -6617,6 +6670,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1786, "end": 1792, "start": 1786, "type": "TagDeclarator", @@ -6636,6 +6690,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1972, "end": 1978, "start": 1972, "type": "TagDeclarator", @@ -6691,6 +6746,7 @@ description: Variables in memory after executing french-press.kcl 5.7 ], "tag": { + "commentStart": 1088, "end": 1094, "start": 1088, "type": "TagDeclarator", @@ -6740,6 +6796,7 @@ description: Variables in memory after executing french-press.kcl 0.3732 ], "tag": { + "commentStart": 1236, "end": 1242, "start": 1236, "type": "TagDeclarator", @@ -6789,6 +6846,7 @@ description: Variables in memory after executing french-press.kcl -0.966 ], "tag": { + "commentStart": 1384, "end": 1390, "start": 1384, "type": "TagDeclarator", @@ -6838,6 +6896,7 @@ description: Variables in memory after executing french-press.kcl -0.133 ], "tag": { + "commentStart": 1516, "end": 1524, "start": 1516, "type": "TagDeclarator", @@ -6881,6 +6940,7 @@ description: Variables in memory after executing french-press.kcl -0.033 ], "tag": { + "commentStart": 1602, "end": 1608, "start": 1602, "type": "TagDeclarator", @@ -6930,6 +6990,7 @@ description: Variables in memory after executing french-press.kcl -0.1134 ], "tag": { + "commentStart": 1786, "end": 1792, "start": 1786, "type": "TagDeclarator", @@ -6979,6 +7040,7 @@ description: Variables in memory after executing french-press.kcl -0.1789 ], "tag": { + "commentStart": 1972, "end": 1978, "start": 1972, "type": "TagDeclarator", @@ -7983,6 +8045,7 @@ description: Variables in memory after executing french-press.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 3223, "end": 3228, "start": 3223, "type": "TagDeclarator", @@ -8052,6 +8115,7 @@ description: Variables in memory after executing french-press.kcl 1.11 ], "tag": { + "commentStart": 3223, "end": 3228, "start": 3223, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/kcl_samples/gear-rack/ast.snap b/rust/kcl-lib/tests/kcl_samples/gear-rack/ast.snap index 9c727c5cd..c0096ace6 100644 --- a/rust/kcl-lib/tests/kcl_samples/gear-rack/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/gear-rack/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing gear-rack.kcl "Ok": { "body": [ { + "commentStart": 423, "declaration": { + "commentStart": 445, "end": 0, "id": { + "commentStart": 445, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 454, "end": 0, "raw": "100", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing gear-rack.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 458, "declaration": { + "commentStart": 458, "end": 0, "id": { + "commentStart": 458, "end": 0, "name": "pitchHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 472, "end": 0, "raw": "11.5", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing gear-rack.kcl "type": "VariableDeclaration" }, { + "commentStart": 477, "declaration": { + "commentStart": 477, "end": 0, "id": { + "commentStart": 477, "end": 0, "name": "width", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 485, "end": 0, "raw": "5", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing gear-rack.kcl "type": "VariableDeclaration" }, { + "commentStart": 487, "declaration": { + "commentStart": 487, "end": 0, "id": { + "commentStart": 487, "end": 0, "name": "height", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 496, "end": 0, "raw": "12", "start": 0, @@ -122,15 +141,19 @@ description: Result of parsing gear-rack.kcl "type": "VariableDeclaration" }, { + "commentStart": 499, "declaration": { + "commentStart": 499, "end": 0, "id": { + "commentStart": 499, "end": 0, "name": "minHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 511, "end": 0, "raw": "10.875", "start": 0, @@ -151,9 +174,12 @@ description: Result of parsing gear-rack.kcl "type": "VariableDeclaration" }, { + "commentStart": 517, "declaration": { + "commentStart": 550, "end": 0, "id": { + "commentStart": 550, "end": 0, "name": "rackBody", "start": 0, @@ -164,6 +190,7 @@ description: Result of parsing gear-rack.kcl { "arguments": [ { + "commentStart": 575, "end": 0, "raw": "'XY'", "start": 0, @@ -173,11 +200,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 561, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 561, "end": 0, "start": 0, "type": "CallExpression", @@ -186,17 +215,21 @@ description: Result of parsing gear-rack.kcl { "arguments": [ { + "commentStart": 601, "elements": [ { + "commentStart": 602, "end": 0, "left": { "argument": { + "commentStart": 603, "end": 0, "name": "length", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 602, "end": 0, "operator": "-", "start": 0, @@ -205,6 +238,7 @@ description: Result of parsing gear-rack.kcl }, "operator": "/", "right": { + "commentStart": 612, "end": 0, "raw": "2", "start": 0, @@ -220,6 +254,7 @@ description: Result of parsing gear-rack.kcl "type": "BinaryExpression" }, { + "commentStart": 615, "end": 0, "raw": "0", "start": 0, @@ -237,6 +272,7 @@ description: Result of parsing gear-rack.kcl "type": "ArrayExpression" }, { + "commentStart": 619, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -244,11 +280,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 586, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 586, "end": 0, "start": 0, "type": "CallExpression", @@ -259,14 +297,17 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 632, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 638, "elements": [ { + "commentStart": 639, "end": 0, "name": "length", "start": 0, @@ -274,6 +315,7 @@ description: Result of parsing gear-rack.kcl "type": "Identifier" }, { + "commentStart": 647, "end": 0, "raw": "0", "start": 0, @@ -293,11 +335,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 627, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 627, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -309,14 +353,17 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 661, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 667, "elements": [ { + "commentStart": 668, "end": 0, "raw": "0", "start": 0, @@ -328,6 +375,7 @@ description: Result of parsing gear-rack.kcl } }, { + "commentStart": 671, "end": 0, "name": "minHeight", "start": 0, @@ -343,11 +391,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 656, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 656, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -359,21 +409,25 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 693, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 699, "elements": [ { "argument": { + "commentStart": 701, "end": 0, "name": "length", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 700, "end": 0, "operator": "-", "start": 0, @@ -381,6 +435,7 @@ description: Result of parsing gear-rack.kcl "type": "UnaryExpression" }, { + "commentStart": 709, "end": 0, "raw": "0", "start": 0, @@ -400,11 +455,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 688, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 688, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -414,11 +471,13 @@ description: Result of parsing gear-rack.kcl { "arguments": [], "callee": { + "commentStart": 718, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 718, "end": 0, "start": 0, "type": "CallExpression", @@ -429,12 +488,14 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 739, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 748, "end": 0, "name": "width", "start": 0, @@ -444,11 +505,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 731, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 731, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -456,11 +519,13 @@ description: Result of parsing gear-rack.kcl "unlabeled": null } ], + "commentStart": 561, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "6": [ { + "commentStart": 754, "end": 0, "start": 0, "type": "NonCodeNode", @@ -483,14 +548,22 @@ description: Result of parsing gear-rack.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Create the body of the rack" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 806, "declaration": { + "commentStart": 809, "end": 0, "id": { + "commentStart": 809, "end": 0, "name": "tooth", "start": 0, @@ -500,9 +573,12 @@ description: Result of parsing gear-rack.kcl "body": { "body": [ { + "commentStart": 821, "declaration": { + "commentStart": 821, "end": 0, "id": { + "commentStart": 821, "end": 0, "name": "toothSketch", "start": 0, @@ -513,6 +589,7 @@ description: Result of parsing gear-rack.kcl { "arguments": [ { + "commentStart": 849, "end": 0, "raw": "'XY'", "start": 0, @@ -522,11 +599,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 835, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 835, "end": 0, "start": 0, "type": "CallExpression", @@ -535,19 +614,24 @@ description: Result of parsing gear-rack.kcl { "arguments": [ { + "commentStart": 877, "elements": [ { + "commentStart": 878, "end": 0, "left": { + "commentStart": 878, "end": 0, "left": { "argument": { + "commentStart": 879, "end": 0, "name": "length", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 878, "end": 0, "operator": "-", "start": 0, @@ -556,6 +640,7 @@ description: Result of parsing gear-rack.kcl }, "operator": "/", "right": { + "commentStart": 888, "end": 0, "raw": "2", "start": 0, @@ -572,6 +657,7 @@ description: Result of parsing gear-rack.kcl }, "operator": "+", "right": { + "commentStart": 892, "end": 0, "raw": "0.567672", "start": 0, @@ -587,6 +673,7 @@ description: Result of parsing gear-rack.kcl "type": "BinaryExpression" }, { + "commentStart": 902, "end": 0, "name": "minHeight", "start": 0, @@ -600,6 +687,7 @@ description: Result of parsing gear-rack.kcl "type": "ArrayExpression" }, { + "commentStart": 914, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -607,11 +695,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 862, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 862, "end": 0, "start": 0, "type": "CallExpression", @@ -620,8 +710,10 @@ description: Result of parsing gear-rack.kcl { "arguments": [ { + "commentStart": 948, "elements": [ { + "commentStart": 949, "end": 0, "raw": "0.157636", "start": 0, @@ -633,6 +725,7 @@ description: Result of parsing gear-rack.kcl } }, { + "commentStart": 959, "end": 0, "raw": "0.110378", "start": 0, @@ -650,6 +743,7 @@ description: Result of parsing gear-rack.kcl "type": "ArrayExpression" }, { + "commentStart": 970, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -657,11 +751,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 924, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 924, "end": 0, "start": 0, "type": "CallExpression", @@ -672,14 +768,17 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 985, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 991, "elements": [ { + "commentStart": 992, "end": 0, "raw": "0.329118", "start": 0, @@ -691,6 +790,7 @@ description: Result of parsing gear-rack.kcl } }, { + "commentStart": 1002, "end": 0, "raw": "0.904244", "start": 0, @@ -710,11 +810,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 980, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 980, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -724,8 +826,10 @@ description: Result of parsing gear-rack.kcl { "arguments": [ { + "commentStart": 1044, "elements": [ { + "commentStart": 1045, "end": 0, "raw": "0.157636", "start": 0, @@ -737,6 +841,7 @@ description: Result of parsing gear-rack.kcl } }, { + "commentStart": 1055, "end": 0, "raw": "0.110378", "start": 0, @@ -754,6 +859,7 @@ description: Result of parsing gear-rack.kcl "type": "ArrayExpression" }, { + "commentStart": 1066, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -761,11 +867,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 1020, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 1020, "end": 0, "start": 0, "type": "CallExpression", @@ -776,14 +884,17 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 1081, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1087, "elements": [ { + "commentStart": 1088, "end": 0, "raw": "0.186505", "start": 0, @@ -795,6 +906,7 @@ description: Result of parsing gear-rack.kcl } }, { + "commentStart": 1098, "end": 0, "raw": "0", "start": 0, @@ -814,11 +926,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 1076, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1076, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -828,8 +942,10 @@ description: Result of parsing gear-rack.kcl { "arguments": [ { + "commentStart": 1133, "elements": [ { + "commentStart": 1134, "end": 0, "raw": "0.157636", "start": 0, @@ -842,6 +958,7 @@ description: Result of parsing gear-rack.kcl }, { "argument": { + "commentStart": 1145, "end": 0, "raw": "0.110378", "start": 0, @@ -852,6 +969,7 @@ description: Result of parsing gear-rack.kcl "suffix": "None" } }, + "commentStart": 1144, "end": 0, "operator": "-", "start": 0, @@ -865,6 +983,7 @@ description: Result of parsing gear-rack.kcl "type": "ArrayExpression" }, { + "commentStart": 1156, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -872,11 +991,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 1109, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 1109, "end": 0, "start": 0, "type": "CallExpression", @@ -887,14 +1008,17 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 1171, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1177, "elements": [ { + "commentStart": 1178, "end": 0, "raw": "0.329118", "start": 0, @@ -907,6 +1031,7 @@ description: Result of parsing gear-rack.kcl }, { "argument": { + "commentStart": 1189, "end": 0, "raw": "0.904244", "start": 0, @@ -917,6 +1042,7 @@ description: Result of parsing gear-rack.kcl "suffix": "None" } }, + "commentStart": 1188, "end": 0, "operator": "-", "start": 0, @@ -932,11 +1058,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 1166, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1166, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -946,8 +1074,10 @@ description: Result of parsing gear-rack.kcl { "arguments": [ { + "commentStart": 1231, "elements": [ { + "commentStart": 1232, "end": 0, "raw": "0.157636", "start": 0, @@ -960,6 +1090,7 @@ description: Result of parsing gear-rack.kcl }, { "argument": { + "commentStart": 1243, "end": 0, "raw": "0.110378", "start": 0, @@ -970,6 +1101,7 @@ description: Result of parsing gear-rack.kcl "suffix": "None" } }, + "commentStart": 1242, "end": 0, "operator": "-", "start": 0, @@ -983,6 +1115,7 @@ description: Result of parsing gear-rack.kcl "type": "ArrayExpression" }, { + "commentStart": 1254, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -990,11 +1123,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 1207, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 1207, "end": 0, "start": 0, "type": "CallExpression", @@ -1003,11 +1138,13 @@ description: Result of parsing gear-rack.kcl { "arguments": [], "callee": { + "commentStart": 1264, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1264, "end": 0, "start": 0, "type": "CallExpression", @@ -1018,12 +1155,14 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 1287, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1296, "end": 0, "name": "width", "start": 0, @@ -1033,11 +1172,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 1279, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1279, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1045,6 +1186,7 @@ description: Result of parsing gear-rack.kcl "unlabeled": null } ], + "commentStart": 835, "end": 0, "start": 0, "type": "PipeExpression", @@ -1061,21 +1203,25 @@ description: Result of parsing gear-rack.kcl }, { "argument": { + "commentStart": 1312, "end": 0, "name": "toothSketch", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1305, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 817, "end": 0, "start": 0 }, + "commentStart": 814, "end": 0, "params": [], "start": 0, @@ -1092,9 +1238,12 @@ description: Result of parsing gear-rack.kcl "type": "VariableDeclaration" }, { + "commentStart": 1325, "declaration": { + "commentStart": 1388, "end": 0, "id": { + "commentStart": 1388, "end": 0, "name": "teeth", "start": 0, @@ -1105,11 +1254,13 @@ description: Result of parsing gear-rack.kcl { "arguments": [], "callee": { + "commentStart": 1396, "end": 0, "name": "tooth", "start": 0, "type": "Identifier" }, + "commentStart": 1396, "end": 0, "start": 0, "type": "CallExpression", @@ -1120,14 +1271,17 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 1433, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1440, "elements": [ { + "commentStart": 1441, "end": 0, "raw": "10", "start": 0, @@ -1139,6 +1293,7 @@ description: Result of parsing gear-rack.kcl } }, { + "commentStart": 1445, "end": 0, "raw": "0", "start": 0, @@ -1150,6 +1305,7 @@ description: Result of parsing gear-rack.kcl } }, { + "commentStart": 1448, "end": 0, "raw": "0", "start": 0, @@ -1170,12 +1326,14 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 1459, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1470, "end": 0, "raw": "1.570796", "start": 0, @@ -1190,12 +1348,14 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 1487, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1499, "end": 0, "raw": "63", "start": 0, @@ -1209,11 +1369,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 1409, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 1409, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1221,11 +1383,13 @@ description: Result of parsing gear-rack.kcl "unlabeled": null } ], + "commentStart": 1396, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 1508, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1248,14 +1412,22 @@ description: Result of parsing gear-rack.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Pattern the single tooth over the length of the rack body" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1575, "declaration": { + "commentStart": 1575, "end": 0, "id": { + "commentStart": 1575, "end": 0, "name": "endCapTooth", "start": 0, @@ -1266,6 +1438,7 @@ description: Result of parsing gear-rack.kcl { "arguments": [ { + "commentStart": 1603, "end": 0, "raw": "'XY'", "start": 0, @@ -1275,11 +1448,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 1589, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1589, "end": 0, "start": 0, "type": "CallExpression", @@ -1288,17 +1463,21 @@ description: Result of parsing gear-rack.kcl { "arguments": [ { + "commentStart": 1629, "elements": [ { + "commentStart": 1630, "end": 0, "left": { "argument": { + "commentStart": 1631, "end": 0, "name": "length", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1630, "end": 0, "operator": "-", "start": 0, @@ -1307,6 +1486,7 @@ description: Result of parsing gear-rack.kcl }, "operator": "/", "right": { + "commentStart": 1640, "end": 0, "raw": "2", "start": 0, @@ -1322,6 +1502,7 @@ description: Result of parsing gear-rack.kcl "type": "BinaryExpression" }, { + "commentStart": 1643, "end": 0, "raw": "11.849525", "start": 0, @@ -1339,6 +1520,7 @@ description: Result of parsing gear-rack.kcl "type": "ArrayExpression" }, { + "commentStart": 1655, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1346,11 +1528,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 1614, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1614, "end": 0, "start": 0, "type": "CallExpression", @@ -1361,14 +1545,17 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 1668, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1674, "elements": [ { + "commentStart": 1675, "end": 0, "raw": "0.314524", "start": 0, @@ -1381,6 +1568,7 @@ description: Result of parsing gear-rack.kcl }, { "argument": { + "commentStart": 1686, "end": 0, "raw": "0.864147", "start": 0, @@ -1391,6 +1579,7 @@ description: Result of parsing gear-rack.kcl "suffix": "None" } }, + "commentStart": 1685, "end": 0, "operator": "-", "start": 0, @@ -1406,11 +1595,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 1663, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1663, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1420,8 +1611,10 @@ description: Result of parsing gear-rack.kcl { "arguments": [ { + "commentStart": 1726, "elements": [ { + "commentStart": 1727, "end": 0, "raw": "0.157636", "start": 0, @@ -1434,6 +1627,7 @@ description: Result of parsing gear-rack.kcl }, { "argument": { + "commentStart": 1738, "end": 0, "raw": "0.110378", "start": 0, @@ -1444,6 +1638,7 @@ description: Result of parsing gear-rack.kcl "suffix": "None" } }, + "commentStart": 1737, "end": 0, "operator": "-", "start": 0, @@ -1457,6 +1652,7 @@ description: Result of parsing gear-rack.kcl "type": "ArrayExpression" }, { + "commentStart": 1749, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1464,11 +1660,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 1702, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 1702, "end": 0, "start": 0, "type": "CallExpression", @@ -1479,23 +1677,28 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 1762, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1776, "elements": [ { + "commentStart": 1777, "end": 0, "left": { "argument": { + "commentStart": 1778, "end": 0, "name": "length", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1777, "end": 0, "operator": "-", "start": 0, @@ -1504,6 +1707,7 @@ description: Result of parsing gear-rack.kcl }, "operator": "/", "right": { + "commentStart": 1787, "end": 0, "raw": "2", "start": 0, @@ -1519,6 +1723,7 @@ description: Result of parsing gear-rack.kcl "type": "BinaryExpression" }, { + "commentStart": 1790, "end": 0, "name": "minHeight", "start": 0, @@ -1534,11 +1739,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 1757, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1757, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1548,11 +1755,13 @@ description: Result of parsing gear-rack.kcl { "arguments": [], "callee": { + "commentStart": 1807, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1807, "end": 0, "start": 0, "type": "CallExpression", @@ -1563,12 +1772,14 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 1828, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1837, "end": 0, "name": "width", "start": 0, @@ -1578,11 +1789,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 1820, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1820, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1590,11 +1803,13 @@ description: Result of parsing gear-rack.kcl "unlabeled": null } ], + "commentStart": 1589, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "6": [ { + "commentStart": 1843, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1622,9 +1837,12 @@ description: Result of parsing gear-rack.kcl "type": "VariableDeclaration" }, { + "commentStart": 1911, "declaration": { + "commentStart": 1911, "end": 0, "id": { + "commentStart": 1911, "end": 0, "name": "endCapTooth2", "start": 0, @@ -1635,6 +1853,7 @@ description: Result of parsing gear-rack.kcl { "arguments": [ { + "commentStart": 1940, "end": 0, "raw": "'XY'", "start": 0, @@ -1644,11 +1863,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 1926, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1926, "end": 0, "start": 0, "type": "CallExpression", @@ -1657,10 +1878,13 @@ description: Result of parsing gear-rack.kcl { "arguments": [ { + "commentStart": 1966, "elements": [ { + "commentStart": 1967, "end": 0, "left": { + "commentStart": 1967, "end": 0, "name": "length", "start": 0, @@ -1669,6 +1893,7 @@ description: Result of parsing gear-rack.kcl }, "operator": "/", "right": { + "commentStart": 1976, "end": 0, "raw": "2", "start": 0, @@ -1684,6 +1909,7 @@ description: Result of parsing gear-rack.kcl "type": "BinaryExpression" }, { + "commentStart": 1979, "end": 0, "raw": "11.849525", "start": 0, @@ -1701,6 +1927,7 @@ description: Result of parsing gear-rack.kcl "type": "ArrayExpression" }, { + "commentStart": 1991, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1708,11 +1935,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 1951, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1951, "end": 0, "start": 0, "type": "CallExpression", @@ -1723,15 +1952,18 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 2004, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2010, "elements": [ { "argument": { + "commentStart": 2012, "end": 0, "raw": "0.314524", "start": 0, @@ -1742,6 +1974,7 @@ description: Result of parsing gear-rack.kcl "suffix": "None" } }, + "commentStart": 2011, "end": 0, "operator": "-", "start": 0, @@ -1750,6 +1983,7 @@ description: Result of parsing gear-rack.kcl }, { "argument": { + "commentStart": 2023, "end": 0, "raw": "0.864147", "start": 0, @@ -1760,6 +1994,7 @@ description: Result of parsing gear-rack.kcl "suffix": "None" } }, + "commentStart": 2022, "end": 0, "operator": "-", "start": 0, @@ -1775,11 +2010,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 1999, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1999, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1789,9 +2026,11 @@ description: Result of parsing gear-rack.kcl { "arguments": [ { + "commentStart": 2063, "elements": [ { "argument": { + "commentStart": 2065, "end": 0, "raw": "0.157636", "start": 0, @@ -1802,6 +2041,7 @@ description: Result of parsing gear-rack.kcl "suffix": "None" } }, + "commentStart": 2064, "end": 0, "operator": "-", "start": 0, @@ -1810,6 +2050,7 @@ description: Result of parsing gear-rack.kcl }, { "argument": { + "commentStart": 2076, "end": 0, "raw": "0.110378", "start": 0, @@ -1820,6 +2061,7 @@ description: Result of parsing gear-rack.kcl "suffix": "None" } }, + "commentStart": 2075, "end": 0, "operator": "-", "start": 0, @@ -1833,6 +2075,7 @@ description: Result of parsing gear-rack.kcl "type": "ArrayExpression" }, { + "commentStart": 2087, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1840,11 +2083,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 2039, "end": 0, "name": "tangentialArcToRelative", "start": 0, "type": "Identifier" }, + "commentStart": 2039, "end": 0, "start": 0, "type": "CallExpression", @@ -1855,16 +2100,20 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 2100, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2114, "elements": [ { + "commentStart": 2115, "end": 0, "left": { + "commentStart": 2115, "end": 0, "name": "length", "start": 0, @@ -1873,6 +2122,7 @@ description: Result of parsing gear-rack.kcl }, "operator": "/", "right": { + "commentStart": 2124, "end": 0, "raw": "2", "start": 0, @@ -1888,6 +2138,7 @@ description: Result of parsing gear-rack.kcl "type": "BinaryExpression" }, { + "commentStart": 2127, "end": 0, "name": "minHeight", "start": 0, @@ -1903,11 +2154,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 2095, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2095, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1917,11 +2170,13 @@ description: Result of parsing gear-rack.kcl { "arguments": [], "callee": { + "commentStart": 2144, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2144, "end": 0, "start": 0, "type": "CallExpression", @@ -1932,12 +2187,14 @@ description: Result of parsing gear-rack.kcl { "type": "LabeledArg", "label": { + "commentStart": 2165, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2174, "end": 0, "name": "width", "start": 0, @@ -1947,11 +2204,13 @@ description: Result of parsing gear-rack.kcl } ], "callee": { + "commentStart": 2157, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2157, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1959,6 +2218,7 @@ description: Result of parsing gear-rack.kcl "unlabeled": null } ], + "commentStart": 1926, "end": 0, "start": 0, "type": "PipeExpression", @@ -1974,20 +2234,32 @@ description: Result of parsing gear-rack.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 391, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// 100mm Gear Rack", + "// A flat bar or rail that is engraved with teeth along its length. These teeth are designed to mesh with the teeth of a gear, known as a pinion. When the pinion, a small cylindrical gear, rotates, its teeth engage with the teeth on the rack, causing the rack to move linearly. Conversely, linear motion applied to the rack will cause the pinion to rotate.", + "", + "", + "// Set Units" + ], "properties": [ { + "commentStart": 400, "end": 0, "key": { + "commentStart": 400, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -1996,6 +2268,7 @@ description: Result of parsing gear-rack.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 420, "end": 0, "name": "mm", "start": 0, @@ -2009,88 +2282,16 @@ description: Result of parsing gear-rack.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "4": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the body of the rack", - "style": "line" - } - } - ], - "6": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Pattern the single tooth over the length of the rack body", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "100mm Gear Rack", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A flat bar or rail that is engraved with teeth along its length. These teeth are designed to mesh with the teeth of a gear, known as a pinion. When the pinion, a small cylindrical gear, rotates, its teeth engage with the teeth on the rack, causing the rack to move linearly. Conversely, linear motion applied to the rack will cause the pinion to rotate.", - "style": "line" - } - }, - { + "commentStart": 423, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set Units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/gear/ast.snap b/rust/kcl-lib/tests/kcl_samples/gear/ast.snap index 5741d60bb..2f1af13e6 100644 --- a/rust/kcl-lib/tests/kcl_samples/gear/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/gear/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing gear.kcl "Ok": { "body": [ { + "commentStart": 472, "declaration": { + "commentStart": 494, "end": 0, "id": { + "commentStart": 494, "end": 0, "name": "nTeeth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 503, "end": 0, "raw": "21", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing gear.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 506, "declaration": { + "commentStart": 506, "end": 0, "id": { + "commentStart": 506, "end": 0, "name": "module", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 515, "end": 0, "raw": "0.5", "start": 0, @@ -64,17 +75,22 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 519, "declaration": { + "commentStart": 519, "end": 0, "id": { + "commentStart": 519, "end": 0, "name": "pitchDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 535, "end": 0, "left": { + "commentStart": 535, "end": 0, "name": "module", "start": 0, @@ -83,6 +99,7 @@ description: Result of parsing gear.kcl }, "operator": "*", "right": { + "commentStart": 544, "end": 0, "name": "nTeeth", "start": 0, @@ -103,15 +120,19 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 551, "declaration": { + "commentStart": 551, "end": 0, "id": { + "commentStart": 551, "end": 0, "name": "pressureAngle", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 567, "end": 0, "raw": "20", "start": 0, @@ -132,15 +153,19 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 570, "declaration": { + "commentStart": 570, "end": 0, "id": { + "commentStart": 570, "end": 0, "name": "addendum", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 581, "end": 0, "name": "module", "start": 0, @@ -157,17 +182,22 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 588, "declaration": { + "commentStart": 588, "end": 0, "id": { + "commentStart": 588, "end": 0, "name": "deddendum", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 600, "end": 0, "left": { + "commentStart": 600, "end": 0, "raw": "1.25", "start": 0, @@ -180,6 +210,7 @@ description: Result of parsing gear.kcl }, "operator": "*", "right": { + "commentStart": 607, "end": 0, "name": "module", "start": 0, @@ -200,17 +231,22 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 614, "declaration": { + "commentStart": 614, "end": 0, "id": { + "commentStart": 614, "end": 0, "name": "baseDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 629, "end": 0, "left": { + "commentStart": 629, "end": 0, "name": "pitchDiameter", "start": 0, @@ -223,6 +259,7 @@ description: Result of parsing gear.kcl { "arguments": [ { + "commentStart": 659, "end": 0, "name": "pressureAngle", "start": 0, @@ -231,11 +268,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 649, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 649, "end": 0, "start": 0, "type": "CallExpression", @@ -243,11 +282,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 645, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 645, "end": 0, "start": 0, "type": "CallExpression", @@ -267,17 +308,22 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 675, "declaration": { + "commentStart": 675, "end": 0, "id": { + "commentStart": 675, "end": 0, "name": "tipDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 689, "end": 0, "left": { + "commentStart": 689, "end": 0, "name": "pitchDiameter", "start": 0, @@ -286,8 +332,10 @@ description: Result of parsing gear.kcl }, "operator": "+", "right": { + "commentStart": 705, "end": 0, "left": { + "commentStart": 705, "end": 0, "raw": "2", "start": 0, @@ -300,6 +348,7 @@ description: Result of parsing gear.kcl }, "operator": "*", "right": { + "commentStart": 709, "end": 0, "name": "module", "start": 0, @@ -324,15 +373,19 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 716, "declaration": { + "commentStart": 716, "end": 0, "id": { + "commentStart": 716, "end": 0, "name": "gearHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 729, "end": 0, "raw": "3", "start": 0, @@ -353,15 +406,19 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 730, "declaration": { + "commentStart": 779, "end": 0, "id": { + "commentStart": 779, "end": 0, "name": "cmo", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 785, "end": 0, "raw": "101", "start": 0, @@ -377,14 +434,22 @@ description: Result of parsing gear.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Interpolate points along the involute curve" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 789, "declaration": { + "commentStart": 789, "end": 0, "id": { + "commentStart": 789, "end": 0, "name": "rs", "start": 0, @@ -393,8 +458,10 @@ description: Result of parsing gear.kcl "init": { "arguments": [ { + "commentStart": 798, "end": 0, "endElement": { + "commentStart": 802, "end": 0, "name": "cmo", "start": 0, @@ -404,6 +471,7 @@ description: Result of parsing gear.kcl "endInclusive": true, "start": 0, "startElement": { + "commentStart": 799, "end": 0, "raw": "0", "start": 0, @@ -422,10 +490,13 @@ description: Result of parsing gear.kcl "body": [ { "argument": { + "commentStart": 826, "end": 0, "left": { + "commentStart": 826, "end": 0, "left": { + "commentStart": 826, "end": 0, "name": "baseDiameter", "start": 0, @@ -434,6 +505,7 @@ description: Result of parsing gear.kcl }, "operator": "/", "right": { + "commentStart": 841, "end": 0, "raw": "2", "start": 0, @@ -450,12 +522,16 @@ description: Result of parsing gear.kcl }, "operator": "+", "right": { + "commentStart": 845, "end": 0, "left": { + "commentStart": 845, "end": 0, "left": { + "commentStart": 845, "end": 0, "left": { + "commentStart": 845, "end": 0, "name": "i", "start": 0, @@ -464,6 +540,7 @@ description: Result of parsing gear.kcl }, "operator": "/", "right": { + "commentStart": 849, "end": 0, "name": "cmo", "start": 0, @@ -476,8 +553,10 @@ description: Result of parsing gear.kcl }, "operator": "*", "right": { + "commentStart": 856, "end": 0, "left": { + "commentStart": 856, "end": 0, "name": "tipDiameter", "start": 0, @@ -486,6 +565,7 @@ description: Result of parsing gear.kcl }, "operator": "-", "right": { + "commentStart": 870, "end": 0, "name": "baseDiameter", "start": 0, @@ -502,6 +582,7 @@ description: Result of parsing gear.kcl }, "operator": "/", "right": { + "commentStart": 886, "end": 0, "raw": "2", "start": 0, @@ -520,20 +601,24 @@ description: Result of parsing gear.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 819, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 815, "end": 0, "start": 0 }, + "commentStart": 811, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 812, "end": 0, "name": "i", "start": 0, @@ -547,11 +632,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 794, "end": 0, "name": "map", "start": 0, "type": "Identifier" }, + "commentStart": 794, "end": 0, "start": 0, "type": "CallExpression", @@ -567,9 +654,12 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 890, "declaration": { + "commentStart": 930, "end": 0, "id": { + "commentStart": 930, "end": 0, "name": "angles", "start": 0, @@ -578,6 +668,7 @@ description: Result of parsing gear.kcl "init": { "arguments": [ { + "commentStart": 943, "end": 0, "name": "rs", "start": 0, @@ -593,10 +684,13 @@ description: Result of parsing gear.kcl { "arguments": [ { + "commentStart": 982, "end": 0, "left": { + "commentStart": 982, "end": 0, "left": { + "commentStart": 982, "end": 0, "name": "baseDiameter", "start": 0, @@ -605,6 +699,7 @@ description: Result of parsing gear.kcl }, "operator": "/", "right": { + "commentStart": 997, "end": 0, "raw": "2", "start": 0, @@ -621,6 +716,7 @@ description: Result of parsing gear.kcl }, "operator": "/", "right": { + "commentStart": 1001, "end": 0, "name": "r", "start": 0, @@ -633,11 +729,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 977, "end": 0, "name": "acos", "start": 0, "type": "Identifier" }, + "commentStart": 977, "end": 0, "start": 0, "type": "CallExpression", @@ -645,30 +743,36 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 965, "end": 0, "name": "toDegrees", "start": 0, "type": "Identifier" }, + "commentStart": 965, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 958, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 954, "end": 0, "start": 0 }, + "commentStart": 950, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 951, "end": 0, "name": "r", "start": 0, @@ -682,11 +786,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 939, "end": 0, "name": "map", "start": 0, "type": "Identifier" }, + "commentStart": 939, "end": 0, "start": 0, "type": "CallExpression", @@ -697,14 +803,22 @@ description: Result of parsing gear.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Calculate operating pressure angle" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1007, "declaration": { + "commentStart": 1044, "end": 0, "id": { + "commentStart": 1044, "end": 0, "name": "invas", "start": 0, @@ -713,6 +827,7 @@ description: Result of parsing gear.kcl "init": { "arguments": [ { + "commentStart": 1056, "end": 0, "name": "angles", "start": 0, @@ -724,12 +839,14 @@ description: Result of parsing gear.kcl "body": [ { "argument": { + "commentStart": 1082, "end": 0, "left": { "arguments": [ { "arguments": [ { + "commentStart": 1096, "end": 0, "name": "a", "start": 0, @@ -738,11 +855,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1086, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 1086, "end": 0, "start": 0, "type": "CallExpression", @@ -750,11 +869,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1082, "end": 0, "name": "tan", "start": 0, "type": "Identifier" }, + "commentStart": 1082, "end": 0, "start": 0, "type": "CallExpression", @@ -764,6 +885,7 @@ description: Result of parsing gear.kcl "right": { "arguments": [ { + "commentStart": 1112, "end": 0, "name": "a", "start": 0, @@ -772,11 +894,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1102, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 1102, "end": 0, "start": 0, "type": "CallExpression", @@ -786,20 +910,24 @@ description: Result of parsing gear.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1075, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 1071, "end": 0, "start": 0 }, + "commentStart": 1067, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 1068, "end": 0, "name": "a", "start": 0, @@ -813,11 +941,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1052, "end": 0, "name": "map", "start": 0, "type": "Identifier" }, + "commentStart": 1052, "end": 0, "start": 0, "type": "CallExpression", @@ -828,14 +958,22 @@ description: Result of parsing gear.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Calculate the involute function" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1117, "declaration": { + "commentStart": 1145, "end": 0, "id": { + "commentStart": 1145, "end": 0, "name": "xs", "start": 0, @@ -844,8 +982,10 @@ description: Result of parsing gear.kcl "init": { "arguments": [ { + "commentStart": 1154, "end": 0, "endElement": { + "commentStart": 1158, "end": 0, "name": "cmo", "start": 0, @@ -855,6 +995,7 @@ description: Result of parsing gear.kcl "endInclusive": true, "start": 0, "startElement": { + "commentStart": 1155, "end": 0, "raw": "0", "start": 0, @@ -873,11 +1014,14 @@ description: Result of parsing gear.kcl "body": [ { "argument": { + "commentStart": 1182, "end": 0, "left": { + "commentStart": 1182, "computed": true, "end": 0, "object": { + "commentStart": 1182, "end": 0, "name": "rs", "start": 0, @@ -885,6 +1029,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, "property": { + "commentStart": 1185, "end": 0, "name": "i", "start": 0, @@ -899,9 +1044,11 @@ description: Result of parsing gear.kcl "right": { "arguments": [ { + "commentStart": 1194, "computed": true, "end": 0, "object": { + "commentStart": 1194, "end": 0, "name": "invas", "start": 0, @@ -909,6 +1056,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, "property": { + "commentStart": 1200, "end": 0, "name": "i", "start": 0, @@ -921,11 +1069,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1190, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 1190, "end": 0, "start": 0, "type": "CallExpression", @@ -935,20 +1085,24 @@ description: Result of parsing gear.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1175, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 1171, "end": 0, "start": 0 }, + "commentStart": 1167, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 1168, "end": 0, "name": "i", "start": 0, @@ -962,11 +1116,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1150, "end": 0, "name": "map", "start": 0, "type": "Identifier" }, + "commentStart": 1150, "end": 0, "start": 0, "type": "CallExpression", @@ -977,14 +1133,22 @@ description: Result of parsing gear.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Map the involute curve" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1206, "declaration": { + "commentStart": 1208, "end": 0, "id": { + "commentStart": 1208, "end": 0, "name": "ys", "start": 0, @@ -993,8 +1157,10 @@ description: Result of parsing gear.kcl "init": { "arguments": [ { + "commentStart": 1217, "end": 0, "endElement": { + "commentStart": 1221, "end": 0, "name": "cmo", "start": 0, @@ -1004,6 +1170,7 @@ description: Result of parsing gear.kcl "endInclusive": true, "start": 0, "startElement": { + "commentStart": 1218, "end": 0, "raw": "0", "start": 0, @@ -1022,11 +1189,14 @@ description: Result of parsing gear.kcl "body": [ { "argument": { + "commentStart": 1245, "end": 0, "left": { + "commentStart": 1245, "computed": true, "end": 0, "object": { + "commentStart": 1245, "end": 0, "name": "rs", "start": 0, @@ -1034,6 +1204,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, "property": { + "commentStart": 1248, "end": 0, "name": "i", "start": 0, @@ -1048,9 +1219,11 @@ description: Result of parsing gear.kcl "right": { "arguments": [ { + "commentStart": 1257, "computed": true, "end": 0, "object": { + "commentStart": 1257, "end": 0, "name": "invas", "start": 0, @@ -1058,6 +1231,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, "property": { + "commentStart": 1263, "end": 0, "name": "i", "start": 0, @@ -1070,11 +1244,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1253, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, + "commentStart": 1253, "end": 0, "start": 0, "type": "CallExpression", @@ -1084,20 +1260,24 @@ description: Result of parsing gear.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1238, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 1234, "end": 0, "start": 0 }, + "commentStart": 1230, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 1231, "end": 0, "name": "i", "start": 0, @@ -1111,11 +1291,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1213, "end": 0, "name": "map", "start": 0, "type": "Identifier" }, + "commentStart": 1213, "end": 0, "start": 0, "type": "CallExpression", @@ -1131,9 +1313,12 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 1269, "declaration": { + "commentStart": 1296, "end": 0, "id": { + "commentStart": 1296, "end": 0, "name": "body", "start": 0, @@ -1144,6 +1329,7 @@ description: Result of parsing gear.kcl { "arguments": [ { + "commentStart": 1317, "end": 0, "raw": "'XY'", "start": 0, @@ -1153,11 +1339,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1303, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1303, "end": 0, "start": 0, "type": "CallExpression", @@ -1168,14 +1356,17 @@ description: Result of parsing gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 1343, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1352, "elements": [ { + "commentStart": 1353, "end": 0, "raw": "0", "start": 0, @@ -1187,6 +1378,7 @@ description: Result of parsing gear.kcl } }, { + "commentStart": 1356, "end": 0, "raw": "0", "start": 0, @@ -1207,14 +1399,17 @@ description: Result of parsing gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 1367, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1376, "end": 0, "left": { + "commentStart": 1376, "end": 0, "name": "baseDiameter", "start": 0, @@ -1223,6 +1418,7 @@ description: Result of parsing gear.kcl }, "operator": "/", "right": { + "commentStart": 1391, "end": 0, "raw": "2", "start": 0, @@ -1240,11 +1436,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1328, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1328, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1256,12 +1454,14 @@ description: Result of parsing gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 1413, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1422, "end": 0, "name": "gearHeight", "start": 0, @@ -1271,11 +1471,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1405, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1405, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1283,6 +1485,7 @@ description: Result of parsing gear.kcl "unlabeled": null } ], + "commentStart": 1303, "end": 0, "start": 0, "type": "PipeExpression", @@ -1293,24 +1496,35 @@ description: Result of parsing gear.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Extrude the gear body" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1433, "declaration": { + "commentStart": 1435, "end": 0, "id": { + "commentStart": 1435, "end": 0, "name": "toothAngle", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1448, "end": 0, "left": { + "commentStart": 1448, "end": 0, "left": { + "commentStart": 1448, "end": 0, "raw": "360", "start": 0, @@ -1323,6 +1537,7 @@ description: Result of parsing gear.kcl }, "operator": "/", "right": { + "commentStart": 1454, "end": 0, "name": "nTeeth", "start": 0, @@ -1335,6 +1550,7 @@ description: Result of parsing gear.kcl }, "operator": "/", "right": { + "commentStart": 1463, "end": 0, "raw": "1.5", "start": 0, @@ -1359,9 +1575,12 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 1466, "declaration": { + "commentStart": 1498, "end": 0, "id": { + "commentStart": 1498, "end": 0, "name": "leftInvolute", "start": 0, @@ -1371,17 +1590,22 @@ description: Result of parsing gear.kcl "body": { "body": [ { + "commentStart": 1522, "declaration": { + "commentStart": 1522, "end": 0, "id": { + "commentStart": 1522, "end": 0, "name": "j", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1526, "end": 0, "left": { + "commentStart": 1526, "end": 0, "raw": "100", "start": 0, @@ -1394,6 +1618,7 @@ description: Result of parsing gear.kcl }, "operator": "-", "right": { + "commentStart": 1532, "end": 0, "name": "i", "start": 0, @@ -1419,17 +1644,21 @@ description: Result of parsing gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 1573, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1587, "elements": [ { + "commentStart": 1588, "computed": true, "end": 0, "object": { + "commentStart": 1588, "end": 0, "name": "xs", "start": 0, @@ -1437,6 +1666,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, "property": { + "commentStart": 1591, "end": 0, "name": "j", "start": 0, @@ -1448,9 +1678,11 @@ description: Result of parsing gear.kcl "type": "MemberExpression" }, { + "commentStart": 1595, "computed": true, "end": 0, "object": { + "commentStart": 1595, "end": 0, "name": "ys", "start": 0, @@ -1458,6 +1690,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, "property": { + "commentStart": 1598, "end": 0, "name": "j", "start": 0, @@ -1477,16 +1710,19 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1564, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1564, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1569, "end": 0, "name": "sg", "start": 0, @@ -1494,17 +1730,20 @@ description: Result of parsing gear.kcl "type": "Identifier" } }, + "commentStart": 1533, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 1518, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 1533, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1520,11 +1759,13 @@ description: Result of parsing gear.kcl }, "start": 0 }, + "commentStart": 1510, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 1511, "end": 0, "name": "i", "start": 0, @@ -1534,6 +1775,7 @@ description: Result of parsing gear.kcl { "type": "Parameter", "identifier": { + "commentStart": 1514, "end": 0, "name": "sg", "start": 0, @@ -1550,14 +1792,22 @@ description: Result of parsing gear.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// Plot the involute curve" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1604, "declaration": { + "commentStart": 1609, "end": 0, "id": { + "commentStart": 1609, "end": 0, "name": "rightInvolute", "start": 0, @@ -1567,20 +1817,26 @@ description: Result of parsing gear.kcl "body": { "body": [ { + "commentStart": 1634, "declaration": { + "commentStart": 1634, "end": 0, "id": { + "commentStart": 1634, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1638, "end": 0, "left": { + "commentStart": 1638, "computed": true, "end": 0, "object": { + "commentStart": 1638, "end": 0, "name": "rs", "start": 0, @@ -1588,6 +1844,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, "property": { + "commentStart": 1641, "end": 0, "name": "i", "start": 0, @@ -1604,15 +1861,18 @@ description: Result of parsing gear.kcl { "arguments": [ { + "commentStart": 1660, "end": 0, "left": { "argument": { + "commentStart": 1661, "end": 0, "name": "toothAngle", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1660, "end": 0, "operator": "-", "start": 0, @@ -1625,11 +1885,14 @@ description: Result of parsing gear.kcl { "arguments": [ { + "commentStart": 1689, "end": 0, "left": { + "commentStart": 1689, "computed": true, "end": 0, "object": { + "commentStart": 1689, "end": 0, "name": "ys", "start": 0, @@ -1637,6 +1900,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, "property": { + "commentStart": 1692, "end": 0, "name": "i", "start": 0, @@ -1649,9 +1913,11 @@ description: Result of parsing gear.kcl }, "operator": "/", "right": { + "commentStart": 1697, "computed": true, "end": 0, "object": { + "commentStart": 1697, "end": 0, "name": "xs", "start": 0, @@ -1659,6 +1925,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, "property": { + "commentStart": 1700, "end": 0, "name": "i", "start": 0, @@ -1675,11 +1942,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1684, "end": 0, "name": "atan", "start": 0, "type": "Identifier" }, + "commentStart": 1684, "end": 0, "start": 0, "type": "CallExpression", @@ -1687,11 +1956,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1674, "end": 0, "name": "toDegrees", "start": 0, "type": "Identifier" }, + "commentStart": 1674, "end": 0, "start": 0, "type": "CallExpression", @@ -1703,11 +1974,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1650, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 1650, "end": 0, "start": 0, "type": "CallExpression", @@ -1715,11 +1988,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1646, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 1646, "end": 0, "start": 0, "type": "CallExpression", @@ -1739,21 +2014,27 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 1709, "declaration": { + "commentStart": 1709, "end": 0, "id": { + "commentStart": 1709, "end": 0, "name": "y", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1713, "end": 0, "left": { "argument": { + "commentStart": 1714, "computed": true, "end": 0, "object": { + "commentStart": 1714, "end": 0, "name": "rs", "start": 0, @@ -1761,6 +2042,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, "property": { + "commentStart": 1717, "end": 0, "name": "i", "start": 0, @@ -1771,6 +2053,7 @@ description: Result of parsing gear.kcl "type": "MemberExpression", "type": "MemberExpression" }, + "commentStart": 1713, "end": 0, "operator": "-", "start": 0, @@ -1783,15 +2066,18 @@ description: Result of parsing gear.kcl { "arguments": [ { + "commentStart": 1736, "end": 0, "left": { "argument": { + "commentStart": 1737, "end": 0, "name": "toothAngle", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1736, "end": 0, "operator": "-", "start": 0, @@ -1804,11 +2090,14 @@ description: Result of parsing gear.kcl { "arguments": [ { + "commentStart": 1765, "end": 0, "left": { + "commentStart": 1765, "computed": true, "end": 0, "object": { + "commentStart": 1765, "end": 0, "name": "ys", "start": 0, @@ -1816,6 +2105,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, "property": { + "commentStart": 1768, "end": 0, "name": "i", "start": 0, @@ -1828,9 +2118,11 @@ description: Result of parsing gear.kcl }, "operator": "/", "right": { + "commentStart": 1773, "computed": true, "end": 0, "object": { + "commentStart": 1773, "end": 0, "name": "xs", "start": 0, @@ -1838,6 +2130,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, "property": { + "commentStart": 1776, "end": 0, "name": "i", "start": 0, @@ -1854,11 +2147,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1760, "end": 0, "name": "atan", "start": 0, "type": "Identifier" }, + "commentStart": 1760, "end": 0, "start": 0, "type": "CallExpression", @@ -1866,11 +2161,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1750, "end": 0, "name": "toDegrees", "start": 0, "type": "Identifier" }, + "commentStart": 1750, "end": 0, "start": 0, "type": "CallExpression", @@ -1882,11 +2179,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1726, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 1726, "end": 0, "start": 0, "type": "CallExpression", @@ -1894,11 +2193,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1722, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, + "commentStart": 1722, "end": 0, "start": 0, "type": "CallExpression", @@ -1923,14 +2224,17 @@ description: Result of parsing gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 1801, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1815, "elements": [ { + "commentStart": 1816, "end": 0, "name": "x", "start": 0, @@ -1938,6 +2242,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, { + "commentStart": 1819, "end": 0, "name": "y", "start": 0, @@ -1953,16 +2258,19 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1792, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1792, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1797, "end": 0, "name": "sg", "start": 0, @@ -1970,20 +2278,24 @@ description: Result of parsing gear.kcl "type": "Identifier" } }, + "commentStart": 1785, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 1630, "end": 0, "start": 0 }, + "commentStart": 1622, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 1623, "end": 0, "name": "i", "start": 0, @@ -1993,6 +2305,7 @@ description: Result of parsing gear.kcl { "type": "Parameter", "identifier": { + "commentStart": 1626, "end": 0, "name": "sg", "start": 0, @@ -2014,9 +2327,12 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 1824, "declaration": { + "commentStart": 1845, "end": 0, "id": { + "commentStart": 1845, "end": 0, "name": "start", "start": 0, @@ -2027,6 +2343,7 @@ description: Result of parsing gear.kcl { "arguments": [ { + "commentStart": 1867, "end": 0, "raw": "'XY'", "start": 0, @@ -2036,11 +2353,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1853, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1853, "end": 0, "start": 0, "type": "CallExpression", @@ -2049,11 +2368,14 @@ description: Result of parsing gear.kcl { "arguments": [ { + "commentStart": 1893, "elements": [ { + "commentStart": 1894, "computed": false, "end": 0, "object": { + "commentStart": 1894, "end": 0, "name": "xs", "start": 0, @@ -2061,6 +2383,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, "property": { + "commentStart": 1897, "end": 0, "raw": "101", "start": 0, @@ -2076,9 +2399,11 @@ description: Result of parsing gear.kcl "type": "MemberExpression" }, { + "commentStart": 1903, "computed": false, "end": 0, "object": { + "commentStart": 1903, "end": 0, "name": "ys", "start": 0, @@ -2086,6 +2411,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, "property": { + "commentStart": 1906, "end": 0, "raw": "101", "start": 0, @@ -2107,6 +2433,7 @@ description: Result of parsing gear.kcl "type": "ArrayExpression" }, { + "commentStart": 1913, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2114,17 +2441,20 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1878, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1878, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1853, "end": 0, "start": 0, "type": "PipeExpression", @@ -2135,14 +2465,22 @@ description: Result of parsing gear.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Draw gear teeth" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1916, "declaration": { + "commentStart": 1916, "end": 0, "id": { + "commentStart": 1916, "end": 0, "name": "teeth", "start": 0, @@ -2153,8 +2491,10 @@ description: Result of parsing gear.kcl { "arguments": [ { + "commentStart": 1931, "end": 0, "endElement": { + "commentStart": 1935, "end": 0, "raw": "100", "start": 0, @@ -2168,6 +2508,7 @@ description: Result of parsing gear.kcl "endInclusive": true, "start": 0, "startElement": { + "commentStart": 1932, "end": 0, "raw": "0", "start": 0, @@ -2182,6 +2523,7 @@ description: Result of parsing gear.kcl "type": "ArrayRangeExpression" }, { + "commentStart": 1941, "end": 0, "name": "start", "start": 0, @@ -2189,6 +2531,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, { + "commentStart": 1948, "end": 0, "name": "leftInvolute", "start": 0, @@ -2197,11 +2540,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1924, "end": 0, "name": "reduce", "start": 0, "type": "Identifier" }, + "commentStart": 1924, "end": 0, "start": 0, "type": "CallExpression", @@ -2210,11 +2555,14 @@ description: Result of parsing gear.kcl { "arguments": [ { + "commentStart": 1971, "end": 0, "properties": [ { + "commentStart": 1980, "end": 0, "key": { + "commentStart": 1980, "end": 0, "name": "angleStart", "start": 0, @@ -2223,6 +2571,7 @@ description: Result of parsing gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1993, "end": 0, "raw": "0", "start": 0, @@ -2235,8 +2584,10 @@ description: Result of parsing gear.kcl } }, { + "commentStart": 2003, "end": 0, "key": { + "commentStart": 2003, "end": 0, "name": "angleEnd", "start": 0, @@ -2245,6 +2596,7 @@ description: Result of parsing gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2014, "end": 0, "name": "toothAngle", "start": 0, @@ -2253,8 +2605,10 @@ description: Result of parsing gear.kcl } }, { + "commentStart": 2033, "end": 0, "key": { + "commentStart": 2033, "end": 0, "name": "radius", "start": 0, @@ -2263,8 +2617,10 @@ description: Result of parsing gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2042, "end": 0, "left": { + "commentStart": 2042, "end": 0, "name": "baseDiameter", "start": 0, @@ -2273,6 +2629,7 @@ description: Result of parsing gear.kcl }, "operator": "/", "right": { + "commentStart": 2057, "end": 0, "raw": "2", "start": 0, @@ -2294,6 +2651,7 @@ description: Result of parsing gear.kcl "type": "ObjectExpression" }, { + "commentStart": 2067, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2301,11 +2659,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 1967, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 1967, "end": 0, "start": 0, "type": "CallExpression", @@ -2314,8 +2674,10 @@ description: Result of parsing gear.kcl { "arguments": [ { + "commentStart": 2082, "end": 0, "endElement": { + "commentStart": 2086, "end": 0, "raw": "101", "start": 0, @@ -2329,6 +2691,7 @@ description: Result of parsing gear.kcl "endInclusive": true, "start": 0, "startElement": { + "commentStart": 2083, "end": 0, "raw": "1", "start": 0, @@ -2343,12 +2706,14 @@ description: Result of parsing gear.kcl "type": "ArrayRangeExpression" }, { + "commentStart": 2092, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 2095, "end": 0, "name": "rightInvolute", "start": 0, @@ -2357,11 +2722,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 2075, "end": 0, "name": "reduce", "start": 0, "type": "Identifier" }, + "commentStart": 2075, "end": 0, "start": 0, "type": "CallExpression", @@ -2370,11 +2737,13 @@ description: Result of parsing gear.kcl { "arguments": [], "callee": { + "commentStart": 2115, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2115, "end": 0, "start": 0, "type": "CallExpression", @@ -2385,12 +2754,14 @@ description: Result of parsing gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 2136, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2145, "end": 0, "name": "gearHeight", "start": 0, @@ -2400,11 +2771,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 2128, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2128, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2416,14 +2789,17 @@ description: Result of parsing gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 2188, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2195, "elements": [ { + "commentStart": 2196, "end": 0, "raw": "0", "start": 0, @@ -2435,6 +2811,7 @@ description: Result of parsing gear.kcl } }, { + "commentStart": 2199, "end": 0, "raw": "0", "start": 0, @@ -2446,6 +2823,7 @@ description: Result of parsing gear.kcl } }, { + "commentStart": 2202, "end": 0, "raw": "1", "start": 0, @@ -2466,14 +2844,17 @@ description: Result of parsing gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 2213, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2222, "elements": [ { + "commentStart": 2223, "end": 0, "raw": "0", "start": 0, @@ -2485,6 +2866,7 @@ description: Result of parsing gear.kcl } }, { + "commentStart": 2226, "end": 0, "raw": "0", "start": 0, @@ -2496,6 +2878,7 @@ description: Result of parsing gear.kcl } }, { + "commentStart": 2229, "end": 0, "raw": "0", "start": 0, @@ -2516,12 +2899,14 @@ description: Result of parsing gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 2240, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2252, "end": 0, "name": "nTeeth", "start": 0, @@ -2532,12 +2917,14 @@ description: Result of parsing gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 2267, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2280, "end": 0, "raw": "360", "start": 0, @@ -2552,12 +2939,14 @@ description: Result of parsing gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 2292, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2311, "end": 0, "raw": "true", "start": 0, @@ -2568,11 +2957,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 2162, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 2162, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2580,11 +2971,13 @@ description: Result of parsing gear.kcl "unlabeled": null } ], + "commentStart": 1924, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "5": [ { + "commentStart": 2322, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2612,15 +3005,19 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 2380, "declaration": { + "commentStart": 2380, "end": 0, "id": { + "commentStart": 2380, "end": 0, "name": "keywayWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 2394, "end": 0, "raw": "0.250", "start": 0, @@ -2641,17 +3038,22 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 2400, "declaration": { + "commentStart": 2400, "end": 0, "id": { + "commentStart": 2400, "end": 0, "name": "keywayDepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 2414, "end": 0, "left": { + "commentStart": 2414, "end": 0, "name": "keywayWidth", "start": 0, @@ -2660,6 +3062,7 @@ description: Result of parsing gear.kcl }, "operator": "/", "right": { + "commentStart": 2428, "end": 0, "raw": "2", "start": 0, @@ -2684,15 +3087,19 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 2430, "declaration": { + "commentStart": 2430, "end": 0, "id": { + "commentStart": 2430, "end": 0, "name": "holeDiam", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 2441, "end": 0, "raw": "2", "start": 0, @@ -2713,15 +3120,19 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 2443, "declaration": { + "commentStart": 2443, "end": 0, "id": { + "commentStart": 2443, "end": 0, "name": "holeRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 2456, "end": 0, "raw": "1", "start": 0, @@ -2742,9 +3153,12 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 2458, "declaration": { + "commentStart": 2458, "end": 0, "id": { + "commentStart": 2458, "end": 0, "name": "startAngle", "start": 0, @@ -2753,10 +3167,13 @@ description: Result of parsing gear.kcl "init": { "arguments": [ { + "commentStart": 2476, "end": 0, "left": { + "commentStart": 2476, "end": 0, "left": { + "commentStart": 2476, "end": 0, "name": "keywayWidth", "start": 0, @@ -2765,6 +3182,7 @@ description: Result of parsing gear.kcl }, "operator": "/", "right": { + "commentStart": 2490, "end": 0, "raw": "2", "start": 0, @@ -2781,6 +3199,7 @@ description: Result of parsing gear.kcl }, "operator": "/", "right": { + "commentStart": 2494, "end": 0, "name": "holeRadius", "start": 0, @@ -2793,11 +3212,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 2471, "end": 0, "name": "asin", "start": 0, "type": "Identifier" }, + "commentStart": 2471, "end": 0, "start": 0, "type": "CallExpression", @@ -2813,9 +3234,12 @@ description: Result of parsing gear.kcl "type": "VariableDeclaration" }, { + "commentStart": 2505, "declaration": { + "commentStart": 2556, "end": 0, "id": { + "commentStart": 2556, "end": 0, "name": "keyWay", "start": 0, @@ -2826,6 +3250,7 @@ description: Result of parsing gear.kcl { "arguments": [ { + "commentStart": 2579, "end": 0, "name": "body", "start": 0, @@ -2833,6 +3258,7 @@ description: Result of parsing gear.kcl "type": "Identifier" }, { + "commentStart": 2585, "end": 0, "raw": "'END'", "start": 0, @@ -2842,11 +3268,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 2565, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2565, "end": 0, "start": 0, "type": "CallExpression", @@ -2855,10 +3283,13 @@ description: Result of parsing gear.kcl { "arguments": [ { + "commentStart": 2612, "elements": [ { + "commentStart": 2621, "end": 0, "left": { + "commentStart": 2621, "end": 0, "name": "holeRadius", "start": 0, @@ -2869,6 +3300,7 @@ description: Result of parsing gear.kcl "right": { "arguments": [ { + "commentStart": 2638, "end": 0, "name": "startAngle", "start": 0, @@ -2877,11 +3309,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 2634, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 2634, "end": 0, "start": 0, "type": "CallExpression", @@ -2892,8 +3326,10 @@ description: Result of parsing gear.kcl "type": "BinaryExpression" }, { + "commentStart": 2658, "end": 0, "left": { + "commentStart": 2658, "end": 0, "name": "holeRadius", "start": 0, @@ -2904,6 +3340,7 @@ description: Result of parsing gear.kcl "right": { "arguments": [ { + "commentStart": 2675, "end": 0, "name": "startAngle", "start": 0, @@ -2912,11 +3349,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 2671, "end": 0, "name": "sin", "start": 0, "type": "Identifier" }, + "commentStart": 2671, "end": 0, "start": 0, "type": "CallExpression", @@ -2933,6 +3372,7 @@ description: Result of parsing gear.kcl "type": "ArrayExpression" }, { + "commentStart": 2695, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2940,11 +3380,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 2597, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2597, "end": 0, "start": 0, "type": "CallExpression", @@ -2955,12 +3397,14 @@ description: Result of parsing gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 2709, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2718, "end": 0, "name": "keywayDepth", "start": 0, @@ -2970,11 +3414,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 2703, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2703, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2986,6 +3432,7 @@ description: Result of parsing gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 2742, "end": 0, "name": "length", "start": 0, @@ -2993,12 +3440,14 @@ description: Result of parsing gear.kcl }, "arg": { "argument": { + "commentStart": 2752, "end": 0, "name": "keywayWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2751, "end": 0, "operator": "-", "start": 0, @@ -3008,11 +3457,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 2736, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 2736, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3024,6 +3475,7 @@ description: Result of parsing gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 2776, "end": 0, "name": "length", "start": 0, @@ -3031,12 +3483,14 @@ description: Result of parsing gear.kcl }, "arg": { "argument": { + "commentStart": 2786, "end": 0, "name": "keywayDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2785, "end": 0, "operator": "-", "start": 0, @@ -3046,11 +3500,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 2770, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2770, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3060,11 +3516,14 @@ description: Result of parsing gear.kcl { "arguments": [ { + "commentStart": 2808, "end": 0, "properties": [ { + "commentStart": 2817, "end": 0, "key": { + "commentStart": 2817, "end": 0, "name": "angleEnd", "start": 0, @@ -3073,6 +3532,7 @@ description: Result of parsing gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2828, "end": 0, "raw": "180", "start": 0, @@ -3085,8 +3545,10 @@ description: Result of parsing gear.kcl } }, { + "commentStart": 2840, "end": 0, "key": { + "commentStart": 2840, "end": 0, "name": "angleStart", "start": 0, @@ -3095,15 +3557,20 @@ description: Result of parsing gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2853, "end": 0, "left": { + "commentStart": 2853, "end": 0, "left": { + "commentStart": 2853, "end": 0, "left": { + "commentStart": 2853, "end": 0, "left": { "argument": { + "commentStart": 2854, "end": 0, "raw": "1", "start": 0, @@ -3114,6 +3581,7 @@ description: Result of parsing gear.kcl "suffix": "None" } }, + "commentStart": 2853, "end": 0, "operator": "-", "start": 0, @@ -3122,6 +3590,7 @@ description: Result of parsing gear.kcl }, "operator": "*", "right": { + "commentStart": 2858, "end": 0, "raw": "180", "start": 0, @@ -3138,6 +3607,7 @@ description: Result of parsing gear.kcl }, "operator": "/", "right": { + "commentStart": 2864, "end": 0, "name": "PI", "start": 0, @@ -3150,6 +3620,7 @@ description: Result of parsing gear.kcl }, "operator": "*", "right": { + "commentStart": 2869, "end": 0, "name": "startAngle", "start": 0, @@ -3162,6 +3633,7 @@ description: Result of parsing gear.kcl }, "operator": "+", "right": { + "commentStart": 2882, "end": 0, "raw": "360", "start": 0, @@ -3178,8 +3650,10 @@ description: Result of parsing gear.kcl } }, { + "commentStart": 2894, "end": 0, "key": { + "commentStart": 2894, "end": 0, "name": "radius", "start": 0, @@ -3188,6 +3662,7 @@ description: Result of parsing gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2903, "end": 0, "name": "holeRadius", "start": 0, @@ -3201,6 +3676,7 @@ description: Result of parsing gear.kcl "type": "ObjectExpression" }, { + "commentStart": 2922, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3208,11 +3684,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 2804, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 2804, "end": 0, "start": 0, "type": "CallExpression", @@ -3221,11 +3699,14 @@ description: Result of parsing gear.kcl { "arguments": [ { + "commentStart": 2934, "end": 0, "properties": [ { + "commentStart": 2943, "end": 0, "key": { + "commentStart": 2943, "end": 0, "name": "angleEnd", "start": 0, @@ -3234,10 +3715,13 @@ description: Result of parsing gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2954, "end": 0, "left": { + "commentStart": 2954, "end": 0, "left": { + "commentStart": 2954, "end": 0, "raw": "180", "start": 0, @@ -3250,6 +3734,7 @@ description: Result of parsing gear.kcl }, "operator": "/", "right": { + "commentStart": 2960, "end": 0, "name": "PI", "start": 0, @@ -3262,6 +3747,7 @@ description: Result of parsing gear.kcl }, "operator": "*", "right": { + "commentStart": 2965, "end": 0, "name": "startAngle", "start": 0, @@ -3274,8 +3760,10 @@ description: Result of parsing gear.kcl } }, { + "commentStart": 2984, "end": 0, "key": { + "commentStart": 2984, "end": 0, "name": "angleStart", "start": 0, @@ -3284,6 +3772,7 @@ description: Result of parsing gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2997, "end": 0, "raw": "180", "start": 0, @@ -3296,8 +3785,10 @@ description: Result of parsing gear.kcl } }, { + "commentStart": 3009, "end": 0, "key": { + "commentStart": 3009, "end": 0, "name": "radius", "start": 0, @@ -3306,6 +3797,7 @@ description: Result of parsing gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3018, "end": 0, "name": "holeRadius", "start": 0, @@ -3319,6 +3811,7 @@ description: Result of parsing gear.kcl "type": "ObjectExpression" }, { + "commentStart": 3037, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3326,11 +3819,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 2930, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 2930, "end": 0, "start": 0, "type": "CallExpression", @@ -3339,11 +3834,13 @@ description: Result of parsing gear.kcl { "arguments": [], "callee": { + "commentStart": 3045, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 3045, "end": 0, "start": 0, "type": "CallExpression", @@ -3354,6 +3851,7 @@ description: Result of parsing gear.kcl { "type": "LabeledArg", "label": { + "commentStart": 3066, "end": 0, "name": "length", "start": 0, @@ -3361,12 +3859,14 @@ description: Result of parsing gear.kcl }, "arg": { "argument": { + "commentStart": 3076, "end": 0, "name": "gearHeight", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3075, "end": 0, "operator": "-", "start": 0, @@ -3376,11 +3876,13 @@ description: Result of parsing gear.kcl } ], "callee": { + "commentStart": 3058, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 3058, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3388,6 +3890,7 @@ description: Result of parsing gear.kcl "unlabeled": null } ], + "commentStart": 2565, "end": 0, "start": 0, "type": "PipeExpression", @@ -3398,25 +3901,42 @@ description: Result of parsing gear.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Sketch the keyway and center hole and extrude" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 440, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Spur Gear", + "// A rotating machine part having cut teeth or, in the case of a cogwheel, inserted teeth (called cogs), which mesh with another toothed part to transmit torque. Geared devices can change the speed, torque, and direction of a power source. The two elements that define a gear are its circular shape and the teeth that are integrated into its outer edge, which are designed to fit into the teeth of another gear.", + "", + "", + "// Set Units" + ], "properties": [ { + "commentStart": 449, "end": 0, "key": { + "commentStart": 449, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -3425,6 +3945,7 @@ description: Result of parsing gear.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 469, "end": 0, "name": "in", "start": 0, @@ -3439,56 +3960,9 @@ description: Result of parsing gear.kcl ], "nonCodeMeta": { "nonCodeNodes": { - "8": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Interpolate points along the involute curve", - "style": "line" - } - } - ], - "10": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Calculate operating pressure angle", - "style": "line" - } - } - ], - "11": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Calculate the involute function", - "style": "line" - } - } - ], - "12": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Map the involute curve", - "style": "line" - } - } - ], "13": [ { + "commentStart": 1206, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3497,20 +3971,9 @@ description: Result of parsing gear.kcl } } ], - "14": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Extrude the gear body", - "style": "line" - } - } - ], "15": [ { + "commentStart": 1433, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3519,20 +3982,9 @@ description: Result of parsing gear.kcl } } ], - "16": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Plot the involute curve", - "style": "line" - } - } - ], "17": [ { + "commentStart": 1604, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3540,88 +3992,17 @@ description: Result of parsing gear.kcl "type": "newLine" } } - ], - "18": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Draw gear teeth", - "style": "line" - } - } - ], - "25": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Sketch the keyway and center hole and extrude", - "style": "line" - } - } ] }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Spur Gear", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A rotating machine part having cut teeth or, in the case of a cogwheel, inserted teeth (called cogs), which mesh with another toothed part to transmit torque. Geared devices can change the speed, torque, and direction of a power source. The two elements that define a gear are its circular shape and the teeth that are integrated into its outer edge, which are designed to fit into the teeth of another gear.", - "style": "line" - } - }, - { + "commentStart": 472, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set Units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/gridfinity-baseplate-magnets/ast.snap b/rust/kcl-lib/tests/kcl_samples/gridfinity-baseplate-magnets/ast.snap index a2b56312c..8f91af9f7 100644 --- a/rust/kcl-lib/tests/kcl_samples/gridfinity-baseplate-magnets/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/gridfinity-baseplate-magnets/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "Ok": { "body": [ { + "commentStart": 417, "declaration": { + "commentStart": 439, "end": 0, "id": { + "commentStart": 439, "end": 0, "name": "binLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 451, "end": 0, "raw": "42.0", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 456, "declaration": { + "commentStart": 456, "end": 0, "id": { + "commentStart": 456, "end": 0, "name": "cornerRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 471, "end": 0, "raw": "4.0", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "VariableDeclaration" }, { + "commentStart": 475, "declaration": { + "commentStart": 475, "end": 0, "id": { + "commentStart": 475, "end": 0, "name": "firstStep", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 487, "end": 0, "raw": "0.7", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "VariableDeclaration" }, { + "commentStart": 491, "declaration": { + "commentStart": 491, "end": 0, "id": { + "commentStart": 491, "end": 0, "name": "secondStep", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 504, "end": 0, "raw": "1.8", "start": 0, @@ -122,15 +141,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "VariableDeclaration" }, { + "commentStart": 508, "declaration": { + "commentStart": 508, "end": 0, "id": { + "commentStart": 508, "end": 0, "name": "thirdStep", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 520, "end": 0, "raw": "2.15", "start": 0, @@ -151,15 +174,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "VariableDeclaration" }, { + "commentStart": 525, "declaration": { + "commentStart": 525, "end": 0, "id": { + "commentStart": 525, "end": 0, "name": "magOuterDiam", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 540, "end": 0, "raw": "6.5", "start": 0, @@ -180,15 +207,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "VariableDeclaration" }, { + "commentStart": 544, "declaration": { + "commentStart": 544, "end": 0, "id": { + "commentStart": 544, "end": 0, "name": "magOffset", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 556, "end": 0, "raw": "4.8", "start": 0, @@ -209,15 +240,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "VariableDeclaration" }, { + "commentStart": 560, "declaration": { + "commentStart": 560, "end": 0, "id": { + "commentStart": 560, "end": 0, "name": "magDepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 571, "end": 0, "raw": "2.4", "start": 0, @@ -238,15 +273,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "VariableDeclaration" }, { + "commentStart": 574, "declaration": { + "commentStart": 612, "end": 0, "id": { + "commentStart": 612, "end": 0, "name": "countBinWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 628, "end": 0, "raw": "2", "start": 0, @@ -262,20 +301,29 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Number of bins in each direction" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 630, "declaration": { + "commentStart": 630, "end": 0, "id": { + "commentStart": 630, "end": 0, "name": "countBinLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 647, "end": 0, "raw": "3", "start": 0, @@ -296,19 +344,25 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "VariableDeclaration" }, { + "commentStart": 648, "declaration": { + "commentStart": 749, "end": 0, "id": { + "commentStart": 749, "end": 0, "name": "height", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 758, "end": 0, "left": { + "commentStart": 758, "end": 0, "left": { + "commentStart": 758, "end": 0, "name": "firstStep", "start": 0, @@ -317,6 +371,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "+", "right": { + "commentStart": 770, "end": 0, "name": "secondStep", "start": 0, @@ -329,6 +384,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "+", "right": { + "commentStart": 783, "end": 0, "name": "thirdStep", "start": 0, @@ -344,14 +400,22 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// The total height of the baseplate is a summation of the vertical heights of the baseplate steps" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 792, "declaration": { + "commentStart": 864, "end": 0, "id": { + "commentStart": 864, "end": 0, "name": "face", "start": 0, @@ -361,9 +425,12 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "body": { "body": [ { + "commentStart": 880, "declaration": { + "commentStart": 880, "end": 0, "id": { + "commentStart": 880, "end": 0, "name": "faceSketch", "start": 0, @@ -374,6 +441,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 907, "end": 0, "name": "plane", "start": 0, @@ -382,11 +450,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 893, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 893, "end": 0, "start": 0, "type": "CallExpression", @@ -395,8 +465,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 936, "elements": [ { + "commentStart": 937, "end": 0, "raw": "0", "start": 0, @@ -408,6 +480,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 940, "end": 0, "raw": "0", "start": 0, @@ -425,6 +498,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "ArrayExpression" }, { + "commentStart": 944, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -432,11 +506,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 921, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 921, "end": 0, "start": 0, "type": "CallExpression", @@ -447,12 +523,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 960, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 969, "end": 0, "name": "height", "start": 0, @@ -462,11 +540,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 954, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 954, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -476,11 +556,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 1004, "end": 0, "properties": [ { + "commentStart": 1006, "end": 0, "key": { + "commentStart": 1006, "end": 0, "name": "angle", "start": 0, @@ -490,6 +573,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1015, "end": 0, "raw": "45", "start": 0, @@ -500,6 +584,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "suffix": "None" } }, + "commentStart": 1014, "end": 0, "operator": "-", "start": 0, @@ -508,8 +593,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 1019, "end": 0, "key": { + "commentStart": 1019, "end": 0, "name": "length", "start": 0, @@ -518,6 +605,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1028, "end": 0, "name": "thirdStep", "start": 0, @@ -531,6 +619,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "ObjectExpression" }, { + "commentStart": 1041, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -538,11 +627,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 984, "end": 0, "name": "angledLineOfYLength", "start": 0, "type": "Identifier" }, + "commentStart": 984, "end": 0, "start": 0, "type": "CallExpression", @@ -553,6 +644,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 1057, "end": 0, "name": "length", "start": 0, @@ -560,12 +652,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "arg": { "argument": { + "commentStart": 1067, "end": 0, "name": "secondStep", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1066, "end": 0, "operator": "-", "start": 0, @@ -575,11 +669,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 1051, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1051, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -589,11 +685,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 1106, "end": 0, "properties": [ { + "commentStart": 1108, "end": 0, "key": { + "commentStart": 1108, "end": 0, "name": "angle", "start": 0, @@ -603,6 +702,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1117, "end": 0, "raw": "45", "start": 0, @@ -613,6 +713,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "suffix": "None" } }, + "commentStart": 1116, "end": 0, "operator": "-", "start": 0, @@ -621,8 +722,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 1121, "end": 0, "key": { + "commentStart": 1121, "end": 0, "name": "length", "start": 0, @@ -631,6 +734,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1130, "end": 0, "name": "firstStep", "start": 0, @@ -644,6 +748,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "ObjectExpression" }, { + "commentStart": 1143, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -651,11 +756,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 1086, "end": 0, "name": "angledLineOfYLength", "start": 0, "type": "Identifier" }, + "commentStart": 1086, "end": 0, "start": 0, "type": "CallExpression", @@ -664,17 +771,20 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [], "callee": { + "commentStart": 1153, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1153, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 893, "end": 0, "start": 0, "type": "PipeExpression", @@ -691,26 +801,31 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, { "argument": { + "commentStart": 1170, "end": 0, "name": "faceSketch", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1163, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 876, "end": 0, "start": 0 }, + "commentStart": 868, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 869, "end": 0, "name": "plane", "start": 0, @@ -727,14 +842,22 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// define a function which builds the profile of the baseplate bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1182, "declaration": { + "commentStart": 1220, "end": 0, "id": { + "commentStart": 1220, "end": 0, "name": "singleSide", "start": 0, @@ -745,14 +868,17 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 1289, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1298, "end": 0, "left": { + "commentStart": 1298, "end": 0, "name": "binLength", "start": 0, @@ -761,8 +887,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 1311, "end": 0, "left": { + "commentStart": 1311, "end": 0, "name": "cornerRadius", "start": 0, @@ -771,6 +899,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "*", "right": { + "commentStart": 1326, "end": 0, "raw": "2", "start": 0, @@ -792,11 +921,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 1233, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1233, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -808,12 +939,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 1264, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1273, "end": 0, "name": "cornerRadius", "start": 0, @@ -823,16 +956,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 1246, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 1246, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1258, "end": 0, "raw": "\"YZ\"", "start": 0, @@ -843,11 +979,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 1241, "end": 0, "name": "face", "start": 0, "type": "Identifier" }, + "commentStart": 1241, "end": 0, "start": 0, "type": "CallExpression", @@ -859,14 +997,22 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// extrude a single side of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1331, "declaration": { + "commentStart": 1398, "end": 0, "id": { + "commentStart": 1398, "end": 0, "name": "sides", "start": 0, @@ -877,12 +1023,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 1441, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1454, "end": 0, "raw": "360", "start": 0, @@ -897,14 +1045,17 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 1461, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1468, "elements": [ { + "commentStart": 1469, "end": 0, "raw": "0", "start": 0, @@ -916,6 +1067,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 1472, "end": 0, "raw": "0", "start": 0, @@ -927,6 +1079,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 1475, "end": 0, "raw": "1", "start": 0, @@ -947,16 +1100,20 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 1481, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1490, "elements": [ { + "commentStart": 1491, "end": 0, "left": { + "commentStart": 1491, "end": 0, "name": "binLength", "start": 0, @@ -965,6 +1122,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 1503, "end": 0, "raw": "2", "start": 0, @@ -980,8 +1138,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "BinaryExpression" }, { + "commentStart": 1506, "end": 0, "left": { + "commentStart": 1506, "end": 0, "name": "binLength", "start": 0, @@ -990,6 +1150,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 1518, "end": 0, "raw": "2", "start": 0, @@ -1005,6 +1166,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "BinaryExpression" }, { + "commentStart": 1521, "end": 0, "raw": "0", "start": 0, @@ -1025,12 +1187,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 1527, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1539, "end": 0, "raw": "4", "start": 0, @@ -1045,12 +1209,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 1544, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1563, "end": 0, "raw": "true", "start": 0, @@ -1061,16 +1227,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 1406, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 1406, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1427, "end": 0, "name": "singleSide", "start": 0, @@ -1083,25 +1252,36 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create the other sides of the bin by using a circular pattern" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1569, "declaration": { + "commentStart": 1597, "end": 0, "id": { + "commentStart": 1597, "end": 0, "name": "axis000", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1607, "end": 0, "properties": [ { + "commentStart": 1611, "end": 0, "key": { + "commentStart": 1611, "end": 0, "name": "custom", "start": 0, @@ -1110,11 +1290,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1620, "end": 0, "properties": [ { + "commentStart": 1626, "end": 0, "key": { + "commentStart": 1626, "end": 0, "name": "axis", "start": 0, @@ -1123,8 +1306,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1633, "elements": [ { + "commentStart": 1634, "end": 0, "raw": "0.0", "start": 0, @@ -1136,6 +1321,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 1639, "end": 0, "raw": "1.0", "start": 0, @@ -1154,8 +1340,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 1649, "end": 0, "key": { + "commentStart": 1649, "end": 0, "name": "origin", "start": 0, @@ -1164,8 +1352,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1658, "elements": [ { + "commentStart": 1659, "end": 0, "name": "cornerRadius", "start": 0, @@ -1173,6 +1363,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "Identifier" }, { + "commentStart": 1673, "end": 0, "name": "cornerRadius", "start": 0, @@ -1202,14 +1393,22 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// define an axis axis000" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1692, "declaration": { + "commentStart": 1731, "end": 0, "id": { + "commentStart": 1731, "end": 0, "name": "singleCorner", "start": 0, @@ -1220,6 +1419,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 1802, "end": 0, "name": "angle", "start": 0, @@ -1227,6 +1427,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "arg": { "argument": { + "commentStart": 1811, "end": 0, "raw": "90", "start": 0, @@ -1237,6 +1438,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "suffix": "None" } }, + "commentStart": 1810, "end": 0, "operator": "-", "start": 0, @@ -1247,12 +1449,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 1815, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1822, "end": 0, "name": "axis000", "start": 0, @@ -1262,11 +1466,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 1746, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 1746, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1278,12 +1484,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 1777, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1786, "end": 0, "name": "cornerRadius", "start": 0, @@ -1293,16 +1501,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 1759, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 1759, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1771, "end": 0, "raw": "\"YZ\"", "start": 0, @@ -1313,11 +1524,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 1754, "end": 0, "name": "face", "start": 0, "type": "Identifier" }, + "commentStart": 1754, "end": 0, "start": 0, "type": "CallExpression", @@ -1329,14 +1542,22 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a single corner of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1830, "declaration": { + "commentStart": 1865, "end": 0, "id": { + "commentStart": 1865, "end": 0, "name": "corners", "start": 0, @@ -1347,12 +1568,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 1912, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1925, "end": 0, "raw": "360", "start": 0, @@ -1367,14 +1590,17 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 1932, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1939, "elements": [ { + "commentStart": 1940, "end": 0, "raw": "0", "start": 0, @@ -1386,6 +1612,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 1943, "end": 0, "raw": "0", "start": 0, @@ -1397,6 +1624,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 1946, "end": 0, "raw": "1", "start": 0, @@ -1417,16 +1645,20 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 1952, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1961, "elements": [ { + "commentStart": 1962, "end": 0, "left": { + "commentStart": 1962, "end": 0, "name": "binLength", "start": 0, @@ -1435,6 +1667,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 1974, "end": 0, "raw": "2", "start": 0, @@ -1450,8 +1683,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "BinaryExpression" }, { + "commentStart": 1977, "end": 0, "left": { + "commentStart": 1977, "end": 0, "name": "binLength", "start": 0, @@ -1460,6 +1695,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 1989, "end": 0, "raw": "2", "start": 0, @@ -1475,6 +1711,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "BinaryExpression" }, { + "commentStart": 1992, "end": 0, "raw": "0", "start": 0, @@ -1495,12 +1732,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 1998, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2010, "end": 0, "raw": "4", "start": 0, @@ -1515,12 +1754,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 2015, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2034, "end": 0, "raw": "true", "start": 0, @@ -1531,16 +1772,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 1875, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 1875, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1896, "end": 0, "name": "singleCorner", "start": 0, @@ -1553,14 +1797,22 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create the corners of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2040, "declaration": { + "commentStart": 2086, "end": 0, "id": { + "commentStart": 2086, "end": 0, "name": "basePlateSides", "start": 0, @@ -1573,14 +1825,17 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 2141, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2148, "elements": [ { + "commentStart": 2149, "end": 0, "raw": "1.0", "start": 0, @@ -1592,6 +1847,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 2154, "end": 0, "raw": "0.0", "start": 0, @@ -1603,6 +1859,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 2159, "end": 0, "raw": "0.0", "start": 0, @@ -1623,12 +1880,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 2172, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2184, "end": 0, "name": "countBinWidth", "start": 0, @@ -1639,12 +1898,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 2206, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2217, "end": 0, "name": "binLength", "start": 0, @@ -1654,16 +1915,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 2103, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 2103, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2127, "end": 0, "name": "sides", "start": 0, @@ -1676,14 +1940,17 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 2263, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2270, "elements": [ { + "commentStart": 2271, "end": 0, "raw": "0.0", "start": 0, @@ -1695,6 +1962,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 2276, "end": 0, "raw": "1.0", "start": 0, @@ -1706,6 +1974,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 2281, "end": 0, "raw": "0.0", "start": 0, @@ -1726,12 +1995,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 2294, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2306, "end": 0, "name": "countBinLength", "start": 0, @@ -1742,12 +2013,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 2329, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2340, "end": 0, "name": "binLength", "start": 0, @@ -1757,11 +2030,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 2239, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 2239, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1769,11 +2044,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "unlabeled": null } ], + "commentStart": 2103, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 2356, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1796,14 +2073,22 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create the baseplate by patterning sides" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2423, "declaration": { + "commentStart": 2423, "end": 0, "id": { + "commentStart": 2423, "end": 0, "name": "basePlateCorners", "start": 0, @@ -1816,14 +2101,17 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 2482, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2489, "elements": [ { + "commentStart": 2490, "end": 0, "raw": "1.0", "start": 0, @@ -1835,6 +2123,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 2495, "end": 0, "raw": "0.0", "start": 0, @@ -1846,6 +2135,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 2500, "end": 0, "raw": "0.0", "start": 0, @@ -1866,12 +2156,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 2513, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2525, "end": 0, "name": "countBinWidth", "start": 0, @@ -1882,12 +2174,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 2547, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2558, "end": 0, "name": "binLength", "start": 0, @@ -1897,16 +2191,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 2442, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 2442, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2466, "end": 0, "name": "corners", "start": 0, @@ -1919,14 +2216,17 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 2604, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2611, "elements": [ { + "commentStart": 2612, "end": 0, "raw": "0.0", "start": 0, @@ -1938,6 +2238,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 2617, "end": 0, "raw": "1.0", "start": 0, @@ -1949,6 +2250,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 2622, "end": 0, "raw": "0.0", "start": 0, @@ -1969,12 +2271,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 2635, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2647, "end": 0, "name": "countBinLength", "start": 0, @@ -1985,12 +2289,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 2670, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2681, "end": 0, "name": "binLength", "start": 0, @@ -2000,11 +2306,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 2580, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 2580, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2012,11 +2320,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "unlabeled": null } ], + "commentStart": 2442, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 2697, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2044,9 +2354,12 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "VariableDeclaration" }, { + "commentStart": 2750, "declaration": { + "commentStart": 2753, "end": 0, "id": { + "commentStart": 2753, "end": 0, "name": "magnetCenterCutout", "start": 0, @@ -2056,9 +2369,12 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "body": { "body": [ { + "commentStart": 2783, "declaration": { + "commentStart": 2783, "end": 0, "id": { + "commentStart": 2783, "end": 0, "name": "magnetSketch", "start": 0, @@ -2069,6 +2385,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 2812, "end": 0, "name": "plane", "start": 0, @@ -2077,11 +2394,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 2798, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2798, "end": 0, "start": 0, "type": "CallExpression", @@ -2090,10 +2409,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 2841, "elements": [ { + "commentStart": 2852, "end": 0, "left": { + "commentStart": 2852, "end": 0, "name": "firstStep", "start": 0, @@ -2102,6 +2424,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "+", "right": { + "commentStart": 2864, "end": 0, "name": "thirdStep", "start": 0, @@ -2113,8 +2436,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "BinaryExpression" }, { + "commentStart": 2884, "end": 0, "left": { + "commentStart": 2884, "end": 0, "raw": "2", "start": 0, @@ -2127,6 +2452,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "*", "right": { + "commentStart": 2888, "end": 0, "name": "magOuterDiam", "start": 0, @@ -2144,6 +2470,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "ArrayExpression" }, { + "commentStart": 2911, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2151,11 +2478,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 2826, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2826, "end": 0, "start": 0, "type": "CallExpression", @@ -2166,18 +2495,23 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 2927, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2936, "end": 0, "left": { + "commentStart": 2936, "end": 0, "left": { + "commentStart": 2936, "end": 0, "left": { + "commentStart": 2936, "end": 0, "raw": "2", "start": 0, @@ -2190,6 +2524,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "*", "right": { + "commentStart": 2940, "end": 0, "name": "magOuterDiam", "start": 0, @@ -2202,8 +2537,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 2956, "end": 0, "left": { + "commentStart": 2956, "end": 0, "name": "firstStep", "start": 0, @@ -2212,6 +2549,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "+", "right": { + "commentStart": 2968, "end": 0, "name": "thirdStep", "start": 0, @@ -2228,8 +2566,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 2982, "end": 0, "left": { + "commentStart": 2982, "end": 0, "name": "magOuterDiam", "start": 0, @@ -2238,6 +2578,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 2997, "end": 0, "raw": "2", "start": 0, @@ -2259,11 +2600,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 2921, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2921, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2273,11 +2616,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 3012, "end": 0, "properties": [ { + "commentStart": 3023, "end": 0, "key": { + "commentStart": 3023, "end": 0, "name": "angleStart", "start": 0, @@ -2286,6 +2632,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3036, "end": 0, "raw": "90.0", "start": 0, @@ -2298,8 +2645,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 3051, "end": 0, "key": { + "commentStart": 3051, "end": 0, "name": "angleEnd", "start": 0, @@ -2308,6 +2657,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3062, "end": 0, "raw": "0.0", "start": 0, @@ -2320,8 +2670,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 3076, "end": 0, "key": { + "commentStart": 3076, "end": 0, "name": "radius", "start": 0, @@ -2330,8 +2682,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3085, "end": 0, "left": { + "commentStart": 3085, "end": 0, "name": "magOuterDiam", "start": 0, @@ -2340,6 +2694,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 3100, "end": 0, "raw": "2", "start": 0, @@ -2361,6 +2716,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "ObjectExpression" }, { + "commentStart": 3112, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2368,11 +2724,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 3008, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 3008, "end": 0, "start": 0, "type": "CallExpression", @@ -2383,6 +2741,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 3128, "end": 0, "name": "length", "start": 0, @@ -2390,12 +2749,16 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "arg": { "argument": { + "commentStart": 3139, "end": 0, "left": { + "commentStart": 3139, "end": 0, "left": { + "commentStart": 3139, "end": 0, "left": { + "commentStart": 3139, "end": 0, "raw": "2", "start": 0, @@ -2408,6 +2771,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "*", "right": { + "commentStart": 3143, "end": 0, "name": "magOuterDiam", "start": 0, @@ -2420,8 +2784,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 3159, "end": 0, "left": { + "commentStart": 3159, "end": 0, "name": "firstStep", "start": 0, @@ -2430,6 +2796,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "+", "right": { + "commentStart": 3171, "end": 0, "name": "thirdStep", "start": 0, @@ -2446,8 +2813,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 3185, "end": 0, "left": { + "commentStart": 3185, "end": 0, "name": "magOuterDiam", "start": 0, @@ -2456,6 +2825,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 3200, "end": 0, "raw": "2", "start": 0, @@ -2474,6 +2844,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 3137, "end": 0, "operator": "-", "start": 0, @@ -2483,11 +2854,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 3122, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 3122, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2499,14 +2872,17 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 3218, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3227, "end": 0, "left": { + "commentStart": 3227, "end": 0, "name": "binLength", "start": 0, @@ -2515,8 +2891,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 3240, "end": 0, "left": { + "commentStart": 3240, "end": 0, "raw": "4", "start": 0, @@ -2529,6 +2907,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "*", "right": { + "commentStart": 3244, "end": 0, "name": "magOuterDiam", "start": 0, @@ -2546,11 +2925,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 3212, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3212, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2562,18 +2943,23 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 3272, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3281, "end": 0, "left": { + "commentStart": 3281, "end": 0, "left": { + "commentStart": 3281, "end": 0, "left": { + "commentStart": 3281, "end": 0, "raw": "2", "start": 0, @@ -2586,6 +2972,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "*", "right": { + "commentStart": 3285, "end": 0, "name": "magOuterDiam", "start": 0, @@ -2598,8 +2985,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 3301, "end": 0, "left": { + "commentStart": 3301, "end": 0, "name": "firstStep", "start": 0, @@ -2608,6 +2997,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "+", "right": { + "commentStart": 3313, "end": 0, "name": "thirdStep", "start": 0, @@ -2624,8 +3014,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 3327, "end": 0, "left": { + "commentStart": 3327, "end": 0, "name": "magOuterDiam", "start": 0, @@ -2634,6 +3026,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 3342, "end": 0, "raw": "2", "start": 0, @@ -2655,11 +3048,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 3266, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 3266, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2669,11 +3064,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 3357, "end": 0, "properties": [ { + "commentStart": 3368, "end": 0, "key": { + "commentStart": 3368, "end": 0, "name": "angleStart", "start": 0, @@ -2682,6 +3080,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3381, "end": 0, "raw": "180.0", "start": 0, @@ -2694,8 +3093,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 3397, "end": 0, "key": { + "commentStart": 3397, "end": 0, "name": "angleEnd", "start": 0, @@ -2704,6 +3105,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3408, "end": 0, "raw": "90.0", "start": 0, @@ -2716,8 +3118,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 3423, "end": 0, "key": { + "commentStart": 3423, "end": 0, "name": "radius", "start": 0, @@ -2726,8 +3130,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3432, "end": 0, "left": { + "commentStart": 3432, "end": 0, "name": "magOuterDiam", "start": 0, @@ -2736,6 +3142,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 3447, "end": 0, "raw": "2", "start": 0, @@ -2757,6 +3164,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "ObjectExpression" }, { + "commentStart": 3459, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2764,11 +3172,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 3353, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 3353, "end": 0, "start": 0, "type": "CallExpression", @@ -2779,18 +3189,23 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 3475, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3484, "end": 0, "left": { + "commentStart": 3484, "end": 0, "left": { + "commentStart": 3484, "end": 0, "left": { + "commentStart": 3484, "end": 0, "raw": "2", "start": 0, @@ -2803,6 +3218,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "*", "right": { + "commentStart": 3488, "end": 0, "name": "magOuterDiam", "start": 0, @@ -2815,8 +3231,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 3504, "end": 0, "left": { + "commentStart": 3504, "end": 0, "name": "firstStep", "start": 0, @@ -2825,6 +3243,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "+", "right": { + "commentStart": 3516, "end": 0, "name": "thirdStep", "start": 0, @@ -2841,8 +3260,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 3530, "end": 0, "left": { + "commentStart": 3530, "end": 0, "name": "magOuterDiam", "start": 0, @@ -2851,6 +3272,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 3545, "end": 0, "raw": "2", "start": 0, @@ -2872,11 +3294,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 3469, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3469, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2888,14 +3312,17 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 3562, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3571, "end": 0, "left": { + "commentStart": 3571, "end": 0, "name": "binLength", "start": 0, @@ -2904,8 +3331,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 3584, "end": 0, "left": { + "commentStart": 3584, "end": 0, "raw": "4", "start": 0, @@ -2918,6 +3347,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "*", "right": { + "commentStart": 3588, "end": 0, "name": "magOuterDiam", "start": 0, @@ -2935,11 +3365,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 3556, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 3556, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2951,6 +3383,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 3616, "end": 0, "name": "length", "start": 0, @@ -2958,12 +3391,16 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "arg": { "argument": { + "commentStart": 3627, "end": 0, "left": { + "commentStart": 3627, "end": 0, "left": { + "commentStart": 3627, "end": 0, "left": { + "commentStart": 3627, "end": 0, "raw": "2", "start": 0, @@ -2976,6 +3413,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "*", "right": { + "commentStart": 3631, "end": 0, "name": "magOuterDiam", "start": 0, @@ -2988,8 +3426,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 3647, "end": 0, "left": { + "commentStart": 3647, "end": 0, "name": "firstStep", "start": 0, @@ -2998,6 +3438,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "+", "right": { + "commentStart": 3659, "end": 0, "name": "thirdStep", "start": 0, @@ -3014,8 +3455,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 3673, "end": 0, "left": { + "commentStart": 3673, "end": 0, "name": "magOuterDiam", "start": 0, @@ -3024,6 +3467,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 3688, "end": 0, "raw": "2", "start": 0, @@ -3042,6 +3486,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 3625, "end": 0, "operator": "-", "start": 0, @@ -3051,11 +3496,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 3610, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3610, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3065,11 +3512,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 3704, "end": 0, "properties": [ { + "commentStart": 3715, "end": 0, "key": { + "commentStart": 3715, "end": 0, "name": "angleStart", "start": 0, @@ -3078,6 +3528,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3728, "end": 0, "raw": "270.0", "start": 0, @@ -3090,8 +3541,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 3744, "end": 0, "key": { + "commentStart": 3744, "end": 0, "name": "angleEnd", "start": 0, @@ -3100,6 +3553,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3755, "end": 0, "raw": "180.0", "start": 0, @@ -3112,8 +3566,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 3771, "end": 0, "key": { + "commentStart": 3771, "end": 0, "name": "radius", "start": 0, @@ -3122,8 +3578,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3780, "end": 0, "left": { + "commentStart": 3780, "end": 0, "name": "magOuterDiam", "start": 0, @@ -3132,6 +3590,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 3795, "end": 0, "raw": "2", "start": 0, @@ -3153,6 +3612,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "ObjectExpression" }, { + "commentStart": 3807, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3160,11 +3620,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 3700, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 3700, "end": 0, "start": 0, "type": "CallExpression", @@ -3175,18 +3637,23 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 3823, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3832, "end": 0, "left": { + "commentStart": 3832, "end": 0, "left": { + "commentStart": 3832, "end": 0, "left": { + "commentStart": 3832, "end": 0, "raw": "2", "start": 0, @@ -3199,6 +3666,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "*", "right": { + "commentStart": 3836, "end": 0, "name": "magOuterDiam", "start": 0, @@ -3211,8 +3679,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 3852, "end": 0, "left": { + "commentStart": 3852, "end": 0, "name": "firstStep", "start": 0, @@ -3221,6 +3691,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "+", "right": { + "commentStart": 3864, "end": 0, "name": "thirdStep", "start": 0, @@ -3237,8 +3708,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 3878, "end": 0, "left": { + "commentStart": 3878, "end": 0, "name": "magOuterDiam", "start": 0, @@ -3247,6 +3720,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 3893, "end": 0, "raw": "2", "start": 0, @@ -3268,11 +3742,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 3817, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 3817, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3284,6 +3760,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 3910, "end": 0, "name": "length", "start": 0, @@ -3291,8 +3768,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "arg": { "argument": { + "commentStart": 3921, "end": 0, "left": { + "commentStart": 3921, "end": 0, "name": "binLength", "start": 0, @@ -3301,8 +3780,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 3934, "end": 0, "left": { + "commentStart": 3934, "end": 0, "raw": "4", "start": 0, @@ -3315,6 +3796,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "*", "right": { + "commentStart": 3938, "end": 0, "name": "magOuterDiam", "start": 0, @@ -3329,6 +3811,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 3919, "end": 0, "operator": "-", "start": 0, @@ -3339,12 +3822,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 3954, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3960, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3354,11 +3839,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 3904, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3904, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3370,6 +3857,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 3983, "end": 0, "name": "length", "start": 0, @@ -3377,12 +3865,16 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "arg": { "argument": { + "commentStart": 3994, "end": 0, "left": { + "commentStart": 3994, "end": 0, "left": { + "commentStart": 3994, "end": 0, "left": { + "commentStart": 3994, "end": 0, "raw": "2", "start": 0, @@ -3395,6 +3887,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "*", "right": { + "commentStart": 3998, "end": 0, "name": "magOuterDiam", "start": 0, @@ -3407,8 +3900,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 4014, "end": 0, "left": { + "commentStart": 4014, "end": 0, "name": "firstStep", "start": 0, @@ -3417,6 +3912,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "+", "right": { + "commentStart": 4026, "end": 0, "name": "thirdStep", "start": 0, @@ -3433,8 +3929,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 4040, "end": 0, "left": { + "commentStart": 4040, "end": 0, "name": "magOuterDiam", "start": 0, @@ -3443,6 +3941,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 4055, "end": 0, "raw": "2", "start": 0, @@ -3461,6 +3960,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 3992, "end": 0, "operator": "-", "start": 0, @@ -3470,11 +3970,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 3977, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 3977, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3484,11 +3986,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 4071, "end": 0, "properties": [ { + "commentStart": 4082, "end": 0, "key": { + "commentStart": 4082, "end": 0, "name": "angleStart", "start": 0, @@ -3497,6 +4002,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4095, "end": 0, "raw": "360.0", "start": 0, @@ -3509,8 +4015,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 4111, "end": 0, "key": { + "commentStart": 4111, "end": 0, "name": "angleEnd", "start": 0, @@ -3519,6 +4027,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4122, "end": 0, "raw": "270.0", "start": 0, @@ -3531,8 +4040,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 4138, "end": 0, "key": { + "commentStart": 4138, "end": 0, "name": "radius", "start": 0, @@ -3541,8 +4052,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4147, "end": 0, "left": { + "commentStart": 4147, "end": 0, "name": "magOuterDiam", "start": 0, @@ -3551,6 +4064,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 4162, "end": 0, "raw": "2", "start": 0, @@ -3572,6 +4086,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "ObjectExpression" }, { + "commentStart": 4174, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3579,11 +4094,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 4067, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 4067, "end": 0, "start": 0, "type": "CallExpression", @@ -3594,6 +4111,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 4190, "end": 0, "name": "length", "start": 0, @@ -3601,12 +4119,16 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "arg": { "argument": { + "commentStart": 4201, "end": 0, "left": { + "commentStart": 4201, "end": 0, "left": { + "commentStart": 4201, "end": 0, "left": { + "commentStart": 4201, "end": 0, "raw": "2", "start": 0, @@ -3619,6 +4141,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "*", "right": { + "commentStart": 4205, "end": 0, "name": "magOuterDiam", "start": 0, @@ -3631,8 +4154,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 4221, "end": 0, "left": { + "commentStart": 4221, "end": 0, "name": "firstStep", "start": 0, @@ -3641,6 +4166,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "+", "right": { + "commentStart": 4233, "end": 0, "name": "thirdStep", "start": 0, @@ -3657,8 +4183,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 4247, "end": 0, "left": { + "commentStart": 4247, "end": 0, "name": "magOuterDiam", "start": 0, @@ -3667,6 +4195,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 4262, "end": 0, "raw": "2", "start": 0, @@ -3685,6 +4214,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 4199, "end": 0, "operator": "-", "start": 0, @@ -3694,11 +4224,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 4184, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 4184, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3710,6 +4242,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 4280, "end": 0, "name": "length", "start": 0, @@ -3717,8 +4250,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "arg": { "argument": { + "commentStart": 4291, "end": 0, "left": { + "commentStart": 4291, "end": 0, "name": "binLength", "start": 0, @@ -3727,8 +4262,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "-", "right": { + "commentStart": 4304, "end": 0, "left": { + "commentStart": 4304, "end": 0, "raw": "4", "start": 0, @@ -3741,6 +4278,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "*", "right": { + "commentStart": 4308, "end": 0, "name": "magOuterDiam", "start": 0, @@ -3755,6 +4293,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 4289, "end": 0, "operator": "-", "start": 0, @@ -3764,11 +4303,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 4274, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 4274, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3778,17 +4319,20 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [], "callee": { + "commentStart": 4331, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 4331, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 2798, "end": 0, "start": 0, "type": "PipeExpression", @@ -3805,26 +4349,31 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, { "argument": { + "commentStart": 4348, "end": 0, "name": "magnetSketch", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4341, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 2779, "end": 0, "start": 0 }, + "commentStart": 2771, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 2772, "end": 0, "name": "plane", "start": 0, @@ -3846,9 +4395,12 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "VariableDeclaration" }, { + "commentStart": 4362, "declaration": { + "commentStart": 4412, "end": 0, "id": { + "commentStart": 4412, "end": 0, "name": "magnetBase", "start": 0, @@ -3858,9 +4410,12 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "body": { "body": [ { + "commentStart": 4434, "declaration": { + "commentStart": 4434, "end": 0, "id": { + "commentStart": 4434, "end": 0, "name": "magnetBaseSketch", "start": 0, @@ -3871,6 +4426,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 4467, "end": 0, "name": "plane", "start": 0, @@ -3879,11 +4435,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 4453, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 4453, "end": 0, "start": 0, "type": "CallExpression", @@ -3892,8 +4450,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 4496, "elements": [ { + "commentStart": 4497, "end": 0, "raw": "0", "start": 0, @@ -3905,6 +4465,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 4500, "end": 0, "raw": "0", "start": 0, @@ -3922,6 +4483,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "ArrayExpression" }, { + "commentStart": 4504, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3929,11 +4491,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 4481, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 4481, "end": 0, "start": 0, "type": "CallExpression", @@ -3944,12 +4508,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 4520, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4529, "end": 0, "name": "binLength", "start": 0, @@ -3960,12 +4526,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 4540, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4546, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3975,11 +4543,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 4514, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 4514, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3991,12 +4561,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 4569, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4578, "end": 0, "name": "binLength", "start": 0, @@ -4007,12 +4579,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 4589, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4595, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4022,11 +4596,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 4563, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 4563, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4038,6 +4614,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 4618, "end": 0, "name": "endAbsolute", "start": 0, @@ -4046,6 +4623,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "arg": { "arguments": [ { + "commentStart": 4646, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4053,11 +4631,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 4632, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 4632, "end": 0, "start": 0, "type": "CallExpression", @@ -4067,12 +4647,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 4650, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4656, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4082,11 +4664,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 4612, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 4612, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4098,12 +4682,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 4679, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4685, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4113,11 +4699,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 4673, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 4673, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4129,6 +4717,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 4726, "end": 0, "name": "plane", "start": 0, @@ -4137,17 +4726,20 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 4707, "end": 0, "name": "magnetCenterCutout", "start": 0, "type": "Identifier" }, + "commentStart": 4707, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { + "commentStart": 4734, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4155,17 +4747,20 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 4702, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 4702, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 4453, "end": 0, "start": 0, "type": "PipeExpression", @@ -4182,26 +4777,31 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, { "argument": { + "commentStart": 4746, "end": 0, "name": "magnetBaseSketch", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4739, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 4430, "end": 0, "start": 0 }, + "commentStart": 4422, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 4423, "end": 0, "name": "plane", "start": 0, @@ -4218,14 +4818,22 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// create the outside profile of the magnets" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 4764, "declaration": { + "commentStart": 4811, "end": 0, "id": { + "commentStart": 4811, "end": 0, "name": "magnetsSketch", "start": 0, @@ -4236,6 +4844,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 4841, "end": 0, "raw": "'XY'", "start": 0, @@ -4245,11 +4854,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 4827, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 4827, "end": 0, "start": 0, "type": "CallExpression", @@ -4260,16 +4871,20 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 4867, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4876, "elements": [ { + "commentStart": 4877, "end": 0, "left": { + "commentStart": 4877, "end": 0, "name": "cornerRadius", "start": 0, @@ -4278,6 +4893,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "*", "right": { + "commentStart": 4892, "end": 0, "raw": "2", "start": 0, @@ -4293,8 +4909,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "BinaryExpression" }, { + "commentStart": 4895, "end": 0, "left": { + "commentStart": 4895, "end": 0, "name": "cornerRadius", "start": 0, @@ -4303,6 +4921,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "*", "right": { + "commentStart": 4910, "end": 0, "raw": "2", "start": 0, @@ -4327,14 +4946,17 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 4921, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4930, "end": 0, "left": { + "commentStart": 4930, "end": 0, "name": "magOuterDiam", "start": 0, @@ -4343,6 +4965,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 4945, "end": 0, "raw": "2", "start": 0, @@ -4360,11 +4983,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 4852, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 4852, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4376,16 +5001,20 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 4985, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4994, "elements": [ { + "commentStart": 4995, "end": 0, "left": { + "commentStart": 4995, "end": 0, "name": "binLength", "start": 0, @@ -4394,6 +5023,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 5007, "end": 0, "raw": "2", "start": 0, @@ -4409,8 +5039,10 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "BinaryExpression" }, { + "commentStart": 5010, "end": 0, "left": { + "commentStart": 5010, "end": 0, "name": "binLength", "start": 0, @@ -4419,6 +5051,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "operator": "/", "right": { + "commentStart": 5022, "end": 0, "raw": "2", "start": 0, @@ -4443,12 +5076,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 5033, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5045, "end": 0, "raw": "4", "start": 0, @@ -4463,12 +5098,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 5055, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5068, "end": 0, "raw": "360", "start": 0, @@ -4483,12 +5120,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 5080, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5099, "end": 0, "raw": "true", "start": 0, @@ -4499,11 +5138,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 4959, "end": 0, "name": "patternCircular2d", "start": 0, "type": "Identifier" }, + "commentStart": 4959, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4511,11 +5152,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "unlabeled": null } ], + "commentStart": 4827, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 5110, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4538,14 +5181,22 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create sketch profile sketch000Profile002" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 5159, "declaration": { + "commentStart": 5159, "end": 0, "id": { + "commentStart": 5159, "end": 0, "name": "magnetProfile", "start": 0, @@ -4556,6 +5207,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 5186, "end": 0, "raw": "\"XY\"", "start": 0, @@ -4565,11 +5217,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 5175, "end": 0, "name": "magnetBase", "start": 0, "type": "Identifier" }, + "commentStart": 5175, "end": 0, "start": 0, "type": "CallExpression", @@ -4578,6 +5232,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 5202, "end": 0, "name": "magnetsSketch", "start": 0, @@ -4585,6 +5240,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "Identifier" }, { + "commentStart": 5217, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4592,22 +5248,26 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 5197, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 5197, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 5175, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 5219, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4635,9 +5295,12 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "VariableDeclaration" }, { + "commentStart": 5276, "declaration": { + "commentStart": 5276, "end": 0, "id": { + "commentStart": 5276, "end": 0, "name": "magnetHolesExtrude", "start": 0, @@ -4648,6 +5311,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 5320, "end": 0, "name": "length", "start": 0, @@ -4655,12 +5319,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "arg": { "argument": { + "commentStart": 5330, "end": 0, "name": "magDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 5329, "end": 0, "operator": "-", "start": 0, @@ -4670,16 +5336,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 5297, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 5297, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 5305, "end": 0, "name": "magnetProfile", "start": 0, @@ -4697,9 +5366,12 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "VariableDeclaration" }, { + "commentStart": 5339, "declaration": { + "commentStart": 5374, "end": 0, "id": { + "commentStart": 5374, "end": 0, "name": "magnetHolesExtrudeFillets", "start": 0, @@ -4710,12 +5382,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 5434, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5443, "end": 0, "name": "cornerRadius", "start": 0, @@ -4726,25 +5400,31 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 5459, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5466, "elements": [ { "arguments": [ { + "commentStart": 5492, "computed": false, "end": 0, "object": { + "commentStart": 5492, "computed": false, "end": 0, "object": { + "commentStart": 5492, "computed": false, "end": 0, "object": { + "commentStart": 5492, "end": 0, "name": "magnetHolesExtrude", "start": 0, @@ -4752,6 +5432,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "Identifier" }, "property": { + "commentStart": 5511, "end": 0, "name": "sketch", "start": 0, @@ -4763,6 +5444,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "MemberExpression" }, "property": { + "commentStart": 5518, "end": 0, "name": "tags", "start": 0, @@ -4774,6 +5456,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "MemberExpression" }, "property": { + "commentStart": 5523, "end": 0, "name": "line001", "start": 0, @@ -4786,11 +5469,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 5472, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 5472, "end": 0, "start": 0, "type": "CallExpression", @@ -4799,15 +5484,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 5561, "computed": false, "end": 0, "object": { + "commentStart": 5561, "computed": false, "end": 0, "object": { + "commentStart": 5561, "computed": false, "end": 0, "object": { + "commentStart": 5561, "end": 0, "name": "magnetHolesExtrude", "start": 0, @@ -4815,6 +5504,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "Identifier" }, "property": { + "commentStart": 5580, "end": 0, "name": "sketch", "start": 0, @@ -4826,6 +5516,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "MemberExpression" }, "property": { + "commentStart": 5587, "end": 0, "name": "tags", "start": 0, @@ -4837,6 +5528,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "MemberExpression" }, "property": { + "commentStart": 5592, "end": 0, "name": "line001", "start": 0, @@ -4849,11 +5541,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 5537, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 5537, "end": 0, "start": 0, "type": "CallExpression", @@ -4862,15 +5556,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 5626, "computed": false, "end": 0, "object": { + "commentStart": 5626, "computed": false, "end": 0, "object": { + "commentStart": 5626, "computed": false, "end": 0, "object": { + "commentStart": 5626, "end": 0, "name": "magnetHolesExtrude", "start": 0, @@ -4878,6 +5576,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "Identifier" }, "property": { + "commentStart": 5645, "end": 0, "name": "sketch", "start": 0, @@ -4889,6 +5588,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "MemberExpression" }, "property": { + "commentStart": 5652, "end": 0, "name": "tags", "start": 0, @@ -4900,6 +5600,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "MemberExpression" }, "property": { + "commentStart": 5657, "end": 0, "name": "line003", "start": 0, @@ -4912,11 +5613,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 5606, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 5606, "end": 0, "start": 0, "type": "CallExpression", @@ -4925,15 +5628,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 5695, "computed": false, "end": 0, "object": { + "commentStart": 5695, "computed": false, "end": 0, "object": { + "commentStart": 5695, "computed": false, "end": 0, "object": { + "commentStart": 5695, "end": 0, "name": "magnetHolesExtrude", "start": 0, @@ -4941,6 +5648,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "Identifier" }, "property": { + "commentStart": 5714, "end": 0, "name": "sketch", "start": 0, @@ -4952,6 +5660,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "MemberExpression" }, "property": { + "commentStart": 5721, "end": 0, "name": "tags", "start": 0, @@ -4963,6 +5672,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "MemberExpression" }, "property": { + "commentStart": 5726, "end": 0, "name": "line003", "start": 0, @@ -4975,11 +5685,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 5671, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 5671, "end": 0, "start": 0, "type": "CallExpression", @@ -4994,16 +5706,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 5402, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 5402, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 5412, "end": 0, "name": "magnetHolesExtrude", "start": 0, @@ -5016,14 +5731,22 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// add a fillet to the extrusion" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 5740, "declaration": { + "commentStart": 5796, "end": 0, "id": { + "commentStart": 5796, "end": 0, "name": "magnetProfileNoMagnets", "start": 0, @@ -5036,6 +5759,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 5850, "end": 0, "name": "offset", "start": 0, @@ -5043,12 +5767,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "arg": { "argument": { + "commentStart": 5860, "end": 0, "name": "magDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 5859, "end": 0, "operator": "-", "start": 0, @@ -5058,16 +5784,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 5832, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 5832, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 5844, "end": 0, "raw": "\"XY\"", "start": 0, @@ -5078,11 +5807,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 5821, "end": 0, "name": "magnetBase", "start": 0, "type": "Identifier" }, + "commentStart": 5821, "end": 0, "start": 0, "type": "CallExpression", @@ -5093,14 +5824,22 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a profile without the holes for the magnets" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 5870, "declaration": { + "commentStart": 5930, "end": 0, "id": { + "commentStart": 5930, "end": 0, "name": "magnetCutoutExtrude", "start": 0, @@ -5111,6 +5850,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 5984, "end": 0, "name": "length", "start": 0, @@ -5118,12 +5858,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "arg": { "argument": { + "commentStart": 5994, "end": 0, "name": "magDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 5993, "end": 0, "operator": "-", "start": 0, @@ -5133,16 +5875,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 5952, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 5952, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 5960, "end": 0, "name": "magnetProfileNoMagnets", "start": 0, @@ -5155,14 +5900,22 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create an extrusion of the magnet cutout without holes" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 6003, "declaration": { + "commentStart": 6038, "end": 0, "id": { + "commentStart": 6038, "end": 0, "name": "magnetCutoutExtrudeFillets", "start": 0, @@ -5173,12 +5926,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 6100, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6109, "end": 0, "name": "cornerRadius", "start": 0, @@ -5189,25 +5944,31 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 6125, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6132, "elements": [ { "arguments": [ { + "commentStart": 6158, "computed": false, "end": 0, "object": { + "commentStart": 6158, "computed": false, "end": 0, "object": { + "commentStart": 6158, "computed": false, "end": 0, "object": { + "commentStart": 6158, "end": 0, "name": "magnetCutoutExtrude", "start": 0, @@ -5215,6 +5976,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "Identifier" }, "property": { + "commentStart": 6178, "end": 0, "name": "sketch", "start": 0, @@ -5226,6 +5988,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "MemberExpression" }, "property": { + "commentStart": 6185, "end": 0, "name": "tags", "start": 0, @@ -5237,6 +6000,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "MemberExpression" }, "property": { + "commentStart": 6190, "end": 0, "name": "line001", "start": 0, @@ -5249,11 +6013,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 6138, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6138, "end": 0, "start": 0, "type": "CallExpression", @@ -5262,15 +6028,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 6228, "computed": false, "end": 0, "object": { + "commentStart": 6228, "computed": false, "end": 0, "object": { + "commentStart": 6228, "computed": false, "end": 0, "object": { + "commentStart": 6228, "end": 0, "name": "magnetCutoutExtrude", "start": 0, @@ -5278,6 +6048,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "Identifier" }, "property": { + "commentStart": 6248, "end": 0, "name": "sketch", "start": 0, @@ -5289,6 +6060,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "MemberExpression" }, "property": { + "commentStart": 6255, "end": 0, "name": "tags", "start": 0, @@ -5300,6 +6072,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "MemberExpression" }, "property": { + "commentStart": 6260, "end": 0, "name": "line001", "start": 0, @@ -5312,11 +6085,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 6204, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6204, "end": 0, "start": 0, "type": "CallExpression", @@ -5325,15 +6100,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 6294, "computed": false, "end": 0, "object": { + "commentStart": 6294, "computed": false, "end": 0, "object": { + "commentStart": 6294, "computed": false, "end": 0, "object": { + "commentStart": 6294, "end": 0, "name": "magnetCutoutExtrude", "start": 0, @@ -5341,6 +6120,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "Identifier" }, "property": { + "commentStart": 6314, "end": 0, "name": "sketch", "start": 0, @@ -5352,6 +6132,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "MemberExpression" }, "property": { + "commentStart": 6321, "end": 0, "name": "tags", "start": 0, @@ -5363,6 +6144,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "MemberExpression" }, "property": { + "commentStart": 6326, "end": 0, "name": "line003", "start": 0, @@ -5375,11 +6157,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 6274, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6274, "end": 0, "start": 0, "type": "CallExpression", @@ -5388,15 +6172,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "arguments": [ { + "commentStart": 6364, "computed": false, "end": 0, "object": { + "commentStart": 6364, "computed": false, "end": 0, "object": { + "commentStart": 6364, "computed": false, "end": 0, "object": { + "commentStart": 6364, "end": 0, "name": "magnetCutoutExtrude", "start": 0, @@ -5404,6 +6192,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "Identifier" }, "property": { + "commentStart": 6384, "end": 0, "name": "sketch", "start": 0, @@ -5415,6 +6204,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "MemberExpression" }, "property": { + "commentStart": 6391, "end": 0, "name": "tags", "start": 0, @@ -5426,6 +6216,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "MemberExpression" }, "property": { + "commentStart": 6396, "end": 0, "name": "line003", "start": 0, @@ -5438,11 +6229,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 6340, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 6340, "end": 0, "start": 0, "type": "CallExpression", @@ -5457,16 +6250,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 6067, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 6067, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 6077, "end": 0, "name": "magnetCutoutExtrude", "start": 0, @@ -5479,11 +6275,17 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// add a fillet to the extrusion" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 6410, "end": 0, "expression": { "body": [ @@ -5492,14 +6294,17 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 6511, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6518, "elements": [ { + "commentStart": 6519, "end": 0, "raw": "1.0", "start": 0, @@ -5511,6 +6316,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 6524, "end": 0, "raw": "0.0", "start": 0, @@ -5522,6 +6328,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 6529, "end": 0, "raw": "0.0", "start": 0, @@ -5542,12 +6349,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 6542, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6554, "end": 0, "name": "countBinWidth", "start": 0, @@ -5558,12 +6367,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 6576, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6587, "end": 0, "name": "binLength", "start": 0, @@ -5573,16 +6384,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 6453, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 6453, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 6477, "end": 0, "name": "magnetHolesExtrudeFillets", "start": 0, @@ -5595,14 +6409,17 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 6633, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6640, "elements": [ { + "commentStart": 6641, "end": 0, "raw": "0.0", "start": 0, @@ -5614,6 +6431,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 6646, "end": 0, "raw": "1.0", "start": 0, @@ -5625,6 +6443,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 6651, "end": 0, "raw": "0.0", "start": 0, @@ -5645,12 +6464,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 6664, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6676, "end": 0, "name": "countBinLength", "start": 0, @@ -5661,12 +6482,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 6699, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6710, "end": 0, "name": "binLength", "start": 0, @@ -5676,11 +6499,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 6609, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 6609, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5688,11 +6513,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "unlabeled": null } ], + "commentStart": 6453, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 6726, "end": 0, "start": 0, "type": "NonCodeNode", @@ -5710,11 +6537,17 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "PipeExpression", "type": "PipeExpression" }, + "preComments": [ + "", + "", + "// pattern the magnet cutouts with holes" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 6772, "end": 0, "expression": { "body": [ @@ -5723,14 +6556,17 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 6831, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6838, "elements": [ { + "commentStart": 6839, "end": 0, "raw": "1.0", "start": 0, @@ -5742,6 +6578,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 6844, "end": 0, "raw": "0.0", "start": 0, @@ -5753,6 +6590,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 6849, "end": 0, "raw": "0.0", "start": 0, @@ -5773,12 +6611,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 6862, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6874, "end": 0, "name": "countBinWidth", "start": 0, @@ -5789,12 +6629,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 6896, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6907, "end": 0, "name": "binLength", "start": 0, @@ -5804,16 +6646,19 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 6772, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 6772, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 6796, "end": 0, "name": "magnetCutoutExtrudeFillets", "start": 0, @@ -5826,14 +6671,17 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 6953, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6960, "elements": [ { + "commentStart": 6961, "end": 0, "raw": "0.0", "start": 0, @@ -5845,6 +6693,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 6966, "end": 0, "raw": "1.0", "start": 0, @@ -5856,6 +6705,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } }, { + "commentStart": 6971, "end": 0, "raw": "0.0", "start": 0, @@ -5876,12 +6726,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 6984, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6996, "end": 0, "name": "countBinLength", "start": 0, @@ -5892,12 +6744,14 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl { "type": "LabeledArg", "label": { + "commentStart": 7019, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7030, "end": 0, "name": "binLength", "start": 0, @@ -5907,11 +6761,13 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "callee": { + "commentStart": 6929, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 6929, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5919,6 +6775,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "unlabeled": null } ], + "commentStart": 6772, "end": 0, "start": 0, "type": "PipeExpression", @@ -5929,20 +6786,32 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 385, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Gridfinity Baseplate With Magnets", + "// Gridfinity is a system to help you work more efficiently. This is a system invented by Zack Freedman. There are two main components the baseplate and the bins. The components are comprised of a matrix of squares. Allowing easy stacking and expansion. This baseplate version includes holes for magnet placement", + "", + "", + "// Set units in millimeters (mm)" + ], "properties": [ { + "commentStart": 394, "end": 0, "key": { + "commentStart": 394, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -5951,6 +6820,7 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 414, "end": 0, "name": "mm", "start": 0, @@ -5964,256 +6834,16 @@ description: Result of parsing gridfinity-baseplate-magnets.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "7": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Number of bins in each direction", - "style": "line" - } - } - ], - "9": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "The total height of the baseplate is a summation of the vertical heights of the baseplate steps", - "style": "line" - } - } - ], - "10": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "define a function which builds the profile of the baseplate bin", - "style": "line" - } - } - ], - "11": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "extrude a single side of the bin", - "style": "line" - } - } - ], - "12": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create the other sides of the bin by using a circular pattern", - "style": "line" - } - } - ], - "13": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "define an axis axis000", - "style": "line" - } - } - ], - "14": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a single corner of the bin", - "style": "line" - } - } - ], - "15": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create the corners of the bin", - "style": "line" - } - } - ], - "16": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create the baseplate by patterning sides", - "style": "line" - } - } - ], - "19": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create the outside profile of the magnets", - "style": "line" - } - } - ], - "20": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create sketch profile sketch000Profile002", - "style": "line" - } - } - ], - "23": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "add a fillet to the extrusion", - "style": "line" - } - } - ], - "24": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a profile without the holes for the magnets", - "style": "line" - } - } - ], - "25": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create an extrusion of the magnet cutout without holes", - "style": "line" - } - } - ], - "26": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "add a fillet to the extrusion", - "style": "line" - } - } - ], - "27": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "pattern the magnet cutouts with holes", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Gridfinity Baseplate With Magnets", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Gridfinity is a system to help you work more efficiently. This is a system invented by Zack Freedman. There are two main components the baseplate and the bins. The components are comprised of a matrix of squares. Allowing easy stacking and expansion. This baseplate version includes holes for magnet placement", - "style": "line" - } - }, - { + "commentStart": 417, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units in millimeters (mm)", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/gridfinity-baseplate-magnets/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/gridfinity-baseplate-magnets/program_memory.snap index 01b1f85d3..e03dd0324 100644 --- a/rust/kcl-lib/tests/kcl_samples/gridfinity-baseplate-magnets/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/gridfinity-baseplate-magnets/program_memory.snap @@ -10856,6 +10856,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4546, "end": 4554, "start": 4546, "type": "TagDeclarator", @@ -10868,6 +10869,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4595, "end": 4603, "start": 4595, "type": "TagDeclarator", @@ -10880,6 +10882,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4656, "end": 4664, "start": 4656, "type": "TagDeclarator", @@ -10892,6 +10895,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4685, "end": 4693, "start": 4685, "type": "TagDeclarator", @@ -10914,6 +10918,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 0.0 ], "tag": { + "commentStart": 4546, "end": 4554, "start": 4546, "type": "TagDeclarator", @@ -10938,6 +10943,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 0.0 ], "tag": { + "commentStart": 4595, "end": 4603, "start": 4595, "type": "TagDeclarator", @@ -10962,6 +10968,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 42.0 ], "tag": { + "commentStart": 4656, "end": 4664, "start": 4656, "type": "TagDeclarator", @@ -10986,6 +10993,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 42.0 ], "tag": { + "commentStart": 4685, "end": 4693, "start": 4685, "type": "TagDeclarator", @@ -11092,6 +11100,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4546, "end": 4554, "start": 4546, "type": "TagDeclarator", @@ -11104,6 +11113,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4595, "end": 4603, "start": 4595, "type": "TagDeclarator", @@ -11116,6 +11126,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4656, "end": 4664, "start": 4656, "type": "TagDeclarator", @@ -11128,6 +11139,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4685, "end": 4693, "start": 4685, "type": "TagDeclarator", @@ -11150,6 +11162,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 0.0 ], "tag": { + "commentStart": 4546, "end": 4554, "start": 4546, "type": "TagDeclarator", @@ -11174,6 +11187,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 0.0 ], "tag": { + "commentStart": 4595, "end": 4603, "start": 4595, "type": "TagDeclarator", @@ -11198,6 +11212,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 42.0 ], "tag": { + "commentStart": 4656, "end": 4664, "start": 4656, "type": "TagDeclarator", @@ -11222,6 +11237,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 42.0 ], "tag": { + "commentStart": 4685, "end": 4693, "start": 4685, "type": "TagDeclarator", @@ -11358,6 +11374,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4546, "end": 4554, "start": 4546, "type": "TagDeclarator", @@ -11370,6 +11387,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4595, "end": 4603, "start": 4595, "type": "TagDeclarator", @@ -11382,6 +11400,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4656, "end": 4664, "start": 4656, "type": "TagDeclarator", @@ -11394,6 +11413,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4685, "end": 4693, "start": 4685, "type": "TagDeclarator", @@ -11416,6 +11436,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 0.0 ], "tag": { + "commentStart": 4546, "end": 4554, "start": 4546, "type": "TagDeclarator", @@ -11440,6 +11461,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 0.0 ], "tag": { + "commentStart": 4595, "end": 4603, "start": 4595, "type": "TagDeclarator", @@ -11464,6 +11486,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 42.0 ], "tag": { + "commentStart": 4656, "end": 4664, "start": 4656, "type": "TagDeclarator", @@ -11488,6 +11511,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 42.0 ], "tag": { + "commentStart": 4685, "end": 4693, "start": 4685, "type": "TagDeclarator", @@ -11594,6 +11618,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4546, "end": 4554, "start": 4546, "type": "TagDeclarator", @@ -11606,6 +11631,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4595, "end": 4603, "start": 4595, "type": "TagDeclarator", @@ -11618,6 +11644,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4656, "end": 4664, "start": 4656, "type": "TagDeclarator", @@ -11630,6 +11657,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4685, "end": 4693, "start": 4685, "type": "TagDeclarator", @@ -11652,6 +11680,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 0.0 ], "tag": { + "commentStart": 4546, "end": 4554, "start": 4546, "type": "TagDeclarator", @@ -11676,6 +11705,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 0.0 ], "tag": { + "commentStart": 4595, "end": 4603, "start": 4595, "type": "TagDeclarator", @@ -11700,6 +11730,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 42.0 ], "tag": { + "commentStart": 4656, "end": 4664, "start": 4656, "type": "TagDeclarator", @@ -11724,6 +11755,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 42.0 ], "tag": { + "commentStart": 4685, "end": 4693, "start": 4685, "type": "TagDeclarator", @@ -11864,6 +11896,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 0.0 ], "tag": { + "commentStart": 4546, "end": 4554, "start": 4546, "type": "TagDeclarator", @@ -11888,6 +11921,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 0.0 ], "tag": { + "commentStart": 4595, "end": 4603, "start": 4595, "type": "TagDeclarator", @@ -11912,6 +11946,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 42.0 ], "tag": { + "commentStart": 4656, "end": 4664, "start": 4656, "type": "TagDeclarator", @@ -11936,6 +11971,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 42.0 ], "tag": { + "commentStart": 4685, "end": 4693, "start": 4685, "type": "TagDeclarator", @@ -12039,6 +12075,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 0.0 ], "tag": { + "commentStart": 4546, "end": 4554, "start": 4546, "type": "TagDeclarator", @@ -12063,6 +12100,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 0.0 ], "tag": { + "commentStart": 4595, "end": 4603, "start": 4595, "type": "TagDeclarator", @@ -12087,6 +12125,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 42.0 ], "tag": { + "commentStart": 4656, "end": 4664, "start": 4656, "type": "TagDeclarator", @@ -12111,6 +12150,7 @@ description: Variables in memory after executing gridfinity-baseplate-magnets.kc 42.0 ], "tag": { + "commentStart": 4685, "end": 4693, "start": 4685, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/kcl_samples/gridfinity-baseplate/ast.snap b/rust/kcl-lib/tests/kcl_samples/gridfinity-baseplate/ast.snap index feaba12f2..7bec0db7c 100644 --- a/rust/kcl-lib/tests/kcl_samples/gridfinity-baseplate/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/gridfinity-baseplate/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing gridfinity-baseplate.kcl "Ok": { "body": [ { + "commentStart": 344, "declaration": { + "commentStart": 366, "end": 0, "id": { + "commentStart": 366, "end": 0, "name": "binLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 378, "end": 0, "raw": "42.0", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing gridfinity-baseplate.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 383, "declaration": { + "commentStart": 383, "end": 0, "id": { + "commentStart": 383, "end": 0, "name": "cornerRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 398, "end": 0, "raw": "4.0", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing gridfinity-baseplate.kcl "type": "VariableDeclaration" }, { + "commentStart": 402, "declaration": { + "commentStart": 402, "end": 0, "id": { + "commentStart": 402, "end": 0, "name": "firstStep", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 414, "end": 0, "raw": "0.7", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing gridfinity-baseplate.kcl "type": "VariableDeclaration" }, { + "commentStart": 418, "declaration": { + "commentStart": 418, "end": 0, "id": { + "commentStart": 418, "end": 0, "name": "secondStep", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 431, "end": 0, "raw": "1.8", "start": 0, @@ -122,15 +141,19 @@ description: Result of parsing gridfinity-baseplate.kcl "type": "VariableDeclaration" }, { + "commentStart": 435, "declaration": { + "commentStart": 435, "end": 0, "id": { + "commentStart": 435, "end": 0, "name": "thirdStep", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 447, "end": 0, "raw": "2.15", "start": 0, @@ -151,15 +174,19 @@ description: Result of parsing gridfinity-baseplate.kcl "type": "VariableDeclaration" }, { + "commentStart": 451, "declaration": { + "commentStart": 489, "end": 0, "id": { + "commentStart": 489, "end": 0, "name": "countBinWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 505, "end": 0, "raw": "2", "start": 0, @@ -175,20 +202,29 @@ description: Result of parsing gridfinity-baseplate.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Number of bins in each direction" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 507, "declaration": { + "commentStart": 507, "end": 0, "id": { + "commentStart": 507, "end": 0, "name": "countBinLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 524, "end": 0, "raw": "3", "start": 0, @@ -209,19 +245,25 @@ description: Result of parsing gridfinity-baseplate.kcl "type": "VariableDeclaration" }, { + "commentStart": 525, "declaration": { + "commentStart": 626, "end": 0, "id": { + "commentStart": 626, "end": 0, "name": "height", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 635, "end": 0, "left": { + "commentStart": 635, "end": 0, "left": { + "commentStart": 635, "end": 0, "name": "firstStep", "start": 0, @@ -230,6 +272,7 @@ description: Result of parsing gridfinity-baseplate.kcl }, "operator": "+", "right": { + "commentStart": 647, "end": 0, "name": "secondStep", "start": 0, @@ -242,6 +285,7 @@ description: Result of parsing gridfinity-baseplate.kcl }, "operator": "+", "right": { + "commentStart": 660, "end": 0, "name": "thirdStep", "start": 0, @@ -257,14 +301,22 @@ description: Result of parsing gridfinity-baseplate.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// The total height of the baseplate is a summation of the vertical heights of the baseplate steps" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 669, "declaration": { + "commentStart": 741, "end": 0, "id": { + "commentStart": 741, "end": 0, "name": "face", "start": 0, @@ -274,9 +326,12 @@ description: Result of parsing gridfinity-baseplate.kcl "body": { "body": [ { + "commentStart": 757, "declaration": { + "commentStart": 757, "end": 0, "id": { + "commentStart": 757, "end": 0, "name": "faceSketch", "start": 0, @@ -287,6 +342,7 @@ description: Result of parsing gridfinity-baseplate.kcl { "arguments": [ { + "commentStart": 784, "end": 0, "name": "plane", "start": 0, @@ -295,11 +351,13 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 770, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 770, "end": 0, "start": 0, "type": "CallExpression", @@ -308,8 +366,10 @@ description: Result of parsing gridfinity-baseplate.kcl { "arguments": [ { + "commentStart": 813, "elements": [ { + "commentStart": 814, "end": 0, "raw": "0", "start": 0, @@ -321,6 +381,7 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 817, "end": 0, "raw": "0", "start": 0, @@ -338,6 +399,7 @@ description: Result of parsing gridfinity-baseplate.kcl "type": "ArrayExpression" }, { + "commentStart": 821, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -345,11 +407,13 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 798, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 798, "end": 0, "start": 0, "type": "CallExpression", @@ -360,12 +424,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 837, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 846, "end": 0, "name": "height", "start": 0, @@ -375,11 +441,13 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 831, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 831, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -389,11 +457,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "arguments": [ { + "commentStart": 881, "end": 0, "properties": [ { + "commentStart": 883, "end": 0, "key": { + "commentStart": 883, "end": 0, "name": "angle", "start": 0, @@ -403,6 +474,7 @@ description: Result of parsing gridfinity-baseplate.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 892, "end": 0, "raw": "45", "start": 0, @@ -413,6 +485,7 @@ description: Result of parsing gridfinity-baseplate.kcl "suffix": "None" } }, + "commentStart": 891, "end": 0, "operator": "-", "start": 0, @@ -421,8 +494,10 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 896, "end": 0, "key": { + "commentStart": 896, "end": 0, "name": "length", "start": 0, @@ -431,6 +506,7 @@ description: Result of parsing gridfinity-baseplate.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 905, "end": 0, "name": "thirdStep", "start": 0, @@ -444,6 +520,7 @@ description: Result of parsing gridfinity-baseplate.kcl "type": "ObjectExpression" }, { + "commentStart": 918, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -451,11 +528,13 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 861, "end": 0, "name": "angledLineOfYLength", "start": 0, "type": "Identifier" }, + "commentStart": 861, "end": 0, "start": 0, "type": "CallExpression", @@ -466,6 +545,7 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 934, "end": 0, "name": "length", "start": 0, @@ -473,12 +553,14 @@ description: Result of parsing gridfinity-baseplate.kcl }, "arg": { "argument": { + "commentStart": 944, "end": 0, "name": "secondStep", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 943, "end": 0, "operator": "-", "start": 0, @@ -488,11 +570,13 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 928, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 928, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -502,11 +586,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "arguments": [ { + "commentStart": 983, "end": 0, "properties": [ { + "commentStart": 985, "end": 0, "key": { + "commentStart": 985, "end": 0, "name": "angle", "start": 0, @@ -516,6 +603,7 @@ description: Result of parsing gridfinity-baseplate.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 994, "end": 0, "raw": "45", "start": 0, @@ -526,6 +614,7 @@ description: Result of parsing gridfinity-baseplate.kcl "suffix": "None" } }, + "commentStart": 993, "end": 0, "operator": "-", "start": 0, @@ -534,8 +623,10 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 998, "end": 0, "key": { + "commentStart": 998, "end": 0, "name": "length", "start": 0, @@ -544,6 +635,7 @@ description: Result of parsing gridfinity-baseplate.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1007, "end": 0, "name": "firstStep", "start": 0, @@ -557,6 +649,7 @@ description: Result of parsing gridfinity-baseplate.kcl "type": "ObjectExpression" }, { + "commentStart": 1020, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -564,11 +657,13 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 963, "end": 0, "name": "angledLineOfYLength", "start": 0, "type": "Identifier" }, + "commentStart": 963, "end": 0, "start": 0, "type": "CallExpression", @@ -577,17 +672,20 @@ description: Result of parsing gridfinity-baseplate.kcl { "arguments": [], "callee": { + "commentStart": 1030, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1030, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 770, "end": 0, "start": 0, "type": "PipeExpression", @@ -604,26 +702,31 @@ description: Result of parsing gridfinity-baseplate.kcl }, { "argument": { + "commentStart": 1047, "end": 0, "name": "faceSketch", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1040, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 753, "end": 0, "start": 0 }, + "commentStart": 745, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 746, "end": 0, "name": "plane", "start": 0, @@ -640,14 +743,22 @@ description: Result of parsing gridfinity-baseplate.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// define a function which builds the profile of the baseplate bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1059, "declaration": { + "commentStart": 1097, "end": 0, "id": { + "commentStart": 1097, "end": 0, "name": "singleSide", "start": 0, @@ -658,14 +769,17 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1166, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1175, "end": 0, "left": { + "commentStart": 1175, "end": 0, "name": "binLength", "start": 0, @@ -674,8 +788,10 @@ description: Result of parsing gridfinity-baseplate.kcl }, "operator": "-", "right": { + "commentStart": 1188, "end": 0, "left": { + "commentStart": 1188, "end": 0, "name": "cornerRadius", "start": 0, @@ -684,6 +800,7 @@ description: Result of parsing gridfinity-baseplate.kcl }, "operator": "*", "right": { + "commentStart": 1203, "end": 0, "raw": "2", "start": 0, @@ -705,11 +822,13 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 1110, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1110, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -721,12 +840,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1141, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1150, "end": 0, "name": "cornerRadius", "start": 0, @@ -736,16 +857,19 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 1123, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 1123, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1135, "end": 0, "raw": "\"YZ\"", "start": 0, @@ -756,11 +880,13 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 1118, "end": 0, "name": "face", "start": 0, "type": "Identifier" }, + "commentStart": 1118, "end": 0, "start": 0, "type": "CallExpression", @@ -772,14 +898,22 @@ description: Result of parsing gridfinity-baseplate.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// extrude a single side of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1206, "declaration": { + "commentStart": 1273, "end": 0, "id": { + "commentStart": 1273, "end": 0, "name": "sides", "start": 0, @@ -790,12 +924,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1316, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1329, "end": 0, "raw": "360", "start": 0, @@ -810,14 +946,17 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1336, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1343, "elements": [ { + "commentStart": 1344, "end": 0, "raw": "0", "start": 0, @@ -829,6 +968,7 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 1347, "end": 0, "raw": "0", "start": 0, @@ -840,6 +980,7 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 1350, "end": 0, "raw": "1", "start": 0, @@ -860,16 +1001,20 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1356, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1365, "elements": [ { + "commentStart": 1366, "end": 0, "left": { + "commentStart": 1366, "end": 0, "name": "binLength", "start": 0, @@ -878,6 +1023,7 @@ description: Result of parsing gridfinity-baseplate.kcl }, "operator": "/", "right": { + "commentStart": 1378, "end": 0, "raw": "2", "start": 0, @@ -893,8 +1039,10 @@ description: Result of parsing gridfinity-baseplate.kcl "type": "BinaryExpression" }, { + "commentStart": 1381, "end": 0, "left": { + "commentStart": 1381, "end": 0, "name": "binLength", "start": 0, @@ -903,6 +1051,7 @@ description: Result of parsing gridfinity-baseplate.kcl }, "operator": "/", "right": { + "commentStart": 1393, "end": 0, "raw": "2", "start": 0, @@ -918,6 +1067,7 @@ description: Result of parsing gridfinity-baseplate.kcl "type": "BinaryExpression" }, { + "commentStart": 1396, "end": 0, "raw": "0", "start": 0, @@ -938,12 +1088,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1402, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1414, "end": 0, "raw": "4", "start": 0, @@ -958,12 +1110,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1419, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1438, "end": 0, "raw": "true", "start": 0, @@ -974,16 +1128,19 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 1281, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 1281, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1302, "end": 0, "name": "singleSide", "start": 0, @@ -996,25 +1153,36 @@ description: Result of parsing gridfinity-baseplate.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create the other sides of the bin by using a circular pattern" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1444, "declaration": { + "commentStart": 1472, "end": 0, "id": { + "commentStart": 1472, "end": 0, "name": "axis000", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1482, "end": 0, "properties": [ { + "commentStart": 1486, "end": 0, "key": { + "commentStart": 1486, "end": 0, "name": "custom", "start": 0, @@ -1023,11 +1191,14 @@ description: Result of parsing gridfinity-baseplate.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1495, "end": 0, "properties": [ { + "commentStart": 1501, "end": 0, "key": { + "commentStart": 1501, "end": 0, "name": "axis", "start": 0, @@ -1036,8 +1207,10 @@ description: Result of parsing gridfinity-baseplate.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1508, "elements": [ { + "commentStart": 1509, "end": 0, "raw": "0.0", "start": 0, @@ -1049,6 +1222,7 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 1514, "end": 0, "raw": "1.0", "start": 0, @@ -1067,8 +1241,10 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 1524, "end": 0, "key": { + "commentStart": 1524, "end": 0, "name": "origin", "start": 0, @@ -1077,8 +1253,10 @@ description: Result of parsing gridfinity-baseplate.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1533, "elements": [ { + "commentStart": 1534, "end": 0, "name": "cornerRadius", "start": 0, @@ -1086,6 +1264,7 @@ description: Result of parsing gridfinity-baseplate.kcl "type": "Identifier" }, { + "commentStart": 1548, "end": 0, "name": "cornerRadius", "start": 0, @@ -1115,14 +1294,22 @@ description: Result of parsing gridfinity-baseplate.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// define an axis axis000" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1567, "declaration": { + "commentStart": 1606, "end": 0, "id": { + "commentStart": 1606, "end": 0, "name": "singleCorner", "start": 0, @@ -1133,6 +1320,7 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1677, "end": 0, "name": "angle", "start": 0, @@ -1140,6 +1328,7 @@ description: Result of parsing gridfinity-baseplate.kcl }, "arg": { "argument": { + "commentStart": 1686, "end": 0, "raw": "90", "start": 0, @@ -1150,6 +1339,7 @@ description: Result of parsing gridfinity-baseplate.kcl "suffix": "None" } }, + "commentStart": 1685, "end": 0, "operator": "-", "start": 0, @@ -1160,12 +1350,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1690, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1697, "end": 0, "name": "axis000", "start": 0, @@ -1175,11 +1367,13 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 1621, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 1621, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1191,12 +1385,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1652, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1661, "end": 0, "name": "cornerRadius", "start": 0, @@ -1206,16 +1402,19 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 1634, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 1634, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1646, "end": 0, "raw": "\"YZ\"", "start": 0, @@ -1226,11 +1425,13 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 1629, "end": 0, "name": "face", "start": 0, "type": "Identifier" }, + "commentStart": 1629, "end": 0, "start": 0, "type": "CallExpression", @@ -1242,14 +1443,22 @@ description: Result of parsing gridfinity-baseplate.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a single corner of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1705, "declaration": { + "commentStart": 1740, "end": 0, "id": { + "commentStart": 1740, "end": 0, "name": "corners", "start": 0, @@ -1260,12 +1469,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1787, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1800, "end": 0, "raw": "360", "start": 0, @@ -1280,14 +1491,17 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1807, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1814, "elements": [ { + "commentStart": 1815, "end": 0, "raw": "0", "start": 0, @@ -1299,6 +1513,7 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 1818, "end": 0, "raw": "0", "start": 0, @@ -1310,6 +1525,7 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 1821, "end": 0, "raw": "1", "start": 0, @@ -1330,16 +1546,20 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1827, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1836, "elements": [ { + "commentStart": 1837, "end": 0, "left": { + "commentStart": 1837, "end": 0, "name": "binLength", "start": 0, @@ -1348,6 +1568,7 @@ description: Result of parsing gridfinity-baseplate.kcl }, "operator": "/", "right": { + "commentStart": 1849, "end": 0, "raw": "2", "start": 0, @@ -1363,8 +1584,10 @@ description: Result of parsing gridfinity-baseplate.kcl "type": "BinaryExpression" }, { + "commentStart": 1852, "end": 0, "left": { + "commentStart": 1852, "end": 0, "name": "binLength", "start": 0, @@ -1373,6 +1596,7 @@ description: Result of parsing gridfinity-baseplate.kcl }, "operator": "/", "right": { + "commentStart": 1864, "end": 0, "raw": "2", "start": 0, @@ -1388,6 +1612,7 @@ description: Result of parsing gridfinity-baseplate.kcl "type": "BinaryExpression" }, { + "commentStart": 1867, "end": 0, "raw": "0", "start": 0, @@ -1408,12 +1633,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1873, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1885, "end": 0, "raw": "4", "start": 0, @@ -1428,12 +1655,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1890, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1909, "end": 0, "raw": "true", "start": 0, @@ -1444,16 +1673,19 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 1750, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 1750, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1771, "end": 0, "name": "singleCorner", "start": 0, @@ -1466,14 +1698,22 @@ description: Result of parsing gridfinity-baseplate.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create the corners of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1915, "declaration": { + "commentStart": 1961, "end": 0, "id": { + "commentStart": 1961, "end": 0, "name": "basePlateSides", "start": 0, @@ -1486,14 +1726,17 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 2016, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2023, "elements": [ { + "commentStart": 2024, "end": 0, "raw": "1.0", "start": 0, @@ -1505,6 +1748,7 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 2029, "end": 0, "raw": "0.0", "start": 0, @@ -1516,6 +1760,7 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 2034, "end": 0, "raw": "0.0", "start": 0, @@ -1536,12 +1781,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 2047, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2059, "end": 0, "name": "countBinWidth", "start": 0, @@ -1552,12 +1799,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 2081, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2092, "end": 0, "name": "binLength", "start": 0, @@ -1567,16 +1816,19 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 1978, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 1978, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2002, "end": 0, "name": "sides", "start": 0, @@ -1589,14 +1841,17 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 2138, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2145, "elements": [ { + "commentStart": 2146, "end": 0, "raw": "0.0", "start": 0, @@ -1608,6 +1863,7 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 2151, "end": 0, "raw": "1.0", "start": 0, @@ -1619,6 +1875,7 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 2156, "end": 0, "raw": "0.0", "start": 0, @@ -1639,12 +1896,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 2169, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2181, "end": 0, "name": "countBinLength", "start": 0, @@ -1655,12 +1914,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 2204, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2215, "end": 0, "name": "binLength", "start": 0, @@ -1670,11 +1931,13 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 2114, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 2114, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1682,11 +1945,13 @@ description: Result of parsing gridfinity-baseplate.kcl "unlabeled": null } ], + "commentStart": 1978, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 2231, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1709,14 +1974,22 @@ description: Result of parsing gridfinity-baseplate.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create the baseplate by patterning sides" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2298, "declaration": { + "commentStart": 2298, "end": 0, "id": { + "commentStart": 2298, "end": 0, "name": "basePlateCorners", "start": 0, @@ -1729,14 +2002,17 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 2357, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2364, "elements": [ { + "commentStart": 2365, "end": 0, "raw": "1.0", "start": 0, @@ -1748,6 +2024,7 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 2370, "end": 0, "raw": "0.0", "start": 0, @@ -1759,6 +2036,7 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 2375, "end": 0, "raw": "0.0", "start": 0, @@ -1779,12 +2057,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 2388, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2400, "end": 0, "name": "countBinWidth", "start": 0, @@ -1795,12 +2075,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 2422, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2433, "end": 0, "name": "binLength", "start": 0, @@ -1810,16 +2092,19 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 2317, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 2317, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2341, "end": 0, "name": "corners", "start": 0, @@ -1832,14 +2117,17 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 2479, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2486, "elements": [ { + "commentStart": 2487, "end": 0, "raw": "0.0", "start": 0, @@ -1851,6 +2139,7 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 2492, "end": 0, "raw": "1.0", "start": 0, @@ -1862,6 +2151,7 @@ description: Result of parsing gridfinity-baseplate.kcl } }, { + "commentStart": 2497, "end": 0, "raw": "0.0", "start": 0, @@ -1882,12 +2172,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 2510, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2522, "end": 0, "name": "countBinLength", "start": 0, @@ -1898,12 +2190,14 @@ description: Result of parsing gridfinity-baseplate.kcl { "type": "LabeledArg", "label": { + "commentStart": 2545, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2556, "end": 0, "name": "binLength", "start": 0, @@ -1913,11 +2207,13 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "callee": { + "commentStart": 2455, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 2455, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1925,6 +2221,7 @@ description: Result of parsing gridfinity-baseplate.kcl "unlabeled": null } ], + "commentStart": 2317, "end": 0, "start": 0, "type": "PipeExpression", @@ -1940,20 +2237,32 @@ description: Result of parsing gridfinity-baseplate.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 312, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Gridfinity Baseplate", + "// Gridfinity is a system to help you work more efficiently. This is a system invented by Zack Freedman. There are two main components the baseplate and the bins. The components are comprised of a matrix of squares. Allowing easy stacking and expansion", + "", + "", + "// Set units in millimeters (mm)" + ], "properties": [ { + "commentStart": 321, "end": 0, "key": { + "commentStart": 321, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -1962,6 +2271,7 @@ description: Result of parsing gridfinity-baseplate.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 341, "end": 0, "name": "mm", "start": 0, @@ -1975,172 +2285,16 @@ description: Result of parsing gridfinity-baseplate.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "4": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Number of bins in each direction", - "style": "line" - } - } - ], - "6": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "The total height of the baseplate is a summation of the vertical heights of the baseplate steps", - "style": "line" - } - } - ], - "7": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "define a function which builds the profile of the baseplate bin", - "style": "line" - } - } - ], - "8": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "extrude a single side of the bin", - "style": "line" - } - } - ], - "9": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create the other sides of the bin by using a circular pattern", - "style": "line" - } - } - ], - "10": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "define an axis axis000", - "style": "line" - } - } - ], - "11": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a single corner of the bin", - "style": "line" - } - } - ], - "12": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create the corners of the bin", - "style": "line" - } - } - ], - "13": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create the baseplate by patterning sides", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Gridfinity Baseplate", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Gridfinity is a system to help you work more efficiently. This is a system invented by Zack Freedman. There are two main components the baseplate and the bins. The components are comprised of a matrix of squares. Allowing easy stacking and expansion", - "style": "line" - } - }, - { + "commentStart": 344, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units in millimeters (mm)", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/gridfinity-bins-stacking-lip/ast.snap b/rust/kcl-lib/tests/kcl_samples/gridfinity-bins-stacking-lip/ast.snap index 116d661bd..8e6d5a9fe 100644 --- a/rust/kcl-lib/tests/kcl_samples/gridfinity-bins-stacking-lip/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/gridfinity-bins-stacking-lip/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "Ok": { "body": [ { + "commentStart": 442, "declaration": { + "commentStart": 464, "end": 0, "id": { + "commentStart": 464, "end": 0, "name": "binLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 476, "end": 0, "raw": "41.5", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 481, "declaration": { + "commentStart": 481, "end": 0, "id": { + "commentStart": 481, "end": 0, "name": "binHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 493, "end": 0, "raw": "7.0", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 497, "declaration": { + "commentStart": 497, "end": 0, "id": { + "commentStart": 497, "end": 0, "name": "binBaseLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 513, "end": 0, "raw": "2.95", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 518, "declaration": { + "commentStart": 518, "end": 0, "id": { + "commentStart": 518, "end": 0, "name": "binTol", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 527, "end": 0, "raw": "0.25", "start": 0, @@ -122,15 +141,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 532, "declaration": { + "commentStart": 532, "end": 0, "id": { + "commentStart": 532, "end": 0, "name": "binThk", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 541, "end": 0, "raw": "1.2", "start": 0, @@ -151,15 +174,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 545, "declaration": { + "commentStart": 545, "end": 0, "id": { + "commentStart": 545, "end": 0, "name": "cornerRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 560, "end": 0, "raw": "3.75", "start": 0, @@ -180,15 +207,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 565, "declaration": { + "commentStart": 565, "end": 0, "id": { + "commentStart": 565, "end": 0, "name": "firstStep", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 577, "end": 0, "raw": "0.8", "start": 0, @@ -209,15 +240,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 581, "declaration": { + "commentStart": 581, "end": 0, "id": { + "commentStart": 581, "end": 0, "name": "secondStep", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 594, "end": 0, "raw": "1.8", "start": 0, @@ -238,15 +273,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 598, "declaration": { + "commentStart": 598, "end": 0, "id": { + "commentStart": 598, "end": 0, "name": "thirdStep", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 610, "end": 0, "raw": "2.15", "start": 0, @@ -267,15 +306,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 615, "declaration": { + "commentStart": 615, "end": 0, "id": { + "commentStart": 615, "end": 0, "name": "magOuterDiam", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 630, "end": 0, "raw": "6.5", "start": 0, @@ -296,15 +339,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 634, "declaration": { + "commentStart": 634, "end": 0, "id": { + "commentStart": 634, "end": 0, "name": "magOffset", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 646, "end": 0, "raw": "4.8", "start": 0, @@ -325,15 +372,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 650, "declaration": { + "commentStart": 650, "end": 0, "id": { + "commentStart": 650, "end": 0, "name": "magDepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 661, "end": 0, "raw": "2.4", "start": 0, @@ -354,15 +405,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 665, "declaration": { + "commentStart": 665, "end": 0, "id": { + "commentStart": 665, "end": 0, "name": "lipRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 677, "end": 0, "raw": "0.5", "start": 0, @@ -383,15 +438,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 681, "declaration": { + "commentStart": 681, "end": 0, "id": { + "commentStart": 681, "end": 0, "name": "lipStep1", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 692, "end": 0, "raw": "1.4", "start": 0, @@ -412,15 +471,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 696, "declaration": { + "commentStart": 696, "end": 0, "id": { + "commentStart": 696, "end": 0, "name": "lipStep2", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 707, "end": 0, "raw": "1.2", "start": 0, @@ -441,15 +504,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 711, "declaration": { + "commentStart": 711, "end": 0, "id": { + "commentStart": 711, "end": 0, "name": "lipStep3", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 722, "end": 0, "raw": "0.7", "start": 0, @@ -470,15 +537,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 726, "declaration": { + "commentStart": 726, "end": 0, "id": { + "commentStart": 726, "end": 0, "name": "lipStep4", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 737, "end": 0, "raw": "1.8", "start": 0, @@ -499,15 +570,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 741, "declaration": { + "commentStart": 741, "end": 0, "id": { + "commentStart": 741, "end": 0, "name": "lipStep5", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 752, "end": 0, "raw": "1.9", "start": 0, @@ -528,15 +603,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 755, "declaration": { + "commentStart": 793, "end": 0, "id": { + "commentStart": 793, "end": 0, "name": "countBinWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 809, "end": 0, "raw": "2", "start": 0, @@ -552,20 +631,29 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Number of bins in each direction" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 811, "declaration": { + "commentStart": 811, "end": 0, "id": { + "commentStart": 811, "end": 0, "name": "countBinLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 828, "end": 0, "raw": "3", "start": 0, @@ -586,15 +674,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 830, "declaration": { + "commentStart": 830, "end": 0, "id": { + "commentStart": 830, "end": 0, "name": "countBinHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 847, "end": 0, "raw": "1", "start": 0, @@ -615,19 +707,25 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 848, "declaration": { + "commentStart": 949, "end": 0, "id": { + "commentStart": 949, "end": 0, "name": "height", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 958, "end": 0, "left": { + "commentStart": 958, "end": 0, "left": { + "commentStart": 958, "end": 0, "name": "firstStep", "start": 0, @@ -636,6 +734,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 970, "end": 0, "name": "secondStep", "start": 0, @@ -648,6 +747,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 983, "end": 0, "name": "thirdStep", "start": 0, @@ -663,28 +763,41 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// The total height of the baseplate is a summation of the vertical heights of the baseplate steps" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 993, "declaration": { + "commentStart": 993, "end": 0, "id": { + "commentStart": 993, "end": 0, "name": "lipHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1005, "end": 0, "left": { + "commentStart": 1005, "end": 0, "left": { + "commentStart": 1005, "end": 0, "left": { + "commentStart": 1005, "end": 0, "left": { + "commentStart": 1005, "end": 0, "name": "lipStep1", "start": 0, @@ -693,6 +806,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 1016, "end": 0, "name": "lipStep2", "start": 0, @@ -705,6 +819,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 1027, "end": 0, "name": "lipStep3", "start": 0, @@ -717,6 +832,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 1038, "end": 0, "name": "lipStep4", "start": 0, @@ -729,6 +845,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 1049, "end": 0, "name": "lipStep5", "start": 0, @@ -749,9 +866,12 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 1057, "declaration": { + "commentStart": 1129, "end": 0, "id": { + "commentStart": 1129, "end": 0, "name": "face", "start": 0, @@ -761,9 +881,12 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "body": { "body": [ { + "commentStart": 1145, "declaration": { + "commentStart": 1145, "end": 0, "id": { + "commentStart": 1145, "end": 0, "name": "faceSketch", "start": 0, @@ -774,6 +897,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 1172, "end": 0, "name": "plane", "start": 0, @@ -782,11 +906,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 1158, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1158, "end": 0, "start": 0, "type": "CallExpression", @@ -795,10 +921,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 1201, "elements": [ { + "commentStart": 1202, "end": 0, "left": { + "commentStart": 1202, "end": 0, "name": "binBaseLength", "start": 0, @@ -807,6 +936,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 1218, "end": 0, "name": "binTol", "start": 0, @@ -818,6 +948,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 1226, "end": 0, "raw": "0", "start": 0, @@ -835,6 +966,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "ArrayExpression" }, { + "commentStart": 1230, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -842,11 +974,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 1186, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1186, "end": 0, "start": 0, "type": "CallExpression", @@ -857,12 +991,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 1246, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1255, "end": 0, "name": "height", "start": 0, @@ -872,11 +1008,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 1240, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1240, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -888,6 +1026,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 1276, "end": 0, "name": "length", "start": 0, @@ -895,12 +1034,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "arg": { "argument": { + "commentStart": 1286, "end": 0, "name": "binBaseLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1285, "end": 0, "operator": "-", "start": 0, @@ -910,11 +1051,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 1270, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1270, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -924,11 +1067,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 1328, "end": 0, "properties": [ { + "commentStart": 1330, "end": 0, "key": { + "commentStart": 1330, "end": 0, "name": "angle", "start": 0, @@ -938,6 +1084,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1339, "end": 0, "raw": "45", "start": 0, @@ -948,6 +1095,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "suffix": "None" } }, + "commentStart": 1338, "end": 0, "operator": "-", "start": 0, @@ -956,8 +1104,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 1343, "end": 0, "key": { + "commentStart": 1343, "end": 0, "name": "length", "start": 0, @@ -966,6 +1116,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1352, "end": 0, "name": "thirdStep", "start": 0, @@ -979,6 +1130,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "ObjectExpression" }, { + "commentStart": 1365, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -986,11 +1138,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 1308, "end": 0, "name": "angledLineOfYLength", "start": 0, "type": "Identifier" }, + "commentStart": 1308, "end": 0, "start": 0, "type": "CallExpression", @@ -1001,6 +1155,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 1381, "end": 0, "name": "length", "start": 0, @@ -1008,12 +1163,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "arg": { "argument": { + "commentStart": 1391, "end": 0, "name": "secondStep", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1390, "end": 0, "operator": "-", "start": 0, @@ -1023,11 +1180,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 1375, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1375, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1037,11 +1196,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 1430, "end": 0, "properties": [ { + "commentStart": 1432, "end": 0, "key": { + "commentStart": 1432, "end": 0, "name": "angle", "start": 0, @@ -1051,6 +1213,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1441, "end": 0, "raw": "45", "start": 0, @@ -1061,6 +1224,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "suffix": "None" } }, + "commentStart": 1440, "end": 0, "operator": "-", "start": 0, @@ -1069,8 +1233,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 1445, "end": 0, "key": { + "commentStart": 1445, "end": 0, "name": "length", "start": 0, @@ -1079,6 +1245,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1454, "end": 0, "name": "firstStep", "start": 0, @@ -1092,6 +1259,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "ObjectExpression" }, { + "commentStart": 1467, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1099,11 +1267,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 1410, "end": 0, "name": "angledLineOfYLength", "start": 0, "type": "Identifier" }, + "commentStart": 1410, "end": 0, "start": 0, "type": "CallExpression", @@ -1112,17 +1282,20 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [], "callee": { + "commentStart": 1477, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1477, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1158, "end": 0, "start": 0, "type": "PipeExpression", @@ -1139,26 +1312,31 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, { "argument": { + "commentStart": 1494, "end": 0, "name": "faceSketch", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1487, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 1141, "end": 0, "start": 0 }, + "commentStart": 1133, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 1134, "end": 0, "name": "plane", "start": 0, @@ -1175,14 +1353,22 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// define a function which builds the profile of the baseplate bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1506, "declaration": { + "commentStart": 1544, "end": 0, "id": { + "commentStart": 1544, "end": 0, "name": "singleSide", "start": 0, @@ -1193,14 +1379,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 1622, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1631, "end": 0, "left": { + "commentStart": 1631, "end": 0, "name": "binLength", "start": 0, @@ -1209,8 +1398,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "-", "right": { + "commentStart": 1644, "end": 0, "left": { + "commentStart": 1644, "end": 0, "name": "cornerRadius", "start": 0, @@ -1219,6 +1410,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 1659, "end": 0, "raw": "2", "start": 0, @@ -1240,11 +1432,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 1557, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1557, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1256,14 +1450,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 1588, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1597, "end": 0, "left": { + "commentStart": 1597, "end": 0, "name": "cornerRadius", "start": 0, @@ -1272,6 +1469,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 1612, "end": 0, "name": "binTol", "start": 0, @@ -1285,16 +1483,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 1570, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 1570, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1582, "end": 0, "raw": "\"YZ\"", "start": 0, @@ -1305,11 +1506,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 1565, "end": 0, "name": "face", "start": 0, "type": "Identifier" }, + "commentStart": 1565, "end": 0, "start": 0, "type": "CallExpression", @@ -1321,14 +1524,22 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// extrude a single side of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1662, "declaration": { + "commentStart": 1729, "end": 0, "id": { + "commentStart": 1729, "end": 0, "name": "sides", "start": 0, @@ -1339,12 +1550,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 1772, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1785, "end": 0, "raw": "360", "start": 0, @@ -1359,14 +1572,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 1792, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1799, "elements": [ { + "commentStart": 1800, "end": 0, "raw": "0", "start": 0, @@ -1378,6 +1594,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 1803, "end": 0, "raw": "0", "start": 0, @@ -1389,6 +1606,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 1806, "end": 0, "raw": "1", "start": 0, @@ -1409,18 +1627,23 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 1812, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1821, "elements": [ { + "commentStart": 1828, "end": 0, "left": { + "commentStart": 1828, "end": 0, "left": { + "commentStart": 1828, "end": 0, "name": "binLength", "start": 0, @@ -1429,8 +1652,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 1840, "end": 0, "left": { + "commentStart": 1840, "end": 0, "raw": "2", "start": 0, @@ -1443,6 +1668,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 1844, "end": 0, "name": "binTol", "start": 0, @@ -1459,6 +1685,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "/", "right": { + "commentStart": 1854, "end": 0, "raw": "2", "start": 0, @@ -1474,10 +1701,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 1862, "end": 0, "left": { + "commentStart": 1862, "end": 0, "left": { + "commentStart": 1862, "end": 0, "name": "binLength", "start": 0, @@ -1486,8 +1716,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 1874, "end": 0, "left": { + "commentStart": 1874, "end": 0, "raw": "2", "start": 0, @@ -1500,6 +1732,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 1878, "end": 0, "name": "binTol", "start": 0, @@ -1516,6 +1749,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "/", "right": { + "commentStart": 1888, "end": 0, "raw": "2", "start": 0, @@ -1531,6 +1765,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 1895, "end": 0, "raw": "0", "start": 0, @@ -1551,12 +1786,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 1904, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1916, "end": 0, "raw": "4", "start": 0, @@ -1571,12 +1808,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 1921, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1940, "end": 0, "raw": "true", "start": 0, @@ -1587,16 +1826,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 1737, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 1737, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1758, "end": 0, "name": "singleSide", "start": 0, @@ -1609,25 +1851,36 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create the other sides of the bin by using a circular pattern" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1946, "declaration": { + "commentStart": 1974, "end": 0, "id": { + "commentStart": 1974, "end": 0, "name": "axis000", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1984, "end": 0, "properties": [ { + "commentStart": 1988, "end": 0, "key": { + "commentStart": 1988, "end": 0, "name": "custom", "start": 0, @@ -1636,11 +1889,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1997, "end": 0, "properties": [ { + "commentStart": 2003, "end": 0, "key": { + "commentStart": 2003, "end": 0, "name": "axis", "start": 0, @@ -1649,8 +1905,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2010, "elements": [ { + "commentStart": 2011, "end": 0, "raw": "0.0", "start": 0, @@ -1662,6 +1920,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 2016, "end": 0, "raw": "1.0", "start": 0, @@ -1680,8 +1939,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 2026, "end": 0, "key": { + "commentStart": 2026, "end": 0, "name": "origin", "start": 0, @@ -1690,10 +1951,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2035, "elements": [ { + "commentStart": 2043, "end": 0, "left": { + "commentStart": 2043, "end": 0, "name": "cornerRadius", "start": 0, @@ -1702,6 +1966,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 2058, "end": 0, "name": "binTol", "start": 0, @@ -1713,8 +1978,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 2072, "end": 0, "left": { + "commentStart": 2072, "end": 0, "name": "cornerRadius", "start": 0, @@ -1723,6 +1990,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 2087, "end": 0, "name": "binTol", "start": 0, @@ -1756,14 +2024,22 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// define an axis axis000" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2105, "declaration": { + "commentStart": 2144, "end": 0, "id": { + "commentStart": 2144, "end": 0, "name": "singleCorner", "start": 0, @@ -1774,6 +2050,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2224, "end": 0, "name": "angle", "start": 0, @@ -1781,6 +2058,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "arg": { "argument": { + "commentStart": 2233, "end": 0, "raw": "90", "start": 0, @@ -1791,6 +2069,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "suffix": "None" } }, + "commentStart": 2232, "end": 0, "operator": "-", "start": 0, @@ -1801,12 +2080,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2237, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2244, "end": 0, "name": "axis000", "start": 0, @@ -1816,11 +2097,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 2159, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 2159, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1832,14 +2115,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2190, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2199, "end": 0, "left": { + "commentStart": 2199, "end": 0, "name": "cornerRadius", "start": 0, @@ -1848,6 +2134,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 2214, "end": 0, "name": "binTol", "start": 0, @@ -1861,16 +2148,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 2172, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 2172, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2184, "end": 0, "raw": "\"YZ\"", "start": 0, @@ -1881,11 +2171,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 2167, "end": 0, "name": "face", "start": 0, "type": "Identifier" }, + "commentStart": 2167, "end": 0, "start": 0, "type": "CallExpression", @@ -1897,14 +2189,22 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a single corner of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2252, "declaration": { + "commentStart": 2287, "end": 0, "id": { + "commentStart": 2287, "end": 0, "name": "corners", "start": 0, @@ -1915,12 +2215,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2334, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2347, "end": 0, "raw": "360", "start": 0, @@ -1935,14 +2237,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2354, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2361, "elements": [ { + "commentStart": 2362, "end": 0, "raw": "0", "start": 0, @@ -1954,6 +2259,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 2365, "end": 0, "raw": "0", "start": 0, @@ -1965,6 +2271,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 2368, "end": 0, "raw": "1", "start": 0, @@ -1985,18 +2292,23 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2374, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2383, "elements": [ { + "commentStart": 2390, "end": 0, "left": { + "commentStart": 2390, "end": 0, "left": { + "commentStart": 2390, "end": 0, "name": "binLength", "start": 0, @@ -2005,8 +2317,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 2402, "end": 0, "left": { + "commentStart": 2402, "end": 0, "raw": "2", "start": 0, @@ -2019,6 +2333,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 2406, "end": 0, "name": "binTol", "start": 0, @@ -2035,6 +2350,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "/", "right": { + "commentStart": 2416, "end": 0, "raw": "2", "start": 0, @@ -2050,10 +2366,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 2424, "end": 0, "left": { + "commentStart": 2424, "end": 0, "left": { + "commentStart": 2424, "end": 0, "name": "binLength", "start": 0, @@ -2062,8 +2381,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 2436, "end": 0, "left": { + "commentStart": 2436, "end": 0, "raw": "2", "start": 0, @@ -2076,6 +2397,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 2440, "end": 0, "name": "binTol", "start": 0, @@ -2092,6 +2414,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "/", "right": { + "commentStart": 2450, "end": 0, "raw": "2", "start": 0, @@ -2107,6 +2430,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 2457, "end": 0, "raw": "0", "start": 0, @@ -2127,12 +2451,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2466, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2478, "end": 0, "raw": "4", "start": 0, @@ -2147,12 +2473,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2483, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2502, "end": 0, "raw": "true", "start": 0, @@ -2163,16 +2491,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 2297, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 2297, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2318, "end": 0, "name": "singleCorner", "start": 0, @@ -2185,14 +2516,22 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create the corners of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2508, "declaration": { + "commentStart": 2510, "end": 0, "id": { + "commentStart": 2510, "end": 0, "name": "singleBinFill", "start": 0, @@ -2203,6 +2542,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 2540, "end": 0, "raw": "\"XY\"", "start": 0, @@ -2212,11 +2552,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 2526, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2526, "end": 0, "start": 0, "type": "CallExpression", @@ -2225,10 +2567,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 2566, "elements": [ { + "commentStart": 2575, "end": 0, "left": { + "commentStart": 2575, "end": 0, "name": "binBaseLength", "start": 0, @@ -2237,6 +2582,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 2591, "end": 0, "name": "binTol", "start": 0, @@ -2248,8 +2594,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 2606, "end": 0, "left": { + "commentStart": 2606, "end": 0, "name": "binBaseLength", "start": 0, @@ -2258,6 +2606,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 2622, "end": 0, "name": "binTol", "start": 0, @@ -2275,6 +2624,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "ArrayExpression" }, { + "commentStart": 2637, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2282,11 +2632,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 2551, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2551, "end": 0, "start": 0, "type": "CallExpression", @@ -2297,16 +2649,20 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2650, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2656, "elements": [ { + "commentStart": 2657, "end": 0, "left": { + "commentStart": 2657, "end": 0, "name": "binLength", "start": 0, @@ -2315,8 +2671,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "-", "right": { + "commentStart": 2670, "end": 0, "left": { + "commentStart": 2670, "end": 0, "name": "binBaseLength", "start": 0, @@ -2325,6 +2683,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 2686, "end": 0, "raw": "2", "start": 0, @@ -2344,6 +2703,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 2690, "end": 0, "raw": "0", "start": 0, @@ -2364,12 +2724,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2694, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2700, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2379,11 +2741,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 2645, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2645, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2395,14 +2759,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2720, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2726, "elements": [ { + "commentStart": 2727, "end": 0, "raw": "0", "start": 0, @@ -2414,8 +2781,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 2730, "end": 0, "left": { + "commentStart": 2730, "end": 0, "name": "binLength", "start": 0, @@ -2424,8 +2793,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "-", "right": { + "commentStart": 2743, "end": 0, "left": { + "commentStart": 2743, "end": 0, "name": "binBaseLength", "start": 0, @@ -2434,6 +2805,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 2759, "end": 0, "raw": "2", "start": 0, @@ -2462,12 +2834,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2764, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2770, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2477,11 +2851,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 2715, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2715, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2493,6 +2869,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2791, "end": 0, "name": "endAbsolute", "start": 0, @@ -2501,6 +2878,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "arg": { "arguments": [ { + "commentStart": 2819, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2508,11 +2886,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 2805, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 2805, "end": 0, "start": 0, "type": "CallExpression", @@ -2522,12 +2902,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2823, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2829, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2537,11 +2919,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 2785, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2785, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2553,12 +2937,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2850, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2856, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2568,11 +2954,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 2844, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2844, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2584,12 +2972,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2879, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2888, "end": 0, "name": "height", "start": 0, @@ -2599,11 +2989,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 2871, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2871, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2615,12 +3007,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2916, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2925, "end": 0, "name": "firstStep", "start": 0, @@ -2631,16 +3025,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 2943, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2950, "elements": [ { "arguments": [ { + "commentStart": 2981, "end": 0, "name": "line000", "start": 0, @@ -2649,11 +3046,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 2961, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 2961, "end": 0, "start": 0, "type": "CallExpression", @@ -2662,6 +3061,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 3024, "end": 0, "name": "line000", "start": 0, @@ -2670,11 +3070,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 3000, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 3000, "end": 0, "start": 0, "type": "CallExpression", @@ -2683,6 +3085,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 3063, "end": 0, "name": "line002", "start": 0, @@ -2691,11 +3094,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 3043, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 3043, "end": 0, "start": 0, "type": "CallExpression", @@ -2704,6 +3109,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 3106, "end": 0, "name": "line002", "start": 0, @@ -2712,11 +3118,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 3082, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 3082, "end": 0, "start": 0, "type": "CallExpression", @@ -2731,11 +3139,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 2901, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 2901, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2743,6 +3153,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "unlabeled": null } ], + "commentStart": 2526, "end": 0, "start": 0, "type": "PipeExpression", @@ -2758,9 +3169,12 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 3130, "declaration": { + "commentStart": 3132, "end": 0, "id": { + "commentStart": 3132, "end": 0, "name": "magCutout000", "start": 0, @@ -2771,6 +3185,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 3161, "end": 0, "name": "singleBinFill", "start": 0, @@ -2778,6 +3193,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "Identifier" }, { + "commentStart": 3176, "end": 0, "raw": "\"start\"", "start": 0, @@ -2787,11 +3203,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 3147, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 3147, "end": 0, "start": 0, "type": "CallExpression", @@ -2802,25 +3220,31 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 3205, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3214, "elements": [ { + "commentStart": 3225, "end": 0, "left": { + "commentStart": 3225, "end": 0, "left": { "argument": { + "commentStart": 3226, "end": 0, "name": "magOffset", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3225, "end": 0, "operator": "-", "start": 0, @@ -2829,6 +3253,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "-", "right": { + "commentStart": 3238, "end": 0, "name": "binBaseLength", "start": 0, @@ -2841,6 +3266,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "-", "right": { + "commentStart": 3254, "end": 0, "name": "binTol", "start": 0, @@ -2852,10 +3278,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 3271, "end": 0, "left": { + "commentStart": 3271, "end": 0, "left": { + "commentStart": 3271, "end": 0, "name": "magOffset", "start": 0, @@ -2864,6 +3293,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 3283, "end": 0, "name": "binBaseLength", "start": 0, @@ -2876,6 +3306,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 3299, "end": 0, "name": "binTol", "start": 0, @@ -2896,14 +3327,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 3323, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3332, "end": 0, "left": { + "commentStart": 3332, "end": 0, "name": "magOuterDiam", "start": 0, @@ -2912,6 +3346,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "/", "right": { + "commentStart": 3347, "end": 0, "raw": "2", "start": 0, @@ -2929,11 +3364,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 3190, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 3190, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2945,12 +3382,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 3387, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3400, "end": 0, "raw": "360", "start": 0, @@ -2965,25 +3404,31 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 3412, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3421, "elements": [ { + "commentStart": 3433, "end": 0, "left": { + "commentStart": 3433, "end": 0, "left": { "argument": { + "commentStart": 3434, "end": 0, "name": "binLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3433, "end": 0, "operator": "-", "start": 0, @@ -2992,8 +3437,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 3446, "end": 0, "left": { + "commentStart": 3446, "end": 0, "raw": "2", "start": 0, @@ -3006,6 +3453,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 3450, "end": 0, "name": "binTol", "start": 0, @@ -3022,6 +3470,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "/", "right": { + "commentStart": 3460, "end": 0, "raw": "2", "start": 0, @@ -3037,10 +3486,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 3473, "end": 0, "left": { + "commentStart": 3473, "end": 0, "left": { + "commentStart": 3473, "end": 0, "name": "binLength", "start": 0, @@ -3049,8 +3501,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 3485, "end": 0, "left": { + "commentStart": 3485, "end": 0, "raw": "2", "start": 0, @@ -3063,6 +3517,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 3489, "end": 0, "name": "binTol", "start": 0, @@ -3079,6 +3534,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "/", "right": { + "commentStart": 3499, "end": 0, "raw": "2", "start": 0, @@ -3103,12 +3559,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 3518, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3530, "end": 0, "raw": "4", "start": 0, @@ -3123,12 +3581,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 3540, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3559, "end": 0, "raw": "true", "start": 0, @@ -3139,11 +3599,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 3361, "end": 0, "name": "patternCircular2d", "start": 0, "type": "Identifier" }, + "commentStart": 3361, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3155,6 +3617,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 3584, "end": 0, "name": "length", "start": 0, @@ -3162,12 +3625,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "arg": { "argument": { + "commentStart": 3594, "end": 0, "name": "magDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3593, "end": 0, "operator": "-", "start": 0, @@ -3177,11 +3642,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 3576, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 3576, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3189,11 +3656,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "unlabeled": null } ], + "commentStart": 3147, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "3": [ { + "commentStart": 3603, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3221,9 +3690,12 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 3649, "declaration": { + "commentStart": 3649, "end": 0, "id": { + "commentStart": 3649, "end": 0, "name": "binSides", "start": 0, @@ -3236,14 +3708,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 3698, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3705, "elements": [ { + "commentStart": 3706, "end": 0, "raw": "1.0", "start": 0, @@ -3255,6 +3730,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 3711, "end": 0, "raw": "0.0", "start": 0, @@ -3266,6 +3742,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 3716, "end": 0, "raw": "0.0", "start": 0, @@ -3286,12 +3763,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 3729, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3741, "end": 0, "name": "countBinWidth", "start": 0, @@ -3302,14 +3781,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 3763, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3774, "end": 0, "left": { + "commentStart": 3774, "end": 0, "name": "binLength", "start": 0, @@ -3318,8 +3800,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 3786, "end": 0, "left": { + "commentStart": 3786, "end": 0, "name": "binTol", "start": 0, @@ -3328,6 +3812,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 3795, "end": 0, "raw": "2", "start": 0, @@ -3349,16 +3834,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 3660, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 3660, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 3684, "end": 0, "name": "sides", "start": 0, @@ -3371,14 +3859,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 3833, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3840, "elements": [ { + "commentStart": 3841, "end": 0, "raw": "0.0", "start": 0, @@ -3390,6 +3881,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 3846, "end": 0, "raw": "1.0", "start": 0, @@ -3401,6 +3893,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 3851, "end": 0, "raw": "0.0", "start": 0, @@ -3421,12 +3914,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 3864, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3876, "end": 0, "name": "countBinLength", "start": 0, @@ -3437,14 +3932,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 3899, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3910, "end": 0, "left": { + "commentStart": 3910, "end": 0, "name": "binLength", "start": 0, @@ -3453,8 +3951,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 3922, "end": 0, "left": { + "commentStart": 3922, "end": 0, "name": "binTol", "start": 0, @@ -3463,6 +3963,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 3931, "end": 0, "raw": "2", "start": 0, @@ -3484,11 +3985,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 3809, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 3809, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3496,11 +3999,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "unlabeled": null } ], + "commentStart": 3660, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 3939, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3528,9 +4033,12 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 4006, "declaration": { + "commentStart": 4006, "end": 0, "id": { + "commentStart": 4006, "end": 0, "name": "binCorners", "start": 0, @@ -3543,14 +4051,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4059, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4066, "elements": [ { + "commentStart": 4067, "end": 0, "raw": "1.0", "start": 0, @@ -3562,6 +4073,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 4072, "end": 0, "raw": "0.0", "start": 0, @@ -3573,6 +4085,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 4077, "end": 0, "raw": "0.0", "start": 0, @@ -3593,12 +4106,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4090, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4102, "end": 0, "name": "countBinWidth", "start": 0, @@ -3609,14 +4124,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4124, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4135, "end": 0, "left": { + "commentStart": 4135, "end": 0, "name": "binLength", "start": 0, @@ -3625,8 +4143,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 4147, "end": 0, "left": { + "commentStart": 4147, "end": 0, "name": "binTol", "start": 0, @@ -3635,6 +4155,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 4156, "end": 0, "raw": "2", "start": 0, @@ -3656,16 +4177,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 4019, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 4019, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 4043, "end": 0, "name": "corners", "start": 0, @@ -3678,14 +4202,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4194, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4201, "elements": [ { + "commentStart": 4202, "end": 0, "raw": "0.0", "start": 0, @@ -3697,6 +4224,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 4207, "end": 0, "raw": "1.0", "start": 0, @@ -3708,6 +4236,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 4212, "end": 0, "raw": "0.0", "start": 0, @@ -3728,12 +4257,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4225, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4237, "end": 0, "name": "countBinLength", "start": 0, @@ -3744,14 +4275,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4260, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4271, "end": 0, "left": { + "commentStart": 4271, "end": 0, "name": "binLength", "start": 0, @@ -3760,8 +4294,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 4283, "end": 0, "left": { + "commentStart": 4283, "end": 0, "name": "binTol", "start": 0, @@ -3770,6 +4306,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 4292, "end": 0, "raw": "2", "start": 0, @@ -3791,11 +4328,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 4170, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 4170, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3803,11 +4342,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "unlabeled": null } ], + "commentStart": 4019, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 4300, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3835,9 +4376,12 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 4358, "declaration": { + "commentStart": 4358, "end": 0, "id": { + "commentStart": 4358, "end": 0, "name": "binFill", "start": 0, @@ -3850,14 +4394,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4414, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4421, "elements": [ { + "commentStart": 4422, "end": 0, "raw": "1.0", "start": 0, @@ -3869,6 +4416,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 4427, "end": 0, "raw": "0.0", "start": 0, @@ -3880,6 +4428,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 4432, "end": 0, "raw": "0.0", "start": 0, @@ -3900,12 +4449,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4445, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4457, "end": 0, "name": "countBinWidth", "start": 0, @@ -3916,14 +4467,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4479, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4490, "end": 0, "left": { + "commentStart": 4490, "end": 0, "name": "binLength", "start": 0, @@ -3932,8 +4486,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 4502, "end": 0, "left": { + "commentStart": 4502, "end": 0, "name": "binTol", "start": 0, @@ -3942,6 +4498,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 4511, "end": 0, "raw": "2", "start": 0, @@ -3963,16 +4520,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 4368, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 4368, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 4392, "end": 0, "name": "singleBinFill", "start": 0, @@ -3985,14 +4545,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4549, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4556, "elements": [ { + "commentStart": 4557, "end": 0, "raw": "0.0", "start": 0, @@ -4004,6 +4567,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 4562, "end": 0, "raw": "1.0", "start": 0, @@ -4015,6 +4579,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 4567, "end": 0, "raw": "0.0", "start": 0, @@ -4035,12 +4600,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4580, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4592, "end": 0, "name": "countBinLength", "start": 0, @@ -4051,14 +4618,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4615, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4626, "end": 0, "left": { + "commentStart": 4626, "end": 0, "name": "binLength", "start": 0, @@ -4067,8 +4637,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 4638, "end": 0, "left": { + "commentStart": 4638, "end": 0, "name": "binTol", "start": 0, @@ -4077,6 +4649,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 4647, "end": 0, "raw": "2", "start": 0, @@ -4098,11 +4671,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 4525, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 4525, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4110,11 +4685,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "unlabeled": null } ], + "commentStart": 4368, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 4655, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4142,9 +4719,12 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 4660, "declaration": { + "commentStart": 4660, "end": 0, "id": { + "commentStart": 4660, "end": 0, "name": "binTop", "start": 0, @@ -4159,12 +4739,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4701, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4710, "end": 0, "name": "height", "start": 0, @@ -4174,16 +4756,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 4683, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 4683, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 4695, "end": 0, "raw": "\"XY\"", "start": 0, @@ -4194,11 +4779,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 4669, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 4669, "end": 0, "start": 0, "type": "CallExpression", @@ -4207,8 +4794,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 4739, "elements": [ { + "commentStart": 4740, "end": 0, "raw": "0", "start": 0, @@ -4220,6 +4809,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 4743, "end": 0, "raw": "0", "start": 0, @@ -4237,6 +4827,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "ArrayExpression" }, { + "commentStart": 4747, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4244,11 +4835,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 4724, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 4724, "end": 0, "start": 0, "type": "CallExpression", @@ -4259,16 +4852,20 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4761, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4771, "end": 0, "left": { + "commentStart": 4771, "end": 0, "left": { + "commentStart": 4771, "end": 0, "name": "binLength", "start": 0, @@ -4277,8 +4874,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 4783, "end": 0, "left": { + "commentStart": 4783, "end": 0, "raw": "2", "start": 0, @@ -4291,6 +4890,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 4787, "end": 0, "name": "binTol", "start": 0, @@ -4307,6 +4907,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 4797, "end": 0, "name": "countBinWidth", "start": 0, @@ -4321,12 +4922,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4812, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4818, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4336,11 +4939,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 4755, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 4755, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4352,16 +4957,20 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4839, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4849, "end": 0, "left": { + "commentStart": 4849, "end": 0, "left": { + "commentStart": 4849, "end": 0, "name": "binLength", "start": 0, @@ -4370,8 +4979,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 4861, "end": 0, "left": { + "commentStart": 4861, "end": 0, "raw": "2", "start": 0, @@ -4384,6 +4995,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 4865, "end": 0, "name": "binTol", "start": 0, @@ -4400,6 +5012,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 4875, "end": 0, "name": "countBinLength", "start": 0, @@ -4414,12 +5027,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4891, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4897, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4429,11 +5044,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 4833, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 4833, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4445,6 +5062,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4918, "end": 0, "name": "endAbsolute", "start": 0, @@ -4453,6 +5071,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "arg": { "arguments": [ { + "commentStart": 4946, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4460,11 +5079,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 4932, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 4932, "end": 0, "start": 0, "type": "CallExpression", @@ -4474,12 +5095,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4950, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4956, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4489,11 +5112,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 4912, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 4912, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4505,12 +5130,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 4977, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4983, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4520,11 +5147,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 4971, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 4971, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4536,14 +5165,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 5006, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5015, "end": 0, "left": { + "commentStart": 5015, "end": 0, "name": "binHeight", "start": 0, @@ -4552,6 +5184,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 5027, "end": 0, "name": "countBinHeight", "start": 0, @@ -4565,11 +5198,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 4998, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 4998, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4581,12 +5216,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 5063, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5072, "end": 0, "name": "cornerRadius", "start": 0, @@ -4597,16 +5234,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 5093, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5100, "elements": [ { "arguments": [ { + "commentStart": 5131, "end": 0, "name": "line010", "start": 0, @@ -4615,11 +5255,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 5111, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 5111, "end": 0, "start": 0, "type": "CallExpression", @@ -4628,6 +5270,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 5174, "end": 0, "name": "line010", "start": 0, @@ -4636,11 +5279,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 5150, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 5150, "end": 0, "start": 0, "type": "CallExpression", @@ -4649,6 +5294,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 5213, "end": 0, "name": "line012", "start": 0, @@ -4657,11 +5303,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 5193, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 5193, "end": 0, "start": 0, "type": "CallExpression", @@ -4670,6 +5318,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 5256, "end": 0, "name": "line012", "start": 0, @@ -4678,11 +5327,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 5232, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 5232, "end": 0, "start": 0, "type": "CallExpression", @@ -4697,11 +5348,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 5048, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 5048, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4713,14 +5366,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 5292, "end": 0, "name": "faces", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5300, "elements": [ { + "commentStart": 5301, "end": 0, "raw": "\"end\"", "start": 0, @@ -4738,12 +5394,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 5309, "end": 0, "name": "thickness", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5321, "end": 0, "name": "binThk", "start": 0, @@ -4753,11 +5411,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 5286, "end": 0, "name": "shell", "start": 0, "type": "Identifier" }, + "commentStart": 5286, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4765,11 +5425,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "unlabeled": null } ], + "commentStart": 4669, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "8": [ { + "commentStart": 5328, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4797,9 +5459,12 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 5397, "declaration": { + "commentStart": 5400, "end": 0, "id": { + "commentStart": 5400, "end": 0, "name": "lipFace", "start": 0, @@ -4809,9 +5474,12 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "body": { "body": [ { + "commentStart": 5419, "declaration": { + "commentStart": 5419, "end": 0, "id": { + "commentStart": 5419, "end": 0, "name": "faceSketch", "start": 0, @@ -4822,6 +5490,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 5446, "end": 0, "name": "plane", "start": 0, @@ -4830,11 +5499,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 5432, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 5432, "end": 0, "start": 0, "type": "CallExpression", @@ -4843,8 +5514,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 5475, "elements": [ { + "commentStart": 5476, "end": 0, "raw": "0", "start": 0, @@ -4856,6 +5529,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 5479, "end": 0, "raw": "0", "start": 0, @@ -4873,6 +5547,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "ArrayExpression" }, { + "commentStart": 5483, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4880,11 +5555,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 5460, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 5460, "end": 0, "start": 0, "type": "CallExpression", @@ -4895,14 +5572,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 5550, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5556, "elements": [ { + "commentStart": 5557, "end": 0, "raw": "0.0", "start": 0, @@ -4914,6 +5594,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 5562, "end": 0, "raw": "5.792893", "start": 0, @@ -4934,12 +5615,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 5573, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5579, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4949,11 +5632,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 5545, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5545, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4963,11 +5648,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 5600, "end": 0, "properties": [ { + "commentStart": 5611, "end": 0, "key": { + "commentStart": 5611, "end": 0, "name": "angleStart", "start": 0, @@ -4976,6 +5664,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5624, "end": 0, "raw": "180.0", "start": 0, @@ -4988,8 +5677,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 5640, "end": 0, "key": { + "commentStart": 5640, "end": 0, "name": "angleEnd", "start": 0, @@ -4998,6 +5689,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5651, "end": 0, "raw": "45.0", "start": 0, @@ -5010,8 +5702,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 5666, "end": 0, "key": { + "commentStart": 5666, "end": 0, "name": "radius", "start": 0, @@ -5020,6 +5714,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5675, "end": 0, "raw": "0.500000", "start": 0, @@ -5037,12 +5732,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "ObjectExpression" }, { + "commentStart": 5694, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 5697, "end": 0, "start": 0, "type": "TagDeclarator", @@ -5051,11 +5748,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 5596, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 5596, "end": 0, "start": 0, "type": "CallExpression", @@ -5066,14 +5765,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 5785, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5791, "elements": [ { + "commentStart": 5792, "end": 0, "raw": "1.046447", "start": 0, @@ -5086,6 +5788,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, { "argument": { + "commentStart": 5803, "end": 0, "raw": "1.046447", "start": 0, @@ -5096,6 +5799,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "suffix": "None" } }, + "commentStart": 5802, "end": 0, "operator": "-", "start": 0, @@ -5112,12 +5816,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 5814, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5820, "end": 0, "start": 0, "type": "TagDeclarator", @@ -5127,11 +5833,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 5780, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5780, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5143,6 +5851,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 5843, "end": 0, "name": "length", "start": 0, @@ -5150,12 +5859,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "arg": { "argument": { + "commentStart": 5853, "end": 0, "name": "lipStep4", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 5852, "end": 0, "operator": "-", "start": 0, @@ -5165,11 +5876,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 5837, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 5837, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5179,11 +5892,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 5890, "end": 0, "properties": [ { + "commentStart": 5892, "end": 0, "key": { + "commentStart": 5892, "end": 0, "name": "angle", "start": 0, @@ -5193,6 +5909,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 5901, "end": 0, "raw": "45", "start": 0, @@ -5203,6 +5920,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "suffix": "None" } }, + "commentStart": 5900, "end": 0, "operator": "-", "start": 0, @@ -5211,8 +5929,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 5905, "end": 0, "key": { + "commentStart": 5905, "end": 0, "name": "length", "start": 0, @@ -5221,6 +5941,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5914, "end": 0, "name": "lipStep3", "start": 0, @@ -5234,6 +5955,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "ObjectExpression" }, { + "commentStart": 5926, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -5241,11 +5963,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 5870, "end": 0, "name": "angledLineOfYLength", "start": 0, "type": "Identifier" }, + "commentStart": 5870, "end": 0, "start": 0, "type": "CallExpression", @@ -5256,6 +5980,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 5942, "end": 0, "name": "length", "start": 0, @@ -5263,12 +5988,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "arg": { "argument": { + "commentStart": 5952, "end": 0, "name": "lipStep2", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 5951, "end": 0, "operator": "-", "start": 0, @@ -5278,11 +6005,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 5936, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 5936, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5292,11 +6021,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [ { + "commentStart": 5989, "end": 0, "properties": [ { + "commentStart": 5991, "end": 0, "key": { + "commentStart": 5991, "end": 0, "name": "angle", "start": 0, @@ -5306,6 +6038,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 6000, "end": 0, "raw": "135", "start": 0, @@ -5316,6 +6049,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "suffix": "None" } }, + "commentStart": 5999, "end": 0, "operator": "-", "start": 0, @@ -5324,8 +6058,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6005, "end": 0, "key": { + "commentStart": 6005, "end": 0, "name": "length", "start": 0, @@ -5334,6 +6070,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 6014, "end": 0, "name": "lipStep1", "start": 0, @@ -5347,6 +6084,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "ObjectExpression" }, { + "commentStart": 6026, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -5354,11 +6092,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 5969, "end": 0, "name": "angledLineOfYLength", "start": 0, "type": "Identifier" }, + "commentStart": 5969, "end": 0, "start": 0, "type": "CallExpression", @@ -5367,22 +6107,26 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "arguments": [], "callee": { + "commentStart": 6036, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 6036, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 5432, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 5489, "end": 0, "start": 0, "type": "NonCodeNode", @@ -5395,6 +6139,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl ], "3": [ { + "commentStart": 5709, "end": 0, "start": 0, "type": "NonCodeNode", @@ -5423,26 +6168,31 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, { "argument": { + "commentStart": 6053, "end": 0, "name": "faceSketch", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 6046, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 5415, "end": 0, "start": 0 }, + "commentStart": 5407, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 5408, "end": 0, "name": "plane", "start": 0, @@ -5464,20 +6214,26 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 6065, "declaration": { + "commentStart": 6067, "end": 0, "id": { + "commentStart": 6067, "end": 0, "name": "plane000", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6078, "end": 0, "properties": [ { + "commentStart": 6082, "end": 0, "key": { + "commentStart": 6082, "end": 0, "name": "plane", "start": 0, @@ -5486,11 +6242,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 6090, "end": 0, "properties": [ { + "commentStart": 6096, "end": 0, "key": { + "commentStart": 6096, "end": 0, "name": "origin", "start": 0, @@ -5499,8 +6258,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 6105, "elements": [ { + "commentStart": 6113, "end": 0, "name": "cornerRadius", "start": 0, @@ -5508,6 +6269,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "Identifier" }, { + "commentStart": 6133, "end": 0, "raw": "0.0", "start": 0, @@ -5519,8 +6281,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6144, "end": 0, "left": { + "commentStart": 6144, "end": 0, "name": "height", "start": 0, @@ -5529,8 +6293,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 6153, "end": 0, "left": { + "commentStart": 6153, "end": 0, "name": "binHeight", "start": 0, @@ -5539,6 +6305,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 6165, "end": 0, "name": "countBinHeight", "start": 0, @@ -5561,8 +6328,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6191, "end": 0, "key": { + "commentStart": 6191, "end": 0, "name": "xAxis", "start": 0, @@ -5571,8 +6340,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 6199, "elements": [ { + "commentStart": 6200, "end": 0, "raw": "0.0", "start": 0, @@ -5584,6 +6355,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6205, "end": 0, "raw": "1.0", "start": 0, @@ -5595,6 +6367,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6210, "end": 0, "raw": "0.0", "start": 0, @@ -5613,8 +6386,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6220, "end": 0, "key": { + "commentStart": 6220, "end": 0, "name": "yAxis", "start": 0, @@ -5623,8 +6398,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 6228, "elements": [ { + "commentStart": 6229, "end": 0, "raw": "0.0", "start": 0, @@ -5636,6 +6413,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6234, "end": 0, "raw": "0.0", "start": 0, @@ -5647,6 +6425,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6239, "end": 0, "raw": "1.0", "start": 0, @@ -5665,8 +6444,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6249, "end": 0, "key": { + "commentStart": 6249, "end": 0, "name": "zAxis", "start": 0, @@ -5675,8 +6456,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 6257, "elements": [ { + "commentStart": 6258, "end": 0, "raw": "1.0", "start": 0, @@ -5688,6 +6471,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6263, "end": 0, "raw": "0.0", "start": 0, @@ -5699,6 +6483,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6268, "end": 0, "raw": "0.0", "start": 0, @@ -5737,20 +6522,26 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 6278, "declaration": { + "commentStart": 6280, "end": 0, "id": { + "commentStart": 6280, "end": 0, "name": "plane001", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6291, "end": 0, "properties": [ { + "commentStart": 6295, "end": 0, "key": { + "commentStart": 6295, "end": 0, "name": "plane", "start": 0, @@ -5759,11 +6550,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 6303, "end": 0, "properties": [ { + "commentStart": 6309, "end": 0, "key": { + "commentStart": 6309, "end": 0, "name": "origin", "start": 0, @@ -5772,8 +6566,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 6318, "elements": [ { + "commentStart": 6326, "end": 0, "raw": "0.0", "start": 0, @@ -5785,6 +6581,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6337, "end": 0, "name": "cornerRadius", "start": 0, @@ -5792,8 +6589,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "Identifier" }, { + "commentStart": 6357, "end": 0, "left": { + "commentStart": 6357, "end": 0, "name": "height", "start": 0, @@ -5802,8 +6601,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 6366, "end": 0, "left": { + "commentStart": 6366, "end": 0, "name": "binHeight", "start": 0, @@ -5812,6 +6613,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 6378, "end": 0, "name": "countBinHeight", "start": 0, @@ -5834,8 +6636,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6404, "end": 0, "key": { + "commentStart": 6404, "end": 0, "name": "xAxis", "start": 0, @@ -5844,8 +6648,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 6412, "elements": [ { + "commentStart": 6413, "end": 0, "raw": "1.0", "start": 0, @@ -5857,6 +6663,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6418, "end": 0, "raw": "0.0", "start": 0, @@ -5868,6 +6675,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6423, "end": 0, "raw": "0.0", "start": 0, @@ -5886,8 +6694,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6433, "end": 0, "key": { + "commentStart": 6433, "end": 0, "name": "yAxis", "start": 0, @@ -5896,8 +6706,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 6441, "elements": [ { + "commentStart": 6442, "end": 0, "raw": "0.0", "start": 0, @@ -5909,6 +6721,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6447, "end": 0, "raw": "0.0", "start": 0, @@ -5920,6 +6733,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6452, "end": 0, "raw": "1.0", "start": 0, @@ -5938,8 +6752,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6462, "end": 0, "key": { + "commentStart": 6462, "end": 0, "name": "zAxis", "start": 0, @@ -5948,8 +6764,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 6470, "elements": [ { + "commentStart": 6471, "end": 0, "raw": "0.0", "start": 0, @@ -5961,6 +6779,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6476, "end": 0, "raw": "1.0", "start": 0, @@ -5972,6 +6791,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6481, "end": 0, "raw": "0.0", "start": 0, @@ -6010,20 +6830,26 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 6491, "declaration": { + "commentStart": 6493, "end": 0, "id": { + "commentStart": 6493, "end": 0, "name": "plane002", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6504, "end": 0, "properties": [ { + "commentStart": 6508, "end": 0, "key": { + "commentStart": 6508, "end": 0, "name": "plane", "start": 0, @@ -6032,11 +6858,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 6516, "end": 0, "properties": [ { + "commentStart": 6522, "end": 0, "key": { + "commentStart": 6522, "end": 0, "name": "origin", "start": 0, @@ -6045,12 +6874,16 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 6531, "elements": [ { + "commentStart": 6539, "end": 0, "left": { + "commentStart": 6539, "end": 0, "left": { + "commentStart": 6539, "end": 0, "name": "countBinWidth", "start": 0, @@ -6059,8 +6892,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 6556, "end": 0, "left": { + "commentStart": 6556, "end": 0, "name": "binLength", "start": 0, @@ -6069,8 +6904,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 6568, "end": 0, "left": { + "commentStart": 6568, "end": 0, "raw": "2", "start": 0, @@ -6083,6 +6920,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 6572, "end": 0, "name": "binTol", "start": 0, @@ -6103,6 +6941,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "-", "right": { + "commentStart": 6582, "end": 0, "name": "cornerRadius", "start": 0, @@ -6114,6 +6953,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 6602, "end": 0, "raw": "0.0", "start": 0, @@ -6125,8 +6965,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6613, "end": 0, "left": { + "commentStart": 6613, "end": 0, "name": "height", "start": 0, @@ -6135,8 +6977,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 6622, "end": 0, "left": { + "commentStart": 6622, "end": 0, "name": "binHeight", "start": 0, @@ -6145,6 +6989,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 6634, "end": 0, "name": "countBinHeight", "start": 0, @@ -6167,8 +7012,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6660, "end": 0, "key": { + "commentStart": 6660, "end": 0, "name": "xAxis", "start": 0, @@ -6177,8 +7024,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 6668, "elements": [ { + "commentStart": 6669, "end": 0, "raw": "0.0", "start": 0, @@ -6190,6 +7039,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6674, "end": 0, "raw": "1.0", "start": 0, @@ -6201,6 +7051,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6679, "end": 0, "raw": "0.0", "start": 0, @@ -6219,8 +7070,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6689, "end": 0, "key": { + "commentStart": 6689, "end": 0, "name": "yAxis", "start": 0, @@ -6229,8 +7082,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 6697, "elements": [ { + "commentStart": 6698, "end": 0, "raw": "0.0", "start": 0, @@ -6242,6 +7097,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6703, "end": 0, "raw": "0.0", "start": 0, @@ -6253,6 +7109,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6708, "end": 0, "raw": "1.0", "start": 0, @@ -6271,8 +7128,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6718, "end": 0, "key": { + "commentStart": 6718, "end": 0, "name": "zAxis", "start": 0, @@ -6281,8 +7140,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 6726, "elements": [ { + "commentStart": 6727, "end": 0, "raw": "1.0", "start": 0, @@ -6294,6 +7155,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6732, "end": 0, "raw": "0.0", "start": 0, @@ -6305,6 +7167,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 6737, "end": 0, "raw": "0.0", "start": 0, @@ -6343,9 +7206,12 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "VariableDeclaration" }, { + "commentStart": 6747, "declaration": { + "commentStart": 6796, "end": 0, "id": { + "commentStart": 6796, "end": 0, "name": "lipSingleLength", "start": 0, @@ -6356,18 +7222,23 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 6841, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6850, "end": 0, "left": { + "commentStart": 6850, "end": 0, "left": { + "commentStart": 6850, "end": 0, "left": { + "commentStart": 6850, "end": 0, "name": "binLength", "start": 0, @@ -6376,6 +7247,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 6862, "end": 0, "name": "countBinWidth", "start": 0, @@ -6388,8 +7260,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "-", "right": { + "commentStart": 6879, "end": 0, "left": { + "commentStart": 6879, "end": 0, "raw": "2", "start": 0, @@ -6402,6 +7276,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 6883, "end": 0, "name": "cornerRadius", "start": 0, @@ -6418,10 +7293,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 6899, "end": 0, "left": { + "commentStart": 6899, "end": 0, "left": { + "commentStart": 6899, "end": 0, "raw": "2", "start": 0, @@ -6434,6 +7312,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 6903, "end": 0, "name": "binTol", "start": 0, @@ -6446,6 +7325,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 6912, "end": 0, "name": "countBinWidth", "start": 0, @@ -6463,11 +7343,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 6814, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 6814, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6475,6 +7357,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "unlabeled": { "arguments": [ { + "commentStart": 6830, "end": 0, "name": "plane000", "start": 0, @@ -6483,11 +7366,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 6822, "end": 0, "name": "lipFace", "start": 0, "type": "Identifier" }, + "commentStart": 6822, "end": 0, "start": 0, "type": "CallExpression", @@ -6499,14 +7384,22 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// extrude a single side of the lip of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 6926, "declaration": { + "commentStart": 6975, "end": 0, "id": { + "commentStart": 6975, "end": 0, "name": "lipSingleWidth", "start": 0, @@ -6517,18 +7410,23 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 7019, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7028, "end": 0, "left": { + "commentStart": 7028, "end": 0, "left": { + "commentStart": 7028, "end": 0, "left": { + "commentStart": 7028, "end": 0, "name": "binLength", "start": 0, @@ -6537,6 +7435,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 7040, "end": 0, "name": "countBinLength", "start": 0, @@ -6549,8 +7448,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "-", "right": { + "commentStart": 7058, "end": 0, "left": { + "commentStart": 7058, "end": 0, "raw": "2", "start": 0, @@ -6563,6 +7464,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 7062, "end": 0, "name": "cornerRadius", "start": 0, @@ -6579,10 +7481,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 7078, "end": 0, "left": { + "commentStart": 7078, "end": 0, "left": { + "commentStart": 7078, "end": 0, "raw": "2", "start": 0, @@ -6595,6 +7500,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 7082, "end": 0, "name": "binTol", "start": 0, @@ -6607,6 +7513,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 7091, "end": 0, "name": "countBinLength", "start": 0, @@ -6624,11 +7531,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 6992, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 6992, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6636,6 +7545,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "unlabeled": { "arguments": [ { + "commentStart": 7008, "end": 0, "name": "plane001", "start": 0, @@ -6644,11 +7554,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 7000, "end": 0, "name": "lipFace", "start": 0, "type": "Identifier" }, + "commentStart": 7000, "end": 0, "start": 0, "type": "CallExpression", @@ -6660,14 +7572,22 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// extrude a single side of the lip of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 7106, "declaration": { + "commentStart": 7174, "end": 0, "id": { + "commentStart": 7174, "end": 0, "name": "lipLengths", "start": 0, @@ -6678,12 +7598,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 7227, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7240, "end": 0, "raw": "360", "start": 0, @@ -6698,14 +7620,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 7247, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7254, "elements": [ { + "commentStart": 7255, "end": 0, "raw": "0", "start": 0, @@ -6717,6 +7642,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 7258, "end": 0, "raw": "0", "start": 0, @@ -6728,6 +7654,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 7261, "end": 0, "raw": "1", "start": 0, @@ -6748,20 +7675,26 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 7267, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7276, "elements": [ { + "commentStart": 7283, "end": 0, "left": { + "commentStart": 7283, "end": 0, "left": { + "commentStart": 7283, "end": 0, "left": { + "commentStart": 7283, "end": 0, "name": "binLength", "start": 0, @@ -6770,8 +7703,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 7295, "end": 0, "left": { + "commentStart": 7295, "end": 0, "raw": "2", "start": 0, @@ -6784,6 +7719,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 7299, "end": 0, "name": "binTol", "start": 0, @@ -6800,6 +7736,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "/", "right": { + "commentStart": 7309, "end": 0, "raw": "2", "start": 0, @@ -6816,6 +7753,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 7313, "end": 0, "name": "countBinWidth", "start": 0, @@ -6827,12 +7765,16 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 7333, "end": 0, "left": { + "commentStart": 7333, "end": 0, "left": { + "commentStart": 7333, "end": 0, "left": { + "commentStart": 7333, "end": 0, "name": "binLength", "start": 0, @@ -6841,8 +7783,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 7345, "end": 0, "left": { + "commentStart": 7345, "end": 0, "raw": "2", "start": 0, @@ -6855,6 +7799,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 7349, "end": 0, "name": "binTol", "start": 0, @@ -6871,6 +7816,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "/", "right": { + "commentStart": 7359, "end": 0, "raw": "2", "start": 0, @@ -6887,6 +7833,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 7363, "end": 0, "name": "countBinLength", "start": 0, @@ -6898,6 +7845,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 7383, "end": 0, "raw": "0", "start": 0, @@ -6918,12 +7866,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 7392, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7404, "end": 0, "raw": "2", "start": 0, @@ -6938,12 +7888,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 7409, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7428, "end": 0, "raw": "true", "start": 0, @@ -6954,16 +7906,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 7187, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 7187, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 7208, "end": 0, "name": "lipSingleLength", "start": 0, @@ -6976,14 +7931,22 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create the other sides of the lips by using a circular pattern" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 7434, "declaration": { + "commentStart": 7502, "end": 0, "id": { + "commentStart": 7502, "end": 0, "name": "lipWidths", "start": 0, @@ -6994,12 +7957,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 7553, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7566, "end": 0, "raw": "360", "start": 0, @@ -7014,14 +7979,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 7573, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7580, "elements": [ { + "commentStart": 7581, "end": 0, "raw": "0", "start": 0, @@ -7033,6 +8001,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 7584, "end": 0, "raw": "0", "start": 0, @@ -7044,6 +8013,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 7587, "end": 0, "raw": "1", "start": 0, @@ -7064,20 +8034,26 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 7593, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7602, "elements": [ { + "commentStart": 7609, "end": 0, "left": { + "commentStart": 7609, "end": 0, "left": { + "commentStart": 7609, "end": 0, "left": { + "commentStart": 7609, "end": 0, "name": "binLength", "start": 0, @@ -7086,8 +8062,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 7621, "end": 0, "left": { + "commentStart": 7621, "end": 0, "raw": "2", "start": 0, @@ -7100,6 +8078,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 7625, "end": 0, "name": "binTol", "start": 0, @@ -7116,6 +8095,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "/", "right": { + "commentStart": 7635, "end": 0, "raw": "2", "start": 0, @@ -7132,6 +8112,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 7639, "end": 0, "name": "countBinWidth", "start": 0, @@ -7143,12 +8124,16 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 7659, "end": 0, "left": { + "commentStart": 7659, "end": 0, "left": { + "commentStart": 7659, "end": 0, "left": { + "commentStart": 7659, "end": 0, "name": "binLength", "start": 0, @@ -7157,8 +8142,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 7671, "end": 0, "left": { + "commentStart": 7671, "end": 0, "raw": "2", "start": 0, @@ -7171,6 +8158,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 7675, "end": 0, "name": "binTol", "start": 0, @@ -7187,6 +8175,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "/", "right": { + "commentStart": 7685, "end": 0, "raw": "2", "start": 0, @@ -7203,6 +8192,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 7689, "end": 0, "name": "countBinLength", "start": 0, @@ -7214,6 +8204,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 7709, "end": 0, "raw": "0", "start": 0, @@ -7234,12 +8225,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 7718, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7730, "end": 0, "raw": "2", "start": 0, @@ -7254,12 +8247,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 7735, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7754, "end": 0, "raw": "true", "start": 0, @@ -7270,16 +8265,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 7514, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 7514, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 7535, "end": 0, "name": "lipSingleWidth", "start": 0, @@ -7292,25 +8290,36 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create the other sides of the lips by using a circular pattern" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 7760, "declaration": { + "commentStart": 7788, "end": 0, "id": { + "commentStart": 7788, "end": 0, "name": "axis001", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 7798, "end": 0, "properties": [ { + "commentStart": 7802, "end": 0, "key": { + "commentStart": 7802, "end": 0, "name": "custom", "start": 0, @@ -7319,11 +8328,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7811, "end": 0, "properties": [ { + "commentStart": 7817, "end": 0, "key": { + "commentStart": 7817, "end": 0, "name": "axis", "start": 0, @@ -7332,8 +8344,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7824, "elements": [ { + "commentStart": 7825, "end": 0, "raw": "0.0", "start": 0, @@ -7345,6 +8359,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 7830, "end": 0, "raw": "1.0", "start": 0, @@ -7363,8 +8378,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 7840, "end": 0, "key": { + "commentStart": 7840, "end": 0, "name": "origin", "start": 0, @@ -7373,8 +8390,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7849, "elements": [ { + "commentStart": 7850, "end": 0, "name": "cornerRadius", "start": 0, @@ -7382,6 +8401,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "Identifier" }, { + "commentStart": 7864, "end": 0, "name": "cornerRadius", "start": 0, @@ -7411,14 +8431,22 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// define an axis axis000" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 7883, "declaration": { + "commentStart": 7922, "end": 0, "id": { + "commentStart": 7922, "end": 0, "name": "lipSingleLengthCorner", "start": 0, @@ -7429,6 +8457,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 7973, "end": 0, "name": "angle", "start": 0, @@ -7436,6 +8465,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "arg": { "argument": { + "commentStart": 7982, "end": 0, "raw": "90", "start": 0, @@ -7446,6 +8476,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "suffix": "None" } }, + "commentStart": 7981, "end": 0, "operator": "-", "start": 0, @@ -7456,12 +8487,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 7986, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7993, "end": 0, "name": "axis001", "start": 0, @@ -7471,11 +8504,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 7946, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 7946, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7483,6 +8518,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "unlabeled": { "arguments": [ { + "commentStart": 7962, "end": 0, "name": "plane000", "start": 0, @@ -7491,11 +8527,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 7954, "end": 0, "name": "lipFace", "start": 0, "type": "Identifier" }, + "commentStart": 7954, "end": 0, "start": 0, "type": "CallExpression", @@ -7507,14 +8545,22 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a single corner of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 8001, "declaration": { + "commentStart": 8040, "end": 0, "id": { + "commentStart": 8040, "end": 0, "name": "lipSingleWidthCorner", "start": 0, @@ -7525,12 +8571,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 8090, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8098, "end": 0, "raw": "90", "start": 0, @@ -7545,12 +8593,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 8102, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8109, "end": 0, "name": "axis001", "start": 0, @@ -7560,11 +8610,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 8063, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 8063, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7572,6 +8624,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "unlabeled": { "arguments": [ { + "commentStart": 8079, "end": 0, "name": "plane002", "start": 0, @@ -7580,11 +8633,13 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 8071, "end": 0, "name": "lipFace", "start": 0, "type": "Identifier" }, + "commentStart": 8071, "end": 0, "start": 0, "type": "CallExpression", @@ -7596,14 +8651,22 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a single corner of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 8117, "declaration": { + "commentStart": 8152, "end": 0, "id": { + "commentStart": 8152, "end": 0, "name": "lipCorners000", "start": 0, @@ -7614,12 +8677,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 8214, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8227, "end": 0, "raw": "360", "start": 0, @@ -7634,14 +8699,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 8234, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8241, "elements": [ { + "commentStart": 8242, "end": 0, "raw": "0", "start": 0, @@ -7653,6 +8721,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 8245, "end": 0, "raw": "0", "start": 0, @@ -7664,6 +8733,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 8248, "end": 0, "raw": "1", "start": 0, @@ -7684,20 +8754,26 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 8254, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8263, "elements": [ { + "commentStart": 8270, "end": 0, "left": { + "commentStart": 8270, "end": 0, "left": { + "commentStart": 8270, "end": 0, "left": { + "commentStart": 8270, "end": 0, "name": "binLength", "start": 0, @@ -7706,8 +8782,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 8282, "end": 0, "left": { + "commentStart": 8282, "end": 0, "raw": "2", "start": 0, @@ -7720,6 +8798,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 8286, "end": 0, "name": "binTol", "start": 0, @@ -7736,6 +8815,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "/", "right": { + "commentStart": 8296, "end": 0, "raw": "2", "start": 0, @@ -7752,6 +8832,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 8300, "end": 0, "name": "countBinWidth", "start": 0, @@ -7763,12 +8844,16 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 8320, "end": 0, "left": { + "commentStart": 8320, "end": 0, "left": { + "commentStart": 8320, "end": 0, "left": { + "commentStart": 8320, "end": 0, "name": "binLength", "start": 0, @@ -7777,8 +8862,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 8332, "end": 0, "left": { + "commentStart": 8332, "end": 0, "raw": "2", "start": 0, @@ -7791,6 +8878,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 8336, "end": 0, "name": "binTol", "start": 0, @@ -7807,6 +8895,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "/", "right": { + "commentStart": 8346, "end": 0, "raw": "2", "start": 0, @@ -7823,6 +8912,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 8350, "end": 0, "name": "countBinLength", "start": 0, @@ -7834,6 +8924,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 8370, "end": 0, "raw": "0", "start": 0, @@ -7854,12 +8945,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 8379, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8391, "end": 0, "raw": "2", "start": 0, @@ -7874,12 +8967,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 8396, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8415, "end": 0, "raw": "true", "start": 0, @@ -7890,16 +8985,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 8168, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 8168, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 8189, "end": 0, "name": "lipSingleLengthCorner", "start": 0, @@ -7912,14 +9010,22 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create the corners of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 8421, "declaration": { + "commentStart": 8456, "end": 0, "id": { + "commentStart": 8456, "end": 0, "name": "lipCorners001", "start": 0, @@ -7930,12 +9036,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 8517, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8530, "end": 0, "raw": "360", "start": 0, @@ -7950,14 +9058,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 8537, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8544, "elements": [ { + "commentStart": 8545, "end": 0, "raw": "0", "start": 0, @@ -7969,6 +9080,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 8548, "end": 0, "raw": "0", "start": 0, @@ -7980,6 +9092,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } }, { + "commentStart": 8551, "end": 0, "raw": "1", "start": 0, @@ -8000,20 +9113,26 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 8557, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8566, "elements": [ { + "commentStart": 8573, "end": 0, "left": { + "commentStart": 8573, "end": 0, "left": { + "commentStart": 8573, "end": 0, "left": { + "commentStart": 8573, "end": 0, "name": "binLength", "start": 0, @@ -8022,8 +9141,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 8585, "end": 0, "left": { + "commentStart": 8585, "end": 0, "raw": "2", "start": 0, @@ -8036,6 +9157,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 8589, "end": 0, "name": "binTol", "start": 0, @@ -8052,6 +9174,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "/", "right": { + "commentStart": 8599, "end": 0, "raw": "2", "start": 0, @@ -8068,6 +9191,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 8603, "end": 0, "name": "countBinWidth", "start": 0, @@ -8079,12 +9203,16 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 8623, "end": 0, "left": { + "commentStart": 8623, "end": 0, "left": { + "commentStart": 8623, "end": 0, "left": { + "commentStart": 8623, "end": 0, "name": "binLength", "start": 0, @@ -8093,8 +9221,10 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "+", "right": { + "commentStart": 8635, "end": 0, "left": { + "commentStart": 8635, "end": 0, "raw": "2", "start": 0, @@ -8107,6 +9237,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 8639, "end": 0, "name": "binTol", "start": 0, @@ -8123,6 +9254,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "/", "right": { + "commentStart": 8649, "end": 0, "raw": "2", "start": 0, @@ -8139,6 +9271,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "operator": "*", "right": { + "commentStart": 8653, "end": 0, "name": "countBinLength", "start": 0, @@ -8150,6 +9283,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "BinaryExpression" }, { + "commentStart": 8673, "end": 0, "raw": "0", "start": 0, @@ -8170,12 +9304,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 8682, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8694, "end": 0, "raw": "2", "start": 0, @@ -8190,12 +9326,14 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl { "type": "LabeledArg", "label": { + "commentStart": 8699, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8718, "end": 0, "raw": "true", "start": 0, @@ -8206,16 +9344,19 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl } ], "callee": { + "commentStart": 8472, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 8472, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 8493, "end": 0, "name": "lipSingleWidthCorner", "start": 0, @@ -8228,25 +9369,42 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create the corners of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 410, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Gridfinity Bins With A Stacking Lip", + "// Gridfinity is a system to help you work more efficiently. This is a system invented by Zack Freedman. There are two main components the baseplate and the bins. The components are comprised of a matrix of squares. Allowing easy stacking and expansion. This Gridfinity bins version includes a lip to allowable stacking Gridfinity bins", + "", + "", + "// Set units in millimeters (mm)" + ], "properties": [ { + "commentStart": 419, "end": 0, "key": { + "commentStart": 419, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -8255,6 +9413,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 439, "end": 0, "name": "mm", "start": 0, @@ -8269,104 +9428,9 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl ], "nonCodeMeta": { "nonCodeNodes": { - "17": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Number of bins in each direction", - "style": "line" - } - } - ], - "20": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "The total height of the baseplate is a summation of the vertical heights of the baseplate steps", - "style": "line" - } - } - ], - "22": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "define a function which builds the profile of the baseplate bin", - "style": "line" - } - } - ], - "23": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "extrude a single side of the bin", - "style": "line" - } - } - ], - "24": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create the other sides of the bin by using a circular pattern", - "style": "line" - } - } - ], - "25": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "define an axis axis000", - "style": "line" - } - } - ], - "26": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a single corner of the bin", - "style": "line" - } - } - ], - "27": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create the corners of the bin", - "style": "line" - } - } - ], "28": [ { + "commentStart": 2508, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8377,6 +9441,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl ], "29": [ { + "commentStart": 3130, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8387,6 +9452,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl ], "35": [ { + "commentStart": 6065, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8397,6 +9463,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl ], "36": [ { + "commentStart": 6278, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8407,6 +9474,7 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl ], "37": [ { + "commentStart": 6491, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8414,172 +9482,17 @@ description: Result of parsing gridfinity-bins-stacking-lip.kcl "type": "newLine" } } - ], - "38": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "extrude a single side of the lip of the bin", - "style": "line" - } - } - ], - "39": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "extrude a single side of the lip of the bin", - "style": "line" - } - } - ], - "40": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create the other sides of the lips by using a circular pattern", - "style": "line" - } - } - ], - "41": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create the other sides of the lips by using a circular pattern", - "style": "line" - } - } - ], - "42": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "define an axis axis000", - "style": "line" - } - } - ], - "43": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a single corner of the bin", - "style": "line" - } - } - ], - "44": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a single corner of the bin", - "style": "line" - } - } - ], - "45": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create the corners of the bin", - "style": "line" - } - } - ], - "46": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create the corners of the bin", - "style": "line" - } - } ] }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Gridfinity Bins With A Stacking Lip", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Gridfinity is a system to help you work more efficiently. This is a system invented by Zack Freedman. There are two main components the baseplate and the bins. The components are comprised of a matrix of squares. Allowing easy stacking and expansion. This Gridfinity bins version includes a lip to allowable stacking Gridfinity bins", - "style": "line" - } - }, - { + "commentStart": 442, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units in millimeters (mm)", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/gridfinity-bins-stacking-lip/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/gridfinity-bins-stacking-lip/program_memory.snap index 78293dff1..1827c2330 100644 --- a/rust/kcl-lib/tests/kcl_samples/gridfinity-bins-stacking-lip/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/gridfinity-bins-stacking-lip/program_memory.snap @@ -5537,6 +5537,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -5549,6 +5550,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -5561,6 +5563,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -5573,6 +5576,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -5595,6 +5599,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -5619,6 +5624,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -5643,6 +5649,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -5667,6 +5674,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -5803,6 +5811,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -5815,6 +5824,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -5827,6 +5837,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -5839,6 +5850,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -5861,6 +5873,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -5885,6 +5898,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -5909,6 +5923,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -5933,6 +5948,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -6069,6 +6085,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -6081,6 +6098,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -6093,6 +6111,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -6105,6 +6124,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -6127,6 +6147,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -6151,6 +6172,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -6175,6 +6197,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -6199,6 +6222,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -6335,6 +6359,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -6347,6 +6372,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -6359,6 +6385,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -6371,6 +6398,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -6393,6 +6421,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -6417,6 +6446,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -6441,6 +6471,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -6465,6 +6496,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -6601,6 +6633,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -6613,6 +6646,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -6625,6 +6659,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -6637,6 +6672,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -6659,6 +6695,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -6683,6 +6720,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -6707,6 +6745,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -6731,6 +6770,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -6867,6 +6907,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -6879,6 +6920,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -6891,6 +6933,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -6903,6 +6946,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -6925,6 +6969,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -6949,6 +6994,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -6973,6 +7019,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -6997,6 +7044,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -12544,6 +12592,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4818, "end": 4826, "start": 4818, "type": "TagDeclarator", @@ -12556,6 +12605,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4897, "end": 4905, "start": 4897, "type": "TagDeclarator", @@ -12568,6 +12618,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4956, "end": 4964, "start": 4956, "type": "TagDeclarator", @@ -12580,6 +12631,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4983, "end": 4991, "start": 4983, "type": "TagDeclarator", @@ -12602,6 +12654,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 0.0 ], "tag": { + "commentStart": 4818, "end": 4826, "start": 4818, "type": "TagDeclarator", @@ -12626,6 +12679,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 0.0 ], "tag": { + "commentStart": 4897, "end": 4905, "start": 4897, "type": "TagDeclarator", @@ -12650,6 +12704,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 126.0 ], "tag": { + "commentStart": 4956, "end": 4964, "start": 4956, "type": "TagDeclarator", @@ -12674,6 +12729,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 126.0 ], "tag": { + "commentStart": 4983, "end": 4991, "start": 4983, "type": "TagDeclarator", @@ -13831,6 +13887,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -13843,6 +13900,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -13855,6 +13913,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -13912,6 +13971,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 0.0 ], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -13942,6 +14002,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc ], "radius": 0.5, "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -13966,6 +14027,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 6.1464 ], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -14163,6 +14225,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -14175,6 +14238,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -14187,6 +14251,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -14244,6 +14309,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 0.0 ], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -14274,6 +14340,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc ], "radius": 0.5, "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -14298,6 +14365,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 6.1464 ], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -14500,6 +14568,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -14512,6 +14581,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -14524,6 +14594,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -14581,6 +14652,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 0.0 ], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -14611,6 +14683,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc ], "radius": 0.5, "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -14635,6 +14708,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 6.1464 ], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -14832,6 +14906,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -14844,6 +14919,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -14856,6 +14932,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -14913,6 +14990,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 0.0 ], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -14943,6 +15021,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc ], "radius": 0.5, "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -14967,6 +15046,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 6.1464 ], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -15185,6 +15265,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -15197,6 +15278,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -15209,6 +15291,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -15266,6 +15349,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 0.0 ], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -15296,6 +15380,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc ], "radius": 0.5, "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -15320,6 +15405,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 6.1464 ], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -15517,6 +15603,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -15529,6 +15616,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -15541,6 +15629,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -15598,6 +15687,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 0.0 ], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -15628,6 +15718,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc ], "radius": 0.5, "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -15652,6 +15743,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 6.1464 ], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -15864,6 +15956,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -15876,6 +15969,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -15888,6 +15982,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -15945,6 +16040,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 0.0 ], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -15975,6 +16071,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc ], "radius": 0.5, "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -15999,6 +16096,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 6.1464 ], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -16196,6 +16294,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -16208,6 +16307,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -16220,6 +16320,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -16277,6 +16378,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 0.0 ], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -16307,6 +16409,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc ], "radius": 0.5, "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -16331,6 +16434,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 6.1464 ], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -16528,6 +16632,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -16540,6 +16645,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -16552,6 +16658,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -16609,6 +16716,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 0.0 ], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -16639,6 +16747,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc ], "radius": 0.5, "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -16663,6 +16772,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 6.1464 ], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -16860,6 +16970,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -16872,6 +16983,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -16884,6 +16996,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -16941,6 +17054,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 0.0 ], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -16971,6 +17085,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc ], "radius": 0.5, "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -16995,6 +17110,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 6.1464 ], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -17260,6 +17376,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -17272,6 +17389,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -17284,6 +17402,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -17341,6 +17460,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 0.0 ], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -17371,6 +17491,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc ], "radius": 0.5, "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -17395,6 +17516,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 6.1464 ], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -17592,6 +17714,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -17604,6 +17727,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -17616,6 +17740,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -17673,6 +17798,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 0.0 ], "tag": { + "commentStart": 5579, "end": 5587, "start": 5579, "type": "TagDeclarator", @@ -17703,6 +17829,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc ], "radius": 0.5, "tag": { + "commentStart": 5697, "end": 5704, "start": 5697, "type": "TagDeclarator", @@ -17727,6 +17854,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 6.1464 ], "tag": { + "commentStart": 5820, "end": 5828, "start": 5820, "type": "TagDeclarator", @@ -17992,6 +18120,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -18004,6 +18133,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -18016,6 +18146,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -18028,6 +18159,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -18050,6 +18182,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -18074,6 +18207,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -18098,6 +18232,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -18122,6 +18257,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -18356,6 +18492,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -18368,6 +18505,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -18380,6 +18518,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -18392,6 +18531,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -18414,6 +18554,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -18438,6 +18579,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -18462,6 +18604,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -18486,6 +18629,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -18720,6 +18864,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -18732,6 +18877,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -18744,6 +18890,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -18756,6 +18903,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -18778,6 +18926,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -18802,6 +18951,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -18826,6 +18976,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -18850,6 +19001,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -19084,6 +19236,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -19096,6 +19249,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -19108,6 +19262,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -19120,6 +19275,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -19142,6 +19298,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -19166,6 +19323,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -19190,6 +19348,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -19214,6 +19373,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -20870,6 +21030,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -20882,6 +21043,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -20894,6 +21056,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -20906,6 +21069,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", @@ -20928,6 +21092,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2700, "end": 2708, "start": 2700, "type": "TagDeclarator", @@ -20952,6 +21117,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 3.2 ], "tag": { + "commentStart": 2770, "end": 2778, "start": 2770, "type": "TagDeclarator", @@ -20976,6 +21142,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2829, "end": 2837, "start": 2829, "type": "TagDeclarator", @@ -21000,6 +21167,7 @@ description: Variables in memory after executing gridfinity-bins-stacking-lip.kc 38.8 ], "tag": { + "commentStart": 2856, "end": 2864, "start": 2856, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/kcl_samples/gridfinity-bins/ast.snap b/rust/kcl-lib/tests/kcl_samples/gridfinity-bins/ast.snap index 2090d2bbf..eb0ed8171 100644 --- a/rust/kcl-lib/tests/kcl_samples/gridfinity-bins/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/gridfinity-bins/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing gridfinity-bins.kcl "Ok": { "body": [ { + "commentStart": 339, "declaration": { + "commentStart": 361, "end": 0, "id": { + "commentStart": 361, "end": 0, "name": "binLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 373, "end": 0, "raw": "41.5", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing gridfinity-bins.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 378, "declaration": { + "commentStart": 378, "end": 0, "id": { + "commentStart": 378, "end": 0, "name": "binHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 390, "end": 0, "raw": "7.0", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 394, "declaration": { + "commentStart": 394, "end": 0, "id": { + "commentStart": 394, "end": 0, "name": "binBaseLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 410, "end": 0, "raw": "2.95", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 415, "declaration": { + "commentStart": 415, "end": 0, "id": { + "commentStart": 415, "end": 0, "name": "binTol", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 424, "end": 0, "raw": "0.25", "start": 0, @@ -122,15 +141,19 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 429, "declaration": { + "commentStart": 429, "end": 0, "id": { + "commentStart": 429, "end": 0, "name": "binThk", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 438, "end": 0, "raw": "1.2", "start": 0, @@ -151,15 +174,19 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 442, "declaration": { + "commentStart": 442, "end": 0, "id": { + "commentStart": 442, "end": 0, "name": "cornerRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 457, "end": 0, "raw": "3.75", "start": 0, @@ -180,15 +207,19 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 462, "declaration": { + "commentStart": 462, "end": 0, "id": { + "commentStart": 462, "end": 0, "name": "firstStep", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 474, "end": 0, "raw": "0.8", "start": 0, @@ -209,15 +240,19 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 478, "declaration": { + "commentStart": 478, "end": 0, "id": { + "commentStart": 478, "end": 0, "name": "secondStep", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 491, "end": 0, "raw": "1.8", "start": 0, @@ -238,15 +273,19 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 495, "declaration": { + "commentStart": 495, "end": 0, "id": { + "commentStart": 495, "end": 0, "name": "thirdStep", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 507, "end": 0, "raw": "2.15", "start": 0, @@ -267,15 +306,19 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 512, "declaration": { + "commentStart": 512, "end": 0, "id": { + "commentStart": 512, "end": 0, "name": "magOuterDiam", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 527, "end": 0, "raw": "6.5", "start": 0, @@ -296,15 +339,19 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 531, "declaration": { + "commentStart": 531, "end": 0, "id": { + "commentStart": 531, "end": 0, "name": "magOffset", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 543, "end": 0, "raw": "4.8", "start": 0, @@ -325,15 +372,19 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 547, "declaration": { + "commentStart": 547, "end": 0, "id": { + "commentStart": 547, "end": 0, "name": "magDepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 558, "end": 0, "raw": "2.4", "start": 0, @@ -354,15 +405,19 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 561, "declaration": { + "commentStart": 599, "end": 0, "id": { + "commentStart": 599, "end": 0, "name": "countBinWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 615, "end": 0, "raw": "2", "start": 0, @@ -378,20 +433,29 @@ description: Result of parsing gridfinity-bins.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Number of bins in each direction" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 617, "declaration": { + "commentStart": 617, "end": 0, "id": { + "commentStart": 617, "end": 0, "name": "countBinLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 634, "end": 0, "raw": "3", "start": 0, @@ -412,15 +476,19 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 636, "declaration": { + "commentStart": 636, "end": 0, "id": { + "commentStart": 636, "end": 0, "name": "countBinHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 653, "end": 0, "raw": "2", "start": 0, @@ -441,19 +509,25 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 654, "declaration": { + "commentStart": 755, "end": 0, "id": { + "commentStart": 755, "end": 0, "name": "height", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 764, "end": 0, "left": { + "commentStart": 764, "end": 0, "left": { + "commentStart": 764, "end": 0, "name": "firstStep", "start": 0, @@ -462,6 +536,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 776, "end": 0, "name": "secondStep", "start": 0, @@ -474,6 +549,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 789, "end": 0, "name": "thirdStep", "start": 0, @@ -489,14 +565,22 @@ description: Result of parsing gridfinity-bins.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// The total height of the baseplate is a summation of the vertical heights of the baseplate steps" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 798, "declaration": { + "commentStart": 870, "end": 0, "id": { + "commentStart": 870, "end": 0, "name": "face", "start": 0, @@ -506,9 +590,12 @@ description: Result of parsing gridfinity-bins.kcl "body": { "body": [ { + "commentStart": 886, "declaration": { + "commentStart": 886, "end": 0, "id": { + "commentStart": 886, "end": 0, "name": "faceSketch", "start": 0, @@ -519,6 +606,7 @@ description: Result of parsing gridfinity-bins.kcl { "arguments": [ { + "commentStart": 913, "end": 0, "name": "plane", "start": 0, @@ -527,11 +615,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 899, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 899, "end": 0, "start": 0, "type": "CallExpression", @@ -540,10 +630,13 @@ description: Result of parsing gridfinity-bins.kcl { "arguments": [ { + "commentStart": 942, "elements": [ { + "commentStart": 943, "end": 0, "left": { + "commentStart": 943, "end": 0, "name": "binBaseLength", "start": 0, @@ -552,6 +645,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 959, "end": 0, "name": "binTol", "start": 0, @@ -563,6 +657,7 @@ description: Result of parsing gridfinity-bins.kcl "type": "BinaryExpression" }, { + "commentStart": 967, "end": 0, "raw": "0", "start": 0, @@ -580,6 +675,7 @@ description: Result of parsing gridfinity-bins.kcl "type": "ArrayExpression" }, { + "commentStart": 971, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -587,11 +683,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 927, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 927, "end": 0, "start": 0, "type": "CallExpression", @@ -602,12 +700,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 987, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 996, "end": 0, "name": "height", "start": 0, @@ -617,11 +717,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 981, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 981, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -633,6 +735,7 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 1017, "end": 0, "name": "length", "start": 0, @@ -640,12 +743,14 @@ description: Result of parsing gridfinity-bins.kcl }, "arg": { "argument": { + "commentStart": 1027, "end": 0, "name": "binBaseLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1026, "end": 0, "operator": "-", "start": 0, @@ -655,11 +760,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 1011, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1011, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -669,11 +776,14 @@ description: Result of parsing gridfinity-bins.kcl { "arguments": [ { + "commentStart": 1069, "end": 0, "properties": [ { + "commentStart": 1071, "end": 0, "key": { + "commentStart": 1071, "end": 0, "name": "angle", "start": 0, @@ -683,6 +793,7 @@ description: Result of parsing gridfinity-bins.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1080, "end": 0, "raw": "45", "start": 0, @@ -693,6 +804,7 @@ description: Result of parsing gridfinity-bins.kcl "suffix": "None" } }, + "commentStart": 1079, "end": 0, "operator": "-", "start": 0, @@ -701,8 +813,10 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 1084, "end": 0, "key": { + "commentStart": 1084, "end": 0, "name": "length", "start": 0, @@ -711,6 +825,7 @@ description: Result of parsing gridfinity-bins.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1093, "end": 0, "name": "thirdStep", "start": 0, @@ -724,6 +839,7 @@ description: Result of parsing gridfinity-bins.kcl "type": "ObjectExpression" }, { + "commentStart": 1106, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -731,11 +847,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 1049, "end": 0, "name": "angledLineOfYLength", "start": 0, "type": "Identifier" }, + "commentStart": 1049, "end": 0, "start": 0, "type": "CallExpression", @@ -746,6 +864,7 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 1122, "end": 0, "name": "length", "start": 0, @@ -753,12 +872,14 @@ description: Result of parsing gridfinity-bins.kcl }, "arg": { "argument": { + "commentStart": 1132, "end": 0, "name": "secondStep", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1131, "end": 0, "operator": "-", "start": 0, @@ -768,11 +889,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 1116, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1116, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -782,11 +905,14 @@ description: Result of parsing gridfinity-bins.kcl { "arguments": [ { + "commentStart": 1171, "end": 0, "properties": [ { + "commentStart": 1173, "end": 0, "key": { + "commentStart": 1173, "end": 0, "name": "angle", "start": 0, @@ -796,6 +922,7 @@ description: Result of parsing gridfinity-bins.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1182, "end": 0, "raw": "45", "start": 0, @@ -806,6 +933,7 @@ description: Result of parsing gridfinity-bins.kcl "suffix": "None" } }, + "commentStart": 1181, "end": 0, "operator": "-", "start": 0, @@ -814,8 +942,10 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 1186, "end": 0, "key": { + "commentStart": 1186, "end": 0, "name": "length", "start": 0, @@ -824,6 +954,7 @@ description: Result of parsing gridfinity-bins.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1195, "end": 0, "name": "firstStep", "start": 0, @@ -837,6 +968,7 @@ description: Result of parsing gridfinity-bins.kcl "type": "ObjectExpression" }, { + "commentStart": 1208, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -844,11 +976,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 1151, "end": 0, "name": "angledLineOfYLength", "start": 0, "type": "Identifier" }, + "commentStart": 1151, "end": 0, "start": 0, "type": "CallExpression", @@ -857,17 +991,20 @@ description: Result of parsing gridfinity-bins.kcl { "arguments": [], "callee": { + "commentStart": 1218, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1218, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 899, "end": 0, "start": 0, "type": "PipeExpression", @@ -884,26 +1021,31 @@ description: Result of parsing gridfinity-bins.kcl }, { "argument": { + "commentStart": 1235, "end": 0, "name": "faceSketch", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1228, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 882, "end": 0, "start": 0 }, + "commentStart": 874, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 875, "end": 0, "name": "plane", "start": 0, @@ -920,14 +1062,22 @@ description: Result of parsing gridfinity-bins.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// define a function which builds the profile of the baseplate bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1247, "declaration": { + "commentStart": 1285, "end": 0, "id": { + "commentStart": 1285, "end": 0, "name": "singleSide", "start": 0, @@ -938,14 +1088,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 1363, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1372, "end": 0, "left": { + "commentStart": 1372, "end": 0, "name": "binLength", "start": 0, @@ -954,8 +1107,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "-", "right": { + "commentStart": 1385, "end": 0, "left": { + "commentStart": 1385, "end": 0, "name": "cornerRadius", "start": 0, @@ -964,6 +1119,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 1400, "end": 0, "raw": "2", "start": 0, @@ -985,11 +1141,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 1298, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1298, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1001,14 +1159,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 1329, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1338, "end": 0, "left": { + "commentStart": 1338, "end": 0, "name": "cornerRadius", "start": 0, @@ -1017,6 +1178,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 1353, "end": 0, "name": "binTol", "start": 0, @@ -1030,16 +1192,19 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 1311, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 1311, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1323, "end": 0, "raw": "\"YZ\"", "start": 0, @@ -1050,11 +1215,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 1306, "end": 0, "name": "face", "start": 0, "type": "Identifier" }, + "commentStart": 1306, "end": 0, "start": 0, "type": "CallExpression", @@ -1066,14 +1233,22 @@ description: Result of parsing gridfinity-bins.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// extrude a single side of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1405, "declaration": { + "commentStart": 1472, "end": 0, "id": { + "commentStart": 1472, "end": 0, "name": "sides", "start": 0, @@ -1084,12 +1259,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 1515, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1528, "end": 0, "raw": "360", "start": 0, @@ -1104,14 +1281,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 1535, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1542, "elements": [ { + "commentStart": 1543, "end": 0, "raw": "0", "start": 0, @@ -1123,6 +1303,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 1546, "end": 0, "raw": "0", "start": 0, @@ -1134,6 +1315,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 1549, "end": 0, "raw": "1", "start": 0, @@ -1154,18 +1336,23 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 1555, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1564, "elements": [ { + "commentStart": 1571, "end": 0, "left": { + "commentStart": 1571, "end": 0, "left": { + "commentStart": 1571, "end": 0, "name": "binLength", "start": 0, @@ -1174,8 +1361,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 1583, "end": 0, "left": { + "commentStart": 1583, "end": 0, "raw": "2", "start": 0, @@ -1188,6 +1377,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 1587, "end": 0, "name": "binTol", "start": 0, @@ -1204,6 +1394,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "/", "right": { + "commentStart": 1597, "end": 0, "raw": "2", "start": 0, @@ -1219,10 +1410,13 @@ description: Result of parsing gridfinity-bins.kcl "type": "BinaryExpression" }, { + "commentStart": 1605, "end": 0, "left": { + "commentStart": 1605, "end": 0, "left": { + "commentStart": 1605, "end": 0, "name": "binLength", "start": 0, @@ -1231,8 +1425,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 1617, "end": 0, "left": { + "commentStart": 1617, "end": 0, "raw": "2", "start": 0, @@ -1245,6 +1441,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 1621, "end": 0, "name": "binTol", "start": 0, @@ -1261,6 +1458,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "/", "right": { + "commentStart": 1631, "end": 0, "raw": "2", "start": 0, @@ -1276,6 +1474,7 @@ description: Result of parsing gridfinity-bins.kcl "type": "BinaryExpression" }, { + "commentStart": 1638, "end": 0, "raw": "0", "start": 0, @@ -1296,12 +1495,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 1647, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1659, "end": 0, "raw": "4", "start": 0, @@ -1316,12 +1517,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 1664, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1683, "end": 0, "raw": "true", "start": 0, @@ -1332,16 +1535,19 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 1480, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 1480, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1501, "end": 0, "name": "singleSide", "start": 0, @@ -1354,25 +1560,36 @@ description: Result of parsing gridfinity-bins.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create the other sides of the bin by using a circular pattern" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1689, "declaration": { + "commentStart": 1717, "end": 0, "id": { + "commentStart": 1717, "end": 0, "name": "axis000", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1727, "end": 0, "properties": [ { + "commentStart": 1731, "end": 0, "key": { + "commentStart": 1731, "end": 0, "name": "custom", "start": 0, @@ -1381,11 +1598,14 @@ description: Result of parsing gridfinity-bins.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1740, "end": 0, "properties": [ { + "commentStart": 1746, "end": 0, "key": { + "commentStart": 1746, "end": 0, "name": "axis", "start": 0, @@ -1394,8 +1614,10 @@ description: Result of parsing gridfinity-bins.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1753, "elements": [ { + "commentStart": 1754, "end": 0, "raw": "0.0", "start": 0, @@ -1407,6 +1629,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 1759, "end": 0, "raw": "1.0", "start": 0, @@ -1425,8 +1648,10 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 1769, "end": 0, "key": { + "commentStart": 1769, "end": 0, "name": "origin", "start": 0, @@ -1435,10 +1660,13 @@ description: Result of parsing gridfinity-bins.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1778, "elements": [ { + "commentStart": 1786, "end": 0, "left": { + "commentStart": 1786, "end": 0, "name": "cornerRadius", "start": 0, @@ -1447,6 +1675,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 1801, "end": 0, "name": "binTol", "start": 0, @@ -1458,8 +1687,10 @@ description: Result of parsing gridfinity-bins.kcl "type": "BinaryExpression" }, { + "commentStart": 1815, "end": 0, "left": { + "commentStart": 1815, "end": 0, "name": "cornerRadius", "start": 0, @@ -1468,6 +1699,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 1830, "end": 0, "name": "binTol", "start": 0, @@ -1501,14 +1733,22 @@ description: Result of parsing gridfinity-bins.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// define an axis axis000" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1848, "declaration": { + "commentStart": 1887, "end": 0, "id": { + "commentStart": 1887, "end": 0, "name": "singleCorner", "start": 0, @@ -1519,6 +1759,7 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 1967, "end": 0, "name": "angle", "start": 0, @@ -1526,6 +1767,7 @@ description: Result of parsing gridfinity-bins.kcl }, "arg": { "argument": { + "commentStart": 1976, "end": 0, "raw": "90", "start": 0, @@ -1536,6 +1778,7 @@ description: Result of parsing gridfinity-bins.kcl "suffix": "None" } }, + "commentStart": 1975, "end": 0, "operator": "-", "start": 0, @@ -1546,12 +1789,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 1980, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1987, "end": 0, "name": "axis000", "start": 0, @@ -1561,11 +1806,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 1902, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 1902, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1577,14 +1824,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 1933, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1942, "end": 0, "left": { + "commentStart": 1942, "end": 0, "name": "cornerRadius", "start": 0, @@ -1593,6 +1843,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 1957, "end": 0, "name": "binTol", "start": 0, @@ -1606,16 +1857,19 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 1915, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 1915, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1927, "end": 0, "raw": "\"YZ\"", "start": 0, @@ -1626,11 +1880,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 1910, "end": 0, "name": "face", "start": 0, "type": "Identifier" }, + "commentStart": 1910, "end": 0, "start": 0, "type": "CallExpression", @@ -1642,14 +1898,22 @@ description: Result of parsing gridfinity-bins.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a single corner of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1995, "declaration": { + "commentStart": 2030, "end": 0, "id": { + "commentStart": 2030, "end": 0, "name": "corners", "start": 0, @@ -1660,12 +1924,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 2077, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2090, "end": 0, "raw": "360", "start": 0, @@ -1680,14 +1946,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 2097, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2104, "elements": [ { + "commentStart": 2105, "end": 0, "raw": "0", "start": 0, @@ -1699,6 +1968,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 2108, "end": 0, "raw": "0", "start": 0, @@ -1710,6 +1980,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 2111, "end": 0, "raw": "1", "start": 0, @@ -1730,18 +2001,23 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 2117, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2126, "elements": [ { + "commentStart": 2133, "end": 0, "left": { + "commentStart": 2133, "end": 0, "left": { + "commentStart": 2133, "end": 0, "name": "binLength", "start": 0, @@ -1750,8 +2026,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 2145, "end": 0, "left": { + "commentStart": 2145, "end": 0, "raw": "2", "start": 0, @@ -1764,6 +2042,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 2149, "end": 0, "name": "binTol", "start": 0, @@ -1780,6 +2059,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "/", "right": { + "commentStart": 2159, "end": 0, "raw": "2", "start": 0, @@ -1795,10 +2075,13 @@ description: Result of parsing gridfinity-bins.kcl "type": "BinaryExpression" }, { + "commentStart": 2167, "end": 0, "left": { + "commentStart": 2167, "end": 0, "left": { + "commentStart": 2167, "end": 0, "name": "binLength", "start": 0, @@ -1807,8 +2090,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 2179, "end": 0, "left": { + "commentStart": 2179, "end": 0, "raw": "2", "start": 0, @@ -1821,6 +2106,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 2183, "end": 0, "name": "binTol", "start": 0, @@ -1837,6 +2123,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "/", "right": { + "commentStart": 2193, "end": 0, "raw": "2", "start": 0, @@ -1852,6 +2139,7 @@ description: Result of parsing gridfinity-bins.kcl "type": "BinaryExpression" }, { + "commentStart": 2200, "end": 0, "raw": "0", "start": 0, @@ -1872,12 +2160,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 2209, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2221, "end": 0, "raw": "4", "start": 0, @@ -1892,12 +2182,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 2226, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2245, "end": 0, "raw": "true", "start": 0, @@ -1908,16 +2200,19 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 2040, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 2040, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2061, "end": 0, "name": "singleCorner", "start": 0, @@ -1930,14 +2225,22 @@ description: Result of parsing gridfinity-bins.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create the corners of the bin" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2251, "declaration": { + "commentStart": 2253, "end": 0, "id": { + "commentStart": 2253, "end": 0, "name": "singleBinFill", "start": 0, @@ -1948,6 +2251,7 @@ description: Result of parsing gridfinity-bins.kcl { "arguments": [ { + "commentStart": 2283, "end": 0, "raw": "\"XY\"", "start": 0, @@ -1957,11 +2261,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 2269, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2269, "end": 0, "start": 0, "type": "CallExpression", @@ -1970,10 +2276,13 @@ description: Result of parsing gridfinity-bins.kcl { "arguments": [ { + "commentStart": 2309, "elements": [ { + "commentStart": 2318, "end": 0, "left": { + "commentStart": 2318, "end": 0, "name": "binBaseLength", "start": 0, @@ -1982,6 +2291,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 2334, "end": 0, "name": "binTol", "start": 0, @@ -1993,8 +2303,10 @@ description: Result of parsing gridfinity-bins.kcl "type": "BinaryExpression" }, { + "commentStart": 2349, "end": 0, "left": { + "commentStart": 2349, "end": 0, "name": "binBaseLength", "start": 0, @@ -2003,6 +2315,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 2365, "end": 0, "name": "binTol", "start": 0, @@ -2020,6 +2333,7 @@ description: Result of parsing gridfinity-bins.kcl "type": "ArrayExpression" }, { + "commentStart": 2380, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2027,11 +2341,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 2294, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2294, "end": 0, "start": 0, "type": "CallExpression", @@ -2042,16 +2358,20 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 2393, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2399, "elements": [ { + "commentStart": 2400, "end": 0, "left": { + "commentStart": 2400, "end": 0, "name": "binLength", "start": 0, @@ -2060,8 +2380,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "-", "right": { + "commentStart": 2413, "end": 0, "left": { + "commentStart": 2413, "end": 0, "name": "binBaseLength", "start": 0, @@ -2070,6 +2392,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 2429, "end": 0, "raw": "2", "start": 0, @@ -2089,6 +2412,7 @@ description: Result of parsing gridfinity-bins.kcl "type": "BinaryExpression" }, { + "commentStart": 2433, "end": 0, "raw": "0", "start": 0, @@ -2109,12 +2433,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 2437, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2443, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2124,11 +2450,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 2388, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2388, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2140,14 +2468,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 2463, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2469, "elements": [ { + "commentStart": 2470, "end": 0, "raw": "0", "start": 0, @@ -2159,8 +2490,10 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 2473, "end": 0, "left": { + "commentStart": 2473, "end": 0, "name": "binLength", "start": 0, @@ -2169,8 +2502,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "-", "right": { + "commentStart": 2486, "end": 0, "left": { + "commentStart": 2486, "end": 0, "name": "binBaseLength", "start": 0, @@ -2179,6 +2514,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 2502, "end": 0, "raw": "2", "start": 0, @@ -2207,12 +2543,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 2507, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2513, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2222,11 +2560,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 2458, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2458, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2238,6 +2578,7 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 2534, "end": 0, "name": "endAbsolute", "start": 0, @@ -2246,6 +2587,7 @@ description: Result of parsing gridfinity-bins.kcl "arg": { "arguments": [ { + "commentStart": 2562, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2253,11 +2595,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 2548, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 2548, "end": 0, "start": 0, "type": "CallExpression", @@ -2267,12 +2611,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 2566, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2572, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2282,11 +2628,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 2528, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2528, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2298,12 +2646,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 2593, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2599, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2313,11 +2663,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 2587, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2587, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2329,12 +2681,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 2622, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2631, "end": 0, "name": "height", "start": 0, @@ -2344,11 +2698,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 2614, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2614, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2360,12 +2716,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 2659, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2668, "end": 0, "name": "firstStep", "start": 0, @@ -2376,16 +2734,19 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 2686, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2693, "elements": [ { "arguments": [ { + "commentStart": 2724, "end": 0, "name": "line000", "start": 0, @@ -2394,11 +2755,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 2704, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 2704, "end": 0, "start": 0, "type": "CallExpression", @@ -2407,6 +2770,7 @@ description: Result of parsing gridfinity-bins.kcl { "arguments": [ { + "commentStart": 2767, "end": 0, "name": "line000", "start": 0, @@ -2415,11 +2779,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 2743, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 2743, "end": 0, "start": 0, "type": "CallExpression", @@ -2428,6 +2794,7 @@ description: Result of parsing gridfinity-bins.kcl { "arguments": [ { + "commentStart": 2806, "end": 0, "name": "line002", "start": 0, @@ -2436,11 +2803,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 2786, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 2786, "end": 0, "start": 0, "type": "CallExpression", @@ -2449,6 +2818,7 @@ description: Result of parsing gridfinity-bins.kcl { "arguments": [ { + "commentStart": 2849, "end": 0, "name": "line002", "start": 0, @@ -2457,11 +2827,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 2825, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 2825, "end": 0, "start": 0, "type": "CallExpression", @@ -2476,11 +2848,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 2644, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 2644, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2488,6 +2862,7 @@ description: Result of parsing gridfinity-bins.kcl "unlabeled": null } ], + "commentStart": 2269, "end": 0, "start": 0, "type": "PipeExpression", @@ -2503,9 +2878,12 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 2873, "declaration": { + "commentStart": 2875, "end": 0, "id": { + "commentStart": 2875, "end": 0, "name": "magCutout000", "start": 0, @@ -2516,6 +2894,7 @@ description: Result of parsing gridfinity-bins.kcl { "arguments": [ { + "commentStart": 2904, "end": 0, "name": "singleBinFill", "start": 0, @@ -2523,6 +2902,7 @@ description: Result of parsing gridfinity-bins.kcl "type": "Identifier" }, { + "commentStart": 2919, "end": 0, "raw": "\"start\"", "start": 0, @@ -2532,11 +2912,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 2890, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2890, "end": 0, "start": 0, "type": "CallExpression", @@ -2547,25 +2929,31 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 2948, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2957, "elements": [ { + "commentStart": 2968, "end": 0, "left": { + "commentStart": 2968, "end": 0, "left": { "argument": { + "commentStart": 2969, "end": 0, "name": "magOffset", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2968, "end": 0, "operator": "-", "start": 0, @@ -2574,6 +2962,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "-", "right": { + "commentStart": 2981, "end": 0, "name": "binBaseLength", "start": 0, @@ -2586,6 +2975,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "-", "right": { + "commentStart": 2997, "end": 0, "name": "binTol", "start": 0, @@ -2597,10 +2987,13 @@ description: Result of parsing gridfinity-bins.kcl "type": "BinaryExpression" }, { + "commentStart": 3014, "end": 0, "left": { + "commentStart": 3014, "end": 0, "left": { + "commentStart": 3014, "end": 0, "name": "magOffset", "start": 0, @@ -2609,6 +3002,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 3026, "end": 0, "name": "binBaseLength", "start": 0, @@ -2621,6 +3015,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 3042, "end": 0, "name": "binTol", "start": 0, @@ -2641,14 +3036,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3066, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3075, "end": 0, "left": { + "commentStart": 3075, "end": 0, "name": "magOuterDiam", "start": 0, @@ -2657,6 +3055,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "/", "right": { + "commentStart": 3090, "end": 0, "raw": "2", "start": 0, @@ -2674,11 +3073,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 2933, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2933, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2690,12 +3091,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3130, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3143, "end": 0, "raw": "360", "start": 0, @@ -2710,25 +3113,31 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3155, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3164, "elements": [ { + "commentStart": 3176, "end": 0, "left": { + "commentStart": 3176, "end": 0, "left": { "argument": { + "commentStart": 3177, "end": 0, "name": "binLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3176, "end": 0, "operator": "-", "start": 0, @@ -2737,8 +3146,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 3189, "end": 0, "left": { + "commentStart": 3189, "end": 0, "raw": "2", "start": 0, @@ -2751,6 +3162,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 3193, "end": 0, "name": "binTol", "start": 0, @@ -2767,6 +3179,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "/", "right": { + "commentStart": 3203, "end": 0, "raw": "2", "start": 0, @@ -2782,10 +3195,13 @@ description: Result of parsing gridfinity-bins.kcl "type": "BinaryExpression" }, { + "commentStart": 3216, "end": 0, "left": { + "commentStart": 3216, "end": 0, "left": { + "commentStart": 3216, "end": 0, "name": "binLength", "start": 0, @@ -2794,8 +3210,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 3228, "end": 0, "left": { + "commentStart": 3228, "end": 0, "raw": "2", "start": 0, @@ -2808,6 +3226,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 3232, "end": 0, "name": "binTol", "start": 0, @@ -2824,6 +3243,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "/", "right": { + "commentStart": 3242, "end": 0, "raw": "2", "start": 0, @@ -2848,12 +3268,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3261, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3273, "end": 0, "raw": "4", "start": 0, @@ -2868,12 +3290,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3283, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3302, "end": 0, "raw": "true", "start": 0, @@ -2884,11 +3308,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 3104, "end": 0, "name": "patternCircular2d", "start": 0, "type": "Identifier" }, + "commentStart": 3104, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2900,6 +3326,7 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3327, "end": 0, "name": "length", "start": 0, @@ -2907,12 +3334,14 @@ description: Result of parsing gridfinity-bins.kcl }, "arg": { "argument": { + "commentStart": 3337, "end": 0, "name": "magDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3336, "end": 0, "operator": "-", "start": 0, @@ -2922,11 +3351,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 3319, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 3319, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2934,11 +3365,13 @@ description: Result of parsing gridfinity-bins.kcl "unlabeled": null } ], + "commentStart": 2890, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "3": [ { + "commentStart": 3346, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2966,9 +3399,12 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 3392, "declaration": { + "commentStart": 3392, "end": 0, "id": { + "commentStart": 3392, "end": 0, "name": "binSides", "start": 0, @@ -2981,14 +3417,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3441, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3448, "elements": [ { + "commentStart": 3449, "end": 0, "raw": "1.0", "start": 0, @@ -3000,6 +3439,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 3454, "end": 0, "raw": "0.0", "start": 0, @@ -3011,6 +3451,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 3459, "end": 0, "raw": "0.0", "start": 0, @@ -3031,12 +3472,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3472, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3484, "end": 0, "name": "countBinWidth", "start": 0, @@ -3047,14 +3490,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3506, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3517, "end": 0, "left": { + "commentStart": 3517, "end": 0, "name": "binLength", "start": 0, @@ -3063,8 +3509,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 3529, "end": 0, "left": { + "commentStart": 3529, "end": 0, "name": "binTol", "start": 0, @@ -3073,6 +3521,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 3538, "end": 0, "raw": "2", "start": 0, @@ -3094,16 +3543,19 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 3403, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 3403, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 3427, "end": 0, "name": "sides", "start": 0, @@ -3116,14 +3568,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3576, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3583, "elements": [ { + "commentStart": 3584, "end": 0, "raw": "0.0", "start": 0, @@ -3135,6 +3590,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 3589, "end": 0, "raw": "1.0", "start": 0, @@ -3146,6 +3602,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 3594, "end": 0, "raw": "0.0", "start": 0, @@ -3166,12 +3623,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3607, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3619, "end": 0, "name": "countBinLength", "start": 0, @@ -3182,14 +3641,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3642, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3653, "end": 0, "left": { + "commentStart": 3653, "end": 0, "name": "binLength", "start": 0, @@ -3198,8 +3660,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 3665, "end": 0, "left": { + "commentStart": 3665, "end": 0, "name": "binTol", "start": 0, @@ -3208,6 +3672,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 3674, "end": 0, "raw": "2", "start": 0, @@ -3229,11 +3694,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 3552, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 3552, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3241,11 +3708,13 @@ description: Result of parsing gridfinity-bins.kcl "unlabeled": null } ], + "commentStart": 3403, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 3682, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3273,9 +3742,12 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 3749, "declaration": { + "commentStart": 3749, "end": 0, "id": { + "commentStart": 3749, "end": 0, "name": "binCorners", "start": 0, @@ -3288,14 +3760,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3802, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3809, "elements": [ { + "commentStart": 3810, "end": 0, "raw": "1.0", "start": 0, @@ -3307,6 +3782,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 3815, "end": 0, "raw": "0.0", "start": 0, @@ -3318,6 +3794,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 3820, "end": 0, "raw": "0.0", "start": 0, @@ -3338,12 +3815,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3833, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3845, "end": 0, "name": "countBinWidth", "start": 0, @@ -3354,14 +3833,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3867, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3878, "end": 0, "left": { + "commentStart": 3878, "end": 0, "name": "binLength", "start": 0, @@ -3370,8 +3852,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 3890, "end": 0, "left": { + "commentStart": 3890, "end": 0, "name": "binTol", "start": 0, @@ -3380,6 +3864,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 3899, "end": 0, "raw": "2", "start": 0, @@ -3401,16 +3886,19 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 3762, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 3762, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 3786, "end": 0, "name": "corners", "start": 0, @@ -3423,14 +3911,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3937, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3944, "elements": [ { + "commentStart": 3945, "end": 0, "raw": "0.0", "start": 0, @@ -3442,6 +3933,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 3950, "end": 0, "raw": "1.0", "start": 0, @@ -3453,6 +3945,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 3955, "end": 0, "raw": "0.0", "start": 0, @@ -3473,12 +3966,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 3968, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3980, "end": 0, "name": "countBinLength", "start": 0, @@ -3489,14 +3984,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4003, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4014, "end": 0, "left": { + "commentStart": 4014, "end": 0, "name": "binLength", "start": 0, @@ -3505,8 +4003,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 4026, "end": 0, "left": { + "commentStart": 4026, "end": 0, "name": "binTol", "start": 0, @@ -3515,6 +4015,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 4035, "end": 0, "raw": "2", "start": 0, @@ -3536,11 +4037,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 3913, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 3913, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3548,11 +4051,13 @@ description: Result of parsing gridfinity-bins.kcl "unlabeled": null } ], + "commentStart": 3762, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 4043, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3580,9 +4085,12 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 4101, "declaration": { + "commentStart": 4101, "end": 0, "id": { + "commentStart": 4101, "end": 0, "name": "binFill", "start": 0, @@ -3595,14 +4103,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4157, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4164, "elements": [ { + "commentStart": 4165, "end": 0, "raw": "1.0", "start": 0, @@ -3614,6 +4125,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 4170, "end": 0, "raw": "0.0", "start": 0, @@ -3625,6 +4137,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 4175, "end": 0, "raw": "0.0", "start": 0, @@ -3645,12 +4158,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4188, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4200, "end": 0, "name": "countBinWidth", "start": 0, @@ -3661,14 +4176,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4222, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4233, "end": 0, "left": { + "commentStart": 4233, "end": 0, "name": "binLength", "start": 0, @@ -3677,8 +4195,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 4245, "end": 0, "left": { + "commentStart": 4245, "end": 0, "name": "binTol", "start": 0, @@ -3687,6 +4207,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 4254, "end": 0, "raw": "2", "start": 0, @@ -3708,16 +4229,19 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 4111, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 4111, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 4135, "end": 0, "name": "singleBinFill", "start": 0, @@ -3730,14 +4254,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4292, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4299, "elements": [ { + "commentStart": 4300, "end": 0, "raw": "0.0", "start": 0, @@ -3749,6 +4276,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 4305, "end": 0, "raw": "1.0", "start": 0, @@ -3760,6 +4288,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 4310, "end": 0, "raw": "0.0", "start": 0, @@ -3780,12 +4309,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4323, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4335, "end": 0, "name": "countBinLength", "start": 0, @@ -3796,14 +4327,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4358, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4369, "end": 0, "left": { + "commentStart": 4369, "end": 0, "name": "binLength", "start": 0, @@ -3812,8 +4346,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 4381, "end": 0, "left": { + "commentStart": 4381, "end": 0, "name": "binTol", "start": 0, @@ -3822,6 +4358,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 4390, "end": 0, "raw": "2", "start": 0, @@ -3843,11 +4380,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 4268, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 4268, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3855,11 +4394,13 @@ description: Result of parsing gridfinity-bins.kcl "unlabeled": null } ], + "commentStart": 4111, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 4398, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3887,9 +4428,12 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" }, { + "commentStart": 4429, "declaration": { + "commentStart": 4429, "end": 0, "id": { + "commentStart": 4429, "end": 0, "name": "binTop", "start": 0, @@ -3904,12 +4448,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4470, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4479, "end": 0, "name": "height", "start": 0, @@ -3919,16 +4465,19 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 4452, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 4452, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 4464, "end": 0, "raw": "\"XY\"", "start": 0, @@ -3939,11 +4488,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 4438, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 4438, "end": 0, "start": 0, "type": "CallExpression", @@ -3952,8 +4503,10 @@ description: Result of parsing gridfinity-bins.kcl { "arguments": [ { + "commentStart": 4508, "elements": [ { + "commentStart": 4509, "end": 0, "raw": "0", "start": 0, @@ -3965,6 +4518,7 @@ description: Result of parsing gridfinity-bins.kcl } }, { + "commentStart": 4512, "end": 0, "raw": "0", "start": 0, @@ -3982,6 +4536,7 @@ description: Result of parsing gridfinity-bins.kcl "type": "ArrayExpression" }, { + "commentStart": 4516, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3989,11 +4544,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 4493, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 4493, "end": 0, "start": 0, "type": "CallExpression", @@ -4004,16 +4561,20 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4530, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4540, "end": 0, "left": { + "commentStart": 4540, "end": 0, "left": { + "commentStart": 4540, "end": 0, "name": "binLength", "start": 0, @@ -4022,8 +4583,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 4552, "end": 0, "left": { + "commentStart": 4552, "end": 0, "raw": "2", "start": 0, @@ -4036,6 +4599,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 4556, "end": 0, "name": "binTol", "start": 0, @@ -4052,6 +4616,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 4566, "end": 0, "name": "countBinWidth", "start": 0, @@ -4066,12 +4631,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4581, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4587, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4081,11 +4648,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 4524, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 4524, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4097,16 +4666,20 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4608, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4618, "end": 0, "left": { + "commentStart": 4618, "end": 0, "left": { + "commentStart": 4618, "end": 0, "name": "binLength", "start": 0, @@ -4115,8 +4688,10 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "+", "right": { + "commentStart": 4630, "end": 0, "left": { + "commentStart": 4630, "end": 0, "raw": "2", "start": 0, @@ -4129,6 +4704,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 4634, "end": 0, "name": "binTol", "start": 0, @@ -4145,6 +4721,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 4644, "end": 0, "name": "countBinLength", "start": 0, @@ -4159,12 +4736,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4660, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4666, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4174,11 +4753,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 4602, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 4602, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4190,6 +4771,7 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4687, "end": 0, "name": "endAbsolute", "start": 0, @@ -4198,6 +4780,7 @@ description: Result of parsing gridfinity-bins.kcl "arg": { "arguments": [ { + "commentStart": 4715, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4205,11 +4788,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 4701, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 4701, "end": 0, "start": 0, "type": "CallExpression", @@ -4219,12 +4804,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4719, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4725, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4234,11 +4821,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 4681, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 4681, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4250,12 +4839,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4746, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4752, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4265,11 +4856,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 4740, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 4740, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4281,14 +4874,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4775, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4784, "end": 0, "left": { + "commentStart": 4784, "end": 0, "name": "binHeight", "start": 0, @@ -4297,6 +4893,7 @@ description: Result of parsing gridfinity-bins.kcl }, "operator": "*", "right": { + "commentStart": 4796, "end": 0, "name": "countBinHeight", "start": 0, @@ -4310,11 +4907,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 4767, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 4767, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4326,12 +4925,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4832, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4841, "end": 0, "name": "cornerRadius", "start": 0, @@ -4342,16 +4943,19 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 4862, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4869, "elements": [ { "arguments": [ { + "commentStart": 4900, "end": 0, "name": "line010", "start": 0, @@ -4360,11 +4964,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 4880, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 4880, "end": 0, "start": 0, "type": "CallExpression", @@ -4373,6 +4979,7 @@ description: Result of parsing gridfinity-bins.kcl { "arguments": [ { + "commentStart": 4943, "end": 0, "name": "line010", "start": 0, @@ -4381,11 +4988,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 4919, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 4919, "end": 0, "start": 0, "type": "CallExpression", @@ -4394,6 +5003,7 @@ description: Result of parsing gridfinity-bins.kcl { "arguments": [ { + "commentStart": 4982, "end": 0, "name": "line012", "start": 0, @@ -4402,11 +5012,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 4962, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 4962, "end": 0, "start": 0, "type": "CallExpression", @@ -4415,6 +5027,7 @@ description: Result of parsing gridfinity-bins.kcl { "arguments": [ { + "commentStart": 5025, "end": 0, "name": "line012", "start": 0, @@ -4423,11 +5036,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 5001, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 5001, "end": 0, "start": 0, "type": "CallExpression", @@ -4442,11 +5057,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 4817, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 4817, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4458,14 +5075,17 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 5061, "end": 0, "name": "faces", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5069, "elements": [ { + "commentStart": 5070, "end": 0, "raw": "\"end\"", "start": 0, @@ -4483,12 +5103,14 @@ description: Result of parsing gridfinity-bins.kcl { "type": "LabeledArg", "label": { + "commentStart": 5078, "end": 0, "name": "thickness", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5090, "end": 0, "name": "binThk", "start": 0, @@ -4498,11 +5120,13 @@ description: Result of parsing gridfinity-bins.kcl } ], "callee": { + "commentStart": 5055, "end": 0, "name": "shell", "start": 0, "type": "Identifier" }, + "commentStart": 5055, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4510,6 +5134,7 @@ description: Result of parsing gridfinity-bins.kcl "unlabeled": null } ], + "commentStart": 4438, "end": 0, "start": 0, "type": "PipeExpression", @@ -4525,20 +5150,32 @@ description: Result of parsing gridfinity-bins.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 307, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Gridfinity Bins", + "// Gridfinity is a system to help you work more efficiently. This is a system invented by Zack Freedman. There are two main components the baseplate and the bins. The components are comprised of a matrix of squares. Allowing easy stacking and expansion", + "", + "", + "// Set units in millimeters (mm)" + ], "properties": [ { + "commentStart": 316, "end": 0, "key": { + "commentStart": 316, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -4547,6 +5184,7 @@ description: Result of parsing gridfinity-bins.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 336, "end": 0, "name": "mm", "start": 0, @@ -4561,104 +5199,9 @@ description: Result of parsing gridfinity-bins.kcl ], "nonCodeMeta": { "nonCodeNodes": { - "11": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Number of bins in each direction", - "style": "line" - } - } - ], - "14": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "The total height of the baseplate is a summation of the vertical heights of the baseplate steps", - "style": "line" - } - } - ], - "15": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "define a function which builds the profile of the baseplate bin", - "style": "line" - } - } - ], - "16": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "extrude a single side of the bin", - "style": "line" - } - } - ], - "17": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create the other sides of the bin by using a circular pattern", - "style": "line" - } - } - ], - "18": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "define an axis axis000", - "style": "line" - } - } - ], - "19": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a single corner of the bin", - "style": "line" - } - } - ], - "20": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create the corners of the bin", - "style": "line" - } - } - ], "21": [ { + "commentStart": 2251, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4669,6 +5212,7 @@ description: Result of parsing gridfinity-bins.kcl ], "22": [ { + "commentStart": 2873, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4680,60 +5224,13 @@ description: Result of parsing gridfinity-bins.kcl }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Gridfinity Bins", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Gridfinity is a system to help you work more efficiently. This is a system invented by Zack Freedman. There are two main components the baseplate and the bins. The components are comprised of a matrix of squares. Allowing easy stacking and expansion", - "style": "line" - } - }, - { + "commentStart": 339, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units in millimeters (mm)", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/gridfinity-bins/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/gridfinity-bins/program_memory.snap index 476371f6c..c03dfb19c 100644 --- a/rust/kcl-lib/tests/kcl_samples/gridfinity-bins/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/gridfinity-bins/program_memory.snap @@ -5460,6 +5460,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -5472,6 +5473,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -5484,6 +5486,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -5496,6 +5499,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -5518,6 +5522,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -5542,6 +5547,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -5566,6 +5572,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -5590,6 +5597,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -5726,6 +5734,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -5738,6 +5747,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -5750,6 +5760,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -5762,6 +5773,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -5784,6 +5796,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -5808,6 +5821,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -5832,6 +5846,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -5856,6 +5871,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -5992,6 +6008,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -6004,6 +6021,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -6016,6 +6034,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -6028,6 +6047,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -6050,6 +6070,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -6074,6 +6095,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -6098,6 +6120,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -6122,6 +6145,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -6258,6 +6282,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -6270,6 +6295,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -6282,6 +6308,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -6294,6 +6321,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -6316,6 +6344,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -6340,6 +6369,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -6364,6 +6394,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -6388,6 +6419,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -6524,6 +6556,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -6536,6 +6569,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -6548,6 +6582,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -6560,6 +6595,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -6582,6 +6618,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -6606,6 +6643,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -6630,6 +6668,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -6654,6 +6693,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -6790,6 +6830,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -6802,6 +6843,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -6814,6 +6856,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -6826,6 +6869,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -6848,6 +6892,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -6872,6 +6917,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -6896,6 +6942,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -6920,6 +6967,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -12467,6 +12515,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4587, "end": 4595, "start": 4587, "type": "TagDeclarator", @@ -12479,6 +12528,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4666, "end": 4674, "start": 4666, "type": "TagDeclarator", @@ -12491,6 +12541,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4725, "end": 4733, "start": 4725, "type": "TagDeclarator", @@ -12503,6 +12554,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 4752, "end": 4760, "start": 4752, "type": "TagDeclarator", @@ -12525,6 +12577,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 0.0 ], "tag": { + "commentStart": 4587, "end": 4595, "start": 4587, "type": "TagDeclarator", @@ -12549,6 +12602,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 0.0 ], "tag": { + "commentStart": 4666, "end": 4674, "start": 4666, "type": "TagDeclarator", @@ -12573,6 +12627,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 126.0 ], "tag": { + "commentStart": 4725, "end": 4733, "start": 4725, "type": "TagDeclarator", @@ -12597,6 +12652,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 126.0 ], "tag": { + "commentStart": 4752, "end": 4760, "start": 4752, "type": "TagDeclarator", @@ -13817,6 +13873,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -13829,6 +13886,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -13841,6 +13899,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -13853,6 +13912,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -13875,6 +13935,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -13899,6 +13960,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -13923,6 +13985,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -13947,6 +14010,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -14181,6 +14245,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -14193,6 +14258,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -14205,6 +14271,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -14217,6 +14284,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -14239,6 +14307,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -14263,6 +14332,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -14287,6 +14357,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -14311,6 +14382,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -14545,6 +14617,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -14557,6 +14630,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -14569,6 +14643,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -14581,6 +14656,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -14603,6 +14679,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -14627,6 +14704,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -14651,6 +14729,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -14675,6 +14754,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -14909,6 +14989,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -14921,6 +15002,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -14933,6 +15015,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -14945,6 +15028,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -14967,6 +15051,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -14991,6 +15076,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -15015,6 +15101,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -15039,6 +15126,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -16161,6 +16249,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -16173,6 +16262,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -16185,6 +16275,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -16197,6 +16288,7 @@ description: Variables in memory after executing gridfinity-bins.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", @@ -16219,6 +16311,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2443, "end": 2451, "start": 2443, "type": "TagDeclarator", @@ -16243,6 +16336,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 3.2 ], "tag": { + "commentStart": 2513, "end": 2521, "start": 2513, "type": "TagDeclarator", @@ -16267,6 +16361,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2572, "end": 2580, "start": 2572, "type": "TagDeclarator", @@ -16291,6 +16386,7 @@ description: Variables in memory after executing gridfinity-bins.kcl 38.8 ], "tag": { + "commentStart": 2599, "end": 2607, "start": 2599, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/kcl_samples/hex-nut/ast.snap b/rust/kcl-lib/tests/kcl_samples/hex-nut/ast.snap index 16fc23b81..de3dd6e43 100644 --- a/rust/kcl-lib/tests/kcl_samples/hex-nut/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/hex-nut/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing hex-nut.kcl "Ok": { "body": [ { + "commentStart": 350, "declaration": { + "commentStart": 397, "end": 0, "id": { + "commentStart": 397, "end": 0, "name": "wallToWallLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 416, "end": 0, "raw": "0.5", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing hex-nut.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants (5/16\" - 24 thread size)" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 420, "declaration": { + "commentStart": 420, "end": 0, "id": { + "commentStart": 420, "end": 0, "name": "thickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 432, "end": 0, "raw": "0.266", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing hex-nut.kcl "type": "VariableDeclaration" }, { + "commentStart": 438, "declaration": { + "commentStart": 438, "end": 0, "id": { + "commentStart": 438, "end": 0, "name": "diameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 449, "end": 0, "raw": "0.3125", "start": 0, @@ -93,9 +108,12 @@ description: Result of parsing hex-nut.kcl "type": "VariableDeclaration" }, { + "commentStart": 455, "declaration": { + "commentStart": 497, "end": 0, "id": { + "commentStart": 497, "end": 0, "name": "hexNut", "start": 0, @@ -105,9 +123,12 @@ description: Result of parsing hex-nut.kcl "body": { "body": [ { + "commentStart": 530, "declaration": { + "commentStart": 530, "end": 0, "id": { + "commentStart": 530, "end": 0, "name": "hexNutSketch", "start": 0, @@ -118,6 +139,7 @@ description: Result of parsing hex-nut.kcl { "arguments": [ { + "commentStart": 559, "end": 0, "raw": "'-XZ'", "start": 0, @@ -127,11 +149,13 @@ description: Result of parsing hex-nut.kcl } ], "callee": { + "commentStart": 545, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 545, "end": 0, "start": 0, "type": "CallExpression", @@ -140,13 +164,17 @@ description: Result of parsing hex-nut.kcl { "arguments": [ { + "commentStart": 588, "elements": [ { + "commentStart": 589, "end": 0, "left": { + "commentStart": 589, "computed": false, "end": 0, "object": { + "commentStart": 589, "end": 0, "name": "start", "start": 0, @@ -154,6 +182,7 @@ description: Result of parsing hex-nut.kcl "type": "Identifier" }, "property": { + "commentStart": 595, "end": 0, "raw": "0", "start": 0, @@ -170,6 +199,7 @@ description: Result of parsing hex-nut.kcl }, "operator": "+", "right": { + "commentStart": 600, "end": 0, "name": "innerDia", "start": 0, @@ -181,9 +211,11 @@ description: Result of parsing hex-nut.kcl "type": "BinaryExpression" }, { + "commentStart": 610, "computed": false, "end": 0, "object": { + "commentStart": 610, "end": 0, "name": "start", "start": 0, @@ -191,6 +223,7 @@ description: Result of parsing hex-nut.kcl "type": "Identifier" }, "property": { + "commentStart": 616, "end": 0, "raw": "1", "start": 0, @@ -212,6 +245,7 @@ description: Result of parsing hex-nut.kcl "type": "ArrayExpression" }, { + "commentStart": 621, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -219,11 +253,13 @@ description: Result of parsing hex-nut.kcl } ], "callee": { + "commentStart": 573, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 573, "end": 0, "start": 0, "type": "CallExpression", @@ -232,11 +268,14 @@ description: Result of parsing hex-nut.kcl { "arguments": [ { + "commentStart": 642, "end": 0, "properties": [ { + "commentStart": 644, "end": 0, "key": { + "commentStart": 644, "end": 0, "name": "angle", "start": 0, @@ -245,6 +284,7 @@ description: Result of parsing hex-nut.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 652, "end": 0, "raw": "240", "start": 0, @@ -257,8 +297,10 @@ description: Result of parsing hex-nut.kcl } }, { + "commentStart": 657, "end": 0, "key": { + "commentStart": 657, "end": 0, "name": "length", "start": 0, @@ -267,6 +309,7 @@ description: Result of parsing hex-nut.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 666, "end": 0, "name": "innerDia", "start": 0, @@ -280,6 +323,7 @@ description: Result of parsing hex-nut.kcl "type": "ObjectExpression" }, { + "commentStart": 678, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -287,11 +331,13 @@ description: Result of parsing hex-nut.kcl } ], "callee": { + "commentStart": 631, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 631, "end": 0, "start": 0, "type": "CallExpression", @@ -300,11 +346,14 @@ description: Result of parsing hex-nut.kcl { "arguments": [ { + "commentStart": 699, "end": 0, "properties": [ { + "commentStart": 701, "end": 0, "key": { + "commentStart": 701, "end": 0, "name": "angle", "start": 0, @@ -313,6 +362,7 @@ description: Result of parsing hex-nut.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 709, "end": 0, "raw": "180", "start": 0, @@ -325,8 +375,10 @@ description: Result of parsing hex-nut.kcl } }, { + "commentStart": 714, "end": 0, "key": { + "commentStart": 714, "end": 0, "name": "length", "start": 0, @@ -335,6 +387,7 @@ description: Result of parsing hex-nut.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 723, "end": 0, "name": "innerDia", "start": 0, @@ -348,6 +401,7 @@ description: Result of parsing hex-nut.kcl "type": "ObjectExpression" }, { + "commentStart": 735, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -355,11 +409,13 @@ description: Result of parsing hex-nut.kcl } ], "callee": { + "commentStart": 688, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 688, "end": 0, "start": 0, "type": "CallExpression", @@ -368,11 +424,14 @@ description: Result of parsing hex-nut.kcl { "arguments": [ { + "commentStart": 756, "end": 0, "properties": [ { + "commentStart": 758, "end": 0, "key": { + "commentStart": 758, "end": 0, "name": "angle", "start": 0, @@ -381,6 +440,7 @@ description: Result of parsing hex-nut.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 766, "end": 0, "raw": "120", "start": 0, @@ -393,8 +453,10 @@ description: Result of parsing hex-nut.kcl } }, { + "commentStart": 771, "end": 0, "key": { + "commentStart": 771, "end": 0, "name": "length", "start": 0, @@ -403,6 +465,7 @@ description: Result of parsing hex-nut.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 780, "end": 0, "name": "innerDia", "start": 0, @@ -416,6 +479,7 @@ description: Result of parsing hex-nut.kcl "type": "ObjectExpression" }, { + "commentStart": 792, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -423,11 +487,13 @@ description: Result of parsing hex-nut.kcl } ], "callee": { + "commentStart": 745, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 745, "end": 0, "start": 0, "type": "CallExpression", @@ -436,11 +502,14 @@ description: Result of parsing hex-nut.kcl { "arguments": [ { + "commentStart": 813, "end": 0, "properties": [ { + "commentStart": 815, "end": 0, "key": { + "commentStart": 815, "end": 0, "name": "angle", "start": 0, @@ -449,6 +518,7 @@ description: Result of parsing hex-nut.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 823, "end": 0, "raw": "60", "start": 0, @@ -461,8 +531,10 @@ description: Result of parsing hex-nut.kcl } }, { + "commentStart": 827, "end": 0, "key": { + "commentStart": 827, "end": 0, "name": "length", "start": 0, @@ -471,6 +543,7 @@ description: Result of parsing hex-nut.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 836, "end": 0, "name": "innerDia", "start": 0, @@ -484,6 +557,7 @@ description: Result of parsing hex-nut.kcl "type": "ObjectExpression" }, { + "commentStart": 848, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -491,11 +565,13 @@ description: Result of parsing hex-nut.kcl } ], "callee": { + "commentStart": 802, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 802, "end": 0, "start": 0, "type": "CallExpression", @@ -504,11 +580,14 @@ description: Result of parsing hex-nut.kcl { "arguments": [ { + "commentStart": 869, "end": 0, "properties": [ { + "commentStart": 871, "end": 0, "key": { + "commentStart": 871, "end": 0, "name": "angle", "start": 0, @@ -517,6 +596,7 @@ description: Result of parsing hex-nut.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 879, "end": 0, "raw": "0", "start": 0, @@ -529,8 +609,10 @@ description: Result of parsing hex-nut.kcl } }, { + "commentStart": 882, "end": 0, "key": { + "commentStart": 882, "end": 0, "name": "length", "start": 0, @@ -539,8 +621,10 @@ description: Result of parsing hex-nut.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 891, "end": 0, "left": { + "commentStart": 891, "end": 0, "name": "innerDia", "start": 0, @@ -549,6 +633,7 @@ description: Result of parsing hex-nut.kcl }, "operator": "*", "right": { + "commentStart": 902, "end": 0, "raw": ".90", "start": 0, @@ -570,6 +655,7 @@ description: Result of parsing hex-nut.kcl "type": "ObjectExpression" }, { + "commentStart": 909, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -577,11 +663,13 @@ description: Result of parsing hex-nut.kcl } ], "callee": { + "commentStart": 858, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 858, "end": 0, "start": 0, "type": "CallExpression", @@ -590,11 +678,13 @@ description: Result of parsing hex-nut.kcl { "arguments": [], "callee": { + "commentStart": 919, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 919, "end": 0, "start": 0, "type": "CallExpression", @@ -607,17 +697,21 @@ description: Result of parsing hex-nut.kcl { "type": "LabeledArg", "label": { + "commentStart": 956, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 965, "elements": [ { + "commentStart": 966, "computed": false, "end": 0, "object": { + "commentStart": 966, "end": 0, "name": "start", "start": 0, @@ -625,6 +719,7 @@ description: Result of parsing hex-nut.kcl "type": "Identifier" }, "property": { + "commentStart": 972, "end": 0, "raw": "0", "start": 0, @@ -640,9 +735,11 @@ description: Result of parsing hex-nut.kcl "type": "MemberExpression" }, { + "commentStart": 976, "computed": false, "end": 0, "object": { + "commentStart": 976, "end": 0, "name": "start", "start": 0, @@ -650,6 +747,7 @@ description: Result of parsing hex-nut.kcl "type": "Identifier" }, "property": { + "commentStart": 982, "end": 0, "raw": "1", "start": 0, @@ -674,14 +772,17 @@ description: Result of parsing hex-nut.kcl { "type": "LabeledArg", "label": { + "commentStart": 996, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1005, "end": 0, "left": { + "commentStart": 1005, "end": 0, "name": "innerDia", "start": 0, @@ -690,6 +791,7 @@ description: Result of parsing hex-nut.kcl }, "operator": "/", "right": { + "commentStart": 1016, "end": 0, "raw": "2", "start": 0, @@ -707,11 +809,13 @@ description: Result of parsing hex-nut.kcl } ], "callee": { + "commentStart": 939, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 939, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -719,6 +823,7 @@ description: Result of parsing hex-nut.kcl "unlabeled": null }, { + "commentStart": 1028, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -726,11 +831,13 @@ description: Result of parsing hex-nut.kcl } ], "callee": { + "commentStart": 934, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 934, "end": 0, "start": 0, "type": "CallExpression", @@ -741,12 +848,14 @@ description: Result of parsing hex-nut.kcl { "type": "LabeledArg", "label": { + "commentStart": 1046, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1055, "end": 0, "name": "thk", "start": 0, @@ -756,11 +865,13 @@ description: Result of parsing hex-nut.kcl } ], "callee": { + "commentStart": 1038, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1038, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -768,6 +879,7 @@ description: Result of parsing hex-nut.kcl "unlabeled": null } ], + "commentStart": 545, "end": 0, "start": 0, "type": "PipeExpression", @@ -784,26 +896,31 @@ description: Result of parsing hex-nut.kcl }, { "argument": { + "commentStart": 1069, "end": 0, "name": "hexNutSketch", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1062, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 526, "end": 0, "start": 0 }, + "commentStart": 503, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 504, "end": 0, "name": "start", "start": 0, @@ -813,6 +930,7 @@ description: Result of parsing hex-nut.kcl { "type": "Parameter", "identifier": { + "commentStart": 511, "end": 0, "name": "thk", "start": 0, @@ -822,6 +940,7 @@ description: Result of parsing hex-nut.kcl { "type": "Parameter", "identifier": { + "commentStart": 516, "end": 0, "name": "innerDia", "start": 0, @@ -838,17 +957,25 @@ description: Result of parsing hex-nut.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// Define a function for the hex nut" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1083, "end": 0, "expression": { "arguments": [ { + "commentStart": 1112, "elements": [ { + "commentStart": 1113, "end": 0, "raw": "0", "start": 0, @@ -860,6 +987,7 @@ description: Result of parsing hex-nut.kcl } }, { + "commentStart": 1116, "end": 0, "raw": "0", "start": 0, @@ -877,6 +1005,7 @@ description: Result of parsing hex-nut.kcl "type": "ArrayExpression" }, { + "commentStart": 1120, "end": 0, "name": "thickness", "start": 0, @@ -884,6 +1013,7 @@ description: Result of parsing hex-nut.kcl "type": "Identifier" }, { + "commentStart": 1131, "end": 0, "name": "diameter", "start": 0, @@ -892,35 +1022,54 @@ description: Result of parsing hex-nut.kcl } ], "callee": { + "commentStart": 1105, "end": 0, "name": "hexNut", "start": 0, "type": "Identifier" }, + "commentStart": 1105, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "preComments": [ + "", + "", + "// Create a hex nut" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 318, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Hex nut", + "// A hex nut is a type of fastener with a threaded hole and a hexagonal outer shape, used in a wide variety of applications to secure parts together. The hexagonal shape allows for a greater torque to be applied with wrenches or tools, making it one of the most common nut types in hardware.", + "", + "", + "// Set Units" + ], "properties": [ { + "commentStart": 327, "end": 0, "key": { + "commentStart": 327, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -929,6 +1078,7 @@ description: Result of parsing hex-nut.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 347, "end": 0, "name": "in", "start": 0, @@ -942,88 +1092,16 @@ description: Result of parsing hex-nut.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "2": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Define a function for the hex nut", - "style": "line" - } - } - ], - "3": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create a hex nut", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Hex nut", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A hex nut is a type of fastener with a threaded hole and a hexagonal outer shape, used in a wide variety of applications to secure parts together. The hexagonal shape allows for a greater torque to be applied with wrenches or tools, making it one of the most common nut types in hardware.", - "style": "line" - } - }, - { + "commentStart": 350, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set Units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants (5/16\" - 24 thread size)", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/i-beam/ast.snap b/rust/kcl-lib/tests/kcl_samples/i-beam/ast.snap index 08fb2c169..2705fa461 100644 --- a/rust/kcl-lib/tests/kcl_samples/i-beam/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/i-beam/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing i-beam.kcl "Ok": { "body": [ { + "commentStart": 143, "declaration": { + "commentStart": 170, "end": 0, "id": { + "commentStart": 170, "end": 0, "name": "beamLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 183, "end": 0, "raw": "24", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing i-beam.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define Beam Dimensions" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 186, "declaration": { + "commentStart": 186, "end": 0, "id": { + "commentStart": 186, "end": 0, "name": "beamWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 198, "end": 0, "raw": "2.663", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing i-beam.kcl "type": "VariableDeclaration" }, { + "commentStart": 204, "declaration": { + "commentStart": 204, "end": 0, "id": { + "commentStart": 204, "end": 0, "name": "beamHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 217, "end": 0, "raw": "4", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing i-beam.kcl "type": "VariableDeclaration" }, { + "commentStart": 219, "declaration": { + "commentStart": 219, "end": 0, "id": { + "commentStart": 219, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 235, "end": 0, "raw": "0.293", "start": 0, @@ -122,9 +141,12 @@ description: Result of parsing i-beam.kcl "type": "VariableDeclaration" }, { + "commentStart": 240, "declaration": { + "commentStart": 367, "end": 0, "id": { + "commentStart": 367, "end": 0, "name": "sketch001", "start": 0, @@ -135,6 +157,7 @@ description: Result of parsing i-beam.kcl { "arguments": [ { + "commentStart": 393, "end": 0, "raw": "'-XZ'", "start": 0, @@ -144,11 +167,13 @@ description: Result of parsing i-beam.kcl } ], "callee": { + "commentStart": 379, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 379, "end": 0, "start": 0, "type": "CallExpression", @@ -157,8 +182,10 @@ description: Result of parsing i-beam.kcl { "arguments": [ { + "commentStart": 420, "elements": [ { + "commentStart": 421, "end": 0, "raw": "0", "start": 0, @@ -170,8 +197,10 @@ description: Result of parsing i-beam.kcl } }, { + "commentStart": 424, "end": 0, "left": { + "commentStart": 424, "end": 0, "name": "beamHeight", "start": 0, @@ -180,6 +209,7 @@ description: Result of parsing i-beam.kcl }, "operator": "/", "right": { + "commentStart": 435, "end": 0, "raw": "2", "start": 0, @@ -201,6 +231,7 @@ description: Result of parsing i-beam.kcl "type": "ArrayExpression" }, { + "commentStart": 439, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -208,11 +239,13 @@ description: Result of parsing i-beam.kcl } ], "callee": { + "commentStart": 405, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 405, "end": 0, "start": 0, "type": "CallExpression", @@ -223,14 +256,17 @@ description: Result of parsing i-beam.kcl { "type": "LabeledArg", "label": { + "commentStart": 453, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 462, "end": 0, "left": { + "commentStart": 462, "end": 0, "name": "beamWidth", "start": 0, @@ -239,6 +275,7 @@ description: Result of parsing i-beam.kcl }, "operator": "/", "right": { + "commentStart": 472, "end": 0, "raw": "2", "start": 0, @@ -256,11 +293,13 @@ description: Result of parsing i-beam.kcl } ], "callee": { + "commentStart": 447, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 447, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -272,6 +311,7 @@ description: Result of parsing i-beam.kcl { "type": "LabeledArg", "label": { + "commentStart": 486, "end": 0, "name": "length", "start": 0, @@ -279,12 +319,14 @@ description: Result of parsing i-beam.kcl }, "arg": { "argument": { + "commentStart": 496, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 495, "end": 0, "operator": "-", "start": 0, @@ -294,11 +336,13 @@ description: Result of parsing i-beam.kcl } ], "callee": { + "commentStart": 480, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 480, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -310,14 +354,17 @@ description: Result of parsing i-beam.kcl { "type": "LabeledArg", "label": { + "commentStart": 522, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 536, "end": 0, "left": { + "commentStart": 536, "end": 0, "name": "wallThickness", "start": 0, @@ -326,6 +373,7 @@ description: Result of parsing i-beam.kcl }, "operator": "/", "right": { + "commentStart": 550, "end": 0, "raw": "2", "start": 0, @@ -343,11 +391,13 @@ description: Result of parsing i-beam.kcl } ], "callee": { + "commentStart": 516, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 516, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -359,12 +409,14 @@ description: Result of parsing i-beam.kcl { "type": "LabeledArg", "label": { + "commentStart": 564, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 578, "end": 0, "raw": "0", "start": 0, @@ -378,11 +430,13 @@ description: Result of parsing i-beam.kcl } ], "callee": { + "commentStart": 558, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 558, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -392,11 +446,14 @@ description: Result of parsing i-beam.kcl { "arguments": [ { + "commentStart": 595, "end": 0, "properties": [ { + "commentStart": 597, "end": 0, "key": { + "commentStart": 597, "end": 0, "name": "axis", "start": 0, @@ -405,6 +462,7 @@ description: Result of parsing i-beam.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 604, "end": 0, "raw": "'X'", "start": 0, @@ -419,6 +477,7 @@ description: Result of parsing i-beam.kcl "type": "ObjectExpression" }, { + "commentStart": 611, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -426,11 +485,13 @@ description: Result of parsing i-beam.kcl } ], "callee": { + "commentStart": 586, "end": 0, "name": "mirror2d", "start": 0, "type": "Identifier" }, + "commentStart": 586, "end": 0, "start": 0, "type": "CallExpression", @@ -439,11 +500,14 @@ description: Result of parsing i-beam.kcl { "arguments": [ { + "commentStart": 628, "end": 0, "properties": [ { + "commentStart": 630, "end": 0, "key": { + "commentStart": 630, "end": 0, "name": "axis", "start": 0, @@ -452,6 +516,7 @@ description: Result of parsing i-beam.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 637, "end": 0, "raw": "'Y'", "start": 0, @@ -466,6 +531,7 @@ description: Result of parsing i-beam.kcl "type": "ObjectExpression" }, { + "commentStart": 644, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -473,11 +539,13 @@ description: Result of parsing i-beam.kcl } ], "callee": { + "commentStart": 619, "end": 0, "name": "mirror2d", "start": 0, "type": "Identifier" }, + "commentStart": 619, "end": 0, "start": 0, "type": "CallExpression", @@ -488,12 +556,14 @@ description: Result of parsing i-beam.kcl { "type": "LabeledArg", "label": { + "commentStart": 660, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 669, "end": 0, "name": "beamLength", "start": 0, @@ -503,11 +573,13 @@ description: Result of parsing i-beam.kcl } ], "callee": { + "commentStart": 652, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 652, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -515,6 +587,7 @@ description: Result of parsing i-beam.kcl "unlabeled": null } ], + "commentStart": 379, "end": 0, "start": 0, "type": "PipeExpression", @@ -525,25 +598,42 @@ description: Result of parsing i-beam.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Sketch a quadrant of the beam cross section, then mirror for symmetry across each axis. Extrude to the appropriate length" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 111, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// I-beam", + "// A structural metal beam with an I shaped cross section. Often used in construction", + "", + "", + "// Set Units" + ], "properties": [ { + "commentStart": 120, "end": 0, "key": { + "commentStart": 120, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -552,6 +642,7 @@ description: Result of parsing i-beam.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 140, "end": 0, "name": "in", "start": 0, @@ -565,76 +656,16 @@ description: Result of parsing i-beam.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "3": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Sketch a quadrant of the beam cross section, then mirror for symmetry across each axis. Extrude to the appropriate length", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "I-beam", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A structural metal beam with an I shaped cross section. Often used in construction", - "style": "line" - } - }, - { + "commentStart": 143, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set Units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define Beam Dimensions", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/kitt/ast.snap b/rust/kcl-lib/tests/kcl_samples/kitt/ast.snap index 4eab88eb0..262b258ea 100644 --- a/rust/kcl-lib/tests/kcl_samples/kitt/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/kitt/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing kitt.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 87, "end": 0, "id": { + "commentStart": 87, "end": 0, "name": "pixelBox", "start": 0, @@ -18,9 +21,12 @@ description: Result of parsing kitt.kcl "body": { "body": [ { + "commentStart": 168, "declaration": { + "commentStart": 168, "end": 0, "id": { + "commentStart": 168, "end": 0, "name": "pixelBoxBody", "start": 0, @@ -31,6 +37,7 @@ description: Result of parsing kitt.kcl { "arguments": [ { + "commentStart": 197, "end": 0, "name": "kitExtrude", "start": 0, @@ -38,6 +45,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 209, "end": 0, "name": "extrudeTag", "start": 0, @@ -46,11 +54,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 183, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 183, "end": 0, "start": 0, "type": "CallExpression", @@ -59,8 +69,10 @@ description: Result of parsing kitt.kcl { "arguments": [ { + "commentStart": 243, "elements": [ { + "commentStart": 244, "end": 0, "name": "positionY", "start": 0, @@ -68,6 +80,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 255, "end": 0, "name": "positionZ", "start": 0, @@ -81,6 +94,7 @@ description: Result of parsing kitt.kcl "type": "ArrayExpression" }, { + "commentStart": 267, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -88,11 +102,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 228, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 228, "end": 0, "start": 0, "type": "CallExpression", @@ -103,14 +119,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 282, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 288, "elements": [ { + "commentStart": 289, "end": 0, "raw": "0", "start": 0, @@ -122,6 +141,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 292, "end": 0, "name": "height", "start": 0, @@ -137,11 +157,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 277, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 277, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -153,14 +175,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 313, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 319, "elements": [ { + "commentStart": 320, "end": 0, "name": "width", "start": 0, @@ -168,6 +193,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 327, "end": 0, "raw": "0", "start": 0, @@ -187,11 +213,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 308, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 308, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -203,14 +231,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 343, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 349, "elements": [ { + "commentStart": 350, "end": 0, "raw": "0", "start": 0, @@ -223,12 +254,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 354, "end": 0, "name": "height", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 353, "end": 0, "operator": "-", "start": 0, @@ -244,11 +277,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 338, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 338, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -260,16 +295,19 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 375, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 389, "elements": [ { "arguments": [ { + "commentStart": 404, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -277,11 +315,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 390, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 390, "end": 0, "start": 0, "type": "CallExpression", @@ -290,6 +330,7 @@ description: Result of parsing kitt.kcl { "arguments": [ { + "commentStart": 422, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -297,11 +338,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 408, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 408, "end": 0, "start": 0, "type": "CallExpression", @@ -316,11 +359,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 370, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 370, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -330,11 +375,13 @@ description: Result of parsing kitt.kcl { "arguments": [], "callee": { + "commentStart": 434, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 434, "end": 0, "start": 0, "type": "CallExpression", @@ -345,12 +392,14 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 457, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 466, "end": 0, "name": "depth", "start": 0, @@ -360,11 +409,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 449, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 449, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -372,6 +423,7 @@ description: Result of parsing kitt.kcl "unlabeled": null } ], + "commentStart": 183, "end": 0, "start": 0, "type": "PipeExpression", @@ -388,26 +440,31 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 482, "end": 0, "name": "pixelBoxBody", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 475, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 164, "end": 0, "start": 0 }, + "commentStart": 95, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 96, "end": 0, "name": "kitExtrude", "start": 0, @@ -417,6 +474,7 @@ description: Result of parsing kitt.kcl { "type": "Parameter", "identifier": { + "commentStart": 108, "end": 0, "name": "extrudeTag", "start": 0, @@ -426,6 +484,7 @@ description: Result of parsing kitt.kcl { "type": "Parameter", "identifier": { + "commentStart": 120, "end": 0, "name": "positionY", "start": 0, @@ -435,6 +494,7 @@ description: Result of parsing kitt.kcl { "type": "Parameter", "identifier": { + "commentStart": 131, "end": 0, "name": "positionZ", "start": 0, @@ -444,6 +504,7 @@ description: Result of parsing kitt.kcl { "type": "Parameter", "identifier": { + "commentStart": 142, "end": 0, "name": "width", "start": 0, @@ -453,6 +514,7 @@ description: Result of parsing kitt.kcl { "type": "Parameter", "identifier": { + "commentStart": 149, "end": 0, "name": "height", "start": 0, @@ -462,6 +524,7 @@ description: Result of parsing kitt.kcl { "type": "Parameter", "identifier": { + "commentStart": 157, "end": 0, "name": "depth", "start": 0, @@ -478,20 +541,31 @@ description: Result of parsing kitt.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "// Kitt", + "// The beloved KittyCAD mascot in a voxelized style.", + "", + "", + "// pixel box function" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 496, "declaration": { + "commentStart": 515, "end": 0, "id": { + "commentStart": 515, "end": 0, "name": "kitBodyElevation", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 534, "end": 0, "raw": "6", "start": 0, @@ -507,20 +581,29 @@ description: Result of parsing kitt.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// 1. Kitty Body" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 536, "declaration": { + "commentStart": 536, "end": 0, "id": { + "commentStart": 536, "end": 0, "name": "kitBodyWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 551, "end": 0, "raw": "26", "start": 0, @@ -541,15 +624,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 554, "declaration": { + "commentStart": 554, "end": 0, "id": { + "commentStart": 554, "end": 0, "name": "kitBodyHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 570, "end": 0, "raw": "25", "start": 0, @@ -570,15 +657,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 573, "declaration": { + "commentStart": 573, "end": 0, "id": { + "commentStart": 573, "end": 0, "name": "kitBodyDepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 588, "end": 0, "raw": "18", "start": 0, @@ -599,9 +690,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 590, "declaration": { + "commentStart": 592, "end": 0, "id": { + "commentStart": 592, "end": 0, "name": "kitBody", "start": 0, @@ -612,6 +706,7 @@ description: Result of parsing kitt.kcl { "arguments": [ { + "commentStart": 616, "end": 0, "raw": "'XZ'", "start": 0, @@ -621,11 +716,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 602, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 602, "end": 0, "start": 0, "type": "CallExpression", @@ -634,17 +731,21 @@ description: Result of parsing kitt.kcl { "arguments": [ { + "commentStart": 642, "elements": [ { + "commentStart": 643, "end": 0, "left": { "argument": { + "commentStart": 644, "end": 0, "name": "kitBodyWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 643, "end": 0, "operator": "-", "start": 0, @@ -653,6 +754,7 @@ description: Result of parsing kitt.kcl }, "operator": "/", "right": { + "commentStart": 659, "end": 0, "raw": "2", "start": 0, @@ -668,6 +770,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 662, "end": 0, "name": "kitBodyElevation", "start": 0, @@ -681,6 +784,7 @@ description: Result of parsing kitt.kcl "type": "ArrayExpression" }, { + "commentStart": 681, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -688,11 +792,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 627, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 627, "end": 0, "start": 0, "type": "CallExpression", @@ -703,14 +809,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 694, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 700, "elements": [ { + "commentStart": 701, "end": 0, "raw": "0", "start": 0, @@ -722,6 +831,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 704, "end": 0, "name": "kitBodyHeight", "start": 0, @@ -737,11 +847,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 689, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 689, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -753,14 +865,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 730, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 736, "elements": [ { + "commentStart": 737, "end": 0, "name": "kitBodyWidth", "start": 0, @@ -768,6 +883,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 751, "end": 0, "raw": "0", "start": 0, @@ -788,12 +904,14 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 755, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 761, "end": 0, "start": 0, "type": "TagDeclarator", @@ -803,11 +921,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 725, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 725, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -819,14 +939,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 779, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 785, "elements": [ { + "commentStart": 786, "end": 0, "raw": "0", "start": 0, @@ -839,12 +962,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 790, "end": 0, "name": "kitBodyHeight", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 789, "end": 0, "operator": "-", "start": 0, @@ -861,12 +986,14 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 806, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 812, "end": 0, "start": 0, "type": "TagDeclarator", @@ -876,11 +1003,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 774, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 774, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -892,16 +1021,19 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 830, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 844, "elements": [ { "arguments": [ { + "commentStart": 859, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -909,11 +1041,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 845, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 845, "end": 0, "start": 0, "type": "CallExpression", @@ -922,6 +1056,7 @@ description: Result of parsing kitt.kcl { "arguments": [ { + "commentStart": 877, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -929,11 +1064,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 863, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 863, "end": 0, "start": 0, "type": "CallExpression", @@ -948,11 +1085,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 825, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 825, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -962,11 +1101,13 @@ description: Result of parsing kitt.kcl { "arguments": [], "callee": { + "commentStart": 887, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 887, "end": 0, "start": 0, "type": "CallExpression", @@ -977,12 +1118,14 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 908, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 917, "end": 0, "name": "kitBodyDepth", "start": 0, @@ -992,11 +1135,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 900, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 900, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1004,11 +1149,13 @@ description: Result of parsing kitt.kcl "unlabeled": null } ], + "commentStart": 602, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "7": [ { + "commentStart": 930, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1036,15 +1183,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 968, "declaration": { + "commentStart": 968, "end": 0, "id": { + "commentStart": 968, "end": 0, "name": "kitHeadOffset", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 984, "end": 0, "raw": "1", "start": 0, @@ -1065,15 +1216,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 986, "declaration": { + "commentStart": 986, "end": 0, "id": { + "commentStart": 986, "end": 0, "name": "kitHeadHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1002, "end": 0, "raw": "16", "start": 0, @@ -1094,21 +1249,28 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 1004, "declaration": { + "commentStart": 1006, "end": 0, "id": { + "commentStart": 1006, "end": 0, "name": "kitHeadElevation", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1025, "end": 0, "left": { + "commentStart": 1025, "end": 0, "left": { + "commentStart": 1025, "end": 0, "left": { + "commentStart": 1025, "end": 0, "name": "kitBodyElevation", "start": 0, @@ -1117,6 +1279,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 1044, "end": 0, "name": "kitBodyHeight", "start": 0, @@ -1129,6 +1292,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 1060, "end": 0, "name": "kitHeadOffset", "start": 0, @@ -1141,6 +1305,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 1076, "end": 0, "name": "kitHeadHeight", "start": 0, @@ -1161,17 +1326,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 1089, "declaration": { + "commentStart": 1091, "end": 0, "id": { + "commentStart": 1091, "end": 0, "name": "kitHeadWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1106, "end": 0, "left": { + "commentStart": 1106, "end": 0, "name": "kitBodyWidth", "start": 0, @@ -1180,8 +1350,10 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 1122, "end": 0, "left": { + "commentStart": 1122, "end": 0, "name": "kitHeadOffset", "start": 0, @@ -1190,6 +1362,7 @@ description: Result of parsing kitt.kcl }, "operator": "*", "right": { + "commentStart": 1138, "end": 0, "raw": "2", "start": 0, @@ -1218,15 +1391,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 1141, "declaration": { + "commentStart": 1141, "end": 0, "id": { + "commentStart": 1141, "end": 0, "name": "kitHeadDepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1156, "end": 0, "raw": "3", "start": 0, @@ -1247,9 +1424,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 1158, "declaration": { + "commentStart": 1158, "end": 0, "id": { + "commentStart": 1158, "end": 0, "name": "kitHead", "start": 0, @@ -1258,6 +1438,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 1177, "end": 0, "name": "kitBody", "start": 0, @@ -1265,6 +1446,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 1186, "end": 0, "raw": "'END'", "start": 0, @@ -1273,15 +1455,18 @@ description: Result of parsing kitt.kcl "value": "END" }, { + "commentStart": 1193, "end": 0, "left": { "argument": { + "commentStart": 1194, "end": 0, "name": "kitHeadWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1193, "end": 0, "operator": "-", "start": 0, @@ -1290,6 +1475,7 @@ description: Result of parsing kitt.kcl }, "operator": "/", "right": { + "commentStart": 1209, "end": 0, "raw": "2", "start": 0, @@ -1305,6 +1491,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 1212, "end": 0, "name": "kitHeadElevation", "start": 0, @@ -1312,6 +1499,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 1230, "end": 0, "name": "kitHeadWidth", "start": 0, @@ -1319,6 +1507,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 1244, "end": 0, "name": "kitHeadHeight", "start": 0, @@ -1326,6 +1515,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 1259, "end": 0, "name": "kitHeadDepth", "start": 0, @@ -1334,11 +1524,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 1168, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 1168, "end": 0, "start": 0, "type": "CallExpression", @@ -1354,17 +1546,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 1273, "declaration": { + "commentStart": 1273, "end": 0, "id": { + "commentStart": 1273, "end": 0, "name": "kitFaceElevation", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1292, "end": 0, "left": { + "commentStart": 1292, "end": 0, "name": "kitHeadElevation", "start": 0, @@ -1373,6 +1570,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 1311, "end": 0, "raw": "2", "start": 0, @@ -1397,17 +1595,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 1312, "declaration": { + "commentStart": 1331, "end": 0, "id": { + "commentStart": 1331, "end": 0, "name": "kitFaceWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1346, "end": 0, "left": { + "commentStart": 1346, "end": 0, "name": "kitHeadWidth", "start": 0, @@ -1416,6 +1619,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 1361, "end": 0, "raw": "4", "start": 0, @@ -1435,26 +1639,38 @@ description: Result of parsing kitt.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// 3. Kitty Face" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1363, "declaration": { + "commentStart": 1363, "end": 0, "id": { + "commentStart": 1363, "end": 0, "name": "kitFaceHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1379, "end": 0, "left": { + "commentStart": 1379, "end": 0, "left": { + "commentStart": 1379, "end": 0, "left": { + "commentStart": 1379, "end": 0, "name": "kitHeadElevation", "start": 0, @@ -1463,6 +1679,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 1398, "end": 0, "name": "kitHeadHeight", "start": 0, @@ -1475,6 +1692,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 1414, "end": 0, "name": "kitFaceElevation", "start": 0, @@ -1487,6 +1705,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 1433, "end": 0, "raw": "3", "start": 0, @@ -1511,15 +1730,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 1435, "declaration": { + "commentStart": 1435, "end": 0, "id": { + "commentStart": 1435, "end": 0, "name": "kitFaceDepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1450, "end": 0, "raw": "2", "start": 0, @@ -1540,9 +1763,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 1451, "declaration": { + "commentStart": 1453, "end": 0, "id": { + "commentStart": 1453, "end": 0, "name": "kitFace", "start": 0, @@ -1553,6 +1779,7 @@ description: Result of parsing kitt.kcl { "arguments": [ { + "commentStart": 1477, "end": 0, "name": "kitHead", "start": 0, @@ -1560,6 +1787,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 1486, "end": 0, "raw": "'END'", "start": 0, @@ -1569,11 +1797,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 1463, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1463, "end": 0, "start": 0, "type": "CallExpression", @@ -1582,17 +1812,21 @@ description: Result of parsing kitt.kcl { "arguments": [ { + "commentStart": 1513, "elements": [ { + "commentStart": 1514, "end": 0, "left": { "argument": { + "commentStart": 1515, "end": 0, "name": "kitFaceWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1514, "end": 0, "operator": "-", "start": 0, @@ -1601,6 +1835,7 @@ description: Result of parsing kitt.kcl }, "operator": "/", "right": { + "commentStart": 1530, "end": 0, "raw": "2", "start": 0, @@ -1616,6 +1851,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 1533, "end": 0, "name": "kitFaceElevation", "start": 0, @@ -1629,6 +1865,7 @@ description: Result of parsing kitt.kcl "type": "ArrayExpression" }, { + "commentStart": 1552, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1636,11 +1873,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 1498, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1498, "end": 0, "start": 0, "type": "CallExpression", @@ -1651,14 +1890,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 1565, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1571, "elements": [ { + "commentStart": 1572, "end": 0, "raw": "0", "start": 0, @@ -1670,6 +1912,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 1575, "end": 0, "raw": "1", "start": 0, @@ -1689,11 +1932,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 1560, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1560, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1705,15 +1950,18 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 1613, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1619, "elements": [ { "argument": { + "commentStart": 1621, "end": 0, "raw": "1", "start": 0, @@ -1724,6 +1972,7 @@ description: Result of parsing kitt.kcl "suffix": "None" } }, + "commentStart": 1620, "end": 0, "operator": "-", "start": 0, @@ -1731,6 +1980,7 @@ description: Result of parsing kitt.kcl "type": "UnaryExpression" }, { + "commentStart": 1624, "end": 0, "raw": "0", "start": 0, @@ -1750,11 +2000,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 1608, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1608, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1766,14 +2018,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 1664, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1670, "elements": [ { + "commentStart": 1671, "end": 0, "raw": "0", "start": 0, @@ -1785,6 +2040,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 1674, "end": 0, "name": "kitFaceHeight", "start": 0, @@ -1800,11 +2056,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 1659, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1659, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1816,14 +2074,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 1716, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1722, "elements": [ { + "commentStart": 1723, "end": 0, "raw": "1", "start": 0, @@ -1835,6 +2096,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 1726, "end": 0, "raw": "0", "start": 0, @@ -1854,11 +2116,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 1711, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1711, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1870,14 +2134,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 1767, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1773, "elements": [ { + "commentStart": 1774, "end": 0, "raw": "0", "start": 0, @@ -1889,6 +2156,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 1777, "end": 0, "raw": "1", "start": 0, @@ -1908,11 +2176,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 1762, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1762, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1924,14 +2194,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 1815, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1821, "elements": [ { + "commentStart": 1822, "end": 0, "name": "kitFaceWidth", "start": 0, @@ -1939,6 +2212,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 1836, "end": 0, "raw": "0", "start": 0, @@ -1958,11 +2232,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 1810, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1810, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1974,14 +2250,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 1870, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1876, "elements": [ { + "commentStart": 1877, "end": 0, "raw": "0", "start": 0, @@ -1994,6 +2273,7 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 1881, "end": 0, "raw": "1", "start": 0, @@ -2004,6 +2284,7 @@ description: Result of parsing kitt.kcl "suffix": "None" } }, + "commentStart": 1880, "end": 0, "operator": "-", "start": 0, @@ -2019,11 +2300,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 1865, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1865, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2035,14 +2318,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 1922, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1928, "elements": [ { + "commentStart": 1929, "end": 0, "raw": "1", "start": 0, @@ -2054,6 +2340,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 1932, "end": 0, "raw": "0", "start": 0, @@ -2073,11 +2360,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 1917, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1917, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2089,14 +2378,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 1974, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1980, "elements": [ { + "commentStart": 1981, "end": 0, "raw": "0", "start": 0, @@ -2109,12 +2401,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 1985, "end": 0, "name": "kitFaceHeight", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1984, "end": 0, "operator": "-", "start": 0, @@ -2130,11 +2424,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 1969, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1969, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2146,15 +2442,18 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 2030, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2036, "elements": [ { "argument": { + "commentStart": 2038, "end": 0, "raw": "1", "start": 0, @@ -2165,6 +2464,7 @@ description: Result of parsing kitt.kcl "suffix": "None" } }, + "commentStart": 2037, "end": 0, "operator": "-", "start": 0, @@ -2172,6 +2472,7 @@ description: Result of parsing kitt.kcl "type": "UnaryExpression" }, { + "commentStart": 2041, "end": 0, "raw": "0", "start": 0, @@ -2191,11 +2492,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 2025, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2025, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2207,14 +2510,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 2082, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2088, "elements": [ { + "commentStart": 2089, "end": 0, "raw": "0", "start": 0, @@ -2227,6 +2533,7 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 2093, "end": 0, "raw": "1", "start": 0, @@ -2237,6 +2544,7 @@ description: Result of parsing kitt.kcl "suffix": "None" } }, + "commentStart": 2092, "end": 0, "operator": "-", "start": 0, @@ -2252,11 +2560,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 2077, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2077, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2268,16 +2578,19 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 2134, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2148, "elements": [ { "arguments": [ { + "commentStart": 2163, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2285,11 +2598,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 2149, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 2149, "end": 0, "start": 0, "type": "CallExpression", @@ -2298,6 +2613,7 @@ description: Result of parsing kitt.kcl { "arguments": [ { + "commentStart": 2181, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2305,11 +2621,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 2167, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 2167, "end": 0, "start": 0, "type": "CallExpression", @@ -2324,11 +2642,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 2129, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2129, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2338,11 +2658,13 @@ description: Result of parsing kitt.kcl { "arguments": [], "callee": { + "commentStart": 2191, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2191, "end": 0, "start": 0, "type": "CallExpression", @@ -2353,6 +2675,7 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 2212, "end": 0, "name": "length", "start": 0, @@ -2360,12 +2683,14 @@ description: Result of parsing kitt.kcl }, "arg": { "argument": { + "commentStart": 2222, "end": 0, "name": "kitFaceDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2221, "end": 0, "operator": "-", "start": 0, @@ -2375,11 +2700,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 2204, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2204, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2387,11 +2714,13 @@ description: Result of parsing kitt.kcl "unlabeled": null } ], + "commentStart": 1463, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 1578, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2404,6 +2733,7 @@ description: Result of parsing kitt.kcl ], "3": [ { + "commentStart": 1627, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2416,6 +2746,7 @@ description: Result of parsing kitt.kcl ], "4": [ { + "commentStart": 1689, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2428,6 +2759,7 @@ description: Result of parsing kitt.kcl ], "5": [ { + "commentStart": 1729, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2440,6 +2772,7 @@ description: Result of parsing kitt.kcl ], "6": [ { + "commentStart": 1780, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2452,6 +2785,7 @@ description: Result of parsing kitt.kcl ], "7": [ { + "commentStart": 1839, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2464,6 +2798,7 @@ description: Result of parsing kitt.kcl ], "8": [ { + "commentStart": 1884, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2476,6 +2811,7 @@ description: Result of parsing kitt.kcl ], "9": [ { + "commentStart": 1935, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2488,6 +2824,7 @@ description: Result of parsing kitt.kcl ], "10": [ { + "commentStart": 2000, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2500,6 +2837,7 @@ description: Result of parsing kitt.kcl ], "11": [ { + "commentStart": 2044, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2512,6 +2850,7 @@ description: Result of parsing kitt.kcl ], "12": [ { + "commentStart": 2096, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2524,6 +2863,7 @@ description: Result of parsing kitt.kcl ], "15": [ { + "commentStart": 2237, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2534,6 +2874,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 2264, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2544,6 +2885,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 2282, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2571,15 +2913,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 2308, "declaration": { + "commentStart": 2308, "end": 0, "id": { + "commentStart": 2308, "end": 0, "name": "kitEyeDepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 2322, "end": 0, "raw": "0.5", "start": 0, @@ -2600,17 +2946,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 2326, "declaration": { + "commentStart": 2326, "end": 0, "id": { + "commentStart": 2326, "end": 0, "name": "kitEyeHeihgt", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 2341, "end": 0, "left": { + "commentStart": 2341, "end": 0, "name": "kitFaceElevation", "start": 0, @@ -2619,6 +2970,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 2360, "end": 0, "raw": "7", "start": 0, @@ -2643,15 +2995,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 2362, "declaration": { + "commentStart": 2362, "end": 0, "id": { + "commentStart": 2362, "end": 0, "name": "kitEyeOffset", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 2377, "end": 0, "raw": "7", "start": 0, @@ -2672,9 +3028,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 2378, "declaration": { + "commentStart": 2405, "end": 0, "id": { + "commentStart": 2405, "end": 0, "name": "kitLeftEye1", "start": 0, @@ -2683,6 +3042,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 2428, "end": 0, "name": "kitFace", "start": 0, @@ -2690,6 +3050,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 2437, "end": 0, "raw": "'START'", "start": 0, @@ -2699,12 +3060,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 2447, "end": 0, "name": "kitEyeOffset", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2446, "end": 0, "operator": "-", "start": 0, @@ -2712,6 +3075,7 @@ description: Result of parsing kitt.kcl "type": "UnaryExpression" }, { + "commentStart": 2461, "end": 0, "name": "kitEyeHeihgt", "start": 0, @@ -2719,6 +3083,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 2475, "end": 0, "raw": "1", "start": 0, @@ -2730,6 +3095,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 2478, "end": 0, "raw": "1", "start": 0, @@ -2741,6 +3107,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 2481, "end": 0, "name": "kitEyeDepth", "start": 0, @@ -2749,11 +3116,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 2419, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 2419, "end": 0, "start": 0, "type": "CallExpression", @@ -2764,14 +3133,22 @@ description: Result of parsing kitt.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// 3.1.2 Kitty Right Eye" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2493, "declaration": { + "commentStart": 2513, "end": 0, "id": { + "commentStart": 2513, "end": 0, "name": "kitLeftEye2", "start": 0, @@ -2780,6 +3157,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 2536, "end": 0, "name": "kitFace", "start": 0, @@ -2787,6 +3165,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 2545, "end": 0, "raw": "'START'", "start": 0, @@ -2795,15 +3174,18 @@ description: Result of parsing kitt.kcl "value": "START" }, { + "commentStart": 2554, "end": 0, "left": { "argument": { + "commentStart": 2555, "end": 0, "name": "kitEyeOffset", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2554, "end": 0, "operator": "-", "start": 0, @@ -2812,6 +3194,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 2570, "end": 0, "raw": "1", "start": 0, @@ -2827,8 +3210,10 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 2573, "end": 0, "left": { + "commentStart": 2573, "end": 0, "name": "kitEyeHeihgt", "start": 0, @@ -2837,6 +3222,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 2588, "end": 0, "raw": "1", "start": 0, @@ -2852,6 +3238,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 2591, "end": 0, "raw": "3", "start": 0, @@ -2863,6 +3250,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 2594, "end": 0, "raw": "1", "start": 0, @@ -2874,6 +3262,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 2597, "end": 0, "name": "kitEyeDepth", "start": 0, @@ -2882,11 +3271,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 2527, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 2527, "end": 0, "start": 0, "type": "CallExpression", @@ -2897,14 +3288,22 @@ description: Result of parsing kitt.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// 3.2 Kitty Nose" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2610, "declaration": { + "commentStart": 2610, "end": 0, "id": { + "commentStart": 2610, "end": 0, "name": "kitLeftEye3", "start": 0, @@ -2913,6 +3312,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 2633, "end": 0, "name": "kitFace", "start": 0, @@ -2920,6 +3320,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 2642, "end": 0, "raw": "'START'", "start": 0, @@ -2928,15 +3329,18 @@ description: Result of parsing kitt.kcl "value": "START" }, { + "commentStart": 2651, "end": 0, "left": { "argument": { + "commentStart": 2652, "end": 0, "name": "kitEyeOffset", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2651, "end": 0, "operator": "-", "start": 0, @@ -2945,6 +3349,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 2667, "end": 0, "raw": "4", "start": 0, @@ -2960,6 +3365,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 2670, "end": 0, "name": "kitEyeHeihgt", "start": 0, @@ -2967,6 +3373,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 2684, "end": 0, "raw": "1", "start": 0, @@ -2978,6 +3385,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 2687, "end": 0, "raw": "1", "start": 0, @@ -2989,6 +3397,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 2690, "end": 0, "name": "kitEyeDepth", "start": 0, @@ -2997,11 +3406,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 2624, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 2624, "end": 0, "start": 0, "type": "CallExpression", @@ -3017,9 +3428,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 2703, "declaration": { + "commentStart": 2703, "end": 0, "id": { + "commentStart": 2703, "end": 0, "name": "kitRightEye", "start": 0, @@ -3028,6 +3442,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 2726, "end": 0, "name": "kitFace", "start": 0, @@ -3035,6 +3450,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 2735, "end": 0, "raw": "'START'", "start": 0, @@ -3043,8 +3459,10 @@ description: Result of parsing kitt.kcl "value": "START" }, { + "commentStart": 2744, "end": 0, "left": { + "commentStart": 2744, "end": 0, "name": "kitEyeOffset", "start": 0, @@ -3053,6 +3471,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 2759, "end": 0, "raw": "3", "start": 0, @@ -3068,8 +3487,10 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 2762, "end": 0, "left": { + "commentStart": 2762, "end": 0, "name": "kitEyeHeihgt", "start": 0, @@ -3078,6 +3499,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 2777, "end": 0, "raw": "1", "start": 0, @@ -3093,6 +3515,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 2780, "end": 0, "raw": "2", "start": 0, @@ -3104,6 +3527,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 2783, "end": 0, "raw": "4", "start": 0, @@ -3115,6 +3539,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 2786, "end": 0, "name": "kitEyeDepth", "start": 0, @@ -3123,11 +3548,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 2717, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 2717, "end": 0, "start": 0, "type": "CallExpression", @@ -3143,17 +3570,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 2799, "declaration": { + "commentStart": 2799, "end": 0, "id": { + "commentStart": 2799, "end": 0, "name": "kitNoseElevation", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 2818, "end": 0, "left": { + "commentStart": 2818, "end": 0, "name": "kitEyeHeihgt", "start": 0, @@ -3162,6 +3594,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 2833, "end": 0, "raw": "5", "start": 0, @@ -3186,9 +3619,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 2835, "declaration": { + "commentStart": 2835, "end": 0, "id": { + "commentStart": 2835, "end": 0, "name": "kitNose", "start": 0, @@ -3199,6 +3635,7 @@ description: Result of parsing kitt.kcl { "arguments": [ { + "commentStart": 2859, "end": 0, "name": "kitFace", "start": 0, @@ -3206,6 +3643,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 2868, "end": 0, "raw": "'START'", "start": 0, @@ -3215,11 +3653,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 2845, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2845, "end": 0, "start": 0, "type": "CallExpression", @@ -3228,9 +3668,11 @@ description: Result of parsing kitt.kcl { "arguments": [ { + "commentStart": 2897, "elements": [ { "argument": { + "commentStart": 2899, "end": 0, "raw": "2", "start": 0, @@ -3241,6 +3683,7 @@ description: Result of parsing kitt.kcl "suffix": "None" } }, + "commentStart": 2898, "end": 0, "operator": "-", "start": 0, @@ -3248,6 +3691,7 @@ description: Result of parsing kitt.kcl "type": "UnaryExpression" }, { + "commentStart": 2902, "end": 0, "name": "kitNoseElevation", "start": 0, @@ -3261,6 +3705,7 @@ description: Result of parsing kitt.kcl "type": "ArrayExpression" }, { + "commentStart": 2921, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3268,11 +3713,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 2882, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2882, "end": 0, "start": 0, "type": "CallExpression", @@ -3283,14 +3730,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 2941, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2947, "elements": [ { + "commentStart": 2948, "end": 0, "raw": "0", "start": 0, @@ -3302,6 +3752,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 2951, "end": 0, "raw": "1", "start": 0, @@ -3321,11 +3772,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 2936, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2936, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3337,14 +3790,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 2982, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2988, "elements": [ { + "commentStart": 2989, "end": 0, "raw": "2", "start": 0, @@ -3356,6 +3812,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 2992, "end": 0, "raw": "0", "start": 0, @@ -3375,11 +3832,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 2977, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2977, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3391,14 +3850,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 3026, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3032, "elements": [ { + "commentStart": 3033, "end": 0, "raw": "0", "start": 0, @@ -3410,6 +3872,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 3036, "end": 0, "raw": "2", "start": 0, @@ -3429,11 +3892,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3021, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3021, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3445,15 +3910,18 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 3065, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3071, "elements": [ { "argument": { + "commentStart": 3073, "end": 0, "raw": "1", "start": 0, @@ -3464,6 +3932,7 @@ description: Result of parsing kitt.kcl "suffix": "None" } }, + "commentStart": 3072, "end": 0, "operator": "-", "start": 0, @@ -3471,6 +3940,7 @@ description: Result of parsing kitt.kcl "type": "UnaryExpression" }, { + "commentStart": 3076, "end": 0, "raw": "0", "start": 0, @@ -3490,11 +3960,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3060, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3060, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3506,14 +3978,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 3109, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3115, "elements": [ { + "commentStart": 3116, "end": 0, "raw": "0", "start": 0, @@ -3525,6 +4000,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 3119, "end": 0, "raw": "1", "start": 0, @@ -3544,11 +4020,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3104, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3104, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3560,14 +4038,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 3150, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3156, "elements": [ { + "commentStart": 3157, "end": 0, "raw": "3", "start": 0, @@ -3579,6 +4060,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 3160, "end": 0, "raw": "0", "start": 0, @@ -3598,11 +4080,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3145, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3145, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3614,14 +4098,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 3193, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3199, "elements": [ { + "commentStart": 3200, "end": 0, "raw": "0", "start": 0, @@ -3634,6 +4121,7 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 3204, "end": 0, "raw": "1", "start": 0, @@ -3644,6 +4132,7 @@ description: Result of parsing kitt.kcl "suffix": "None" } }, + "commentStart": 3203, "end": 0, "operator": "-", "start": 0, @@ -3659,11 +4148,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3188, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3188, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3675,15 +4166,18 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 3238, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3244, "elements": [ { "argument": { + "commentStart": 3246, "end": 0, "raw": "1", "start": 0, @@ -3694,6 +4188,7 @@ description: Result of parsing kitt.kcl "suffix": "None" } }, + "commentStart": 3245, "end": 0, "operator": "-", "start": 0, @@ -3701,6 +4196,7 @@ description: Result of parsing kitt.kcl "type": "UnaryExpression" }, { + "commentStart": 3249, "end": 0, "raw": "0", "start": 0, @@ -3720,11 +4216,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3233, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3233, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3736,14 +4234,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 3283, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3289, "elements": [ { + "commentStart": 3290, "end": 0, "raw": "0", "start": 0, @@ -3756,6 +4257,7 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 3294, "end": 0, "raw": "2", "start": 0, @@ -3766,6 +4268,7 @@ description: Result of parsing kitt.kcl "suffix": "None" } }, + "commentStart": 3293, "end": 0, "operator": "-", "start": 0, @@ -3781,11 +4284,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3278, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3278, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3797,14 +4302,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 3325, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3331, "elements": [ { + "commentStart": 3332, "end": 0, "raw": "2", "start": 0, @@ -3816,6 +4324,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 3335, "end": 0, "raw": "0", "start": 0, @@ -3835,11 +4344,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3320, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3320, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3851,14 +4362,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 3370, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3376, "elements": [ { + "commentStart": 3377, "end": 0, "raw": "0", "start": 0, @@ -3871,6 +4385,7 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 3381, "end": 0, "raw": "1", "start": 0, @@ -3881,6 +4396,7 @@ description: Result of parsing kitt.kcl "suffix": "None" } }, + "commentStart": 3380, "end": 0, "operator": "-", "start": 0, @@ -3896,11 +4412,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3365, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3365, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3912,16 +4430,19 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 3415, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3429, "elements": [ { "arguments": [ { + "commentStart": 3444, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3929,11 +4450,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3430, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 3430, "end": 0, "start": 0, "type": "CallExpression", @@ -3942,6 +4465,7 @@ description: Result of parsing kitt.kcl { "arguments": [ { + "commentStart": 3462, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3949,11 +4473,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3448, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 3448, "end": 0, "start": 0, "type": "CallExpression", @@ -3968,11 +4494,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3410, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3410, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3982,11 +4510,13 @@ description: Result of parsing kitt.kcl { "arguments": [], "callee": { + "commentStart": 3472, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 3472, "end": 0, "start": 0, "type": "CallExpression", @@ -3997,12 +4527,14 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 3493, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3502, "end": 0, "name": "kitEyeDepth", "start": 0, @@ -4012,11 +4544,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3485, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 3485, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4024,11 +4558,13 @@ description: Result of parsing kitt.kcl "unlabeled": null } ], + "commentStart": 2845, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 2923, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4041,6 +4577,7 @@ description: Result of parsing kitt.kcl ], "2": [ { + "commentStart": 2954, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4053,6 +4590,7 @@ description: Result of parsing kitt.kcl ], "3": [ { + "commentStart": 2995, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4065,6 +4603,7 @@ description: Result of parsing kitt.kcl ], "4": [ { + "commentStart": 3039, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4077,6 +4616,7 @@ description: Result of parsing kitt.kcl ], "5": [ { + "commentStart": 3079, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4089,6 +4629,7 @@ description: Result of parsing kitt.kcl ], "6": [ { + "commentStart": 3122, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4101,6 +4642,7 @@ description: Result of parsing kitt.kcl ], "7": [ { + "commentStart": 3163, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4113,6 +4655,7 @@ description: Result of parsing kitt.kcl ], "8": [ { + "commentStart": 3207, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4125,6 +4668,7 @@ description: Result of parsing kitt.kcl ], "9": [ { + "commentStart": 3252, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4137,6 +4681,7 @@ description: Result of parsing kitt.kcl ], "10": [ { + "commentStart": 3297, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4149,6 +4694,7 @@ description: Result of parsing kitt.kcl ], "11": [ { + "commentStart": 3338, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4161,6 +4707,7 @@ description: Result of parsing kitt.kcl ], "12": [ { + "commentStart": 3384, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4173,6 +4720,7 @@ description: Result of parsing kitt.kcl ], "15": [ { + "commentStart": 3514, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4200,15 +4748,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 3535, "declaration": { + "commentStart": 3535, "end": 0, "id": { + "commentStart": 3535, "end": 0, "name": "kitMouthOffset", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 3552, "end": 0, "raw": "4", "start": 0, @@ -4229,17 +4781,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 3554, "declaration": { + "commentStart": 3554, "end": 0, "id": { + "commentStart": 3554, "end": 0, "name": "kitMouthHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 3571, "end": 0, "left": { + "commentStart": 3571, "end": 0, "name": "kitEyeHeihgt", "start": 0, @@ -4248,6 +4805,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 3586, "end": 0, "raw": "3", "start": 0, @@ -4272,9 +4830,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 3588, "declaration": { + "commentStart": 3588, "end": 0, "id": { + "commentStart": 3588, "end": 0, "name": "kitMouthUpLeft", "start": 0, @@ -4283,6 +4844,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 3614, "end": 0, "name": "kitFace", "start": 0, @@ -4290,6 +4852,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 3623, "end": 0, "raw": "'START'", "start": 0, @@ -4299,12 +4862,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 3633, "end": 0, "name": "kitMouthOffset", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3632, "end": 0, "operator": "-", "start": 0, @@ -4312,6 +4877,7 @@ description: Result of parsing kitt.kcl "type": "UnaryExpression" }, { + "commentStart": 3649, "end": 0, "name": "kitMouthHeight", "start": 0, @@ -4319,6 +4885,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 3665, "end": 0, "raw": "1", "start": 0, @@ -4330,6 +4897,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 3668, "end": 0, "raw": "1", "start": 0, @@ -4341,6 +4909,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 3671, "end": 0, "name": "kitEyeDepth", "start": 0, @@ -4349,11 +4918,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3605, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 3605, "end": 0, "start": 0, "type": "CallExpression", @@ -4369,9 +4940,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 3683, "declaration": { + "commentStart": 3703, "end": 0, "id": { + "commentStart": 3703, "end": 0, "name": "kitMouthDownLeft", "start": 0, @@ -4380,6 +4954,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 3731, "end": 0, "name": "kitFace", "start": 0, @@ -4387,6 +4962,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 3740, "end": 0, "raw": "'START'", "start": 0, @@ -4395,15 +4971,18 @@ description: Result of parsing kitt.kcl "value": "START" }, { + "commentStart": 3749, "end": 0, "left": { "argument": { + "commentStart": 3750, "end": 0, "name": "kitMouthOffset", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3749, "end": 0, "operator": "-", "start": 0, @@ -4412,6 +4991,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 3767, "end": 0, "raw": "1", "start": 0, @@ -4427,8 +5007,10 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 3770, "end": 0, "left": { + "commentStart": 3770, "end": 0, "name": "kitMouthHeight", "start": 0, @@ -4437,6 +5019,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 3787, "end": 0, "raw": "1", "start": 0, @@ -4452,6 +5035,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 3790, "end": 0, "raw": "1", "start": 0, @@ -4463,6 +5047,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 3793, "end": 0, "raw": "1", "start": 0, @@ -4474,6 +5059,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 3796, "end": 0, "name": "kitEyeDepth", "start": 0, @@ -4482,11 +5068,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3722, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 3722, "end": 0, "start": 0, "type": "CallExpression", @@ -4497,14 +5085,22 @@ description: Result of parsing kitt.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// 4. Kitty Belly" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 3809, "declaration": { + "commentStart": 3809, "end": 0, "id": { + "commentStart": 3809, "end": 0, "name": "kitMouthUpRight", "start": 0, @@ -4513,6 +5109,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 3836, "end": 0, "name": "kitFace", "start": 0, @@ -4520,6 +5117,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 3845, "end": 0, "raw": "'START'", "start": 0, @@ -4528,6 +5126,7 @@ description: Result of parsing kitt.kcl "value": "START" }, { + "commentStart": 3854, "end": 0, "name": "kitMouthOffset", "start": 0, @@ -4535,6 +5134,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 3870, "end": 0, "name": "kitMouthHeight", "start": 0, @@ -4542,6 +5142,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 3886, "end": 0, "raw": "1", "start": 0, @@ -4553,6 +5154,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 3889, "end": 0, "raw": "1", "start": 0, @@ -4564,6 +5166,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 3892, "end": 0, "name": "kitEyeDepth", "start": 0, @@ -4572,11 +5175,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3827, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 3827, "end": 0, "start": 0, "type": "CallExpression", @@ -4592,9 +5197,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 3905, "declaration": { + "commentStart": 3905, "end": 0, "id": { + "commentStart": 3905, "end": 0, "name": "kitMouthDownRight", "start": 0, @@ -4603,6 +5211,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 3934, "end": 0, "name": "kitFace", "start": 0, @@ -4610,6 +5219,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 3943, "end": 0, "raw": "'START'", "start": 0, @@ -4618,8 +5228,10 @@ description: Result of parsing kitt.kcl "value": "START" }, { + "commentStart": 3952, "end": 0, "left": { + "commentStart": 3952, "end": 0, "name": "kitMouthOffset", "start": 0, @@ -4628,6 +5240,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 3969, "end": 0, "raw": "1", "start": 0, @@ -4643,8 +5256,10 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 3972, "end": 0, "left": { + "commentStart": 3972, "end": 0, "name": "kitMouthHeight", "start": 0, @@ -4653,6 +5268,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 3989, "end": 0, "raw": "1", "start": 0, @@ -4668,6 +5284,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 3992, "end": 0, "raw": "1", "start": 0, @@ -4679,6 +5296,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 3995, "end": 0, "raw": "1", "start": 0, @@ -4690,6 +5308,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 3998, "end": 0, "name": "kitEyeDepth", "start": 0, @@ -4698,11 +5317,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 3925, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 3925, "end": 0, "start": 0, "type": "CallExpression", @@ -4718,17 +5339,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 4011, "declaration": { + "commentStart": 4011, "end": 0, "id": { + "commentStart": 4011, "end": 0, "name": "kitBellyElevation", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4031, "end": 0, "left": { + "commentStart": 4031, "end": 0, "name": "kitBodyElevation", "start": 0, @@ -4737,6 +5363,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 4050, "end": 0, "raw": "1", "start": 0, @@ -4761,19 +5388,25 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 4051, "declaration": { + "commentStart": 4053, "end": 0, "id": { + "commentStart": 4053, "end": 0, "name": "kitBellyHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4070, "end": 0, "left": { + "commentStart": 4070, "end": 0, "left": { + "commentStart": 4070, "end": 0, "name": "kitHeadElevation", "start": 0, @@ -4782,6 +5415,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 4089, "end": 0, "name": "kitBellyElevation", "start": 0, @@ -4794,6 +5428,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 4109, "end": 0, "raw": "1", "start": 0, @@ -4818,15 +5453,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 4110, "declaration": { + "commentStart": 4129, "end": 0, "id": { + "commentStart": 4129, "end": 0, "name": "kitBellyWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4145, "end": 0, "name": "kitHeadWidth", "start": 0, @@ -4838,20 +5477,29 @@ description: Result of parsing kitt.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// 4.1 Kitty VHS" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 4158, "declaration": { + "commentStart": 4158, "end": 0, "id": { + "commentStart": 4158, "end": 0, "name": "kitBellyDepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4174, "end": 0, "name": "kitHeadDepth", "start": 0, @@ -4868,9 +5516,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 4187, "declaration": { + "commentStart": 4187, "end": 0, "id": { + "commentStart": 4187, "end": 0, "name": "kitBelly", "start": 0, @@ -4879,6 +5530,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 4207, "end": 0, "name": "kitBody", "start": 0, @@ -4886,6 +5538,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 4216, "end": 0, "raw": "'END'", "start": 0, @@ -4894,15 +5547,18 @@ description: Result of parsing kitt.kcl "value": "END" }, { + "commentStart": 4223, "end": 0, "left": { "argument": { + "commentStart": 4224, "end": 0, "name": "kitBellyWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4223, "end": 0, "operator": "-", "start": 0, @@ -4911,6 +5567,7 @@ description: Result of parsing kitt.kcl }, "operator": "/", "right": { + "commentStart": 4240, "end": 0, "raw": "2", "start": 0, @@ -4926,6 +5583,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 4243, "end": 0, "name": "kitBellyElevation", "start": 0, @@ -4933,6 +5591,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 4262, "end": 0, "name": "kitBellyWidth", "start": 0, @@ -4940,6 +5599,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 4277, "end": 0, "name": "kitBellyHeight", "start": 0, @@ -4947,6 +5607,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 4293, "end": 0, "name": "kitBellyDepth", "start": 0, @@ -4955,11 +5616,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 4198, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 4198, "end": 0, "start": 0, "type": "CallExpression", @@ -4975,17 +5638,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 4308, "declaration": { + "commentStart": 4308, "end": 0, "id": { + "commentStart": 4308, "end": 0, "name": "kitVHSelevation", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4326, "end": 0, "left": { + "commentStart": 4326, "end": 0, "name": "kitBellyElevation", "start": 0, @@ -4994,6 +5662,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 4346, "end": 0, "raw": "1", "start": 0, @@ -5018,15 +5687,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 4347, "declaration": { + "commentStart": 4349, "end": 0, "id": { + "commentStart": 4349, "end": 0, "name": "kitVHSheight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4364, "end": 0, "raw": "2", "start": 0, @@ -5047,15 +5720,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 4365, "declaration": { + "commentStart": 4387, "end": 0, "id": { + "commentStart": 4387, "end": 0, "name": "kitVHSwidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4401, "end": 0, "raw": "8", "start": 0, @@ -5071,20 +5748,29 @@ description: Result of parsing kitt.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// 4.2 Kitty Floppy" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 4403, "declaration": { + "commentStart": 4403, "end": 0, "id": { + "commentStart": 4403, "end": 0, "name": "kitVHSdepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4417, "end": 0, "raw": "1", "start": 0, @@ -5105,9 +5791,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 4419, "declaration": { + "commentStart": 4419, "end": 0, "id": { + "commentStart": 4419, "end": 0, "name": "kitVHS", "start": 0, @@ -5116,6 +5805,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 4437, "end": 0, "name": "kitBelly", "start": 0, @@ -5123,6 +5813,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 4447, "end": 0, "raw": "'END'", "start": 0, @@ -5131,15 +5822,18 @@ description: Result of parsing kitt.kcl "value": "END" }, { + "commentStart": 4454, "end": 0, "left": { "argument": { + "commentStart": 4455, "end": 0, "name": "kitVHSwidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4454, "end": 0, "operator": "-", "start": 0, @@ -5148,6 +5842,7 @@ description: Result of parsing kitt.kcl }, "operator": "/", "right": { + "commentStart": 4469, "end": 0, "raw": "2", "start": 0, @@ -5163,6 +5858,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 4472, "end": 0, "name": "kitVHSelevation", "start": 0, @@ -5170,6 +5866,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 4489, "end": 0, "name": "kitVHSwidth", "start": 0, @@ -5177,6 +5874,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 4502, "end": 0, "name": "kitVHSheight", "start": 0, @@ -5184,6 +5882,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 4516, "end": 0, "name": "kitVHSdepth", "start": 0, @@ -5192,11 +5891,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 4428, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 4428, "end": 0, "start": 0, "type": "CallExpression", @@ -5212,17 +5913,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 4529, "declaration": { + "commentStart": 4529, "end": 0, "id": { + "commentStart": 4529, "end": 0, "name": "kitFloppyElevation", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4550, "end": 0, "left": { + "commentStart": 4550, "end": 0, "name": "kitBellyElevation", "start": 0, @@ -5231,6 +5937,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 4570, "end": 0, "raw": "1", "start": 0, @@ -5255,15 +5962,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 4572, "declaration": { + "commentStart": 4572, "end": 0, "id": { + "commentStart": 4572, "end": 0, "name": "kitFloppyHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4590, "end": 0, "raw": "1", "start": 0, @@ -5284,15 +5995,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 4591, "declaration": { + "commentStart": 4593, "end": 0, "id": { + "commentStart": 4593, "end": 0, "name": "kitFloppyWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4610, "end": 0, "raw": "5", "start": 0, @@ -5313,19 +6028,25 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 4612, "declaration": { + "commentStart": 4612, "end": 0, "id": { + "commentStart": 4612, "end": 0, "name": "kitFloppyOffset", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4630, "end": 0, "left": { + "commentStart": 4630, "end": 0, "left": { + "commentStart": 4630, "end": 0, "name": "kitBellyWidth", "start": 0, @@ -5334,6 +6055,7 @@ description: Result of parsing kitt.kcl }, "operator": "/", "right": { + "commentStart": 4646, "end": 0, "raw": "2", "start": 0, @@ -5350,6 +6072,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 4650, "end": 0, "raw": "1", "start": 0, @@ -5374,15 +6097,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 4652, "declaration": { + "commentStart": 4652, "end": 0, "id": { + "commentStart": 4652, "end": 0, "name": "kitFloppyDepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4669, "end": 0, "raw": "2", "start": 0, @@ -5403,9 +6130,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 4670, "declaration": { + "commentStart": 4698, "end": 0, "id": { + "commentStart": 4698, "end": 0, "name": "kitFloppy1", "start": 0, @@ -5414,6 +6144,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 4720, "end": 0, "name": "kitBelly", "start": 0, @@ -5421,6 +6152,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 4730, "end": 0, "raw": "'END'", "start": 0, @@ -5430,12 +6162,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 4738, "end": 0, "name": "kitFloppyOffset", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4737, "end": 0, "operator": "-", "start": 0, @@ -5443,6 +6177,7 @@ description: Result of parsing kitt.kcl "type": "UnaryExpression" }, { + "commentStart": 4755, "end": 0, "name": "kitFloppyElevation", "start": 0, @@ -5450,6 +6185,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 4775, "end": 0, "name": "kitFloppyWidth", "start": 0, @@ -5457,6 +6193,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 4791, "end": 0, "name": "kitFloppyHeight", "start": 0, @@ -5465,12 +6202,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 4809, "end": 0, "name": "kitFloppyDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4808, "end": 0, "operator": "-", "start": 0, @@ -5479,11 +6218,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 4711, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 4711, "end": 0, "start": 0, "type": "CallExpression", @@ -5494,14 +6235,22 @@ description: Result of parsing kitt.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// 4.3 Kitty Belly Button" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 4825, "declaration": { + "commentStart": 4825, "end": 0, "id": { + "commentStart": 4825, "end": 0, "name": "kitFloppy2", "start": 0, @@ -5510,6 +6259,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 4847, "end": 0, "name": "kitBelly", "start": 0, @@ -5517,6 +6267,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 4857, "end": 0, "raw": "'END'", "start": 0, @@ -5526,12 +6277,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 4865, "end": 0, "name": "kitFloppyOffset", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4864, "end": 0, "operator": "-", "start": 0, @@ -5539,8 +6292,10 @@ description: Result of parsing kitt.kcl "type": "UnaryExpression" }, { + "commentStart": 4882, "end": 0, "left": { + "commentStart": 4882, "end": 0, "name": "kitFloppyElevation", "start": 0, @@ -5549,6 +6304,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 4903, "end": 0, "raw": "2", "start": 0, @@ -5564,6 +6320,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 4906, "end": 0, "name": "kitFloppyWidth", "start": 0, @@ -5571,6 +6328,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 4922, "end": 0, "name": "kitFloppyHeight", "start": 0, @@ -5579,12 +6337,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 4940, "end": 0, "name": "kitFloppyDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4939, "end": 0, "operator": "-", "start": 0, @@ -5593,11 +6353,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 4838, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 4838, "end": 0, "start": 0, "type": "CallExpression", @@ -5613,9 +6375,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 4956, "declaration": { + "commentStart": 4956, "end": 0, "id": { + "commentStart": 4956, "end": 0, "name": "kitFloppy3", "start": 0, @@ -5624,6 +6389,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 4978, "end": 0, "name": "kitBelly", "start": 0, @@ -5631,6 +6397,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 4988, "end": 0, "raw": "'END'", "start": 0, @@ -5639,6 +6406,7 @@ description: Result of parsing kitt.kcl "value": "END" }, { + "commentStart": 4995, "end": 0, "name": "kitFloppyOffset", "start": 0, @@ -5646,6 +6414,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 5012, "end": 0, "name": "kitFloppyElevation", "start": 0, @@ -5654,12 +6423,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 5033, "end": 0, "name": "kitFloppyWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 5032, "end": 0, "operator": "-", "start": 0, @@ -5667,6 +6438,7 @@ description: Result of parsing kitt.kcl "type": "UnaryExpression" }, { + "commentStart": 5049, "end": 0, "name": "kitFloppyHeight", "start": 0, @@ -5675,12 +6447,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 5067, "end": 0, "name": "kitFloppyDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 5066, "end": 0, "operator": "-", "start": 0, @@ -5689,11 +6463,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 4969, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 4969, "end": 0, "start": 0, "type": "CallExpression", @@ -5709,19 +6485,25 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 5083, "declaration": { + "commentStart": 5083, "end": 0, "id": { + "commentStart": 5083, "end": 0, "name": "kitBellyButtonOffset", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 5106, "end": 0, "left": { + "commentStart": 5106, "end": 0, "left": { + "commentStart": 5106, "end": 0, "name": "kitHeadWidth", "start": 0, @@ -5730,6 +6512,7 @@ description: Result of parsing kitt.kcl }, "operator": "/", "right": { + "commentStart": 5121, "end": 0, "raw": "2", "start": 0, @@ -5746,6 +6529,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 5125, "end": 0, "raw": "3", "start": 0, @@ -5770,17 +6554,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 5127, "declaration": { + "commentStart": 5127, "end": 0, "id": { + "commentStart": 5127, "end": 0, "name": "kitBellyButtonElevation", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 5153, "end": 0, "left": { + "commentStart": 5153, "end": 0, "name": "kitHeadElevation", "start": 0, @@ -5789,6 +6578,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 5172, "end": 0, "raw": "1", "start": 0, @@ -5813,15 +6603,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 5173, "declaration": { + "commentStart": 5175, "end": 0, "id": { + "commentStart": 5175, "end": 0, "name": "kitBellyButtonWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 5197, "end": 0, "raw": "2", "start": 0, @@ -5842,15 +6636,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 5198, "declaration": { + "commentStart": 5221, "end": 0, "id": { + "commentStart": 5221, "end": 0, "name": "kitBellyButtonHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 5244, "end": 0, "raw": "1", "start": 0, @@ -5866,22 +6664,32 @@ description: Result of parsing kitt.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// 4.4 Kitty Buttons" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 5246, "declaration": { + "commentStart": 5246, "end": 0, "id": { + "commentStart": 5246, "end": 0, "name": "kitBellyButtonDepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 5268, "end": 0, "left": { + "commentStart": 5268, "end": 0, "name": "kitHeadDepth", "start": 0, @@ -5890,6 +6698,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 5283, "end": 0, "raw": "1", "start": 0, @@ -5914,9 +6723,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 5285, "declaration": { + "commentStart": 5285, "end": 0, "id": { + "commentStart": 5285, "end": 0, "name": "kitBellyButton", "start": 0, @@ -5925,6 +6737,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 5311, "end": 0, "name": "kitBody", "start": 0, @@ -5932,6 +6745,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 5320, "end": 0, "raw": "'END'", "start": 0, @@ -5941,12 +6755,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 5328, "end": 0, "name": "kitBellyButtonOffset", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 5327, "end": 0, "operator": "-", "start": 0, @@ -5954,6 +6770,7 @@ description: Result of parsing kitt.kcl "type": "UnaryExpression" }, { + "commentStart": 5350, "end": 0, "name": "kitBellyButtonElevation", "start": 0, @@ -5961,6 +6778,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 5375, "end": 0, "name": "kitBellyButtonWidth", "start": 0, @@ -5968,6 +6786,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 5396, "end": 0, "name": "kitBellyButtonHeight", "start": 0, @@ -5975,6 +6794,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 5418, "end": 0, "name": "kitBellyButtonDepth", "start": 0, @@ -5983,11 +6803,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 5302, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 5302, "end": 0, "start": 0, "type": "CallExpression", @@ -6003,15 +6825,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 5438, "declaration": { + "commentStart": 5440, "end": 0, "id": { + "commentStart": 5440, "end": 0, "name": "kitButtonWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 5457, "end": 0, "raw": "1", "start": 0, @@ -6032,15 +6858,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 5459, "declaration": { + "commentStart": 5459, "end": 0, "id": { + "commentStart": 5459, "end": 0, "name": "kitButtonHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 5477, "end": 0, "raw": "2", "start": 0, @@ -6061,15 +6891,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 5479, "declaration": { + "commentStart": 5479, "end": 0, "id": { + "commentStart": 5479, "end": 0, "name": "kitButtonDepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 5496, "end": 0, "name": "kitFloppyDepth", "start": 0, @@ -6086,17 +6920,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 5511, "declaration": { + "commentStart": 5511, "end": 0, "id": { + "commentStart": 5511, "end": 0, "name": "kitButtonElevation", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 5532, "end": 0, "left": { + "commentStart": 5532, "end": 0, "name": "kitFloppyElevation", "start": 0, @@ -6105,6 +6944,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 5553, "end": 0, "raw": "2", "start": 0, @@ -6129,9 +6969,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 5554, "declaration": { + "commentStart": 5556, "end": 0, "id": { + "commentStart": 5556, "end": 0, "name": "kitButton1", "start": 0, @@ -6140,6 +6983,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 5578, "end": 0, "name": "kitBelly", "start": 0, @@ -6147,6 +6991,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 5588, "end": 0, "raw": "'END'", "start": 0, @@ -6155,6 +7000,7 @@ description: Result of parsing kitt.kcl "value": "END" }, { + "commentStart": 5595, "end": 0, "name": "kitFloppyOffset", "start": 0, @@ -6162,8 +7008,10 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 5612, "end": 0, "left": { + "commentStart": 5612, "end": 0, "name": "kitFloppyElevation", "start": 0, @@ -6172,6 +7020,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 5633, "end": 0, "raw": "2", "start": 0, @@ -6188,12 +7037,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 5637, "end": 0, "name": "kitButtonWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 5636, "end": 0, "operator": "-", "start": 0, @@ -6201,6 +7052,7 @@ description: Result of parsing kitt.kcl "type": "UnaryExpression" }, { + "commentStart": 5653, "end": 0, "name": "kitButtonHeight", "start": 0, @@ -6209,12 +7061,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 5671, "end": 0, "name": "kitButtonDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 5670, "end": 0, "operator": "-", "start": 0, @@ -6223,11 +7077,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 5569, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 5569, "end": 0, "start": 0, "type": "CallExpression", @@ -6243,9 +7099,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 5686, "declaration": { + "commentStart": 5705, "end": 0, "id": { + "commentStart": 5705, "end": 0, "name": "kitButton2", "start": 0, @@ -6254,6 +7113,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 5727, "end": 0, "name": "kitBelly", "start": 0, @@ -6261,6 +7121,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 5737, "end": 0, "raw": "'END'", "start": 0, @@ -6269,10 +7130,13 @@ description: Result of parsing kitt.kcl "value": "END" }, { + "commentStart": 5744, "end": 0, "left": { + "commentStart": 5744, "end": 0, "left": { + "commentStart": 5744, "end": 0, "name": "kitFloppyOffset", "start": 0, @@ -6281,6 +7145,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 5762, "end": 0, "name": "kitButtonWidth", "start": 0, @@ -6293,6 +7158,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 5779, "end": 0, "raw": "1", "start": 0, @@ -6308,8 +7174,10 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 5782, "end": 0, "left": { + "commentStart": 5782, "end": 0, "name": "kitFloppyElevation", "start": 0, @@ -6318,6 +7186,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 5803, "end": 0, "raw": "2", "start": 0, @@ -6334,12 +7203,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 5807, "end": 0, "name": "kitButtonWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 5806, "end": 0, "operator": "-", "start": 0, @@ -6347,6 +7218,7 @@ description: Result of parsing kitt.kcl "type": "UnaryExpression" }, { + "commentStart": 5823, "end": 0, "name": "kitButtonHeight", "start": 0, @@ -6355,12 +7227,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 5841, "end": 0, "name": "kitButtonDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 5840, "end": 0, "operator": "-", "start": 0, @@ -6369,11 +7243,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 5718, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 5718, "end": 0, "start": 0, "type": "CallExpression", @@ -6384,14 +7260,22 @@ description: Result of parsing kitt.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// 5. Kitty Legs" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 5857, "declaration": { + "commentStart": 5857, "end": 0, "id": { + "commentStart": 5857, "end": 0, "name": "kitButton3", "start": 0, @@ -6400,6 +7284,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 5879, "end": 0, "name": "kitBelly", "start": 0, @@ -6407,6 +7292,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 5889, "end": 0, "raw": "'END'", "start": 0, @@ -6415,8 +7301,10 @@ description: Result of parsing kitt.kcl "value": "END" }, { + "commentStart": 5896, "end": 0, "left": { + "commentStart": 5896, "end": 0, "name": "kitFloppyOffset", "start": 0, @@ -6425,8 +7313,10 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 5915, "end": 0, "left": { + "commentStart": 5915, "end": 0, "raw": "2", "start": 0, @@ -6439,8 +7329,10 @@ description: Result of parsing kitt.kcl }, "operator": "*", "right": { + "commentStart": 5920, "end": 0, "left": { + "commentStart": 5920, "end": 0, "name": "kitButtonWidth", "start": 0, @@ -6449,6 +7341,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 5937, "end": 0, "raw": "1", "start": 0, @@ -6472,8 +7365,10 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 5942, "end": 0, "left": { + "commentStart": 5942, "end": 0, "name": "kitFloppyElevation", "start": 0, @@ -6482,6 +7377,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 5963, "end": 0, "raw": "2", "start": 0, @@ -6498,12 +7394,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 5967, "end": 0, "name": "kitButtonWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 5966, "end": 0, "operator": "-", "start": 0, @@ -6511,6 +7409,7 @@ description: Result of parsing kitt.kcl "type": "UnaryExpression" }, { + "commentStart": 5983, "end": 0, "name": "kitButtonHeight", "start": 0, @@ -6519,12 +7418,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 6001, "end": 0, "name": "kitButtonDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 6000, "end": 0, "operator": "-", "start": 0, @@ -6533,11 +7434,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 5870, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 5870, "end": 0, "start": 0, "type": "CallExpression", @@ -6553,15 +7456,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 6016, "declaration": { + "commentStart": 6018, "end": 0, "id": { + "commentStart": 6018, "end": 0, "name": "kitShoeWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6033, "end": 0, "raw": "7", "start": 0, @@ -6582,15 +7489,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 6035, "declaration": { + "commentStart": 6035, "end": 0, "id": { + "commentStart": 6035, "end": 0, "name": "kitShoeLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6051, "end": 0, "raw": "10", "start": 0, @@ -6611,15 +7522,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 6054, "declaration": { + "commentStart": 6054, "end": 0, "id": { + "commentStart": 6054, "end": 0, "name": "kitShoeHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6070, "end": 0, "raw": "3", "start": 0, @@ -6640,9 +7555,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 6071, "declaration": { + "commentStart": 6076, "end": 0, "id": { + "commentStart": 6076, "end": 0, "name": "kitLeg", "start": 0, @@ -6652,21 +7570,28 @@ description: Result of parsing kitt.kcl "body": { "body": [ { + "commentStart": 6112, "declaration": { + "commentStart": 6112, "end": 0, "id": { + "commentStart": 6112, "end": 0, "name": "kitShoeOffsetFront", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6133, "end": 0, "left": { + "commentStart": 6133, "end": 0, "left": { + "commentStart": 6133, "end": 0, "left": { + "commentStart": 6133, "end": 0, "name": "kitShoeLength", "start": 0, @@ -6675,6 +7600,7 @@ description: Result of parsing kitt.kcl }, "operator": "/", "right": { + "commentStart": 6149, "end": 0, "raw": "2", "start": 0, @@ -6691,8 +7617,10 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 6154, "end": 0, "left": { + "commentStart": 6154, "end": 0, "name": "kitBodyDepth", "start": 0, @@ -6701,6 +7629,7 @@ description: Result of parsing kitt.kcl }, "operator": "/", "right": { + "commentStart": 6169, "end": 0, "raw": "2", "start": 0, @@ -6721,6 +7650,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 6174, "end": 0, "name": "offsetFront", "start": 0, @@ -6741,9 +7671,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 6185, "declaration": { + "commentStart": 6189, "end": 0, "id": { + "commentStart": 6189, "end": 0, "name": "kitFootPrint", "start": 0, @@ -6754,6 +7687,7 @@ description: Result of parsing kitt.kcl { "arguments": [ { + "commentStart": 6218, "end": 0, "raw": "'XY'", "start": 0, @@ -6763,11 +7697,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 6204, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 6204, "end": 0, "start": 0, "type": "CallExpression", @@ -6776,8 +7712,10 @@ description: Result of parsing kitt.kcl { "arguments": [ { + "commentStart": 6246, "elements": [ { + "commentStart": 6247, "end": 0, "name": "offsetSide", "start": 0, @@ -6785,6 +7723,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 6259, "end": 0, "name": "kitShoeOffsetFront", "start": 0, @@ -6798,6 +7737,7 @@ description: Result of parsing kitt.kcl "type": "ArrayExpression" }, { + "commentStart": 6280, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -6805,11 +7745,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 6231, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 6231, "end": 0, "start": 0, "type": "CallExpression", @@ -6820,14 +7762,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 6295, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6301, "elements": [ { + "commentStart": 6302, "end": 0, "name": "kitShoeWidth", "start": 0, @@ -6835,6 +7780,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 6316, "end": 0, "raw": "0", "start": 0, @@ -6854,11 +7800,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 6290, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6290, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6870,14 +7818,17 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 6332, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6338, "elements": [ { + "commentStart": 6339, "end": 0, "raw": "0", "start": 0, @@ -6890,12 +7841,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 6343, "end": 0, "name": "kitShoeLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 6342, "end": 0, "operator": "-", "start": 0, @@ -6911,11 +7864,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 6327, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6327, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6927,21 +7882,25 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 6371, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6377, "elements": [ { "argument": { + "commentStart": 6379, "end": 0, "name": "kitShoeWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 6378, "end": 0, "operator": "-", "start": 0, @@ -6949,6 +7908,7 @@ description: Result of parsing kitt.kcl "type": "UnaryExpression" }, { + "commentStart": 6393, "end": 0, "raw": "0", "start": 0, @@ -6968,11 +7928,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 6366, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6366, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6984,16 +7946,19 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 6409, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6423, "elements": [ { "arguments": [ { + "commentStart": 6438, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -7001,11 +7966,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 6424, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 6424, "end": 0, "start": 0, "type": "CallExpression", @@ -7014,6 +7981,7 @@ description: Result of parsing kitt.kcl { "arguments": [ { + "commentStart": 6456, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -7021,11 +7989,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 6442, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 6442, "end": 0, "start": 0, "type": "CallExpression", @@ -7040,11 +8010,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 6404, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6404, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7054,17 +8026,20 @@ description: Result of parsing kitt.kcl { "arguments": [], "callee": { + "commentStart": 6468, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 6468, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 6204, "end": 0, "start": 0, "type": "PipeExpression", @@ -7080,9 +8055,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 6475, "declaration": { + "commentStart": 6479, "end": 0, "id": { + "commentStart": 6479, "end": 0, "name": "kitShoe", "start": 0, @@ -7093,12 +8071,14 @@ description: Result of parsing kitt.kcl { "type": "LabeledArg", "label": { + "commentStart": 6511, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6520, "end": 0, "name": "kitShoeHeight", "start": 0, @@ -7108,16 +8088,19 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 6489, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 6489, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 6497, "end": 0, "name": "kitFootPrint", "start": 0, @@ -7135,17 +8118,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 6534, "declaration": { + "commentStart": 6538, "end": 0, "id": { + "commentStart": 6538, "end": 0, "name": "kitPantsOffsetSide", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6559, "end": 0, "left": { + "commentStart": 6559, "end": 0, "name": "offsetSide", "start": 0, @@ -7154,6 +8142,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 6572, "end": 0, "raw": "1", "start": 0, @@ -7178,19 +8167,25 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 6576, "declaration": { + "commentStart": 6576, "end": 0, "id": { + "commentStart": 6576, "end": 0, "name": "kitPantsOffsetFront", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6598, "end": 0, "left": { + "commentStart": 6598, "end": 0, "left": { + "commentStart": 6598, "end": 0, "raw": "2", "start": 0, @@ -7203,6 +8198,7 @@ description: Result of parsing kitt.kcl }, "operator": "*", "right": { + "commentStart": 6602, "end": 0, "name": "kitShoeOffsetFront", "start": 0, @@ -7215,6 +8211,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 6623, "end": 0, "raw": "2", "start": 0, @@ -7239,17 +8236,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 6627, "declaration": { + "commentStart": 6627, "end": 0, "id": { + "commentStart": 6627, "end": 0, "name": "kitPantsWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6643, "end": 0, "left": { + "commentStart": 6643, "end": 0, "name": "kitShoeWidth", "start": 0, @@ -7258,6 +8260,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 6658, "end": 0, "raw": "2", "start": 0, @@ -7282,15 +8285,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 6662, "declaration": { + "commentStart": 6662, "end": 0, "id": { + "commentStart": 6662, "end": 0, "name": "kitPantsFrontWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6683, "end": 0, "name": "kitPantsWidth", "start": 0, @@ -7307,17 +8314,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 6699, "declaration": { + "commentStart": 6699, "end": 0, "id": { + "commentStart": 6699, "end": 0, "name": "kitPantsHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6716, "end": 0, "left": { + "commentStart": 6716, "end": 0, "name": "kitBodyElevation", "start": 0, @@ -7326,6 +8338,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 6735, "end": 0, "name": "kitShoeHeight", "start": 0, @@ -7346,9 +8359,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 6748, "declaration": { + "commentStart": 6752, "end": 0, "id": { + "commentStart": 6752, "end": 0, "name": "kitPants", "start": 0, @@ -7357,6 +8373,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 6772, "end": 0, "name": "kitShoe", "start": 0, @@ -7364,6 +8381,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 6781, "end": 0, "raw": "'END'", "start": 0, @@ -7372,6 +8390,7 @@ description: Result of parsing kitt.kcl "value": "END" }, { + "commentStart": 6788, "end": 0, "name": "kitPantsOffsetSide", "start": 0, @@ -7379,6 +8398,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 6808, "end": 0, "name": "kitPantsOffsetFront", "start": 0, @@ -7386,6 +8406,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 6829, "end": 0, "name": "kitPantsFrontWidth", "start": 0, @@ -7393,6 +8414,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 6849, "end": 0, "name": "kitPantsWidth", "start": 0, @@ -7400,6 +8422,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 6864, "end": 0, "name": "kitPantsHeight", "start": 0, @@ -7408,11 +8431,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 6763, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 6763, "end": 0, "start": 0, "type": "CallExpression", @@ -7429,23 +8454,27 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 6890, "end": 0, "name": "kitShoe", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 6879, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 6108, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 6185, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7456,6 +8485,7 @@ description: Result of parsing kitt.kcl ], "1": [ { + "commentStart": 6475, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7466,6 +8496,7 @@ description: Result of parsing kitt.kcl ], "2": [ { + "commentStart": 6534, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7476,6 +8507,7 @@ description: Result of parsing kitt.kcl ], "7": [ { + "commentStart": 6748, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7486,6 +8518,7 @@ description: Result of parsing kitt.kcl ], "8": [ { + "commentStart": 6879, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7499,11 +8532,13 @@ description: Result of parsing kitt.kcl }, "start": 0 }, + "commentStart": 6082, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 6083, "end": 0, "name": "offsetFront", "start": 0, @@ -7513,6 +8548,7 @@ description: Result of parsing kitt.kcl { "type": "Parameter", "identifier": { + "commentStart": 6096, "end": 0, "name": "offsetSide", "start": 0, @@ -7534,15 +8570,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 6900, "declaration": { + "commentStart": 6900, "end": 0, "id": { + "commentStart": 6900, "end": 0, "name": "kitLegOffset", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6915, "end": 0, "raw": "3", "start": 0, @@ -7563,9 +8603,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 6916, "declaration": { + "commentStart": 6918, "end": 0, "id": { + "commentStart": 6918, "end": 0, "name": "kitRightLeg", "start": 0, @@ -7574,6 +8617,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 6939, "end": 0, "raw": "0", "start": 0, @@ -7585,6 +8629,7 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 6942, "end": 0, "name": "kitLegOffset", "start": 0, @@ -7593,11 +8638,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 6932, "end": 0, "name": "kitLeg", "start": 0, "type": "Identifier" }, + "commentStart": 6932, "end": 0, "start": 0, "type": "CallExpression", @@ -7613,9 +8660,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 6956, "declaration": { + "commentStart": 6956, "end": 0, "id": { + "commentStart": 6956, "end": 0, "name": "kitLeftLeg", "start": 0, @@ -7624,6 +8674,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 6976, "end": 0, "raw": "0", "start": 0, @@ -7635,15 +8686,18 @@ description: Result of parsing kitt.kcl } }, { + "commentStart": 6979, "end": 0, "left": { "argument": { + "commentStart": 6980, "end": 0, "name": "kitLegOffset", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 6979, "end": 0, "operator": "-", "start": 0, @@ -7652,6 +8706,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 6995, "end": 0, "name": "kitShoeWidth", "start": 0, @@ -7664,11 +8719,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 6969, "end": 0, "name": "kitLeg", "start": 0, "type": "Identifier" }, + "commentStart": 6969, "end": 0, "start": 0, "type": "CallExpression", @@ -7684,15 +8741,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 7008, "declaration": { + "commentStart": 7027, "end": 0, "id": { + "commentStart": 7027, "end": 0, "name": "kitEarWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 7041, "end": 0, "raw": "8", "start": 0, @@ -7708,20 +8769,29 @@ description: Result of parsing kitt.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// 6. Kitty Ears" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 7043, "declaration": { + "commentStart": 7043, "end": 0, "id": { + "commentStart": 7043, "end": 0, "name": "kitEarDepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 7057, "end": 0, "raw": "8", "start": 0, @@ -7742,15 +8812,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 7059, "declaration": { + "commentStart": 7059, "end": 0, "id": { + "commentStart": 7059, "end": 0, "name": "kitEarHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 7074, "end": 0, "raw": "2", "start": 0, @@ -7771,9 +8845,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 7075, "declaration": { + "commentStart": 7080, "end": 0, "id": { + "commentStart": 7080, "end": 0, "name": "kitEar", "start": 0, @@ -7783,17 +8860,22 @@ description: Result of parsing kitt.kcl "body": { "body": [ { + "commentStart": 7122, "declaration": { + "commentStart": 7122, "end": 0, "id": { + "commentStart": 7122, "end": 0, "name": "kitNewEarOffsetFront", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 7145, "end": 0, "left": { + "commentStart": 7145, "end": 0, "name": "kitBodyDepth", "start": 0, @@ -7802,6 +8884,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 7160, "end": 0, "name": "earOffsetFront", "start": 0, @@ -7822,9 +8905,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 7177, "declaration": { + "commentStart": 7177, "end": 0, "id": { + "commentStart": 7177, "end": 0, "name": "kitNewEarOffsetSide", "start": 0, @@ -7832,10 +8918,13 @@ description: Result of parsing kitt.kcl }, "init": { "argument": { + "commentStart": 7201, "end": 0, "left": { + "commentStart": 7201, "end": 0, "left": { + "commentStart": 7201, "end": 0, "name": "kitBodyWidth", "start": 0, @@ -7844,6 +8933,7 @@ description: Result of parsing kitt.kcl }, "operator": "/", "right": { + "commentStart": 7216, "end": 0, "raw": "2", "start": 0, @@ -7860,6 +8950,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 7220, "end": 0, "name": "earOffsetSide", "start": 0, @@ -7870,6 +8961,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 7199, "end": 0, "operator": "-", "start": 0, @@ -7886,9 +8978,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 7237, "declaration": { + "commentStart": 7237, "end": 0, "id": { + "commentStart": 7237, "end": 0, "name": "baseVolume", "start": 0, @@ -7897,6 +8992,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 7259, "end": 0, "name": "kitBody", "start": 0, @@ -7904,6 +9000,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 7268, "end": 0, "name": "seg01", "start": 0, @@ -7911,6 +9008,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 7275, "end": 0, "name": "kitNewEarOffsetSide", "start": 0, @@ -7918,6 +9016,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 7296, "end": 0, "name": "kitNewEarOffsetFront", "start": 0, @@ -7925,6 +9024,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 7318, "end": 0, "name": "kitEarWidth", "start": 0, @@ -7933,12 +9033,14 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 7332, "end": 0, "name": "kitEarDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 7331, "end": 0, "operator": "-", "start": 0, @@ -7946,6 +9048,7 @@ description: Result of parsing kitt.kcl "type": "UnaryExpression" }, { + "commentStart": 7345, "end": 0, "name": "kitEarHeight", "start": 0, @@ -7954,11 +9057,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 7250, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 7250, "end": 0, "start": 0, "type": "CallExpression", @@ -7974,15 +9079,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 7358, "declaration": { + "commentStart": 7362, "end": 0, "id": { + "commentStart": 7362, "end": 0, "name": "secondOffset", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 7377, "end": 0, "raw": "1", "start": 0, @@ -8003,9 +9112,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 7381, "declaration": { + "commentStart": 7381, "end": 0, "id": { + "commentStart": 7381, "end": 0, "name": "secondLevel", "start": 0, @@ -8014,6 +9126,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 7404, "end": 0, "name": "baseVolume", "start": 0, @@ -8021,6 +9134,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 7416, "end": 0, "raw": "'END'", "start": 0, @@ -8029,8 +9143,10 @@ description: Result of parsing kitt.kcl "value": "END" }, { + "commentStart": 7423, "end": 0, "left": { + "commentStart": 7423, "end": 0, "name": "kitNewEarOffsetSide", "start": 0, @@ -8039,6 +9155,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 7445, "end": 0, "name": "secondOffset", "start": 0, @@ -8050,8 +9167,10 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 7459, "end": 0, "left": { + "commentStart": 7459, "end": 0, "name": "kitNewEarOffsetFront", "start": 0, @@ -8060,6 +9179,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 7482, "end": 0, "raw": "0.01", "start": 0, @@ -8075,8 +9195,10 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 7488, "end": 0, "left": { + "commentStart": 7488, "end": 0, "name": "kitEarWidth", "start": 0, @@ -8085,8 +9207,10 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 7503, "end": 0, "left": { + "commentStart": 7503, "end": 0, "name": "secondOffset", "start": 0, @@ -8095,6 +9219,7 @@ description: Result of parsing kitt.kcl }, "operator": "*", "right": { + "commentStart": 7518, "end": 0, "raw": "2", "start": 0, @@ -8114,15 +9239,18 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 7522, "end": 0, "left": { "argument": { + "commentStart": 7523, "end": 0, "name": "kitEarDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 7522, "end": 0, "operator": "-", "start": 0, @@ -8131,8 +9259,10 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 7537, "end": 0, "left": { + "commentStart": 7537, "end": 0, "name": "secondOffset", "start": 0, @@ -8141,6 +9271,7 @@ description: Result of parsing kitt.kcl }, "operator": "*", "right": { + "commentStart": 7552, "end": 0, "raw": "2", "start": 0, @@ -8160,6 +9291,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 7555, "end": 0, "name": "kitEarHeight", "start": 0, @@ -8168,11 +9300,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 7395, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 7395, "end": 0, "start": 0, "type": "CallExpression", @@ -8188,15 +9322,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 7568, "declaration": { + "commentStart": 7572, "end": 0, "id": { + "commentStart": 7572, "end": 0, "name": "thirdOffset", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 7586, "end": 0, "raw": "2", "start": 0, @@ -8217,9 +9355,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 7590, "declaration": { + "commentStart": 7590, "end": 0, "id": { + "commentStart": 7590, "end": 0, "name": "thirdLevel", "start": 0, @@ -8228,6 +9369,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 7612, "end": 0, "name": "secondLevel", "start": 0, @@ -8235,6 +9377,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 7625, "end": 0, "raw": "'END'", "start": 0, @@ -8243,8 +9386,10 @@ description: Result of parsing kitt.kcl "value": "END" }, { + "commentStart": 7632, "end": 0, "left": { + "commentStart": 7632, "end": 0, "name": "kitNewEarOffsetSide", "start": 0, @@ -8253,6 +9398,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 7654, "end": 0, "name": "thirdOffset", "start": 0, @@ -8264,8 +9410,10 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 7667, "end": 0, "left": { + "commentStart": 7667, "end": 0, "name": "kitNewEarOffsetFront", "start": 0, @@ -8274,6 +9422,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 7690, "end": 0, "raw": "0.02", "start": 0, @@ -8289,8 +9438,10 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 7696, "end": 0, "left": { + "commentStart": 7696, "end": 0, "name": "kitEarWidth", "start": 0, @@ -8299,8 +9450,10 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 7711, "end": 0, "left": { + "commentStart": 7711, "end": 0, "name": "thirdOffset", "start": 0, @@ -8309,6 +9462,7 @@ description: Result of parsing kitt.kcl }, "operator": "*", "right": { + "commentStart": 7725, "end": 0, "raw": "2", "start": 0, @@ -8328,15 +9482,18 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 7729, "end": 0, "left": { "argument": { + "commentStart": 7730, "end": 0, "name": "kitEarDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 7729, "end": 0, "operator": "-", "start": 0, @@ -8345,8 +9502,10 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 7744, "end": 0, "left": { + "commentStart": 7744, "end": 0, "name": "thirdOffset", "start": 0, @@ -8355,6 +9514,7 @@ description: Result of parsing kitt.kcl }, "operator": "*", "right": { + "commentStart": 7758, "end": 0, "raw": "2", "start": 0, @@ -8374,6 +9534,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 7761, "end": 0, "name": "kitEarHeight", "start": 0, @@ -8382,11 +9543,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 7603, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 7603, "end": 0, "start": 0, "type": "CallExpression", @@ -8402,15 +9565,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 7774, "declaration": { + "commentStart": 7778, "end": 0, "id": { + "commentStart": 7778, "end": 0, "name": "fourthOffset", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 7793, "end": 0, "raw": "3", "start": 0, @@ -8431,9 +9598,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 7797, "declaration": { + "commentStart": 7797, "end": 0, "id": { + "commentStart": 7797, "end": 0, "name": "fourthLevel", "start": 0, @@ -8442,6 +9612,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 7820, "end": 0, "name": "thirdLevel", "start": 0, @@ -8449,6 +9620,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 7832, "end": 0, "raw": "'END'", "start": 0, @@ -8457,8 +9629,10 @@ description: Result of parsing kitt.kcl "value": "END" }, { + "commentStart": 7839, "end": 0, "left": { + "commentStart": 7839, "end": 0, "name": "kitNewEarOffsetSide", "start": 0, @@ -8467,6 +9641,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 7861, "end": 0, "name": "fourthOffset", "start": 0, @@ -8478,8 +9653,10 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 7875, "end": 0, "left": { + "commentStart": 7875, "end": 0, "name": "kitNewEarOffsetFront", "start": 0, @@ -8488,6 +9665,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 7898, "end": 0, "raw": "0.03", "start": 0, @@ -8503,8 +9681,10 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 7904, "end": 0, "left": { + "commentStart": 7904, "end": 0, "name": "kitEarWidth", "start": 0, @@ -8513,8 +9693,10 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 7919, "end": 0, "left": { + "commentStart": 7919, "end": 0, "name": "fourthOffset", "start": 0, @@ -8523,6 +9705,7 @@ description: Result of parsing kitt.kcl }, "operator": "*", "right": { + "commentStart": 7934, "end": 0, "raw": "2", "start": 0, @@ -8542,15 +9725,18 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 7938, "end": 0, "left": { "argument": { + "commentStart": 7939, "end": 0, "name": "kitEarDepth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 7938, "end": 0, "operator": "-", "start": 0, @@ -8559,8 +9745,10 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 7953, "end": 0, "left": { + "commentStart": 7953, "end": 0, "name": "fourthOffset", "start": 0, @@ -8569,6 +9757,7 @@ description: Result of parsing kitt.kcl }, "operator": "*", "right": { + "commentStart": 7968, "end": 0, "raw": "2", "start": 0, @@ -8588,6 +9777,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 7971, "end": 0, "name": "kitEarHeight", "start": 0, @@ -8596,11 +9786,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 7811, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 7811, "end": 0, "start": 0, "type": "CallExpression", @@ -8617,23 +9809,27 @@ description: Result of parsing kitt.kcl }, { "argument": { + "commentStart": 7995, "end": 0, "name": "baseVolume", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 7984, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 7118, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 7358, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8644,6 +9840,7 @@ description: Result of parsing kitt.kcl ], "4": [ { + "commentStart": 7568, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8654,6 +9851,7 @@ description: Result of parsing kitt.kcl ], "6": [ { + "commentStart": 7774, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8664,6 +9862,7 @@ description: Result of parsing kitt.kcl ], "8": [ { + "commentStart": 7984, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8677,11 +9876,13 @@ description: Result of parsing kitt.kcl }, "start": 0 }, + "commentStart": 7086, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 7087, "end": 0, "name": "earOffsetFront", "start": 0, @@ -8691,6 +9892,7 @@ description: Result of parsing kitt.kcl { "type": "Parameter", "identifier": { + "commentStart": 7103, "end": 0, "name": "earOffsetSide", "start": 0, @@ -8712,15 +9914,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8008, "declaration": { + "commentStart": 8008, "end": 0, "id": { + "commentStart": 8008, "end": 0, "name": "kitEarOffsetFront", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 8028, "end": 0, "raw": "4", "start": 0, @@ -8741,15 +9947,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8030, "declaration": { + "commentStart": 8030, "end": 0, "id": { + "commentStart": 8030, "end": 0, "name": "kitEarOffsetSide", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 8049, "end": 0, "raw": "1", "start": 0, @@ -8770,9 +9980,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8050, "declaration": { + "commentStart": 8052, "end": 0, "id": { + "commentStart": 8052, "end": 0, "name": "kitRightEar", "start": 0, @@ -8781,6 +9994,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 8073, "end": 0, "name": "kitEarOffsetFront", "start": 0, @@ -8788,6 +10002,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8092, "end": 0, "name": "kitEarOffsetSide", "start": 0, @@ -8796,11 +10011,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 8066, "end": 0, "name": "kitEar", "start": 0, "type": "Identifier" }, + "commentStart": 8066, "end": 0, "start": 0, "type": "CallExpression", @@ -8816,9 +10033,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8110, "declaration": { + "commentStart": 8110, "end": 0, "id": { + "commentStart": 8110, "end": 0, "name": "kitLeftEar", "start": 0, @@ -8827,6 +10047,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 8130, "end": 0, "name": "kitEarOffsetFront", "start": 0, @@ -8834,10 +10055,13 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8149, "end": 0, "left": { + "commentStart": 8149, "end": 0, "left": { + "commentStart": 8149, "end": 0, "name": "kitBodyWidth", "start": 0, @@ -8846,6 +10070,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 8164, "end": 0, "name": "kitEarWidth", "start": 0, @@ -8858,6 +10083,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 8178, "end": 0, "name": "kitEarOffsetSide", "start": 0, @@ -8870,11 +10096,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 8123, "end": 0, "name": "kitEar", "start": 0, "type": "Identifier" }, + "commentStart": 8123, "end": 0, "start": 0, "type": "CallExpression", @@ -8890,15 +10118,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8195, "declaration": { + "commentStart": 8227, "end": 0, "id": { + "commentStart": 8227, "end": 0, "name": "grillOffset", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 8241, "end": 0, "raw": "4", "start": 0, @@ -8914,24 +10146,36 @@ description: Result of parsing kitt.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// 7. Kitty Side", + "// 7.1 Grill" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 8242, "declaration": { + "commentStart": 8244, "end": 0, "id": { + "commentStart": 8244, "end": 0, "name": "grillRowA", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 8256, "end": 0, "left": { + "commentStart": 8256, "end": 0, "left": { + "commentStart": 8256, "end": 0, "name": "kitBodyElevation", "start": 0, @@ -8940,6 +10184,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 8275, "end": 0, "name": "kitBodyHeight", "start": 0, @@ -8952,6 +10197,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 8291, "end": 0, "name": "grillOffset", "start": 0, @@ -8972,17 +10218,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8303, "declaration": { + "commentStart": 8303, "end": 0, "id": { + "commentStart": 8303, "end": 0, "name": "grillRowB", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 8315, "end": 0, "left": { + "commentStart": 8315, "end": 0, "name": "grillRowA", "start": 0, @@ -8991,6 +10242,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 8327, "end": 0, "raw": "2", "start": 0, @@ -9015,17 +10267,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8329, "declaration": { + "commentStart": 8329, "end": 0, "id": { + "commentStart": 8329, "end": 0, "name": "grillRowC", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 8341, "end": 0, "left": { + "commentStart": 8341, "end": 0, "name": "grillRowA", "start": 0, @@ -9034,6 +10291,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 8353, "end": 0, "raw": "4", "start": 0, @@ -9058,17 +10316,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8354, "declaration": { + "commentStart": 8356, "end": 0, "id": { + "commentStart": 8356, "end": 0, "name": "grillColumnA", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 8371, "end": 0, "left": { + "commentStart": 8371, "end": 0, "name": "kitBodyDepth", "start": 0, @@ -9077,6 +10340,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 8386, "end": 0, "name": "grillOffset", "start": 0, @@ -9097,17 +10361,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8398, "declaration": { + "commentStart": 8398, "end": 0, "id": { + "commentStart": 8398, "end": 0, "name": "grillColumnB", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 8413, "end": 0, "left": { + "commentStart": 8413, "end": 0, "name": "grillColumnA", "start": 0, @@ -9116,6 +10385,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 8428, "end": 0, "raw": "1", "start": 0, @@ -9140,17 +10410,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8430, "declaration": { + "commentStart": 8430, "end": 0, "id": { + "commentStart": 8430, "end": 0, "name": "grillColumnC", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 8445, "end": 0, "left": { + "commentStart": 8445, "end": 0, "name": "grillColumnA", "start": 0, @@ -9159,6 +10434,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 8460, "end": 0, "raw": "2", "start": 0, @@ -9183,17 +10459,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8462, "declaration": { + "commentStart": 8462, "end": 0, "id": { + "commentStart": 8462, "end": 0, "name": "grillColumnD", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 8477, "end": 0, "left": { + "commentStart": 8477, "end": 0, "name": "grillColumnA", "start": 0, @@ -9202,6 +10483,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 8492, "end": 0, "raw": "3", "start": 0, @@ -9226,17 +10508,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8494, "declaration": { + "commentStart": 8494, "end": 0, "id": { + "commentStart": 8494, "end": 0, "name": "grillColumnE", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 8509, "end": 0, "left": { + "commentStart": 8509, "end": 0, "name": "grillColumnA", "start": 0, @@ -9245,6 +10532,7 @@ description: Result of parsing kitt.kcl }, "operator": "-", "right": { + "commentStart": 8524, "end": 0, "raw": "4", "start": 0, @@ -9269,15 +10557,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8525, "declaration": { + "commentStart": 8527, "end": 0, "id": { + "commentStart": 8527, "end": 0, "name": "grillHoleSize", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 8543, "end": 0, "raw": "1", "start": 0, @@ -9298,9 +10590,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8545, "declaration": { + "commentStart": 8545, "end": 0, "id": { + "commentStart": 8545, "end": 0, "name": "grillHoleDepth", "start": 0, @@ -9308,6 +10603,7 @@ description: Result of parsing kitt.kcl }, "init": { "argument": { + "commentStart": 8563, "end": 0, "raw": "2", "start": 0, @@ -9318,6 +10614,7 @@ description: Result of parsing kitt.kcl "suffix": "None" } }, + "commentStart": 8562, "end": 0, "operator": "-", "start": 0, @@ -9334,9 +10631,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8564, "declaration": { + "commentStart": 8566, "end": 0, "id": { + "commentStart": 8566, "end": 0, "name": "grillHoleAB", "start": 0, @@ -9345,6 +10645,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 8589, "end": 0, "name": "kitBody", "start": 0, @@ -9352,6 +10653,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8598, "end": 0, "name": "seg02", "start": 0, @@ -9359,6 +10661,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8605, "end": 0, "name": "grillRowA", "start": 0, @@ -9366,6 +10669,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8616, "end": 0, "name": "grillColumnB", "start": 0, @@ -9373,6 +10677,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8630, "end": 0, "name": "grillHoleSize", "start": 0, @@ -9380,6 +10685,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8645, "end": 0, "name": "grillHoleSize", "start": 0, @@ -9387,6 +10693,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8660, "end": 0, "name": "grillHoleDepth", "start": 0, @@ -9395,11 +10702,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 8580, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 8580, "end": 0, "start": 0, "type": "CallExpression", @@ -9415,9 +10724,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8675, "declaration": { + "commentStart": 8677, "end": 0, "id": { + "commentStart": 8677, "end": 0, "name": "grillHoleAD", "start": 0, @@ -9426,6 +10738,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 8700, "end": 0, "name": "kitBody", "start": 0, @@ -9433,6 +10746,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8709, "end": 0, "name": "seg02", "start": 0, @@ -9440,6 +10754,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8716, "end": 0, "name": "grillRowA", "start": 0, @@ -9447,6 +10762,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8727, "end": 0, "name": "grillColumnD", "start": 0, @@ -9454,6 +10770,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8741, "end": 0, "name": "grillHoleSize", "start": 0, @@ -9461,6 +10778,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8756, "end": 0, "name": "grillHoleSize", "start": 0, @@ -9468,6 +10786,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8771, "end": 0, "name": "grillHoleDepth", "start": 0, @@ -9476,11 +10795,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 8691, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 8691, "end": 0, "start": 0, "type": "CallExpression", @@ -9496,9 +10817,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8786, "declaration": { + "commentStart": 8788, "end": 0, "id": { + "commentStart": 8788, "end": 0, "name": "grillHoleBA", "start": 0, @@ -9507,6 +10831,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 8811, "end": 0, "name": "kitBody", "start": 0, @@ -9514,6 +10839,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8820, "end": 0, "name": "seg02", "start": 0, @@ -9521,6 +10847,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8827, "end": 0, "name": "grillRowB", "start": 0, @@ -9528,6 +10855,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8838, "end": 0, "name": "grillColumnA", "start": 0, @@ -9535,6 +10863,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8852, "end": 0, "name": "grillHoleSize", "start": 0, @@ -9542,6 +10871,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8867, "end": 0, "name": "grillHoleSize", "start": 0, @@ -9549,6 +10879,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8882, "end": 0, "name": "grillHoleDepth", "start": 0, @@ -9557,11 +10888,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 8802, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 8802, "end": 0, "start": 0, "type": "CallExpression", @@ -9577,9 +10910,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 8897, "declaration": { + "commentStart": 8899, "end": 0, "id": { + "commentStart": 8899, "end": 0, "name": "grillHoleBC", "start": 0, @@ -9588,6 +10924,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 8922, "end": 0, "name": "kitBody", "start": 0, @@ -9595,6 +10932,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8931, "end": 0, "name": "seg02", "start": 0, @@ -9602,6 +10940,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8938, "end": 0, "name": "grillRowB", "start": 0, @@ -9609,6 +10948,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8949, "end": 0, "name": "grillColumnC", "start": 0, @@ -9616,6 +10956,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8963, "end": 0, "name": "grillHoleSize", "start": 0, @@ -9623,6 +10964,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8978, "end": 0, "name": "grillHoleSize", "start": 0, @@ -9630,6 +10972,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 8993, "end": 0, "name": "grillHoleDepth", "start": 0, @@ -9638,11 +10981,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 8913, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 8913, "end": 0, "start": 0, "type": "CallExpression", @@ -9658,9 +11003,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 9008, "declaration": { + "commentStart": 9010, "end": 0, "id": { + "commentStart": 9010, "end": 0, "name": "grillHoleBE", "start": 0, @@ -9669,6 +11017,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 9033, "end": 0, "name": "kitBody", "start": 0, @@ -9676,6 +11025,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9042, "end": 0, "name": "seg02", "start": 0, @@ -9683,6 +11033,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9049, "end": 0, "name": "grillRowB", "start": 0, @@ -9690,6 +11041,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9060, "end": 0, "name": "grillColumnE", "start": 0, @@ -9697,6 +11049,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9074, "end": 0, "name": "grillHoleSize", "start": 0, @@ -9704,6 +11057,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9089, "end": 0, "name": "grillHoleSize", "start": 0, @@ -9711,6 +11065,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9104, "end": 0, "name": "grillHoleDepth", "start": 0, @@ -9719,11 +11074,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 9024, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 9024, "end": 0, "start": 0, "type": "CallExpression", @@ -9739,9 +11096,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 9119, "declaration": { + "commentStart": 9121, "end": 0, "id": { + "commentStart": 9121, "end": 0, "name": "grillHoleCB", "start": 0, @@ -9750,6 +11110,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 9144, "end": 0, "name": "kitBody", "start": 0, @@ -9757,6 +11118,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9153, "end": 0, "name": "seg02", "start": 0, @@ -9764,6 +11126,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9160, "end": 0, "name": "grillRowC", "start": 0, @@ -9771,6 +11134,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9171, "end": 0, "name": "grillColumnB", "start": 0, @@ -9778,6 +11142,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9185, "end": 0, "name": "grillHoleSize", "start": 0, @@ -9785,6 +11150,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9200, "end": 0, "name": "grillHoleSize", "start": 0, @@ -9792,6 +11158,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9215, "end": 0, "name": "grillHoleDepth", "start": 0, @@ -9800,11 +11167,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 9135, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 9135, "end": 0, "start": 0, "type": "CallExpression", @@ -9820,9 +11189,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 9230, "declaration": { + "commentStart": 9232, "end": 0, "id": { + "commentStart": 9232, "end": 0, "name": "grillHoleCD", "start": 0, @@ -9831,6 +11203,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 9255, "end": 0, "name": "kitBody", "start": 0, @@ -9838,6 +11211,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9264, "end": 0, "name": "seg02", "start": 0, @@ -9845,6 +11219,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9271, "end": 0, "name": "grillRowC", "start": 0, @@ -9852,6 +11227,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9282, "end": 0, "name": "grillColumnD", "start": 0, @@ -9859,6 +11235,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9296, "end": 0, "name": "grillHoleSize", "start": 0, @@ -9866,6 +11243,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9311, "end": 0, "name": "grillHoleSize", "start": 0, @@ -9873,6 +11251,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9326, "end": 0, "name": "grillHoleDepth", "start": 0, @@ -9881,11 +11260,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 9246, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 9246, "end": 0, "start": 0, "type": "CallExpression", @@ -9901,17 +11282,22 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 9341, "declaration": { + "commentStart": 9361, "end": 0, "id": { + "commentStart": 9361, "end": 0, "name": "kitVentElevation", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 9380, "end": 0, "left": { + "commentStart": 9380, "end": 0, "name": "kitBodyElevation", "start": 0, @@ -9920,6 +11306,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 9399, "end": 0, "raw": "1", "start": 0, @@ -9939,20 +11326,29 @@ description: Result of parsing kitt.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// 7.2 Kitty Vent" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 9401, "declaration": { + "commentStart": 9401, "end": 0, "id": { + "commentStart": 9401, "end": 0, "name": "kitVentOffset", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 9417, "end": 0, "raw": "1", "start": 0, @@ -9973,15 +11369,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 9419, "declaration": { + "commentStart": 9419, "end": 0, "id": { + "commentStart": 9419, "end": 0, "name": "kitVentHoleWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 9438, "end": 0, "raw": "1", "start": 0, @@ -10002,15 +11402,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 9440, "declaration": { + "commentStart": 9440, "end": 0, "id": { + "commentStart": 9440, "end": 0, "name": "kitVentHoleHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 9460, "end": 0, "raw": "4", "start": 0, @@ -10031,15 +11435,19 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 9462, "declaration": { + "commentStart": 9462, "end": 0, "id": { + "commentStart": 9462, "end": 0, "name": "kitVentHoleDepth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 9481, "end": 0, "name": "grillHoleDepth", "start": 0, @@ -10056,9 +11464,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 9495, "declaration": { + "commentStart": 9497, "end": 0, "id": { + "commentStart": 9497, "end": 0, "name": "kitVentA", "start": 0, @@ -10067,6 +11478,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 9517, "end": 0, "name": "kitBody", "start": 0, @@ -10074,6 +11486,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9526, "end": 0, "name": "seg02", "start": 0, @@ -10081,6 +11494,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9533, "end": 0, "name": "kitVentElevation", "start": 0, @@ -10088,6 +11502,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9551, "end": 0, "name": "kitVentOffset", "start": 0, @@ -10095,6 +11510,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9566, "end": 0, "name": "kitVentHoleHeight", "start": 0, @@ -10102,6 +11518,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9585, "end": 0, "name": "kitVentHoleWidth", "start": 0, @@ -10109,6 +11526,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9603, "end": 0, "name": "kitVentHoleDepth", "start": 0, @@ -10117,11 +11535,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 9508, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 9508, "end": 0, "start": 0, "type": "CallExpression", @@ -10137,9 +11557,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 9620, "declaration": { + "commentStart": 9622, "end": 0, "id": { + "commentStart": 9622, "end": 0, "name": "kitVentB", "start": 0, @@ -10148,6 +11571,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 9642, "end": 0, "name": "kitBody", "start": 0, @@ -10155,6 +11579,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9651, "end": 0, "name": "seg02", "start": 0, @@ -10162,6 +11587,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9658, "end": 0, "name": "kitVentElevation", "start": 0, @@ -10169,8 +11595,10 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9676, "end": 0, "left": { + "commentStart": 9676, "end": 0, "name": "kitVentOffset", "start": 0, @@ -10179,6 +11607,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 9692, "end": 0, "raw": "2", "start": 0, @@ -10194,6 +11623,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 9695, "end": 0, "name": "kitVentHoleHeight", "start": 0, @@ -10201,6 +11631,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9714, "end": 0, "name": "kitVentHoleWidth", "start": 0, @@ -10208,6 +11639,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9732, "end": 0, "name": "kitVentHoleDepth", "start": 0, @@ -10216,11 +11648,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 9633, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 9633, "end": 0, "start": 0, "type": "CallExpression", @@ -10236,9 +11670,12 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" }, { + "commentStart": 9749, "declaration": { + "commentStart": 9751, "end": 0, "id": { + "commentStart": 9751, "end": 0, "name": "kitVentC", "start": 0, @@ -10247,6 +11684,7 @@ description: Result of parsing kitt.kcl "init": { "arguments": [ { + "commentStart": 9771, "end": 0, "name": "kitBody", "start": 0, @@ -10254,6 +11692,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9780, "end": 0, "name": "seg02", "start": 0, @@ -10261,6 +11700,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9787, "end": 0, "name": "kitVentElevation", "start": 0, @@ -10268,8 +11708,10 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9805, "end": 0, "left": { + "commentStart": 9805, "end": 0, "name": "kitVentOffset", "start": 0, @@ -10278,6 +11720,7 @@ description: Result of parsing kitt.kcl }, "operator": "+", "right": { + "commentStart": 9821, "end": 0, "raw": "4", "start": 0, @@ -10293,6 +11736,7 @@ description: Result of parsing kitt.kcl "type": "BinaryExpression" }, { + "commentStart": 9824, "end": 0, "name": "kitVentHoleHeight", "start": 0, @@ -10300,6 +11744,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9843, "end": 0, "name": "kitVentHoleWidth", "start": 0, @@ -10307,6 +11752,7 @@ description: Result of parsing kitt.kcl "type": "Identifier" }, { + "commentStart": 9861, "end": 0, "name": "kitVentHoleDepth", "start": 0, @@ -10315,11 +11761,13 @@ description: Result of parsing kitt.kcl } ], "callee": { + "commentStart": 9762, "end": 0, "name": "pixelBox", "start": 0, "type": "Identifier" }, + "commentStart": 9762, "end": 0, "start": 0, "type": "CallExpression", @@ -10335,23 +11783,13 @@ description: Result of parsing kitt.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { - "0": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "1. Kitty Body", - "style": "line" - } - } - ], "4": [ { + "commentStart": 590, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10362,6 +11800,7 @@ description: Result of parsing kitt.kcl ], "7": [ { + "commentStart": 1004, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10372,6 +11811,7 @@ description: Result of parsing kitt.kcl ], "8": [ { + "commentStart": 1089, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10380,20 +11820,9 @@ description: Result of parsing kitt.kcl } } ], - "12": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "3. Kitty Face", - "style": "line" - } - } - ], "15": [ { + "commentStart": 1451, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10402,44 +11831,9 @@ description: Result of parsing kitt.kcl } } ], - "19": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "3.1.2 Kitty Right Eye", - "style": "line" - } - } - ], - "20": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "3.2 Kitty Nose", - "style": "line" - } - } - ], - "28": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "4. Kitty Belly", - "style": "line" - } - } - ], "32": [ { + "commentStart": 4051, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10448,20 +11842,9 @@ description: Result of parsing kitt.kcl } } ], - "33": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "4.1 Kitty VHS", - "style": "line" - } - } - ], "37": [ { + "commentStart": 4347, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10470,20 +11853,9 @@ description: Result of parsing kitt.kcl } } ], - "38": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "4.2 Kitty Floppy", - "style": "line" - } - } - ], "43": [ { + "commentStart": 4591, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10492,20 +11864,9 @@ description: Result of parsing kitt.kcl } } ], - "46": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "4.3 Kitty Belly Button", - "style": "line" - } - } - ], "51": [ { + "commentStart": 5173, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10514,20 +11875,9 @@ description: Result of parsing kitt.kcl } } ], - "52": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "4.4 Kitty Buttons", - "style": "line" - } - } - ], "55": [ { + "commentStart": 5438, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10538,6 +11888,7 @@ description: Result of parsing kitt.kcl ], "59": [ { + "commentStart": 5554, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10546,20 +11897,9 @@ description: Result of parsing kitt.kcl } } ], - "60": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "5. Kitty Legs", - "style": "line" - } - } - ], "62": [ { + "commentStart": 6016, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10570,6 +11910,7 @@ description: Result of parsing kitt.kcl ], "65": [ { + "commentStart": 6071, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10580,6 +11921,7 @@ description: Result of parsing kitt.kcl ], "67": [ { + "commentStart": 6916, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10588,20 +11930,9 @@ description: Result of parsing kitt.kcl } } ], - "69": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "6. Kitty Ears", - "style": "line" - } - } - ], "72": [ { + "commentStart": 7075, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10612,6 +11943,7 @@ description: Result of parsing kitt.kcl ], "75": [ { + "commentStart": 8050, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10620,30 +11952,9 @@ description: Result of parsing kitt.kcl } } ], - "77": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "7. Kitty Side", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "7.1 Grill", - "style": "line" - } - } - ], "78": [ { + "commentStart": 8242, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10654,6 +11965,7 @@ description: Result of parsing kitt.kcl ], "81": [ { + "commentStart": 8354, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10664,6 +11976,7 @@ description: Result of parsing kitt.kcl ], "86": [ { + "commentStart": 8525, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10674,6 +11987,7 @@ description: Result of parsing kitt.kcl ], "88": [ { + "commentStart": 8564, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10684,6 +11998,7 @@ description: Result of parsing kitt.kcl ], "89": [ { + "commentStart": 8675, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10694,6 +12009,7 @@ description: Result of parsing kitt.kcl ], "90": [ { + "commentStart": 8786, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10704,6 +12020,7 @@ description: Result of parsing kitt.kcl ], "91": [ { + "commentStart": 8897, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10714,6 +12031,7 @@ description: Result of parsing kitt.kcl ], "92": [ { + "commentStart": 9008, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10724,6 +12042,7 @@ description: Result of parsing kitt.kcl ], "93": [ { + "commentStart": 9119, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10734,6 +12053,7 @@ description: Result of parsing kitt.kcl ], "94": [ { + "commentStart": 9230, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10742,20 +12062,9 @@ description: Result of parsing kitt.kcl } } ], - "95": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "7.2 Kitty Vent", - "style": "line" - } - } - ], "100": [ { + "commentStart": 9495, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10766,6 +12075,7 @@ description: Result of parsing kitt.kcl ], "101": [ { + "commentStart": 9620, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10776,6 +12086,7 @@ description: Result of parsing kitt.kcl ], "102": [ { + "commentStart": 9749, "end": 0, "start": 0, "type": "NonCodeNode", @@ -10785,46 +12096,7 @@ description: Result of parsing kitt.kcl } ] }, - "startNodes": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Kitt", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "The beloved KittyCAD mascot in a voxelized style.", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "pixel box function", - "style": "line" - } - } - ] + "startNodes": [] }, "start": 0 } diff --git a/rust/kcl-lib/tests/kcl_samples/kitt/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/kitt/program_memory.snap index 90db72649..ca5c2dd1e 100644 --- a/rust/kcl-lib/tests/kcl_samples/kitt/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/kitt/program_memory.snap @@ -241,6 +241,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -253,6 +254,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -301,6 +303,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -325,6 +328,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -657,6 +661,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -669,6 +674,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -717,6 +723,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -741,6 +748,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -1073,6 +1081,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -1085,6 +1094,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -1133,6 +1143,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -1157,6 +1168,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -1489,6 +1501,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -1501,6 +1514,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -1549,6 +1563,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -1573,6 +1588,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -1905,6 +1921,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -1917,6 +1934,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -1965,6 +1983,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -1989,6 +2008,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -2321,6 +2341,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -2333,6 +2354,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -2381,6 +2403,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -2405,6 +2428,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -2737,6 +2761,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -2749,6 +2774,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -2797,6 +2823,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -2821,6 +2848,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -3231,6 +3259,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -3243,6 +3272,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -3291,6 +3321,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -3315,6 +3346,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -3647,6 +3679,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -3659,6 +3692,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -3707,6 +3741,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -3731,6 +3766,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -4014,6 +4050,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -4026,6 +4063,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -4074,6 +4112,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -4098,6 +4137,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -4601,6 +4641,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -4613,6 +4654,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -4661,6 +4703,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -4685,6 +4728,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -5206,6 +5250,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -5218,6 +5263,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -5266,6 +5312,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -5290,6 +5337,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -5811,6 +5859,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -5823,6 +5872,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -5871,6 +5921,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -5895,6 +5946,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -6783,6 +6835,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -6795,6 +6848,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -6843,6 +6897,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -6867,6 +6922,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -7434,6 +7490,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -7446,6 +7503,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -7494,6 +7552,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -7518,6 +7577,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -8039,6 +8099,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -8051,6 +8112,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -8099,6 +8161,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -8123,6 +8186,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -8644,6 +8708,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -8656,6 +8721,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -8704,6 +8770,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -8728,6 +8795,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -9154,6 +9222,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -9166,6 +9235,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -9214,6 +9284,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -9238,6 +9309,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -9629,6 +9701,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -9641,6 +9714,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -9689,6 +9763,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -9713,6 +9788,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -10561,6 +10637,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -10573,6 +10650,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -10621,6 +10699,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -10645,6 +10724,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -11563,6 +11643,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -11575,6 +11656,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -11623,6 +11705,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -11647,6 +11730,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -12565,6 +12649,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -12577,6 +12662,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -12625,6 +12711,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -12649,6 +12736,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -13780,6 +13868,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -13792,6 +13881,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -13840,6 +13930,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -13864,6 +13955,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -14782,6 +14874,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -14794,6 +14887,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -14842,6 +14936,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -14866,6 +14961,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -15810,6 +15906,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -15822,6 +15919,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -15870,6 +15968,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -15894,6 +15993,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -16812,6 +16912,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -16824,6 +16925,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -16872,6 +16974,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -16896,6 +16999,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -18022,6 +18126,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -18034,6 +18139,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -18082,6 +18188,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -18106,6 +18213,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -18521,6 +18629,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -18533,6 +18642,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -18581,6 +18691,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -18605,6 +18716,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -19453,6 +19565,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -19465,6 +19578,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -19513,6 +19627,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -19537,6 +19652,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -20329,6 +20445,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -20341,6 +20458,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -20389,6 +20507,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -20413,6 +20532,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -20832,6 +20952,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -20844,6 +20965,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -20892,6 +21014,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -20916,6 +21039,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -21248,6 +21372,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -21260,6 +21385,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -21308,6 +21434,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -21332,6 +21459,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -21664,6 +21792,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -21676,6 +21805,7 @@ description: Variables in memory after executing kitt.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", @@ -21724,6 +21854,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 761, "end": 767, "start": 761, "type": "TagDeclarator", @@ -21748,6 +21879,7 @@ description: Variables in memory after executing kitt.kcl 31.0 ], "tag": { + "commentStart": 812, "end": 818, "start": 812, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/kcl_samples/lego/ast.snap b/rust/kcl-lib/tests/kcl_samples/lego/ast.snap index 7364b7954..a6fbe2a94 100644 --- a/rust/kcl-lib/tests/kcl_samples/lego/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/lego/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing lego.kcl "Ok": { "body": [ { + "commentStart": 271, "declaration": { + "commentStart": 293, "end": 0, "id": { + "commentStart": 293, "end": 0, "name": "lbumps", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 302, "end": 0, "raw": "10", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing lego.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 304, "declaration": { + "commentStart": 329, "end": 0, "id": { + "commentStart": 329, "end": 0, "name": "wbumps", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 338, "end": 0, "raw": "5", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { + "commentStart": 339, "declaration": { + "commentStart": 364, "end": 0, "id": { + "commentStart": 364, "end": 0, "name": "pitch", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 372, "end": 0, "raw": "8.0", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { + "commentStart": 376, "declaration": { + "commentStart": 376, "end": 0, "id": { + "commentStart": 376, "end": 0, "name": "clearance", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 388, "end": 0, "raw": "0.1", "start": 0, @@ -122,15 +141,19 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { + "commentStart": 392, "declaration": { + "commentStart": 392, "end": 0, "id": { + "commentStart": 392, "end": 0, "name": "bumpDiam", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 403, "end": 0, "raw": "4.8", "start": 0, @@ -151,15 +174,19 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { + "commentStart": 407, "declaration": { + "commentStart": 407, "end": 0, "id": { + "commentStart": 407, "end": 0, "name": "bumpHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 420, "end": 0, "raw": "1.8", "start": 0, @@ -180,15 +207,19 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { + "commentStart": 424, "declaration": { + "commentStart": 424, "end": 0, "id": { + "commentStart": 424, "end": 0, "name": "height", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 433, "end": 0, "raw": "3.2", "start": 0, @@ -209,21 +240,28 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { + "commentStart": 437, "declaration": { + "commentStart": 437, "end": 0, "id": { + "commentStart": 437, "end": 0, "name": "t", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 442, "end": 0, "left": { + "commentStart": 442, "end": 0, "left": { + "commentStart": 442, "end": 0, "left": { + "commentStart": 442, "end": 0, "name": "pitch", "start": 0, @@ -232,8 +270,10 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 451, "end": 0, "left": { + "commentStart": 451, "end": 0, "raw": "2", "start": 0, @@ -246,6 +286,7 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { + "commentStart": 455, "end": 0, "name": "clearance", "start": 0, @@ -262,6 +303,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 468, "end": 0, "name": "bumpDiam", "start": 0, @@ -274,6 +316,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { + "commentStart": 480, "end": 0, "raw": "2.0", "start": 0, @@ -298,17 +341,22 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { + "commentStart": 484, "declaration": { + "commentStart": 484, "end": 0, "id": { + "commentStart": 484, "end": 0, "name": "postDiam", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 495, "end": 0, "left": { + "commentStart": 495, "end": 0, "name": "pitch", "start": 0, @@ -317,6 +365,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 503, "end": 0, "name": "t", "start": 0, @@ -337,19 +386,25 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { + "commentStart": 504, "declaration": { + "commentStart": 525, "end": 0, "id": { + "commentStart": 525, "end": 0, "name": "totalLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 539, "end": 0, "left": { + "commentStart": 539, "end": 0, "left": { + "commentStart": 539, "end": 0, "name": "lbumps", "start": 0, @@ -358,6 +413,7 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { + "commentStart": 548, "end": 0, "name": "pitch", "start": 0, @@ -370,8 +426,10 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 557, "end": 0, "left": { + "commentStart": 557, "end": 0, "raw": "2.0", "start": 0, @@ -384,6 +442,7 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { + "commentStart": 563, "end": 0, "name": "clearance", "start": 0, @@ -408,19 +467,25 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { + "commentStart": 574, "declaration": { + "commentStart": 574, "end": 0, "id": { + "commentStart": 574, "end": 0, "name": "totalWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 587, "end": 0, "left": { + "commentStart": 587, "end": 0, "left": { + "commentStart": 587, "end": 0, "name": "wbumps", "start": 0, @@ -429,6 +494,7 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { + "commentStart": 596, "end": 0, "name": "pitch", "start": 0, @@ -441,8 +507,10 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 605, "end": 0, "left": { + "commentStart": 605, "end": 0, "raw": "2.0", "start": 0, @@ -455,6 +523,7 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { + "commentStart": 611, "end": 0, "name": "clearance", "start": 0, @@ -479,17 +548,22 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { + "commentStart": 621, "declaration": { + "commentStart": 683, "end": 0, "id": { + "commentStart": 683, "end": 0, "name": "lSegments", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 695, "end": 0, "left": { + "commentStart": 695, "end": 0, "name": "totalLength", "start": 0, @@ -498,6 +572,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { + "commentStart": 709, "end": 0, "name": "lbumps", "start": 0, @@ -513,22 +588,32 @@ description: Result of parsing lego.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Calculate the number of segments in the length and width" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 716, "declaration": { + "commentStart": 716, "end": 0, "id": { + "commentStart": 716, "end": 0, "name": "wSegments", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 728, "end": 0, "left": { + "commentStart": 728, "end": 0, "name": "totalWidth", "start": 0, @@ -537,6 +622,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { + "commentStart": 741, "end": 0, "name": "wbumps", "start": 0, @@ -557,10 +643,12 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { + "commentStart": 747, "end": 0, "expression": { "arguments": [ { + "commentStart": 839, "end": 0, "name": "lbumps", "start": 0, @@ -568,6 +656,7 @@ description: Result of parsing lego.kcl "type": "Identifier" }, { + "commentStart": 847, "end": 0, "raw": "1", "start": 0, @@ -579,6 +668,7 @@ description: Result of parsing lego.kcl } }, { + "commentStart": 850, "end": 0, "raw": "\"lbumps must be greater than 1\"", "start": 0, @@ -588,25 +678,34 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 821, "end": 0, "name": "assertGreaterThan", "start": 0, "type": "Identifier" }, + "commentStart": 821, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "preComments": [ + "", + "", + "// Add assertions to ensure that the number of bumps are greater than 1" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 883, "end": 0, "expression": { "arguments": [ { + "commentStart": 901, "end": 0, "name": "wbumps", "start": 0, @@ -614,6 +713,7 @@ description: Result of parsing lego.kcl "type": "Identifier" }, { + "commentStart": 909, "end": 0, "raw": "1", "start": 0, @@ -625,6 +725,7 @@ description: Result of parsing lego.kcl } }, { + "commentStart": 912, "end": 0, "raw": "\"wbumps must be greater than 1\"", "start": 0, @@ -634,11 +735,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 883, "end": 0, "name": "assertGreaterThan", "start": 0, "type": "Identifier" }, + "commentStart": 883, "end": 0, "start": 0, "type": "CallExpression", @@ -649,9 +752,12 @@ description: Result of parsing lego.kcl "type": "ExpressionStatement" }, { + "commentStart": 944, "declaration": { + "commentStart": 963, "end": 0, "id": { + "commentStart": 963, "end": 0, "name": "base", "start": 0, @@ -662,6 +768,7 @@ description: Result of parsing lego.kcl { "arguments": [ { + "commentStart": 984, "end": 0, "raw": "'XY'", "start": 0, @@ -671,11 +778,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 970, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 970, "end": 0, "start": 0, "type": "CallExpression", @@ -684,17 +793,21 @@ description: Result of parsing lego.kcl { "arguments": [ { + "commentStart": 1010, "elements": [ { + "commentStart": 1011, "end": 0, "left": { "argument": { + "commentStart": 1012, "end": 0, "name": "totalWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1011, "end": 0, "operator": "-", "start": 0, @@ -703,6 +816,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { + "commentStart": 1025, "end": 0, "raw": "2", "start": 0, @@ -718,15 +832,18 @@ description: Result of parsing lego.kcl "type": "BinaryExpression" }, { + "commentStart": 1028, "end": 0, "left": { "argument": { + "commentStart": 1029, "end": 0, "name": "totalLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1028, "end": 0, "operator": "-", "start": 0, @@ -735,6 +852,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { + "commentStart": 1043, "end": 0, "raw": "2", "start": 0, @@ -756,6 +874,7 @@ description: Result of parsing lego.kcl "type": "ArrayExpression" }, { + "commentStart": 1047, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -763,11 +882,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 995, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 995, "end": 0, "start": 0, "type": "CallExpression", @@ -778,14 +899,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 1060, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1066, "elements": [ { + "commentStart": 1067, "end": 0, "name": "totalWidth", "start": 0, @@ -793,6 +917,7 @@ description: Result of parsing lego.kcl "type": "Identifier" }, { + "commentStart": 1079, "end": 0, "raw": "0", "start": 0, @@ -812,11 +937,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 1055, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1055, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -828,14 +955,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 1093, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1099, "elements": [ { + "commentStart": 1100, "end": 0, "raw": "0", "start": 0, @@ -847,6 +977,7 @@ description: Result of parsing lego.kcl } }, { + "commentStart": 1103, "end": 0, "name": "totalLength", "start": 0, @@ -862,11 +993,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 1088, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1088, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -878,21 +1011,25 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 1127, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1133, "elements": [ { "argument": { + "commentStart": 1135, "end": 0, "name": "totalWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1134, "end": 0, "operator": "-", "start": 0, @@ -900,6 +1037,7 @@ description: Result of parsing lego.kcl "type": "UnaryExpression" }, { + "commentStart": 1147, "end": 0, "raw": "0", "start": 0, @@ -919,11 +1057,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 1122, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1122, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -933,11 +1073,13 @@ description: Result of parsing lego.kcl { "arguments": [], "callee": { + "commentStart": 1156, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1156, "end": 0, "start": 0, "type": "CallExpression", @@ -948,12 +1090,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 1177, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1186, "end": 0, "name": "height", "start": 0, @@ -963,11 +1107,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 1169, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1169, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -975,11 +1121,13 @@ description: Result of parsing lego.kcl "unlabeled": null } ], + "commentStart": 970, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "6": [ { + "commentStart": 1193, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1002,14 +1150,22 @@ description: Result of parsing lego.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Make the base" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1356, "declaration": { + "commentStart": 1356, "end": 0, "id": { + "commentStart": 1356, "end": 0, "name": "shellExtrude", "start": 0, @@ -1020,6 +1176,7 @@ description: Result of parsing lego.kcl { "arguments": [ { + "commentStart": 1385, "end": 0, "name": "base", "start": 0, @@ -1027,6 +1184,7 @@ description: Result of parsing lego.kcl "type": "Identifier" }, { + "commentStart": 1391, "end": 0, "raw": "\"start\"", "start": 0, @@ -1036,11 +1194,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 1371, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1371, "end": 0, "start": 0, "type": "CallExpression", @@ -1049,13 +1209,17 @@ description: Result of parsing lego.kcl { "arguments": [ { + "commentStart": 1420, "elements": [ { "argument": { + "commentStart": 1431, "end": 0, "left": { + "commentStart": 1431, "end": 0, "left": { + "commentStart": 1431, "end": 0, "name": "totalWidth", "start": 0, @@ -1064,6 +1228,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { + "commentStart": 1444, "end": 0, "raw": "2", "start": 0, @@ -1080,6 +1245,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 1448, "end": 0, "name": "t", "start": 0, @@ -1090,6 +1256,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1429, "end": 0, "operator": "-", "start": 0, @@ -1098,10 +1265,13 @@ description: Result of parsing lego.kcl }, { "argument": { + "commentStart": 1461, "end": 0, "left": { + "commentStart": 1461, "end": 0, "left": { + "commentStart": 1461, "end": 0, "name": "totalLength", "start": 0, @@ -1110,6 +1280,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { + "commentStart": 1475, "end": 0, "raw": "2", "start": 0, @@ -1126,6 +1297,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 1479, "end": 0, "name": "t", "start": 0, @@ -1136,6 +1308,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1459, "end": 0, "operator": "-", "start": 0, @@ -1149,6 +1322,7 @@ description: Result of parsing lego.kcl "type": "ArrayExpression" }, { + "commentStart": 1490, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1156,11 +1330,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 1405, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1405, "end": 0, "start": 0, "type": "CallExpression", @@ -1171,16 +1347,20 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 1503, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1509, "elements": [ { + "commentStart": 1510, "end": 0, "left": { + "commentStart": 1510, "end": 0, "name": "totalWidth", "start": 0, @@ -1189,8 +1369,10 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 1524, "end": 0, "left": { + "commentStart": 1524, "end": 0, "raw": "2", "start": 0, @@ -1203,6 +1385,7 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { + "commentStart": 1528, "end": 0, "name": "t", "start": 0, @@ -1218,6 +1401,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression" }, { + "commentStart": 1532, "end": 0, "raw": "0", "start": 0, @@ -1237,11 +1421,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 1498, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1498, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1253,14 +1439,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 1546, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1552, "elements": [ { + "commentStart": 1553, "end": 0, "raw": "0", "start": 0, @@ -1272,8 +1461,10 @@ description: Result of parsing lego.kcl } }, { + "commentStart": 1556, "end": 0, "left": { + "commentStart": 1556, "end": 0, "name": "totalLength", "start": 0, @@ -1282,8 +1473,10 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 1571, "end": 0, "left": { + "commentStart": 1571, "end": 0, "raw": "2", "start": 0, @@ -1296,6 +1489,7 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { + "commentStart": 1575, "end": 0, "name": "t", "start": 0, @@ -1319,11 +1513,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 1541, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1541, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1335,17 +1531,21 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 1590, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1596, "elements": [ { "argument": { + "commentStart": 1599, "end": 0, "left": { + "commentStart": 1599, "end": 0, "name": "totalWidth", "start": 0, @@ -1354,8 +1554,10 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 1613, "end": 0, "left": { + "commentStart": 1613, "end": 0, "raw": "2", "start": 0, @@ -1368,6 +1570,7 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { + "commentStart": 1617, "end": 0, "name": "t", "start": 0, @@ -1382,6 +1585,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1597, "end": 0, "operator": "-", "start": 0, @@ -1389,6 +1593,7 @@ description: Result of parsing lego.kcl "type": "UnaryExpression" }, { + "commentStart": 1622, "end": 0, "raw": "0", "start": 0, @@ -1408,11 +1613,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 1585, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1585, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1422,11 +1629,13 @@ description: Result of parsing lego.kcl { "arguments": [], "callee": { + "commentStart": 1631, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1631, "end": 0, "start": 0, "type": "CallExpression", @@ -1437,6 +1646,7 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 1652, "end": 0, "name": "length", "start": 0, @@ -1444,8 +1654,10 @@ description: Result of parsing lego.kcl }, "arg": { "argument": { + "commentStart": 1663, "end": 0, "left": { + "commentStart": 1663, "end": 0, "name": "height", "start": 0, @@ -1454,6 +1666,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 1672, "end": 0, "name": "t", "start": 0, @@ -1464,6 +1677,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1661, "end": 0, "operator": "-", "start": 0, @@ -1473,11 +1687,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 1644, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1644, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1485,11 +1701,13 @@ description: Result of parsing lego.kcl "unlabeled": null } ], + "commentStart": 1371, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "6": [ { + "commentStart": 1675, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1517,9 +1735,12 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { + "commentStart": 1719, "declaration": { + "commentStart": 1719, "end": 0, "id": { + "commentStart": 1719, "end": 0, "name": "peg", "start": 0, @@ -1530,6 +1751,7 @@ description: Result of parsing lego.kcl { "arguments": [ { + "commentStart": 1739, "end": 0, "name": "base", "start": 0, @@ -1537,6 +1759,7 @@ description: Result of parsing lego.kcl "type": "Identifier" }, { + "commentStart": 1745, "end": 0, "raw": "'end'", "start": 0, @@ -1546,11 +1769,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 1725, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1725, "end": 0, "start": 0, "type": "CallExpression", @@ -1561,19 +1786,24 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 1772, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1781, "elements": [ { "argument": { + "commentStart": 1794, "end": 0, "left": { + "commentStart": 1794, "end": 0, "left": { + "commentStart": 1794, "end": 0, "name": "pitch", "start": 0, @@ -1582,8 +1812,10 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { + "commentStart": 1803, "end": 0, "left": { + "commentStart": 1803, "end": 0, "name": "wbumps", "start": 0, @@ -1592,6 +1824,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 1812, "end": 0, "raw": "1", "start": 0, @@ -1612,6 +1845,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { + "commentStart": 1817, "end": 0, "raw": "2", "start": 0, @@ -1626,6 +1860,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1792, "end": 0, "operator": "-", "start": 0, @@ -1634,10 +1869,13 @@ description: Result of parsing lego.kcl }, { "argument": { + "commentStart": 1832, "end": 0, "left": { + "commentStart": 1832, "end": 0, "left": { + "commentStart": 1832, "end": 0, "name": "pitch", "start": 0, @@ -1646,8 +1884,10 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { + "commentStart": 1841, "end": 0, "left": { + "commentStart": 1841, "end": 0, "name": "lbumps", "start": 0, @@ -1656,6 +1896,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 1850, "end": 0, "raw": "1", "start": 0, @@ -1676,6 +1917,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { + "commentStart": 1855, "end": 0, "raw": "2", "start": 0, @@ -1690,6 +1932,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1830, "end": 0, "operator": "-", "start": 0, @@ -1706,14 +1949,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 1875, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1884, "end": 0, "left": { + "commentStart": 1884, "end": 0, "name": "bumpDiam", "start": 0, @@ -1722,6 +1968,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { + "commentStart": 1895, "end": 0, "raw": "2", "start": 0, @@ -1739,11 +1986,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 1757, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1757, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1755,14 +2004,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 1933, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1940, "elements": [ { + "commentStart": 1941, "end": 0, "raw": "1", "start": 0, @@ -1774,6 +2026,7 @@ description: Result of parsing lego.kcl } }, { + "commentStart": 1944, "end": 0, "raw": "0", "start": 0, @@ -1794,12 +2047,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 1955, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1967, "end": 0, "name": "wbumps", "start": 0, @@ -1810,12 +2065,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 1982, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1993, "end": 0, "name": "pitch", "start": 0, @@ -1825,11 +2082,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 1909, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, + "commentStart": 1909, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1841,14 +2100,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 2035, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2042, "elements": [ { + "commentStart": 2043, "end": 0, "raw": "0", "start": 0, @@ -1860,6 +2122,7 @@ description: Result of parsing lego.kcl } }, { + "commentStart": 2046, "end": 0, "raw": "1", "start": 0, @@ -1880,12 +2143,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 2057, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2069, "end": 0, "name": "lbumps", "start": 0, @@ -1896,12 +2161,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 2084, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2095, "end": 0, "name": "pitch", "start": 0, @@ -1911,11 +2178,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 2011, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, + "commentStart": 2011, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1927,12 +2196,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 2121, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2130, "end": 0, "name": "bumpHeight", "start": 0, @@ -1942,11 +2213,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 2113, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2113, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1954,11 +2227,13 @@ description: Result of parsing lego.kcl "unlabeled": null } ], + "commentStart": 1725, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "4": [ { + "commentStart": 2141, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1986,9 +2261,12 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { + "commentStart": 2188, "declaration": { + "commentStart": 2188, "end": 0, "id": { + "commentStart": 2188, "end": 0, "name": "tubePattern", "start": 0, @@ -1999,6 +2277,7 @@ description: Result of parsing lego.kcl { "arguments": [ { + "commentStart": 2216, "end": 0, "name": "shellExtrude", "start": 0, @@ -2006,6 +2285,7 @@ description: Result of parsing lego.kcl "type": "Identifier" }, { + "commentStart": 2230, "end": 0, "raw": "'start'", "start": 0, @@ -2015,11 +2295,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 2202, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2202, "end": 0, "start": 0, "type": "CallExpression", @@ -2030,21 +2312,27 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 2259, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2268, "elements": [ { "argument": { + "commentStart": 2281, "end": 0, "left": { + "commentStart": 2281, "end": 0, "left": { + "commentStart": 2281, "end": 0, "left": { + "commentStart": 2281, "end": 0, "name": "pitch", "start": 0, @@ -2053,8 +2341,10 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { + "commentStart": 2290, "end": 0, "left": { + "commentStart": 2290, "end": 0, "name": "wbumps", "start": 0, @@ -2063,6 +2353,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 2299, "end": 0, "raw": "1", "start": 0, @@ -2083,6 +2374,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { + "commentStart": 2304, "end": 0, "raw": "2", "start": 0, @@ -2099,8 +2391,10 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 2309, "end": 0, "left": { + "commentStart": 2309, "end": 0, "name": "pitch", "start": 0, @@ -2109,6 +2403,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { + "commentStart": 2317, "end": 0, "raw": "2", "start": 0, @@ -2127,6 +2422,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 2279, "end": 0, "operator": "-", "start": 0, @@ -2135,12 +2431,16 @@ description: Result of parsing lego.kcl }, { "argument": { + "commentStart": 2333, "end": 0, "left": { + "commentStart": 2333, "end": 0, "left": { + "commentStart": 2333, "end": 0, "left": { + "commentStart": 2333, "end": 0, "name": "pitch", "start": 0, @@ -2149,8 +2449,10 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { + "commentStart": 2342, "end": 0, "left": { + "commentStart": 2342, "end": 0, "name": "lbumps", "start": 0, @@ -2159,6 +2461,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 2351, "end": 0, "raw": "1", "start": 0, @@ -2179,6 +2482,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { + "commentStart": 2356, "end": 0, "raw": "2", "start": 0, @@ -2195,8 +2499,10 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 2361, "end": 0, "left": { + "commentStart": 2361, "end": 0, "name": "pitch", "start": 0, @@ -2205,6 +2511,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { + "commentStart": 2369, "end": 0, "raw": "2", "start": 0, @@ -2223,6 +2530,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 2331, "end": 0, "operator": "-", "start": 0, @@ -2239,14 +2547,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 2390, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2399, "end": 0, "left": { + "commentStart": 2399, "end": 0, "name": "bumpDiam", "start": 0, @@ -2255,6 +2566,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { + "commentStart": 2410, "end": 0, "raw": "2", "start": 0, @@ -2272,11 +2584,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 2244, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2244, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2288,14 +2602,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 2448, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2455, "elements": [ { + "commentStart": 2456, "end": 0, "raw": "1", "start": 0, @@ -2307,6 +2624,7 @@ description: Result of parsing lego.kcl } }, { + "commentStart": 2459, "end": 0, "raw": "0", "start": 0, @@ -2327,14 +2645,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 2470, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2482, "end": 0, "left": { + "commentStart": 2482, "end": 0, "name": "wbumps", "start": 0, @@ -2343,6 +2664,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 2491, "end": 0, "raw": "1", "start": 0, @@ -2361,12 +2683,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 2501, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2512, "end": 0, "name": "pitch", "start": 0, @@ -2376,11 +2700,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 2424, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, + "commentStart": 2424, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2392,14 +2718,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 2554, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2561, "elements": [ { + "commentStart": 2562, "end": 0, "raw": "0", "start": 0, @@ -2411,6 +2740,7 @@ description: Result of parsing lego.kcl } }, { + "commentStart": 2565, "end": 0, "raw": "1", "start": 0, @@ -2431,14 +2761,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 2576, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2588, "end": 0, "left": { + "commentStart": 2588, "end": 0, "name": "lbumps", "start": 0, @@ -2447,6 +2780,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { + "commentStart": 2597, "end": 0, "raw": "1", "start": 0, @@ -2465,12 +2799,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 2607, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2618, "end": 0, "name": "pitch", "start": 0, @@ -2480,11 +2816,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 2530, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, + "commentStart": 2530, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2496,12 +2834,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { + "commentStart": 2644, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2653, "end": 0, "name": "bumpHeight", "start": 0, @@ -2511,11 +2851,13 @@ description: Result of parsing lego.kcl } ], "callee": { + "commentStart": 2636, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2636, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2523,6 +2865,7 @@ description: Result of parsing lego.kcl "unlabeled": null } ], + "commentStart": 2202, "end": 0, "start": 0, "type": "PipeExpression", @@ -2538,20 +2881,32 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 239, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Lego Brick", + "// A standard Lego brick. This is a small, plastic construction block toy that can be interlocked with other blocks to build various structures, models, and figures. There are a lot of hacks used in this code.", + "", + "", + "// Set Units" + ], "properties": [ { + "commentStart": 248, "end": 0, "key": { + "commentStart": 248, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -2560,6 +2915,7 @@ description: Result of parsing lego.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 268, "end": 0, "name": "in", "start": 0, @@ -2576,6 +2932,7 @@ description: Result of parsing lego.kcl "nonCodeNodes": { "0": [ { + "commentStart": 304, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2588,6 +2945,7 @@ description: Result of parsing lego.kcl ], "1": [ { + "commentStart": 339, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2600,6 +2958,7 @@ description: Result of parsing lego.kcl ], "8": [ { + "commentStart": 504, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2609,100 +2968,17 @@ description: Result of parsing lego.kcl "style": "line" } } - ], - "10": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Calculate the number of segments in the length and width", - "style": "line" - } - } - ], - "12": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Add assertions to ensure that the number of bumps are greater than 1", - "style": "line" - } - } - ], - "14": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Make the base", - "style": "line" - } - } ] }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Lego Brick", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A standard Lego brick. This is a small, plastic construction block toy that can be interlocked with other blocks to build various structures, models, and figures. There are a lot of hacks used in this code.", - "style": "line" - } - }, - { + "commentStart": 271, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set Units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/mounting-plate/ast.snap b/rust/kcl-lib/tests/kcl_samples/mounting-plate/ast.snap index fdbd5061a..743d54b7b 100644 --- a/rust/kcl-lib/tests/kcl_samples/mounting-plate/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/mounting-plate/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing mounting-plate.kcl "Ok": { "body": [ { + "commentStart": 240, "declaration": { + "commentStart": 262, "end": 0, "id": { + "commentStart": 262, "end": 0, "name": "plateLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 276, "end": 0, "raw": "10", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing mounting-plate.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 279, "declaration": { + "commentStart": 279, "end": 0, "id": { + "commentStart": 279, "end": 0, "name": "plateWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 292, "end": 0, "raw": "6", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing mounting-plate.kcl "type": "VariableDeclaration" }, { + "commentStart": 294, "declaration": { + "commentStart": 294, "end": 0, "id": { + "commentStart": 294, "end": 0, "name": "filletRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 309, "end": 0, "raw": "0.5", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing mounting-plate.kcl "type": "VariableDeclaration" }, { + "commentStart": 313, "declaration": { + "commentStart": 313, "end": 0, "id": { + "commentStart": 313, "end": 0, "name": "plateThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 330, "end": 0, "raw": ".5", "start": 0, @@ -122,15 +141,19 @@ description: Result of parsing mounting-plate.kcl "type": "VariableDeclaration" }, { + "commentStart": 333, "declaration": { + "commentStart": 333, "end": 0, "id": { + "commentStart": 333, "end": 0, "name": "centerHoleDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 354, "end": 0, "raw": "2", "start": 0, @@ -151,9 +174,12 @@ description: Result of parsing mounting-plate.kcl "type": "VariableDeclaration" }, { + "commentStart": 355, "declaration": { + "commentStart": 510, "end": 0, "id": { + "commentStart": 510, "end": 0, "name": "rectShape", "start": 0, @@ -163,9 +189,12 @@ description: Result of parsing mounting-plate.kcl "body": { "body": [ { + "commentStart": 535, "declaration": { + "commentStart": 535, "end": 0, "id": { + "commentStart": 535, "end": 0, "name": "rr", "start": 0, @@ -176,6 +205,7 @@ description: Result of parsing mounting-plate.kcl { "arguments": [ { + "commentStart": 554, "end": 0, "raw": "'XY'", "start": 0, @@ -185,11 +215,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 540, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 540, "end": 0, "start": 0, "type": "CallExpression", @@ -198,13 +230,17 @@ description: Result of parsing mounting-plate.kcl { "arguments": [ { + "commentStart": 582, "elements": [ { + "commentStart": 583, "end": 0, "left": { + "commentStart": 583, "computed": false, "end": 0, "object": { + "commentStart": 583, "end": 0, "name": "pos", "start": 0, @@ -212,6 +248,7 @@ description: Result of parsing mounting-plate.kcl "type": "Identifier" }, "property": { + "commentStart": 587, "end": 0, "raw": "0", "start": 0, @@ -228,8 +265,10 @@ description: Result of parsing mounting-plate.kcl }, "operator": "-", "right": { + "commentStart": 593, "end": 0, "left": { + "commentStart": 593, "end": 0, "name": "w", "start": 0, @@ -238,6 +277,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "/", "right": { + "commentStart": 597, "end": 0, "raw": "2", "start": 0, @@ -257,11 +297,14 @@ description: Result of parsing mounting-plate.kcl "type": "BinaryExpression" }, { + "commentStart": 601, "end": 0, "left": { + "commentStart": 601, "computed": false, "end": 0, "object": { + "commentStart": 601, "end": 0, "name": "pos", "start": 0, @@ -269,6 +312,7 @@ description: Result of parsing mounting-plate.kcl "type": "Identifier" }, "property": { + "commentStart": 605, "end": 0, "raw": "1", "start": 0, @@ -285,8 +329,10 @@ description: Result of parsing mounting-plate.kcl }, "operator": "-", "right": { + "commentStart": 611, "end": 0, "left": { + "commentStart": 611, "end": 0, "name": "l", "start": 0, @@ -295,6 +341,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "/", "right": { + "commentStart": 615, "end": 0, "raw": "2", "start": 0, @@ -320,6 +367,7 @@ description: Result of parsing mounting-plate.kcl "type": "ArrayExpression" }, { + "commentStart": 620, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -327,11 +375,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 567, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 567, "end": 0, "start": 0, "type": "CallExpression", @@ -342,19 +392,24 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 635, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 649, "elements": [ { + "commentStart": 650, "end": 0, "left": { + "commentStart": 650, "computed": false, "end": 0, "object": { + "commentStart": 650, "end": 0, "name": "pos", "start": 0, @@ -362,6 +417,7 @@ description: Result of parsing mounting-plate.kcl "type": "Identifier" }, "property": { + "commentStart": 654, "end": 0, "raw": "0", "start": 0, @@ -378,8 +434,10 @@ description: Result of parsing mounting-plate.kcl }, "operator": "+", "right": { + "commentStart": 659, "end": 0, "left": { + "commentStart": 659, "end": 0, "name": "w", "start": 0, @@ -388,6 +446,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "/", "right": { + "commentStart": 663, "end": 0, "raw": "2", "start": 0, @@ -407,11 +466,14 @@ description: Result of parsing mounting-plate.kcl "type": "BinaryExpression" }, { + "commentStart": 666, "end": 0, "left": { + "commentStart": 666, "computed": false, "end": 0, "object": { + "commentStart": 666, "end": 0, "name": "pos", "start": 0, @@ -419,6 +481,7 @@ description: Result of parsing mounting-plate.kcl "type": "Identifier" }, "property": { + "commentStart": 670, "end": 0, "raw": "1", "start": 0, @@ -435,8 +498,10 @@ description: Result of parsing mounting-plate.kcl }, "operator": "-", "right": { + "commentStart": 676, "end": 0, "left": { + "commentStart": 676, "end": 0, "name": "l", "start": 0, @@ -445,6 +510,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "/", "right": { + "commentStart": 680, "end": 0, "raw": "2", "start": 0, @@ -473,12 +539,14 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 685, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 691, "end": 0, "start": 0, "type": "TagDeclarator", @@ -488,11 +556,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 630, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 630, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -504,19 +574,24 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 711, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 725, "elements": [ { + "commentStart": 726, "end": 0, "left": { + "commentStart": 726, "computed": false, "end": 0, "object": { + "commentStart": 726, "end": 0, "name": "pos", "start": 0, @@ -524,6 +599,7 @@ description: Result of parsing mounting-plate.kcl "type": "Identifier" }, "property": { + "commentStart": 730, "end": 0, "raw": "0", "start": 0, @@ -540,8 +616,10 @@ description: Result of parsing mounting-plate.kcl }, "operator": "+", "right": { + "commentStart": 735, "end": 0, "left": { + "commentStart": 735, "end": 0, "name": "w", "start": 0, @@ -550,6 +628,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "/", "right": { + "commentStart": 739, "end": 0, "raw": "2", "start": 0, @@ -569,11 +648,14 @@ description: Result of parsing mounting-plate.kcl "type": "BinaryExpression" }, { + "commentStart": 742, "end": 0, "left": { + "commentStart": 742, "computed": false, "end": 0, "object": { + "commentStart": 742, "end": 0, "name": "pos", "start": 0, @@ -581,6 +663,7 @@ description: Result of parsing mounting-plate.kcl "type": "Identifier" }, "property": { + "commentStart": 746, "end": 0, "raw": "1", "start": 0, @@ -597,8 +680,10 @@ description: Result of parsing mounting-plate.kcl }, "operator": "+", "right": { + "commentStart": 751, "end": 0, "left": { + "commentStart": 751, "end": 0, "name": "l", "start": 0, @@ -607,6 +692,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "/", "right": { + "commentStart": 755, "end": 0, "raw": "2", "start": 0, @@ -635,12 +721,14 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 759, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 765, "end": 0, "start": 0, "type": "TagDeclarator", @@ -650,11 +738,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 706, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 706, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -666,19 +756,24 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 785, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 799, "elements": [ { + "commentStart": 800, "end": 0, "left": { + "commentStart": 800, "computed": false, "end": 0, "object": { + "commentStart": 800, "end": 0, "name": "pos", "start": 0, @@ -686,6 +781,7 @@ description: Result of parsing mounting-plate.kcl "type": "Identifier" }, "property": { + "commentStart": 804, "end": 0, "raw": "0", "start": 0, @@ -702,8 +798,10 @@ description: Result of parsing mounting-plate.kcl }, "operator": "-", "right": { + "commentStart": 810, "end": 0, "left": { + "commentStart": 810, "end": 0, "name": "w", "start": 0, @@ -712,6 +810,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "/", "right": { + "commentStart": 814, "end": 0, "raw": "2", "start": 0, @@ -731,11 +830,14 @@ description: Result of parsing mounting-plate.kcl "type": "BinaryExpression" }, { + "commentStart": 818, "end": 0, "left": { + "commentStart": 818, "computed": false, "end": 0, "object": { + "commentStart": 818, "end": 0, "name": "pos", "start": 0, @@ -743,6 +845,7 @@ description: Result of parsing mounting-plate.kcl "type": "Identifier" }, "property": { + "commentStart": 822, "end": 0, "raw": "1", "start": 0, @@ -759,8 +862,10 @@ description: Result of parsing mounting-plate.kcl }, "operator": "+", "right": { + "commentStart": 827, "end": 0, "left": { + "commentStart": 827, "end": 0, "name": "l", "start": 0, @@ -769,6 +874,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "/", "right": { + "commentStart": 831, "end": 0, "raw": "2", "start": 0, @@ -797,12 +903,14 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 835, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 841, "end": 0, "start": 0, "type": "TagDeclarator", @@ -812,11 +920,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 780, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 780, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -828,12 +938,14 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 862, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 868, "end": 0, "start": 0, "type": "TagDeclarator", @@ -843,11 +955,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 856, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 856, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -855,6 +969,7 @@ description: Result of parsing mounting-plate.kcl "unlabeled": null } ], + "commentStart": 540, "end": 0, "start": 0, "type": "PipeExpression", @@ -871,26 +986,31 @@ description: Result of parsing mounting-plate.kcl }, { "argument": { + "commentStart": 885, "end": 0, "name": "rr", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 878, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 531, "end": 0, "start": 0 }, + "commentStart": 519, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 520, "end": 0, "name": "pos", "start": 0, @@ -900,6 +1020,7 @@ description: Result of parsing mounting-plate.kcl { "type": "Parameter", "identifier": { + "commentStart": 525, "end": 0, "name": "w", "start": 0, @@ -909,6 +1030,7 @@ description: Result of parsing mounting-plate.kcl { "type": "Parameter", "identifier": { + "commentStart": 528, "end": 0, "name": "l", "start": 0, @@ -925,20 +1047,29 @@ description: Result of parsing mounting-plate.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// Create a function that defines the body width and length of the mounting plate. Tag the corners so they can be passed through the fillet function." + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 889, "declaration": { + "commentStart": 945, "end": 0, "id": { + "commentStart": 945, "end": 0, "name": "holeRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 958, "end": 0, "raw": ".25", "start": 0, @@ -954,20 +1085,29 @@ description: Result of parsing mounting-plate.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Define the hole radius and x, y location constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 962, "declaration": { + "commentStart": 962, "end": 0, "id": { + "commentStart": 962, "end": 0, "name": "holeIndex", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 974, "end": 0, "raw": ".75", "start": 0, @@ -988,9 +1128,12 @@ description: Result of parsing mounting-plate.kcl "type": "VariableDeclaration" }, { + "commentStart": 977, "declaration": { + "commentStart": 1038, "end": 0, "id": { + "commentStart": 1038, "end": 0, "name": "rs", "start": 0, @@ -999,8 +1142,10 @@ description: Result of parsing mounting-plate.kcl "init": { "arguments": [ { + "commentStart": 1053, "elements": [ { + "commentStart": 1054, "end": 0, "raw": "0", "start": 0, @@ -1012,6 +1157,7 @@ description: Result of parsing mounting-plate.kcl } }, { + "commentStart": 1057, "end": 0, "raw": "0", "start": 0, @@ -1029,6 +1175,7 @@ description: Result of parsing mounting-plate.kcl "type": "ArrayExpression" }, { + "commentStart": 1061, "end": 0, "name": "plateWidth", "start": 0, @@ -1036,6 +1183,7 @@ description: Result of parsing mounting-plate.kcl "type": "Identifier" }, { + "commentStart": 1073, "end": 0, "name": "plateLength", "start": 0, @@ -1044,11 +1192,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 1043, "end": 0, "name": "rectShape", "start": 0, "type": "Identifier" }, + "commentStart": 1043, "end": 0, "start": 0, "type": "CallExpression", @@ -1059,14 +1209,22 @@ description: Result of parsing mounting-plate.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Create the mounting plate extrusion, holes, and fillets" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1086, "declaration": { + "commentStart": 1086, "end": 0, "id": { + "commentStart": 1086, "end": 0, "name": "part", "start": 0, @@ -1075,6 +1233,7 @@ description: Result of parsing mounting-plate.kcl "init": { "body": [ { + "commentStart": 1093, "end": 0, "name": "rs", "start": 0, @@ -1088,25 +1247,31 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1121, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1130, "elements": [ { + "commentStart": 1141, "end": 0, "left": { + "commentStart": 1141, "end": 0, "left": { "argument": { + "commentStart": 1142, "end": 0, "name": "plateWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1141, "end": 0, "operator": "-", "start": 0, @@ -1115,6 +1280,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "/", "right": { + "commentStart": 1155, "end": 0, "raw": "2", "start": 0, @@ -1131,6 +1297,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "+", "right": { + "commentStart": 1159, "end": 0, "name": "holeIndex", "start": 0, @@ -1142,10 +1309,13 @@ description: Result of parsing mounting-plate.kcl "type": "BinaryExpression" }, { + "commentStart": 1179, "end": 0, "left": { + "commentStart": 1179, "end": 0, "left": { + "commentStart": 1179, "end": 0, "name": "plateLength", "start": 0, @@ -1154,6 +1324,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "/", "right": { + "commentStart": 1193, "end": 0, "raw": "2", "start": 0, @@ -1170,6 +1341,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "-", "right": { + "commentStart": 1197, "end": 0, "name": "holeIndex", "start": 0, @@ -1190,12 +1362,14 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1224, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1233, "end": 0, "name": "holeRadius", "start": 0, @@ -1205,11 +1379,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 1106, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1106, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1217,6 +1393,7 @@ description: Result of parsing mounting-plate.kcl "unlabeled": null }, { + "commentStart": 1252, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1224,11 +1401,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 1101, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 1101, "end": 0, "start": 0, "type": "CallExpression", @@ -1241,18 +1420,23 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1280, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1289, "elements": [ { + "commentStart": 1300, "end": 0, "left": { + "commentStart": 1300, "end": 0, "left": { + "commentStart": 1300, "end": 0, "name": "plateWidth", "start": 0, @@ -1261,6 +1445,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "/", "right": { + "commentStart": 1313, "end": 0, "raw": "2", "start": 0, @@ -1277,6 +1462,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "-", "right": { + "commentStart": 1317, "end": 0, "name": "holeIndex", "start": 0, @@ -1288,10 +1474,13 @@ description: Result of parsing mounting-plate.kcl "type": "BinaryExpression" }, { + "commentStart": 1337, "end": 0, "left": { + "commentStart": 1337, "end": 0, "left": { + "commentStart": 1337, "end": 0, "name": "plateLength", "start": 0, @@ -1300,6 +1489,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "/", "right": { + "commentStart": 1351, "end": 0, "raw": "2", "start": 0, @@ -1316,6 +1506,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "-", "right": { + "commentStart": 1355, "end": 0, "name": "holeIndex", "start": 0, @@ -1336,12 +1527,14 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1382, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1391, "end": 0, "name": "holeRadius", "start": 0, @@ -1351,11 +1544,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 1265, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1265, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1363,6 +1558,7 @@ description: Result of parsing mounting-plate.kcl "unlabeled": null }, { + "commentStart": 1410, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1370,11 +1566,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 1260, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 1260, "end": 0, "start": 0, "type": "CallExpression", @@ -1387,25 +1585,31 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1438, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1447, "elements": [ { + "commentStart": 1458, "end": 0, "left": { + "commentStart": 1458, "end": 0, "left": { "argument": { + "commentStart": 1459, "end": 0, "name": "plateWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1458, "end": 0, "operator": "-", "start": 0, @@ -1414,6 +1618,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "/", "right": { + "commentStart": 1472, "end": 0, "raw": "2", "start": 0, @@ -1430,6 +1635,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "+", "right": { + "commentStart": 1476, "end": 0, "name": "holeIndex", "start": 0, @@ -1441,17 +1647,21 @@ description: Result of parsing mounting-plate.kcl "type": "BinaryExpression" }, { + "commentStart": 1496, "end": 0, "left": { + "commentStart": 1496, "end": 0, "left": { "argument": { + "commentStart": 1497, "end": 0, "name": "plateLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1496, "end": 0, "operator": "-", "start": 0, @@ -1460,6 +1670,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "/", "right": { + "commentStart": 1511, "end": 0, "raw": "2", "start": 0, @@ -1476,6 +1687,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "+", "right": { + "commentStart": 1515, "end": 0, "name": "holeIndex", "start": 0, @@ -1496,12 +1708,14 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1542, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1551, "end": 0, "name": "holeRadius", "start": 0, @@ -1511,11 +1725,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 1423, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1423, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1523,6 +1739,7 @@ description: Result of parsing mounting-plate.kcl "unlabeled": null }, { + "commentStart": 1570, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1530,11 +1747,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 1418, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 1418, "end": 0, "start": 0, "type": "CallExpression", @@ -1547,18 +1766,23 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1598, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1607, "elements": [ { + "commentStart": 1618, "end": 0, "left": { + "commentStart": 1618, "end": 0, "left": { + "commentStart": 1618, "end": 0, "name": "plateWidth", "start": 0, @@ -1567,6 +1791,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "/", "right": { + "commentStart": 1631, "end": 0, "raw": "2", "start": 0, @@ -1583,6 +1808,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "-", "right": { + "commentStart": 1635, "end": 0, "name": "holeIndex", "start": 0, @@ -1594,17 +1820,21 @@ description: Result of parsing mounting-plate.kcl "type": "BinaryExpression" }, { + "commentStart": 1655, "end": 0, "left": { + "commentStart": 1655, "end": 0, "left": { "argument": { + "commentStart": 1656, "end": 0, "name": "plateLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1655, "end": 0, "operator": "-", "start": 0, @@ -1613,6 +1843,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "/", "right": { + "commentStart": 1670, "end": 0, "raw": "2", "start": 0, @@ -1629,6 +1860,7 @@ description: Result of parsing mounting-plate.kcl }, "operator": "+", "right": { + "commentStart": 1674, "end": 0, "name": "holeIndex", "start": 0, @@ -1649,12 +1881,14 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1701, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1710, "end": 0, "name": "holeRadius", "start": 0, @@ -1664,11 +1898,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 1583, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1583, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1676,6 +1912,7 @@ description: Result of parsing mounting-plate.kcl "unlabeled": null }, { + "commentStart": 1729, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1683,11 +1920,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 1578, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 1578, "end": 0, "start": 0, "type": "CallExpression", @@ -1700,14 +1939,17 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1757, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1766, "elements": [ { + "commentStart": 1767, "end": 0, "raw": "0", "start": 0, @@ -1719,6 +1961,7 @@ description: Result of parsing mounting-plate.kcl } }, { + "commentStart": 1770, "end": 0, "raw": "0", "start": 0, @@ -1739,12 +1982,14 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1781, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1790, "end": 0, "name": "centerHoleDiameter", "start": 0, @@ -1754,11 +1999,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 1742, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1742, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1766,6 +2013,7 @@ description: Result of parsing mounting-plate.kcl "unlabeled": null }, { + "commentStart": 1817, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1773,11 +2021,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 1737, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 1737, "end": 0, "start": 0, "type": "CallExpression", @@ -1788,12 +2038,14 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1833, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1842, "end": 0, "name": "plateThickness", "start": 0, @@ -1803,11 +2055,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 1825, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1825, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1819,12 +2073,14 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1878, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1887, "end": 0, "name": "filletRadius", "start": 0, @@ -1835,22 +2091,27 @@ description: Result of parsing mounting-plate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1908, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1915, "elements": [ { "arguments": [ { + "commentStart": 1950, "computed": false, "end": 0, "object": { + "commentStart": 1950, "computed": false, "end": 0, "object": { + "commentStart": 1950, "end": 0, "name": "rs", "start": 0, @@ -1858,6 +2119,7 @@ description: Result of parsing mounting-plate.kcl "type": "Identifier" }, "property": { + "commentStart": 1953, "end": 0, "name": "tags", "start": 0, @@ -1869,6 +2131,7 @@ description: Result of parsing mounting-plate.kcl "type": "MemberExpression" }, "property": { + "commentStart": 1958, "end": 0, "name": "edge1", "start": 0, @@ -1881,11 +2144,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 1926, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1926, "end": 0, "start": 0, "type": "CallExpression", @@ -1894,12 +2159,15 @@ description: Result of parsing mounting-plate.kcl { "arguments": [ { + "commentStart": 1999, "computed": false, "end": 0, "object": { + "commentStart": 1999, "computed": false, "end": 0, "object": { + "commentStart": 1999, "end": 0, "name": "rs", "start": 0, @@ -1907,6 +2175,7 @@ description: Result of parsing mounting-plate.kcl "type": "Identifier" }, "property": { + "commentStart": 2002, "end": 0, "name": "tags", "start": 0, @@ -1918,6 +2187,7 @@ description: Result of parsing mounting-plate.kcl "type": "MemberExpression" }, "property": { + "commentStart": 2007, "end": 0, "name": "edge2", "start": 0, @@ -1930,11 +2200,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 1975, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1975, "end": 0, "start": 0, "type": "CallExpression", @@ -1943,12 +2215,15 @@ description: Result of parsing mounting-plate.kcl { "arguments": [ { + "commentStart": 2048, "computed": false, "end": 0, "object": { + "commentStart": 2048, "computed": false, "end": 0, "object": { + "commentStart": 2048, "end": 0, "name": "rs", "start": 0, @@ -1956,6 +2231,7 @@ description: Result of parsing mounting-plate.kcl "type": "Identifier" }, "property": { + "commentStart": 2051, "end": 0, "name": "tags", "start": 0, @@ -1967,6 +2243,7 @@ description: Result of parsing mounting-plate.kcl "type": "MemberExpression" }, "property": { + "commentStart": 2056, "end": 0, "name": "edge3", "start": 0, @@ -1979,11 +2256,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 2024, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 2024, "end": 0, "start": 0, "type": "CallExpression", @@ -1992,12 +2271,15 @@ description: Result of parsing mounting-plate.kcl { "arguments": [ { + "commentStart": 2097, "computed": false, "end": 0, "object": { + "commentStart": 2097, "computed": false, "end": 0, "object": { + "commentStart": 2097, "end": 0, "name": "rs", "start": 0, @@ -2005,6 +2287,7 @@ description: Result of parsing mounting-plate.kcl "type": "Identifier" }, "property": { + "commentStart": 2100, "end": 0, "name": "tags", "start": 0, @@ -2016,6 +2299,7 @@ description: Result of parsing mounting-plate.kcl "type": "MemberExpression" }, "property": { + "commentStart": 2105, "end": 0, "name": "edge4", "start": 0, @@ -2028,11 +2312,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 2073, "end": 0, "name": "getPreviousAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 2073, "end": 0, "start": 0, "type": "CallExpression", @@ -2047,11 +2333,13 @@ description: Result of parsing mounting-plate.kcl } ], "callee": { + "commentStart": 1863, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1863, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2059,6 +2347,7 @@ description: Result of parsing mounting-plate.kcl "unlabeled": null } ], + "commentStart": 1093, "end": 0, "start": 0, "type": "PipeExpression", @@ -2074,20 +2363,32 @@ description: Result of parsing mounting-plate.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 208, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Mounting Plate", + "// A flat piece of material, often metal or plastic, that serves as a support or base for attaching, securing, or mounting various types of equipment, devices, or components.", + "", + "", + "// Set Units" + ], "properties": [ { + "commentStart": 217, "end": 0, "key": { + "commentStart": 217, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -2096,6 +2397,7 @@ description: Result of parsing mounting-plate.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 237, "end": 0, "name": "in", "start": 0, @@ -2109,100 +2411,16 @@ description: Result of parsing mounting-plate.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "4": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create a function that defines the body width and length of the mounting plate. Tag the corners so they can be passed through the fillet function.", - "style": "line" - } - } - ], - "5": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Define the hole radius and x, y location constants", - "style": "line" - } - } - ], - "7": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the mounting plate extrusion, holes, and fillets", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Mounting Plate", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A flat piece of material, often metal or plastic, that serves as a support or base for attaching, securing, or mounting various types of equipment, devices, or components.", - "style": "line" - } - }, - { + "commentStart": 240, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set Units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/mounting-plate/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/mounting-plate/program_memory.snap index db6c39678..ade22fcb2 100644 --- a/rust/kcl-lib/tests/kcl_samples/mounting-plate/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/mounting-plate/program_memory.snap @@ -87,6 +87,7 @@ description: Variables in memory after executing mounting-plate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 691, "end": 697, "start": 691, "type": "TagDeclarator", @@ -99,6 +100,7 @@ description: Variables in memory after executing mounting-plate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 765, "end": 771, "start": 765, "type": "TagDeclarator", @@ -111,6 +113,7 @@ description: Variables in memory after executing mounting-plate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 841, "end": 847, "start": 841, "type": "TagDeclarator", @@ -123,6 +126,7 @@ description: Variables in memory after executing mounting-plate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 868, "end": 874, "start": 868, "type": "TagDeclarator", @@ -145,6 +149,7 @@ description: Variables in memory after executing mounting-plate.kcl -5.0 ], "tag": { + "commentStart": 691, "end": 697, "start": 691, "type": "TagDeclarator", @@ -169,6 +174,7 @@ description: Variables in memory after executing mounting-plate.kcl -5.0 ], "tag": { + "commentStart": 765, "end": 771, "start": 765, "type": "TagDeclarator", @@ -193,6 +199,7 @@ description: Variables in memory after executing mounting-plate.kcl 5.0 ], "tag": { + "commentStart": 841, "end": 847, "start": 841, "type": "TagDeclarator", @@ -217,6 +224,7 @@ description: Variables in memory after executing mounting-plate.kcl 5.0 ], "tag": { + "commentStart": 868, "end": 874, "start": 868, "type": "TagDeclarator", @@ -399,6 +407,7 @@ description: Variables in memory after executing mounting-plate.kcl -5.0 ], "tag": { + "commentStart": 691, "end": 697, "start": 691, "type": "TagDeclarator", @@ -423,6 +432,7 @@ description: Variables in memory after executing mounting-plate.kcl -5.0 ], "tag": { + "commentStart": 765, "end": 771, "start": 765, "type": "TagDeclarator", @@ -447,6 +457,7 @@ description: Variables in memory after executing mounting-plate.kcl 5.0 ], "tag": { + "commentStart": 841, "end": 847, "start": 841, "type": "TagDeclarator", @@ -471,6 +482,7 @@ description: Variables in memory after executing mounting-plate.kcl 5.0 ], "tag": { + "commentStart": 868, "end": 874, "start": 868, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/kcl_samples/multi-axis-robot/ast.snap b/rust/kcl-lib/tests/kcl_samples/multi-axis-robot/ast.snap index ed841af18..3ebbadbe7 100644 --- a/rust/kcl-lib/tests/kcl_samples/multi-axis-robot/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/multi-axis-robot/ast.snap @@ -6,6 +6,7 @@ description: Result of parsing multi-axis-robot.kcl "Ok": { "body": [ { + "commentStart": 212, "end": 0, "path": { "type": "Kcl", @@ -14,6 +15,7 @@ description: Result of parsing multi-axis-robot.kcl "selector": { "type": "None", "alias": { + "commentStart": 245, "end": 0, "name": "robotArmBase", "start": 0, @@ -25,6 +27,7 @@ description: Result of parsing multi-axis-robot.kcl "type": "ImportStatement" }, { + "commentStart": 258, "end": 0, "path": { "type": "Kcl", @@ -33,6 +36,7 @@ description: Result of parsing multi-axis-robot.kcl "selector": { "type": "None", "alias": { + "commentStart": 294, "end": 0, "name": "rotatingBase", "start": 0, @@ -44,6 +48,7 @@ description: Result of parsing multi-axis-robot.kcl "type": "ImportStatement" }, { + "commentStart": 307, "end": 0, "path": { "type": "Kcl", @@ -52,6 +57,7 @@ description: Result of parsing multi-axis-robot.kcl "selector": { "type": "None", "alias": { + "commentStart": 336, "end": 0, "name": "j2RobotArm", "start": 0, @@ -63,6 +69,7 @@ description: Result of parsing multi-axis-robot.kcl "type": "ImportStatement" }, { + "commentStart": 347, "end": 0, "path": { "type": "Kcl", @@ -71,6 +78,7 @@ description: Result of parsing multi-axis-robot.kcl "selector": { "type": "None", "alias": { + "commentStart": 376, "end": 0, "name": "j3RobotArm", "start": 0, @@ -82,8 +90,10 @@ description: Result of parsing multi-axis-robot.kcl "type": "ImportStatement" }, { + "commentStart": 386, "end": 0, "expression": { + "commentStart": 388, "end": 0, "name": "robotArmBase", "start": 0, @@ -95,8 +105,10 @@ description: Result of parsing multi-axis-robot.kcl "type": "ExpressionStatement" }, { + "commentStart": 401, "end": 0, "expression": { + "commentStart": 401, "end": 0, "name": "rotatingBase", "start": 0, @@ -108,8 +120,10 @@ description: Result of parsing multi-axis-robot.kcl "type": "ExpressionStatement" }, { + "commentStart": 414, "end": 0, "expression": { + "commentStart": 414, "end": 0, "name": "j2RobotArm", "start": 0, @@ -121,8 +135,10 @@ description: Result of parsing multi-axis-robot.kcl "type": "ExpressionStatement" }, { + "commentStart": 425, "end": 0, "expression": { + "commentStart": 425, "end": 0, "name": "j3RobotArm", "start": 0, @@ -134,20 +150,32 @@ description: Result of parsing multi-axis-robot.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 180, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Robot Arm", + "// A 4 axis robotic arm for industrial use. These machines can be used for assembly, packaging, organization of goods, and quality inspection processes", + "", + "", + "// Set Units" + ], "properties": [ { + "commentStart": 189, "end": 0, "key": { + "commentStart": 189, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -156,6 +184,7 @@ description: Result of parsing multi-axis-robot.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 209, "end": 0, "name": "in", "start": 0, @@ -172,6 +201,7 @@ description: Result of parsing multi-axis-robot.kcl "nonCodeNodes": { "3": [ { + "commentStart": 386, "end": 0, "start": 0, "type": "NonCodeNode", @@ -183,44 +213,7 @@ description: Result of parsing multi-axis-robot.kcl }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Robot Arm", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A 4 axis robotic arm for industrial use. These machines can be used for assembly, packaging, organization of goods, and quality inspection processes", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set Units", - "style": "line" - } - }, - { + "commentStart": 212, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/ast.snap b/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/ast.snap index 9c0370af0..a7a9c12f3 100644 --- a/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing pipe-flange-assembly.kcl "Ok": { "body": [ { + "commentStart": 379, "declaration": { + "commentStart": 402, "end": 0, "id": { + "commentStart": 402, "end": 0, "name": "flangeThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 420, "end": 0, "raw": ".125", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing pipe-flange-assembly.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 425, "declaration": { + "commentStart": 425, "end": 0, "id": { + "commentStart": 425, "end": 0, "name": "flangeBaseDia", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 441, "end": 0, "raw": "2", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 443, "declaration": { + "commentStart": 443, "end": 0, "id": { + "commentStart": 443, "end": 0, "name": "boreHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 456, "end": 0, "raw": "1", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 458, "declaration": { + "commentStart": 458, "end": 0, "id": { + "commentStart": 458, "end": 0, "name": "flangePipeDia", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 474, "end": 0, "raw": "1", "start": 0, @@ -122,15 +141,19 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 476, "declaration": { + "commentStart": 476, "end": 0, "id": { + "commentStart": 476, "end": 0, "name": "mountingHoleDia", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 494, "end": 0, "raw": "0.425", "start": 0, @@ -151,15 +174,19 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 500, "declaration": { + "commentStart": 500, "end": 0, "id": { + "commentStart": 500, "end": 0, "name": "screwDia", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 511, "end": 0, "raw": "0.375", "start": 0, @@ -180,15 +207,19 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 517, "declaration": { + "commentStart": 517, "end": 0, "id": { + "commentStart": 517, "end": 0, "name": "tol", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 523, "end": 0, "raw": "0.010", "start": 0, @@ -209,15 +240,19 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 529, "declaration": { + "commentStart": 529, "end": 0, "id": { + "commentStart": 529, "end": 0, "name": "hexNutScale", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 543, "end": 0, "raw": "0.90", "start": 0, @@ -238,15 +273,19 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 548, "declaration": { + "commentStart": 548, "end": 0, "id": { + "commentStart": 548, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 564, "end": 0, "raw": "0.5", "start": 0, @@ -267,15 +306,19 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 568, "declaration": { + "commentStart": 568, "end": 0, "id": { + "commentStart": 568, "end": 0, "name": "screwLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 582, "end": 0, "raw": "1.125", "start": 0, @@ -296,15 +339,19 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 588, "declaration": { + "commentStart": 588, "end": 0, "id": { + "commentStart": 588, "end": 0, "name": "washerThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 606, "end": 0, "raw": "0.0625", "start": 0, @@ -325,17 +372,22 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 613, "declaration": { + "commentStart": 613, "end": 0, "id": { + "commentStart": 613, "end": 0, "name": "screwStart", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 626, "elements": [ { + "commentStart": 630, "end": 0, "raw": "0", "start": 0, @@ -347,8 +399,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 635, "end": 0, "left": { + "commentStart": 635, "end": 0, "name": "flangeThickness", "start": 0, @@ -357,6 +411,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "+", "right": { + "commentStart": 653, "end": 0, "name": "washerThickness", "start": 0, @@ -368,6 +423,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "BinaryExpression" }, { + "commentStart": 672, "end": 0, "raw": "1.375", "start": 0, @@ -394,17 +450,22 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 680, "declaration": { + "commentStart": 680, "end": 0, "id": { + "commentStart": 680, "end": 0, "name": "capRatio", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 691, "end": 0, "left": { + "commentStart": 691, "end": 0, "raw": ".190", "start": 0, @@ -417,6 +478,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "/", "right": { + "commentStart": 698, "end": 0, "raw": ".313", "start": 0, @@ -441,19 +503,25 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 702, "declaration": { + "commentStart": 739, "end": 0, "id": { + "commentStart": 739, "end": 0, "name": "hexRatio", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 750, "end": 0, "left": { + "commentStart": 750, "end": 0, "left": { + "commentStart": 750, "end": 0, "raw": "5", "start": 0, @@ -466,6 +534,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "/", "right": { + "commentStart": 754, "end": 0, "raw": "32", "start": 0, @@ -482,6 +551,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "/", "right": { + "commentStart": 759, "end": 0, "raw": ".190", "start": 0, @@ -506,15 +576,19 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 763, "declaration": { + "commentStart": 800, "end": 0, "id": { + "commentStart": 800, "end": 0, "name": "hexStartingAngle", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 819, "end": 0, "raw": "210", "start": 0, @@ -535,15 +609,19 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 822, "declaration": { + "commentStart": 863, "end": 0, "id": { + "commentStart": 863, "end": 0, "name": "hexInteriorAngle", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 882, "end": 0, "raw": "120", "start": 0, @@ -564,17 +642,22 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 885, "declaration": { + "commentStart": 897, "end": 0, "id": { + "commentStart": 897, "end": 0, "name": "hexChangeAngle", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 914, "end": 0, "left": { + "commentStart": 914, "end": 0, "raw": "180", "start": 0, @@ -587,6 +670,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "-", "right": { + "commentStart": 920, "end": 0, "name": "hexInteriorAngle", "start": 0, @@ -607,20 +691,26 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 936, "declaration": { + "commentStart": 950, "end": 0, "id": { + "commentStart": 950, "end": 0, "name": "screwPlane", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 963, "end": 0, "properties": [ { + "commentStart": 967, "end": 0, "key": { + "commentStart": 967, "end": 0, "name": "plane", "start": 0, @@ -629,11 +719,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 975, "end": 0, "properties": [ { + "commentStart": 981, "end": 0, "key": { + "commentStart": 981, "end": 0, "name": "origin", "start": 0, @@ -642,11 +735,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 990, "end": 0, "properties": [ { + "commentStart": 998, "end": 0, "key": { + "commentStart": 998, "end": 0, "name": "x", "start": 0, @@ -655,9 +751,11 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1002, "computed": false, "end": 0, "object": { + "commentStart": 1002, "end": 0, "name": "screwStart", "start": 0, @@ -665,6 +763,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 1013, "end": 0, "raw": "0", "start": 0, @@ -681,8 +780,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 1023, "end": 0, "key": { + "commentStart": 1023, "end": 0, "name": "y", "start": 0, @@ -691,9 +792,11 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1027, "computed": false, "end": 0, "object": { + "commentStart": 1027, "end": 0, "name": "screwStart", "start": 0, @@ -701,6 +804,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 1038, "end": 0, "raw": "1", "start": 0, @@ -717,8 +821,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 1048, "end": 0, "key": { + "commentStart": 1048, "end": 0, "name": "z", "start": 0, @@ -727,9 +833,11 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1052, "computed": false, "end": 0, "object": { + "commentStart": 1052, "end": 0, "name": "screwStart", "start": 0, @@ -737,6 +845,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 1063, "end": 0, "raw": "2", "start": 0, @@ -759,8 +868,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 1077, "end": 0, "key": { + "commentStart": 1077, "end": 0, "name": "xAxis", "start": 0, @@ -769,11 +880,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1085, "end": 0, "properties": [ { + "commentStart": 1087, "end": 0, "key": { + "commentStart": 1087, "end": 0, "name": "x", "start": 0, @@ -782,6 +896,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1091, "end": 0, "raw": "1", "start": 0, @@ -794,8 +909,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 1094, "end": 0, "key": { + "commentStart": 1094, "end": 0, "name": "y", "start": 0, @@ -804,6 +921,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1098, "end": 0, "raw": "0", "start": 0, @@ -816,8 +934,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 1101, "end": 0, "key": { + "commentStart": 1101, "end": 0, "name": "z", "start": 0, @@ -826,6 +946,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1105, "end": 0, "raw": "0", "start": 0, @@ -844,8 +965,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 1114, "end": 0, "key": { + "commentStart": 1114, "end": 0, "name": "yAxis", "start": 0, @@ -854,11 +977,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1122, "end": 0, "properties": [ { + "commentStart": 1124, "end": 0, "key": { + "commentStart": 1124, "end": 0, "name": "x", "start": 0, @@ -867,6 +993,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1128, "end": 0, "raw": "0", "start": 0, @@ -879,8 +1006,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 1131, "end": 0, "key": { + "commentStart": 1131, "end": 0, "name": "y", "start": 0, @@ -889,6 +1018,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1135, "end": 0, "raw": "0", "start": 0, @@ -901,8 +1031,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 1138, "end": 0, "key": { + "commentStart": 1138, "end": 0, "name": "z", "start": 0, @@ -911,6 +1043,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1142, "end": 0, "raw": "1", "start": 0, @@ -929,8 +1062,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 1151, "end": 0, "key": { + "commentStart": 1151, "end": 0, "name": "zAxis", "start": 0, @@ -939,11 +1074,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1159, "end": 0, "properties": [ { + "commentStart": 1161, "end": 0, "key": { + "commentStart": 1161, "end": 0, "name": "x", "start": 0, @@ -952,6 +1090,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1165, "end": 0, "raw": "0", "start": 0, @@ -964,8 +1103,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 1168, "end": 0, "key": { + "commentStart": 1168, "end": 0, "name": "y", "start": 0, @@ -974,6 +1115,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1172, "end": 0, "raw": "1", "start": 0, @@ -986,8 +1128,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 1175, "end": 0, "key": { + "commentStart": 1175, "end": 0, "name": "z", "start": 0, @@ -996,6 +1140,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1179, "end": 0, "raw": "0", "start": 0, @@ -1034,9 +1179,12 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 1188, "declaration": { + "commentStart": 1193, "end": 0, "id": { + "commentStart": 1193, "end": 0, "name": "capScrew", "start": 0, @@ -1046,15 +1194,19 @@ description: Result of parsing pipe-flange-assembly.kcl "body": { "body": [ { + "commentStart": 1226, "declaration": { + "commentStart": 1226, "end": 0, "id": { + "commentStart": 1226, "end": 0, "name": "headLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1239, "end": 0, "name": "dia", "start": 0, @@ -1071,17 +1223,22 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 1242, "declaration": { + "commentStart": 1253, "end": 0, "id": { + "commentStart": 1253, "end": 0, "name": "wallToWallLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1272, "end": 0, "left": { + "commentStart": 1272, "end": 0, "name": "hexRatio", "start": 0, @@ -1090,6 +1247,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "*", "right": { + "commentStart": 1283, "end": 0, "name": "dia", "start": 0, @@ -1110,17 +1268,22 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 1289, "declaration": { + "commentStart": 1289, "end": 0, "id": { + "commentStart": 1289, "end": 0, "name": "headDia", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1299, "end": 0, "left": { + "commentStart": 1299, "end": 0, "name": "dia", "start": 0, @@ -1129,6 +1292,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "/", "right": { + "commentStart": 1305, "end": 0, "name": "capRatio", "start": 0, @@ -1149,21 +1313,28 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 1316, "declaration": { + "commentStart": 1316, "end": 0, "id": { + "commentStart": 1316, "end": 0, "name": "hexWallLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1332, "end": 0, "left": { + "commentStart": 1332, "end": 0, "left": { + "commentStart": 1332, "end": 0, "left": { + "commentStart": 1332, "end": 0, "name": "wallToWallLength", "start": 0, @@ -1172,6 +1343,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "/", "right": { + "commentStart": 1351, "end": 0, "raw": "2", "start": 0, @@ -1188,6 +1360,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "*", "right": { + "commentStart": 1355, "end": 0, "raw": "1", "start": 0, @@ -1208,6 +1381,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 1373, "end": 0, "raw": "30", "start": 0, @@ -1220,11 +1394,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 1363, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 1363, "end": 0, "start": 0, "type": "CallExpression", @@ -1232,11 +1408,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 1359, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 1359, "end": 0, "start": 0, "type": "CallExpression", @@ -1256,15 +1434,19 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 1377, "declaration": { + "commentStart": 1442, "end": 0, "id": { + "commentStart": 1442, "end": 0, "name": "capHeadLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1458, "end": 0, "name": "dia", "start": 0, @@ -1276,14 +1458,20 @@ description: Result of parsing pipe-flange-assembly.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Length of Cap Head is always equal to diameter" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1463, "declaration": { + "commentStart": 1503, "end": 0, "id": { + "commentStart": 1503, "end": 0, "name": "screwHeadSketch", "start": 0, @@ -1294,6 +1482,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 1535, "end": 0, "name": "screwPlane", "start": 0, @@ -1302,11 +1491,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 1521, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1521, "end": 0, "start": 0, "type": "CallExpression", @@ -1317,14 +1508,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 1571, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1580, "elements": [ { + "commentStart": 1581, "end": 0, "raw": "0", "start": 0, @@ -1336,6 +1530,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 1584, "end": 0, "raw": "0", "start": 0, @@ -1356,14 +1551,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 1597, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1606, "end": 0, "left": { + "commentStart": 1606, "end": 0, "name": "headDia", "start": 0, @@ -1372,6 +1570,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "/", "right": { + "commentStart": 1616, "end": 0, "raw": "2", "start": 0, @@ -1389,11 +1588,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 1554, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1554, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1401,11 +1602,13 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null } ], + "commentStart": 1521, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 1628, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1428,14 +1631,22 @@ description: Result of parsing pipe-flange-assembly.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Create the head of the cap screw" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1665, "declaration": { + "commentStart": 1665, "end": 0, "id": { + "commentStart": 1665, "end": 0, "name": "screwHead", "start": 0, @@ -1446,12 +1657,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 1702, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1711, "end": 0, "name": "dia", "start": 0, @@ -1461,16 +1674,19 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 1677, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1677, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1685, "end": 0, "name": "screwHeadSketch", "start": 0, @@ -1488,9 +1704,12 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 1717, "declaration": { + "commentStart": 1779, "end": 0, "id": { + "commentStart": 1779, "end": 0, "name": "hexPatternSketch", "start": 0, @@ -1501,6 +1720,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 1812, "end": 0, "name": "screwHead", "start": 0, @@ -1508,6 +1728,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, { + "commentStart": 1823, "end": 0, "raw": "'end'", "start": 0, @@ -1517,11 +1738,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 1798, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1798, "end": 0, "start": 0, "type": "CallExpression", @@ -1530,14 +1753,18 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 1852, "elements": [ { + "commentStart": 1863, "end": 0, "left": { "argument": { + "commentStart": 1864, "computed": false, "end": 0, "object": { + "commentStart": 1864, "end": 0, "name": "start", "start": 0, @@ -1545,6 +1772,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 1870, "end": 0, "raw": "0", "start": 0, @@ -1559,6 +1787,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "MemberExpression", "type": "MemberExpression" }, + "commentStart": 1863, "end": 0, "operator": "-", "start": 0, @@ -1567,8 +1796,10 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "+", "right": { + "commentStart": 1875, "end": 0, "left": { + "commentStart": 1875, "end": 0, "name": "wallToWallLength", "start": 0, @@ -1577,6 +1808,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "/", "right": { + "commentStart": 1894, "end": 0, "raw": "2", "start": 0, @@ -1596,9 +1828,11 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "BinaryExpression" }, { + "commentStart": 1906, "computed": false, "end": 0, "object": { + "commentStart": 1906, "end": 0, "name": "start", "start": 0, @@ -1606,6 +1840,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 1912, "end": 0, "raw": "2", "start": 0, @@ -1627,6 +1862,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ArrayExpression" }, { + "commentStart": 1925, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1634,11 +1870,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 1837, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1837, "end": 0, "start": 0, "type": "CallExpression", @@ -1649,21 +1887,25 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 1941, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1950, "end": 0, "left": { "argument": { + "commentStart": 1951, "end": 0, "name": "hexWallLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1950, "end": 0, "operator": "-", "start": 0, @@ -1672,6 +1914,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "/", "right": { + "commentStart": 1967, "end": 0, "raw": "2", "start": 0, @@ -1689,11 +1932,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 1935, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1935, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1703,11 +1948,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 1988, "end": 0, "properties": [ { + "commentStart": 1999, "end": 0, "key": { + "commentStart": 1999, "end": 0, "name": "angle", "start": 0, @@ -1716,6 +1964,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2007, "end": 0, "name": "hexStartingAngle", "start": 0, @@ -1724,8 +1973,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 2034, "end": 0, "key": { + "commentStart": 2034, "end": 0, "name": "length", "start": 0, @@ -1734,6 +1985,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2043, "end": 0, "name": "hexWallLength", "start": 0, @@ -1747,6 +1999,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ObjectExpression" }, { + "commentStart": 2067, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1754,11 +2007,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 1977, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1977, "end": 0, "start": 0, "type": "CallExpression", @@ -1767,11 +2022,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 2088, "end": 0, "properties": [ { + "commentStart": 2099, "end": 0, "key": { + "commentStart": 2099, "end": 0, "name": "angle", "start": 0, @@ -1780,8 +2038,10 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2107, "end": 0, "left": { + "commentStart": 2107, "end": 0, "name": "hexStartingAngle", "start": 0, @@ -1790,6 +2050,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "-", "right": { + "commentStart": 2126, "end": 0, "name": "hexChangeAngle", "start": 0, @@ -1802,8 +2063,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 2151, "end": 0, "key": { + "commentStart": 2151, "end": 0, "name": "length", "start": 0, @@ -1812,6 +2075,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2160, "end": 0, "name": "hexWallLength", "start": 0, @@ -1825,6 +2089,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ObjectExpression" }, { + "commentStart": 2184, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1832,11 +2097,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 2077, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2077, "end": 0, "start": 0, "type": "CallExpression", @@ -1845,11 +2112,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 2205, "end": 0, "properties": [ { + "commentStart": 2216, "end": 0, "key": { + "commentStart": 2216, "end": 0, "name": "angle", "start": 0, @@ -1858,8 +2128,10 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2224, "end": 0, "left": { + "commentStart": 2224, "end": 0, "name": "hexStartingAngle", "start": 0, @@ -1868,8 +2140,10 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "-", "right": { + "commentStart": 2244, "end": 0, "left": { + "commentStart": 2244, "end": 0, "raw": "2", "start": 0, @@ -1882,6 +2156,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "*", "right": { + "commentStart": 2248, "end": 0, "name": "hexChangeAngle", "start": 0, @@ -1898,8 +2173,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 2274, "end": 0, "key": { + "commentStart": 2274, "end": 0, "name": "length", "start": 0, @@ -1908,6 +2185,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2283, "end": 0, "name": "hexWallLength", "start": 0, @@ -1921,6 +2199,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ObjectExpression" }, { + "commentStart": 2307, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1928,11 +2207,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 2194, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2194, "end": 0, "start": 0, "type": "CallExpression", @@ -1941,11 +2222,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 2328, "end": 0, "properties": [ { + "commentStart": 2339, "end": 0, "key": { + "commentStart": 2339, "end": 0, "name": "angle", "start": 0, @@ -1954,8 +2238,10 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2347, "end": 0, "left": { + "commentStart": 2347, "end": 0, "name": "hexStartingAngle", "start": 0, @@ -1964,8 +2250,10 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "-", "right": { + "commentStart": 2367, "end": 0, "left": { + "commentStart": 2367, "end": 0, "raw": "3", "start": 0, @@ -1978,6 +2266,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "*", "right": { + "commentStart": 2371, "end": 0, "name": "hexChangeAngle", "start": 0, @@ -1994,8 +2283,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 2397, "end": 0, "key": { + "commentStart": 2397, "end": 0, "name": "length", "start": 0, @@ -2004,6 +2295,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2406, "end": 0, "name": "hexWallLength", "start": 0, @@ -2017,6 +2309,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ObjectExpression" }, { + "commentStart": 2430, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2024,11 +2317,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 2317, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2317, "end": 0, "start": 0, "type": "CallExpression", @@ -2037,11 +2332,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 2451, "end": 0, "properties": [ { + "commentStart": 2462, "end": 0, "key": { + "commentStart": 2462, "end": 0, "name": "angle", "start": 0, @@ -2050,8 +2348,10 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2470, "end": 0, "left": { + "commentStart": 2470, "end": 0, "name": "hexStartingAngle", "start": 0, @@ -2060,8 +2360,10 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "-", "right": { + "commentStart": 2490, "end": 0, "left": { + "commentStart": 2490, "end": 0, "raw": "4", "start": 0, @@ -2074,6 +2376,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "*", "right": { + "commentStart": 2494, "end": 0, "name": "hexChangeAngle", "start": 0, @@ -2090,8 +2393,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 2520, "end": 0, "key": { + "commentStart": 2520, "end": 0, "name": "length", "start": 0, @@ -2100,6 +2405,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2529, "end": 0, "name": "hexWallLength", "start": 0, @@ -2113,6 +2419,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ObjectExpression" }, { + "commentStart": 2553, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2120,11 +2427,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 2440, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2440, "end": 0, "start": 0, "type": "CallExpression", @@ -2133,17 +2442,20 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [], "callee": { + "commentStart": 2563, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2563, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1798, "end": 0, "start": 0, "type": "PipeExpression", @@ -2154,14 +2466,22 @@ description: Result of parsing pipe-flange-assembly.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Define the sketch of the hex pattern on the screw head" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2573, "declaration": { + "commentStart": 2573, "end": 0, "id": { + "commentStart": 2573, "end": 0, "name": "hexPattern", "start": 0, @@ -2172,21 +2492,25 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 2612, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2621, "end": 0, "left": { "argument": { + "commentStart": 2622, "end": 0, "name": "headLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2621, "end": 0, "operator": "-", "start": 0, @@ -2195,6 +2519,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "*", "right": { + "commentStart": 2635, "end": 0, "raw": "0.75", "start": 0, @@ -2212,16 +2537,19 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 2586, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2586, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2594, "end": 0, "name": "hexPatternSketch", "start": 0, @@ -2240,23 +2568,27 @@ description: Result of parsing pipe-flange-assembly.kcl }, { "argument": { + "commentStart": 2651, "end": 0, "name": "hexPattern", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2640, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 1222, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 1242, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2269,6 +2601,7 @@ description: Result of parsing pipe-flange-assembly.kcl ], "3": [ { + "commentStart": 1377, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2279,50 +2612,18 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 1385, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Length of Cap Head is always equal to diameter", - "style": "line" - } - } - ], - "4": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the head of the cap screw", - "style": "line" - } - } - ], - "6": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Define the sketch of the hex pattern on the screw head", - "style": "line" - } } ], "8": [ { + "commentStart": 2640, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2336,11 +2637,13 @@ description: Result of parsing pipe-flange-assembly.kcl }, "start": 0 }, + "commentStart": 1201, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 1202, "end": 0, "name": "start", "start": 0, @@ -2350,6 +2653,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "Parameter", "identifier": { + "commentStart": 1209, "end": 0, "name": "length", "start": 0, @@ -2359,6 +2663,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "Parameter", "identifier": { + "commentStart": 1217, "end": 0, "name": "dia", "start": 0, @@ -2380,20 +2685,26 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 2663, "declaration": { + "commentStart": 2665, "end": 0, "id": { + "commentStart": 2665, "end": 0, "name": "workingPlane", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 2680, "end": 0, "properties": [ { + "commentStart": 2684, "end": 0, "key": { + "commentStart": 2684, "end": 0, "name": "plane", "start": 0, @@ -2402,11 +2713,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2692, "end": 0, "properties": [ { + "commentStart": 2698, "end": 0, "key": { + "commentStart": 2698, "end": 0, "name": "origin", "start": 0, @@ -2415,11 +2729,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2707, "end": 0, "properties": [ { + "commentStart": 2709, "end": 0, "key": { + "commentStart": 2709, "end": 0, "name": "x", "start": 0, @@ -2428,6 +2745,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2713, "end": 0, "raw": "0", "start": 0, @@ -2440,8 +2758,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 2716, "end": 0, "key": { + "commentStart": 2716, "end": 0, "name": "y", "start": 0, @@ -2450,6 +2770,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2720, "end": 0, "name": "flangeThickness", "start": 0, @@ -2458,8 +2779,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 2737, "end": 0, "key": { + "commentStart": 2737, "end": 0, "name": "z", "start": 0, @@ -2468,6 +2791,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2741, "end": 0, "raw": "0", "start": 0, @@ -2486,8 +2810,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 2750, "end": 0, "key": { + "commentStart": 2750, "end": 0, "name": "xAxis", "start": 0, @@ -2496,11 +2822,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2758, "end": 0, "properties": [ { + "commentStart": 2760, "end": 0, "key": { + "commentStart": 2760, "end": 0, "name": "x", "start": 0, @@ -2509,6 +2838,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2764, "end": 0, "raw": "0", "start": 0, @@ -2521,8 +2851,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 2767, "end": 0, "key": { + "commentStart": 2767, "end": 0, "name": "y", "start": 0, @@ -2531,6 +2863,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2771, "end": 0, "raw": "0", "start": 0, @@ -2543,8 +2876,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 2774, "end": 0, "key": { + "commentStart": 2774, "end": 0, "name": "z", "start": 0, @@ -2553,6 +2888,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2778, "end": 0, "raw": "1", "start": 0, @@ -2571,8 +2907,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 2787, "end": 0, "key": { + "commentStart": 2787, "end": 0, "name": "yAxis", "start": 0, @@ -2581,11 +2919,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2795, "end": 0, "properties": [ { + "commentStart": 2797, "end": 0, "key": { + "commentStart": 2797, "end": 0, "name": "x", "start": 0, @@ -2594,6 +2935,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2801, "end": 0, "raw": "1", "start": 0, @@ -2606,8 +2948,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 2804, "end": 0, "key": { + "commentStart": 2804, "end": 0, "name": "y", "start": 0, @@ -2616,6 +2960,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2808, "end": 0, "raw": "0", "start": 0, @@ -2628,8 +2973,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 2811, "end": 0, "key": { + "commentStart": 2811, "end": 0, "name": "z", "start": 0, @@ -2638,6 +2985,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2815, "end": 0, "raw": "0", "start": 0, @@ -2656,8 +3004,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 2824, "end": 0, "key": { + "commentStart": 2824, "end": 0, "name": "zAxis", "start": 0, @@ -2666,11 +3016,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2832, "end": 0, "properties": [ { + "commentStart": 2834, "end": 0, "key": { + "commentStart": 2834, "end": 0, "name": "x", "start": 0, @@ -2679,6 +3032,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2838, "end": 0, "raw": "0", "start": 0, @@ -2691,8 +3045,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 2841, "end": 0, "key": { + "commentStart": 2841, "end": 0, "name": "y", "start": 0, @@ -2701,6 +3057,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2845, "end": 0, "raw": "1", "start": 0, @@ -2713,8 +3070,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 2848, "end": 0, "key": { + "commentStart": 2848, "end": 0, "name": "z", "start": 0, @@ -2723,6 +3082,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2852, "end": 0, "raw": "0", "start": 0, @@ -2761,9 +3121,12 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 2861, "declaration": { + "commentStart": 2885, "end": 0, "id": { + "commentStart": 2885, "end": 0, "name": "washer", "start": 0, @@ -2773,9 +3136,12 @@ description: Result of parsing pipe-flange-assembly.kcl "body": { "body": [ { + "commentStart": 2935, "declaration": { + "commentStart": 2935, "end": 0, "id": { + "commentStart": 2935, "end": 0, "name": "washerSketch", "start": 0, @@ -2786,6 +3152,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 2964, "end": 0, "name": "plane", "start": 0, @@ -2794,11 +3161,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 2950, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2950, "end": 0, "start": 0, "type": "CallExpression", @@ -2809,17 +3178,21 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 2995, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3004, "elements": [ { + "commentStart": 3005, "computed": false, "end": 0, "object": { + "commentStart": 3005, "end": 0, "name": "start", "start": 0, @@ -2827,6 +3200,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 3011, "end": 0, "raw": "0", "start": 0, @@ -2842,9 +3216,11 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "MemberExpression" }, { + "commentStart": 3015, "computed": false, "end": 0, "object": { + "commentStart": 3015, "end": 0, "name": "start", "start": 0, @@ -2852,6 +3228,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 3021, "end": 0, "raw": "1", "start": 0, @@ -2876,14 +3253,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 3035, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3044, "end": 0, "left": { + "commentStart": 3044, "end": 0, "name": "outerDia", "start": 0, @@ -2892,6 +3272,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "/", "right": { + "commentStart": 3055, "end": 0, "raw": "2", "start": 0, @@ -2909,11 +3290,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 2978, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2978, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2927,17 +3310,21 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 3095, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3104, "elements": [ { + "commentStart": 3105, "computed": false, "end": 0, "object": { + "commentStart": 3105, "end": 0, "name": "start", "start": 0, @@ -2945,6 +3332,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 3111, "end": 0, "raw": "0", "start": 0, @@ -2960,9 +3348,11 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "MemberExpression" }, { + "commentStart": 3115, "computed": false, "end": 0, "object": { + "commentStart": 3115, "end": 0, "name": "start", "start": 0, @@ -2970,6 +3360,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 3121, "end": 0, "raw": "1", "start": 0, @@ -2994,14 +3385,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 3135, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3144, "end": 0, "left": { + "commentStart": 3144, "end": 0, "name": "innerDia", "start": 0, @@ -3010,6 +3404,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "/", "right": { + "commentStart": 3155, "end": 0, "raw": "2", "start": 0, @@ -3027,11 +3422,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 3078, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 3078, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3039,6 +3436,7 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null }, { + "commentStart": 3167, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3046,11 +3444,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 3073, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 3073, "end": 0, "start": 0, "type": "CallExpression", @@ -3061,12 +3461,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 3185, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3194, "end": 0, "name": "thk", "start": 0, @@ -3076,11 +3478,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 3177, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 3177, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3088,6 +3492,7 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null } ], + "commentStart": 2950, "end": 0, "start": 0, "type": "PipeExpression", @@ -3104,26 +3509,31 @@ description: Result of parsing pipe-flange-assembly.kcl }, { "argument": { + "commentStart": 3208, "end": 0, "name": "washerSketch", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3201, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 2931, "end": 0, "start": 0 }, + "commentStart": 2891, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 2892, "end": 0, "name": "plane", "start": 0, @@ -3133,6 +3543,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "Parameter", "identifier": { + "commentStart": 2899, "end": 0, "name": "start", "start": 0, @@ -3142,6 +3553,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "Parameter", "identifier": { + "commentStart": 2906, "end": 0, "name": "thk", "start": 0, @@ -3151,6 +3563,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "Parameter", "identifier": { + "commentStart": 2911, "end": 0, "name": "innerDia", "start": 0, @@ -3160,6 +3573,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "Parameter", "identifier": { + "commentStart": 2921, "end": 0, "name": "outerDia", "start": 0, @@ -3176,14 +3590,22 @@ description: Result of parsing pipe-flange-assembly.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// Washer function" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 3222, "declaration": { + "commentStart": 3247, "end": 0, "id": { + "commentStart": 3247, "end": 0, "name": "hexNut", "start": 0, @@ -3193,9 +3615,12 @@ description: Result of parsing pipe-flange-assembly.kcl "body": { "body": [ { + "commentStart": 3280, "declaration": { + "commentStart": 3280, "end": 0, "id": { + "commentStart": 3280, "end": 0, "name": "hexNutSketch", "start": 0, @@ -3206,11 +3631,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 3309, "end": 0, "properties": [ { + "commentStart": 3320, "end": 0, "key": { + "commentStart": 3320, "end": 0, "name": "plane", "start": 0, @@ -3219,11 +3647,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3328, "end": 0, "properties": [ { + "commentStart": 3341, "end": 0, "key": { + "commentStart": 3341, "end": 0, "name": "origin", "start": 0, @@ -3232,11 +3663,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3350, "end": 0, "properties": [ { + "commentStart": 3365, "end": 0, "key": { + "commentStart": 3365, "end": 0, "name": "x", "start": 0, @@ -3245,9 +3679,11 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3369, "computed": false, "end": 0, "object": { + "commentStart": 3369, "end": 0, "name": "start", "start": 0, @@ -3255,6 +3691,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 3375, "end": 0, "raw": "0", "start": 0, @@ -3271,8 +3708,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 3392, "end": 0, "key": { + "commentStart": 3392, "end": 0, "name": "y", "start": 0, @@ -3281,15 +3720,18 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3396, "end": 0, "left": { "argument": { + "commentStart": 3397, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3396, "end": 0, "operator": "-", "start": 0, @@ -3298,6 +3740,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "-", "right": { + "commentStart": 3413, "end": 0, "name": "washerThickness", "start": 0, @@ -3310,8 +3753,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 3443, "end": 0, "key": { + "commentStart": 3443, "end": 0, "name": "z", "start": 0, @@ -3320,9 +3765,11 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3447, "computed": false, "end": 0, "object": { + "commentStart": 3447, "end": 0, "name": "start", "start": 0, @@ -3330,6 +3777,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 3453, "end": 0, "raw": "2", "start": 0, @@ -3352,8 +3800,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 3481, "end": 0, "key": { + "commentStart": 3481, "end": 0, "name": "xAxis", "start": 0, @@ -3362,11 +3812,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3489, "end": 0, "properties": [ { + "commentStart": 3491, "end": 0, "key": { + "commentStart": 3491, "end": 0, "name": "x", "start": 0, @@ -3375,6 +3828,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3495, "end": 0, "raw": "1", "start": 0, @@ -3387,8 +3841,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 3498, "end": 0, "key": { + "commentStart": 3498, "end": 0, "name": "y", "start": 0, @@ -3397,6 +3853,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3502, "end": 0, "raw": "0", "start": 0, @@ -3409,8 +3866,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 3505, "end": 0, "key": { + "commentStart": 3505, "end": 0, "name": "z", "start": 0, @@ -3419,6 +3878,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3509, "end": 0, "raw": "0", "start": 0, @@ -3437,8 +3897,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 3525, "end": 0, "key": { + "commentStart": 3525, "end": 0, "name": "yAxis", "start": 0, @@ -3447,11 +3909,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3533, "end": 0, "properties": [ { + "commentStart": 3535, "end": 0, "key": { + "commentStart": 3535, "end": 0, "name": "x", "start": 0, @@ -3460,6 +3925,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3539, "end": 0, "raw": "0", "start": 0, @@ -3472,8 +3938,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 3542, "end": 0, "key": { + "commentStart": 3542, "end": 0, "name": "y", "start": 0, @@ -3482,6 +3950,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3546, "end": 0, "raw": "0", "start": 0, @@ -3494,8 +3963,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 3549, "end": 0, "key": { + "commentStart": 3549, "end": 0, "name": "z", "start": 0, @@ -3504,6 +3975,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3553, "end": 0, "raw": "1", "start": 0, @@ -3522,8 +3994,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 3569, "end": 0, "key": { + "commentStart": 3569, "end": 0, "name": "zAxis", "start": 0, @@ -3532,11 +4006,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3577, "end": 0, "properties": [ { + "commentStart": 3579, "end": 0, "key": { + "commentStart": 3579, "end": 0, "name": "x", "start": 0, @@ -3545,6 +4022,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3583, "end": 0, "raw": "0", "start": 0, @@ -3557,8 +4035,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 3586, "end": 0, "key": { + "commentStart": 3586, "end": 0, "name": "y", "start": 0, @@ -3567,6 +4047,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3590, "end": 0, "raw": "1", "start": 0, @@ -3579,8 +4060,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 3593, "end": 0, "key": { + "commentStart": 3593, "end": 0, "name": "z", "start": 0, @@ -3589,6 +4072,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3597, "end": 0, "raw": "0", "start": 0, @@ -3619,11 +4103,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 3295, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 3295, "end": 0, "start": 0, "type": "CallExpression", @@ -3632,10 +4118,13 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 3644, "elements": [ { + "commentStart": 3645, "end": 0, "left": { + "commentStart": 3645, "end": 0, "raw": "0", "start": 0, @@ -3648,8 +4137,10 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "+", "right": { + "commentStart": 3649, "end": 0, "left": { + "commentStart": 3649, "end": 0, "name": "innerDia", "start": 0, @@ -3658,6 +4149,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "*", "right": { + "commentStart": 3660, "end": 0, "name": "hexNutScale", "start": 0, @@ -3673,6 +4165,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "BinaryExpression" }, { + "commentStart": 3673, "end": 0, "raw": "0", "start": 0, @@ -3690,6 +4183,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ArrayExpression" }, { + "commentStart": 3677, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3697,11 +4191,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 3629, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 3629, "end": 0, "start": 0, "type": "CallExpression", @@ -3710,11 +4206,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 3698, "end": 0, "properties": [ { + "commentStart": 3709, "end": 0, "key": { + "commentStart": 3709, "end": 0, "name": "angle", "start": 0, @@ -3723,6 +4222,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3717, "end": 0, "raw": "240", "start": 0, @@ -3735,8 +4235,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 3731, "end": 0, "key": { + "commentStart": 3731, "end": 0, "name": "length", "start": 0, @@ -3745,8 +4247,10 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3740, "end": 0, "left": { + "commentStart": 3740, "end": 0, "name": "innerDia", "start": 0, @@ -3755,6 +4259,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "*", "right": { + "commentStart": 3751, "end": 0, "name": "hexNutScale", "start": 0, @@ -3772,6 +4277,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ObjectExpression" }, { + "commentStart": 3773, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3779,11 +4285,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 3687, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 3687, "end": 0, "start": 0, "type": "CallExpression", @@ -3792,11 +4300,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 3794, "end": 0, "properties": [ { + "commentStart": 3805, "end": 0, "key": { + "commentStart": 3805, "end": 0, "name": "angle", "start": 0, @@ -3805,6 +4316,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3813, "end": 0, "raw": "180", "start": 0, @@ -3817,8 +4329,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 3827, "end": 0, "key": { + "commentStart": 3827, "end": 0, "name": "length", "start": 0, @@ -3827,8 +4341,10 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3836, "end": 0, "left": { + "commentStart": 3836, "end": 0, "name": "innerDia", "start": 0, @@ -3837,6 +4353,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "*", "right": { + "commentStart": 3847, "end": 0, "name": "hexNutScale", "start": 0, @@ -3854,6 +4371,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ObjectExpression" }, { + "commentStart": 3869, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3861,11 +4379,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 3783, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 3783, "end": 0, "start": 0, "type": "CallExpression", @@ -3874,11 +4394,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 3890, "end": 0, "properties": [ { + "commentStart": 3901, "end": 0, "key": { + "commentStart": 3901, "end": 0, "name": "angle", "start": 0, @@ -3887,6 +4410,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3909, "end": 0, "raw": "120", "start": 0, @@ -3899,8 +4423,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 3923, "end": 0, "key": { + "commentStart": 3923, "end": 0, "name": "length", "start": 0, @@ -3909,8 +4435,10 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3932, "end": 0, "left": { + "commentStart": 3932, "end": 0, "name": "innerDia", "start": 0, @@ -3919,6 +4447,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "*", "right": { + "commentStart": 3943, "end": 0, "name": "hexNutScale", "start": 0, @@ -3936,6 +4465,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ObjectExpression" }, { + "commentStart": 3965, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3943,11 +4473,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 3879, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 3879, "end": 0, "start": 0, "type": "CallExpression", @@ -3956,11 +4488,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 3986, "end": 0, "properties": [ { + "commentStart": 3997, "end": 0, "key": { + "commentStart": 3997, "end": 0, "name": "angle", "start": 0, @@ -3969,6 +4504,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4005, "end": 0, "raw": "60", "start": 0, @@ -3981,8 +4517,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 4018, "end": 0, "key": { + "commentStart": 4018, "end": 0, "name": "length", "start": 0, @@ -3991,8 +4529,10 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4027, "end": 0, "left": { + "commentStart": 4027, "end": 0, "name": "innerDia", "start": 0, @@ -4001,6 +4541,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "*", "right": { + "commentStart": 4038, "end": 0, "name": "hexNutScale", "start": 0, @@ -4018,6 +4559,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ObjectExpression" }, { + "commentStart": 4060, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4025,11 +4567,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 3975, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 3975, "end": 0, "start": 0, "type": "CallExpression", @@ -4038,11 +4582,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 4081, "end": 0, "properties": [ { + "commentStart": 4083, "end": 0, "key": { + "commentStart": 4083, "end": 0, "name": "angle", "start": 0, @@ -4051,6 +4598,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4091, "end": 0, "raw": "0", "start": 0, @@ -4063,8 +4611,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 4094, "end": 0, "key": { + "commentStart": 4094, "end": 0, "name": "length", "start": 0, @@ -4073,8 +4623,10 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4103, "end": 0, "left": { + "commentStart": 4103, "end": 0, "name": "innerDia", "start": 0, @@ -4083,6 +4635,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "*", "right": { + "commentStart": 4114, "end": 0, "raw": ".90", "start": 0, @@ -4104,6 +4657,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ObjectExpression" }, { + "commentStart": 4121, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4111,11 +4665,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4070, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 4070, "end": 0, "start": 0, "type": "CallExpression", @@ -4124,11 +4680,13 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [], "callee": { + "commentStart": 4131, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 4131, "end": 0, "start": 0, "type": "CallExpression", @@ -4141,14 +4699,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 4168, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4177, "elements": [ { + "commentStart": 4178, "end": 0, "raw": "0", "start": 0, @@ -4160,6 +4721,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 4181, "end": 0, "raw": "0", "start": 0, @@ -4180,14 +4742,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 4194, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4203, "end": 0, "left": { + "commentStart": 4203, "end": 0, "name": "innerDia", "start": 0, @@ -4196,6 +4761,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "/", "right": { + "commentStart": 4214, "end": 0, "raw": "2", "start": 0, @@ -4213,11 +4779,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4151, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 4151, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4225,6 +4793,7 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null }, { + "commentStart": 4226, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4232,11 +4801,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4146, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 4146, "end": 0, "start": 0, "type": "CallExpression", @@ -4247,6 +4818,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 4244, "end": 0, "name": "length", "start": 0, @@ -4254,12 +4826,14 @@ description: Result of parsing pipe-flange-assembly.kcl }, "arg": { "argument": { + "commentStart": 4254, "end": 0, "name": "thk", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4253, "end": 0, "operator": "-", "start": 0, @@ -4269,11 +4843,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4236, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 4236, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4281,6 +4857,7 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null } ], + "commentStart": 3295, "end": 0, "start": 0, "type": "PipeExpression", @@ -4297,26 +4874,31 @@ description: Result of parsing pipe-flange-assembly.kcl }, { "argument": { + "commentStart": 4268, "end": 0, "name": "hexNutSketch", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4261, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 3276, "end": 0, "start": 0 }, + "commentStart": 3253, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 3254, "end": 0, "name": "start", "start": 0, @@ -4326,6 +4908,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "Parameter", "identifier": { + "commentStart": 3261, "end": 0, "name": "thk", "start": 0, @@ -4335,6 +4918,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "Parameter", "identifier": { + "commentStart": 3266, "end": 0, "name": "innerDia", "start": 0, @@ -4351,14 +4935,22 @@ description: Result of parsing pipe-flange-assembly.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// Hex nut function" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 4282, "declaration": { + "commentStart": 4310, "end": 0, "id": { + "commentStart": 4310, "end": 0, "name": "mountingHolePattern", "start": 0, @@ -4369,6 +4961,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 4346, "end": 0, "raw": "'XZ'", "start": 0, @@ -4378,11 +4971,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4332, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 4332, "end": 0, "start": 0, "type": "CallExpression", @@ -4393,17 +4988,21 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 4372, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4381, "elements": [ { + "commentStart": 4382, "computed": false, "end": 0, "object": { + "commentStart": 4382, "end": 0, "name": "screwStart", "start": 0, @@ -4411,6 +5010,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 4393, "end": 0, "raw": "0", "start": 0, @@ -4426,9 +5026,11 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "MemberExpression" }, { + "commentStart": 4397, "computed": false, "end": 0, "object": { + "commentStart": 4397, "end": 0, "name": "screwStart", "start": 0, @@ -4436,6 +5038,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 4408, "end": 0, "raw": "2", "start": 0, @@ -4460,16 +5063,20 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 4420, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4429, "end": 0, "left": { + "commentStart": 4429, "end": 0, "left": { + "commentStart": 4429, "end": 0, "name": "screwDia", "start": 0, @@ -4478,6 +5085,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "/", "right": { + "commentStart": 4440, "end": 0, "raw": "2", "start": 0, @@ -4494,6 +5102,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "+", "right": { + "commentStart": 4444, "end": 0, "name": "tol", "start": 0, @@ -4507,11 +5116,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4357, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 4357, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4523,12 +5134,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 4486, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4499, "end": 0, "raw": "360", "start": 0, @@ -4543,14 +5156,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 4511, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4520, "elements": [ { + "commentStart": 4521, "end": 0, "raw": "0", "start": 0, @@ -4562,6 +5178,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 4524, "end": 0, "raw": "0", "start": 0, @@ -4582,12 +5199,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 4535, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4547, "end": 0, "raw": "7", "start": 0, @@ -4602,12 +5221,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 4557, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4576, "end": 0, "raw": "true", "start": 0, @@ -4618,11 +5239,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4460, "end": 0, "name": "patternCircular2d", "start": 0, "type": "Identifier" }, + "commentStart": 4460, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4630,11 +5253,13 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null } ], + "commentStart": 4332, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 4587, "end": 0, "start": 0, "type": "NonCodeNode", @@ -4657,14 +5282,22 @@ description: Result of parsing pipe-flange-assembly.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Mounting holes pattern" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 4620, "declaration": { + "commentStart": 4620, "end": 0, "id": { + "commentStart": 4620, "end": 0, "name": "pipe", "start": 0, @@ -4675,6 +5308,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 4641, "end": 0, "raw": "'XY'", "start": 0, @@ -4684,11 +5318,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4627, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 4627, "end": 0, "start": 0, "type": "CallExpression", @@ -4697,12 +5333,16 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 4667, "elements": [ { + "commentStart": 4668, "end": 0, "left": { + "commentStart": 4668, "end": 0, "left": { + "commentStart": 4668, "end": 0, "name": "flangePipeDia", "start": 0, @@ -4711,6 +5351,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "/", "right": { + "commentStart": 4684, "end": 0, "raw": "2", "start": 0, @@ -4727,6 +5368,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "-", "right": { + "commentStart": 4688, "end": 0, "name": "tol", "start": 0, @@ -4738,6 +5380,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "BinaryExpression" }, { + "commentStart": 4693, "end": 0, "raw": "0", "start": 0, @@ -4755,6 +5398,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ArrayExpression" }, { + "commentStart": 4697, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4762,11 +5406,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4652, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 4652, "end": 0, "start": 0, "type": "CallExpression", @@ -4777,14 +5423,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 4710, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4716, "elements": [ { + "commentStart": 4717, "end": 0, "raw": "0", "start": 0, @@ -4797,6 +5446,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, { "argument": { + "commentStart": 4721, "end": 0, "raw": "2", "start": 0, @@ -4807,6 +5457,7 @@ description: Result of parsing pipe-flange-assembly.kcl "suffix": "None" } }, + "commentStart": 4720, "end": 0, "operator": "-", "start": 0, @@ -4822,11 +5473,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4705, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4705, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4836,11 +5489,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 4741, "end": 0, "properties": [ { + "commentStart": 4743, "end": 0, "key": { + "commentStart": 4743, "end": 0, "name": "angle", "start": 0, @@ -4850,6 +5506,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 4752, "end": 0, "raw": "60", "start": 0, @@ -4860,6 +5517,7 @@ description: Result of parsing pipe-flange-assembly.kcl "suffix": "None" } }, + "commentStart": 4751, "end": 0, "operator": "-", "start": 0, @@ -4868,8 +5526,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 4756, "end": 0, "key": { + "commentStart": 4756, "end": 0, "name": "length", "start": 0, @@ -4878,6 +5538,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4765, "end": 0, "raw": ".5", "start": 0, @@ -4895,6 +5556,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ObjectExpression" }, { + "commentStart": 4771, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4902,11 +5564,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4730, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 4730, "end": 0, "start": 0, "type": "CallExpression", @@ -4917,14 +5581,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 4784, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4790, "elements": [ { + "commentStart": 4791, "end": 0, "raw": "0", "start": 0, @@ -4937,6 +5604,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, { "argument": { + "commentStart": 4795, "end": 0, "raw": "1", "start": 0, @@ -4947,6 +5615,7 @@ description: Result of parsing pipe-flange-assembly.kcl "suffix": "None" } }, + "commentStart": 4794, "end": 0, "operator": "-", "start": 0, @@ -4962,11 +5631,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4779, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4779, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4978,21 +5649,25 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 4809, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4815, "elements": [ { "argument": { + "commentStart": 4817, "end": 0, "name": "flangeThickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4816, "end": 0, "operator": "-", "start": 0, @@ -5000,6 +5675,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "UnaryExpression" }, { + "commentStart": 4834, "end": 0, "raw": "0", "start": 0, @@ -5019,11 +5695,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4804, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4804, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5035,14 +5713,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 4848, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4854, "elements": [ { + "commentStart": 4855, "end": 0, "raw": "0", "start": 0, @@ -5054,6 +5735,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 4858, "end": 0, "raw": "1", "start": 0, @@ -5073,11 +5755,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4843, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4843, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5087,11 +5771,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 4878, "end": 0, "properties": [ { + "commentStart": 4880, "end": 0, "key": { + "commentStart": 4880, "end": 0, "name": "angle", "start": 0, @@ -5101,6 +5788,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 4889, "end": 0, "raw": "240", "start": 0, @@ -5111,6 +5799,7 @@ description: Result of parsing pipe-flange-assembly.kcl "suffix": "None" } }, + "commentStart": 4888, "end": 0, "operator": "-", "start": 0, @@ -5119,8 +5808,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 4894, "end": 0, "key": { + "commentStart": 4894, "end": 0, "name": "length", "start": 0, @@ -5129,6 +5820,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4903, "end": 0, "raw": ".5", "start": 0, @@ -5146,6 +5838,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ObjectExpression" }, { + "commentStart": 4909, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -5153,11 +5846,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4867, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 4867, "end": 0, "start": 0, "type": "CallExpression", @@ -5168,14 +5863,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 4922, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4928, "elements": [ { + "commentStart": 4929, "end": 0, "raw": "0", "start": 0, @@ -5187,6 +5885,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 4932, "end": 0, "raw": "5", "start": 0, @@ -5206,11 +5905,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4917, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4917, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5220,11 +5921,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 4952, "end": 0, "properties": [ { + "commentStart": 4954, "end": 0, "key": { + "commentStart": 4954, "end": 0, "name": "angle", "start": 0, @@ -5233,6 +5937,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4962, "end": 0, "raw": "60", "start": 0, @@ -5245,8 +5950,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 4966, "end": 0, "key": { + "commentStart": 4966, "end": 0, "name": "length", "start": 0, @@ -5255,6 +5962,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4975, "end": 0, "raw": ".5", "start": 0, @@ -5272,6 +5980,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ObjectExpression" }, { + "commentStart": 4981, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -5279,11 +5988,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4941, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 4941, "end": 0, "start": 0, "type": "CallExpression", @@ -5294,14 +6005,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 4994, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5000, "elements": [ { + "commentStart": 5001, "end": 0, "raw": "0", "start": 0, @@ -5313,6 +6027,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 5004, "end": 0, "raw": "1", "start": 0, @@ -5332,11 +6047,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 4989, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4989, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5348,14 +6065,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5018, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5024, "elements": [ { + "commentStart": 5025, "end": 0, "name": "flangeThickness", "start": 0, @@ -5363,6 +6083,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, { + "commentStart": 5042, "end": 0, "raw": "0", "start": 0, @@ -5382,11 +6103,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5013, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5013, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5398,14 +6121,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5056, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5062, "elements": [ { + "commentStart": 5063, "end": 0, "raw": "0", "start": 0, @@ -5418,6 +6144,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, { "argument": { + "commentStart": 5067, "end": 0, "raw": "1", "start": 0, @@ -5428,6 +6155,7 @@ description: Result of parsing pipe-flange-assembly.kcl "suffix": "None" } }, + "commentStart": 5066, "end": 0, "operator": "-", "start": 0, @@ -5443,11 +6171,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5051, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5051, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5457,11 +6187,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 5087, "end": 0, "properties": [ { + "commentStart": 5089, "end": 0, "key": { + "commentStart": 5089, "end": 0, "name": "angle", "start": 0, @@ -5470,6 +6203,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5097, "end": 0, "raw": "240", "start": 0, @@ -5482,8 +6216,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 5102, "end": 0, "key": { + "commentStart": 5102, "end": 0, "name": "length", "start": 0, @@ -5492,6 +6228,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 5111, "end": 0, "raw": ".5", "start": 0, @@ -5509,6 +6246,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ObjectExpression" }, { + "commentStart": 5117, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -5516,11 +6254,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5076, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 5076, "end": 0, "start": 0, "type": "CallExpression", @@ -5529,11 +6269,13 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [], "callee": { + "commentStart": 5125, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 5125, "end": 0, "start": 0, "type": "CallExpression", @@ -5544,12 +6286,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5146, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5153, "end": 0, "raw": "'y'", "start": 0, @@ -5560,11 +6304,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5138, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 5138, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5576,12 +6322,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5174, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5182, "end": 0, "raw": "\"#7b79d7\"", "start": 0, @@ -5592,11 +6340,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5163, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, + "commentStart": 5163, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5604,11 +6354,13 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null } ], + "commentStart": 4627, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "16": [ { + "commentStart": 5192, "end": 0, "start": 0, "type": "NonCodeNode", @@ -5636,9 +6388,12 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 5225, "declaration": { + "commentStart": 5225, "end": 0, "id": { + "commentStart": 5225, "end": 0, "name": "wall", "start": 0, @@ -5649,6 +6404,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 5246, "end": 0, "raw": "'XZ'", "start": 0, @@ -5658,11 +6414,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5232, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 5232, "end": 0, "start": 0, "type": "CallExpression", @@ -5671,9 +6429,11 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 5272, "elements": [ { "argument": { + "commentStart": 5274, "end": 0, "raw": "4", "start": 0, @@ -5684,6 +6444,7 @@ description: Result of parsing pipe-flange-assembly.kcl "suffix": "None" } }, + "commentStart": 5273, "end": 0, "operator": "-", "start": 0, @@ -5692,6 +6453,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, { "argument": { + "commentStart": 5278, "end": 0, "raw": "4", "start": 0, @@ -5702,6 +6464,7 @@ description: Result of parsing pipe-flange-assembly.kcl "suffix": "None" } }, + "commentStart": 5277, "end": 0, "operator": "-", "start": 0, @@ -5715,6 +6478,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ArrayExpression" }, { + "commentStart": 5282, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -5722,11 +6486,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5257, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 5257, "end": 0, "start": 0, "type": "CallExpression", @@ -5737,14 +6503,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5295, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5301, "elements": [ { + "commentStart": 5302, "end": 0, "raw": "0", "start": 0, @@ -5756,6 +6525,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 5305, "end": 0, "raw": "8", "start": 0, @@ -5775,11 +6545,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5290, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5290, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5791,14 +6563,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5319, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5325, "elements": [ { + "commentStart": 5326, "end": 0, "raw": "8", "start": 0, @@ -5810,6 +6585,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 5329, "end": 0, "raw": "0", "start": 0, @@ -5829,11 +6605,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5314, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5314, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5845,14 +6623,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5343, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5349, "elements": [ { + "commentStart": 5350, "end": 0, "raw": "0", "start": 0, @@ -5865,6 +6646,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, { "argument": { + "commentStart": 5354, "end": 0, "raw": "8", "start": 0, @@ -5875,6 +6657,7 @@ description: Result of parsing pipe-flange-assembly.kcl "suffix": "None" } }, + "commentStart": 5353, "end": 0, "operator": "-", "start": 0, @@ -5890,11 +6673,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5338, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5338, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5904,11 +6689,13 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [], "callee": { + "commentStart": 5363, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 5363, "end": 0, "start": 0, "type": "CallExpression", @@ -5917,6 +6704,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 5381, "end": 0, "name": "mountingHolePattern", "start": 0, @@ -5924,6 +6712,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, { + "commentStart": 5402, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -5931,11 +6720,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5376, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 5376, "end": 0, "start": 0, "type": "CallExpression", @@ -5948,14 +6739,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5430, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5439, "elements": [ { + "commentStart": 5440, "end": 0, "raw": "0", "start": 0, @@ -5967,6 +6761,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 5443, "end": 0, "raw": "0", "start": 0, @@ -5987,14 +6782,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5454, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5463, "end": 0, "left": { + "commentStart": 5463, "end": 0, "name": "flangePipeDia", "start": 0, @@ -6003,6 +6801,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "/", "right": { + "commentStart": 5479, "end": 0, "raw": "2", "start": 0, @@ -6020,11 +6819,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5415, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 5415, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6032,6 +6833,7 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null }, { + "commentStart": 5489, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -6039,11 +6841,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5410, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 5410, "end": 0, "start": 0, "type": "CallExpression", @@ -6054,12 +6858,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5505, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5514, "end": 0, "name": "wallThickness", "start": 0, @@ -6069,11 +6875,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5497, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 5497, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6085,12 +6893,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5545, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5553, "end": 0, "raw": "\"#c7aa8f\"", "start": 0, @@ -6101,11 +6911,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5534, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, + "commentStart": 5534, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6113,11 +6925,13 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null } ], + "commentStart": 5232, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "9": [ { + "commentStart": 5563, "end": 0, "start": 0, "type": "NonCodeNode", @@ -6145,9 +6959,12 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 5598, "declaration": { + "commentStart": 5598, "end": 0, "id": { + "commentStart": 5598, "end": 0, "name": "flangeBase", "start": 0, @@ -6158,6 +6975,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 5625, "end": 0, "raw": "'XZ'", "start": 0, @@ -6167,11 +6985,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5611, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 5611, "end": 0, "start": 0, "type": "CallExpression", @@ -6182,14 +7002,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5651, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5660, "elements": [ { + "commentStart": 5661, "end": 0, "raw": "0", "start": 0, @@ -6201,6 +7024,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 5664, "end": 0, "raw": "0", "start": 0, @@ -6221,12 +7045,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5675, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5684, "end": 0, "name": "flangeBaseDia", "start": 0, @@ -6236,11 +7062,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5636, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 5636, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6250,6 +7078,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 5715, "end": 0, "name": "mountingHolePattern", "start": 0, @@ -6257,6 +7086,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, { + "commentStart": 5736, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -6264,11 +7094,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5710, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 5710, "end": 0, "start": 0, "type": "CallExpression", @@ -6281,14 +7113,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5764, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5773, "elements": [ { + "commentStart": 5774, "end": 0, "raw": "0", "start": 0, @@ -6300,6 +7135,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 5777, "end": 0, "raw": "0", "start": 0, @@ -6320,14 +7156,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5788, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5797, "end": 0, "left": { + "commentStart": 5797, "end": 0, "name": "flangePipeDia", "start": 0, @@ -6336,6 +7175,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "/", "right": { + "commentStart": 5813, "end": 0, "raw": "2", "start": 0, @@ -6353,11 +7193,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5749, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 5749, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6365,6 +7207,7 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null }, { + "commentStart": 5823, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -6372,11 +7215,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5744, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 5744, "end": 0, "start": 0, "type": "CallExpression", @@ -6387,6 +7232,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5839, "end": 0, "name": "length", "start": 0, @@ -6394,12 +7240,14 @@ description: Result of parsing pipe-flange-assembly.kcl }, "arg": { "argument": { + "commentStart": 5849, "end": 0, "name": "flangeThickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 5848, "end": 0, "operator": "-", "start": 0, @@ -6409,11 +7257,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5831, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 5831, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6425,12 +7275,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 5882, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5890, "end": 0, "raw": "\"#9b9797\"", "start": 0, @@ -6441,11 +7293,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5871, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, + "commentStart": 5871, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6453,11 +7307,13 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null } ], + "commentStart": 5611, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "5": [ { + "commentStart": 5900, "end": 0, "start": 0, "type": "NonCodeNode", @@ -6485,12 +7341,14 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 5953, "end": 0, "expression": { "body": [ { "arguments": [ { + "commentStart": 5960, "end": 0, "name": "workingPlane", "start": 0, @@ -6498,11 +7356,14 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, { + "commentStart": 5974, "elements": [ { + "commentStart": 5975, "computed": false, "end": 0, "object": { + "commentStart": 5975, "end": 0, "name": "screwStart", "start": 0, @@ -6510,6 +7371,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 5986, "end": 0, "raw": "2", "start": 0, @@ -6525,9 +7387,11 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "MemberExpression" }, { + "commentStart": 5990, "computed": false, "end": 0, "object": { + "commentStart": 5990, "end": 0, "name": "screwStart", "start": 0, @@ -6535,6 +7399,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 6001, "end": 0, "raw": "0", "start": 0, @@ -6556,6 +7421,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ArrayExpression" }, { + "commentStart": 6006, "end": 0, "raw": "0.0625", "start": 0, @@ -6567,8 +7433,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 6014, "end": 0, "left": { + "commentStart": 6014, "end": 0, "name": "screwDia", "start": 0, @@ -6577,6 +7445,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "+", "right": { + "commentStart": 6025, "end": 0, "name": "tol", "start": 0, @@ -6588,6 +7457,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "BinaryExpression" }, { + "commentStart": 6030, "end": 0, "raw": "0.625", "start": 0, @@ -6600,11 +7470,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 5953, "end": 0, "name": "washer", "start": 0, "type": "Identifier" }, + "commentStart": 5953, "end": 0, "start": 0, "type": "CallExpression", @@ -6615,14 +7487,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6068, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6075, "elements": [ { + "commentStart": 6076, "end": 0, "raw": "0", "start": 0, @@ -6634,6 +7509,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 6079, "end": 0, "raw": "1", "start": 0, @@ -6645,6 +7521,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 6082, "end": 0, "raw": "0", "start": 0, @@ -6665,14 +7542,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6093, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6102, "elements": [ { + "commentStart": 6103, "end": 0, "raw": "0", "start": 0, @@ -6684,6 +7564,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 6106, "end": 0, "raw": "0", "start": 0, @@ -6695,6 +7576,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 6109, "end": 0, "raw": "0", "start": 0, @@ -6715,12 +7597,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6120, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6132, "end": 0, "raw": "7", "start": 0, @@ -6735,12 +7619,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6142, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6155, "end": 0, "raw": "360", "start": 0, @@ -6755,12 +7641,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6167, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6186, "end": 0, "raw": "true", "start": 0, @@ -6771,11 +7659,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 6042, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 6042, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6787,12 +7677,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6214, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6222, "end": 0, "raw": "\"#d8da5d\"", "start": 0, @@ -6803,11 +7695,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 6203, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, + "commentStart": 6203, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6815,11 +7709,13 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null } ], + "commentStart": 5953, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 6232, "end": 0, "start": 0, "type": "NonCodeNode", @@ -6842,14 +7738,17 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ExpressionStatement" }, { + "commentStart": 6288, "end": 0, "expression": { "body": [ { "arguments": [ { + "commentStart": 6297, "elements": [ { + "commentStart": 6306, "end": 0, "raw": "0", "start": 0, @@ -6861,8 +7760,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 6316, "end": 0, "left": { + "commentStart": 6316, "end": 0, "name": "flangeThickness", "start": 0, @@ -6871,6 +7772,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "+", "right": { + "commentStart": 6334, "end": 0, "name": "washerThickness", "start": 0, @@ -6882,6 +7784,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "BinaryExpression" }, { + "commentStart": 6358, "end": 0, "raw": "1.375", "start": 0, @@ -6899,6 +7802,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ArrayExpression" }, { + "commentStart": 6372, "end": 0, "name": "screwLength", "start": 0, @@ -6906,6 +7810,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, { + "commentStart": 6385, "end": 0, "name": "screwDia", "start": 0, @@ -6914,11 +7819,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 6288, "end": 0, "name": "capScrew", "start": 0, "type": "Identifier" }, + "commentStart": 6288, "end": 0, "start": 0, "type": "CallExpression", @@ -6929,14 +7836,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6426, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6433, "elements": [ { + "commentStart": 6434, "end": 0, "raw": "0", "start": 0, @@ -6948,6 +7858,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 6437, "end": 0, "raw": "1", "start": 0, @@ -6959,6 +7870,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 6440, "end": 0, "raw": "0", "start": 0, @@ -6979,14 +7891,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6451, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6460, "elements": [ { + "commentStart": 6461, "end": 0, "raw": "0", "start": 0, @@ -6998,6 +7913,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 6464, "end": 0, "raw": "0", "start": 0, @@ -7009,6 +7925,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 6467, "end": 0, "raw": "0", "start": 0, @@ -7029,12 +7946,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6478, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6490, "end": 0, "raw": "7", "start": 0, @@ -7049,12 +7968,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6500, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6513, "end": 0, "raw": "360", "start": 0, @@ -7069,12 +7990,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6525, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6544, "end": 0, "raw": "true", "start": 0, @@ -7085,11 +8008,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 6400, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 6400, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7101,12 +8026,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6572, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6580, "end": 0, "raw": "\"#4cd411\"", "start": 0, @@ -7117,11 +8044,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 6561, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, + "commentStart": 6561, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7129,6 +8058,7 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null } ], + "commentStart": 6288, "end": 0, "start": 0, "type": "PipeExpression", @@ -7139,9 +8069,12 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ExpressionStatement" }, { + "commentStart": 6590, "declaration": { + "commentStart": 6592, "end": 0, "id": { + "commentStart": 6592, "end": 0, "name": "screwBodySketch", "start": 0, @@ -7152,6 +8085,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "arguments": [ { + "commentStart": 6624, "end": 0, "name": "screwPlane", "start": 0, @@ -7160,11 +8094,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 6610, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 6610, "end": 0, "start": 0, "type": "CallExpression", @@ -7175,14 +8111,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6656, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6665, "elements": [ { + "commentStart": 6666, "end": 0, "raw": "0", "start": 0, @@ -7194,6 +8133,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 6669, "end": 0, "raw": "0", "start": 0, @@ -7214,14 +8154,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6680, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6689, "end": 0, "left": { + "commentStart": 6689, "end": 0, "name": "screwDia", "start": 0, @@ -7230,6 +8173,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "/", "right": { + "commentStart": 6700, "end": 0, "raw": "2", "start": 0, @@ -7247,11 +8191,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 6641, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 6641, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7259,6 +8205,7 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null } ], + "commentStart": 6610, "end": 0, "start": 0, "type": "PipeExpression", @@ -7274,9 +8221,12 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 6709, "declaration": { + "commentStart": 6709, "end": 0, "id": { + "commentStart": 6709, "end": 0, "name": "screwBody", "start": 0, @@ -7289,6 +8239,7 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6746, "end": 0, "name": "length", "start": 0, @@ -7296,12 +8247,14 @@ description: Result of parsing pipe-flange-assembly.kcl }, "arg": { "argument": { + "commentStart": 6756, "end": 0, "name": "screwLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 6755, "end": 0, "operator": "-", "start": 0, @@ -7311,16 +8264,19 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 6721, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 6721, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 6729, "end": 0, "name": "screwBodySketch", "start": 0, @@ -7333,14 +8289,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6800, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6807, "elements": [ { + "commentStart": 6808, "end": 0, "raw": "0", "start": 0, @@ -7352,6 +8311,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 6811, "end": 0, "raw": "1", "start": 0, @@ -7363,6 +8323,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 6814, "end": 0, "raw": "0", "start": 0, @@ -7383,14 +8344,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6825, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6834, "elements": [ { + "commentStart": 6835, "end": 0, "raw": "0", "start": 0, @@ -7402,6 +8366,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 6838, "end": 0, "raw": "0", "start": 0, @@ -7413,6 +8378,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 6841, "end": 0, "raw": "0", "start": 0, @@ -7433,12 +8399,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6852, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6864, "end": 0, "raw": "7", "start": 0, @@ -7453,12 +8421,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6874, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6887, "end": 0, "raw": "360", "start": 0, @@ -7473,12 +8443,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6899, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6918, "end": 0, "raw": "true", "start": 0, @@ -7489,11 +8461,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 6774, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 6774, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7505,12 +8479,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 6946, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6954, "end": 0, "raw": "\"#4cd411\"", "start": 0, @@ -7521,11 +8497,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 6935, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, + "commentStart": 6935, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7533,11 +8511,13 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null } ], + "commentStart": 6721, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 6964, "end": 0, "start": 0, "type": "NonCodeNode", @@ -7565,20 +8545,26 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 7029, "declaration": { + "commentStart": 7029, "end": 0, "id": { + "commentStart": 7029, "end": 0, "name": "backSideWasherPlane", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 7051, "end": 0, "properties": [ { + "commentStart": 7055, "end": 0, "key": { + "commentStart": 7055, "end": 0, "name": "plane", "start": 0, @@ -7587,11 +8573,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7063, "end": 0, "properties": [ { + "commentStart": 7069, "end": 0, "key": { + "commentStart": 7069, "end": 0, "name": "origin", "start": 0, @@ -7600,11 +8589,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7078, "end": 0, "properties": [ { + "commentStart": 7086, "end": 0, "key": { + "commentStart": 7086, "end": 0, "name": "x", "start": 0, @@ -7613,6 +8605,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7090, "end": 0, "raw": "0", "start": 0, @@ -7625,8 +8618,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7099, "end": 0, "key": { + "commentStart": 7099, "end": 0, "name": "y", "start": 0, @@ -7635,15 +8630,18 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7103, "end": 0, "left": { "argument": { + "commentStart": 7104, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 7103, "end": 0, "operator": "-", "start": 0, @@ -7652,6 +8650,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "-", "right": { + "commentStart": 7120, "end": 0, "name": "washerThickness", "start": 0, @@ -7664,8 +8663,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7143, "end": 0, "key": { + "commentStart": 7143, "end": 0, "name": "z", "start": 0, @@ -7674,6 +8675,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7147, "end": 0, "raw": "0", "start": 0, @@ -7692,8 +8694,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7160, "end": 0, "key": { + "commentStart": 7160, "end": 0, "name": "xAxis", "start": 0, @@ -7702,11 +8706,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7168, "end": 0, "properties": [ { + "commentStart": 7170, "end": 0, "key": { + "commentStart": 7170, "end": 0, "name": "x", "start": 0, @@ -7715,6 +8722,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7174, "end": 0, "raw": "0", "start": 0, @@ -7727,8 +8735,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7177, "end": 0, "key": { + "commentStart": 7177, "end": 0, "name": "y", "start": 0, @@ -7737,6 +8747,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7181, "end": 0, "raw": "0", "start": 0, @@ -7749,8 +8760,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7184, "end": 0, "key": { + "commentStart": 7184, "end": 0, "name": "z", "start": 0, @@ -7759,6 +8772,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7188, "end": 0, "raw": "1", "start": 0, @@ -7777,8 +8791,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7197, "end": 0, "key": { + "commentStart": 7197, "end": 0, "name": "yAxis", "start": 0, @@ -7787,11 +8803,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7205, "end": 0, "properties": [ { + "commentStart": 7207, "end": 0, "key": { + "commentStart": 7207, "end": 0, "name": "x", "start": 0, @@ -7800,6 +8819,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7211, "end": 0, "raw": "1", "start": 0, @@ -7812,8 +8832,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7214, "end": 0, "key": { + "commentStart": 7214, "end": 0, "name": "y", "start": 0, @@ -7822,6 +8844,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7218, "end": 0, "raw": "0", "start": 0, @@ -7834,8 +8857,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7221, "end": 0, "key": { + "commentStart": 7221, "end": 0, "name": "z", "start": 0, @@ -7844,6 +8869,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7225, "end": 0, "raw": "0", "start": 0, @@ -7862,8 +8888,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7234, "end": 0, "key": { + "commentStart": 7234, "end": 0, "name": "zAxis", "start": 0, @@ -7872,11 +8900,14 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7242, "end": 0, "properties": [ { + "commentStart": 7244, "end": 0, "key": { + "commentStart": 7244, "end": 0, "name": "x", "start": 0, @@ -7885,6 +8916,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7248, "end": 0, "raw": "0", "start": 0, @@ -7897,8 +8929,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7251, "end": 0, "key": { + "commentStart": 7251, "end": 0, "name": "y", "start": 0, @@ -7907,6 +8941,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7255, "end": 0, "raw": "1", "start": 0, @@ -7919,8 +8954,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7258, "end": 0, "key": { + "commentStart": 7258, "end": 0, "name": "z", "start": 0, @@ -7929,6 +8966,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 7262, "end": 0, "raw": "0", "start": 0, @@ -7967,12 +9005,14 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "VariableDeclaration" }, { + "commentStart": 7271, "end": 0, "expression": { "body": [ { "arguments": [ { + "commentStart": 7330, "end": 0, "name": "backSideWasherPlane", "start": 0, @@ -7980,11 +9020,14 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, { + "commentStart": 7351, "elements": [ { + "commentStart": 7352, "computed": false, "end": 0, "object": { + "commentStart": 7352, "end": 0, "name": "screwStart", "start": 0, @@ -7992,6 +9035,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 7363, "end": 0, "raw": "2", "start": 0, @@ -8007,9 +9051,11 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "MemberExpression" }, { + "commentStart": 7367, "computed": false, "end": 0, "object": { + "commentStart": 7367, "end": 0, "name": "screwStart", "start": 0, @@ -8017,6 +9063,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 7378, "end": 0, "raw": "0", "start": 0, @@ -8038,6 +9085,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ArrayExpression" }, { + "commentStart": 7383, "end": 0, "raw": "0.0625", "start": 0, @@ -8049,8 +9097,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7391, "end": 0, "left": { + "commentStart": 7391, "end": 0, "name": "screwDia", "start": 0, @@ -8059,6 +9109,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "+", "right": { + "commentStart": 7402, "end": 0, "name": "tol", "start": 0, @@ -8070,6 +9121,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "BinaryExpression" }, { + "commentStart": 7407, "end": 0, "raw": "0.625", "start": 0, @@ -8082,11 +9134,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 7323, "end": 0, "name": "washer", "start": 0, "type": "Identifier" }, + "commentStart": 7323, "end": 0, "start": 0, "type": "CallExpression", @@ -8097,14 +9151,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 7445, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7452, "elements": [ { + "commentStart": 7453, "end": 0, "raw": "0", "start": 0, @@ -8116,6 +9173,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7456, "end": 0, "raw": "1", "start": 0, @@ -8127,6 +9185,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7459, "end": 0, "raw": "0", "start": 0, @@ -8147,14 +9206,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 7470, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7479, "elements": [ { + "commentStart": 7480, "end": 0, "raw": "0", "start": 0, @@ -8166,6 +9228,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7483, "end": 0, "raw": "0", "start": 0, @@ -8177,6 +9240,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7486, "end": 0, "raw": "0", "start": 0, @@ -8197,12 +9261,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 7497, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7509, "end": 0, "raw": "7", "start": 0, @@ -8217,12 +9283,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 7519, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7532, "end": 0, "raw": "360", "start": 0, @@ -8237,12 +9305,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 7544, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7563, "end": 0, "raw": "true", "start": 0, @@ -8253,11 +9323,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 7419, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 7419, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8269,12 +9341,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 7591, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7599, "end": 0, "raw": "\"#e8ec09\"", "start": 0, @@ -8285,11 +9359,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 7580, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, + "commentStart": 7580, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8297,11 +9373,13 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null } ], + "commentStart": 7323, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 7609, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8319,22 +9397,31 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "PipeExpression", "type": "PipeExpression" }, + "preComments": [ + "", + "", + "// Create the washers on the backside of the wall" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 7663, "end": 0, "expression": { "body": [ { "arguments": [ { + "commentStart": 7670, "elements": [ { + "commentStart": 7679, "computed": false, "end": 0, "object": { + "commentStart": 7679, "end": 0, "name": "screwStart", "start": 0, @@ -8342,6 +9429,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 7690, "end": 0, "raw": "0", "start": 0, @@ -8357,9 +9445,11 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "MemberExpression" }, { + "commentStart": 7701, "computed": false, "end": 0, "object": { + "commentStart": 7701, "end": 0, "name": "screwStart", "start": 0, @@ -8367,6 +9457,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 7712, "end": 0, "raw": "1", "start": 0, @@ -8382,9 +9473,11 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "MemberExpression" }, { + "commentStart": 7723, "computed": false, "end": 0, "object": { + "commentStart": 7723, "end": 0, "name": "screwStart", "start": 0, @@ -8392,6 +9485,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "Identifier" }, "property": { + "commentStart": 7734, "end": 0, "raw": "2", "start": 0, @@ -8413,6 +9507,7 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ArrayExpression" }, { + "commentStart": 7745, "end": 0, "raw": ".25", "start": 0, @@ -8424,8 +9519,10 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7750, "end": 0, "left": { + "commentStart": 7750, "end": 0, "name": "screwDia", "start": 0, @@ -8434,6 +9531,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "operator": "+", "right": { + "commentStart": 7761, "end": 0, "name": "tol", "start": 0, @@ -8446,11 +9544,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 7663, "end": 0, "name": "hexNut", "start": 0, "type": "Identifier" }, + "commentStart": 7663, "end": 0, "start": 0, "type": "CallExpression", @@ -8461,14 +9561,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 7797, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7804, "elements": [ { + "commentStart": 7805, "end": 0, "raw": "0", "start": 0, @@ -8480,6 +9583,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7808, "end": 0, "raw": "1", "start": 0, @@ -8491,6 +9595,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7811, "end": 0, "raw": "0", "start": 0, @@ -8511,14 +9616,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 7822, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7831, "elements": [ { + "commentStart": 7832, "end": 0, "raw": "0", "start": 0, @@ -8530,6 +9638,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7835, "end": 0, "raw": "0", "start": 0, @@ -8541,6 +9650,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 7838, "end": 0, "raw": "0", "start": 0, @@ -8561,12 +9671,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 7849, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7861, "end": 0, "raw": "7", "start": 0, @@ -8581,12 +9693,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 7871, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7884, "end": 0, "raw": "360", "start": 0, @@ -8601,12 +9715,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 7896, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7915, "end": 0, "raw": "true", "start": 0, @@ -8617,11 +9733,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 7771, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, + "commentStart": 7771, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8633,12 +9751,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { + "commentStart": 7943, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7951, "end": 0, "raw": "\"#bc3434\"", "start": 0, @@ -8649,11 +9769,13 @@ description: Result of parsing pipe-flange-assembly.kcl } ], "callee": { + "commentStart": 7932, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, + "commentStart": 7932, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8661,6 +9783,7 @@ description: Result of parsing pipe-flange-assembly.kcl "unlabeled": null } ], + "commentStart": 7663, "end": 0, "start": 0, "type": "PipeExpression", @@ -8671,20 +9794,32 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 347, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Pipe and Flange Assembly", + "// A crucial component in various piping systems, designed to facilitate the connection, disconnection, and access to piping for inspection, cleaning, and modifications. This assembly combines pipes (long cylindrical conduits) with flanges (plate-like fittings) to create a secure yet detachable joint.", + "", + "", + "// Set units" + ], "properties": [ { + "commentStart": 356, "end": 0, "key": { + "commentStart": 356, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -8693,6 +9828,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 376, "end": 0, "name": "in", "start": 0, @@ -8709,6 +9845,7 @@ description: Result of parsing pipe-flange-assembly.kcl "nonCodeNodes": { "12": [ { + "commentStart": 702, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8721,6 +9858,7 @@ description: Result of parsing pipe-flange-assembly.kcl ], "13": [ { + "commentStart": 763, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8733,6 +9871,7 @@ description: Result of parsing pipe-flange-assembly.kcl ], "14": [ { + "commentStart": 822, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8745,6 +9884,7 @@ description: Result of parsing pipe-flange-assembly.kcl ], "15": [ { + "commentStart": 885, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8757,6 +9897,7 @@ description: Result of parsing pipe-flange-assembly.kcl ], "16": [ { + "commentStart": 936, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8767,6 +9908,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { + "commentStart": 947, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8777,6 +9919,7 @@ description: Result of parsing pipe-flange-assembly.kcl ], "17": [ { + "commentStart": 1188, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8787,6 +9930,7 @@ description: Result of parsing pipe-flange-assembly.kcl ], "18": [ { + "commentStart": 2663, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8795,44 +9939,9 @@ description: Result of parsing pipe-flange-assembly.kcl } } ], - "19": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Washer function", - "style": "line" - } - } - ], - "20": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Hex nut function", - "style": "line" - } - } - ], - "21": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Mounting holes pattern", - "style": "line" - } - } - ], "27": [ { + "commentStart": 6590, "end": 0, "start": 0, "type": "NonCodeNode", @@ -8840,76 +9949,17 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "newLine" } } - ], - "30": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the washers on the backside of the wall", - "style": "line" - } - } ] }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Pipe and Flange Assembly", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A crucial component in various piping systems, designed to facilitate the connection, disconnection, and access to piping for inspection, cleaning, and modifications. This assembly combines pipes (long cylindrical conduits) with flanges (plate-like fittings) to create a secure yet detachable joint.", - "style": "line" - } - }, - { + "commentStart": 379, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/pipe-with-bend/ast.snap b/rust/kcl-lib/tests/kcl_samples/pipe-with-bend/ast.snap index 937f28efe..982a2a652 100644 --- a/rust/kcl-lib/tests/kcl_samples/pipe-with-bend/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/pipe-with-bend/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing pipe-with-bend.kcl "Ok": { "body": [ { + "commentStart": 209, "declaration": { + "commentStart": 231, "end": 0, "id": { + "commentStart": 231, "end": 0, "name": "innerDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 247, "end": 0, "raw": "10", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing pipe-with-bend.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 250, "declaration": { + "commentStart": 250, "end": 0, "id": { + "commentStart": 250, "end": 0, "name": "outerDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 266, "end": 0, "raw": "20", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing pipe-with-bend.kcl "type": "VariableDeclaration" }, { + "commentStart": 269, "declaration": { + "commentStart": 269, "end": 0, "id": { + "commentStart": 269, "end": 0, "name": "bendRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 282, "end": 0, "raw": "30", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing pipe-with-bend.kcl "type": "VariableDeclaration" }, { + "commentStart": 285, "declaration": { + "commentStart": 285, "end": 0, "id": { + "commentStart": 285, "end": 0, "name": "bendAngle", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 297, "end": 0, "raw": "90", "start": 0, @@ -122,9 +141,12 @@ description: Result of parsing pipe-with-bend.kcl "type": "VariableDeclaration" }, { + "commentStart": 299, "declaration": { + "commentStart": 338, "end": 0, "id": { + "commentStart": 338, "end": 0, "name": "sketch000", "start": 0, @@ -133,6 +155,7 @@ description: Result of parsing pipe-with-bend.kcl "init": { "arguments": [ { + "commentStart": 364, "end": 0, "raw": "\"XZ\"", "start": 0, @@ -142,11 +165,13 @@ description: Result of parsing pipe-with-bend.kcl } ], "callee": { + "commentStart": 350, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 350, "end": 0, "start": 0, "type": "CallExpression", @@ -157,14 +182,22 @@ description: Result of parsing pipe-with-bend.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a sketch in the 'XZ' plane" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 369, "declaration": { + "commentStart": 414, "end": 0, "id": { + "commentStart": 414, "end": 0, "name": "outerProfile", "start": 0, @@ -175,14 +208,17 @@ description: Result of parsing pipe-with-bend.kcl { "type": "LabeledArg", "label": { + "commentStart": 452, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 461, "elements": [ { + "commentStart": 462, "end": 0, "name": "bendRadius", "start": 0, @@ -190,6 +226,7 @@ description: Result of parsing pipe-with-bend.kcl "type": "Identifier" }, { + "commentStart": 474, "end": 0, "raw": "0", "start": 0, @@ -210,14 +247,17 @@ description: Result of parsing pipe-with-bend.kcl { "type": "LabeledArg", "label": { + "commentStart": 480, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 489, "end": 0, "left": { + "commentStart": 489, "end": 0, "name": "outerDiameter", "start": 0, @@ -226,6 +266,7 @@ description: Result of parsing pipe-with-bend.kcl }, "operator": "/", "right": { + "commentStart": 505, "end": 0, "raw": "2", "start": 0, @@ -243,16 +284,19 @@ description: Result of parsing pipe-with-bend.kcl } ], "callee": { + "commentStart": 429, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 429, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 439, "end": 0, "name": "sketch000", "start": 0, @@ -265,14 +309,22 @@ description: Result of parsing pipe-with-bend.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a profile for the outer diameter" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 508, "declaration": { + "commentStart": 553, "end": 0, "id": { + "commentStart": 553, "end": 0, "name": "innerProfile", "start": 0, @@ -283,14 +335,17 @@ description: Result of parsing pipe-with-bend.kcl { "type": "LabeledArg", "label": { + "commentStart": 591, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 600, "elements": [ { + "commentStart": 601, "end": 0, "name": "bendRadius", "start": 0, @@ -298,6 +353,7 @@ description: Result of parsing pipe-with-bend.kcl "type": "Identifier" }, { + "commentStart": 613, "end": 0, "raw": "0", "start": 0, @@ -318,14 +374,17 @@ description: Result of parsing pipe-with-bend.kcl { "type": "LabeledArg", "label": { + "commentStart": 619, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 628, "end": 0, "left": { + "commentStart": 628, "end": 0, "name": "innerDiameter", "start": 0, @@ -334,6 +393,7 @@ description: Result of parsing pipe-with-bend.kcl }, "operator": "/", "right": { + "commentStart": 644, "end": 0, "raw": "2", "start": 0, @@ -351,16 +411,19 @@ description: Result of parsing pipe-with-bend.kcl } ], "callee": { + "commentStart": 568, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 568, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 578, "end": 0, "name": "sketch000", "start": 0, @@ -373,14 +436,22 @@ description: Result of parsing pipe-with-bend.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create a profile for the inner diameter" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 647, "declaration": { + "commentStart": 683, "end": 0, "id": { + "commentStart": 683, "end": 0, "name": "pipeProfile", "start": 0, @@ -389,6 +460,7 @@ description: Result of parsing pipe-with-bend.kcl "init": { "body": [ { + "commentStart": 697, "end": 0, "name": "outerProfile", "start": 0, @@ -398,6 +470,7 @@ description: Result of parsing pipe-with-bend.kcl { "arguments": [ { + "commentStart": 720, "end": 0, "name": "innerProfile", "start": 0, @@ -405,6 +478,7 @@ description: Result of parsing pipe-with-bend.kcl "type": "Identifier" }, { + "commentStart": 734, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -412,22 +486,26 @@ description: Result of parsing pipe-with-bend.kcl } ], "callee": { + "commentStart": 715, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 715, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 697, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 736, "end": 0, "start": 0, "type": "NonCodeNode", @@ -450,14 +528,22 @@ description: Result of parsing pipe-with-bend.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// create the profile of the pipe" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 787, "declaration": { + "commentStart": 787, "end": 0, "id": { + "commentStart": 787, "end": 0, "name": "pipe", "start": 0, @@ -468,12 +554,14 @@ description: Result of parsing pipe-with-bend.kcl { "type": "LabeledArg", "label": { + "commentStart": 815, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 822, "end": 0, "raw": "\"Y\"", "start": 0, @@ -485,12 +573,14 @@ description: Result of parsing pipe-with-bend.kcl { "type": "LabeledArg", "label": { + "commentStart": 827, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 835, "end": 0, "name": "bendAngle", "start": 0, @@ -500,16 +590,19 @@ description: Result of parsing pipe-with-bend.kcl } ], "callee": { + "commentStart": 794, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 794, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 802, "end": 0, "name": "pipeProfile", "start": 0, @@ -527,20 +620,32 @@ description: Result of parsing pipe-with-bend.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 177, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Pipe with bend", + "// A tubular section or hollow cylinder, usually but not necessarily of circular cross-section, used mainly to convey substances that can flow.", + "", + "", + "// Set units" + ], "properties": [ { + "commentStart": 186, "end": 0, "key": { + "commentStart": 186, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -549,6 +654,7 @@ description: Result of parsing pipe-with-bend.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 206, "end": 0, "name": "in", "start": 0, @@ -562,112 +668,16 @@ description: Result of parsing pipe-with-bend.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "3": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a sketch in the 'XZ' plane", - "style": "line" - } - } - ], - "4": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a profile for the outer diameter", - "style": "line" - } - } - ], - "5": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create a profile for the inner diameter", - "style": "line" - } - } - ], - "6": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "create the profile of the pipe", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Pipe with bend", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A tubular section or hollow cylinder, usually but not necessarily of circular cross-section, used mainly to convey substances that can flow.", - "style": "line" - } - }, - { + "commentStart": 209, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/pipe/ast.snap b/rust/kcl-lib/tests/kcl_samples/pipe/ast.snap index a7791d7e9..c5c6fd5c6 100644 --- a/rust/kcl-lib/tests/kcl_samples/pipe/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/pipe/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing pipe.kcl "Ok": { "body": [ { + "commentStart": 199, "declaration": { + "commentStart": 221, "end": 0, "id": { + "commentStart": 221, "end": 0, "name": "pipeTotalLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 239, "end": 0, "raw": "20", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing pipe.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 242, "declaration": { + "commentStart": 242, "end": 0, "id": { + "commentStart": 242, "end": 0, "name": "pipeLargeDiaLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 263, "end": 0, "raw": "1", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing pipe.kcl "type": "VariableDeclaration" }, { + "commentStart": 265, "declaration": { + "commentStart": 265, "end": 0, "id": { + "commentStart": 265, "end": 0, "name": "pipeLargeDia", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 280, "end": 0, "raw": "1", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing pipe.kcl "type": "VariableDeclaration" }, { + "commentStart": 282, "declaration": { + "commentStart": 282, "end": 0, "id": { + "commentStart": 282, "end": 0, "name": "pipeSmallDia", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 297, "end": 0, "raw": ".75", "start": 0, @@ -122,15 +141,19 @@ description: Result of parsing pipe.kcl "type": "VariableDeclaration" }, { + "commentStart": 301, "declaration": { + "commentStart": 301, "end": 0, "id": { + "commentStart": 301, "end": 0, "name": "thickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 313, "end": 0, "raw": "0.125", "start": 0, @@ -151,15 +174,19 @@ description: Result of parsing pipe.kcl "type": "VariableDeclaration" }, { + "commentStart": 319, "declaration": { + "commentStart": 319, "end": 0, "id": { + "commentStart": 319, "end": 0, "name": "pipeTransitionAngle", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 341, "end": 0, "raw": "60", "start": 0, @@ -180,15 +207,19 @@ description: Result of parsing pipe.kcl "type": "VariableDeclaration" }, { + "commentStart": 344, "declaration": { + "commentStart": 344, "end": 0, "id": { + "commentStart": 344, "end": 0, "name": "pipeTransitionLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 367, "end": 0, "raw": "0.5", "start": 0, @@ -209,19 +240,25 @@ description: Result of parsing pipe.kcl "type": "VariableDeclaration" }, { + "commentStart": 371, "declaration": { + "commentStart": 371, "end": 0, "id": { + "commentStart": 371, "end": 0, "name": "pipeSmallDiaLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 392, "end": 0, "left": { + "commentStart": 392, "end": 0, "left": { + "commentStart": 392, "end": 0, "name": "pipeTotalLength", "start": 0, @@ -230,6 +267,7 @@ description: Result of parsing pipe.kcl }, "operator": "-", "right": { + "commentStart": 410, "end": 0, "name": "pipeTransitionLength", "start": 0, @@ -242,6 +280,7 @@ description: Result of parsing pipe.kcl }, "operator": "-", "right": { + "commentStart": 433, "end": 0, "name": "pipeLargeDiaLength", "start": 0, @@ -262,9 +301,12 @@ description: Result of parsing pipe.kcl "type": "VariableDeclaration" }, { + "commentStart": 451, "declaration": { + "commentStart": 592, "end": 0, "id": { + "commentStart": 592, "end": 0, "name": "pipeSketch", "start": 0, @@ -275,6 +317,7 @@ description: Result of parsing pipe.kcl { "arguments": [ { + "commentStart": 619, "end": 0, "raw": "'XY'", "start": 0, @@ -284,11 +327,13 @@ description: Result of parsing pipe.kcl } ], "callee": { + "commentStart": 605, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 605, "end": 0, "start": 0, "type": "CallExpression", @@ -297,10 +342,13 @@ description: Result of parsing pipe.kcl { "arguments": [ { + "commentStart": 645, "elements": [ { + "commentStart": 646, "end": 0, "left": { + "commentStart": 646, "end": 0, "name": "pipeSmallDia", "start": 0, @@ -309,8 +357,10 @@ description: Result of parsing pipe.kcl }, "operator": "-", "right": { + "commentStart": 662, "end": 0, "left": { + "commentStart": 662, "end": 0, "name": "thickness", "start": 0, @@ -319,6 +369,7 @@ description: Result of parsing pipe.kcl }, "operator": "/", "right": { + "commentStart": 674, "end": 0, "raw": "2", "start": 0, @@ -338,6 +389,7 @@ description: Result of parsing pipe.kcl "type": "BinaryExpression" }, { + "commentStart": 678, "end": 0, "raw": "38", "start": 0, @@ -355,6 +407,7 @@ description: Result of parsing pipe.kcl "type": "ArrayExpression" }, { + "commentStart": 683, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -362,11 +415,13 @@ description: Result of parsing pipe.kcl } ], "callee": { + "commentStart": 630, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 630, "end": 0, "start": 0, "type": "CallExpression", @@ -377,14 +432,17 @@ description: Result of parsing pipe.kcl { "type": "LabeledArg", "label": { + "commentStart": 696, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 702, "elements": [ { + "commentStart": 703, "end": 0, "name": "thickness", "start": 0, @@ -392,6 +450,7 @@ description: Result of parsing pipe.kcl "type": "Identifier" }, { + "commentStart": 714, "end": 0, "raw": "0", "start": 0, @@ -411,11 +470,13 @@ description: Result of parsing pipe.kcl } ], "callee": { + "commentStart": 691, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 691, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -427,14 +488,17 @@ description: Result of parsing pipe.kcl { "type": "LabeledArg", "label": { + "commentStart": 728, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 734, "elements": [ { + "commentStart": 735, "end": 0, "raw": "0", "start": 0, @@ -447,12 +511,14 @@ description: Result of parsing pipe.kcl }, { "argument": { + "commentStart": 739, "end": 0, "name": "pipeSmallDiaLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 738, "end": 0, "operator": "-", "start": 0, @@ -468,11 +534,13 @@ description: Result of parsing pipe.kcl } ], "callee": { + "commentStart": 723, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 723, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -482,11 +550,14 @@ description: Result of parsing pipe.kcl { "arguments": [ { + "commentStart": 785, "end": 0, "properties": [ { + "commentStart": 794, "end": 0, "key": { + "commentStart": 794, "end": 0, "name": "angle", "start": 0, @@ -496,6 +567,7 @@ description: Result of parsing pipe.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 803, "end": 0, "raw": "60", "start": 0, @@ -506,6 +578,7 @@ description: Result of parsing pipe.kcl "suffix": "None" } }, + "commentStart": 802, "end": 0, "operator": "-", "start": 0, @@ -514,8 +587,10 @@ description: Result of parsing pipe.kcl } }, { + "commentStart": 814, "end": 0, "key": { + "commentStart": 814, "end": 0, "name": "length", "start": 0, @@ -524,6 +599,7 @@ description: Result of parsing pipe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 823, "end": 0, "name": "pipeTransitionLength", "start": 0, @@ -537,6 +613,7 @@ description: Result of parsing pipe.kcl "type": "ObjectExpression" }, { + "commentStart": 852, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -544,11 +621,13 @@ description: Result of parsing pipe.kcl } ], "callee": { + "commentStart": 765, "end": 0, "name": "angledLineOfYLength", "start": 0, "type": "Identifier" }, + "commentStart": 765, "end": 0, "start": 0, "type": "CallExpression", @@ -559,14 +638,17 @@ description: Result of parsing pipe.kcl { "type": "LabeledArg", "label": { + "commentStart": 865, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 871, "elements": [ { + "commentStart": 872, "end": 0, "raw": "0", "start": 0, @@ -579,12 +661,14 @@ description: Result of parsing pipe.kcl }, { "argument": { + "commentStart": 876, "end": 0, "name": "pipeLargeDiaLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 875, "end": 0, "operator": "-", "start": 0, @@ -600,11 +684,13 @@ description: Result of parsing pipe.kcl } ], "callee": { + "commentStart": 860, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 860, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -616,6 +702,7 @@ description: Result of parsing pipe.kcl { "type": "LabeledArg", "label": { + "commentStart": 908, "end": 0, "name": "length", "start": 0, @@ -623,12 +710,14 @@ description: Result of parsing pipe.kcl }, "arg": { "argument": { + "commentStart": 918, "end": 0, "name": "thickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 917, "end": 0, "operator": "-", "start": 0, @@ -638,11 +727,13 @@ description: Result of parsing pipe.kcl } ], "callee": { + "commentStart": 902, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 902, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -654,14 +745,17 @@ description: Result of parsing pipe.kcl { "type": "LabeledArg", "label": { + "commentStart": 939, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 945, "elements": [ { + "commentStart": 946, "end": 0, "raw": "0", "start": 0, @@ -673,6 +767,7 @@ description: Result of parsing pipe.kcl } }, { + "commentStart": 949, "end": 0, "name": "pipeLargeDiaLength", "start": 0, @@ -688,11 +783,13 @@ description: Result of parsing pipe.kcl } ], "callee": { + "commentStart": 934, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 934, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -702,11 +799,14 @@ description: Result of parsing pipe.kcl { "arguments": [ { + "commentStart": 989, "end": 0, "properties": [ { + "commentStart": 998, "end": 0, "key": { + "commentStart": 998, "end": 0, "name": "angle", "start": 0, @@ -715,15 +815,18 @@ description: Result of parsing pipe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1006, "end": 0, "left": { "argument": { + "commentStart": 1007, "end": 0, "name": "pipeTransitionAngle", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1006, "end": 0, "operator": "-", "start": 0, @@ -732,6 +835,7 @@ description: Result of parsing pipe.kcl }, "operator": "+", "right": { + "commentStart": 1029, "end": 0, "raw": "180", "start": 0, @@ -748,8 +852,10 @@ description: Result of parsing pipe.kcl } }, { + "commentStart": 1041, "end": 0, "key": { + "commentStart": 1041, "end": 0, "name": "to", "start": 0, @@ -758,8 +864,10 @@ description: Result of parsing pipe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1046, "end": 0, "left": { + "commentStart": 1046, "end": 0, "name": "pipeSmallDia", "start": 0, @@ -768,8 +876,10 @@ description: Result of parsing pipe.kcl }, "operator": "-", "right": { + "commentStart": 1062, "end": 0, "left": { + "commentStart": 1062, "end": 0, "name": "thickness", "start": 0, @@ -778,6 +888,7 @@ description: Result of parsing pipe.kcl }, "operator": "/", "right": { + "commentStart": 1074, "end": 0, "raw": "2", "start": 0, @@ -803,6 +914,7 @@ description: Result of parsing pipe.kcl "type": "ObjectExpression" }, { + "commentStart": 1085, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -810,11 +922,13 @@ description: Result of parsing pipe.kcl } ], "callee": { + "commentStart": 975, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 975, "end": 0, "start": 0, "type": "CallExpression", @@ -823,22 +937,26 @@ description: Result of parsing pipe.kcl { "arguments": [], "callee": { + "commentStart": 1093, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1093, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 605, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "9": [ { + "commentStart": 1100, "end": 0, "start": 0, "type": "NonCodeNode", @@ -861,14 +979,22 @@ description: Result of parsing pipe.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Create the sketch to be revolved around the y-axis. Use the small diameter, large diameter, length, and thickness to define the sketch." + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1143, "declaration": { + "commentStart": 1143, "end": 0, "id": { + "commentStart": 1143, "end": 0, "name": "pipe", "start": 0, @@ -879,12 +1005,14 @@ description: Result of parsing pipe.kcl { "type": "LabeledArg", "label": { + "commentStart": 1170, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1177, "end": 0, "raw": "'y'", "start": 0, @@ -895,16 +1023,19 @@ description: Result of parsing pipe.kcl } ], "callee": { + "commentStart": 1150, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 1150, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1158, "end": 0, "name": "pipeSketch", "start": 0, @@ -922,20 +1053,32 @@ description: Result of parsing pipe.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 167, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Pipe", + "// A tubular section or hollow cylinder, usually but not necessarily of circular cross-section, used mainly to convey substances that can flow.", + "", + "", + "// Set Units" + ], "properties": [ { + "commentStart": 176, "end": 0, "key": { + "commentStart": 176, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -944,6 +1087,7 @@ description: Result of parsing pipe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 196, "end": 0, "name": "in", "start": 0, @@ -957,76 +1101,16 @@ description: Result of parsing pipe.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "7": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the sketch to be revolved around the y-axis. Use the small diameter, large diameter, length, and thickness to define the sketch.", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Pipe", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A tubular section or hollow cylinder, usually but not necessarily of circular cross-section, used mainly to convey substances that can flow.", - "style": "line" - } - }, - { + "commentStart": 199, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set Units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/poopy-shoe/ast.snap b/rust/kcl-lib/tests/kcl_samples/poopy-shoe/ast.snap index ea07d5a7c..a69c6cb54 100644 --- a/rust/kcl-lib/tests/kcl_samples/poopy-shoe/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/poopy-shoe/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing poopy-shoe.kcl "Ok": { "body": [ { + "commentStart": 124, "declaration": { + "commentStart": 126, "end": 0, "id": { + "commentStart": 126, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 142, "end": 0, "raw": "0.125", "start": 0, @@ -35,15 +39,19 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 148, "declaration": { + "commentStart": 148, "end": 0, "id": { + "commentStart": 148, "end": 0, "name": "wallsWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 161, "end": 0, "raw": "3", "start": 0, @@ -64,15 +72,19 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 163, "declaration": { + "commentStart": 163, "end": 0, "id": { + "commentStart": 163, "end": 0, "name": "height", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 172, "end": 0, "raw": "5.125", "start": 0, @@ -93,15 +105,19 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 178, "declaration": { + "commentStart": 178, "end": 0, "id": { + "commentStart": 178, "end": 0, "name": "filletRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 193, "end": 0, "raw": "0.050", "start": 0, @@ -122,15 +138,19 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 199, "declaration": { + "commentStart": 199, "end": 0, "id": { + "commentStart": 199, "end": 0, "name": "backLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 212, "end": 0, "raw": "6", "start": 0, @@ -151,15 +171,19 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 214, "declaration": { + "commentStart": 214, "end": 0, "id": { + "commentStart": 214, "end": 0, "name": "exitHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 227, "end": 0, "raw": "1", "start": 0, @@ -180,15 +204,19 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 229, "declaration": { + "commentStart": 229, "end": 0, "id": { + "commentStart": 229, "end": 0, "name": "frontLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 243, "end": 0, "raw": "7", "start": 0, @@ -209,9 +237,12 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 244, "declaration": { + "commentStart": 246, "end": 0, "id": { + "commentStart": 246, "end": 0, "name": "sketch001", "start": 0, @@ -222,6 +253,7 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 272, "end": 0, "raw": "\"-YZ\"", "start": 0, @@ -231,11 +263,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 258, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 258, "end": 0, "start": 0, "type": "CallExpression", @@ -244,10 +278,13 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 299, "elements": [ { + "commentStart": 300, "end": 0, "left": { + "commentStart": 300, "end": 0, "name": "wallsWidth", "start": 0, @@ -256,6 +293,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { + "commentStart": 313, "end": 0, "raw": "2", "start": 0, @@ -271,6 +309,7 @@ description: Result of parsing poopy-shoe.kcl "type": "BinaryExpression" }, { + "commentStart": 316, "end": 0, "raw": "0", "start": 0, @@ -288,6 +327,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ArrayExpression" }, { + "commentStart": 320, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -295,11 +335,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 284, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 284, "end": 0, "start": 0, "type": "CallExpression", @@ -310,14 +352,17 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 334, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 343, "end": 0, "left": { + "commentStart": 343, "end": 0, "name": "wallThickness", "start": 0, @@ -326,6 +371,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { + "commentStart": 359, "end": 0, "raw": "2", "start": 0, @@ -343,11 +389,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 328, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 328, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -357,11 +405,14 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 381, "end": 0, "properties": [ { + "commentStart": 383, "end": 0, "key": { + "commentStart": 383, "end": 0, "name": "angle", "start": 0, @@ -370,6 +421,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 391, "end": 0, "raw": "60", "start": 0, @@ -382,8 +434,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 395, "end": 0, "key": { + "commentStart": 395, "end": 0, "name": "to", "start": 0, @@ -392,6 +446,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 400, "end": 0, "name": "wallsWidth", "start": 0, @@ -405,12 +460,14 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectExpression" }, { + "commentStart": 414, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 417, "end": 0, "start": 0, "type": "TagDeclarator", @@ -419,11 +476,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 367, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 367, "end": 0, "start": 0, "type": "CallExpression", @@ -434,12 +493,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 436, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 450, "end": 0, "name": "height", "start": 0, @@ -449,11 +510,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 430, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 430, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -465,6 +528,7 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 469, "end": 0, "name": "length", "start": 0, @@ -472,12 +536,14 @@ description: Result of parsing poopy-shoe.kcl }, "arg": { "argument": { + "commentStart": 479, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 478, "end": 0, "operator": "-", "start": 0, @@ -487,11 +553,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 463, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 463, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -503,6 +571,7 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 505, "end": 0, "name": "endAbsolute", "start": 0, @@ -511,6 +580,7 @@ description: Result of parsing poopy-shoe.kcl "arg": { "arguments": [ { + "commentStart": 527, "end": 0, "name": "seg01", "start": 0, @@ -519,11 +589,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 519, "end": 0, "name": "segEndY", "start": 0, "type": "Identifier" }, + "commentStart": 519, "end": 0, "start": 0, "type": "CallExpression", @@ -532,11 +604,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 499, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 499, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -546,11 +620,14 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 554, "end": 0, "properties": [ { + "commentStart": 563, "end": 0, "key": { + "commentStart": 563, "end": 0, "name": "angle", "start": 0, @@ -559,6 +636,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 571, "end": 0, "raw": "60", "start": 0, @@ -571,8 +649,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 582, "end": 0, "key": { + "commentStart": 582, "end": 0, "name": "to", "start": 0, @@ -581,10 +661,13 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 587, "end": 0, "left": { + "commentStart": 587, "end": 0, "left": { + "commentStart": 587, "end": 0, "name": "wallsWidth", "start": 0, @@ -593,6 +676,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { + "commentStart": 600, "end": 0, "raw": "2", "start": 0, @@ -609,8 +693,10 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "+", "right": { + "commentStart": 604, "end": 0, "left": { + "commentStart": 604, "end": 0, "name": "wallThickness", "start": 0, @@ -619,6 +705,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { + "commentStart": 620, "end": 0, "raw": "2", "start": 0, @@ -644,6 +731,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectExpression" }, { + "commentStart": 630, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -651,11 +739,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 540, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 540, "end": 0, "start": 0, "type": "CallExpression", @@ -666,6 +756,7 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 644, "end": 0, "name": "length", "start": 0, @@ -673,12 +764,14 @@ description: Result of parsing poopy-shoe.kcl }, "arg": { "argument": { + "commentStart": 654, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 653, "end": 0, "operator": "-", "start": 0, @@ -688,11 +781,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 638, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 638, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -702,11 +797,14 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 688, "end": 0, "properties": [ { + "commentStart": 690, "end": 0, "key": { + "commentStart": 690, "end": 0, "name": "angle", "start": 0, @@ -715,8 +813,10 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 698, "end": 0, "left": { + "commentStart": 698, "end": 0, "raw": "180", "start": 0, @@ -729,6 +829,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 704, "end": 0, "raw": "60", "start": 0, @@ -745,8 +846,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 708, "end": 0, "key": { + "commentStart": 708, "end": 0, "name": "to", "start": 0, @@ -755,6 +858,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 713, "end": 0, "name": "wallThickness", "start": 0, @@ -768,6 +872,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectExpression" }, { + "commentStart": 730, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -775,11 +880,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 674, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 674, "end": 0, "start": 0, "type": "CallExpression", @@ -790,12 +897,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 744, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 758, "end": 0, "name": "height", "start": 0, @@ -805,11 +914,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 738, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 738, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -821,12 +932,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 777, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 791, "end": 0, "raw": "0", "start": 0, @@ -840,11 +953,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 771, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 771, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -856,6 +971,7 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 805, "end": 0, "name": "endAbsolute", "start": 0, @@ -864,6 +980,7 @@ description: Result of parsing poopy-shoe.kcl "arg": { "arguments": [ { + "commentStart": 827, "end": 0, "name": "seg01", "start": 0, @@ -872,11 +989,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 819, "end": 0, "name": "segEndY", "start": 0, "type": "Identifier" }, + "commentStart": 819, "end": 0, "start": 0, "type": "CallExpression", @@ -885,11 +1004,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 799, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 799, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -899,11 +1020,14 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 854, "end": 0, "properties": [ { + "commentStart": 856, "end": 0, "key": { + "commentStart": 856, "end": 0, "name": "angle", "start": 0, @@ -912,8 +1036,10 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 864, "end": 0, "left": { + "commentStart": 864, "end": 0, "raw": "180", "start": 0, @@ -926,6 +1052,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 870, "end": 0, "raw": "60", "start": 0, @@ -942,8 +1069,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 874, "end": 0, "key": { + "commentStart": 874, "end": 0, "name": "to", "start": 0, @@ -952,6 +1081,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 879, "end": 0, "raw": "0", "start": 0, @@ -969,6 +1099,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectExpression" }, { + "commentStart": 884, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -976,11 +1107,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 840, "end": 0, "name": "angledLineToY", "start": 0, "type": "Identifier" }, + "commentStart": 840, "end": 0, "start": 0, "type": "CallExpression", @@ -989,17 +1122,20 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [], "callee": { + "commentStart": 892, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 892, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 258, "end": 0, "start": 0, "type": "PipeExpression", @@ -1015,9 +1151,12 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 900, "declaration": { + "commentStart": 900, "end": 0, "id": { + "commentStart": 900, "end": 0, "name": "part001", "start": 0, @@ -1028,12 +1167,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 934, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 942, "end": 0, "raw": "90", "start": 0, @@ -1048,17 +1189,21 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 948, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 955, "end": 0, "properties": [ { + "commentStart": 961, "end": 0, "key": { + "commentStart": 961, "end": 0, "name": "custom", "start": 0, @@ -1067,11 +1212,14 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 970, "end": 0, "properties": [ { + "commentStart": 978, "end": 0, "key": { + "commentStart": 978, "end": 0, "name": "axis", "start": 0, @@ -1080,8 +1228,10 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 985, "elements": [ { + "commentStart": 986, "end": 0, "raw": "1.0", "start": 0, @@ -1093,6 +1243,7 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 991, "end": 0, "raw": "0.0", "start": 0, @@ -1111,8 +1262,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1003, "end": 0, "key": { + "commentStart": 1003, "end": 0, "name": "origin", "start": 0, @@ -1121,8 +1274,10 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1012, "elements": [ { + "commentStart": 1013, "end": 0, "raw": "0.0", "start": 0, @@ -1134,8 +1289,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1018, "end": 0, "left": { + "commentStart": 1018, "end": 0, "name": "height", "start": 0, @@ -1144,6 +1301,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "+", "right": { + "commentStart": 1027, "end": 0, "raw": ".0001", "start": 0, @@ -1179,16 +1337,19 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 910, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 910, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 921, "end": 0, "name": "sketch001", "start": 0, @@ -1206,9 +1367,12 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 1045, "declaration": { + "commentStart": 1047, "end": 0, "id": { + "commentStart": 1047, "end": 0, "name": "sketch002", "start": 0, @@ -1219,6 +1383,7 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 1073, "end": 0, "raw": "'-YZ'", "start": 0, @@ -1228,11 +1393,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1059, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1059, "end": 0, "start": 0, "type": "CallExpression", @@ -1241,10 +1408,13 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 1100, "elements": [ { + "commentStart": 1101, "end": 0, "left": { + "commentStart": 1101, "end": 0, "name": "wallsWidth", "start": 0, @@ -1253,6 +1423,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { + "commentStart": 1114, "end": 0, "raw": "2", "start": 0, @@ -1268,6 +1439,7 @@ description: Result of parsing poopy-shoe.kcl "type": "BinaryExpression" }, { + "commentStart": 1117, "end": 0, "raw": "0", "start": 0, @@ -1285,6 +1457,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ArrayExpression" }, { + "commentStart": 1121, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1292,11 +1465,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1085, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1085, "end": 0, "start": 0, "type": "CallExpression", @@ -1307,14 +1482,17 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 1135, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1144, "end": 0, "left": { + "commentStart": 1144, "end": 0, "name": "wallThickness", "start": 0, @@ -1323,6 +1501,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { + "commentStart": 1160, "end": 0, "raw": "2", "start": 0, @@ -1340,11 +1519,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1129, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1129, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1354,11 +1535,14 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 1182, "end": 0, "properties": [ { + "commentStart": 1184, "end": 0, "key": { + "commentStart": 1184, "end": 0, "name": "angle", "start": 0, @@ -1367,6 +1551,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1192, "end": 0, "raw": "60", "start": 0, @@ -1379,8 +1564,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1196, "end": 0, "key": { + "commentStart": 1196, "end": 0, "name": "to", "start": 0, @@ -1389,6 +1576,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1201, "end": 0, "name": "wallsWidth", "start": 0, @@ -1402,12 +1590,14 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectExpression" }, { + "commentStart": 1215, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1218, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1416,11 +1606,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1168, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 1168, "end": 0, "start": 0, "type": "CallExpression", @@ -1431,12 +1623,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 1237, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1251, "end": 0, "name": "height", "start": 0, @@ -1446,11 +1640,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1231, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1231, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1462,6 +1658,7 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 1270, "end": 0, "name": "length", "start": 0, @@ -1469,12 +1666,14 @@ description: Result of parsing poopy-shoe.kcl }, "arg": { "argument": { + "commentStart": 1280, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1279, "end": 0, "operator": "-", "start": 0, @@ -1484,11 +1683,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1264, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1264, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1500,6 +1701,7 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 1306, "end": 0, "name": "endAbsolute", "start": 0, @@ -1508,6 +1710,7 @@ description: Result of parsing poopy-shoe.kcl "arg": { "arguments": [ { + "commentStart": 1328, "end": 0, "name": "seg01", "start": 0, @@ -1516,11 +1719,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1320, "end": 0, "name": "segEndY", "start": 0, "type": "Identifier" }, + "commentStart": 1320, "end": 0, "start": 0, "type": "CallExpression", @@ -1529,11 +1734,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1300, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1300, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1543,11 +1750,14 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 1355, "end": 0, "properties": [ { + "commentStart": 1364, "end": 0, "key": { + "commentStart": 1364, "end": 0, "name": "angle", "start": 0, @@ -1556,6 +1766,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1372, "end": 0, "raw": "60", "start": 0, @@ -1568,8 +1779,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1383, "end": 0, "key": { + "commentStart": 1383, "end": 0, "name": "to", "start": 0, @@ -1578,10 +1791,13 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1388, "end": 0, "left": { + "commentStart": 1388, "end": 0, "left": { + "commentStart": 1388, "end": 0, "name": "wallsWidth", "start": 0, @@ -1590,6 +1806,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { + "commentStart": 1401, "end": 0, "raw": "2", "start": 0, @@ -1606,8 +1823,10 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "+", "right": { + "commentStart": 1405, "end": 0, "left": { + "commentStart": 1405, "end": 0, "name": "wallThickness", "start": 0, @@ -1616,6 +1835,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { + "commentStart": 1421, "end": 0, "raw": "2", "start": 0, @@ -1641,6 +1861,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectExpression" }, { + "commentStart": 1431, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1648,11 +1869,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1341, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 1341, "end": 0, "start": 0, "type": "CallExpression", @@ -1663,6 +1886,7 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 1445, "end": 0, "name": "length", "start": 0, @@ -1670,12 +1894,14 @@ description: Result of parsing poopy-shoe.kcl }, "arg": { "argument": { + "commentStart": 1455, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1454, "end": 0, "operator": "-", "start": 0, @@ -1685,11 +1911,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1439, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1439, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1699,11 +1927,14 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 1489, "end": 0, "properties": [ { + "commentStart": 1491, "end": 0, "key": { + "commentStart": 1491, "end": 0, "name": "angle", "start": 0, @@ -1712,8 +1943,10 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1499, "end": 0, "left": { + "commentStart": 1499, "end": 0, "raw": "180", "start": 0, @@ -1726,6 +1959,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 1505, "end": 0, "raw": "60", "start": 0, @@ -1742,8 +1976,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1509, "end": 0, "key": { + "commentStart": 1509, "end": 0, "name": "to", "start": 0, @@ -1752,6 +1988,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1514, "end": 0, "name": "wallThickness", "start": 0, @@ -1765,6 +2002,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectExpression" }, { + "commentStart": 1531, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1772,11 +2010,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1475, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 1475, "end": 0, "start": 0, "type": "CallExpression", @@ -1787,12 +2027,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 1545, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1559, "end": 0, "name": "height", "start": 0, @@ -1802,11 +2044,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1539, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1539, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1818,12 +2062,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 1578, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1592, "end": 0, "raw": "0", "start": 0, @@ -1837,11 +2083,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1572, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1572, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1853,6 +2101,7 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 1606, "end": 0, "name": "endAbsolute", "start": 0, @@ -1861,6 +2110,7 @@ description: Result of parsing poopy-shoe.kcl "arg": { "arguments": [ { + "commentStart": 1628, "end": 0, "name": "seg02", "start": 0, @@ -1869,11 +2119,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1620, "end": 0, "name": "segEndY", "start": 0, "type": "Identifier" }, + "commentStart": 1620, "end": 0, "start": 0, "type": "CallExpression", @@ -1882,11 +2134,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1600, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1600, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1896,11 +2150,14 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 1655, "end": 0, "properties": [ { + "commentStart": 1657, "end": 0, "key": { + "commentStart": 1657, "end": 0, "name": "angle", "start": 0, @@ -1909,8 +2166,10 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1665, "end": 0, "left": { + "commentStart": 1665, "end": 0, "raw": "180", "start": 0, @@ -1923,6 +2182,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 1671, "end": 0, "raw": "60", "start": 0, @@ -1939,8 +2199,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1675, "end": 0, "key": { + "commentStart": 1675, "end": 0, "name": "to", "start": 0, @@ -1949,6 +2211,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1680, "end": 0, "raw": "0", "start": 0, @@ -1966,6 +2229,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectExpression" }, { + "commentStart": 1685, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1973,11 +2237,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1641, "end": 0, "name": "angledLineToY", "start": 0, "type": "Identifier" }, + "commentStart": 1641, "end": 0, "start": 0, "type": "CallExpression", @@ -1986,11 +2252,13 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [], "callee": { + "commentStart": 1693, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1693, "end": 0, "start": 0, "type": "CallExpression", @@ -2001,14 +2269,17 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 1714, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1723, "end": 0, "left": { + "commentStart": 1723, "end": 0, "name": "backLength", "start": 0, @@ -2017,6 +2288,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 1736, "end": 0, "name": "height", "start": 0, @@ -2030,11 +2302,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 1706, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1706, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2042,6 +2316,7 @@ description: Result of parsing poopy-shoe.kcl "unlabeled": null } ], + "commentStart": 1059, "end": 0, "start": 0, "type": "PipeExpression", @@ -2057,20 +2332,26 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 1743, "declaration": { + "commentStart": 1745, "end": 0, "id": { + "commentStart": 1745, "end": 0, "name": "customPlane", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 1759, "end": 0, "properties": [ { + "commentStart": 1763, "end": 0, "key": { + "commentStart": 1763, "end": 0, "name": "plane", "start": 0, @@ -2079,11 +2360,14 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1771, "end": 0, "properties": [ { + "commentStart": 1777, "end": 0, "key": { + "commentStart": 1777, "end": 0, "name": "origin", "start": 0, @@ -2092,11 +2376,14 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1786, "end": 0, "properties": [ { + "commentStart": 1794, "end": 0, "key": { + "commentStart": 1794, "end": 0, "name": "x", "start": 0, @@ -2105,6 +2392,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1798, "end": 0, "raw": "0", "start": 0, @@ -2117,8 +2405,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1807, "end": 0, "key": { + "commentStart": 1807, "end": 0, "name": "y", "start": 0, @@ -2128,10 +2418,13 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1813, "end": 0, "left": { + "commentStart": 1813, "end": 0, "left": { + "commentStart": 1813, "end": 0, "name": "wallsWidth", "start": 0, @@ -2140,6 +2433,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { + "commentStart": 1826, "end": 0, "raw": "2", "start": 0, @@ -2156,8 +2450,10 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 1831, "end": 0, "left": { + "commentStart": 1831, "end": 0, "name": "wallThickness", "start": 0, @@ -2166,6 +2462,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { + "commentStart": 1847, "end": 0, "raw": "2", "start": 0, @@ -2184,6 +2481,7 @@ description: Result of parsing poopy-shoe.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 1811, "end": 0, "operator": "-", "start": 0, @@ -2192,8 +2490,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1858, "end": 0, "key": { + "commentStart": 1858, "end": 0, "name": "z", "start": 0, @@ -2202,6 +2502,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1862, "end": 0, "raw": "0", "start": 0, @@ -2220,8 +2521,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1875, "end": 0, "key": { + "commentStart": 1875, "end": 0, "name": "xAxis", "start": 0, @@ -2230,11 +2533,14 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1883, "end": 0, "properties": [ { + "commentStart": 1885, "end": 0, "key": { + "commentStart": 1885, "end": 0, "name": "x", "start": 0, @@ -2243,6 +2549,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1889, "end": 0, "raw": "1", "start": 0, @@ -2255,8 +2562,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1892, "end": 0, "key": { + "commentStart": 1892, "end": 0, "name": "y", "start": 0, @@ -2265,6 +2574,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1896, "end": 0, "raw": "0", "start": 0, @@ -2277,8 +2587,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1899, "end": 0, "key": { + "commentStart": 1899, "end": 0, "name": "z", "start": 0, @@ -2287,6 +2599,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1903, "end": 0, "raw": "0", "start": 0, @@ -2305,8 +2618,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1912, "end": 0, "key": { + "commentStart": 1912, "end": 0, "name": "yAxis", "start": 0, @@ -2315,11 +2630,14 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1920, "end": 0, "properties": [ { + "commentStart": 1922, "end": 0, "key": { + "commentStart": 1922, "end": 0, "name": "x", "start": 0, @@ -2328,6 +2646,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1926, "end": 0, "raw": "0", "start": 0, @@ -2340,8 +2659,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1929, "end": 0, "key": { + "commentStart": 1929, "end": 0, "name": "y", "start": 0, @@ -2350,6 +2671,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1933, "end": 0, "raw": "0", "start": 0, @@ -2362,8 +2684,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1936, "end": 0, "key": { + "commentStart": 1936, "end": 0, "name": "z", "start": 0, @@ -2372,6 +2696,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1940, "end": 0, "raw": "1", "start": 0, @@ -2390,8 +2715,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1949, "end": 0, "key": { + "commentStart": 1949, "end": 0, "name": "zAxis", "start": 0, @@ -2400,11 +2727,14 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1957, "end": 0, "properties": [ { + "commentStart": 1959, "end": 0, "key": { + "commentStart": 1959, "end": 0, "name": "x", "start": 0, @@ -2413,6 +2743,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1963, "end": 0, "raw": "0", "start": 0, @@ -2425,8 +2756,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1966, "end": 0, "key": { + "commentStart": 1966, "end": 0, "name": "y", "start": 0, @@ -2436,6 +2769,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 1971, "end": 0, "raw": "1", "start": 0, @@ -2446,6 +2780,7 @@ description: Result of parsing poopy-shoe.kcl "suffix": "None" } }, + "commentStart": 1970, "end": 0, "operator": "-", "start": 0, @@ -2454,8 +2789,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 1974, "end": 0, "key": { + "commentStart": 1974, "end": 0, "name": "z", "start": 0, @@ -2464,6 +2801,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1978, "end": 0, "raw": "0", "start": 0, @@ -2502,9 +2840,12 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 1988, "declaration": { + "commentStart": 1988, "end": 0, "id": { + "commentStart": 1988, "end": 0, "name": "sketch003", "start": 0, @@ -2515,6 +2856,7 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 2014, "end": 0, "name": "customPlane", "start": 0, @@ -2523,11 +2865,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2000, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2000, "end": 0, "start": 0, "type": "CallExpression", @@ -2536,8 +2880,10 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 2047, "elements": [ { + "commentStart": 2048, "end": 0, "raw": "0", "start": 0, @@ -2549,6 +2895,7 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 2051, "end": 0, "raw": "0", "start": 0, @@ -2566,6 +2913,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ArrayExpression" }, { + "commentStart": 2055, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2573,11 +2921,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2032, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2032, "end": 0, "start": 0, "type": "CallExpression", @@ -2586,11 +2936,14 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 2077, "end": 0, "properties": [ { + "commentStart": 2079, "end": 0, "key": { + "commentStart": 2079, "end": 0, "name": "offset", "start": 0, @@ -2599,6 +2952,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2088, "end": 0, "raw": "60", "start": 0, @@ -2611,8 +2965,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 2092, "end": 0, "key": { + "commentStart": 2092, "end": 0, "name": "radius", "start": 0, @@ -2621,6 +2977,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2101, "end": 0, "name": "height", "start": 0, @@ -2634,6 +2991,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectExpression" }, { + "commentStart": 2111, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2641,11 +2999,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2063, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 2063, "end": 0, "start": 0, "type": "CallExpression", @@ -2654,11 +3014,14 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 2133, "end": 0, "properties": [ { + "commentStart": 2135, "end": 0, "key": { + "commentStart": 2135, "end": 0, "name": "angle", "start": 0, @@ -2667,6 +3030,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2143, "end": 0, "raw": "60", "start": 0, @@ -2679,8 +3043,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 2147, "end": 0, "key": { + "commentStart": 2147, "end": 0, "name": "to", "start": 0, @@ -2689,6 +3055,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2152, "end": 0, "raw": "0", "start": 0, @@ -2706,6 +3073,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectExpression" }, { + "commentStart": 2157, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2713,11 +3081,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2119, "end": 0, "name": "angledLineToY", "start": 0, "type": "Identifier" }, + "commentStart": 2119, "end": 0, "start": 0, "type": "CallExpression", @@ -2726,11 +3096,13 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [], "callee": { + "commentStart": 2165, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2165, "end": 0, "start": 0, "type": "CallExpression", @@ -2741,12 +3113,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 2186, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2195, "end": 0, "name": "wallThickness", "start": 0, @@ -2756,11 +3130,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2178, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2178, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2768,6 +3144,7 @@ description: Result of parsing poopy-shoe.kcl "unlabeled": null } ], + "commentStart": 2000, "end": 0, "start": 0, "type": "PipeExpression", @@ -2783,9 +3160,12 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 2209, "declaration": { + "commentStart": 2211, "end": 0, "id": { + "commentStart": 2211, "end": 0, "name": "sketch004", "start": 0, @@ -2796,6 +3176,7 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 2237, "end": 0, "name": "sketch002", "start": 0, @@ -2803,6 +3184,7 @@ description: Result of parsing poopy-shoe.kcl "type": "Identifier" }, { + "commentStart": 2248, "end": 0, "raw": "'END'", "start": 0, @@ -2812,11 +3194,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2223, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2223, "end": 0, "start": 0, "type": "CallExpression", @@ -2825,8 +3209,10 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 2275, "elements": [ { + "commentStart": 2276, "end": 0, "raw": "0", "start": 0, @@ -2838,6 +3224,7 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 2279, "end": 0, "raw": "0", "start": 0, @@ -2855,6 +3242,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ArrayExpression" }, { + "commentStart": 2283, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2862,11 +3250,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2260, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2260, "end": 0, "start": 0, "type": "CallExpression", @@ -2877,12 +3267,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 2297, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2311, "end": 0, "name": "height", "start": 0, @@ -2892,11 +3284,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2291, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 2291, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2908,12 +3302,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 2330, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2344, "end": 0, "name": "wallThickness", "start": 0, @@ -2923,11 +3319,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2324, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2324, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2939,6 +3337,7 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 2370, "end": 0, "name": "endAbsolute", "start": 0, @@ -2947,6 +3346,7 @@ description: Result of parsing poopy-shoe.kcl "arg": { "arguments": [ { + "commentStart": 2392, "end": 0, "name": "seg01", "start": 0, @@ -2955,11 +3355,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2384, "end": 0, "name": "segEndY", "start": 0, "type": "Identifier" }, + "commentStart": 2384, "end": 0, "start": 0, "type": "CallExpression", @@ -2968,11 +3370,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2364, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 2364, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2982,11 +3386,14 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 2419, "end": 0, "properties": [ { + "commentStart": 2428, "end": 0, "key": { + "commentStart": 2428, "end": 0, "name": "angle", "start": 0, @@ -2995,8 +3402,10 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2436, "end": 0, "left": { + "commentStart": 2436, "end": 0, "raw": "180", "start": 0, @@ -3009,6 +3418,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 2442, "end": 0, "raw": "60", "start": 0, @@ -3025,8 +3435,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 2453, "end": 0, "key": { + "commentStart": 2453, "end": 0, "name": "to", "start": 0, @@ -3035,10 +3447,13 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2458, "end": 0, "left": { + "commentStart": 2458, "end": 0, "left": { + "commentStart": 2458, "end": 0, "name": "wallsWidth", "start": 0, @@ -3047,6 +3462,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { + "commentStart": 2471, "end": 0, "raw": "2", "start": 0, @@ -3063,8 +3479,10 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 2476, "end": 0, "left": { + "commentStart": 2476, "end": 0, "name": "wallThickness", "start": 0, @@ -3073,6 +3491,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { + "commentStart": 2492, "end": 0, "raw": "2", "start": 0, @@ -3098,6 +3517,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectExpression" }, { + "commentStart": 2503, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3105,11 +3525,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2405, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 2405, "end": 0, "start": 0, "type": "CallExpression", @@ -3120,12 +3542,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 2517, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2526, "end": 0, "name": "wallThickness", "start": 0, @@ -3135,11 +3559,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2511, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2511, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3149,11 +3575,14 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 2560, "end": 0, "properties": [ { + "commentStart": 2562, "end": 0, "key": { + "commentStart": 2562, "end": 0, "name": "angle", "start": 0, @@ -3162,6 +3591,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2570, "end": 0, "raw": "60", "start": 0, @@ -3174,8 +3604,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 2574, "end": 0, "key": { + "commentStart": 2574, "end": 0, "name": "to", "start": 0, @@ -3186,6 +3618,7 @@ description: Result of parsing poopy-shoe.kcl "value": { "arguments": [ { + "commentStart": 2587, "end": 0, "name": "seg01", "start": 0, @@ -3194,11 +3627,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2579, "end": 0, "name": "segEndY", "start": 0, "type": "Identifier" }, + "commentStart": 2579, "end": 0, "start": 0, "type": "CallExpression", @@ -3211,6 +3646,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectExpression" }, { + "commentStart": 2597, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3218,11 +3654,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2546, "end": 0, "name": "angledLineToY", "start": 0, "type": "Identifier" }, + "commentStart": 2546, "end": 0, "start": 0, "type": "CallExpression", @@ -3233,12 +3671,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 2611, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2625, "end": 0, "name": "height", "start": 0, @@ -3248,11 +3688,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2605, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 2605, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3264,12 +3706,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 2644, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2653, "end": 0, "name": "wallThickness", "start": 0, @@ -3279,11 +3723,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2638, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2638, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3293,14 +3739,19 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 2689, "elements": [ { + "commentStart": 2699, "end": 0, "left": { + "commentStart": 2699, "end": 0, "left": { + "commentStart": 2699, "end": 0, "left": { + "commentStart": 2699, "end": 0, "name": "frontLength", "start": 0, @@ -3309,6 +3760,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 2713, "end": 0, "name": "wallsWidth", "start": 0, @@ -3321,6 +3773,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { + "commentStart": 2727, "end": 0, "raw": "2", "start": 0, @@ -3337,6 +3790,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "+", "right": { + "commentStart": 2731, "end": 0, "name": "wallsWidth", "start": 0, @@ -3348,8 +3802,10 @@ description: Result of parsing poopy-shoe.kcl "type": "BinaryExpression" }, { + "commentStart": 2750, "end": 0, "left": { + "commentStart": 2750, "end": 0, "name": "height", "start": 0, @@ -3358,10 +3814,13 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 2761, "end": 0, "left": { + "commentStart": 2761, "end": 0, "left": { + "commentStart": 2761, "end": 0, "name": "height", "start": 0, @@ -3370,6 +3829,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 2770, "end": 0, "name": "exitHeight", "start": 0, @@ -3382,6 +3842,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { + "commentStart": 2784, "end": 0, "raw": "2", "start": 0, @@ -3407,6 +3868,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ArrayExpression" }, { + "commentStart": 2795, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3414,11 +3876,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2673, "end": 0, "name": "tangentialArcTo", "start": 0, "type": "Identifier" }, + "commentStart": 2673, "end": 0, "start": 0, "type": "CallExpression", @@ -3427,8 +3891,10 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 2819, "elements": [ { + "commentStart": 2820, "end": 0, "name": "frontLength", "start": 0, @@ -3436,6 +3902,7 @@ description: Result of parsing poopy-shoe.kcl "type": "Identifier" }, { + "commentStart": 2833, "end": 0, "name": "exitHeight", "start": 0, @@ -3449,6 +3916,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ArrayExpression" }, { + "commentStart": 2846, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3456,11 +3924,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2803, "end": 0, "name": "tangentialArcTo", "start": 0, "type": "Identifier" }, + "commentStart": 2803, "end": 0, "start": 0, "type": "CallExpression", @@ -3471,12 +3941,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 2860, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2874, "end": 0, "raw": "0", "start": 0, @@ -3490,11 +3962,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2854, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 2854, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3506,12 +3980,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 2888, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2894, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3521,11 +3997,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2882, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2882, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3537,12 +4015,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 2915, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2924, "end": 0, "name": "wallThickness", "start": 0, @@ -3552,11 +4032,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 2907, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2907, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3564,6 +4046,7 @@ description: Result of parsing poopy-shoe.kcl "unlabeled": null } ], + "commentStart": 2223, "end": 0, "start": 0, "type": "PipeExpression", @@ -3579,20 +4062,26 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 2938, "declaration": { + "commentStart": 2940, "end": 0, "id": { + "commentStart": 2940, "end": 0, "name": "customPlane2", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 2955, "end": 0, "properties": [ { + "commentStart": 2959, "end": 0, "key": { + "commentStart": 2959, "end": 0, "name": "plane", "start": 0, @@ -3601,11 +4090,14 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2967, "end": 0, "properties": [ { + "commentStart": 2973, "end": 0, "key": { + "commentStart": 2973, "end": 0, "name": "origin", "start": 0, @@ -3614,11 +4106,14 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2982, "end": 0, "properties": [ { + "commentStart": 2990, "end": 0, "key": { + "commentStart": 2990, "end": 0, "name": "x", "start": 0, @@ -3627,9 +4122,11 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 2994, "end": 0, "left": { "argument": { + "commentStart": 2995, "end": 0, "raw": "1", "start": 0, @@ -3640,6 +4137,7 @@ description: Result of parsing poopy-shoe.kcl "suffix": "None" } }, + "commentStart": 2994, "end": 0, "operator": "-", "start": 0, @@ -3648,10 +4146,13 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "*", "right": { + "commentStart": 3000, "end": 0, "left": { + "commentStart": 3000, "end": 0, "left": { + "commentStart": 3000, "end": 0, "name": "backLength", "start": 0, @@ -3660,6 +4161,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 3013, "end": 0, "name": "height", "start": 0, @@ -3672,6 +4174,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "+", "right": { + "commentStart": 3022, "end": 0, "name": "wallsWidth", "start": 0, @@ -3688,8 +4191,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 3041, "end": 0, "key": { + "commentStart": 3041, "end": 0, "name": "y", "start": 0, @@ -3698,6 +4203,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3045, "end": 0, "raw": "0", "start": 0, @@ -3710,8 +4216,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 3054, "end": 0, "key": { + "commentStart": 3054, "end": 0, "name": "z", "start": 0, @@ -3720,6 +4228,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3058, "end": 0, "raw": "0", "start": 0, @@ -3738,8 +4247,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 3071, "end": 0, "key": { + "commentStart": 3071, "end": 0, "name": "xAxis", "start": 0, @@ -3748,11 +4259,14 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3079, "end": 0, "properties": [ { + "commentStart": 3081, "end": 0, "key": { + "commentStart": 3081, "end": 0, "name": "x", "start": 0, @@ -3761,6 +4275,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3085, "end": 0, "raw": "0", "start": 0, @@ -3773,8 +4288,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 3088, "end": 0, "key": { + "commentStart": 3088, "end": 0, "name": "y", "start": 0, @@ -3784,6 +4301,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 3093, "end": 0, "raw": "1", "start": 0, @@ -3794,6 +4312,7 @@ description: Result of parsing poopy-shoe.kcl "suffix": "None" } }, + "commentStart": 3092, "end": 0, "operator": "-", "start": 0, @@ -3802,8 +4321,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 3096, "end": 0, "key": { + "commentStart": 3096, "end": 0, "name": "z", "start": 0, @@ -3812,6 +4333,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3100, "end": 0, "raw": "0", "start": 0, @@ -3830,8 +4352,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 3109, "end": 0, "key": { + "commentStart": 3109, "end": 0, "name": "yAxis", "start": 0, @@ -3840,11 +4364,14 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3117, "end": 0, "properties": [ { + "commentStart": 3119, "end": 0, "key": { + "commentStart": 3119, "end": 0, "name": "x", "start": 0, @@ -3853,6 +4380,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3123, "end": 0, "raw": "0", "start": 0, @@ -3865,8 +4393,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 3126, "end": 0, "key": { + "commentStart": 3126, "end": 0, "name": "y", "start": 0, @@ -3875,6 +4405,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3130, "end": 0, "raw": "0", "start": 0, @@ -3887,8 +4418,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 3133, "end": 0, "key": { + "commentStart": 3133, "end": 0, "name": "z", "start": 0, @@ -3897,6 +4430,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3137, "end": 0, "raw": "1", "start": 0, @@ -3915,8 +4449,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 3146, "end": 0, "key": { + "commentStart": 3146, "end": 0, "name": "zAxis", "start": 0, @@ -3925,11 +4461,14 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3154, "end": 0, "properties": [ { + "commentStart": 3156, "end": 0, "key": { + "commentStart": 3156, "end": 0, "name": "x", "start": 0, @@ -3938,6 +4477,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3160, "end": 0, "raw": "1", "start": 0, @@ -3950,8 +4490,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 3163, "end": 0, "key": { + "commentStart": 3163, "end": 0, "name": "y", "start": 0, @@ -3960,6 +4502,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3167, "end": 0, "raw": "0", "start": 0, @@ -3972,8 +4515,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 3170, "end": 0, "key": { + "commentStart": 3170, "end": 0, "name": "z", "start": 0, @@ -3982,6 +4527,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 3174, "end": 0, "raw": "0", "start": 0, @@ -4020,9 +4566,12 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 3184, "declaration": { + "commentStart": 3184, "end": 0, "id": { + "commentStart": 3184, "end": 0, "name": "sketch005", "start": 0, @@ -4033,6 +4582,7 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 3210, "end": 0, "name": "customPlane2", "start": 0, @@ -4041,11 +4591,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3196, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 3196, "end": 0, "start": 0, "type": "CallExpression", @@ -4054,8 +4606,10 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 3244, "elements": [ { + "commentStart": 3245, "end": 0, "raw": "0", "start": 0, @@ -4067,6 +4621,7 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 3248, "end": 0, "raw": "0", "start": 0, @@ -4084,6 +4639,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ArrayExpression" }, { + "commentStart": 3252, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4091,11 +4647,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3229, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 3229, "end": 0, "start": 0, "type": "CallExpression", @@ -4106,12 +4664,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 3266, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3280, "end": 0, "name": "height", "start": 0, @@ -4121,11 +4681,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3260, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 3260, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4137,12 +4699,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 3299, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3313, "end": 0, "name": "wallsWidth", "start": 0, @@ -4152,11 +4716,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3293, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3293, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4166,14 +4732,19 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 3346, "elements": [ { + "commentStart": 3356, "end": 0, "left": { + "commentStart": 3356, "end": 0, "left": { + "commentStart": 3356, "end": 0, "left": { + "commentStart": 3356, "end": 0, "name": "frontLength", "start": 0, @@ -4182,6 +4753,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 3370, "end": 0, "name": "wallsWidth", "start": 0, @@ -4194,6 +4766,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { + "commentStart": 3384, "end": 0, "raw": "2", "start": 0, @@ -4210,6 +4783,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "+", "right": { + "commentStart": 3388, "end": 0, "name": "wallsWidth", "start": 0, @@ -4221,8 +4795,10 @@ description: Result of parsing poopy-shoe.kcl "type": "BinaryExpression" }, { + "commentStart": 3407, "end": 0, "left": { + "commentStart": 3407, "end": 0, "name": "height", "start": 0, @@ -4231,10 +4807,13 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 3418, "end": 0, "left": { + "commentStart": 3418, "end": 0, "left": { + "commentStart": 3418, "end": 0, "name": "height", "start": 0, @@ -4243,6 +4822,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 3427, "end": 0, "name": "exitHeight", "start": 0, @@ -4255,6 +4835,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { + "commentStart": 3441, "end": 0, "raw": "2", "start": 0, @@ -4280,6 +4861,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ArrayExpression" }, { + "commentStart": 3452, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4287,11 +4869,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3330, "end": 0, "name": "tangentialArcTo", "start": 0, "type": "Identifier" }, + "commentStart": 3330, "end": 0, "start": 0, "type": "CallExpression", @@ -4300,8 +4884,10 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 3476, "elements": [ { + "commentStart": 3477, "end": 0, "name": "frontLength", "start": 0, @@ -4309,6 +4895,7 @@ description: Result of parsing poopy-shoe.kcl "type": "Identifier" }, { + "commentStart": 3490, "end": 0, "name": "exitHeight", "start": 0, @@ -4322,6 +4909,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ArrayExpression" }, { + "commentStart": 3503, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4329,11 +4917,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3460, "end": 0, "name": "tangentialArcTo", "start": 0, "type": "Identifier" }, + "commentStart": 3460, "end": 0, "start": 0, "type": "CallExpression", @@ -4344,12 +4934,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 3517, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3531, "end": 0, "raw": "0", "start": 0, @@ -4364,12 +4956,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 3534, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3540, "end": 0, "start": 0, "type": "TagDeclarator", @@ -4379,11 +4973,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3511, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 3511, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4393,11 +4989,13 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [], "callee": { + "commentStart": 3553, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 3553, "end": 0, "start": 0, "type": "CallExpression", @@ -4408,12 +5006,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 3574, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3583, "end": 0, "name": "wallThickness", "start": 0, @@ -4423,11 +5023,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3566, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 3566, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4435,6 +5037,7 @@ description: Result of parsing poopy-shoe.kcl "unlabeled": null } ], + "commentStart": 3196, "end": 0, "start": 0, "type": "PipeExpression", @@ -4450,9 +5053,12 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 3597, "declaration": { + "commentStart": 3599, "end": 0, "id": { + "commentStart": 3599, "end": 0, "name": "sketch006", "start": 0, @@ -4463,6 +5069,7 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 3625, "end": 0, "name": "sketch005", "start": 0, @@ -4470,6 +5077,7 @@ description: Result of parsing poopy-shoe.kcl "type": "Identifier" }, { + "commentStart": 3636, "end": 0, "name": "seg03", "start": 0, @@ -4478,11 +5086,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3611, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 3611, "end": 0, "start": 0, "type": "CallExpression", @@ -4491,8 +5101,10 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 3663, "elements": [ { + "commentStart": 3664, "end": 0, "raw": "0", "start": 0, @@ -4504,9 +5116,11 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 3667, "end": 0, "left": { "argument": { + "commentStart": 3668, "end": 0, "raw": "1", "start": 0, @@ -4517,6 +5131,7 @@ description: Result of parsing poopy-shoe.kcl "suffix": "None" } }, + "commentStart": 3667, "end": 0, "operator": "-", "start": 0, @@ -4525,8 +5140,10 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "*", "right": { + "commentStart": 3673, "end": 0, "left": { + "commentStart": 3673, "end": 0, "name": "backLength", "start": 0, @@ -4535,6 +5152,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 3686, "end": 0, "name": "height", "start": 0, @@ -4556,6 +5174,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ArrayExpression" }, { + "commentStart": 3696, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4563,11 +5182,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3648, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 3648, "end": 0, "start": 0, "type": "CallExpression", @@ -4578,6 +5199,7 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 3710, "end": 0, "name": "endAbsolute", "start": 0, @@ -4585,12 +5207,14 @@ description: Result of parsing poopy-shoe.kcl }, "arg": { "argument": { + "commentStart": 3725, "end": 0, "name": "exitHeight", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3724, "end": 0, "operator": "-", "start": 0, @@ -4600,11 +5224,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3704, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3704, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4616,6 +5242,7 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 3748, "end": 0, "name": "length", "start": 0, @@ -4623,12 +5250,14 @@ description: Result of parsing poopy-shoe.kcl }, "arg": { "argument": { + "commentStart": 3758, "end": 0, "name": "wallsWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 3757, "end": 0, "operator": "-", "start": 0, @@ -4638,11 +5267,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3742, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 3742, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4654,12 +5285,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 3781, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3795, "end": 0, "raw": "0", "start": 0, @@ -4673,11 +5306,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3775, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3775, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4687,11 +5322,13 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [], "callee": { + "commentStart": 3803, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 3803, "end": 0, "start": 0, "type": "CallExpression", @@ -4702,12 +5339,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 3824, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3833, "end": 0, "name": "wallThickness", "start": 0, @@ -4717,11 +5356,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3816, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 3816, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4729,6 +5370,7 @@ description: Result of parsing poopy-shoe.kcl "unlabeled": null } ], + "commentStart": 3611, "end": 0, "start": 0, "type": "PipeExpression", @@ -4744,9 +5386,12 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 3847, "declaration": { + "commentStart": 3849, "end": 0, "id": { + "commentStart": 3849, "end": 0, "name": "sketch007", "start": 0, @@ -4757,6 +5402,7 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 3875, "end": 0, "name": "sketch004", "start": 0, @@ -4764,6 +5410,7 @@ description: Result of parsing poopy-shoe.kcl "type": "Identifier" }, { + "commentStart": 3886, "end": 0, "raw": "'END'", "start": 0, @@ -4773,11 +5420,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3861, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 3861, "end": 0, "start": 0, "type": "CallExpression", @@ -4786,8 +5435,10 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 3913, "elements": [ { + "commentStart": 3914, "end": 0, "raw": "0", "start": 0, @@ -4799,6 +5450,7 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 3917, "end": 0, "raw": "0", "start": 0, @@ -4816,6 +5468,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ArrayExpression" }, { + "commentStart": 3921, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -4823,11 +5476,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3898, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 3898, "end": 0, "start": 0, "type": "CallExpression", @@ -4838,12 +5493,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 3935, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3949, "end": 0, "name": "wallThickness", "start": 0, @@ -4853,11 +5510,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3929, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 3929, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4869,12 +5528,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 3975, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3989, "end": 0, "name": "height", "start": 0, @@ -4884,11 +5545,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 3969, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 3969, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4900,12 +5563,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 4008, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4022, "end": 0, "raw": "0", "start": 0, @@ -4919,11 +5584,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 4002, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 4002, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4933,11 +5600,13 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [], "callee": { + "commentStart": 4030, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 4030, "end": 0, "start": 0, "type": "CallExpression", @@ -4948,14 +5617,17 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 4051, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4060, "end": 0, "left": { + "commentStart": 4060, "end": 0, "name": "wallsWidth", "start": 0, @@ -4964,8 +5636,10 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 4074, "end": 0, "left": { + "commentStart": 4074, "end": 0, "raw": "2", "start": 0, @@ -4978,6 +5652,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "*", "right": { + "commentStart": 4078, "end": 0, "name": "wallThickness", "start": 0, @@ -4995,11 +5670,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 4043, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 4043, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5007,6 +5684,7 @@ description: Result of parsing poopy-shoe.kcl "unlabeled": null } ], + "commentStart": 3861, "end": 0, "start": 0, "type": "PipeExpression", @@ -5022,20 +5700,26 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 4093, "declaration": { + "commentStart": 4095, "end": 0, "id": { + "commentStart": 4095, "end": 0, "name": "customPlane3", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 4110, "end": 0, "properties": [ { + "commentStart": 4114, "end": 0, "key": { + "commentStart": 4114, "end": 0, "name": "plane", "start": 0, @@ -5044,11 +5728,14 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4122, "end": 0, "properties": [ { + "commentStart": 4128, "end": 0, "key": { + "commentStart": 4128, "end": 0, "name": "origin", "start": 0, @@ -5057,11 +5744,14 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4137, "end": 0, "properties": [ { + "commentStart": 4145, "end": 0, "key": { + "commentStart": 4145, "end": 0, "name": "x", "start": 0, @@ -5070,9 +5760,11 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4149, "end": 0, "left": { "argument": { + "commentStart": 4150, "end": 0, "raw": "1", "start": 0, @@ -5083,6 +5775,7 @@ description: Result of parsing poopy-shoe.kcl "suffix": "None" } }, + "commentStart": 4149, "end": 0, "operator": "-", "start": 0, @@ -5091,10 +5784,13 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "*", "right": { + "commentStart": 4155, "end": 0, "left": { + "commentStart": 4155, "end": 0, "left": { + "commentStart": 4155, "end": 0, "name": "backLength", "start": 0, @@ -5103,6 +5799,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 4168, "end": 0, "name": "height", "start": 0, @@ -5115,6 +5812,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "+", "right": { + "commentStart": 4177, "end": 0, "name": "wallsWidth", "start": 0, @@ -5131,8 +5829,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 4196, "end": 0, "key": { + "commentStart": 4196, "end": 0, "name": "y", "start": 0, @@ -5141,6 +5841,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4200, "end": 0, "raw": "0", "start": 0, @@ -5153,8 +5854,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 4209, "end": 0, "key": { + "commentStart": 4209, "end": 0, "name": "z", "start": 0, @@ -5163,6 +5866,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4213, "end": 0, "name": "wallThickness", "start": 0, @@ -5177,8 +5881,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 4238, "end": 0, "key": { + "commentStart": 4238, "end": 0, "name": "xAxis", "start": 0, @@ -5187,11 +5893,14 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4246, "end": 0, "properties": [ { + "commentStart": 4248, "end": 0, "key": { + "commentStart": 4248, "end": 0, "name": "x", "start": 0, @@ -5200,6 +5909,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4252, "end": 0, "raw": "0", "start": 0, @@ -5212,8 +5922,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 4255, "end": 0, "key": { + "commentStart": 4255, "end": 0, "name": "y", "start": 0, @@ -5223,6 +5935,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 4260, "end": 0, "raw": "1", "start": 0, @@ -5233,6 +5946,7 @@ description: Result of parsing poopy-shoe.kcl "suffix": "None" } }, + "commentStart": 4259, "end": 0, "operator": "-", "start": 0, @@ -5241,8 +5955,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 4263, "end": 0, "key": { + "commentStart": 4263, "end": 0, "name": "z", "start": 0, @@ -5251,6 +5967,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4267, "end": 0, "raw": "0", "start": 0, @@ -5269,8 +5986,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 4276, "end": 0, "key": { + "commentStart": 4276, "end": 0, "name": "yAxis", "start": 0, @@ -5279,11 +5998,14 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4284, "end": 0, "properties": [ { + "commentStart": 4286, "end": 0, "key": { + "commentStart": 4286, "end": 0, "name": "x", "start": 0, @@ -5292,6 +6014,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4290, "end": 0, "raw": "1", "start": 0, @@ -5304,8 +6027,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 4293, "end": 0, "key": { + "commentStart": 4293, "end": 0, "name": "y", "start": 0, @@ -5314,6 +6039,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4297, "end": 0, "raw": "0", "start": 0, @@ -5326,8 +6052,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 4300, "end": 0, "key": { + "commentStart": 4300, "end": 0, "name": "z", "start": 0, @@ -5336,6 +6064,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4304, "end": 0, "raw": "0", "start": 0, @@ -5354,8 +6083,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 4313, "end": 0, "key": { + "commentStart": 4313, "end": 0, "name": "zAxis", "start": 0, @@ -5364,11 +6095,14 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4321, "end": 0, "properties": [ { + "commentStart": 4323, "end": 0, "key": { + "commentStart": 4323, "end": 0, "name": "x", "start": 0, @@ -5377,6 +6111,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4327, "end": 0, "raw": "0", "start": 0, @@ -5389,8 +6124,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 4330, "end": 0, "key": { + "commentStart": 4330, "end": 0, "name": "y", "start": 0, @@ -5399,6 +6136,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4334, "end": 0, "raw": "0", "start": 0, @@ -5411,8 +6149,10 @@ description: Result of parsing poopy-shoe.kcl } }, { + "commentStart": 4337, "end": 0, "key": { + "commentStart": 4337, "end": 0, "name": "z", "start": 0, @@ -5421,6 +6161,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 4341, "end": 0, "raw": "1", "start": 0, @@ -5459,9 +6200,12 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { + "commentStart": 4350, "declaration": { + "commentStart": 4352, "end": 0, "id": { + "commentStart": 4352, "end": 0, "name": "sketch008", "start": 0, @@ -5472,6 +6216,7 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 4378, "end": 0, "name": "customPlane3", "start": 0, @@ -5480,11 +6225,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 4364, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 4364, "end": 0, "start": 0, "type": "CallExpression", @@ -5493,8 +6240,10 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { + "commentStart": 4412, "elements": [ { + "commentStart": 4413, "end": 0, "name": "wallThickness", "start": 0, @@ -5502,6 +6251,7 @@ description: Result of parsing poopy-shoe.kcl "type": "Identifier" }, { + "commentStart": 4428, "end": 0, "name": "wallThickness", "start": 0, @@ -5515,6 +6265,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ArrayExpression" }, { + "commentStart": 4444, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -5522,11 +6273,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 4397, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 4397, "end": 0, "start": 0, "type": "CallExpression", @@ -5537,12 +6290,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 4458, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4472, "end": 0, "name": "frontLength", "start": 0, @@ -5552,11 +6307,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 4452, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 4452, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5568,14 +6325,17 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 4496, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4505, "end": 0, "left": { + "commentStart": 4505, "end": 0, "name": "wallsWidth", "start": 0, @@ -5584,8 +6344,10 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { + "commentStart": 4519, "end": 0, "left": { + "commentStart": 4519, "end": 0, "raw": "2", "start": 0, @@ -5598,6 +6360,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "*", "right": { + "commentStart": 4523, "end": 0, "name": "wallThickness", "start": 0, @@ -5615,11 +6378,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 4490, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 4490, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5631,12 +6396,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 4550, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4564, "end": 0, "name": "wallThickness", "start": 0, @@ -5646,11 +6413,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 4544, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 4544, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5660,11 +6429,13 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [], "callee": { + "commentStart": 4584, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 4584, "end": 0, "start": 0, "type": "CallExpression", @@ -5675,6 +6446,7 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { + "commentStart": 4605, "end": 0, "name": "length", "start": 0, @@ -5682,12 +6454,14 @@ description: Result of parsing poopy-shoe.kcl }, "arg": { "argument": { + "commentStart": 4615, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 4614, "end": 0, "operator": "-", "start": 0, @@ -5697,11 +6471,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { + "commentStart": 4597, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 4597, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5709,6 +6485,7 @@ description: Result of parsing poopy-shoe.kcl "unlabeled": null } ], + "commentStart": 4364, "end": 0, "start": 0, "type": "PipeExpression", @@ -5724,20 +6501,32 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 92, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Poopy Shoe", + "// poop shute for bambu labs printer - optimized for printing.", + "", + "", + "// Set units" + ], "properties": [ { + "commentStart": 101, "end": 0, "key": { + "commentStart": 101, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -5746,6 +6535,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 121, "end": 0, "name": "in", "start": 0, @@ -5762,6 +6552,7 @@ description: Result of parsing poopy-shoe.kcl "nonCodeNodes": { "6": [ { + "commentStart": 244, "end": 0, "start": 0, "type": "NonCodeNode", @@ -5772,6 +6563,7 @@ description: Result of parsing poopy-shoe.kcl ], "8": [ { + "commentStart": 1045, "end": 0, "start": 0, "type": "NonCodeNode", @@ -5782,6 +6574,7 @@ description: Result of parsing poopy-shoe.kcl ], "9": [ { + "commentStart": 1743, "end": 0, "start": 0, "type": "NonCodeNode", @@ -5792,6 +6585,7 @@ description: Result of parsing poopy-shoe.kcl ], "11": [ { + "commentStart": 2209, "end": 0, "start": 0, "type": "NonCodeNode", @@ -5802,6 +6596,7 @@ description: Result of parsing poopy-shoe.kcl ], "12": [ { + "commentStart": 2938, "end": 0, "start": 0, "type": "NonCodeNode", @@ -5812,6 +6607,7 @@ description: Result of parsing poopy-shoe.kcl ], "14": [ { + "commentStart": 3597, "end": 0, "start": 0, "type": "NonCodeNode", @@ -5822,6 +6618,7 @@ description: Result of parsing poopy-shoe.kcl ], "15": [ { + "commentStart": 3847, "end": 0, "start": 0, "type": "NonCodeNode", @@ -5832,6 +6629,7 @@ description: Result of parsing poopy-shoe.kcl ], "16": [ { + "commentStart": 4093, "end": 0, "start": 0, "type": "NonCodeNode", @@ -5842,6 +6640,7 @@ description: Result of parsing poopy-shoe.kcl ], "17": [ { + "commentStart": 4350, "end": 0, "start": 0, "type": "NonCodeNode", @@ -5853,44 +6652,7 @@ description: Result of parsing poopy-shoe.kcl }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Poopy Shoe", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "poop shute for bambu labs printer - optimized for printing.", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units", - "style": "line" - } - }, - { + "commentStart": 124, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/kcl_samples/poopy-shoe/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/poopy-shoe/program_memory.snap index 4a5d28a24..9895b3548 100644 --- a/rust/kcl-lib/tests/kcl_samples/poopy-shoe/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/poopy-shoe/program_memory.snap @@ -627,6 +627,7 @@ description: Variables in memory after executing poopy-shoe.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 417, "end": 423, "start": 417, "type": "TagDeclarator", @@ -745,6 +746,7 @@ description: Variables in memory after executing poopy-shoe.kcl 0.0 ], "tag": { + "commentStart": 417, "end": 423, "start": 417, "type": "TagDeclarator", @@ -1091,6 +1093,7 @@ description: Variables in memory after executing poopy-shoe.kcl 0.0 ], "tag": { + "commentStart": 417, "end": 423, "start": 417, "type": "TagDeclarator", @@ -1394,6 +1397,7 @@ description: Variables in memory after executing poopy-shoe.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1218, "end": 1224, "start": 1218, "type": "TagDeclarator", @@ -1512,6 +1516,7 @@ description: Variables in memory after executing poopy-shoe.kcl 0.0 ], "tag": { + "commentStart": 1218, "end": 1224, "start": 1218, "type": "TagDeclarator", @@ -2049,6 +2054,7 @@ description: Variables in memory after executing poopy-shoe.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2894, "end": 2900, "start": 2894, "type": "TagDeclarator", @@ -2290,6 +2296,7 @@ description: Variables in memory after executing poopy-shoe.kcl 0.0 ], "tag": { + "commentStart": 2894, "end": 2900, "start": 2894, "type": "TagDeclarator", @@ -2342,6 +2349,7 @@ description: Variables in memory after executing poopy-shoe.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1218, "end": 1224, "start": 1218, "type": "TagDeclarator", @@ -2460,6 +2468,7 @@ description: Variables in memory after executing poopy-shoe.kcl 0.0 ], "tag": { + "commentStart": 1218, "end": 1224, "start": 1218, "type": "TagDeclarator", @@ -2832,6 +2841,7 @@ description: Variables in memory after executing poopy-shoe.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 3540, "end": 3546, "start": 3540, "type": "TagDeclarator", @@ -2947,6 +2957,7 @@ description: Variables in memory after executing poopy-shoe.kcl 1.0 ], "tag": { + "commentStart": 3540, "end": 3546, "start": 3540, "type": "TagDeclarator", @@ -3223,6 +3234,7 @@ description: Variables in memory after executing poopy-shoe.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 3540, "end": 3546, "start": 3540, "type": "TagDeclarator", @@ -3338,6 +3350,7 @@ description: Variables in memory after executing poopy-shoe.kcl 1.0 ], "tag": { + "commentStart": 3540, "end": 3546, "start": 3540, "type": "TagDeclarator", @@ -3698,6 +3711,7 @@ description: Variables in memory after executing poopy-shoe.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2894, "end": 2900, "start": 2894, "type": "TagDeclarator", @@ -3939,6 +3953,7 @@ description: Variables in memory after executing poopy-shoe.kcl 0.0 ], "tag": { + "commentStart": 2894, "end": 2900, "start": 2894, "type": "TagDeclarator", @@ -3991,6 +4006,7 @@ description: Variables in memory after executing poopy-shoe.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1218, "end": 1224, "start": 1218, "type": "TagDeclarator", @@ -4109,6 +4125,7 @@ description: Variables in memory after executing poopy-shoe.kcl 0.0 ], "tag": { + "commentStart": 1218, "end": 1224, "start": 1218, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/kcl_samples/router-template-cross-bar/ast.snap b/rust/kcl-lib/tests/kcl_samples/router-template-cross-bar/ast.snap index 61982b1ec..149405fe4 100644 --- a/rust/kcl-lib/tests/kcl_samples/router-template-cross-bar/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/router-template-cross-bar/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing router-template-cross-bar.kcl "Ok": { "body": [ { + "commentStart": 131, "declaration": { + "commentStart": 133, "end": 0, "id": { + "commentStart": 133, "end": 0, "name": "routerDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 150, "end": 0, "raw": "12.7", "start": 0, @@ -35,19 +39,25 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" }, { + "commentStart": 155, "declaration": { + "commentStart": 155, "end": 0, "id": { + "commentStart": 155, "end": 0, "name": "templateDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 174, "end": 0, "left": { + "commentStart": 174, "end": 0, "left": { + "commentStart": 174, "end": 0, "raw": "11", "start": 0, @@ -60,6 +70,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "/", "right": { + "commentStart": 179, "end": 0, "raw": "16", "start": 0, @@ -78,11 +89,13 @@ description: Result of parsing router-template-cross-bar.kcl "right": { "arguments": [], "callee": { + "commentStart": 184, "end": 0, "name": "inch", "start": 0, "type": "Identifier" }, + "commentStart": 184, "end": 0, "start": 0, "type": "CallExpression", @@ -102,21 +115,28 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" }, { + "commentStart": 191, "declaration": { + "commentStart": 191, "end": 0, "id": { + "commentStart": 191, "end": 0, "name": "templateGap", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 206, "end": 0, "left": { + "commentStart": 206, "end": 0, "left": { + "commentStart": 206, "end": 0, "left": { + "commentStart": 206, "end": 0, "name": "templateDiameter", "start": 0, @@ -125,6 +145,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "-", "right": { + "commentStart": 225, "end": 0, "name": "routerDiameter", "start": 0, @@ -137,6 +158,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "/", "right": { + "commentStart": 243, "end": 0, "raw": "2", "start": 0, @@ -153,6 +175,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "-", "right": { + "commentStart": 247, "end": 0, "raw": "0.5", "start": 0, @@ -177,17 +200,22 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" }, { + "commentStart": 251, "declaration": { + "commentStart": 251, "end": 0, "id": { + "commentStart": 251, "end": 0, "name": "slateWidthHalf", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 268, "end": 0, "left": { + "commentStart": 268, "end": 0, "raw": "41.5", "start": 0, @@ -200,6 +228,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "/", "right": { + "commentStart": 275, "end": 0, "raw": "2", "start": 0, @@ -224,17 +253,22 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" }, { + "commentStart": 277, "declaration": { + "commentStart": 277, "end": 0, "id": { + "commentStart": 277, "end": 0, "name": "minClampingDistance", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 299, "end": 0, "left": { + "commentStart": 299, "end": 0, "raw": "50", "start": 0, @@ -247,6 +281,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "+", "right": { + "commentStart": 304, "end": 0, "raw": "30", "start": 0, @@ -271,15 +306,19 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" }, { + "commentStart": 307, "declaration": { + "commentStart": 307, "end": 0, "id": { + "commentStart": 307, "end": 0, "name": "templateThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 327, "end": 0, "raw": "10", "start": 0, @@ -300,15 +339,19 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" }, { + "commentStart": 330, "declaration": { + "commentStart": 330, "end": 0, "id": { + "commentStart": 330, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 339, "end": 0, "raw": "10", "start": 0, @@ -329,15 +372,19 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" }, { + "commentStart": 342, "declaration": { + "commentStart": 342, "end": 0, "id": { + "commentStart": 342, "end": 0, "name": "depth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 350, "end": 0, "raw": "30", "start": 0, @@ -358,19 +405,25 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" }, { + "commentStart": 353, "declaration": { + "commentStart": 353, "end": 0, "id": { + "commentStart": 353, "end": 0, "name": "distanceToInsideEdge", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 376, "end": 0, "left": { + "commentStart": 376, "end": 0, "left": { + "commentStart": 376, "end": 0, "name": "slateWidthHalf", "start": 0, @@ -379,6 +432,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "+", "right": { + "commentStart": 393, "end": 0, "name": "templateThickness", "start": 0, @@ -391,6 +445,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "+", "right": { + "commentStart": 413, "end": 0, "name": "templateGap", "start": 0, @@ -411,9 +466,12 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" }, { + "commentStart": 425, "declaration": { + "commentStart": 425, "end": 0, "id": { + "commentStart": 425, "end": 0, "name": "sketch001", "start": 0, @@ -424,6 +482,7 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 451, "end": 0, "raw": "'XZ'", "start": 0, @@ -433,11 +492,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 437, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 437, "end": 0, "start": 0, "type": "CallExpression", @@ -446,8 +507,10 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 477, "elements": [ { + "commentStart": 478, "end": 0, "name": "ZERO", "start": 0, @@ -455,8 +518,10 @@ description: Result of parsing router-template-cross-bar.kcl "type": "Identifier" }, { + "commentStart": 484, "end": 0, "left": { + "commentStart": 484, "end": 0, "name": "depth", "start": 0, @@ -465,6 +530,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "+", "right": { + "commentStart": 492, "end": 0, "name": "templateGap", "start": 0, @@ -482,6 +548,7 @@ description: Result of parsing router-template-cross-bar.kcl "type": "ArrayExpression" }, { + "commentStart": 506, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -489,11 +556,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 462, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 462, "end": 0, "start": 0, "type": "CallExpression", @@ -504,14 +573,17 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 520, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 529, "end": 0, "left": { + "commentStart": 529, "end": 0, "name": "slateWidthHalf", "start": 0, @@ -520,6 +592,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "-", "right": { + "commentStart": 546, "end": 0, "name": "radius", "start": 0, @@ -534,12 +607,14 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 554, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 560, "end": 0, "start": 0, "type": "TagDeclarator", @@ -549,11 +624,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 514, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 514, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -563,11 +640,14 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 577, "end": 0, "properties": [ { + "commentStart": 586, "end": 0, "key": { + "commentStart": 586, "end": 0, "name": "angleEnd", "start": 0, @@ -576,6 +656,7 @@ description: Result of parsing router-template-cross-bar.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 597, "end": 0, "raw": "0", "start": 0, @@ -588,8 +669,10 @@ description: Result of parsing router-template-cross-bar.kcl } }, { + "commentStart": 607, "end": 0, "key": { + "commentStart": 607, "end": 0, "name": "angleStart", "start": 0, @@ -598,6 +681,7 @@ description: Result of parsing router-template-cross-bar.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 620, "end": 0, "raw": "90", "start": 0, @@ -610,8 +694,10 @@ description: Result of parsing router-template-cross-bar.kcl } }, { + "commentStart": 631, "end": 0, "key": { + "commentStart": 631, "end": 0, "name": "radius", "start": 0, @@ -620,8 +706,10 @@ description: Result of parsing router-template-cross-bar.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 640, "end": 0, "left": { + "commentStart": 640, "end": 0, "raw": "10", "start": 0, @@ -634,6 +722,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "+", "right": { + "commentStart": 645, "end": 0, "name": "templateGap", "start": 0, @@ -651,12 +740,14 @@ description: Result of parsing router-template-cross-bar.kcl "type": "ObjectExpression" }, { + "commentStart": 665, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 668, "end": 0, "start": 0, "type": "TagDeclarator", @@ -665,11 +756,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 573, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 573, "end": 0, "start": 0, "type": "CallExpression", @@ -680,6 +773,7 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 687, "end": 0, "name": "endAbsolute", "start": 0, @@ -687,12 +781,14 @@ description: Result of parsing router-template-cross-bar.kcl }, "arg": { "argument": { + "commentStart": 702, "end": 0, "name": "templateThickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 701, "end": 0, "operator": "-", "start": 0, @@ -703,12 +799,14 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 721, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 727, "end": 0, "start": 0, "type": "TagDeclarator", @@ -718,11 +816,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 681, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 681, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -734,12 +834,14 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 746, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 755, "end": 0, "name": "templateThickness", "start": 0, @@ -750,12 +852,14 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 774, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 780, "end": 0, "start": 0, "type": "TagDeclarator", @@ -765,11 +869,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 740, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 740, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -781,20 +887,25 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 799, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 814, "end": 0, "left": { + "commentStart": 814, "end": 0, "left": { + "commentStart": 814, "end": 0, "left": { "arguments": [ { + "commentStart": 822, "end": 0, "name": "seg01", "start": 0, @@ -803,11 +914,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 814, "end": 0, "name": "segEndY", "start": 0, "type": "Identifier" }, + "commentStart": 814, "end": 0, "start": 0, "type": "CallExpression", @@ -815,6 +928,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "+", "right": { + "commentStart": 831, "end": 0, "name": "templateThickness", "start": 0, @@ -827,6 +941,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "/", "right": { + "commentStart": 852, "end": 0, "raw": "2", "start": 0, @@ -843,6 +958,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "-", "right": { + "commentStart": 856, "end": 0, "name": "templateThickness", "start": 0, @@ -857,12 +973,14 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 875, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 881, "end": 0, "start": 0, "type": "TagDeclarator", @@ -872,11 +990,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 793, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 793, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -888,16 +1008,19 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 900, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 914, "end": 0, "left": { "arguments": [ { + "commentStart": 922, "end": 0, "name": "seg03", "start": 0, @@ -906,11 +1029,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 914, "end": 0, "name": "segEndX", "start": 0, "type": "Identifier" }, + "commentStart": 914, "end": 0, "start": 0, "type": "CallExpression", @@ -918,6 +1043,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "+", "right": { + "commentStart": 931, "end": 0, "name": "minClampingDistance", "start": 0, @@ -932,12 +1058,14 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 952, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 958, "end": 0, "start": 0, "type": "TagDeclarator", @@ -947,11 +1075,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 894, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 894, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -963,14 +1093,17 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 977, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 986, "end": 0, "left": { + "commentStart": 986, "end": 0, "name": "templateThickness", "start": 0, @@ -979,6 +1112,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "*", "right": { + "commentStart": 1006, "end": 0, "raw": "2", "start": 0, @@ -997,12 +1131,14 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1009, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1015, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1012,11 +1148,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 971, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 971, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1028,16 +1166,19 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1034, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1048, "end": 0, "left": { "arguments": [ { + "commentStart": 1056, "end": 0, "name": "seg02", "start": 0, @@ -1046,11 +1187,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1048, "end": 0, "name": "segEndX", "start": 0, "type": "Identifier" }, + "commentStart": 1048, "end": 0, "start": 0, "type": "CallExpression", @@ -1058,6 +1201,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "+", "right": { + "commentStart": 1065, "end": 0, "raw": "0", "start": 0, @@ -1076,12 +1220,14 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1068, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1074, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1091,11 +1237,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1028, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1028, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1107,16 +1255,19 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1093, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1107, "end": 0, "left": { "arguments": [ { + "commentStart": 1115, "end": 0, "name": "seg01", "start": 0, @@ -1125,11 +1276,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1107, "end": 0, "name": "segEndY", "start": 0, "type": "Identifier" }, + "commentStart": 1107, "end": 0, "start": 0, "type": "CallExpression", @@ -1137,6 +1290,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "+", "right": { + "commentStart": 1124, "end": 0, "name": "templateThickness", "start": 0, @@ -1151,12 +1305,14 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1143, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1149, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1166,11 +1322,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1087, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1087, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1182,12 +1340,14 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1168, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1182, "end": 0, "name": "ZERO", "start": 0, @@ -1198,12 +1358,14 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1188, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1194, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1213,11 +1375,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1162, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1162, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1229,6 +1393,7 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1213, "end": 0, "name": "length", "start": 0, @@ -1238,6 +1403,7 @@ description: Result of parsing router-template-cross-bar.kcl "argument": { "arguments": [ { + "commentStart": 1230, "end": 0, "name": "seg04", "start": 0, @@ -1246,16 +1412,19 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1223, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1223, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 1222, "end": 0, "operator": "-", "start": 0, @@ -1265,11 +1434,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1207, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1207, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1281,6 +1452,7 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1249, "end": 0, "name": "length", "start": 0, @@ -1290,6 +1462,7 @@ description: Result of parsing router-template-cross-bar.kcl "argument": { "arguments": [ { + "commentStart": 1266, "end": 0, "name": "seg10", "start": 0, @@ -1298,16 +1471,19 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1259, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1259, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 1258, "end": 0, "operator": "-", "start": 0, @@ -1317,11 +1493,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1243, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1243, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1333,6 +1511,7 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1285, "end": 0, "name": "length", "start": 0, @@ -1342,6 +1521,7 @@ description: Result of parsing router-template-cross-bar.kcl "argument": { "arguments": [ { + "commentStart": 1302, "end": 0, "name": "seg05", "start": 0, @@ -1350,16 +1530,19 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1295, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1295, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 1294, "end": 0, "operator": "-", "start": 0, @@ -1369,11 +1552,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1279, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1279, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1385,6 +1570,7 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1321, "end": 0, "name": "length", "start": 0, @@ -1394,6 +1580,7 @@ description: Result of parsing router-template-cross-bar.kcl "argument": { "arguments": [ { + "commentStart": 1338, "end": 0, "name": "seg08", "start": 0, @@ -1402,16 +1589,19 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1331, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1331, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 1330, "end": 0, "operator": "-", "start": 0, @@ -1421,11 +1611,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1315, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1315, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1437,6 +1629,7 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1357, "end": 0, "name": "length", "start": 0, @@ -1445,6 +1638,7 @@ description: Result of parsing router-template-cross-bar.kcl "arg": { "arguments": [ { + "commentStart": 1373, "end": 0, "name": "seg06", "start": 0, @@ -1453,11 +1647,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1366, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1366, "end": 0, "start": 0, "type": "CallExpression", @@ -1466,11 +1662,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1351, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1351, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1482,6 +1680,7 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1392, "end": 0, "name": "length", "start": 0, @@ -1491,6 +1690,7 @@ description: Result of parsing router-template-cross-bar.kcl "argument": { "arguments": [ { + "commentStart": 1409, "end": 0, "name": "seg02", "start": 0, @@ -1499,16 +1699,19 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1402, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1402, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 1401, "end": 0, "operator": "-", "start": 0, @@ -1518,11 +1721,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1386, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1386, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1534,6 +1739,7 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1428, "end": 0, "name": "length", "start": 0, @@ -1542,6 +1748,7 @@ description: Result of parsing router-template-cross-bar.kcl "arg": { "arguments": [ { + "commentStart": 1444, "end": 0, "name": "seg07", "start": 0, @@ -1550,11 +1757,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1437, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1437, "end": 0, "start": 0, "type": "CallExpression", @@ -1563,11 +1772,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1422, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1422, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1579,6 +1790,7 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1463, "end": 0, "name": "length", "start": 0, @@ -1587,6 +1799,7 @@ description: Result of parsing router-template-cross-bar.kcl "arg": { "arguments": [ { + "commentStart": 1479, "end": 0, "name": "seg03", "start": 0, @@ -1595,11 +1808,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1472, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1472, "end": 0, "start": 0, "type": "CallExpression", @@ -1608,11 +1823,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1457, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1457, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1622,11 +1839,14 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 1496, "end": 0, "properties": [ { + "commentStart": 1505, "end": 0, "key": { + "commentStart": 1505, "end": 0, "name": "angleEnd", "start": 0, @@ -1635,6 +1855,7 @@ description: Result of parsing router-template-cross-bar.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1516, "end": 0, "raw": "90", "start": 0, @@ -1647,8 +1868,10 @@ description: Result of parsing router-template-cross-bar.kcl } }, { + "commentStart": 1527, "end": 0, "key": { + "commentStart": 1527, "end": 0, "name": "angleStart", "start": 0, @@ -1657,6 +1880,7 @@ description: Result of parsing router-template-cross-bar.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1540, "end": 0, "raw": "180", "start": 0, @@ -1669,8 +1893,10 @@ description: Result of parsing router-template-cross-bar.kcl } }, { + "commentStart": 1552, "end": 0, "key": { + "commentStart": 1552, "end": 0, "name": "radius", "start": 0, @@ -1679,8 +1905,10 @@ description: Result of parsing router-template-cross-bar.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1561, "end": 0, "left": { + "commentStart": 1561, "end": 0, "raw": "10", "start": 0, @@ -1693,6 +1921,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "+", "right": { + "commentStart": 1566, "end": 0, "name": "templateGap", "start": 0, @@ -1710,6 +1939,7 @@ description: Result of parsing router-template-cross-bar.kcl "type": "ObjectExpression" }, { + "commentStart": 1586, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1717,11 +1947,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1492, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 1492, "end": 0, "start": 0, "type": "CallExpression", @@ -1732,16 +1964,19 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1599, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1613, "elements": [ { "arguments": [ { + "commentStart": 1628, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1749,11 +1984,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1614, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 1614, "end": 0, "start": 0, "type": "CallExpression", @@ -1762,6 +1999,7 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 1646, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1769,11 +2007,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1632, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 1632, "end": 0, "start": 0, "type": "CallExpression", @@ -1788,11 +2028,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1594, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1594, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1802,17 +2044,20 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [], "callee": { + "commentStart": 1656, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1656, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 437, "end": 0, "start": 0, "type": "PipeExpression", @@ -1828,9 +2073,12 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" }, { + "commentStart": 1664, "declaration": { + "commentStart": 1664, "end": 0, "id": { + "commentStart": 1664, "end": 0, "name": "extrude001", "start": 0, @@ -1841,12 +2089,14 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 1696, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1705, "end": 0, "raw": "5", "start": 0, @@ -1860,16 +2110,19 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1677, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1677, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1685, "end": 0, "name": "sketch001", "start": 0, @@ -1887,9 +2140,12 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" }, { + "commentStart": 1707, "declaration": { + "commentStart": 1709, "end": 0, "id": { + "commentStart": 1709, "end": 0, "name": "sketch003", "start": 0, @@ -1900,6 +2156,7 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 1735, "end": 0, "name": "extrude001", "start": 0, @@ -1907,6 +2164,7 @@ description: Result of parsing router-template-cross-bar.kcl "type": "Identifier" }, { + "commentStart": 1747, "end": 0, "raw": "'START'", "start": 0, @@ -1916,11 +2174,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1721, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1721, "end": 0, "start": 0, "type": "CallExpression", @@ -1929,8 +2189,10 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 1776, "elements": [ { + "commentStart": 1777, "end": 0, "name": "distanceToInsideEdge", "start": 0, @@ -1938,6 +2200,7 @@ description: Result of parsing router-template-cross-bar.kcl "type": "Identifier" }, { + "commentStart": 1799, "end": 0, "raw": "0", "start": 0, @@ -1955,6 +2218,7 @@ description: Result of parsing router-template-cross-bar.kcl "type": "ArrayExpression" }, { + "commentStart": 1803, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1962,11 +2226,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1761, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1761, "end": 0, "start": 0, "type": "CallExpression", @@ -1975,8 +2241,10 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 1822, "elements": [ { + "commentStart": 1823, "end": 0, "raw": "180", "start": 0, @@ -1988,6 +2256,7 @@ description: Result of parsing router-template-cross-bar.kcl } }, { + "commentStart": 1828, "end": 0, "name": "templateThickness", "start": 0, @@ -2001,12 +2270,14 @@ description: Result of parsing router-template-cross-bar.kcl "type": "ArrayExpression" }, { + "commentStart": 1848, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1851, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2015,11 +2286,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1811, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1811, "end": 0, "start": 0, "type": "CallExpression", @@ -2028,12 +2301,15 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 1890, "elements": [ { + "commentStart": 1899, "end": 0, "left": { "arguments": [ { + "commentStart": 1906, "end": 0, "name": "rectangleSegmentA002", "start": 0, @@ -2042,11 +2318,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1899, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 1899, "end": 0, "start": 0, "type": "CallExpression", @@ -2054,6 +2332,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "+", "right": { + "commentStart": 1930, "end": 0, "raw": "90", "start": 0, @@ -2069,6 +2348,7 @@ description: Result of parsing router-template-cross-bar.kcl "type": "BinaryExpression" }, { + "commentStart": 1941, "end": 0, "name": "templateThickness", "start": 0, @@ -2082,12 +2362,14 @@ description: Result of parsing router-template-cross-bar.kcl "type": "ArrayExpression" }, { + "commentStart": 1967, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1970, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2096,11 +2378,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1879, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1879, "end": 0, "start": 0, "type": "CallExpression", @@ -2109,10 +2393,12 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 2009, "elements": [ { "arguments": [ { + "commentStart": 2025, "end": 0, "name": "rectangleSegmentA002", "start": 0, @@ -2121,11 +2407,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2018, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 2018, "end": 0, "start": 0, "type": "CallExpression", @@ -2135,6 +2423,7 @@ description: Result of parsing router-template-cross-bar.kcl "argument": { "arguments": [ { + "commentStart": 2063, "end": 0, "name": "rectangleSegmentA002", "start": 0, @@ -2143,16 +2432,19 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2056, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 2056, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 2055, "end": 0, "operator": "-", "start": 0, @@ -2166,12 +2458,14 @@ description: Result of parsing router-template-cross-bar.kcl "type": "ArrayExpression" }, { + "commentStart": 2093, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 2096, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2180,11 +2474,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 1998, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1998, "end": 0, "start": 0, "type": "CallExpression", @@ -2195,16 +2491,19 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 2129, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2143, "elements": [ { "arguments": [ { + "commentStart": 2158, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2212,11 +2511,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2144, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 2144, "end": 0, "start": 0, "type": "CallExpression", @@ -2225,6 +2526,7 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 2176, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2232,11 +2534,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2162, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 2162, "end": 0, "start": 0, "type": "CallExpression", @@ -2251,11 +2555,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2124, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2124, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2265,17 +2571,20 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [], "callee": { + "commentStart": 2186, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2186, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1721, "end": 0, "start": 0, "type": "PipeExpression", @@ -2291,9 +2600,12 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" }, { + "commentStart": 2194, "declaration": { + "commentStart": 2194, "end": 0, "id": { + "commentStart": 2194, "end": 0, "name": "extrude003", "start": 0, @@ -2304,12 +2616,14 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 2226, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2235, "end": 0, "raw": "13", "start": 0, @@ -2323,16 +2637,19 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2207, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2207, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2215, "end": 0, "name": "sketch003", "start": 0, @@ -2350,9 +2667,12 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" }, { + "commentStart": 2238, "declaration": { + "commentStart": 2240, "end": 0, "id": { + "commentStart": 2240, "end": 0, "name": "sketch002", "start": 0, @@ -2363,6 +2683,7 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 2266, "end": 0, "name": "extrude001", "start": 0, @@ -2370,6 +2691,7 @@ description: Result of parsing router-template-cross-bar.kcl "type": "Identifier" }, { + "commentStart": 2278, "end": 0, "raw": "'START'", "start": 0, @@ -2379,11 +2701,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2252, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2252, "end": 0, "start": 0, "type": "CallExpression", @@ -2392,15 +2716,18 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 2307, "elements": [ { "argument": { + "commentStart": 2309, "end": 0, "name": "distanceToInsideEdge", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2308, "end": 0, "operator": "-", "start": 0, @@ -2408,6 +2735,7 @@ description: Result of parsing router-template-cross-bar.kcl "type": "UnaryExpression" }, { + "commentStart": 2331, "end": 0, "raw": "0", "start": 0, @@ -2425,6 +2753,7 @@ description: Result of parsing router-template-cross-bar.kcl "type": "ArrayExpression" }, { + "commentStart": 2335, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2432,11 +2761,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2292, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2292, "end": 0, "start": 0, "type": "CallExpression", @@ -2445,8 +2776,10 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 2354, "elements": [ { + "commentStart": 2355, "end": 0, "raw": "0", "start": 0, @@ -2458,6 +2791,7 @@ description: Result of parsing router-template-cross-bar.kcl } }, { + "commentStart": 2358, "end": 0, "name": "templateThickness", "start": 0, @@ -2471,12 +2805,14 @@ description: Result of parsing router-template-cross-bar.kcl "type": "ArrayExpression" }, { + "commentStart": 2378, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 2381, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2485,11 +2821,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2343, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2343, "end": 0, "start": 0, "type": "CallExpression", @@ -2498,12 +2836,15 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 2420, "elements": [ { + "commentStart": 2429, "end": 0, "left": { "arguments": [ { + "commentStart": 2436, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -2512,11 +2853,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2429, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 2429, "end": 0, "start": 0, "type": "CallExpression", @@ -2524,6 +2867,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "-", "right": { + "commentStart": 2460, "end": 0, "raw": "90", "start": 0, @@ -2539,6 +2883,7 @@ description: Result of parsing router-template-cross-bar.kcl "type": "BinaryExpression" }, { + "commentStart": 2471, "end": 0, "name": "templateThickness", "start": 0, @@ -2552,12 +2897,14 @@ description: Result of parsing router-template-cross-bar.kcl "type": "ArrayExpression" }, { + "commentStart": 2497, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 2500, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2566,11 +2913,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2409, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2409, "end": 0, "start": 0, "type": "CallExpression", @@ -2579,10 +2928,12 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 2539, "elements": [ { "arguments": [ { + "commentStart": 2555, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -2591,11 +2942,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2548, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 2548, "end": 0, "start": 0, "type": "CallExpression", @@ -2605,6 +2958,7 @@ description: Result of parsing router-template-cross-bar.kcl "argument": { "arguments": [ { + "commentStart": 2593, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -2613,16 +2967,19 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2586, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 2586, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 2585, "end": 0, "operator": "-", "start": 0, @@ -2636,12 +2993,14 @@ description: Result of parsing router-template-cross-bar.kcl "type": "ArrayExpression" }, { + "commentStart": 2623, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 2626, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2650,11 +3009,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2528, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2528, "end": 0, "start": 0, "type": "CallExpression", @@ -2665,16 +3026,19 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 2659, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2673, "elements": [ { "arguments": [ { + "commentStart": 2688, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2682,11 +3046,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2674, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 2674, "end": 0, "start": 0, "type": "CallExpression", @@ -2695,6 +3061,7 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 2706, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2702,11 +3069,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2692, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 2692, "end": 0, "start": 0, "type": "CallExpression", @@ -2721,11 +3090,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2654, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2654, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2735,17 +3106,20 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [], "callee": { + "commentStart": 2716, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2716, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 2252, "end": 0, "start": 0, "type": "PipeExpression", @@ -2761,9 +3135,12 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" }, { + "commentStart": 2723, "declaration": { + "commentStart": 2725, "end": 0, "id": { + "commentStart": 2725, "end": 0, "name": "extrude002", "start": 0, @@ -2774,12 +3151,14 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 2757, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2766, "end": 0, "raw": "13", "start": 0, @@ -2793,16 +3172,19 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2738, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2738, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2746, "end": 0, "name": "sketch002", "start": 0, @@ -2820,9 +3202,12 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" }, { + "commentStart": 2769, "declaration": { + "commentStart": 2771, "end": 0, "id": { + "commentStart": 2771, "end": 0, "name": "sketch004", "start": 0, @@ -2833,6 +3218,7 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 2797, "end": 0, "name": "extrude002", "start": 0, @@ -2840,6 +3226,7 @@ description: Result of parsing router-template-cross-bar.kcl "type": "Identifier" }, { + "commentStart": 2809, "end": 0, "raw": "'END'", "start": 0, @@ -2849,11 +3236,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2783, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2783, "end": 0, "start": 0, "type": "CallExpression", @@ -2862,15 +3251,18 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 2836, "elements": [ { "argument": { + "commentStart": 2838, "end": 0, "name": "distanceToInsideEdge", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2837, "end": 0, "operator": "-", "start": 0, @@ -2878,6 +3270,7 @@ description: Result of parsing router-template-cross-bar.kcl "type": "UnaryExpression" }, { + "commentStart": 2860, "end": 0, "raw": "0", "start": 0, @@ -2895,6 +3288,7 @@ description: Result of parsing router-template-cross-bar.kcl "type": "ArrayExpression" }, { + "commentStart": 2864, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2902,11 +3296,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2821, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2821, "end": 0, "start": 0, "type": "CallExpression", @@ -2915,8 +3311,10 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 2883, "elements": [ { + "commentStart": 2884, "end": 0, "raw": "0", "start": 0, @@ -2928,8 +3326,10 @@ description: Result of parsing router-template-cross-bar.kcl } }, { + "commentStart": 2887, "end": 0, "left": { + "commentStart": 2887, "end": 0, "name": "distanceToInsideEdge", "start": 0, @@ -2938,6 +3338,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "*", "right": { + "commentStart": 2910, "end": 0, "raw": "2", "start": 0, @@ -2959,12 +3360,14 @@ description: Result of parsing router-template-cross-bar.kcl "type": "ArrayExpression" }, { + "commentStart": 2914, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 2917, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2973,11 +3376,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2872, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2872, "end": 0, "start": 0, "type": "CallExpression", @@ -2986,12 +3391,15 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 2956, "elements": [ { + "commentStart": 2965, "end": 0, "left": { "arguments": [ { + "commentStart": 2972, "end": 0, "name": "rectangleSegmentA003", "start": 0, @@ -3000,11 +3408,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2965, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 2965, "end": 0, "start": 0, "type": "CallExpression", @@ -3012,6 +3422,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "operator": "-", "right": { + "commentStart": 2996, "end": 0, "raw": "90", "start": 0, @@ -3027,6 +3438,7 @@ description: Result of parsing router-template-cross-bar.kcl "type": "BinaryExpression" }, { + "commentStart": 3007, "end": 0, "name": "templateThickness", "start": 0, @@ -3040,12 +3452,14 @@ description: Result of parsing router-template-cross-bar.kcl "type": "ArrayExpression" }, { + "commentStart": 3033, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 3036, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3054,11 +3468,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 2945, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2945, "end": 0, "start": 0, "type": "CallExpression", @@ -3067,10 +3483,12 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 3075, "elements": [ { "arguments": [ { + "commentStart": 3091, "end": 0, "name": "rectangleSegmentA003", "start": 0, @@ -3079,11 +3497,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 3084, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 3084, "end": 0, "start": 0, "type": "CallExpression", @@ -3093,6 +3513,7 @@ description: Result of parsing router-template-cross-bar.kcl "argument": { "arguments": [ { + "commentStart": 3129, "end": 0, "name": "rectangleSegmentA003", "start": 0, @@ -3101,16 +3522,19 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 3122, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 3122, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 3121, "end": 0, "operator": "-", "start": 0, @@ -3124,12 +3548,14 @@ description: Result of parsing router-template-cross-bar.kcl "type": "ArrayExpression" }, { + "commentStart": 3159, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 3162, "end": 0, "start": 0, "type": "TagDeclarator", @@ -3138,11 +3564,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 3064, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 3064, "end": 0, "start": 0, "type": "CallExpression", @@ -3153,16 +3581,19 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 3195, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3209, "elements": [ { "arguments": [ { + "commentStart": 3224, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3170,11 +3601,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 3210, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 3210, "end": 0, "start": 0, "type": "CallExpression", @@ -3183,6 +3616,7 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [ { + "commentStart": 3242, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -3190,11 +3624,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 3228, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 3228, "end": 0, "start": 0, "type": "CallExpression", @@ -3209,11 +3645,13 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 3190, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3190, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3223,17 +3661,20 @@ description: Result of parsing router-template-cross-bar.kcl { "arguments": [], "callee": { + "commentStart": 3252, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 3252, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 2783, "end": 0, "start": 0, "type": "PipeExpression", @@ -3249,9 +3690,12 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" }, { + "commentStart": 3260, "declaration": { + "commentStart": 3260, "end": 0, "id": { + "commentStart": 3260, "end": 0, "name": "extrude004", "start": 0, @@ -3262,12 +3706,14 @@ description: Result of parsing router-template-cross-bar.kcl { "type": "LabeledArg", "label": { + "commentStart": 3292, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3301, "end": 0, "raw": "4", "start": 0, @@ -3281,16 +3727,19 @@ description: Result of parsing router-template-cross-bar.kcl } ], "callee": { + "commentStart": 3273, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 3273, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 3281, "end": 0, "name": "sketch004", "start": 0, @@ -3308,20 +3757,32 @@ description: Result of parsing router-template-cross-bar.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 99, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Router template for a cross bar", + "// A guide for routing a notch into a cross bar.", + "", + "", + "// Set Units" + ], "properties": [ { + "commentStart": 108, "end": 0, "key": { + "commentStart": 108, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -3330,6 +3791,7 @@ description: Result of parsing router-template-cross-bar.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 128, "end": 0, "name": "mm", "start": 0, @@ -3346,6 +3808,7 @@ description: Result of parsing router-template-cross-bar.kcl "nonCodeNodes": { "10": [ { + "commentStart": 1707, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3356,6 +3819,7 @@ description: Result of parsing router-template-cross-bar.kcl ], "12": [ { + "commentStart": 2238, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3366,6 +3830,7 @@ description: Result of parsing router-template-cross-bar.kcl ], "13": [ { + "commentStart": 2723, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3376,6 +3841,7 @@ description: Result of parsing router-template-cross-bar.kcl ], "14": [ { + "commentStart": 2769, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3387,44 +3853,7 @@ description: Result of parsing router-template-cross-bar.kcl }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Router template for a cross bar", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A guide for routing a notch into a cross bar.", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set Units", - "style": "line" - } - }, - { + "commentStart": 131, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/kcl_samples/router-template-cross-bar/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/router-template-cross-bar/program_memory.snap index dd3064a66..31244bc1e 100644 --- a/rust/kcl-lib/tests/kcl_samples/router-template-cross-bar/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/router-template-cross-bar/program_memory.snap @@ -35,6 +35,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 560, "end": 566, "start": 560, "type": "TagDeclarator", @@ -47,6 +48,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 668, "end": 674, "start": 668, "type": "TagDeclarator", @@ -59,6 +61,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 727, "end": 733, "start": 727, "type": "TagDeclarator", @@ -71,6 +74,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 780, "end": 786, "start": 780, "type": "TagDeclarator", @@ -83,6 +87,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 881, "end": 887, "start": 881, "type": "TagDeclarator", @@ -95,6 +100,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 958, "end": 964, "start": 958, "type": "TagDeclarator", @@ -107,6 +113,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1015, "end": 1021, "start": 1015, "type": "TagDeclarator", @@ -119,6 +126,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1074, "end": 1080, "start": 1074, "type": "TagDeclarator", @@ -131,6 +139,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1149, "end": 1155, "start": 1149, "type": "TagDeclarator", @@ -143,6 +152,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1194, "end": 1200, "start": 1194, "type": "TagDeclarator", @@ -228,6 +238,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 31.8813 ], "tag": { + "commentStart": 560, "end": 566, "start": 560, "type": "TagDeclarator", @@ -258,6 +269,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl ], "radius": 11.88125, "tag": { + "commentStart": 668, "end": 674, "start": 668, "type": "TagDeclarator", @@ -282,6 +294,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 20.0 ], "tag": { + "commentStart": 727, "end": 733, "start": 727, "type": "TagDeclarator", @@ -306,6 +319,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 780, "end": 786, "start": 780, "type": "TagDeclarator", @@ -330,6 +344,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 881, "end": 887, "start": 881, "type": "TagDeclarator", @@ -354,6 +369,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 10.9406 ], "tag": { + "commentStart": 958, "end": 964, "start": 958, "type": "TagDeclarator", @@ -378,6 +394,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 10.9406 ], "tag": { + "commentStart": 1015, "end": 1021, "start": 1015, "type": "TagDeclarator", @@ -402,6 +419,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 30.9406 ], "tag": { + "commentStart": 1074, "end": 1080, "start": 1074, "type": "TagDeclarator", @@ -426,6 +444,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 30.9406 ], "tag": { + "commentStart": 1149, "end": 1155, "start": 1149, "type": "TagDeclarator", @@ -450,6 +469,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 41.8813 ], "tag": { + "commentStart": 1194, "end": 1200, "start": 1194, "type": "TagDeclarator", @@ -795,6 +815,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2381, "end": 2402, "start": 2381, "type": "TagDeclarator", @@ -807,6 +828,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2500, "end": 2521, "start": 2500, "type": "TagDeclarator", @@ -819,6 +841,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2626, "end": 2647, "start": 2626, "type": "TagDeclarator", @@ -848,6 +871,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 0.0 ], "tag": { + "commentStart": 2381, "end": 2402, "start": 2381, "type": "TagDeclarator", @@ -872,6 +896,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 0.0 ], "tag": { + "commentStart": 2500, "end": 2521, "start": 2500, "type": "TagDeclarator", @@ -896,6 +921,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 2626, "end": 2647, "start": 2626, "type": "TagDeclarator", @@ -979,6 +1005,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 560, "end": 566, "start": 560, "type": "TagDeclarator", @@ -991,6 +1018,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 668, "end": 674, "start": 668, "type": "TagDeclarator", @@ -1003,6 +1031,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 727, "end": 733, "start": 727, "type": "TagDeclarator", @@ -1015,6 +1044,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 780, "end": 786, "start": 780, "type": "TagDeclarator", @@ -1027,6 +1057,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 881, "end": 887, "start": 881, "type": "TagDeclarator", @@ -1039,6 +1070,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 958, "end": 964, "start": 958, "type": "TagDeclarator", @@ -1051,6 +1083,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1015, "end": 1021, "start": 1015, "type": "TagDeclarator", @@ -1063,6 +1096,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1074, "end": 1080, "start": 1074, "type": "TagDeclarator", @@ -1075,6 +1109,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1149, "end": 1155, "start": 1149, "type": "TagDeclarator", @@ -1087,6 +1122,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1194, "end": 1200, "start": 1194, "type": "TagDeclarator", @@ -1172,6 +1208,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 31.8813 ], "tag": { + "commentStart": 560, "end": 566, "start": 560, "type": "TagDeclarator", @@ -1202,6 +1239,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl ], "radius": 11.88125, "tag": { + "commentStart": 668, "end": 674, "start": 668, "type": "TagDeclarator", @@ -1226,6 +1264,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 20.0 ], "tag": { + "commentStart": 727, "end": 733, "start": 727, "type": "TagDeclarator", @@ -1250,6 +1289,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 780, "end": 786, "start": 780, "type": "TagDeclarator", @@ -1274,6 +1314,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 881, "end": 887, "start": 881, "type": "TagDeclarator", @@ -1298,6 +1339,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 10.9406 ], "tag": { + "commentStart": 958, "end": 964, "start": 958, "type": "TagDeclarator", @@ -1322,6 +1364,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 10.9406 ], "tag": { + "commentStart": 1015, "end": 1021, "start": 1015, "type": "TagDeclarator", @@ -1346,6 +1389,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 30.9406 ], "tag": { + "commentStart": 1074, "end": 1080, "start": 1074, "type": "TagDeclarator", @@ -1370,6 +1414,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 30.9406 ], "tag": { + "commentStart": 1149, "end": 1155, "start": 1149, "type": "TagDeclarator", @@ -1394,6 +1439,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 41.8813 ], "tag": { + "commentStart": 1194, "end": 1200, "start": 1194, "type": "TagDeclarator", @@ -1788,6 +1834,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1851, "end": 1872, "start": 1851, "type": "TagDeclarator", @@ -1800,6 +1847,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1970, "end": 1991, "start": 1970, "type": "TagDeclarator", @@ -1812,6 +1860,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2096, "end": 2117, "start": 2096, "type": "TagDeclarator", @@ -1841,6 +1890,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 0.0 ], "tag": { + "commentStart": 1851, "end": 1872, "start": 1851, "type": "TagDeclarator", @@ -1865,6 +1915,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 0.0 ], "tag": { + "commentStart": 1970, "end": 1991, "start": 1970, "type": "TagDeclarator", @@ -1889,6 +1940,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 2096, "end": 2117, "start": 2096, "type": "TagDeclarator", @@ -1972,6 +2024,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 560, "end": 566, "start": 560, "type": "TagDeclarator", @@ -1984,6 +2037,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 668, "end": 674, "start": 668, "type": "TagDeclarator", @@ -1996,6 +2050,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 727, "end": 733, "start": 727, "type": "TagDeclarator", @@ -2008,6 +2063,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 780, "end": 786, "start": 780, "type": "TagDeclarator", @@ -2020,6 +2076,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 881, "end": 887, "start": 881, "type": "TagDeclarator", @@ -2032,6 +2089,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 958, "end": 964, "start": 958, "type": "TagDeclarator", @@ -2044,6 +2102,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1015, "end": 1021, "start": 1015, "type": "TagDeclarator", @@ -2056,6 +2115,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1074, "end": 1080, "start": 1074, "type": "TagDeclarator", @@ -2068,6 +2128,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1149, "end": 1155, "start": 1149, "type": "TagDeclarator", @@ -2080,6 +2141,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1194, "end": 1200, "start": 1194, "type": "TagDeclarator", @@ -2165,6 +2227,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 31.8813 ], "tag": { + "commentStart": 560, "end": 566, "start": 560, "type": "TagDeclarator", @@ -2195,6 +2258,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl ], "radius": 11.88125, "tag": { + "commentStart": 668, "end": 674, "start": 668, "type": "TagDeclarator", @@ -2219,6 +2283,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 20.0 ], "tag": { + "commentStart": 727, "end": 733, "start": 727, "type": "TagDeclarator", @@ -2243,6 +2308,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 780, "end": 786, "start": 780, "type": "TagDeclarator", @@ -2267,6 +2333,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 881, "end": 887, "start": 881, "type": "TagDeclarator", @@ -2291,6 +2358,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 10.9406 ], "tag": { + "commentStart": 958, "end": 964, "start": 958, "type": "TagDeclarator", @@ -2315,6 +2383,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 10.9406 ], "tag": { + "commentStart": 1015, "end": 1021, "start": 1015, "type": "TagDeclarator", @@ -2339,6 +2408,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 30.9406 ], "tag": { + "commentStart": 1074, "end": 1080, "start": 1074, "type": "TagDeclarator", @@ -2363,6 +2433,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 30.9406 ], "tag": { + "commentStart": 1149, "end": 1155, "start": 1149, "type": "TagDeclarator", @@ -2387,6 +2458,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 41.8813 ], "tag": { + "commentStart": 1194, "end": 1200, "start": 1194, "type": "TagDeclarator", @@ -2781,6 +2853,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2917, "end": 2938, "start": 2917, "type": "TagDeclarator", @@ -2793,6 +2866,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 3036, "end": 3057, "start": 3036, "type": "TagDeclarator", @@ -2805,6 +2879,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 3162, "end": 3183, "start": 3162, "type": "TagDeclarator", @@ -2834,6 +2909,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 0.0 ], "tag": { + "commentStart": 2917, "end": 2938, "start": 2917, "type": "TagDeclarator", @@ -2858,6 +2934,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 0.0 ], "tag": { + "commentStart": 3036, "end": 3057, "start": 3036, "type": "TagDeclarator", @@ -2882,6 +2959,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 3162, "end": 3183, "start": 3162, "type": "TagDeclarator", @@ -2965,6 +3043,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2381, "end": 2402, "start": 2381, "type": "TagDeclarator", @@ -2977,6 +3056,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2500, "end": 2521, "start": 2500, "type": "TagDeclarator", @@ -2989,6 +3069,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2626, "end": 2647, "start": 2626, "type": "TagDeclarator", @@ -3018,6 +3099,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 0.0 ], "tag": { + "commentStart": 2381, "end": 2402, "start": 2381, "type": "TagDeclarator", @@ -3042,6 +3124,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 0.0 ], "tag": { + "commentStart": 2500, "end": 2521, "start": 2500, "type": "TagDeclarator", @@ -3066,6 +3149,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 2626, "end": 2647, "start": 2626, "type": "TagDeclarator", @@ -3149,6 +3233,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 560, "end": 566, "start": 560, "type": "TagDeclarator", @@ -3161,6 +3246,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 668, "end": 674, "start": 668, "type": "TagDeclarator", @@ -3173,6 +3259,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 727, "end": 733, "start": 727, "type": "TagDeclarator", @@ -3185,6 +3272,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 780, "end": 786, "start": 780, "type": "TagDeclarator", @@ -3197,6 +3285,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 881, "end": 887, "start": 881, "type": "TagDeclarator", @@ -3209,6 +3298,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 958, "end": 964, "start": 958, "type": "TagDeclarator", @@ -3221,6 +3311,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1015, "end": 1021, "start": 1015, "type": "TagDeclarator", @@ -3233,6 +3324,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1074, "end": 1080, "start": 1074, "type": "TagDeclarator", @@ -3245,6 +3337,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1149, "end": 1155, "start": 1149, "type": "TagDeclarator", @@ -3257,6 +3350,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1194, "end": 1200, "start": 1194, "type": "TagDeclarator", @@ -3342,6 +3436,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 31.8813 ], "tag": { + "commentStart": 560, "end": 566, "start": 560, "type": "TagDeclarator", @@ -3372,6 +3467,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl ], "radius": 11.88125, "tag": { + "commentStart": 668, "end": 674, "start": 668, "type": "TagDeclarator", @@ -3396,6 +3492,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 20.0 ], "tag": { + "commentStart": 727, "end": 733, "start": 727, "type": "TagDeclarator", @@ -3420,6 +3517,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 780, "end": 786, "start": 780, "type": "TagDeclarator", @@ -3444,6 +3542,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 881, "end": 887, "start": 881, "type": "TagDeclarator", @@ -3468,6 +3567,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 10.9406 ], "tag": { + "commentStart": 958, "end": 964, "start": 958, "type": "TagDeclarator", @@ -3492,6 +3592,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 10.9406 ], "tag": { + "commentStart": 1015, "end": 1021, "start": 1015, "type": "TagDeclarator", @@ -3516,6 +3617,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 30.9406 ], "tag": { + "commentStart": 1074, "end": 1080, "start": 1074, "type": "TagDeclarator", @@ -3540,6 +3642,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 30.9406 ], "tag": { + "commentStart": 1149, "end": 1155, "start": 1149, "type": "TagDeclarator", @@ -3564,6 +3667,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 41.8813 ], "tag": { + "commentStart": 1194, "end": 1200, "start": 1194, "type": "TagDeclarator", @@ -4145,6 +4249,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 31.8813 ], "tag": { + "commentStart": 560, "end": 566, "start": 560, "type": "TagDeclarator", @@ -4175,6 +4280,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl ], "radius": 11.88125, "tag": { + "commentStart": 668, "end": 674, "start": 668, "type": "TagDeclarator", @@ -4199,6 +4305,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 20.0 ], "tag": { + "commentStart": 727, "end": 733, "start": 727, "type": "TagDeclarator", @@ -4223,6 +4330,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 780, "end": 786, "start": 780, "type": "TagDeclarator", @@ -4247,6 +4355,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 881, "end": 887, "start": 881, "type": "TagDeclarator", @@ -4271,6 +4380,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 10.9406 ], "tag": { + "commentStart": 958, "end": 964, "start": 958, "type": "TagDeclarator", @@ -4295,6 +4405,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 10.9406 ], "tag": { + "commentStart": 1015, "end": 1021, "start": 1015, "type": "TagDeclarator", @@ -4319,6 +4430,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 30.9406 ], "tag": { + "commentStart": 1074, "end": 1080, "start": 1074, "type": "TagDeclarator", @@ -4343,6 +4455,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 30.9406 ], "tag": { + "commentStart": 1149, "end": 1155, "start": 1149, "type": "TagDeclarator", @@ -4367,6 +4480,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 41.8813 ], "tag": { + "commentStart": 1194, "end": 1200, "start": 1194, "type": "TagDeclarator", @@ -4709,6 +4823,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 0.0 ], "tag": { + "commentStart": 2381, "end": 2402, "start": 2381, "type": "TagDeclarator", @@ -4733,6 +4848,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 0.0 ], "tag": { + "commentStart": 2500, "end": 2521, "start": 2500, "type": "TagDeclarator", @@ -4757,6 +4873,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 2626, "end": 2647, "start": 2626, "type": "TagDeclarator", @@ -4840,6 +4957,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 560, "end": 566, "start": 560, "type": "TagDeclarator", @@ -4852,6 +4970,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 668, "end": 674, "start": 668, "type": "TagDeclarator", @@ -4864,6 +4983,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 727, "end": 733, "start": 727, "type": "TagDeclarator", @@ -4876,6 +4996,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 780, "end": 786, "start": 780, "type": "TagDeclarator", @@ -4888,6 +5009,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 881, "end": 887, "start": 881, "type": "TagDeclarator", @@ -4900,6 +5022,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 958, "end": 964, "start": 958, "type": "TagDeclarator", @@ -4912,6 +5035,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1015, "end": 1021, "start": 1015, "type": "TagDeclarator", @@ -4924,6 +5048,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1074, "end": 1080, "start": 1074, "type": "TagDeclarator", @@ -4936,6 +5061,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1149, "end": 1155, "start": 1149, "type": "TagDeclarator", @@ -4948,6 +5074,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1194, "end": 1200, "start": 1194, "type": "TagDeclarator", @@ -5033,6 +5160,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 31.8813 ], "tag": { + "commentStart": 560, "end": 566, "start": 560, "type": "TagDeclarator", @@ -5063,6 +5191,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl ], "radius": 11.88125, "tag": { + "commentStart": 668, "end": 674, "start": 668, "type": "TagDeclarator", @@ -5087,6 +5216,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 20.0 ], "tag": { + "commentStart": 727, "end": 733, "start": 727, "type": "TagDeclarator", @@ -5111,6 +5241,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 780, "end": 786, "start": 780, "type": "TagDeclarator", @@ -5135,6 +5266,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 881, "end": 887, "start": 881, "type": "TagDeclarator", @@ -5159,6 +5291,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 10.9406 ], "tag": { + "commentStart": 958, "end": 964, "start": 958, "type": "TagDeclarator", @@ -5183,6 +5316,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 10.9406 ], "tag": { + "commentStart": 1015, "end": 1021, "start": 1015, "type": "TagDeclarator", @@ -5207,6 +5341,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 30.9406 ], "tag": { + "commentStart": 1074, "end": 1080, "start": 1074, "type": "TagDeclarator", @@ -5231,6 +5366,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 30.9406 ], "tag": { + "commentStart": 1149, "end": 1155, "start": 1149, "type": "TagDeclarator", @@ -5255,6 +5391,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 41.8813 ], "tag": { + "commentStart": 1194, "end": 1200, "start": 1194, "type": "TagDeclarator", @@ -5646,6 +5783,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 0.0 ], "tag": { + "commentStart": 1851, "end": 1872, "start": 1851, "type": "TagDeclarator", @@ -5670,6 +5808,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 0.0 ], "tag": { + "commentStart": 1970, "end": 1991, "start": 1970, "type": "TagDeclarator", @@ -5694,6 +5833,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 2096, "end": 2117, "start": 2096, "type": "TagDeclarator", @@ -5777,6 +5917,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 560, "end": 566, "start": 560, "type": "TagDeclarator", @@ -5789,6 +5930,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 668, "end": 674, "start": 668, "type": "TagDeclarator", @@ -5801,6 +5943,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 727, "end": 733, "start": 727, "type": "TagDeclarator", @@ -5813,6 +5956,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 780, "end": 786, "start": 780, "type": "TagDeclarator", @@ -5825,6 +5969,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 881, "end": 887, "start": 881, "type": "TagDeclarator", @@ -5837,6 +5982,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 958, "end": 964, "start": 958, "type": "TagDeclarator", @@ -5849,6 +5995,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1015, "end": 1021, "start": 1015, "type": "TagDeclarator", @@ -5861,6 +6008,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1074, "end": 1080, "start": 1074, "type": "TagDeclarator", @@ -5873,6 +6021,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1149, "end": 1155, "start": 1149, "type": "TagDeclarator", @@ -5885,6 +6034,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1194, "end": 1200, "start": 1194, "type": "TagDeclarator", @@ -5970,6 +6120,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 31.8813 ], "tag": { + "commentStart": 560, "end": 566, "start": 560, "type": "TagDeclarator", @@ -6000,6 +6151,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl ], "radius": 11.88125, "tag": { + "commentStart": 668, "end": 674, "start": 668, "type": "TagDeclarator", @@ -6024,6 +6176,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 20.0 ], "tag": { + "commentStart": 727, "end": 733, "start": 727, "type": "TagDeclarator", @@ -6048,6 +6201,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 780, "end": 786, "start": 780, "type": "TagDeclarator", @@ -6072,6 +6226,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 881, "end": 887, "start": 881, "type": "TagDeclarator", @@ -6096,6 +6251,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 10.9406 ], "tag": { + "commentStart": 958, "end": 964, "start": 958, "type": "TagDeclarator", @@ -6120,6 +6276,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 10.9406 ], "tag": { + "commentStart": 1015, "end": 1021, "start": 1015, "type": "TagDeclarator", @@ -6144,6 +6301,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 30.9406 ], "tag": { + "commentStart": 1074, "end": 1080, "start": 1074, "type": "TagDeclarator", @@ -6168,6 +6326,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 30.9406 ], "tag": { + "commentStart": 1149, "end": 1155, "start": 1149, "type": "TagDeclarator", @@ -6192,6 +6351,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 41.8813 ], "tag": { + "commentStart": 1194, "end": 1200, "start": 1194, "type": "TagDeclarator", @@ -6583,6 +6743,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 0.0 ], "tag": { + "commentStart": 2917, "end": 2938, "start": 2917, "type": "TagDeclarator", @@ -6607,6 +6768,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 0.0 ], "tag": { + "commentStart": 3036, "end": 3057, "start": 3036, "type": "TagDeclarator", @@ -6631,6 +6793,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 3162, "end": 3183, "start": 3162, "type": "TagDeclarator", @@ -6714,6 +6877,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2381, "end": 2402, "start": 2381, "type": "TagDeclarator", @@ -6726,6 +6890,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2500, "end": 2521, "start": 2500, "type": "TagDeclarator", @@ -6738,6 +6903,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2626, "end": 2647, "start": 2626, "type": "TagDeclarator", @@ -6767,6 +6933,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 0.0 ], "tag": { + "commentStart": 2381, "end": 2402, "start": 2381, "type": "TagDeclarator", @@ -6791,6 +6958,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 0.0 ], "tag": { + "commentStart": 2500, "end": 2521, "start": 2500, "type": "TagDeclarator", @@ -6815,6 +6983,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 2626, "end": 2647, "start": 2626, "type": "TagDeclarator", @@ -6898,6 +7067,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 560, "end": 566, "start": 560, "type": "TagDeclarator", @@ -6910,6 +7080,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 668, "end": 674, "start": 668, "type": "TagDeclarator", @@ -6922,6 +7093,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 727, "end": 733, "start": 727, "type": "TagDeclarator", @@ -6934,6 +7106,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 780, "end": 786, "start": 780, "type": "TagDeclarator", @@ -6946,6 +7119,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 881, "end": 887, "start": 881, "type": "TagDeclarator", @@ -6958,6 +7132,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 958, "end": 964, "start": 958, "type": "TagDeclarator", @@ -6970,6 +7145,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1015, "end": 1021, "start": 1015, "type": "TagDeclarator", @@ -6982,6 +7158,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1074, "end": 1080, "start": 1074, "type": "TagDeclarator", @@ -6994,6 +7171,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1149, "end": 1155, "start": 1149, "type": "TagDeclarator", @@ -7006,6 +7184,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1194, "end": 1200, "start": 1194, "type": "TagDeclarator", @@ -7091,6 +7270,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 31.8813 ], "tag": { + "commentStart": 560, "end": 566, "start": 560, "type": "TagDeclarator", @@ -7121,6 +7301,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl ], "radius": 11.88125, "tag": { + "commentStart": 668, "end": 674, "start": 668, "type": "TagDeclarator", @@ -7145,6 +7326,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 20.0 ], "tag": { + "commentStart": 727, "end": 733, "start": 727, "type": "TagDeclarator", @@ -7169,6 +7351,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 780, "end": 786, "start": 780, "type": "TagDeclarator", @@ -7193,6 +7376,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl -10.0 ], "tag": { + "commentStart": 881, "end": 887, "start": 881, "type": "TagDeclarator", @@ -7217,6 +7401,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 10.9406 ], "tag": { + "commentStart": 958, "end": 964, "start": 958, "type": "TagDeclarator", @@ -7241,6 +7426,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 10.9406 ], "tag": { + "commentStart": 1015, "end": 1021, "start": 1015, "type": "TagDeclarator", @@ -7265,6 +7451,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 30.9406 ], "tag": { + "commentStart": 1074, "end": 1080, "start": 1074, "type": "TagDeclarator", @@ -7289,6 +7476,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 30.9406 ], "tag": { + "commentStart": 1149, "end": 1155, "start": 1149, "type": "TagDeclarator", @@ -7313,6 +7501,7 @@ description: Variables in memory after executing router-template-cross-bar.kcl 41.8813 ], "tag": { + "commentStart": 1194, "end": 1200, "start": 1194, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/kcl_samples/router-template-slate/ast.snap b/rust/kcl-lib/tests/kcl_samples/router-template-slate/ast.snap index 346b18231..6eac3b7e5 100644 --- a/rust/kcl-lib/tests/kcl_samples/router-template-slate/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/router-template-slate/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing router-template-slate.kcl "Ok": { "body": [ { + "commentStart": 126, "declaration": { + "commentStart": 148, "end": 0, "id": { + "commentStart": 148, "end": 0, "name": "routerDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 165, "end": 0, "raw": "12.7", "start": 0, @@ -30,24 +34,33 @@ description: Result of parsing router-template-slate.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 170, "declaration": { + "commentStart": 170, "end": 0, "id": { + "commentStart": 170, "end": 0, "name": "templateDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 189, "end": 0, "left": { + "commentStart": 189, "end": 0, "left": { + "commentStart": 189, "end": 0, "raw": "11", "start": 0, @@ -60,6 +73,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "/", "right": { + "commentStart": 194, "end": 0, "raw": "16", "start": 0, @@ -78,11 +92,13 @@ description: Result of parsing router-template-slate.kcl "right": { "arguments": [], "callee": { + "commentStart": 199, "end": 0, "name": "inch", "start": 0, "type": "Identifier" }, + "commentStart": 199, "end": 0, "start": 0, "type": "CallExpression", @@ -102,21 +118,28 @@ description: Result of parsing router-template-slate.kcl "type": "VariableDeclaration" }, { + "commentStart": 206, "declaration": { + "commentStart": 206, "end": 0, "id": { + "commentStart": 206, "end": 0, "name": "templateGap", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 221, "end": 0, "left": { + "commentStart": 221, "end": 0, "left": { + "commentStart": 221, "end": 0, "left": { + "commentStart": 221, "end": 0, "name": "templateDiameter", "start": 0, @@ -125,6 +148,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "-", "right": { + "commentStart": 240, "end": 0, "name": "routerDiameter", "start": 0, @@ -137,6 +161,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "/", "right": { + "commentStart": 258, "end": 0, "raw": "2", "start": 0, @@ -153,6 +178,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "-", "right": { + "commentStart": 262, "end": 0, "raw": "0.5", "start": 0, @@ -177,17 +203,22 @@ description: Result of parsing router-template-slate.kcl "type": "VariableDeclaration" }, { + "commentStart": 266, "declaration": { + "commentStart": 266, "end": 0, "id": { + "commentStart": 266, "end": 0, "name": "slateWidthHalf", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 283, "end": 0, "left": { + "commentStart": 283, "end": 0, "raw": "41.5", "start": 0, @@ -200,6 +231,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "/", "right": { + "commentStart": 290, "end": 0, "raw": "2", "start": 0, @@ -224,17 +256,22 @@ description: Result of parsing router-template-slate.kcl "type": "VariableDeclaration" }, { + "commentStart": 292, "declaration": { + "commentStart": 292, "end": 0, "id": { + "commentStart": 292, "end": 0, "name": "minClampingDistance", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 314, "end": 0, "left": { + "commentStart": 314, "end": 0, "raw": "50", "start": 0, @@ -247,6 +284,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "+", "right": { + "commentStart": 319, "end": 0, "raw": "30", "start": 0, @@ -271,15 +309,19 @@ description: Result of parsing router-template-slate.kcl "type": "VariableDeclaration" }, { + "commentStart": 322, "declaration": { + "commentStart": 322, "end": 0, "id": { + "commentStart": 322, "end": 0, "name": "templateThickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 342, "end": 0, "raw": "10", "start": 0, @@ -300,15 +342,19 @@ description: Result of parsing router-template-slate.kcl "type": "VariableDeclaration" }, { + "commentStart": 345, "declaration": { + "commentStart": 345, "end": 0, "id": { + "commentStart": 345, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 354, "end": 0, "raw": "10", "start": 0, @@ -329,15 +375,19 @@ description: Result of parsing router-template-slate.kcl "type": "VariableDeclaration" }, { + "commentStart": 357, "declaration": { + "commentStart": 357, "end": 0, "id": { + "commentStart": 357, "end": 0, "name": "depth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 365, "end": 0, "raw": "30", "start": 0, @@ -358,17 +408,22 @@ description: Result of parsing router-template-slate.kcl "type": "VariableDeclaration" }, { + "commentStart": 368, "declaration": { + "commentStart": 368, "end": 0, "id": { + "commentStart": 368, "end": 0, "name": "length001", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 380, "end": 0, "left": { + "commentStart": 380, "end": 0, "name": "slateWidthHalf", "start": 0, @@ -377,6 +432,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "-", "right": { + "commentStart": 397, "end": 0, "name": "radius", "start": 0, @@ -397,17 +453,22 @@ description: Result of parsing router-template-slate.kcl "type": "VariableDeclaration" }, { + "commentStart": 404, "declaration": { + "commentStart": 404, "end": 0, "id": { + "commentStart": 404, "end": 0, "name": "length002", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 416, "end": 0, "left": { + "commentStart": 416, "end": 0, "name": "depth", "start": 0, @@ -416,6 +477,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "+", "right": { + "commentStart": 424, "end": 0, "name": "minClampingDistance", "start": 0, @@ -436,9 +498,12 @@ description: Result of parsing router-template-slate.kcl "type": "VariableDeclaration" }, { + "commentStart": 443, "declaration": { + "commentStart": 472, "end": 0, "id": { + "commentStart": 472, "end": 0, "name": "sketch001", "start": 0, @@ -449,6 +514,7 @@ description: Result of parsing router-template-slate.kcl { "arguments": [ { + "commentStart": 498, "end": 0, "raw": "'XZ'", "start": 0, @@ -458,11 +524,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 484, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 484, "end": 0, "start": 0, "type": "CallExpression", @@ -471,8 +539,10 @@ description: Result of parsing router-template-slate.kcl { "arguments": [ { + "commentStart": 524, "elements": [ { + "commentStart": 525, "end": 0, "raw": "0", "start": 0, @@ -484,8 +554,10 @@ description: Result of parsing router-template-slate.kcl } }, { + "commentStart": 528, "end": 0, "left": { + "commentStart": 528, "end": 0, "name": "depth", "start": 0, @@ -494,6 +566,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "-", "right": { + "commentStart": 536, "end": 0, "name": "templateGap", "start": 0, @@ -511,6 +584,7 @@ description: Result of parsing router-template-slate.kcl "type": "ArrayExpression" }, { + "commentStart": 550, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -518,11 +592,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 509, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 509, "end": 0, "start": 0, "type": "CallExpression", @@ -533,12 +609,14 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 564, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 573, "end": 0, "name": "length001", "start": 0, @@ -549,12 +627,14 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 584, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 590, "end": 0, "start": 0, "type": "TagDeclarator", @@ -564,11 +644,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 558, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 558, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -578,11 +660,14 @@ description: Result of parsing router-template-slate.kcl { "arguments": [ { + "commentStart": 607, "end": 0, "properties": [ { + "commentStart": 616, "end": 0, "key": { + "commentStart": 616, "end": 0, "name": "angleEnd", "start": 0, @@ -591,6 +676,7 @@ description: Result of parsing router-template-slate.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 627, "end": 0, "raw": "0", "start": 0, @@ -603,8 +689,10 @@ description: Result of parsing router-template-slate.kcl } }, { + "commentStart": 637, "end": 0, "key": { + "commentStart": 637, "end": 0, "name": "angleStart", "start": 0, @@ -613,6 +701,7 @@ description: Result of parsing router-template-slate.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 650, "end": 0, "raw": "90", "start": 0, @@ -625,8 +714,10 @@ description: Result of parsing router-template-slate.kcl } }, { + "commentStart": 661, "end": 0, "key": { + "commentStart": 661, "end": 0, "name": "radius", "start": 0, @@ -635,8 +726,10 @@ description: Result of parsing router-template-slate.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 670, "end": 0, "left": { + "commentStart": 670, "end": 0, "name": "radius", "start": 0, @@ -645,6 +738,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "-", "right": { + "commentStart": 679, "end": 0, "name": "templateGap", "start": 0, @@ -662,6 +756,7 @@ description: Result of parsing router-template-slate.kcl "type": "ObjectExpression" }, { + "commentStart": 699, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -669,11 +764,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 603, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 603, "end": 0, "start": 0, "type": "CallExpression", @@ -684,23 +781,28 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 713, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 727, "end": 0, "left": { + "commentStart": 727, "end": 0, "left": { "argument": { + "commentStart": 728, "end": 0, "name": "templateGap", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 727, "end": 0, "operator": "-", "start": 0, @@ -709,6 +811,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "*", "right": { + "commentStart": 742, "end": 0, "raw": "2", "start": 0, @@ -725,8 +828,10 @@ description: Result of parsing router-template-slate.kcl }, "operator": "-", "right": { + "commentStart": 747, "end": 0, "left": { + "commentStart": 747, "end": 0, "name": "templateDiameter", "start": 0, @@ -735,6 +840,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "/", "right": { + "commentStart": 766, "end": 0, "raw": "2", "start": 0, @@ -757,12 +863,14 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 770, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 776, "end": 0, "start": 0, "type": "TagDeclarator", @@ -772,11 +880,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 707, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 707, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -788,14 +898,17 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 795, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 809, "end": 0, "left": { + "commentStart": 809, "end": 0, "name": "slateWidthHalf", "start": 0, @@ -804,6 +917,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "+", "right": { + "commentStart": 826, "end": 0, "name": "templateThickness", "start": 0, @@ -818,12 +932,14 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 845, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 851, "end": 0, "start": 0, "type": "TagDeclarator", @@ -833,11 +949,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 789, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 789, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -849,6 +967,7 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 870, "end": 0, "name": "length", "start": 0, @@ -856,12 +975,14 @@ description: Result of parsing router-template-slate.kcl }, "arg": { "argument": { + "commentStart": 880, "end": 0, "name": "length002", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 879, "end": 0, "operator": "-", "start": 0, @@ -872,12 +993,14 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 891, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 897, "end": 0, "start": 0, "type": "TagDeclarator", @@ -887,11 +1010,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 864, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 864, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -903,12 +1028,14 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 916, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 930, "end": 0, "name": "ZERO", "start": 0, @@ -919,12 +1046,14 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 936, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 942, "end": 0, "start": 0, "type": "TagDeclarator", @@ -934,11 +1063,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 910, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 910, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -950,6 +1081,7 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 995, "end": 0, "name": "length", "start": 0, @@ -959,6 +1091,7 @@ description: Result of parsing router-template-slate.kcl "argument": { "arguments": [ { + "commentStart": 1012, "end": 0, "name": "seg02", "start": 0, @@ -967,16 +1100,19 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1005, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1005, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 1004, "end": 0, "operator": "-", "start": 0, @@ -986,11 +1122,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 989, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 989, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1002,6 +1140,7 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1031, "end": 0, "name": "length", "start": 0, @@ -1010,6 +1149,7 @@ description: Result of parsing router-template-slate.kcl "arg": { "arguments": [ { + "commentStart": 1047, "end": 0, "name": "seg03", "start": 0, @@ -1018,11 +1158,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1040, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1040, "end": 0, "start": 0, "type": "CallExpression", @@ -1031,11 +1173,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1025, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1025, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1047,6 +1191,7 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1066, "end": 0, "name": "length", "start": 0, @@ -1055,6 +1200,7 @@ description: Result of parsing router-template-slate.kcl "arg": { "arguments": [ { + "commentStart": 1082, "end": 0, "name": "seg04", "start": 0, @@ -1063,11 +1209,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1075, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1075, "end": 0, "start": 0, "type": "CallExpression", @@ -1076,11 +1224,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1060, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1060, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1092,6 +1242,7 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1101, "end": 0, "name": "length", "start": 0, @@ -1100,6 +1251,7 @@ description: Result of parsing router-template-slate.kcl "arg": { "arguments": [ { + "commentStart": 1117, "end": 0, "name": "seg05", "start": 0, @@ -1108,11 +1260,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1110, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1110, "end": 0, "start": 0, "type": "CallExpression", @@ -1121,11 +1275,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1095, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1095, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1135,11 +1291,14 @@ description: Result of parsing router-template-slate.kcl { "arguments": [ { + "commentStart": 1134, "end": 0, "properties": [ { + "commentStart": 1143, "end": 0, "key": { + "commentStart": 1143, "end": 0, "name": "angleEnd", "start": 0, @@ -1148,6 +1307,7 @@ description: Result of parsing router-template-slate.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1154, "end": 0, "raw": "90", "start": 0, @@ -1160,8 +1320,10 @@ description: Result of parsing router-template-slate.kcl } }, { + "commentStart": 1165, "end": 0, "key": { + "commentStart": 1165, "end": 0, "name": "angleStart", "start": 0, @@ -1170,6 +1332,7 @@ description: Result of parsing router-template-slate.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1178, "end": 0, "raw": "180", "start": 0, @@ -1182,8 +1345,10 @@ description: Result of parsing router-template-slate.kcl } }, { + "commentStart": 1190, "end": 0, "key": { + "commentStart": 1190, "end": 0, "name": "radius", "start": 0, @@ -1192,8 +1357,10 @@ description: Result of parsing router-template-slate.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1199, "end": 0, "left": { + "commentStart": 1199, "end": 0, "name": "radius", "start": 0, @@ -1202,6 +1369,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "-", "right": { + "commentStart": 1208, "end": 0, "name": "templateGap", "start": 0, @@ -1219,6 +1387,7 @@ description: Result of parsing router-template-slate.kcl "type": "ObjectExpression" }, { + "commentStart": 1228, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1226,11 +1395,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1130, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 1130, "end": 0, "start": 0, "type": "CallExpression", @@ -1241,16 +1412,19 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1241, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1255, "elements": [ { "arguments": [ { + "commentStart": 1270, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1258,11 +1432,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1256, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 1256, "end": 0, "start": 0, "type": "CallExpression", @@ -1271,6 +1447,7 @@ description: Result of parsing router-template-slate.kcl { "arguments": [ { + "commentStart": 1288, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1278,11 +1455,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1274, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 1274, "end": 0, "start": 0, "type": "CallExpression", @@ -1297,11 +1476,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1236, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1236, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1311,22 +1492,26 @@ description: Result of parsing router-template-slate.kcl { "arguments": [], "callee": { + "commentStart": 1298, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1298, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 484, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "7": [ { + "commentStart": 951, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1339,6 +1524,7 @@ description: Result of parsing router-template-slate.kcl ], "14": [ { + "commentStart": 1305, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1361,14 +1547,22 @@ description: Result of parsing router-template-slate.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Create the first sketch" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1335, "declaration": { + "commentStart": 1335, "end": 0, "id": { + "commentStart": 1335, "end": 0, "name": "extrude001", "start": 0, @@ -1379,12 +1573,14 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1367, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1376, "end": 0, "raw": "5", "start": 0, @@ -1398,16 +1594,19 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1348, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1348, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1356, "end": 0, "name": "sketch001", "start": 0, @@ -1425,9 +1624,12 @@ description: Result of parsing router-template-slate.kcl "type": "VariableDeclaration" }, { + "commentStart": 1378, "declaration": { + "commentStart": 1408, "end": 0, "id": { + "commentStart": 1408, "end": 0, "name": "sketch002", "start": 0, @@ -1438,6 +1640,7 @@ description: Result of parsing router-template-slate.kcl { "arguments": [ { + "commentStart": 1434, "end": 0, "name": "extrude001", "start": 0, @@ -1445,6 +1648,7 @@ description: Result of parsing router-template-slate.kcl "type": "Identifier" }, { + "commentStart": 1446, "end": 0, "raw": "'START'", "start": 0, @@ -1454,11 +1658,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1420, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1420, "end": 0, "start": 0, "type": "CallExpression", @@ -1467,15 +1673,18 @@ description: Result of parsing router-template-slate.kcl { "arguments": [ { + "commentStart": 1475, "elements": [ { "argument": { + "commentStart": 1485, "end": 0, "name": "slateWidthHalf", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1484, "end": 0, "operator": "-", "start": 0, @@ -1483,17 +1692,21 @@ description: Result of parsing router-template-slate.kcl "type": "UnaryExpression" }, { + "commentStart": 1508, "end": 0, "left": { + "commentStart": 1508, "end": 0, "left": { "argument": { + "commentStart": 1509, "end": 0, "name": "templateGap", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1508, "end": 0, "operator": "-", "start": 0, @@ -1502,6 +1715,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "*", "right": { + "commentStart": 1523, "end": 0, "raw": "2", "start": 0, @@ -1518,8 +1732,10 @@ description: Result of parsing router-template-slate.kcl }, "operator": "-", "right": { + "commentStart": 1528, "end": 0, "left": { + "commentStart": 1528, "end": 0, "name": "templateDiameter", "start": 0, @@ -1528,6 +1744,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "/", "right": { + "commentStart": 1547, "end": 0, "raw": "2", "start": 0, @@ -1553,6 +1770,7 @@ description: Result of parsing router-template-slate.kcl "type": "ArrayExpression" }, { + "commentStart": 1558, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1560,11 +1778,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1460, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1460, "end": 0, "start": 0, "type": "CallExpression", @@ -1575,6 +1795,7 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1572, "end": 0, "name": "length", "start": 0, @@ -1582,6 +1803,7 @@ description: Result of parsing router-template-slate.kcl }, "arg": { "argument": { + "commentStart": 1582, "end": 0, "raw": "7", "start": 0, @@ -1592,6 +1814,7 @@ description: Result of parsing router-template-slate.kcl "suffix": "None" } }, + "commentStart": 1581, "end": 0, "operator": "-", "start": 0, @@ -1602,12 +1825,14 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1585, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1591, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1617,11 +1842,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1566, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1566, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1631,12 +1858,15 @@ description: Result of parsing router-template-slate.kcl { "arguments": [ { + "commentStart": 1630, "elements": [ { + "commentStart": 1639, "end": 0, "left": { "arguments": [ { + "commentStart": 1646, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -1645,11 +1875,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1639, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 1639, "end": 0, "start": 0, "type": "CallExpression", @@ -1657,6 +1889,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "+", "right": { + "commentStart": 1670, "end": 0, "raw": "90", "start": 0, @@ -1672,6 +1905,7 @@ description: Result of parsing router-template-slate.kcl "type": "BinaryExpression" }, { + "commentStart": 1681, "end": 0, "name": "minClampingDistance", "start": 0, @@ -1685,12 +1919,14 @@ description: Result of parsing router-template-slate.kcl "type": "ArrayExpression" }, { + "commentStart": 1709, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1712, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1699,11 +1935,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1619, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1619, "end": 0, "start": 0, "type": "CallExpression", @@ -1712,10 +1950,12 @@ description: Result of parsing router-template-slate.kcl { "arguments": [ { + "commentStart": 1751, "elements": [ { "arguments": [ { + "commentStart": 1767, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -1724,11 +1964,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1760, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 1760, "end": 0, "start": 0, "type": "CallExpression", @@ -1738,6 +1980,7 @@ description: Result of parsing router-template-slate.kcl "argument": { "arguments": [ { + "commentStart": 1805, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -1746,16 +1989,19 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1798, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1798, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 1797, "end": 0, "operator": "-", "start": 0, @@ -1769,12 +2015,14 @@ description: Result of parsing router-template-slate.kcl "type": "ArrayExpression" }, { + "commentStart": 1835, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1838, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1783,11 +2031,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1740, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1740, "end": 0, "start": 0, "type": "CallExpression", @@ -1798,16 +2048,19 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1871, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1885, "elements": [ { "arguments": [ { + "commentStart": 1900, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1815,11 +2068,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1886, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 1886, "end": 0, "start": 0, "type": "CallExpression", @@ -1828,6 +2083,7 @@ description: Result of parsing router-template-slate.kcl { "arguments": [ { + "commentStart": 1918, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1835,11 +2091,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1904, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 1904, "end": 0, "start": 0, "type": "CallExpression", @@ -1854,11 +2112,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1866, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1866, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1868,22 +2128,26 @@ description: Result of parsing router-template-slate.kcl { "arguments": [], "callee": { + "commentStart": 1928, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1928, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1420, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "6": [ { + "commentStart": 1935, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1906,14 +2170,22 @@ description: Result of parsing router-template-slate.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Create the second sketch" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1966, "declaration": { + "commentStart": 1966, "end": 0, "id": { + "commentStart": 1966, "end": 0, "name": "extrude002", "start": 0, @@ -1924,12 +2196,14 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 1998, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2007, "end": 0, "raw": "7.5", "start": 0, @@ -1943,16 +2217,19 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 1979, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1979, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1987, "end": 0, "name": "sketch002", "start": 0, @@ -1970,9 +2247,12 @@ description: Result of parsing router-template-slate.kcl "type": "VariableDeclaration" }, { + "commentStart": 2011, "declaration": { + "commentStart": 2040, "end": 0, "id": { + "commentStart": 2040, "end": 0, "name": "sketch003", "start": 0, @@ -1983,6 +2263,7 @@ description: Result of parsing router-template-slate.kcl { "arguments": [ { + "commentStart": 2066, "end": 0, "name": "extrude001", "start": 0, @@ -1990,6 +2271,7 @@ description: Result of parsing router-template-slate.kcl "type": "Identifier" }, { + "commentStart": 2078, "end": 0, "raw": "'START'", "start": 0, @@ -1999,11 +2281,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 2052, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2052, "end": 0, "start": 0, "type": "CallExpression", @@ -2012,8 +2296,10 @@ description: Result of parsing router-template-slate.kcl { "arguments": [ { + "commentStart": 2107, "elements": [ { + "commentStart": 2116, "end": 0, "name": "slateWidthHalf", "start": 0, @@ -2021,17 +2307,21 @@ description: Result of parsing router-template-slate.kcl "type": "Identifier" }, { + "commentStart": 2139, "end": 0, "left": { + "commentStart": 2139, "end": 0, "left": { "argument": { + "commentStart": 2140, "end": 0, "name": "templateGap", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2139, "end": 0, "operator": "-", "start": 0, @@ -2040,6 +2330,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "*", "right": { + "commentStart": 2154, "end": 0, "raw": "2", "start": 0, @@ -2056,8 +2347,10 @@ description: Result of parsing router-template-slate.kcl }, "operator": "-", "right": { + "commentStart": 2159, "end": 0, "left": { + "commentStart": 2159, "end": 0, "name": "templateDiameter", "start": 0, @@ -2066,6 +2359,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "/", "right": { + "commentStart": 2178, "end": 0, "raw": "2", "start": 0, @@ -2091,6 +2385,7 @@ description: Result of parsing router-template-slate.kcl "type": "ArrayExpression" }, { + "commentStart": 2189, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2098,11 +2393,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 2092, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2092, "end": 0, "start": 0, "type": "CallExpression", @@ -2113,12 +2410,14 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 2203, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2212, "end": 0, "raw": "7", "start": 0, @@ -2133,12 +2432,14 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 2215, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2221, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2148,11 +2449,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 2197, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 2197, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2162,12 +2465,15 @@ description: Result of parsing router-template-slate.kcl { "arguments": [ { + "commentStart": 2260, "elements": [ { + "commentStart": 2269, "end": 0, "left": { "arguments": [ { + "commentStart": 2276, "end": 0, "name": "rectangleSegmentA002", "start": 0, @@ -2176,11 +2482,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 2269, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 2269, "end": 0, "start": 0, "type": "CallExpression", @@ -2188,6 +2496,7 @@ description: Result of parsing router-template-slate.kcl }, "operator": "-", "right": { + "commentStart": 2300, "end": 0, "raw": "90", "start": 0, @@ -2203,6 +2512,7 @@ description: Result of parsing router-template-slate.kcl "type": "BinaryExpression" }, { + "commentStart": 2311, "end": 0, "name": "minClampingDistance", "start": 0, @@ -2216,6 +2526,7 @@ description: Result of parsing router-template-slate.kcl "type": "ArrayExpression" }, { + "commentStart": 2339, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2223,11 +2534,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 2249, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2249, "end": 0, "start": 0, "type": "CallExpression", @@ -2236,10 +2549,12 @@ description: Result of parsing router-template-slate.kcl { "arguments": [ { + "commentStart": 2358, "elements": [ { "arguments": [ { + "commentStart": 2374, "end": 0, "name": "rectangleSegmentA002", "start": 0, @@ -2248,11 +2563,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 2367, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 2367, "end": 0, "start": 0, "type": "CallExpression", @@ -2262,6 +2579,7 @@ description: Result of parsing router-template-slate.kcl "argument": { "arguments": [ { + "commentStart": 2412, "end": 0, "name": "rectangleSegmentA002", "start": 0, @@ -2270,16 +2588,19 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 2405, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 2405, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 2404, "end": 0, "operator": "-", "start": 0, @@ -2293,6 +2614,7 @@ description: Result of parsing router-template-slate.kcl "type": "ArrayExpression" }, { + "commentStart": 2442, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2300,11 +2622,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 2347, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 2347, "end": 0, "start": 0, "type": "CallExpression", @@ -2315,16 +2639,19 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 2455, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2469, "elements": [ { "arguments": [ { + "commentStart": 2484, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2332,11 +2659,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 2470, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 2470, "end": 0, "start": 0, "type": "CallExpression", @@ -2345,6 +2674,7 @@ description: Result of parsing router-template-slate.kcl { "arguments": [ { + "commentStart": 2502, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2352,11 +2682,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 2488, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 2488, "end": 0, "start": 0, "type": "CallExpression", @@ -2371,11 +2703,13 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 2450, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2450, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2385,22 +2719,26 @@ description: Result of parsing router-template-slate.kcl { "arguments": [], "callee": { + "commentStart": 2512, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2512, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 2052, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "6": [ { + "commentStart": 2519, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2423,14 +2761,22 @@ description: Result of parsing router-template-slate.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Create the third sketch" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2549, "declaration": { + "commentStart": 2549, "end": 0, "id": { + "commentStart": 2549, "end": 0, "name": "extrude003", "start": 0, @@ -2441,12 +2787,14 @@ description: Result of parsing router-template-slate.kcl { "type": "LabeledArg", "label": { + "commentStart": 2581, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2590, "end": 0, "raw": "7.5", "start": 0, @@ -2460,16 +2808,19 @@ description: Result of parsing router-template-slate.kcl } ], "callee": { + "commentStart": 2562, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2562, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2570, "end": 0, "name": "sketch003", "start": 0, @@ -2487,20 +2838,32 @@ description: Result of parsing router-template-slate.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 94, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Router template for a slate", + "// A guide for routing a slate for a cross bar.", + "", + "", + "// Set Units" + ], "properties": [ { + "commentStart": 103, "end": 0, "key": { + "commentStart": 103, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -2509,6 +2872,7 @@ description: Result of parsing router-template-slate.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 123, "end": 0, "name": "mm", "start": 0, @@ -2522,100 +2886,16 @@ description: Result of parsing router-template-slate.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "9": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the first sketch", - "style": "line" - } - } - ], - "11": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the second sketch", - "style": "line" - } - } - ], - "13": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the third sketch", - "style": "line" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Router template for a slate", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A guide for routing a slate for a cross bar.", - "style": "line" - } - }, - { + "commentStart": 126, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set Units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/router-template-slate/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/router-template-slate/program_memory.snap index 04f418aa2..645597cd6 100644 --- a/rust/kcl-lib/tests/kcl_samples/router-template-slate/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/router-template-slate/program_memory.snap @@ -28,6 +28,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 590, "end": 596, "start": 590, "type": "TagDeclarator", @@ -47,6 +48,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 776, "end": 782, "start": 776, "type": "TagDeclarator", @@ -59,6 +61,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 851, "end": 857, "start": 851, "type": "TagDeclarator", @@ -71,6 +74,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 897, "end": 903, "start": 897, "type": "TagDeclarator", @@ -135,6 +139,7 @@ description: Variables in memory after executing router-template-slate.kcl 28.1188 ], "tag": { + "commentStart": 590, "end": 596, "start": 590, "type": "TagDeclarator", @@ -184,6 +189,7 @@ description: Variables in memory after executing router-template-slate.kcl 20.0 ], "tag": { + "commentStart": 776, "end": 782, "start": 776, "type": "TagDeclarator", @@ -208,6 +214,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 851, "end": 857, "start": 851, "type": "TagDeclarator", @@ -232,6 +239,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 897, "end": 903, "start": 897, "type": "TagDeclarator", @@ -256,6 +264,7 @@ description: Variables in memory after executing router-template-slate.kcl -122.4938 ], "tag": { + "commentStart": 942, "end": 948, "start": 942, "type": "TagDeclarator", @@ -505,6 +514,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1591, "end": 1612, "start": 1591, "type": "TagDeclarator", @@ -517,6 +527,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1712, "end": 1733, "start": 1712, "type": "TagDeclarator", @@ -529,6 +540,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1838, "end": 1859, "start": 1838, "type": "TagDeclarator", @@ -558,6 +570,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 1591, "end": 1612, "start": 1591, "type": "TagDeclarator", @@ -582,6 +595,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 1712, "end": 1733, "start": 1712, "type": "TagDeclarator", @@ -606,6 +620,7 @@ description: Variables in memory after executing router-template-slate.kcl -92.4938 ], "tag": { + "commentStart": 1838, "end": 1859, "start": 1838, "type": "TagDeclarator", @@ -689,6 +704,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 590, "end": 596, "start": 590, "type": "TagDeclarator", @@ -708,6 +724,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 776, "end": 782, "start": 776, "type": "TagDeclarator", @@ -720,6 +737,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 851, "end": 857, "start": 851, "type": "TagDeclarator", @@ -732,6 +750,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 897, "end": 903, "start": 897, "type": "TagDeclarator", @@ -796,6 +815,7 @@ description: Variables in memory after executing router-template-slate.kcl 28.1188 ], "tag": { + "commentStart": 590, "end": 596, "start": 590, "type": "TagDeclarator", @@ -845,6 +865,7 @@ description: Variables in memory after executing router-template-slate.kcl 20.0 ], "tag": { + "commentStart": 776, "end": 782, "start": 776, "type": "TagDeclarator", @@ -869,6 +890,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 851, "end": 857, "start": 851, "type": "TagDeclarator", @@ -893,6 +915,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 897, "end": 903, "start": 897, "type": "TagDeclarator", @@ -917,6 +940,7 @@ description: Variables in memory after executing router-template-slate.kcl -122.4938 ], "tag": { + "commentStart": 942, "end": 948, "start": 942, "type": "TagDeclarator", @@ -1215,6 +1239,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2221, "end": 2242, "start": 2221, "type": "TagDeclarator", @@ -1258,6 +1283,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 2221, "end": 2242, "start": 2221, "type": "TagDeclarator", @@ -1379,6 +1405,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 590, "end": 596, "start": 590, "type": "TagDeclarator", @@ -1398,6 +1425,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 776, "end": 782, "start": 776, "type": "TagDeclarator", @@ -1410,6 +1438,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 851, "end": 857, "start": 851, "type": "TagDeclarator", @@ -1422,6 +1451,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 897, "end": 903, "start": 897, "type": "TagDeclarator", @@ -1486,6 +1516,7 @@ description: Variables in memory after executing router-template-slate.kcl 28.1188 ], "tag": { + "commentStart": 590, "end": 596, "start": 590, "type": "TagDeclarator", @@ -1535,6 +1566,7 @@ description: Variables in memory after executing router-template-slate.kcl 20.0 ], "tag": { + "commentStart": 776, "end": 782, "start": 776, "type": "TagDeclarator", @@ -1559,6 +1591,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 851, "end": 857, "start": 851, "type": "TagDeclarator", @@ -1583,6 +1616,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 897, "end": 903, "start": 897, "type": "TagDeclarator", @@ -1607,6 +1641,7 @@ description: Variables in memory after executing router-template-slate.kcl -122.4938 ], "tag": { + "commentStart": 942, "end": 948, "start": 942, "type": "TagDeclarator", @@ -2005,6 +2040,7 @@ description: Variables in memory after executing router-template-slate.kcl 28.1188 ], "tag": { + "commentStart": 590, "end": 596, "start": 590, "type": "TagDeclarator", @@ -2054,6 +2090,7 @@ description: Variables in memory after executing router-template-slate.kcl 20.0 ], "tag": { + "commentStart": 776, "end": 782, "start": 776, "type": "TagDeclarator", @@ -2078,6 +2115,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 851, "end": 857, "start": 851, "type": "TagDeclarator", @@ -2102,6 +2140,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 897, "end": 903, "start": 897, "type": "TagDeclarator", @@ -2126,6 +2165,7 @@ description: Variables in memory after executing router-template-slate.kcl -122.4938 ], "tag": { + "commentStart": 942, "end": 948, "start": 942, "type": "TagDeclarator", @@ -2372,6 +2412,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 1591, "end": 1612, "start": 1591, "type": "TagDeclarator", @@ -2396,6 +2437,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 1712, "end": 1733, "start": 1712, "type": "TagDeclarator", @@ -2420,6 +2462,7 @@ description: Variables in memory after executing router-template-slate.kcl -92.4938 ], "tag": { + "commentStart": 1838, "end": 1859, "start": 1838, "type": "TagDeclarator", @@ -2503,6 +2546,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 590, "end": 596, "start": 590, "type": "TagDeclarator", @@ -2522,6 +2566,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 776, "end": 782, "start": 776, "type": "TagDeclarator", @@ -2534,6 +2579,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 851, "end": 857, "start": 851, "type": "TagDeclarator", @@ -2546,6 +2592,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 897, "end": 903, "start": 897, "type": "TagDeclarator", @@ -2610,6 +2657,7 @@ description: Variables in memory after executing router-template-slate.kcl 28.1188 ], "tag": { + "commentStart": 590, "end": 596, "start": 590, "type": "TagDeclarator", @@ -2659,6 +2707,7 @@ description: Variables in memory after executing router-template-slate.kcl 20.0 ], "tag": { + "commentStart": 776, "end": 782, "start": 776, "type": "TagDeclarator", @@ -2683,6 +2732,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 851, "end": 857, "start": 851, "type": "TagDeclarator", @@ -2707,6 +2757,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 897, "end": 903, "start": 897, "type": "TagDeclarator", @@ -2731,6 +2782,7 @@ description: Variables in memory after executing router-template-slate.kcl -122.4938 ], "tag": { + "commentStart": 942, "end": 948, "start": 942, "type": "TagDeclarator", @@ -3026,6 +3078,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 2221, "end": 2242, "start": 2221, "type": "TagDeclarator", @@ -3147,6 +3200,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 590, "end": 596, "start": 590, "type": "TagDeclarator", @@ -3166,6 +3220,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 776, "end": 782, "start": 776, "type": "TagDeclarator", @@ -3178,6 +3233,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 851, "end": 857, "start": 851, "type": "TagDeclarator", @@ -3190,6 +3246,7 @@ description: Variables in memory after executing router-template-slate.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 897, "end": 903, "start": 897, "type": "TagDeclarator", @@ -3254,6 +3311,7 @@ description: Variables in memory after executing router-template-slate.kcl 28.1188 ], "tag": { + "commentStart": 590, "end": 596, "start": 590, "type": "TagDeclarator", @@ -3303,6 +3361,7 @@ description: Variables in memory after executing router-template-slate.kcl 20.0 ], "tag": { + "commentStart": 776, "end": 782, "start": 776, "type": "TagDeclarator", @@ -3327,6 +3386,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 851, "end": 857, "start": 851, "type": "TagDeclarator", @@ -3351,6 +3411,7 @@ description: Variables in memory after executing router-template-slate.kcl -12.4937 ], "tag": { + "commentStart": 897, "end": 903, "start": 897, "type": "TagDeclarator", @@ -3375,6 +3436,7 @@ description: Variables in memory after executing router-template-slate.kcl -122.4938 ], "tag": { + "commentStart": 942, "end": 948, "start": 942, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/kcl_samples/sheet-metal-bracket/ast.snap b/rust/kcl-lib/tests/kcl_samples/sheet-metal-bracket/ast.snap index 33eb8dbe5..b64d75718 100644 --- a/rust/kcl-lib/tests/kcl_samples/sheet-metal-bracket/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/sheet-metal-bracket/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing sheet-metal-bracket.kcl "Ok": { "body": [ { + "commentStart": 353, "declaration": { + "commentStart": 459, "end": 0, "id": { + "commentStart": 459, "end": 0, "name": "thickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 471, "end": 0, "raw": "0.090", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing sheet-metal-bracket.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants such as sheet metal thickness, bend radius, flange length, bolt diameter size, etc." + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 477, "declaration": { + "commentStart": 477, "end": 0, "id": { + "commentStart": 477, "end": 0, "name": "bendRad", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 487, "end": 0, "raw": "0.08", "start": 0, @@ -64,17 +75,22 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 492, "declaration": { + "commentStart": 492, "end": 0, "id": { + "commentStart": 492, "end": 0, "name": "outsideBendRad", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 509, "end": 0, "left": { + "commentStart": 509, "end": 0, "name": "bendRad", "start": 0, @@ -83,6 +99,7 @@ description: Result of parsing sheet-metal-bracket.kcl }, "operator": "+", "right": { + "commentStart": 519, "end": 0, "name": "thickness", "start": 0, @@ -103,15 +120,19 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 529, "declaration": { + "commentStart": 529, "end": 0, "id": { + "commentStart": 529, "end": 0, "name": "flangeLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 544, "end": 0, "raw": "0.5", "start": 0, @@ -132,15 +153,19 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 548, "declaration": { + "commentStart": 548, "end": 0, "id": { + "commentStart": 548, "end": 0, "name": "hatHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 560, "end": 0, "raw": "3", "start": 0, @@ -161,15 +186,19 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 562, "declaration": { + "commentStart": 562, "end": 0, "id": { + "commentStart": 562, "end": 0, "name": "hatWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 573, "end": 0, "raw": "5", "start": 0, @@ -190,15 +219,19 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 575, "declaration": { + "commentStart": 575, "end": 0, "id": { + "commentStart": 575, "end": 0, "name": "boltSize", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 586, "end": 0, "raw": "0.25", "start": 0, @@ -219,15 +252,19 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 591, "declaration": { + "commentStart": 591, "end": 0, "id": { + "commentStart": 591, "end": 0, "name": "flangeWidth", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 605, "end": 0, "raw": "1.5", "start": 0, @@ -248,9 +285,12 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 608, "declaration": { + "commentStart": 688, "end": 0, "id": { + "commentStart": 688, "end": 0, "name": "baseExtrusion", "start": 0, @@ -261,6 +301,7 @@ description: Result of parsing sheet-metal-bracket.kcl { "arguments": [ { + "commentStart": 718, "end": 0, "raw": "'-XZ'", "start": 0, @@ -270,11 +311,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 704, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 704, "end": 0, "start": 0, "type": "CallExpression", @@ -283,8 +326,10 @@ description: Result of parsing sheet-metal-bracket.kcl { "arguments": [ { + "commentStart": 745, "elements": [ { + "commentStart": 746, "end": 0, "raw": "0", "start": 0, @@ -296,6 +341,7 @@ description: Result of parsing sheet-metal-bracket.kcl } }, { + "commentStart": 749, "end": 0, "raw": "0", "start": 0, @@ -313,6 +359,7 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "ArrayExpression" }, { + "commentStart": 753, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -320,11 +367,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 730, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 730, "end": 0, "start": 0, "type": "CallExpression", @@ -335,14 +384,17 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 766, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 772, "elements": [ { + "commentStart": 773, "end": 0, "raw": "0", "start": 0, @@ -354,6 +406,7 @@ description: Result of parsing sheet-metal-bracket.kcl } }, { + "commentStart": 776, "end": 0, "name": "thickness", "start": 0, @@ -370,12 +423,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 788, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 794, "end": 0, "start": 0, "type": "TagDeclarator", @@ -385,11 +440,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 761, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 761, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -401,14 +458,17 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 809, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 815, "elements": [ { + "commentStart": 816, "end": 0, "name": "flangeLength", "start": 0, @@ -416,6 +476,7 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "Identifier" }, { + "commentStart": 830, "end": 0, "raw": "0", "start": 0, @@ -436,12 +497,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 834, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 840, "end": 0, "start": 0, "type": "TagDeclarator", @@ -451,11 +514,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 804, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 804, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -467,14 +532,17 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 855, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 861, "elements": [ { + "commentStart": 862, "end": 0, "raw": "0", "start": 0, @@ -486,6 +554,7 @@ description: Result of parsing sheet-metal-bracket.kcl } }, { + "commentStart": 865, "end": 0, "name": "hatHeight", "start": 0, @@ -502,12 +571,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 877, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 883, "end": 0, "start": 0, "type": "TagDeclarator", @@ -517,11 +588,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 850, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 850, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -533,14 +606,17 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 898, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 904, "elements": [ { + "commentStart": 905, "end": 0, "name": "hatWidth", "start": 0, @@ -548,6 +624,7 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "Identifier" }, { + "commentStart": 915, "end": 0, "raw": "0", "start": 0, @@ -568,12 +645,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 919, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 925, "end": 0, "start": 0, "type": "TagDeclarator", @@ -583,11 +662,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 893, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 893, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -599,14 +680,17 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 940, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 946, "elements": [ { + "commentStart": 947, "end": 0, "raw": "0", "start": 0, @@ -619,12 +703,14 @@ description: Result of parsing sheet-metal-bracket.kcl }, { "argument": { + "commentStart": 951, "end": 0, "name": "hatHeight", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 950, "end": 0, "operator": "-", "start": 0, @@ -641,12 +727,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 963, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 969, "end": 0, "start": 0, "type": "TagDeclarator", @@ -656,11 +744,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 935, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 935, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -672,14 +762,17 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 984, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 990, "elements": [ { + "commentStart": 991, "end": 0, "name": "flangeLength", "start": 0, @@ -687,6 +780,7 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "Identifier" }, { + "commentStart": 1005, "end": 0, "raw": "0", "start": 0, @@ -707,12 +801,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1009, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1015, "end": 0, "start": 0, "type": "TagDeclarator", @@ -722,11 +818,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 979, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 979, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -738,14 +836,17 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1030, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1036, "elements": [ { + "commentStart": 1037, "end": 0, "raw": "0", "start": 0, @@ -758,12 +859,14 @@ description: Result of parsing sheet-metal-bracket.kcl }, { "argument": { + "commentStart": 1041, "end": 0, "name": "thickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1040, "end": 0, "operator": "-", "start": 0, @@ -780,12 +883,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1053, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1059, "end": 0, "start": 0, "type": "TagDeclarator", @@ -795,11 +900,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1025, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1025, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -811,23 +918,28 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1074, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1080, "elements": [ { + "commentStart": 1081, "end": 0, "left": { "argument": { + "commentStart": 1082, "end": 0, "name": "flangeLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1081, "end": 0, "operator": "-", "start": 0, @@ -836,6 +948,7 @@ description: Result of parsing sheet-metal-bracket.kcl }, "operator": "-", "right": { + "commentStart": 1097, "end": 0, "name": "thickness", "start": 0, @@ -847,6 +960,7 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 1108, "end": 0, "raw": "0", "start": 0, @@ -867,12 +981,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1112, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1118, "end": 0, "start": 0, "type": "TagDeclarator", @@ -882,11 +998,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1069, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1069, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -898,14 +1016,17 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1133, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1139, "elements": [ { + "commentStart": 1140, "end": 0, "raw": "0", "start": 0, @@ -917,6 +1038,7 @@ description: Result of parsing sheet-metal-bracket.kcl } }, { + "commentStart": 1143, "end": 0, "name": "hatHeight", "start": 0, @@ -933,12 +1055,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1155, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1161, "end": 0, "start": 0, "type": "TagDeclarator", @@ -948,11 +1072,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1128, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1128, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -964,23 +1090,28 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1176, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1182, "elements": [ { + "commentStart": 1183, "end": 0, "left": { "argument": { + "commentStart": 1184, "end": 0, "name": "hatWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1183, "end": 0, "operator": "-", "start": 0, @@ -989,8 +1120,10 @@ description: Result of parsing sheet-metal-bracket.kcl }, "operator": "+", "right": { + "commentStart": 1195, "end": 0, "left": { + "commentStart": 1195, "end": 0, "raw": "2", "start": 0, @@ -1003,6 +1136,7 @@ description: Result of parsing sheet-metal-bracket.kcl }, "operator": "*", "right": { + "commentStart": 1199, "end": 0, "name": "thickness", "start": 0, @@ -1018,6 +1152,7 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "BinaryExpression" }, { + "commentStart": 1210, "end": 0, "raw": "0", "start": 0, @@ -1038,12 +1173,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1214, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1220, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1053,11 +1190,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1171, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1171, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1069,14 +1208,17 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1236, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1242, "elements": [ { + "commentStart": 1243, "end": 0, "raw": "0", "start": 0, @@ -1089,12 +1231,14 @@ description: Result of parsing sheet-metal-bracket.kcl }, { "argument": { + "commentStart": 1247, "end": 0, "name": "hatHeight", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1246, "end": 0, "operator": "-", "start": 0, @@ -1111,12 +1255,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1259, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1265, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1126,11 +1272,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1231, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1231, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1142,12 +1290,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1282, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1288, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1157,11 +1307,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1276, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1276, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1173,12 +1325,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1307, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1316, "end": 0, "name": "hatWidth", "start": 0, @@ -1188,11 +1342,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1299, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1299, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1204,12 +1360,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1346, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1355, "end": 0, "name": "bendRad", "start": 0, @@ -1220,16 +1378,19 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1371, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1378, "elements": [ { "arguments": [ { + "commentStart": 1399, "end": 0, "name": "e2", "start": 0, @@ -1238,11 +1399,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1379, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1379, "end": 0, "start": 0, "type": "CallExpression", @@ -1257,11 +1420,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1331, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1331, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1273,12 +1438,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1431, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1440, "end": 0, "name": "outsideBendRad", "start": 0, @@ -1289,16 +1456,19 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1463, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1470, "elements": [ { "arguments": [ { + "commentStart": 1491, "end": 0, "name": "e3", "start": 0, @@ -1307,11 +1477,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1471, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1471, "end": 0, "start": 0, "type": "CallExpression", @@ -1326,11 +1498,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1416, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1416, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1342,12 +1516,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1523, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1532, "end": 0, "name": "outsideBendRad", "start": 0, @@ -1358,16 +1534,19 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1555, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1562, "elements": [ { "arguments": [ { + "commentStart": 1583, "end": 0, "name": "e4", "start": 0, @@ -1376,11 +1555,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1563, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1563, "end": 0, "start": 0, "type": "CallExpression", @@ -1395,11 +1576,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1508, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1508, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1411,12 +1594,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1615, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1624, "end": 0, "name": "bendRad", "start": 0, @@ -1427,16 +1612,19 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1640, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1647, "elements": [ { "arguments": [ { + "commentStart": 1668, "end": 0, "name": "e5", "start": 0, @@ -1445,11 +1633,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1648, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1648, "end": 0, "start": 0, "type": "CallExpression", @@ -1464,11 +1654,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1600, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1600, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1480,12 +1672,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1700, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1709, "end": 0, "name": "outsideBendRad", "start": 0, @@ -1496,16 +1690,19 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1732, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1739, "elements": [ { "arguments": [ { + "commentStart": 1760, "end": 0, "name": "e8", "start": 0, @@ -1514,11 +1711,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1740, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1740, "end": 0, "start": 0, "type": "CallExpression", @@ -1533,11 +1732,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1685, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1685, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1549,12 +1750,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1792, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1801, "end": 0, "name": "bendRad", "start": 0, @@ -1565,16 +1768,19 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1817, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1824, "elements": [ { "arguments": [ { + "commentStart": 1845, "end": 0, "name": "e9", "start": 0, @@ -1583,11 +1789,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1825, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1825, "end": 0, "start": 0, "type": "CallExpression", @@ -1602,11 +1810,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1777, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1777, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1618,12 +1828,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1877, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1886, "end": 0, "name": "bendRad", "start": 0, @@ -1634,16 +1846,19 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1902, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1909, "elements": [ { "arguments": [ { + "commentStart": 1930, "end": 0, "name": "e10", "start": 0, @@ -1652,11 +1867,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1910, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1910, "end": 0, "start": 0, "type": "CallExpression", @@ -1671,11 +1888,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1862, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1862, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1687,12 +1906,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1963, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1972, "end": 0, "name": "outsideBendRad", "start": 0, @@ -1703,16 +1924,19 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 1995, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2002, "elements": [ { "arguments": [ { + "commentStart": 2023, "end": 0, "name": "e11", "start": 0, @@ -1721,11 +1945,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2003, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 2003, "end": 0, "start": 0, "type": "CallExpression", @@ -1740,11 +1966,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 1948, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1948, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1752,11 +1980,13 @@ description: Result of parsing sheet-metal-bracket.kcl "unlabeled": null } ], + "commentStart": 704, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "22": [ { + "commentStart": 2035, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1779,14 +2009,22 @@ description: Result of parsing sheet-metal-bracket.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Sketch and extrude the base shape and fillet the inside and outside edges." + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2084, "declaration": { + "commentStart": 2084, "end": 0, "id": { + "commentStart": 2084, "end": 0, "name": "flange1", "start": 0, @@ -1797,6 +2035,7 @@ description: Result of parsing sheet-metal-bracket.kcl { "arguments": [ { + "commentStart": 2108, "end": 0, "raw": "'XY'", "start": 0, @@ -1806,11 +2045,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2094, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2094, "end": 0, "start": 0, "type": "CallExpression", @@ -1819,8 +2060,10 @@ description: Result of parsing sheet-metal-bracket.kcl { "arguments": [ { + "commentStart": 2134, "elements": [ { + "commentStart": 2135, "end": 0, "raw": "0", "start": 0, @@ -1832,6 +2075,7 @@ description: Result of parsing sheet-metal-bracket.kcl } }, { + "commentStart": 2138, "end": 0, "raw": "0", "start": 0, @@ -1849,6 +2093,7 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "ArrayExpression" }, { + "commentStart": 2142, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1856,11 +2101,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2119, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2119, "end": 0, "start": 0, "type": "CallExpression", @@ -1871,14 +2118,17 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2155, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2161, "elements": [ { + "commentStart": 2162, "end": 0, "raw": "0", "start": 0, @@ -1890,6 +2140,7 @@ description: Result of parsing sheet-metal-bracket.kcl } }, { + "commentStart": 2165, "end": 0, "name": "hatWidth", "start": 0, @@ -1905,11 +2156,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2150, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2150, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1921,14 +2174,17 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2186, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2192, "elements": [ { + "commentStart": 2193, "end": 0, "name": "flangeWidth", "start": 0, @@ -1936,6 +2192,7 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "Identifier" }, { + "commentStart": 2206, "end": 0, "raw": "0", "start": 0, @@ -1956,12 +2213,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2210, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2216, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1971,11 +2230,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2181, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2181, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1987,14 +2248,17 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2232, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2238, "elements": [ { + "commentStart": 2239, "end": 0, "raw": "0", "start": 0, @@ -2007,12 +2271,14 @@ description: Result of parsing sheet-metal-bracket.kcl }, { "argument": { + "commentStart": 2243, "end": 0, "name": "hatWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2242, "end": 0, "operator": "-", "start": 0, @@ -2029,12 +2295,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2254, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2260, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2044,11 +2312,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2227, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2227, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2058,11 +2328,13 @@ description: Result of parsing sheet-metal-bracket.kcl { "arguments": [], "callee": { + "commentStart": 2271, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2271, "end": 0, "start": 0, "type": "CallExpression", @@ -2075,14 +2347,17 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2304, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2313, "elements": [ { + "commentStart": 2314, "end": 0, "raw": "0.75", "start": 0, @@ -2094,6 +2369,7 @@ description: Result of parsing sheet-metal-bracket.kcl } }, { + "commentStart": 2320, "end": 0, "raw": "1", "start": 0, @@ -2114,12 +2390,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2331, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2340, "end": 0, "name": "boltSize", "start": 0, @@ -2129,11 +2407,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2289, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2289, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2141,6 +2421,7 @@ description: Result of parsing sheet-metal-bracket.kcl "unlabeled": null }, { + "commentStart": 2357, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2148,11 +2429,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2284, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 2284, "end": 0, "start": 0, "type": "CallExpression", @@ -2165,14 +2448,17 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2385, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2394, "elements": [ { + "commentStart": 2395, "end": 0, "raw": "0.75", "start": 0, @@ -2184,6 +2470,7 @@ description: Result of parsing sheet-metal-bracket.kcl } }, { + "commentStart": 2401, "end": 0, "raw": "4", "start": 0, @@ -2204,12 +2491,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2412, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2421, "end": 0, "name": "boltSize", "start": 0, @@ -2219,11 +2508,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2370, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2370, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2231,6 +2522,7 @@ description: Result of parsing sheet-metal-bracket.kcl "unlabeled": null }, { + "commentStart": 2438, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2238,11 +2530,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2365, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 2365, "end": 0, "start": 0, "type": "CallExpression", @@ -2253,12 +2547,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2454, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2463, "end": 0, "name": "thickness", "start": 0, @@ -2268,11 +2564,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2446, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2446, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2284,12 +2582,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2494, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2503, "end": 0, "raw": "0.5", "start": 0, @@ -2304,16 +2604,19 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2515, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2522, "elements": [ { "arguments": [ { + "commentStart": 2553, "end": 0, "name": "e13", "start": 0, @@ -2322,11 +2625,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2533, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 2533, "end": 0, "start": 0, "type": "CallExpression", @@ -2335,6 +2640,7 @@ description: Result of parsing sheet-metal-bracket.kcl { "arguments": [ { + "commentStart": 2588, "end": 0, "name": "e14", "start": 0, @@ -2343,11 +2649,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2568, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 2568, "end": 0, "start": 0, "type": "CallExpression", @@ -2362,11 +2670,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2479, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 2479, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2374,6 +2684,7 @@ description: Result of parsing sheet-metal-bracket.kcl "unlabeled": null } ], + "commentStart": 2094, "end": 0, "start": 0, "type": "PipeExpression", @@ -2389,9 +2700,12 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "VariableDeclaration" }, { + "commentStart": 2608, "declaration": { + "commentStart": 2610, "end": 0, "id": { + "commentStart": 2610, "end": 0, "name": "flange2", "start": 0, @@ -2402,6 +2716,7 @@ description: Result of parsing sheet-metal-bracket.kcl { "arguments": [ { + "commentStart": 2634, "end": 0, "raw": "'XY'", "start": 0, @@ -2411,11 +2726,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2620, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2620, "end": 0, "start": 0, "type": "CallExpression", @@ -2424,9 +2741,11 @@ description: Result of parsing sheet-metal-bracket.kcl { "arguments": [ { + "commentStart": 2660, "elements": [ { "argument": { + "commentStart": 2662, "end": 0, "raw": "6", "start": 0, @@ -2437,6 +2756,7 @@ description: Result of parsing sheet-metal-bracket.kcl "suffix": "None" } }, + "commentStart": 2661, "end": 0, "operator": "-", "start": 0, @@ -2444,6 +2764,7 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "UnaryExpression" }, { + "commentStart": 2665, "end": 0, "raw": "0", "start": 0, @@ -2461,6 +2782,7 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "ArrayExpression" }, { + "commentStart": 2669, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2468,11 +2790,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2645, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 2645, "end": 0, "start": 0, "type": "CallExpression", @@ -2483,14 +2807,17 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2682, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2688, "elements": [ { + "commentStart": 2689, "end": 0, "raw": "0", "start": 0, @@ -2502,6 +2829,7 @@ description: Result of parsing sheet-metal-bracket.kcl } }, { + "commentStart": 2692, "end": 0, "name": "hatWidth", "start": 0, @@ -2517,11 +2845,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2677, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2677, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2533,21 +2863,25 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2713, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2719, "elements": [ { "argument": { + "commentStart": 2721, "end": 0, "name": "flangeWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2720, "end": 0, "operator": "-", "start": 0, @@ -2555,6 +2889,7 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "UnaryExpression" }, { + "commentStart": 2734, "end": 0, "raw": "0", "start": 0, @@ -2575,12 +2910,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2738, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2744, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2590,11 +2927,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2708, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2708, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2606,14 +2945,17 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2760, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2766, "elements": [ { + "commentStart": 2767, "end": 0, "raw": "0", "start": 0, @@ -2626,12 +2968,14 @@ description: Result of parsing sheet-metal-bracket.kcl }, { "argument": { + "commentStart": 2771, "end": 0, "name": "hatWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2770, "end": 0, "operator": "-", "start": 0, @@ -2648,12 +2992,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2782, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2788, "end": 0, "start": 0, "type": "TagDeclarator", @@ -2663,11 +3009,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2755, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2755, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2677,11 +3025,13 @@ description: Result of parsing sheet-metal-bracket.kcl { "arguments": [], "callee": { + "commentStart": 2799, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 2799, "end": 0, "start": 0, "type": "CallExpression", @@ -2694,15 +3044,18 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2832, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2841, "elements": [ { "argument": { + "commentStart": 2843, "end": 0, "raw": "6.75", "start": 0, @@ -2713,6 +3066,7 @@ description: Result of parsing sheet-metal-bracket.kcl "suffix": "None" } }, + "commentStart": 2842, "end": 0, "operator": "-", "start": 0, @@ -2720,6 +3074,7 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "UnaryExpression" }, { + "commentStart": 2849, "end": 0, "raw": "1", "start": 0, @@ -2740,12 +3095,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2860, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2869, "end": 0, "name": "boltSize", "start": 0, @@ -2755,11 +3112,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2817, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2817, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2767,6 +3126,7 @@ description: Result of parsing sheet-metal-bracket.kcl "unlabeled": null }, { + "commentStart": 2886, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2774,11 +3134,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2812, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 2812, "end": 0, "start": 0, "type": "CallExpression", @@ -2791,15 +3153,18 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2914, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2923, "elements": [ { "argument": { + "commentStart": 2925, "end": 0, "raw": "6.75", "start": 0, @@ -2810,6 +3175,7 @@ description: Result of parsing sheet-metal-bracket.kcl "suffix": "None" } }, + "commentStart": 2924, "end": 0, "operator": "-", "start": 0, @@ -2817,6 +3183,7 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "UnaryExpression" }, { + "commentStart": 2931, "end": 0, "raw": "4", "start": 0, @@ -2837,12 +3204,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2942, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2951, "end": 0, "name": "boltSize", "start": 0, @@ -2852,11 +3221,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2899, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2899, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2864,6 +3235,7 @@ description: Result of parsing sheet-metal-bracket.kcl "unlabeled": null }, { + "commentStart": 2968, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2871,11 +3243,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2894, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 2894, "end": 0, "start": 0, "type": "CallExpression", @@ -2886,12 +3260,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 2984, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2993, "end": 0, "name": "thickness", "start": 0, @@ -2901,11 +3277,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 2976, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2976, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2917,12 +3295,14 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3024, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3033, "end": 0, "raw": "0.25", "start": 0, @@ -2937,16 +3317,19 @@ description: Result of parsing sheet-metal-bracket.kcl { "type": "LabeledArg", "label": { + "commentStart": 3046, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3053, "elements": [ { "arguments": [ { + "commentStart": 3084, "end": 0, "name": "e15", "start": 0, @@ -2955,11 +3338,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 3064, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 3064, "end": 0, "start": 0, "type": "CallExpression", @@ -2968,6 +3353,7 @@ description: Result of parsing sheet-metal-bracket.kcl { "arguments": [ { + "commentStart": 3119, "end": 0, "name": "e16", "start": 0, @@ -2976,11 +3362,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 3099, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 3099, "end": 0, "start": 0, "type": "CallExpression", @@ -2995,11 +3383,13 @@ description: Result of parsing sheet-metal-bracket.kcl } ], "callee": { + "commentStart": 3009, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 3009, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3007,6 +3397,7 @@ description: Result of parsing sheet-metal-bracket.kcl "unlabeled": null } ], + "commentStart": 2620, "end": 0, "start": 0, "type": "PipeExpression", @@ -3022,20 +3413,32 @@ description: Result of parsing sheet-metal-bracket.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 321, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Sheet Metal Bracket", + "// A component typically made from flat sheet metal through various manufacturing processes such as bending, punching, cutting, and forming. These brackets are used to support, attach, or mount other hardware components, often providing a structural or functional base for assembly.", + "", + "", + "// Set Units" + ], "properties": [ { + "commentStart": 330, "end": 0, "key": { + "commentStart": 330, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -3044,6 +3447,7 @@ description: Result of parsing sheet-metal-bracket.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 350, "end": 0, "name": "in", "start": 0, @@ -3058,20 +3462,9 @@ description: Result of parsing sheet-metal-bracket.kcl ], "nonCodeMeta": { "nonCodeNodes": { - "7": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Sketch and extrude the base shape and fillet the inside and outside edges.", - "style": "line" - } - } - ], "9": [ { + "commentStart": 2608, "end": 0, "start": 0, "type": "NonCodeNode", @@ -3083,60 +3476,13 @@ description: Result of parsing sheet-metal-bracket.kcl }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Sheet Metal Bracket", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A component typically made from flat sheet metal through various manufacturing processes such as bending, punching, cutting, and forming. These brackets are used to support, attach, or mount other hardware components, often providing a structural or functional base for assembly.", - "style": "line" - } - }, - { + "commentStart": 353, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set Units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants such as sheet metal thickness, bend radius, flange length, bolt diameter size, etc.", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/sheet-metal-bracket/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/sheet-metal-bracket/program_memory.snap index ef622b76c..1140bfd6e 100644 --- a/rust/kcl-lib/tests/kcl_samples/sheet-metal-bracket/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/sheet-metal-bracket/program_memory.snap @@ -15,6 +15,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 794, "end": 797, "start": 794, "type": "TagDeclarator", @@ -27,6 +28,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 840, "end": 843, "start": 840, "type": "TagDeclarator", @@ -39,6 +41,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 883, "end": 886, "start": 883, "type": "TagDeclarator", @@ -51,6 +54,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 925, "end": 928, "start": 925, "type": "TagDeclarator", @@ -63,6 +67,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 969, "end": 972, "start": 969, "type": "TagDeclarator", @@ -75,6 +80,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1015, "end": 1018, "start": 1015, "type": "TagDeclarator", @@ -87,6 +93,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1059, "end": 1062, "start": 1059, "type": "TagDeclarator", @@ -99,6 +106,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1118, "end": 1121, "start": 1118, "type": "TagDeclarator", @@ -111,6 +119,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1161, "end": 1164, "start": 1161, "type": "TagDeclarator", @@ -123,6 +132,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1220, "end": 1224, "start": 1220, "type": "TagDeclarator", @@ -135,6 +145,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1265, "end": 1269, "start": 1265, "type": "TagDeclarator", @@ -147,6 +158,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1288, "end": 1292, "start": 1288, "type": "TagDeclarator", @@ -169,6 +181,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl 0.0 ], "tag": { + "commentStart": 794, "end": 797, "start": 794, "type": "TagDeclarator", @@ -193,6 +206,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl 0.09 ], "tag": { + "commentStart": 840, "end": 843, "start": 840, "type": "TagDeclarator", @@ -217,6 +231,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl 0.09 ], "tag": { + "commentStart": 883, "end": 886, "start": 883, "type": "TagDeclarator", @@ -241,6 +256,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl 3.09 ], "tag": { + "commentStart": 925, "end": 928, "start": 925, "type": "TagDeclarator", @@ -265,6 +281,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl 3.09 ], "tag": { + "commentStart": 969, "end": 972, "start": 969, "type": "TagDeclarator", @@ -289,6 +306,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl 0.09 ], "tag": { + "commentStart": 1015, "end": 1018, "start": 1015, "type": "TagDeclarator", @@ -313,6 +331,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl 0.09 ], "tag": { + "commentStart": 1059, "end": 1062, "start": 1059, "type": "TagDeclarator", @@ -337,6 +356,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl -0.0 ], "tag": { + "commentStart": 1118, "end": 1121, "start": 1118, "type": "TagDeclarator", @@ -361,6 +381,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl -0.0 ], "tag": { + "commentStart": 1161, "end": 1164, "start": 1161, "type": "TagDeclarator", @@ -385,6 +406,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl 3.0 ], "tag": { + "commentStart": 1220, "end": 1224, "start": 1220, "type": "TagDeclarator", @@ -409,6 +431,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl 3.0 ], "tag": { + "commentStart": 1265, "end": 1269, "start": 1265, "type": "TagDeclarator", @@ -433,6 +456,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl 0.0 ], "tag": { + "commentStart": 1288, "end": 1292, "start": 1288, "type": "TagDeclarator", @@ -742,6 +766,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2216, "end": 2220, "start": 2216, "type": "TagDeclarator", @@ -754,6 +779,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2260, "end": 2264, "start": 2260, "type": "TagDeclarator", @@ -802,6 +828,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl 5.0 ], "tag": { + "commentStart": 2216, "end": 2220, "start": 2216, "type": "TagDeclarator", @@ -826,6 +853,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl 5.0 ], "tag": { + "commentStart": 2260, "end": 2264, "start": 2260, "type": "TagDeclarator", @@ -966,6 +994,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2744, "end": 2748, "start": 2744, "type": "TagDeclarator", @@ -978,6 +1007,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 2788, "end": 2792, "start": 2788, "type": "TagDeclarator", @@ -1026,6 +1056,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl 5.0 ], "tag": { + "commentStart": 2744, "end": 2748, "start": 2744, "type": "TagDeclarator", @@ -1050,6 +1081,7 @@ description: Variables in memory after executing sheet-metal-bracket.kcl 5.0 ], "tag": { + "commentStart": 2788, "end": 2792, "start": 2788, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/ast.snap b/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/ast.snap index 96153f423..caa50ed2e 100644 --- a/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing socket-head-cap-screw.kcl "Ok": { "body": [ { + "commentStart": 404, "declaration": { + "commentStart": 426, "end": 0, "id": { + "commentStart": 426, "end": 0, "name": "screwLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 440, "end": 0, "raw": "1.0", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing socket-head-cap-screw.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 444, "declaration": { + "commentStart": 444, "end": 0, "id": { + "commentStart": 444, "end": 0, "name": "screwDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 460, "end": 0, "raw": ".190", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "VariableDeclaration" }, { + "commentStart": 465, "declaration": { + "commentStart": 465, "end": 0, "id": { + "commentStart": 465, "end": 0, "name": "headDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 480, "end": 0, "raw": ".313", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "VariableDeclaration" }, { + "commentStart": 485, "declaration": { + "commentStart": 485, "end": 0, "id": { + "commentStart": 485, "end": 0, "name": "headLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 498, "end": 0, "name": "screwDiameter", "start": 0, @@ -118,17 +137,22 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "VariableDeclaration" }, { + "commentStart": 512, "declaration": { + "commentStart": 512, "end": 0, "id": { + "commentStart": 512, "end": 0, "name": "hexWallToWall", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 528, "end": 0, "left": { + "commentStart": 528, "end": 0, "raw": "5", "start": 0, @@ -141,6 +165,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "/", "right": { + "commentStart": 532, "end": 0, "raw": "32", "start": 0, @@ -165,17 +190,22 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "VariableDeclaration" }, { + "commentStart": 535, "declaration": { + "commentStart": 535, "end": 0, "id": { + "commentStart": 535, "end": 0, "name": "capRatio", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 546, "end": 0, "left": { + "commentStart": 546, "end": 0, "name": "screwDiameter", "start": 0, @@ -184,6 +214,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "/", "right": { + "commentStart": 562, "end": 0, "name": "headDiameter", "start": 0, @@ -204,17 +235,22 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "VariableDeclaration" }, { + "commentStart": 575, "declaration": { + "commentStart": 575, "end": 0, "id": { + "commentStart": 575, "end": 0, "name": "hexRatio", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 586, "end": 0, "left": { + "commentStart": 586, "end": 0, "name": "hexWallToWall", "start": 0, @@ -223,6 +259,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "/", "right": { + "commentStart": 602, "end": 0, "name": "headDiameter", "start": 0, @@ -243,21 +280,28 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "VariableDeclaration" }, { + "commentStart": 615, "declaration": { + "commentStart": 615, "end": 0, "id": { + "commentStart": 615, "end": 0, "name": "hexWallLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 631, "end": 0, "left": { + "commentStart": 631, "end": 0, "left": { + "commentStart": 631, "end": 0, "left": { + "commentStart": 631, "end": 0, "name": "hexWallToWall", "start": 0, @@ -266,6 +310,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "/", "right": { + "commentStart": 647, "end": 0, "raw": "2", "start": 0, @@ -282,6 +327,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "*", "right": { + "commentStart": 651, "end": 0, "raw": "1", "start": 0, @@ -302,6 +348,7 @@ description: Result of parsing socket-head-cap-screw.kcl { "arguments": [ { + "commentStart": 669, "end": 0, "raw": "30", "start": 0, @@ -314,11 +361,13 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 659, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 659, "end": 0, "start": 0, "type": "CallExpression", @@ -326,11 +375,13 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 655, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 655, "end": 0, "start": 0, "type": "CallExpression", @@ -350,15 +401,19 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "VariableDeclaration" }, { + "commentStart": 674, "declaration": { + "commentStart": 674, "end": 0, "id": { + "commentStart": 674, "end": 0, "name": "hexStartingAngle", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 693, "end": 0, "raw": "210", "start": 0, @@ -379,15 +434,19 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "VariableDeclaration" }, { + "commentStart": 696, "declaration": { + "commentStart": 727, "end": 0, "id": { + "commentStart": 727, "end": 0, "name": "hexInteriorAngle", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 746, "end": 0, "raw": "120", "start": 0, @@ -408,17 +467,22 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "VariableDeclaration" }, { + "commentStart": 750, "declaration": { + "commentStart": 750, "end": 0, "id": { + "commentStart": 750, "end": 0, "name": "hexChangeAngle", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 767, "end": 0, "left": { + "commentStart": 767, "end": 0, "raw": "180", "start": 0, @@ -431,6 +495,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "-", "right": { + "commentStart": 773, "end": 0, "name": "hexInteriorAngle", "start": 0, @@ -451,9 +516,12 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "VariableDeclaration" }, { + "commentStart": 789, "declaration": { + "commentStart": 853, "end": 0, "id": { + "commentStart": 853, "end": 0, "name": "capScrew", "start": 0, @@ -463,9 +531,12 @@ description: Result of parsing socket-head-cap-screw.kcl "body": { "body": [ { + "commentStart": 898, "declaration": { + "commentStart": 939, "end": 0, "id": { + "commentStart": 939, "end": 0, "name": "screwHeadSketch", "start": 0, @@ -476,6 +547,7 @@ description: Result of parsing socket-head-cap-screw.kcl { "arguments": [ { + "commentStart": 971, "end": 0, "raw": "'XZ'", "start": 0, @@ -485,11 +557,13 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 957, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 957, "end": 0, "start": 0, "type": "CallExpression", @@ -500,17 +574,21 @@ description: Result of parsing socket-head-cap-screw.kcl { "type": "LabeledArg", "label": { + "commentStart": 1001, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1010, "elements": [ { + "commentStart": 1011, "computed": false, "end": 0, "object": { + "commentStart": 1011, "end": 0, "name": "start", "start": 0, @@ -518,6 +596,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "Identifier" }, "property": { + "commentStart": 1017, "end": 0, "raw": "0", "start": 0, @@ -533,9 +612,11 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "MemberExpression" }, { + "commentStart": 1021, "computed": false, "end": 0, "object": { + "commentStart": 1021, "end": 0, "name": "start", "start": 0, @@ -543,6 +624,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "Identifier" }, "property": { + "commentStart": 1027, "end": 0, "raw": "1", "start": 0, @@ -567,16 +649,20 @@ description: Result of parsing socket-head-cap-screw.kcl { "type": "LabeledArg", "label": { + "commentStart": 1041, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1050, "end": 0, "left": { + "commentStart": 1050, "end": 0, "left": { + "commentStart": 1050, "end": 0, "name": "dia", "start": 0, @@ -585,6 +671,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "/", "right": { + "commentStart": 1056, "end": 0, "name": "capRatio", "start": 0, @@ -597,6 +684,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "/", "right": { + "commentStart": 1067, "end": 0, "raw": "2", "start": 0, @@ -614,11 +702,13 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 984, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 984, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -626,11 +716,13 @@ description: Result of parsing socket-head-cap-screw.kcl "unlabeled": null } ], + "commentStart": 957, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 1079, "end": 0, "start": 0, "type": "NonCodeNode", @@ -653,14 +745,20 @@ description: Result of parsing socket-head-cap-screw.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Create the head of the cap screw" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1116, "declaration": { + "commentStart": 1116, "end": 0, "id": { + "commentStart": 1116, "end": 0, "name": "screwHead", "start": 0, @@ -671,12 +769,14 @@ description: Result of parsing socket-head-cap-screw.kcl { "type": "LabeledArg", "label": { + "commentStart": 1153, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1162, "end": 0, "name": "capHeadLength", "start": 0, @@ -686,16 +786,19 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 1128, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1128, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1136, "end": 0, "name": "screwHeadSketch", "start": 0, @@ -713,9 +816,12 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "VariableDeclaration" }, { + "commentStart": 1178, "declaration": { + "commentStart": 1240, "end": 0, "id": { + "commentStart": 1240, "end": 0, "name": "hexPatternSketch", "start": 0, @@ -726,6 +832,7 @@ description: Result of parsing socket-head-cap-screw.kcl { "arguments": [ { + "commentStart": 1273, "end": 0, "name": "screwHead", "start": 0, @@ -733,6 +840,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "Identifier" }, { + "commentStart": 1284, "end": 0, "raw": "'end'", "start": 0, @@ -742,11 +850,13 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 1259, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1259, "end": 0, "start": 0, "type": "CallExpression", @@ -755,10 +865,13 @@ description: Result of parsing socket-head-cap-screw.kcl { "arguments": [ { + "commentStart": 1313, "elements": [ { + "commentStart": 1314, "end": 0, "left": { + "commentStart": 1314, "end": 0, "name": "hexWallToWall", "start": 0, @@ -767,6 +880,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "/", "right": { + "commentStart": 1330, "end": 0, "raw": "2", "start": 0, @@ -782,6 +896,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "BinaryExpression" }, { + "commentStart": 1333, "end": 0, "raw": "0", "start": 0, @@ -799,6 +914,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "ArrayExpression" }, { + "commentStart": 1337, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -806,11 +922,13 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 1298, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1298, "end": 0, "start": 0, "type": "CallExpression", @@ -821,21 +939,25 @@ description: Result of parsing socket-head-cap-screw.kcl { "type": "LabeledArg", "label": { + "commentStart": 1353, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1362, "end": 0, "left": { "argument": { + "commentStart": 1363, "end": 0, "name": "hexWallLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1362, "end": 0, "operator": "-", "start": 0, @@ -844,6 +966,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "/", "right": { + "commentStart": 1379, "end": 0, "raw": "2", "start": 0, @@ -861,11 +984,13 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 1347, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1347, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -875,11 +1000,14 @@ description: Result of parsing socket-head-cap-screw.kcl { "arguments": [ { + "commentStart": 1400, "end": 0, "properties": [ { + "commentStart": 1411, "end": 0, "key": { + "commentStart": 1411, "end": 0, "name": "angle", "start": 0, @@ -888,6 +1016,7 @@ description: Result of parsing socket-head-cap-screw.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1419, "end": 0, "name": "hexStartingAngle", "start": 0, @@ -896,8 +1025,10 @@ description: Result of parsing socket-head-cap-screw.kcl } }, { + "commentStart": 1446, "end": 0, "key": { + "commentStart": 1446, "end": 0, "name": "length", "start": 0, @@ -906,6 +1037,7 @@ description: Result of parsing socket-head-cap-screw.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1455, "end": 0, "name": "hexWallLength", "start": 0, @@ -919,6 +1051,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "ObjectExpression" }, { + "commentStart": 1479, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -926,11 +1059,13 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 1389, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1389, "end": 0, "start": 0, "type": "CallExpression", @@ -939,11 +1074,14 @@ description: Result of parsing socket-head-cap-screw.kcl { "arguments": [ { + "commentStart": 1500, "end": 0, "properties": [ { + "commentStart": 1511, "end": 0, "key": { + "commentStart": 1511, "end": 0, "name": "angle", "start": 0, @@ -952,8 +1090,10 @@ description: Result of parsing socket-head-cap-screw.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1519, "end": 0, "left": { + "commentStart": 1519, "end": 0, "name": "hexStartingAngle", "start": 0, @@ -962,6 +1102,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "-", "right": { + "commentStart": 1538, "end": 0, "name": "hexChangeAngle", "start": 0, @@ -974,8 +1115,10 @@ description: Result of parsing socket-head-cap-screw.kcl } }, { + "commentStart": 1563, "end": 0, "key": { + "commentStart": 1563, "end": 0, "name": "length", "start": 0, @@ -984,6 +1127,7 @@ description: Result of parsing socket-head-cap-screw.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1572, "end": 0, "name": "hexWallLength", "start": 0, @@ -997,6 +1141,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "ObjectExpression" }, { + "commentStart": 1596, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1004,11 +1149,13 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 1489, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1489, "end": 0, "start": 0, "type": "CallExpression", @@ -1017,11 +1164,14 @@ description: Result of parsing socket-head-cap-screw.kcl { "arguments": [ { + "commentStart": 1617, "end": 0, "properties": [ { + "commentStart": 1628, "end": 0, "key": { + "commentStart": 1628, "end": 0, "name": "angle", "start": 0, @@ -1030,8 +1180,10 @@ description: Result of parsing socket-head-cap-screw.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1636, "end": 0, "left": { + "commentStart": 1636, "end": 0, "name": "hexStartingAngle", "start": 0, @@ -1040,8 +1192,10 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "-", "right": { + "commentStart": 1656, "end": 0, "left": { + "commentStart": 1656, "end": 0, "raw": "2", "start": 0, @@ -1054,6 +1208,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "*", "right": { + "commentStart": 1660, "end": 0, "name": "hexChangeAngle", "start": 0, @@ -1070,8 +1225,10 @@ description: Result of parsing socket-head-cap-screw.kcl } }, { + "commentStart": 1686, "end": 0, "key": { + "commentStart": 1686, "end": 0, "name": "length", "start": 0, @@ -1080,6 +1237,7 @@ description: Result of parsing socket-head-cap-screw.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1695, "end": 0, "name": "hexWallLength", "start": 0, @@ -1093,6 +1251,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "ObjectExpression" }, { + "commentStart": 1719, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1100,11 +1259,13 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 1606, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1606, "end": 0, "start": 0, "type": "CallExpression", @@ -1113,11 +1274,14 @@ description: Result of parsing socket-head-cap-screw.kcl { "arguments": [ { + "commentStart": 1740, "end": 0, "properties": [ { + "commentStart": 1751, "end": 0, "key": { + "commentStart": 1751, "end": 0, "name": "angle", "start": 0, @@ -1126,8 +1290,10 @@ description: Result of parsing socket-head-cap-screw.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1759, "end": 0, "left": { + "commentStart": 1759, "end": 0, "name": "hexStartingAngle", "start": 0, @@ -1136,8 +1302,10 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "-", "right": { + "commentStart": 1779, "end": 0, "left": { + "commentStart": 1779, "end": 0, "raw": "3", "start": 0, @@ -1150,6 +1318,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "*", "right": { + "commentStart": 1783, "end": 0, "name": "hexChangeAngle", "start": 0, @@ -1166,8 +1335,10 @@ description: Result of parsing socket-head-cap-screw.kcl } }, { + "commentStart": 1809, "end": 0, "key": { + "commentStart": 1809, "end": 0, "name": "length", "start": 0, @@ -1176,6 +1347,7 @@ description: Result of parsing socket-head-cap-screw.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1818, "end": 0, "name": "hexWallLength", "start": 0, @@ -1189,6 +1361,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "ObjectExpression" }, { + "commentStart": 1842, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1196,11 +1369,13 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 1729, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1729, "end": 0, "start": 0, "type": "CallExpression", @@ -1209,11 +1384,14 @@ description: Result of parsing socket-head-cap-screw.kcl { "arguments": [ { + "commentStart": 1863, "end": 0, "properties": [ { + "commentStart": 1874, "end": 0, "key": { + "commentStart": 1874, "end": 0, "name": "angle", "start": 0, @@ -1222,8 +1400,10 @@ description: Result of parsing socket-head-cap-screw.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1882, "end": 0, "left": { + "commentStart": 1882, "end": 0, "name": "hexStartingAngle", "start": 0, @@ -1232,8 +1412,10 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "-", "right": { + "commentStart": 1902, "end": 0, "left": { + "commentStart": 1902, "end": 0, "raw": "4", "start": 0, @@ -1246,6 +1428,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "*", "right": { + "commentStart": 1906, "end": 0, "name": "hexChangeAngle", "start": 0, @@ -1262,8 +1445,10 @@ description: Result of parsing socket-head-cap-screw.kcl } }, { + "commentStart": 1932, "end": 0, "key": { + "commentStart": 1932, "end": 0, "name": "length", "start": 0, @@ -1272,6 +1457,7 @@ description: Result of parsing socket-head-cap-screw.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1941, "end": 0, "name": "hexWallLength", "start": 0, @@ -1285,6 +1471,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "ObjectExpression" }, { + "commentStart": 1965, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1292,11 +1479,13 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 1852, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1852, "end": 0, "start": 0, "type": "CallExpression", @@ -1305,17 +1494,20 @@ description: Result of parsing socket-head-cap-screw.kcl { "arguments": [], "callee": { + "commentStart": 1975, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1975, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1259, "end": 0, "start": 0, "type": "PipeExpression", @@ -1326,14 +1518,22 @@ description: Result of parsing socket-head-cap-screw.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Define the sketch of the hex pattern on the screw head" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1985, "declaration": { + "commentStart": 1985, "end": 0, "id": { + "commentStart": 1985, "end": 0, "name": "hexPattern", "start": 0, @@ -1344,21 +1544,25 @@ description: Result of parsing socket-head-cap-screw.kcl { "type": "LabeledArg", "label": { + "commentStart": 2024, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2033, "end": 0, "left": { "argument": { + "commentStart": 2034, "end": 0, "name": "headLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2033, "end": 0, "operator": "-", "start": 0, @@ -1367,6 +1571,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "*", "right": { + "commentStart": 2047, "end": 0, "raw": "0.75", "start": 0, @@ -1384,16 +1589,19 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 1998, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1998, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2006, "end": 0, "name": "hexPatternSketch", "start": 0, @@ -1411,9 +1619,12 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "VariableDeclaration" }, { + "commentStart": 2052, "declaration": { + "commentStart": 2056, "end": 0, "id": { + "commentStart": 2056, "end": 0, "name": "screwBodySketch", "start": 0, @@ -1424,6 +1635,7 @@ description: Result of parsing socket-head-cap-screw.kcl { "arguments": [ { + "commentStart": 2088, "end": 0, "name": "screwHead", "start": 0, @@ -1431,6 +1643,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "Identifier" }, { + "commentStart": 2099, "end": 0, "raw": "\"start\"", "start": 0, @@ -1440,11 +1653,13 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 2074, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 2074, "end": 0, "start": 0, "type": "CallExpression", @@ -1455,17 +1670,21 @@ description: Result of parsing socket-head-cap-screw.kcl { "type": "LabeledArg", "label": { + "commentStart": 2132, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2141, "elements": [ { + "commentStart": 2142, "computed": false, "end": 0, "object": { + "commentStart": 2142, "end": 0, "name": "start", "start": 0, @@ -1473,6 +1692,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "Identifier" }, "property": { + "commentStart": 2148, "end": 0, "raw": "0", "start": 0, @@ -1488,9 +1708,11 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "MemberExpression" }, { + "commentStart": 2152, "computed": false, "end": 0, "object": { + "commentStart": 2152, "end": 0, "name": "start", "start": 0, @@ -1498,6 +1720,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "Identifier" }, "property": { + "commentStart": 2158, "end": 0, "raw": "1", "start": 0, @@ -1522,14 +1745,17 @@ description: Result of parsing socket-head-cap-screw.kcl { "type": "LabeledArg", "label": { + "commentStart": 2172, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2181, "end": 0, "left": { + "commentStart": 2181, "end": 0, "name": "dia", "start": 0, @@ -1538,6 +1764,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "/", "right": { + "commentStart": 2187, "end": 0, "raw": "2", "start": 0, @@ -1555,11 +1782,13 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 2115, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 2115, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1567,6 +1796,7 @@ description: Result of parsing socket-head-cap-screw.kcl "unlabeled": null } ], + "commentStart": 2074, "end": 0, "start": 0, "type": "PipeExpression", @@ -1582,9 +1812,12 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "VariableDeclaration" }, { + "commentStart": 2200, "declaration": { + "commentStart": 2200, "end": 0, "id": { + "commentStart": 2200, "end": 0, "name": "screwBody", "start": 0, @@ -1595,12 +1828,14 @@ description: Result of parsing socket-head-cap-screw.kcl { "type": "LabeledArg", "label": { + "commentStart": 2237, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2246, "end": 0, "name": "length", "start": 0, @@ -1610,16 +1845,19 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 2212, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 2212, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 2220, "end": 0, "name": "screwBodySketch", "start": 0, @@ -1638,35 +1876,27 @@ description: Result of parsing socket-head-cap-screw.kcl }, { "argument": { + "commentStart": 2263, "end": 0, "name": "screwBody", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 2256, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 898, "end": 0, "nonCodeMeta": { "nonCodeNodes": { - "1": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Define the sketch of the hex pattern on the screw head", - "style": "line" - } - } - ], "3": [ { + "commentStart": 2052, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1676,26 +1906,17 @@ description: Result of parsing socket-head-cap-screw.kcl } ] }, - "startNodes": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Create the head of the cap screw", - "style": "line" - } - } - ] + "startNodes": [] }, "start": 0 }, + "commentStart": 861, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 862, "end": 0, "name": "start", "start": 0, @@ -1705,6 +1926,7 @@ description: Result of parsing socket-head-cap-screw.kcl { "type": "Parameter", "identifier": { + "commentStart": 869, "end": 0, "name": "length", "start": 0, @@ -1714,6 +1936,7 @@ description: Result of parsing socket-head-cap-screw.kcl { "type": "Parameter", "identifier": { + "commentStart": 877, "end": 0, "name": "dia", "start": 0, @@ -1723,6 +1946,7 @@ description: Result of parsing socket-head-cap-screw.kcl { "type": "Parameter", "identifier": { + "commentStart": 882, "end": 0, "name": "capHeadLength", "start": 0, @@ -1739,17 +1963,25 @@ description: Result of parsing socket-head-cap-screw.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// Write a function that defines the Socket Head Cap Screw" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 2274, "end": 0, "expression": { "arguments": [ { + "commentStart": 2285, "elements": [ { + "commentStart": 2286, "end": 0, "raw": "0", "start": 0, @@ -1761,6 +1993,7 @@ description: Result of parsing socket-head-cap-screw.kcl } }, { + "commentStart": 2289, "end": 0, "raw": "0", "start": 0, @@ -1778,6 +2011,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "ArrayExpression" }, { + "commentStart": 2293, "end": 0, "name": "screwLength", "start": 0, @@ -1785,6 +2019,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "Identifier" }, { + "commentStart": 2306, "end": 0, "name": "screwDiameter", "start": 0, @@ -1792,6 +2027,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "Identifier" }, { + "commentStart": 2321, "end": 0, "name": "screwDiameter", "start": 0, @@ -1800,11 +2036,13 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { + "commentStart": 2276, "end": 0, "name": "capScrew", "start": 0, "type": "Identifier" }, + "commentStart": 2276, "end": 0, "start": 0, "type": "CallExpression", @@ -1815,20 +2053,32 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 372, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Socket Head Cap Screw", + "// This is for a #10-24 screw that is 1.00 inches long. A socket head cap screw is a type of fastener that is widely used in a variety of applications requiring a high strength fastening solution. It is characterized by its cylindrical head and internal hexagonal drive, which allows for tightening with an Allen wrench or hex key.", + "", + "", + "// Set units" + ], "properties": [ { + "commentStart": 381, "end": 0, "key": { + "commentStart": 381, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -1837,6 +2087,7 @@ description: Result of parsing socket-head-cap-screw.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 401, "end": 0, "name": "in", "start": 0, @@ -1853,6 +2104,7 @@ description: Result of parsing socket-head-cap-screw.kcl "nonCodeNodes": { "8": [ { + "commentStart": 696, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1863,20 +2115,9 @@ description: Result of parsing socket-head-cap-screw.kcl } } ], - "10": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Write a function that defines the Socket Head Cap Screw", - "style": "line" - } - } - ], "11": [ { + "commentStart": 2274, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1888,60 +2129,13 @@ description: Result of parsing socket-head-cap-screw.kcl }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Socket Head Cap Screw", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "This is for a #10-24 screw that is 1.00 inches long. A socket head cap screw is a type of fastener that is widely used in a variety of applications requiring a high strength fastening solution. It is characterized by its cylindrical head and internal hexagonal drive, which allows for tightening with an Allen wrench or hex key.", - "style": "line" - } - }, - { + "commentStart": 404, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/walkie-talkie/ast.snap b/rust/kcl-lib/tests/kcl_samples/walkie-talkie/ast.snap index d49565b04..53c097d08 100644 --- a/rust/kcl-lib/tests/kcl_samples/walkie-talkie/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/walkie-talkie/ast.snap @@ -6,11 +6,15 @@ description: Result of parsing walkie-talkie.kcl "Ok": { "body": [ { + "commentStart": 383, "end": 0, "path": { "type": "Kcl", "filename": "body.kcl" }, + "preComments": [ + "// Import parts and constants" + ], "selector": { "type": "None", "alias": null @@ -20,6 +24,7 @@ description: Result of parsing walkie-talkie.kcl "type": "ImportStatement" }, { + "commentStart": 433, "end": 0, "path": { "type": "Kcl", @@ -34,6 +39,7 @@ description: Result of parsing walkie-talkie.kcl "type": "ImportStatement" }, { + "commentStart": 454, "end": 0, "path": { "type": "Kcl", @@ -48,6 +54,7 @@ description: Result of parsing walkie-talkie.kcl "type": "ImportStatement" }, { + "commentStart": 472, "end": 0, "path": { "type": "Kcl", @@ -56,6 +63,7 @@ description: Result of parsing walkie-talkie.kcl "selector": { "type": "None", "alias": { + "commentStart": 500, "end": 0, "name": "talkButton", "start": 0, @@ -67,6 +75,7 @@ description: Result of parsing walkie-talkie.kcl "type": "ImportStatement" }, { + "commentStart": 511, "end": 0, "path": { "type": "Kcl", @@ -81,6 +90,7 @@ description: Result of parsing walkie-talkie.kcl "type": "ImportStatement" }, { + "commentStart": 529, "end": 0, "path": { "type": "Kcl", @@ -91,8 +101,10 @@ description: Result of parsing walkie-talkie.kcl "items": [ { "alias": null, + "commentStart": 536, "end": 0, "name": { + "commentStart": 536, "end": 0, "name": "button", "start": 0, @@ -108,6 +120,7 @@ description: Result of parsing walkie-talkie.kcl "type": "ImportStatement" }, { + "commentStart": 561, "end": 0, "path": { "type": "Kcl", @@ -118,8 +131,10 @@ description: Result of parsing walkie-talkie.kcl "items": [ { "alias": null, + "commentStart": 568, "end": 0, "name": { + "commentStart": 568, "end": 0, "name": "width", "start": 0, @@ -130,8 +145,10 @@ description: Result of parsing walkie-talkie.kcl }, { "alias": null, + "commentStart": 575, "end": 0, "name": { + "commentStart": 575, "end": 0, "name": "height", "start": 0, @@ -142,8 +159,10 @@ description: Result of parsing walkie-talkie.kcl }, { "alias": null, + "commentStart": 583, "end": 0, "name": { + "commentStart": 583, "end": 0, "name": "thickness", "start": 0, @@ -154,8 +173,10 @@ description: Result of parsing walkie-talkie.kcl }, { "alias": null, + "commentStart": 594, "end": 0, "name": { + "commentStart": 594, "end": 0, "name": "screenWidth", "start": 0, @@ -166,8 +187,10 @@ description: Result of parsing walkie-talkie.kcl }, { "alias": null, + "commentStart": 607, "end": 0, "name": { + "commentStart": 607, "end": 0, "name": "screenHeight", "start": 0, @@ -178,8 +201,10 @@ description: Result of parsing walkie-talkie.kcl }, { "alias": null, + "commentStart": 621, "end": 0, "name": { + "commentStart": 621, "end": 0, "name": "screenYPosition", "start": 0, @@ -190,8 +215,10 @@ description: Result of parsing walkie-talkie.kcl }, { "alias": null, + "commentStart": 638, "end": 0, "name": { + "commentStart": 638, "end": 0, "name": "tolerance", "start": 0, @@ -207,56 +234,82 @@ description: Result of parsing walkie-talkie.kcl "type": "ImportStatement" }, { + "commentStart": 666, "end": 0, "expression": { + "commentStart": 687, "end": 0, "name": "body", "start": 0, "type": "Identifier", "type": "Identifier" }, + "preComments": [ + "", + "", + "// Import the body" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 691, "end": 0, "expression": { + "commentStart": 712, "end": 0, "name": "case", "start": 0, "type": "Identifier", "type": "Identifier" }, + "preComments": [ + "", + "", + "// Import the case" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 716, "end": 0, "expression": { + "commentStart": 740, "end": 0, "name": "antenna", "start": 0, "type": "Identifier", "type": "Identifier" }, + "preComments": [ + "", + "", + "// Import the antenna" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 747, "end": 0, "expression": { "arguments": [ { + "commentStart": 778, "elements": [ { "argument": { + "commentStart": 784, "end": 0, "left": { + "commentStart": 784, "end": 0, "left": { + "commentStart": 784, "end": 0, "name": "screenWidth", "start": 0, @@ -265,6 +318,7 @@ description: Result of parsing walkie-talkie.kcl }, "operator": "/", "right": { + "commentStart": 798, "end": 0, "raw": "2", "start": 0, @@ -281,6 +335,7 @@ description: Result of parsing walkie-talkie.kcl }, "operator": "+", "right": { + "commentStart": 802, "end": 0, "name": "tolerance", "start": 0, @@ -291,6 +346,7 @@ description: Result of parsing walkie-talkie.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 782, "end": 0, "operator": "-", "start": 0, @@ -298,6 +354,7 @@ description: Result of parsing walkie-talkie.kcl "type": "UnaryExpression" }, { + "commentStart": 816, "end": 0, "name": "screenYPosition", "start": 0, @@ -311,6 +368,7 @@ description: Result of parsing walkie-talkie.kcl "type": "ArrayExpression" }, { + "commentStart": 835, "end": 0, "raw": "0", "start": 0, @@ -326,12 +384,14 @@ description: Result of parsing walkie-talkie.kcl { "type": "LabeledArg", "label": { + "commentStart": 856, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 865, "end": 0, "name": "thickness", "start": 0, @@ -341,16 +401,19 @@ description: Result of parsing walkie-talkie.kcl } ], "callee": { + "commentStart": 838, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 838, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 850, "end": 0, "raw": "\"XZ\"", "start": 0, @@ -361,32 +424,44 @@ description: Result of parsing walkie-talkie.kcl } ], "callee": { + "commentStart": 771, "end": 0, "name": "button", "start": 0, "type": "Identifier" }, + "commentStart": 771, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "preComments": [ + "", + "", + "// Import the buttons" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 877, "end": 0, "expression": { "arguments": [ { + "commentStart": 884, "elements": [ { "argument": { + "commentStart": 890, "end": 0, "left": { + "commentStart": 890, "end": 0, "left": { + "commentStart": 890, "end": 0, "name": "screenWidth", "start": 0, @@ -395,6 +470,7 @@ description: Result of parsing walkie-talkie.kcl }, "operator": "/", "right": { + "commentStart": 904, "end": 0, "raw": "2", "start": 0, @@ -411,6 +487,7 @@ description: Result of parsing walkie-talkie.kcl }, "operator": "+", "right": { + "commentStart": 908, "end": 0, "name": "tolerance", "start": 0, @@ -421,6 +498,7 @@ description: Result of parsing walkie-talkie.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 888, "end": 0, "operator": "-", "start": 0, @@ -428,8 +506,10 @@ description: Result of parsing walkie-talkie.kcl "type": "UnaryExpression" }, { + "commentStart": 922, "end": 0, "left": { + "commentStart": 922, "end": 0, "name": "screenYPosition", "start": 0, @@ -438,8 +518,10 @@ description: Result of parsing walkie-talkie.kcl }, "operator": "-", "right": { + "commentStart": 941, "end": 0, "left": { + "commentStart": 941, "end": 0, "name": "screenHeight", "start": 0, @@ -448,6 +530,7 @@ description: Result of parsing walkie-talkie.kcl }, "operator": "/", "right": { + "commentStart": 956, "end": 0, "raw": "2", "start": 0, @@ -473,6 +556,7 @@ description: Result of parsing walkie-talkie.kcl "type": "ArrayExpression" }, { + "commentStart": 962, "end": 0, "raw": "0", "start": 0, @@ -488,12 +572,14 @@ description: Result of parsing walkie-talkie.kcl { "type": "LabeledArg", "label": { + "commentStart": 983, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 992, "end": 0, "name": "thickness", "start": 0, @@ -503,16 +589,19 @@ description: Result of parsing walkie-talkie.kcl } ], "callee": { + "commentStart": 965, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 965, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 977, "end": 0, "raw": "\"XZ\"", "start": 0, @@ -523,11 +612,13 @@ description: Result of parsing walkie-talkie.kcl } ], "callee": { + "commentStart": 877, "end": 0, "name": "button", "start": 0, "type": "Identifier" }, + "commentStart": 877, "end": 0, "start": 0, "type": "CallExpression", @@ -538,16 +629,21 @@ description: Result of parsing walkie-talkie.kcl "type": "ExpressionStatement" }, { + "commentStart": 1004, "end": 0, "expression": { "arguments": [ { + "commentStart": 1011, "elements": [ { + "commentStart": 1015, "end": 0, "left": { + "commentStart": 1015, "end": 0, "left": { + "commentStart": 1015, "end": 0, "name": "screenWidth", "start": 0, @@ -556,6 +652,7 @@ description: Result of parsing walkie-talkie.kcl }, "operator": "/", "right": { + "commentStart": 1029, "end": 0, "raw": "2", "start": 0, @@ -572,6 +669,7 @@ description: Result of parsing walkie-talkie.kcl }, "operator": "+", "right": { + "commentStart": 1033, "end": 0, "name": "tolerance", "start": 0, @@ -583,8 +681,10 @@ description: Result of parsing walkie-talkie.kcl "type": "BinaryExpression" }, { + "commentStart": 1046, "end": 0, "left": { + "commentStart": 1046, "end": 0, "name": "screenYPosition", "start": 0, @@ -593,6 +693,7 @@ description: Result of parsing walkie-talkie.kcl }, "operator": "-", "right": { + "commentStart": 1064, "end": 0, "name": "screenHeight", "start": 0, @@ -610,6 +711,7 @@ description: Result of parsing walkie-talkie.kcl "type": "ArrayExpression" }, { + "commentStart": 1080, "end": 0, "raw": "180", "start": 0, @@ -625,12 +727,14 @@ description: Result of parsing walkie-talkie.kcl { "type": "LabeledArg", "label": { + "commentStart": 1103, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1112, "end": 0, "name": "thickness", "start": 0, @@ -640,16 +744,19 @@ description: Result of parsing walkie-talkie.kcl } ], "callee": { + "commentStart": 1085, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 1085, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1097, "end": 0, "raw": "\"XZ\"", "start": 0, @@ -660,11 +767,13 @@ description: Result of parsing walkie-talkie.kcl } ], "callee": { + "commentStart": 1004, "end": 0, "name": "button", "start": 0, "type": "Identifier" }, + "commentStart": 1004, "end": 0, "start": 0, "type": "CallExpression", @@ -675,16 +784,21 @@ description: Result of parsing walkie-talkie.kcl "type": "ExpressionStatement" }, { + "commentStart": 1124, "end": 0, "expression": { "arguments": [ { + "commentStart": 1131, "elements": [ { + "commentStart": 1135, "end": 0, "left": { + "commentStart": 1135, "end": 0, "left": { + "commentStart": 1135, "end": 0, "name": "screenWidth", "start": 0, @@ -693,6 +807,7 @@ description: Result of parsing walkie-talkie.kcl }, "operator": "/", "right": { + "commentStart": 1149, "end": 0, "raw": "2", "start": 0, @@ -709,6 +824,7 @@ description: Result of parsing walkie-talkie.kcl }, "operator": "+", "right": { + "commentStart": 1153, "end": 0, "name": "tolerance", "start": 0, @@ -720,8 +836,10 @@ description: Result of parsing walkie-talkie.kcl "type": "BinaryExpression" }, { + "commentStart": 1166, "end": 0, "left": { + "commentStart": 1166, "end": 0, "name": "screenYPosition", "start": 0, @@ -730,8 +848,10 @@ description: Result of parsing walkie-talkie.kcl }, "operator": "-", "right": { + "commentStart": 1185, "end": 0, "left": { + "commentStart": 1185, "end": 0, "name": "screenHeight", "start": 0, @@ -740,6 +860,7 @@ description: Result of parsing walkie-talkie.kcl }, "operator": "/", "right": { + "commentStart": 1200, "end": 0, "raw": "2", "start": 0, @@ -765,6 +886,7 @@ description: Result of parsing walkie-talkie.kcl "type": "ArrayExpression" }, { + "commentStart": 1206, "end": 0, "raw": "180", "start": 0, @@ -780,12 +902,14 @@ description: Result of parsing walkie-talkie.kcl { "type": "LabeledArg", "label": { + "commentStart": 1229, "end": 0, "name": "offset", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1238, "end": 0, "name": "thickness", "start": 0, @@ -795,16 +919,19 @@ description: Result of parsing walkie-talkie.kcl } ], "callee": { + "commentStart": 1211, "end": 0, "name": "offsetPlane", "start": 0, "type": "Identifier" }, + "commentStart": 1211, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1223, "end": 0, "raw": "\"XZ\"", "start": 0, @@ -815,11 +942,13 @@ description: Result of parsing walkie-talkie.kcl } ], "callee": { + "commentStart": 1124, "end": 0, "name": "button", "start": 0, "type": "Identifier" }, + "commentStart": 1124, "end": 0, "start": 0, "type": "CallExpression", @@ -830,46 +959,72 @@ description: Result of parsing walkie-talkie.kcl "type": "ExpressionStatement" }, { + "commentStart": 1249, "end": 0, "expression": { + "commentStart": 1277, "end": 0, "name": "talkButton", "start": 0, "type": "Identifier", "type": "Identifier" }, + "preComments": [ + "", + "", + "// Import the talk button" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { + "commentStart": 1289, "end": 0, "expression": { + "commentStart": 1320, "end": 0, "name": "knob", "start": 0, "type": "Identifier", "type": "Identifier" }, + "preComments": [ + "", + "", + "// Import the frequency knob" + ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 351, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Walkie Talkie", + "// A portable, handheld two-way radio device that allows users to communicate wirelessly over short to medium distances. It operates on specific radio frequencies and features a push-to-talk button for transmitting messages, making it ideal for quick and reliable communication in outdoor, work, or emergency settings.", + "", + "", + "// Set units" + ], "properties": [ { + "commentStart": 360, "end": 0, "key": { + "commentStart": 360, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -878,6 +1033,7 @@ description: Result of parsing walkie-talkie.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 380, "end": 0, "name": "in", "start": 0, @@ -892,80 +1048,9 @@ description: Result of parsing walkie-talkie.kcl ], "nonCodeMeta": { "nonCodeNodes": { - "6": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Import the body", - "style": "line" - } - } - ], - "7": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Import the case", - "style": "line" - } - } - ], - "8": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Import the antenna", - "style": "line" - } - } - ], - "9": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Import the buttons", - "style": "line" - } - } - ], - "13": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Import the talk button", - "style": "line" - } - } - ], - "14": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Import the frequency knob", - "style": "line" - } - } - ], "15": [ { + "commentStart": 1324, "end": 0, "start": 0, "type": "NonCodeNode", @@ -977,60 +1062,13 @@ description: Result of parsing walkie-talkie.kcl }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Walkie Talkie", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A portable, handheld two-way radio device that allows users to communicate wirelessly over short to medium distances. It operates on specific radio frequencies and features a push-to-talk button for transmitting messages, making it ideal for quick and reliable communication in outdoor, work, or emergency settings.", - "style": "line" - } - }, - { + "commentStart": 383, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Import parts and constants", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kcl_samples/washer/ast.snap b/rust/kcl-lib/tests/kcl_samples/washer/ast.snap index b0af1a63b..5f3d92400 100644 --- a/rust/kcl-lib/tests/kcl_samples/washer/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/washer/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing washer.kcl "Ok": { "body": [ { + "commentStart": 518, "declaration": { + "commentStart": 555, "end": 0, "id": { + "commentStart": 555, "end": 0, "name": "innerDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 571, "end": 0, "raw": "0.203", "start": 0, @@ -30,20 +34,27 @@ description: Result of parsing washer.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants in inches (in)" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 577, "declaration": { + "commentStart": 577, "end": 0, "id": { + "commentStart": 577, "end": 0, "name": "outerDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 593, "end": 0, "raw": "0.438", "start": 0, @@ -64,15 +75,19 @@ description: Result of parsing washer.kcl "type": "VariableDeclaration" }, { + "commentStart": 599, "declaration": { + "commentStart": 599, "end": 0, "id": { + "commentStart": 599, "end": 0, "name": "thicknessMax", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 614, "end": 0, "raw": "0.038", "start": 0, @@ -93,15 +108,19 @@ description: Result of parsing washer.kcl "type": "VariableDeclaration" }, { + "commentStart": 620, "declaration": { + "commentStart": 620, "end": 0, "id": { + "commentStart": 620, "end": 0, "name": "thicknessMin", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 635, "end": 0, "raw": "0.024", "start": 0, @@ -122,9 +141,12 @@ description: Result of parsing washer.kcl "type": "VariableDeclaration" }, { + "commentStart": 640, "declaration": { + "commentStart": 705, "end": 0, "id": { + "commentStart": 705, "end": 0, "name": "washer", "start": 0, @@ -134,9 +156,12 @@ description: Result of parsing washer.kcl "body": { "body": [ { + "commentStart": 745, "declaration": { + "commentStart": 785, "end": 0, "id": { + "commentStart": 785, "end": 0, "name": "washerSketch", "start": 0, @@ -147,6 +172,7 @@ description: Result of parsing washer.kcl { "arguments": [ { + "commentStart": 814, "end": 0, "name": "plane", "start": 0, @@ -155,11 +181,13 @@ description: Result of parsing washer.kcl } ], "callee": { + "commentStart": 800, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 800, "end": 0, "start": 0, "type": "CallExpression", @@ -170,14 +198,17 @@ description: Result of parsing washer.kcl { "type": "LabeledArg", "label": { + "commentStart": 845, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 854, "elements": [ { + "commentStart": 855, "end": 0, "raw": "0", "start": 0, @@ -189,6 +220,7 @@ description: Result of parsing washer.kcl } }, { + "commentStart": 858, "end": 0, "raw": "0", "start": 0, @@ -209,14 +241,17 @@ description: Result of parsing washer.kcl { "type": "LabeledArg", "label": { + "commentStart": 871, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 880, "end": 0, "left": { + "commentStart": 880, "end": 0, "name": "outerDia", "start": 0, @@ -225,6 +260,7 @@ description: Result of parsing washer.kcl }, "operator": "/", "right": { + "commentStart": 891, "end": 0, "raw": "2", "start": 0, @@ -242,11 +278,13 @@ description: Result of parsing washer.kcl } ], "callee": { + "commentStart": 828, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 828, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -260,14 +298,17 @@ description: Result of parsing washer.kcl { "type": "LabeledArg", "label": { + "commentStart": 931, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 940, "elements": [ { + "commentStart": 941, "end": 0, "raw": "0", "start": 0, @@ -279,6 +320,7 @@ description: Result of parsing washer.kcl } }, { + "commentStart": 944, "end": 0, "raw": "0", "start": 0, @@ -299,14 +341,17 @@ description: Result of parsing washer.kcl { "type": "LabeledArg", "label": { + "commentStart": 957, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 966, "end": 0, "left": { + "commentStart": 966, "end": 0, "name": "innerDia", "start": 0, @@ -315,6 +360,7 @@ description: Result of parsing washer.kcl }, "operator": "/", "right": { + "commentStart": 977, "end": 0, "raw": "2", "start": 0, @@ -332,11 +378,13 @@ description: Result of parsing washer.kcl } ], "callee": { + "commentStart": 914, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 914, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -344,6 +392,7 @@ description: Result of parsing washer.kcl "unlabeled": null }, { + "commentStart": 989, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -351,17 +400,20 @@ description: Result of parsing washer.kcl } ], "callee": { + "commentStart": 909, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, + "commentStart": 909, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 800, "end": 0, "start": 0, "type": "PipeExpression", @@ -372,14 +424,20 @@ description: Result of parsing washer.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define the sketch of the washer" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 991, "declaration": { + "commentStart": 995, "end": 0, "id": { + "commentStart": 995, "end": 0, "name": "washer", "start": 0, @@ -390,12 +448,14 @@ description: Result of parsing washer.kcl { "type": "LabeledArg", "label": { + "commentStart": 1026, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1035, "end": 0, "name": "thk", "start": 0, @@ -405,16 +465,19 @@ description: Result of parsing washer.kcl } ], "callee": { + "commentStart": 1004, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1004, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1012, "end": 0, "name": "washerSketch", "start": 0, @@ -433,23 +496,27 @@ description: Result of parsing washer.kcl }, { "argument": { + "commentStart": 1049, "end": 0, "name": "washer", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1042, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 745, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 991, "end": 0, "start": 0, "type": "NonCodeNode", @@ -459,26 +526,17 @@ description: Result of parsing washer.kcl } ] }, - "startNodes": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define the sketch of the washer", - "style": "line" - } - } - ] + "startNodes": [] }, "start": 0 }, + "commentStart": 711, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 712, "end": 0, "name": "plane", "start": 0, @@ -488,6 +546,7 @@ description: Result of parsing washer.kcl { "type": "Parameter", "identifier": { + "commentStart": 719, "end": 0, "name": "innerDia", "start": 0, @@ -497,6 +556,7 @@ description: Result of parsing washer.kcl { "type": "Parameter", "identifier": { + "commentStart": 729, "end": 0, "name": "outerDia", "start": 0, @@ -506,6 +566,7 @@ description: Result of parsing washer.kcl { "type": "Parameter", "identifier": { + "commentStart": 739, "end": 0, "name": "thk", "start": 0, @@ -522,15 +583,22 @@ description: Result of parsing washer.kcl }, "end": 0, "kind": "fn", + "preComments": [ + "", + "", + "// Write a function that defines the washer and extrude it." + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1057, "end": 0, "expression": { "arguments": [ { + "commentStart": 1066, "end": 0, "raw": "'XY'", "start": 0, @@ -539,6 +607,7 @@ description: Result of parsing washer.kcl "value": "XY" }, { + "commentStart": 1072, "end": 0, "name": "innerDiameter", "start": 0, @@ -546,6 +615,7 @@ description: Result of parsing washer.kcl "type": "Identifier" }, { + "commentStart": 1087, "end": 0, "name": "outerDiameter", "start": 0, @@ -553,6 +623,7 @@ description: Result of parsing washer.kcl "type": "Identifier" }, { + "commentStart": 1102, "end": 0, "name": "thicknessMax", "start": 0, @@ -561,11 +632,13 @@ description: Result of parsing washer.kcl } ], "callee": { + "commentStart": 1059, "end": 0, "name": "washer", "start": 0, "type": "Identifier" }, + "commentStart": 1059, "end": 0, "start": 0, "type": "CallExpression", @@ -576,20 +649,32 @@ description: Result of parsing washer.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "innerAttrs": [ { + "commentStart": 0, "end": 0, "name": { + "commentStart": 486, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, + "preComments": [ + "// Washer", + "// A small, typically disk-shaped component with a hole in the middle, used in a wide range of applications, primarily in conjunction with fasteners like bolts and screws. Washers distribute the load of a fastener across a broader area. This is especially important when the fastening surface is soft or uneven, as it helps to prevent damage to the surface and ensures the load is evenly distributed, reducing the risk of the fastener becoming loose over time.", + "", + "", + "// Set units" + ], "properties": [ { + "commentStart": 495, "end": 0, "key": { + "commentStart": 495, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -598,6 +683,7 @@ description: Result of parsing washer.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 515, "end": 0, "name": "in", "start": 0, @@ -612,20 +698,9 @@ description: Result of parsing washer.kcl ], "nonCodeMeta": { "nonCodeNodes": { - "3": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Write a function that defines the washer and extrude it.", - "style": "line" - } - } - ], "4": [ { + "commentStart": 1057, "end": 0, "start": 0, "type": "NonCodeNode", @@ -637,60 +712,13 @@ description: Result of parsing washer.kcl }, "startNodes": [ { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Washer", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "A small, typically disk-shaped component with a hole in the middle, used in a wide range of applications, primarily in conjunction with fasteners like bolts and screws. Washers distribute the load of a fastener across a broader area. This is especially important when the fastening surface is soft or uneven, as it helps to prevent damage to the surface and ensures the load is evenly distributed, reducing the risk of the fastener becoming loose over time.", - "style": "line" - } - }, - { + "commentStart": 518, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Set units", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants in inches (in)", - "style": "line" - } } ] }, diff --git a/rust/kcl-lib/tests/kittycad_svg/ast.snap b/rust/kcl-lib/tests/kittycad_svg/ast.snap index bf7f56908..da9fd81c0 100644 --- a/rust/kcl-lib/tests/kittycad_svg/ast.snap +++ b/rust/kcl-lib/tests/kittycad_svg/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing kittycad_svg.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "svg", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing kittycad_svg.kcl { "arguments": [ { + "commentStart": 20, "end": 0, "raw": "'XY'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 6, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing kittycad_svg.kcl { "arguments": [ { + "commentStart": 46, "elements": [ { + "commentStart": 47, "end": 0, "raw": "0", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing kittycad_svg.kcl } }, { + "commentStart": 50, "end": 0, "raw": "0", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing kittycad_svg.kcl "type": "ArrayExpression" }, { + "commentStart": 54, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 31, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 31, "end": 0, "start": 0, "type": "CallExpression", @@ -93,14 +105,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 67, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 81, "elements": [ { + "commentStart": 82, "end": 0, "raw": "2.52", "start": 0, @@ -113,6 +128,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 89, "end": 0, "raw": "26.04", "start": 0, @@ -123,6 +139,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 88, "end": 0, "operator": "-", "start": 0, @@ -138,11 +155,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 62, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 62, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -154,14 +173,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 123, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 137, "elements": [ { + "commentStart": 138, "end": 0, "raw": "2.52", "start": 0, @@ -174,6 +196,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 145, "end": 0, "raw": "25.2", "start": 0, @@ -184,6 +207,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 144, "end": 0, "operator": "-", "start": 0, @@ -199,11 +223,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 118, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 118, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -215,14 +241,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 186, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 200, "elements": [ { + "commentStart": 201, "end": 0, "raw": "0.84", "start": 0, @@ -235,6 +264,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 208, "end": 0, "raw": "25.2", "start": 0, @@ -245,6 +275,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 207, "end": 0, "operator": "-", "start": 0, @@ -260,11 +291,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 181, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 181, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -276,14 +309,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 251, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 265, "elements": [ { + "commentStart": 266, "end": 0, "raw": "0.84", "start": 0, @@ -296,6 +332,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 273, "end": 0, "raw": "24.36", "start": 0, @@ -306,6 +343,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 272, "end": 0, "operator": "-", "start": 0, @@ -321,11 +359,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 246, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 246, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -337,14 +377,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 315, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 329, "elements": [ { + "commentStart": 330, "end": 0, "raw": "0", "start": 0, @@ -357,6 +400,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 334, "end": 0, "raw": "24.36", "start": 0, @@ -367,6 +411,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 333, "end": 0, "operator": "-", "start": 0, @@ -382,11 +427,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 310, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 310, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -398,14 +445,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 378, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 392, "elements": [ { + "commentStart": 393, "end": 0, "raw": "0", "start": 0, @@ -418,6 +468,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 397, "end": 0, "raw": "6.72", "start": 0, @@ -428,6 +479,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 396, "end": 0, "operator": "-", "start": 0, @@ -443,11 +495,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 373, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 373, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -459,14 +513,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 438, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 452, "elements": [ { + "commentStart": 453, "end": 0, "raw": "0.84", "start": 0, @@ -479,6 +536,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 460, "end": 0, "raw": "6.72", "start": 0, @@ -489,6 +547,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 459, "end": 0, "operator": "-", "start": 0, @@ -504,11 +563,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 433, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 433, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -520,14 +581,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 503, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 517, "elements": [ { + "commentStart": 518, "end": 0, "raw": "0.84", "start": 0, @@ -540,6 +604,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 525, "end": 0, "raw": "5.88", "start": 0, @@ -550,6 +615,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 524, "end": 0, "operator": "-", "start": 0, @@ -565,11 +631,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 498, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 498, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -581,14 +649,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 566, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 580, "elements": [ { + "commentStart": 581, "end": 0, "raw": "1.68", "start": 0, @@ -601,6 +672,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 588, "end": 0, "raw": "5.88", "start": 0, @@ -611,6 +683,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 587, "end": 0, "operator": "-", "start": 0, @@ -626,11 +699,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 561, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 561, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -642,14 +717,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 631, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 645, "elements": [ { + "commentStart": 646, "end": 0, "raw": "1.68", "start": 0, @@ -662,6 +740,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 653, "end": 0, "raw": "5.04", "start": 0, @@ -672,6 +751,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 652, "end": 0, "operator": "-", "start": 0, @@ -687,11 +767,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 626, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 626, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -703,14 +785,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 694, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 708, "elements": [ { + "commentStart": 709, "end": 0, "raw": "2.52", "start": 0, @@ -723,6 +808,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 716, "end": 0, "raw": "5.04", "start": 0, @@ -733,6 +819,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 715, "end": 0, "operator": "-", "start": 0, @@ -748,11 +835,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 689, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 689, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -764,14 +853,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 759, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 773, "elements": [ { + "commentStart": 774, "end": 0, "raw": "2.52", "start": 0, @@ -784,6 +876,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 781, "end": 0, "raw": "4.2", "start": 0, @@ -794,6 +887,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 780, "end": 0, "operator": "-", "start": 0, @@ -809,11 +903,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 754, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 754, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -825,14 +921,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 821, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 835, "elements": [ { + "commentStart": 836, "end": 0, "raw": "3.36", "start": 0, @@ -845,6 +944,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 843, "end": 0, "raw": "4.2", "start": 0, @@ -855,6 +955,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 842, "end": 0, "operator": "-", "start": 0, @@ -870,11 +971,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 816, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 816, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -886,14 +989,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 885, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 899, "elements": [ { + "commentStart": 900, "end": 0, "raw": "3.36", "start": 0, @@ -906,6 +1012,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 907, "end": 0, "raw": "3.36", "start": 0, @@ -916,6 +1023,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 906, "end": 0, "operator": "-", "start": 0, @@ -931,11 +1039,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 880, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 880, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -947,14 +1057,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 948, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 962, "elements": [ { + "commentStart": 963, "end": 0, "raw": "17.64", "start": 0, @@ -967,6 +1080,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 971, "end": 0, "raw": "3.36", "start": 0, @@ -977,6 +1091,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 970, "end": 0, "operator": "-", "start": 0, @@ -992,11 +1107,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 943, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 943, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1008,14 +1125,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 1014, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1028, "elements": [ { + "commentStart": 1029, "end": 0, "raw": "17.64", "start": 0, @@ -1028,6 +1148,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 1037, "end": 0, "raw": "4.2", "start": 0, @@ -1038,6 +1159,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 1036, "end": 0, "operator": "-", "start": 0, @@ -1053,11 +1175,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 1009, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1009, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1069,14 +1193,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 1077, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1091, "elements": [ { + "commentStart": 1092, "end": 0, "raw": "18.48", "start": 0, @@ -1089,6 +1216,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 1100, "end": 0, "raw": "4.2", "start": 0, @@ -1099,6 +1227,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 1099, "end": 0, "operator": "-", "start": 0, @@ -1114,11 +1243,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 1072, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1072, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1130,14 +1261,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 1142, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1156, "elements": [ { + "commentStart": 1157, "end": 0, "raw": "18.48", "start": 0, @@ -1150,6 +1284,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 1165, "end": 0, "raw": "5.04", "start": 0, @@ -1160,6 +1295,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 1164, "end": 0, "operator": "-", "start": 0, @@ -1175,11 +1311,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 1137, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1137, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1191,14 +1329,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 1207, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1221, "elements": [ { + "commentStart": 1222, "end": 0, "raw": "19.32", "start": 0, @@ -1211,6 +1352,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 1230, "end": 0, "raw": "5.04", "start": 0, @@ -1221,6 +1363,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 1229, "end": 0, "operator": "-", "start": 0, @@ -1236,11 +1379,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 1202, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1202, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1252,14 +1397,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 1273, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1287, "elements": [ { + "commentStart": 1288, "end": 0, "raw": "19.32", "start": 0, @@ -1272,6 +1420,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 1296, "end": 0, "raw": "5.88", "start": 0, @@ -1282,6 +1431,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 1295, "end": 0, "operator": "-", "start": 0, @@ -1297,11 +1447,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 1268, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1268, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1313,14 +1465,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 1338, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1352, "elements": [ { + "commentStart": 1353, "end": 0, "raw": "20.16", "start": 0, @@ -1333,6 +1488,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 1361, "end": 0, "raw": "5.88", "start": 0, @@ -1343,6 +1499,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 1360, "end": 0, "operator": "-", "start": 0, @@ -1358,11 +1515,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 1333, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1333, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1374,14 +1533,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 1404, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1418, "elements": [ { + "commentStart": 1419, "end": 0, "raw": "20.16", "start": 0, @@ -1394,6 +1556,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 1427, "end": 0, "raw": "6.72", "start": 0, @@ -1404,6 +1567,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 1426, "end": 0, "operator": "-", "start": 0, @@ -1419,11 +1583,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 1399, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1399, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1435,14 +1601,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 1468, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1482, "elements": [ { + "commentStart": 1483, "end": 0, "raw": "21", "start": 0, @@ -1455,6 +1624,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 1488, "end": 0, "raw": "6.72", "start": 0, @@ -1465,6 +1635,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 1487, "end": 0, "operator": "-", "start": 0, @@ -1480,11 +1651,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 1463, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1463, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1496,14 +1669,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 1531, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1545, "elements": [ { + "commentStart": 1546, "end": 0, "raw": "21", "start": 0, @@ -1516,6 +1692,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 1551, "end": 0, "raw": "24.36", "start": 0, @@ -1526,6 +1703,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 1550, "end": 0, "operator": "-", "start": 0, @@ -1541,11 +1719,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 1526, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1526, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1557,14 +1737,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 1594, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1608, "elements": [ { + "commentStart": 1609, "end": 0, "raw": "20.16", "start": 0, @@ -1577,6 +1760,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 1617, "end": 0, "raw": "24.36", "start": 0, @@ -1587,6 +1771,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 1616, "end": 0, "operator": "-", "start": 0, @@ -1602,11 +1787,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 1589, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1589, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1618,14 +1805,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 1661, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1675, "elements": [ { + "commentStart": 1676, "end": 0, "raw": "20.16", "start": 0, @@ -1638,6 +1828,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 1684, "end": 0, "raw": "25.2", "start": 0, @@ -1648,6 +1839,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 1683, "end": 0, "operator": "-", "start": 0, @@ -1663,11 +1855,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 1656, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1656, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1679,14 +1873,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 1726, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1740, "elements": [ { + "commentStart": 1741, "end": 0, "raw": "18.48", "start": 0, @@ -1699,6 +1896,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 1749, "end": 0, "raw": "25.2", "start": 0, @@ -1709,6 +1907,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 1748, "end": 0, "operator": "-", "start": 0, @@ -1724,11 +1923,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 1721, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1721, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1740,14 +1941,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 1792, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1806, "elements": [ { + "commentStart": 1807, "end": 0, "raw": "18.48", "start": 0, @@ -1760,6 +1964,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 1815, "end": 0, "raw": "26.04", "start": 0, @@ -1770,6 +1975,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 1814, "end": 0, "operator": "-", "start": 0, @@ -1785,11 +1991,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 1787, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1787, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1801,14 +2009,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 1858, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1872, "elements": [ { + "commentStart": 1873, "end": 0, "raw": "15.96", "start": 0, @@ -1821,6 +2032,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 1881, "end": 0, "raw": "26.04", "start": 0, @@ -1831,6 +2043,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 1880, "end": 0, "operator": "-", "start": 0, @@ -1846,11 +2059,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 1853, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1853, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1862,14 +2077,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 1925, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1939, "elements": [ { + "commentStart": 1940, "end": 0, "raw": "15.96", "start": 0, @@ -1882,6 +2100,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 1948, "end": 0, "raw": "26.88", "start": 0, @@ -1892,6 +2111,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 1947, "end": 0, "operator": "-", "start": 0, @@ -1907,11 +2127,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 1920, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1920, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1923,14 +2145,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 1991, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2005, "elements": [ { + "commentStart": 2006, "end": 0, "raw": "16.8", "start": 0, @@ -1943,6 +2168,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 2013, "end": 0, "raw": "26.88", "start": 0, @@ -1953,6 +2179,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 2012, "end": 0, "operator": "-", "start": 0, @@ -1968,11 +2195,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 1986, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1986, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1984,14 +2213,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 2057, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2071, "elements": [ { + "commentStart": 2072, "end": 0, "raw": "16.8", "start": 0, @@ -2004,6 +2236,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 2079, "end": 0, "raw": "28.56", "start": 0, @@ -2014,6 +2247,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 2078, "end": 0, "operator": "-", "start": 0, @@ -2029,11 +2263,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 2052, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2052, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2045,14 +2281,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 2122, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2136, "elements": [ { + "commentStart": 2137, "end": 0, "raw": "11.76", "start": 0, @@ -2065,6 +2304,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 2145, "end": 0, "raw": "28.56", "start": 0, @@ -2075,6 +2315,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 2144, "end": 0, "operator": "-", "start": 0, @@ -2090,11 +2331,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 2117, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2117, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2106,14 +2349,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 2189, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2203, "elements": [ { + "commentStart": 2204, "end": 0, "raw": "11.76", "start": 0, @@ -2126,6 +2372,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 2212, "end": 0, "raw": "26.88", "start": 0, @@ -2136,6 +2383,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 2211, "end": 0, "operator": "-", "start": 0, @@ -2151,11 +2399,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 2184, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2184, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2167,14 +2417,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 2254, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2268, "elements": [ { + "commentStart": 2269, "end": 0, "raw": "12.6", "start": 0, @@ -2187,6 +2440,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 2276, "end": 0, "raw": "26.88", "start": 0, @@ -2197,6 +2451,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 2275, "end": 0, "operator": "-", "start": 0, @@ -2212,11 +2467,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 2249, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2249, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2228,14 +2485,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 2320, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2334, "elements": [ { + "commentStart": 2335, "end": 0, "raw": "12.6", "start": 0, @@ -2248,6 +2508,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 2342, "end": 0, "raw": "26.04", "start": 0, @@ -2258,6 +2519,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 2341, "end": 0, "operator": "-", "start": 0, @@ -2273,11 +2535,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 2315, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2315, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2289,14 +2553,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 2384, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2398, "elements": [ { + "commentStart": 2399, "end": 0, "raw": "8.4", "start": 0, @@ -2309,6 +2576,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 2405, "end": 0, "raw": "26.04", "start": 0, @@ -2319,6 +2587,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 2404, "end": 0, "operator": "-", "start": 0, @@ -2334,11 +2603,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 2379, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2379, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2350,14 +2621,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 2449, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2463, "elements": [ { + "commentStart": 2464, "end": 0, "raw": "8.4", "start": 0, @@ -2370,6 +2644,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 2470, "end": 0, "raw": "26.88", "start": 0, @@ -2380,6 +2655,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 2469, "end": 0, "operator": "-", "start": 0, @@ -2395,11 +2671,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 2444, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2444, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2411,14 +2689,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 2513, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2527, "elements": [ { + "commentStart": 2528, "end": 0, "raw": "9.24", "start": 0, @@ -2431,6 +2712,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 2535, "end": 0, "raw": "26.88", "start": 0, @@ -2441,6 +2723,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 2534, "end": 0, "operator": "-", "start": 0, @@ -2456,11 +2739,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 2508, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2508, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2472,14 +2757,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 2579, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2593, "elements": [ { + "commentStart": 2594, "end": 0, "raw": "9.24", "start": 0, @@ -2492,6 +2780,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 2601, "end": 0, "raw": "28.56", "start": 0, @@ -2502,6 +2791,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 2600, "end": 0, "operator": "-", "start": 0, @@ -2517,11 +2807,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 2574, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2574, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2533,14 +2825,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 2644, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2658, "elements": [ { + "commentStart": 2659, "end": 0, "raw": "4.2", "start": 0, @@ -2553,6 +2848,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 2665, "end": 0, "raw": "28.56", "start": 0, @@ -2563,6 +2859,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 2664, "end": 0, "operator": "-", "start": 0, @@ -2578,11 +2875,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 2639, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2639, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2594,14 +2893,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 2709, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2723, "elements": [ { + "commentStart": 2724, "end": 0, "raw": "4.2", "start": 0, @@ -2614,6 +2916,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 2730, "end": 0, "raw": "26.88", "start": 0, @@ -2624,6 +2927,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 2729, "end": 0, "operator": "-", "start": 0, @@ -2639,11 +2943,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 2704, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2704, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2655,14 +2961,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 2773, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2787, "elements": [ { + "commentStart": 2788, "end": 0, "raw": "5.04", "start": 0, @@ -2675,6 +2984,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 2795, "end": 0, "raw": "26.88", "start": 0, @@ -2685,6 +2995,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 2794, "end": 0, "operator": "-", "start": 0, @@ -2700,11 +3011,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 2768, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2768, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2716,14 +3029,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 2839, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2853, "elements": [ { + "commentStart": 2854, "end": 0, "raw": "5.04", "start": 0, @@ -2736,6 +3052,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 2861, "end": 0, "raw": "26.04", "start": 0, @@ -2746,6 +3063,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 2860, "end": 0, "operator": "-", "start": 0, @@ -2761,11 +3079,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 2834, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2834, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2777,14 +3097,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 2904, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2918, "elements": [ { + "commentStart": 2919, "end": 0, "raw": "0.839996", "start": 0, @@ -2797,6 +3120,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 2930, "end": 0, "raw": "20.58", "start": 0, @@ -2807,6 +3131,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 2929, "end": 0, "operator": "-", "start": 0, @@ -2822,11 +3147,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 2899, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2899, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2838,14 +3165,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 2964, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2978, "elements": [ { + "commentStart": 2979, "end": 0, "raw": "0.839996", "start": 0, @@ -2858,6 +3188,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 2990, "end": 0, "raw": "24.36", "start": 0, @@ -2868,6 +3199,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 2989, "end": 0, "operator": "-", "start": 0, @@ -2883,11 +3215,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 2959, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2959, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2899,14 +3233,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 3033, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3047, "elements": [ { + "commentStart": 3048, "end": 0, "raw": "2.52", "start": 0, @@ -2919,6 +3256,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 3055, "end": 0, "raw": "24.36", "start": 0, @@ -2929,6 +3267,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 3054, "end": 0, "operator": "-", "start": 0, @@ -2944,11 +3283,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 3028, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3028, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2960,14 +3301,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 3099, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3113, "elements": [ { + "commentStart": 3114, "end": 0, "raw": "2.52", "start": 0, @@ -2980,6 +3324,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 3121, "end": 0, "raw": "25.2", "start": 0, @@ -2990,6 +3335,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 3120, "end": 0, "operator": "-", "start": 0, @@ -3005,11 +3351,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 3094, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3094, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3021,14 +3369,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 3163, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3177, "elements": [ { + "commentStart": 3178, "end": 0, "raw": "18.48", "start": 0, @@ -3041,6 +3392,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 3186, "end": 0, "raw": "25.2", "start": 0, @@ -3051,6 +3403,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 3185, "end": 0, "operator": "-", "start": 0, @@ -3066,11 +3419,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 3158, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3158, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3082,14 +3437,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 3229, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3243, "elements": [ { + "commentStart": 3244, "end": 0, "raw": "18.48", "start": 0, @@ -3102,6 +3460,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 3252, "end": 0, "raw": "24.36", "start": 0, @@ -3112,6 +3471,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 3251, "end": 0, "operator": "-", "start": 0, @@ -3127,11 +3487,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 3224, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3224, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3143,14 +3505,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 3295, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3309, "elements": [ { + "commentStart": 3310, "end": 0, "raw": "20.16", "start": 0, @@ -3163,6 +3528,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 3318, "end": 0, "raw": "24.36", "start": 0, @@ -3173,6 +3539,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 3317, "end": 0, "operator": "-", "start": 0, @@ -3188,11 +3555,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 3290, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3290, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3204,14 +3573,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 3362, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3376, "elements": [ { + "commentStart": 3377, "end": 0, "raw": "20.16", "start": 0, @@ -3224,6 +3596,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 3385, "end": 0, "raw": "20.58", "start": 0, @@ -3234,6 +3607,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 3384, "end": 0, "operator": "-", "start": 0, @@ -3249,11 +3623,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 3357, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3357, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3265,14 +3641,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 3445, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3459, "elements": [ { + "commentStart": 3460, "end": 0, "raw": "7.56", "start": 0, @@ -3285,6 +3664,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 3467, "end": 0, "raw": "24.36", "start": 0, @@ -3295,6 +3675,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 3466, "end": 0, "operator": "-", "start": 0, @@ -3310,11 +3691,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 3440, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3440, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3326,14 +3709,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 3501, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3515, "elements": [ { + "commentStart": 3516, "end": 0, "raw": "7.56", "start": 0, @@ -3346,6 +3732,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 3523, "end": 0, "raw": "22.68", "start": 0, @@ -3356,6 +3743,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 3522, "end": 0, "operator": "-", "start": 0, @@ -3371,11 +3759,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 3496, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3496, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3387,14 +3777,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 3566, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3580, "elements": [ { + "commentStart": 3581, "end": 0, "raw": "13.44", "start": 0, @@ -3407,6 +3800,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 3589, "end": 0, "raw": "22.68", "start": 0, @@ -3417,6 +3811,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 3588, "end": 0, "operator": "-", "start": 0, @@ -3432,11 +3827,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 3561, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3561, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3448,14 +3845,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 3633, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3647, "elements": [ { + "commentStart": 3648, "end": 0, "raw": "13.44", "start": 0, @@ -3468,6 +3868,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 3656, "end": 0, "raw": "24.36", "start": 0, @@ -3478,6 +3879,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 3655, "end": 0, "operator": "-", "start": 0, @@ -3493,11 +3895,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 3628, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3628, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3509,14 +3913,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 3699, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3713, "elements": [ { + "commentStart": 3714, "end": 0, "raw": "1.68", "start": 0, @@ -3529,6 +3936,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 3721, "end": 0, "raw": "22.68", "start": 0, @@ -3539,6 +3947,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 3720, "end": 0, "operator": "-", "start": 0, @@ -3554,11 +3963,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 3694, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3694, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3570,14 +3981,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 3755, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3769, "elements": [ { + "commentStart": 3770, "end": 0, "raw": "1.68", "start": 0, @@ -3590,6 +4004,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 3777, "end": 0, "raw": "21.84", "start": 0, @@ -3600,6 +4015,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 3776, "end": 0, "operator": "-", "start": 0, @@ -3615,11 +4031,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 3750, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3750, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3631,14 +4049,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 3820, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3834, "elements": [ { + "commentStart": 3835, "end": 0, "raw": "5.88", "start": 0, @@ -3651,6 +4072,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 3842, "end": 0, "raw": "21.84", "start": 0, @@ -3661,6 +4083,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 3841, "end": 0, "operator": "-", "start": 0, @@ -3676,11 +4099,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 3815, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3815, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3692,14 +4117,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 3886, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3900, "elements": [ { + "commentStart": 3901, "end": 0, "raw": "5.88", "start": 0, @@ -3712,6 +4140,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 3908, "end": 0, "raw": "22.68", "start": 0, @@ -3722,6 +4151,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 3907, "end": 0, "operator": "-", "start": 0, @@ -3737,11 +4167,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 3881, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3881, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3753,14 +4185,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 3951, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3965, "elements": [ { + "commentStart": 3966, "end": 0, "raw": "3.36", "start": 0, @@ -3773,6 +4208,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 3973, "end": 0, "raw": "24.36", "start": 0, @@ -3783,6 +4219,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 3972, "end": 0, "operator": "-", "start": 0, @@ -3798,11 +4235,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 3946, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3946, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3814,14 +4253,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 4007, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4021, "elements": [ { + "commentStart": 4022, "end": 0, "raw": "3.36", "start": 0, @@ -3834,6 +4276,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 4029, "end": 0, "raw": "23.52", "start": 0, @@ -3844,6 +4287,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 4028, "end": 0, "operator": "-", "start": 0, @@ -3859,11 +4303,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 4002, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4002, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3875,14 +4321,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 4072, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4086, "elements": [ { + "commentStart": 4087, "end": 0, "raw": "5.88", "start": 0, @@ -3895,6 +4344,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 4094, "end": 0, "raw": "23.52", "start": 0, @@ -3905,6 +4355,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 4093, "end": 0, "operator": "-", "start": 0, @@ -3920,11 +4371,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 4067, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4067, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3936,14 +4389,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 4138, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4152, "elements": [ { + "commentStart": 4153, "end": 0, "raw": "5.88", "start": 0, @@ -3956,6 +4412,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 4160, "end": 0, "raw": "24.36", "start": 0, @@ -3966,6 +4423,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 4159, "end": 0, "operator": "-", "start": 0, @@ -3981,11 +4439,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 4133, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4133, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3997,14 +4457,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 4203, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4217, "elements": [ { + "commentStart": 4218, "end": 0, "raw": "15.12", "start": 0, @@ -4017,6 +4480,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 4226, "end": 0, "raw": "22.68", "start": 0, @@ -4027,6 +4491,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 4225, "end": 0, "operator": "-", "start": 0, @@ -4042,11 +4507,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 4198, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4198, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4058,14 +4525,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 4260, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4274, "elements": [ { + "commentStart": 4275, "end": 0, "raw": "15.12", "start": 0, @@ -4078,6 +4548,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 4283, "end": 0, "raw": "21.84", "start": 0, @@ -4088,6 +4559,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 4282, "end": 0, "operator": "-", "start": 0, @@ -4103,11 +4575,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 4255, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4255, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4119,14 +4593,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 4326, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4340, "elements": [ { + "commentStart": 4341, "end": 0, "raw": "15.959999999999999", "start": 0, @@ -4139,6 +4616,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 4362, "end": 0, "raw": "21.84", "start": 0, @@ -4149,6 +4627,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 4361, "end": 0, "operator": "-", "start": 0, @@ -4164,11 +4643,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 4321, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4321, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4180,14 +4661,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 4406, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4420, "elements": [ { + "commentStart": 4421, "end": 0, "raw": "15.959999999999999", "start": 0, @@ -4200,6 +4684,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 4442, "end": 0, "raw": "22.68", "start": 0, @@ -4210,6 +4695,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 4441, "end": 0, "operator": "-", "start": 0, @@ -4225,11 +4711,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 4401, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4401, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4241,14 +4729,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 4485, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4499, "elements": [ { + "commentStart": 4500, "end": 0, "raw": "16.8", "start": 0, @@ -4261,6 +4752,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 4507, "end": 0, "raw": "22.68", "start": 0, @@ -4271,6 +4763,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 4506, "end": 0, "operator": "-", "start": 0, @@ -4286,11 +4779,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 4480, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4480, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4302,14 +4797,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 4541, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4555, "elements": [ { + "commentStart": 4556, "end": 0, "raw": "16.8", "start": 0, @@ -4322,6 +4820,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 4563, "end": 0, "raw": "21.84", "start": 0, @@ -4332,6 +4831,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 4562, "end": 0, "operator": "-", "start": 0, @@ -4347,11 +4847,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 4536, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4536, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4363,14 +4865,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 4606, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4620, "elements": [ { + "commentStart": 4621, "end": 0, "raw": "17.64", "start": 0, @@ -4383,6 +4888,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 4629, "end": 0, "raw": "21.84", "start": 0, @@ -4393,6 +4899,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 4628, "end": 0, "operator": "-", "start": 0, @@ -4408,11 +4915,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 4601, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4601, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4424,14 +4933,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 4673, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4687, "elements": [ { + "commentStart": 4688, "end": 0, "raw": "17.64", "start": 0, @@ -4444,6 +4956,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 4696, "end": 0, "raw": "22.68", "start": 0, @@ -4454,6 +4967,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 4695, "end": 0, "operator": "-", "start": 0, @@ -4469,11 +4983,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 4668, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4668, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4485,14 +5001,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 4739, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4753, "elements": [ { + "commentStart": 4754, "end": 0, "raw": "18.48", "start": 0, @@ -4505,6 +5024,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 4762, "end": 0, "raw": "22.68", "start": 0, @@ -4515,6 +5035,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 4761, "end": 0, "operator": "-", "start": 0, @@ -4530,11 +5051,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 4734, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4734, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4546,14 +5069,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 4796, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4810, "elements": [ { + "commentStart": 4811, "end": 0, "raw": "18.48", "start": 0, @@ -4566,6 +5092,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 4819, "end": 0, "raw": "21.84", "start": 0, @@ -4576,6 +5103,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 4818, "end": 0, "operator": "-", "start": 0, @@ -4591,11 +5119,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 4791, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4791, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4607,14 +5137,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 4862, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4876, "elements": [ { + "commentStart": 4877, "end": 0, "raw": "19.32", "start": 0, @@ -4627,6 +5160,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 4885, "end": 0, "raw": "21.84", "start": 0, @@ -4637,6 +5171,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 4884, "end": 0, "operator": "-", "start": 0, @@ -4652,11 +5187,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 4857, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4857, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4668,14 +5205,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 4929, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4943, "elements": [ { + "commentStart": 4944, "end": 0, "raw": "19.32", "start": 0, @@ -4688,6 +5228,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 4952, "end": 0, "raw": "22.68", "start": 0, @@ -4698,6 +5239,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 4951, "end": 0, "operator": "-", "start": 0, @@ -4713,11 +5255,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 4924, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4924, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4729,14 +5273,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 4995, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5009, "elements": [ { + "commentStart": 5010, "end": 0, "raw": "15.12", "start": 0, @@ -4749,6 +5296,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 5018, "end": 0, "raw": "24.36", "start": 0, @@ -4759,6 +5307,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 5017, "end": 0, "operator": "-", "start": 0, @@ -4774,11 +5323,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 4990, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4990, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4790,14 +5341,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 5052, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5066, "elements": [ { + "commentStart": 5067, "end": 0, "raw": "15.12", "start": 0, @@ -4810,6 +5364,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 5075, "end": 0, "raw": "23.52", "start": 0, @@ -4820,6 +5375,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 5074, "end": 0, "operator": "-", "start": 0, @@ -4835,11 +5391,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 5047, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5047, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4851,14 +5409,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 5118, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5132, "elements": [ { + "commentStart": 5133, "end": 0, "raw": "17.64", "start": 0, @@ -4871,6 +5432,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 5141, "end": 0, "raw": "23.52", "start": 0, @@ -4881,6 +5443,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 5140, "end": 0, "operator": "-", "start": 0, @@ -4896,11 +5459,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 5113, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5113, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4912,14 +5477,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 5185, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5199, "elements": [ { + "commentStart": 5200, "end": 0, "raw": "17.64", "start": 0, @@ -4932,6 +5500,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 5208, "end": 0, "raw": "24.36", "start": 0, @@ -4942,6 +5511,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 5207, "end": 0, "operator": "-", "start": 0, @@ -4957,11 +5527,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 5180, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5180, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4973,14 +5545,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 5251, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5265, "elements": [ { + "commentStart": 5266, "end": 0, "raw": "18.48", "start": 0, @@ -4993,6 +5568,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 5274, "end": 0, "raw": "5.88", "start": 0, @@ -5003,6 +5579,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 5273, "end": 0, "operator": "-", "start": 0, @@ -5018,11 +5595,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 5246, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5246, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5034,14 +5613,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 5307, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5321, "elements": [ { + "commentStart": 5322, "end": 0, "raw": "18.48", "start": 0, @@ -5054,6 +5636,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 5330, "end": 0, "raw": "5.04", "start": 0, @@ -5064,6 +5647,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 5329, "end": 0, "operator": "-", "start": 0, @@ -5079,11 +5663,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 5302, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5302, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5095,14 +5681,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 5371, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5385, "elements": [ { + "commentStart": 5386, "end": 0, "raw": "17.64", "start": 0, @@ -5115,6 +5704,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 5394, "end": 0, "raw": "5.04", "start": 0, @@ -5125,6 +5715,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 5393, "end": 0, "operator": "-", "start": 0, @@ -5140,11 +5731,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 5366, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5366, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5156,14 +5749,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 5437, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5451, "elements": [ { + "commentStart": 5452, "end": 0, "raw": "17.64", "start": 0, @@ -5176,6 +5772,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 5460, "end": 0, "raw": "4.2", "start": 0, @@ -5186,6 +5783,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 5459, "end": 0, "operator": "-", "start": 0, @@ -5201,11 +5799,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 5432, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5432, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5217,14 +5817,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 5500, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5514, "elements": [ { + "commentStart": 5515, "end": 0, "raw": "3.36", "start": 0, @@ -5237,6 +5840,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 5522, "end": 0, "raw": "4.2", "start": 0, @@ -5247,6 +5851,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 5521, "end": 0, "operator": "-", "start": 0, @@ -5262,11 +5867,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 5495, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5495, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5278,14 +5885,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 5564, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5578, "elements": [ { + "commentStart": 5579, "end": 0, "raw": "3.36", "start": 0, @@ -5298,6 +5908,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 5586, "end": 0, "raw": "5.04", "start": 0, @@ -5308,6 +5919,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 5585, "end": 0, "operator": "-", "start": 0, @@ -5323,11 +5935,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 5559, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5559, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5339,14 +5953,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 5627, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5641, "elements": [ { + "commentStart": 5642, "end": 0, "raw": "2.52", "start": 0, @@ -5359,6 +5976,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 5649, "end": 0, "raw": "5.04", "start": 0, @@ -5369,6 +5987,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 5648, "end": 0, "operator": "-", "start": 0, @@ -5384,11 +6003,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 5622, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5622, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5400,14 +6021,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 5692, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5706, "elements": [ { + "commentStart": 5707, "end": 0, "raw": "2.52", "start": 0, @@ -5420,6 +6044,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 5714, "end": 0, "raw": "5.88", "start": 0, @@ -5430,6 +6055,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 5713, "end": 0, "operator": "-", "start": 0, @@ -5445,11 +6071,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 5687, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5687, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5461,14 +6089,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 5755, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5769, "elements": [ { + "commentStart": 5770, "end": 0, "raw": "1.68", "start": 0, @@ -5481,6 +6112,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 5777, "end": 0, "raw": "5.88", "start": 0, @@ -5491,6 +6123,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 5776, "end": 0, "operator": "-", "start": 0, @@ -5506,11 +6139,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 5750, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5750, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5522,14 +6157,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 5820, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5834, "elements": [ { + "commentStart": 5835, "end": 0, "raw": "1.68", "start": 0, @@ -5542,6 +6180,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 5842, "end": 0, "raw": "6.72", "start": 0, @@ -5552,6 +6191,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 5841, "end": 0, "operator": "-", "start": 0, @@ -5567,11 +6207,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 5815, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5815, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5583,14 +6225,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 5883, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5897, "elements": [ { + "commentStart": 5898, "end": 0, "raw": "0.839996", "start": 0, @@ -5603,6 +6248,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 5909, "end": 0, "raw": "6.72", "start": 0, @@ -5613,6 +6259,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 5908, "end": 0, "operator": "-", "start": 0, @@ -5628,11 +6275,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 5878, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5878, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5644,14 +6293,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 5952, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5966, "elements": [ { + "commentStart": 5967, "end": 0, "raw": "0.839996", "start": 0, @@ -5664,6 +6316,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 5978, "end": 0, "raw": "8.4", "start": 0, @@ -5674,6 +6327,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 5977, "end": 0, "operator": "-", "start": 0, @@ -5689,11 +6343,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 5947, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5947, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5705,14 +6361,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 6018, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6032, "elements": [ { + "commentStart": 6033, "end": 0, "raw": "20.16", "start": 0, @@ -5725,6 +6384,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 6041, "end": 0, "raw": "8.4", "start": 0, @@ -5735,6 +6395,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 6040, "end": 0, "operator": "-", "start": 0, @@ -5750,11 +6411,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6013, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6013, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5766,14 +6429,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 6083, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6097, "elements": [ { + "commentStart": 6098, "end": 0, "raw": "20.16", "start": 0, @@ -5786,6 +6452,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 6106, "end": 0, "raw": "6.72", "start": 0, @@ -5796,6 +6463,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 6105, "end": 0, "operator": "-", "start": 0, @@ -5811,11 +6479,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6078, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6078, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5827,14 +6497,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 6147, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6161, "elements": [ { + "commentStart": 6162, "end": 0, "raw": "19.32", "start": 0, @@ -5847,6 +6520,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 6170, "end": 0, "raw": "6.72", "start": 0, @@ -5857,6 +6531,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 6169, "end": 0, "operator": "-", "start": 0, @@ -5872,11 +6547,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6142, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6142, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5888,14 +6565,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 6213, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6227, "elements": [ { + "commentStart": 6228, "end": 0, "raw": "19.32", "start": 0, @@ -5908,6 +6588,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 6236, "end": 0, "raw": "5.88", "start": 0, @@ -5918,6 +6599,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 6235, "end": 0, "operator": "-", "start": 0, @@ -5933,11 +6615,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6208, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6208, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5949,14 +6633,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 6277, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6291, "elements": [ { + "commentStart": 6292, "end": 0, "raw": "20.16", "start": 0, @@ -5969,6 +6656,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 6300, "end": 0, "raw": "7.56", "start": 0, @@ -5979,6 +6667,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 6299, "end": 0, "operator": "-", "start": 0, @@ -5994,11 +6683,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6272, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6272, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6010,14 +6701,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 6333, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6347, "elements": [ { + "commentStart": 6348, "end": 0, "raw": "0.839996", "start": 0, @@ -6030,6 +6724,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 6359, "end": 0, "raw": "7.56", "start": 0, @@ -6040,6 +6735,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 6358, "end": 0, "operator": "-", "start": 0, @@ -6055,11 +6751,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6328, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6328, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6071,14 +6769,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 6402, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6416, "elements": [ { + "commentStart": 6417, "end": 0, "raw": "0.839996", "start": 0, @@ -6091,6 +6792,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 6428, "end": 0, "raw": "19.32", "start": 0, @@ -6101,6 +6803,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 6427, "end": 0, "operator": "-", "start": 0, @@ -6116,11 +6819,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6397, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6397, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6132,14 +6837,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 6470, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6484, "elements": [ { + "commentStart": 6485, "end": 0, "raw": "20.16", "start": 0, @@ -6152,6 +6860,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 6493, "end": 0, "raw": "19.32", "start": 0, @@ -6162,6 +6871,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 6492, "end": 0, "operator": "-", "start": 0, @@ -6177,11 +6887,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6465, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6465, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6193,14 +6905,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 6537, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6551, "elements": [ { + "commentStart": 6552, "end": 0, "raw": "3.36", "start": 0, @@ -6213,6 +6928,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 6559, "end": 0, "raw": "10.08", "start": 0, @@ -6223,6 +6939,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 6558, "end": 0, "operator": "-", "start": 0, @@ -6238,11 +6955,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6532, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6532, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6254,14 +6973,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 6593, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6607, "elements": [ { + "commentStart": 6608, "end": 0, "raw": "3.36", "start": 0, @@ -6274,6 +6996,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 6615, "end": 0, "raw": "9.24001", "start": 0, @@ -6284,6 +7007,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 6614, "end": 0, "operator": "-", "start": 0, @@ -6299,11 +7023,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6588, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6588, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6315,14 +7041,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 6659, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6673, "elements": [ { + "commentStart": 6674, "end": 0, "raw": "17.64", "start": 0, @@ -6335,6 +7064,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 6682, "end": 0, "raw": "9.24001", "start": 0, @@ -6345,6 +7075,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 6681, "end": 0, "operator": "-", "start": 0, @@ -6360,11 +7091,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6654, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6654, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6376,14 +7109,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 6728, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6742, "elements": [ { + "commentStart": 6743, "end": 0, "raw": "17.64", "start": 0, @@ -6396,6 +7132,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 6751, "end": 0, "raw": "10.08", "start": 0, @@ -6406,6 +7143,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 6750, "end": 0, "operator": "-", "start": 0, @@ -6421,11 +7159,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6723, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6723, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6437,14 +7177,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 6793, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6807, "elements": [ { + "commentStart": 6808, "end": 0, "raw": "18.48", "start": 0, @@ -6457,6 +7200,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 6816, "end": 0, "raw": "10.08", "start": 0, @@ -6467,6 +7211,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 6815, "end": 0, "operator": "-", "start": 0, @@ -6482,11 +7227,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6788, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6788, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6498,14 +7245,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 6860, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6874, "elements": [ { + "commentStart": 6875, "end": 0, "raw": "18.48", "start": 0, @@ -6518,6 +7268,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 6883, "end": 0, "raw": "16.8", "start": 0, @@ -6528,6 +7279,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 6882, "end": 0, "operator": "-", "start": 0, @@ -6543,11 +7295,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6855, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6855, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6559,14 +7313,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 6925, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6939, "elements": [ { + "commentStart": 6940, "end": 0, "raw": "17.64", "start": 0, @@ -6579,6 +7336,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 6948, "end": 0, "raw": "16.8", "start": 0, @@ -6589,6 +7347,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 6947, "end": 0, "operator": "-", "start": 0, @@ -6604,11 +7363,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6920, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6920, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6620,14 +7381,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 6991, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7005, "elements": [ { + "commentStart": 7006, "end": 0, "raw": "17.64", "start": 0, @@ -6640,6 +7404,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 7014, "end": 0, "raw": "17.64", "start": 0, @@ -6650,6 +7415,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 7013, "end": 0, "operator": "-", "start": 0, @@ -6665,11 +7431,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 6986, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6986, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6681,14 +7449,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 7057, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7071, "elements": [ { + "commentStart": 7072, "end": 0, "raw": "3.36", "start": 0, @@ -6701,6 +7472,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 7079, "end": 0, "raw": "17.64", "start": 0, @@ -6711,6 +7483,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 7078, "end": 0, "operator": "-", "start": 0, @@ -6726,11 +7499,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 7052, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7052, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6742,14 +7517,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 7123, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7137, "elements": [ { + "commentStart": 7138, "end": 0, "raw": "3.36", "start": 0, @@ -6762,6 +7540,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 7145, "end": 0, "raw": "16.8", "start": 0, @@ -6772,6 +7551,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 7144, "end": 0, "operator": "-", "start": 0, @@ -6787,11 +7567,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 7118, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7118, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6803,14 +7585,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 7186, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7200, "elements": [ { + "commentStart": 7201, "end": 0, "raw": "2.52", "start": 0, @@ -6823,6 +7608,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 7208, "end": 0, "raw": "16.8", "start": 0, @@ -6833,6 +7619,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 7207, "end": 0, "operator": "-", "start": 0, @@ -6848,11 +7635,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 7181, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7181, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6864,14 +7653,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 7251, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7265, "elements": [ { + "commentStart": 7266, "end": 0, "raw": "2.52", "start": 0, @@ -6884,6 +7676,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 7273, "end": 0, "raw": "10.080000000000002", "start": 0, @@ -6894,6 +7687,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 7272, "end": 0, "operator": "-", "start": 0, @@ -6909,11 +7703,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 7246, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7246, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6925,14 +7721,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 7329, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7343, "elements": [ { + "commentStart": 7344, "end": 0, "raw": "13.44", "start": 0, @@ -6945,6 +7744,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 7352, "end": 0, "raw": "10.92", "start": 0, @@ -6955,6 +7755,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 7351, "end": 0, "operator": "-", "start": 0, @@ -6970,11 +7771,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 7324, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7324, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6986,14 +7789,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 7386, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7400, "elements": [ { + "commentStart": 7401, "end": 0, "raw": "13.44", "start": 0, @@ -7006,6 +7812,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 7409, "end": 0, "raw": "10.08", "start": 0, @@ -7016,6 +7823,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 7408, "end": 0, "operator": "-", "start": 0, @@ -7031,11 +7839,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 7381, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7381, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7047,14 +7857,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 7452, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7466, "elements": [ { + "commentStart": 7467, "end": 0, "raw": "15.12", "start": 0, @@ -7067,6 +7880,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 7475, "end": 0, "raw": "10.08", "start": 0, @@ -7077,6 +7891,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 7474, "end": 0, "operator": "-", "start": 0, @@ -7092,11 +7907,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 7447, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7447, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7108,14 +7925,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 7519, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7533, "elements": [ { + "commentStart": 7534, "end": 0, "raw": "15.12", "start": 0, @@ -7128,6 +7948,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 7542, "end": 0, "raw": "13.44", "start": 0, @@ -7138,6 +7959,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 7541, "end": 0, "operator": "-", "start": 0, @@ -7153,11 +7975,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 7514, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7514, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7169,14 +7993,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 7585, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7599, "elements": [ { + "commentStart": 7600, "end": 0, "raw": "14.28", "start": 0, @@ -7189,6 +8016,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 7608, "end": 0, "raw": "13.44", "start": 0, @@ -7199,6 +8027,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 7607, "end": 0, "operator": "-", "start": 0, @@ -7214,11 +8043,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 7580, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7580, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7230,14 +8061,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 7652, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7666, "elements": [ { + "commentStart": 7667, "end": 0, "raw": "9.24", "start": 0, @@ -7250,6 +8084,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 7674, "end": 0, "raw": "13.44", "start": 0, @@ -7260,6 +8095,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 7673, "end": 0, "operator": "-", "start": 0, @@ -7275,11 +8111,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 7647, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7647, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7291,14 +8129,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 7708, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7722, "elements": [ { + "commentStart": 7723, "end": 0, "raw": "11.76", "start": 0, @@ -7311,6 +8152,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 7731, "end": 0, "raw": "13.44", "start": 0, @@ -7321,6 +8163,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 7730, "end": 0, "operator": "-", "start": 0, @@ -7336,11 +8179,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 7703, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7703, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7352,14 +8197,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 7775, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7789, "elements": [ { + "commentStart": 7790, "end": 0, "raw": "11.76", "start": 0, @@ -7372,6 +8220,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 7798, "end": 0, "raw": "14.28", "start": 0, @@ -7382,6 +8231,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 7797, "end": 0, "operator": "-", "start": 0, @@ -7397,11 +8247,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 7770, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7770, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7413,14 +8265,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 7841, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7855, "elements": [ { + "commentStart": 7856, "end": 0, "raw": "10.92", "start": 0, @@ -7433,6 +8288,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 7864, "end": 0, "raw": "14.28", "start": 0, @@ -7443,6 +8299,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 7863, "end": 0, "operator": "-", "start": 0, @@ -7458,11 +8315,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 7836, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7836, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7474,14 +8333,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 7913, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7927, "elements": [ { + "commentStart": 7928, "end": 0, "raw": "10.92", "start": 0, @@ -7494,6 +8356,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 7936, "end": 0, "raw": "15.959999999999999", "start": 0, @@ -7504,6 +8367,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 7935, "end": 0, "operator": "-", "start": 0, @@ -7519,11 +8383,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 7908, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7908, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7535,14 +8401,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 7992, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8006, "elements": [ { + "commentStart": 8007, "end": 0, "raw": "13.44", "start": 0, @@ -7555,6 +8424,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 8015, "end": 0, "raw": "15.959999999999999", "start": 0, @@ -7565,6 +8435,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 8014, "end": 0, "operator": "-", "start": 0, @@ -7580,11 +8451,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 7987, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7987, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7596,14 +8469,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 8072, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8086, "elements": [ { + "commentStart": 8087, "end": 0, "raw": "13.44", "start": 0, @@ -7616,6 +8492,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 8095, "end": 0, "raw": "15.12", "start": 0, @@ -7626,6 +8503,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 8094, "end": 0, "operator": "-", "start": 0, @@ -7641,11 +8519,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 8067, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8067, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7657,14 +8537,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 8138, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8152, "elements": [ { + "commentStart": 8153, "end": 0, "raw": "14.28", "start": 0, @@ -7677,6 +8560,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 8161, "end": 0, "raw": "15.12", "start": 0, @@ -7687,6 +8571,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 8160, "end": 0, "operator": "-", "start": 0, @@ -7702,11 +8587,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 8133, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8133, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7718,14 +8605,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 8205, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8219, "elements": [ { + "commentStart": 8220, "end": 0, "raw": "14.28", "start": 0, @@ -7738,6 +8628,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 8228, "end": 0, "raw": "15.959999999999999", "start": 0, @@ -7748,6 +8639,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 8227, "end": 0, "operator": "-", "start": 0, @@ -7763,11 +8655,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 8200, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8200, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7779,14 +8673,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 8284, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8298, "elements": [ { + "commentStart": 8299, "end": 0, "raw": "13.44", "start": 0, @@ -7799,6 +8696,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 8307, "end": 0, "raw": "15.959999999999999", "start": 0, @@ -7809,6 +8707,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 8306, "end": 0, "operator": "-", "start": 0, @@ -7824,11 +8723,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 8279, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8279, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7840,14 +8741,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 8364, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8378, "elements": [ { + "commentStart": 8379, "end": 0, "raw": "13.44", "start": 0, @@ -7860,6 +8764,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 8387, "end": 0, "raw": "16.8", "start": 0, @@ -7870,6 +8775,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 8386, "end": 0, "operator": "-", "start": 0, @@ -7885,11 +8791,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 8359, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8359, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7901,14 +8809,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 8428, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8442, "elements": [ { + "commentStart": 8443, "end": 0, "raw": "7.56", "start": 0, @@ -7921,6 +8832,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 8450, "end": 0, "raw": "16.8", "start": 0, @@ -7931,6 +8843,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 8449, "end": 0, "operator": "-", "start": 0, @@ -7946,11 +8859,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 8423, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8423, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7962,14 +8877,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 8493, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8507, "elements": [ { + "commentStart": 8508, "end": 0, "raw": "7.56", "start": 0, @@ -7982,6 +8900,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 8515, "end": 0, "raw": "15.96", "start": 0, @@ -7992,6 +8911,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 8514, "end": 0, "operator": "-", "start": 0, @@ -8007,11 +8927,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 8488, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8488, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8023,14 +8945,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 8557, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8571, "elements": [ { + "commentStart": 8572, "end": 0, "raw": "6.72", "start": 0, @@ -8043,6 +8968,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 8579, "end": 0, "raw": "15.96", "start": 0, @@ -8053,6 +8979,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 8578, "end": 0, "operator": "-", "start": 0, @@ -8068,11 +8995,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 8552, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8552, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8084,14 +9013,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 8623, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8637, "elements": [ { + "commentStart": 8638, "end": 0, "raw": "6.72", "start": 0, @@ -8104,6 +9036,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 8645, "end": 0, "raw": "15.120000000000001", "start": 0, @@ -8114,6 +9047,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 8644, "end": 0, "operator": "-", "start": 0, @@ -8129,11 +9063,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 8618, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8618, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8145,14 +9081,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 8701, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8715, "elements": [ { + "commentStart": 8716, "end": 0, "raw": "7.56", "start": 0, @@ -8165,6 +9104,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 8723, "end": 0, "raw": "15.120000000000001", "start": 0, @@ -8175,6 +9115,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 8722, "end": 0, "operator": "-", "start": 0, @@ -8190,11 +9131,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 8696, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8696, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8206,14 +9149,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 8780, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8794, "elements": [ { + "commentStart": 8795, "end": 0, "raw": "7.56", "start": 0, @@ -8226,6 +9172,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 8802, "end": 0, "raw": "15.96", "start": 0, @@ -8236,6 +9183,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 8801, "end": 0, "operator": "-", "start": 0, @@ -8251,11 +9199,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 8775, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8775, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8267,14 +9217,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 8845, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8859, "elements": [ { + "commentStart": 8860, "end": 0, "raw": "10.08", "start": 0, @@ -8287,6 +9240,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 8868, "end": 0, "raw": "15.96", "start": 0, @@ -8297,6 +9251,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 8867, "end": 0, "operator": "-", "start": 0, @@ -8312,11 +9267,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 8840, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8840, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8328,14 +9285,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 8912, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8926, "elements": [ { + "commentStart": 8927, "end": 0, "raw": "10.08", "start": 0, @@ -8348,6 +9308,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 8935, "end": 0, "raw": "14.28", "start": 0, @@ -8358,6 +9319,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 8934, "end": 0, "operator": "-", "start": 0, @@ -8373,11 +9335,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 8907, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8907, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8389,14 +9353,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 8977, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8991, "elements": [ { + "commentStart": 8992, "end": 0, "raw": "9.24", "start": 0, @@ -8409,6 +9376,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 8999, "end": 0, "raw": "14.28", "start": 0, @@ -8419,6 +9387,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 8998, "end": 0, "operator": "-", "start": 0, @@ -8434,11 +9403,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 8972, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8972, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8450,14 +9421,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 9043, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9057, "elements": [ { + "commentStart": 9058, "end": 0, "raw": "7.56", "start": 0, @@ -8470,6 +9444,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 9065, "end": 0, "raw": "12.6", "start": 0, @@ -8480,6 +9455,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 9064, "end": 0, "operator": "-", "start": 0, @@ -8495,11 +9471,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 9038, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9038, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8511,14 +9489,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 9098, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9112, "elements": [ { + "commentStart": 9113, "end": 0, "raw": "7.56", "start": 0, @@ -8531,6 +9512,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 9120, "end": 0, "raw": "11.76", "start": 0, @@ -8541,6 +9523,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 9119, "end": 0, "operator": "-", "start": 0, @@ -8556,11 +9539,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 9093, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9093, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8572,14 +9557,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 9162, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9176, "elements": [ { + "commentStart": 9177, "end": 0, "raw": "5.04", "start": 0, @@ -8592,6 +9580,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 9184, "end": 0, "raw": "11.76", "start": 0, @@ -8602,6 +9591,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 9183, "end": 0, "operator": "-", "start": 0, @@ -8617,11 +9607,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 9157, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9157, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8633,14 +9625,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 9228, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9242, "elements": [ { + "commentStart": 9243, "end": 0, "raw": "5.04", "start": 0, @@ -8653,6 +9648,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 9250, "end": 0, "raw": "12.6", "start": 0, @@ -8663,6 +9659,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 9249, "end": 0, "operator": "-", "start": 0, @@ -8678,11 +9675,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 9223, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9223, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8694,14 +9693,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 9291, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9305, "elements": [ { + "commentStart": 9306, "end": 0, "raw": "4.2", "start": 0, @@ -8714,6 +9716,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 9312, "end": 0, "raw": "12.6", "start": 0, @@ -8724,6 +9727,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 9311, "end": 0, "operator": "-", "start": 0, @@ -8739,11 +9743,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 9286, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9286, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8755,14 +9761,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 9355, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9369, "elements": [ { + "commentStart": 9370, "end": 0, "raw": "4.2", "start": 0, @@ -8775,6 +9784,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 9376, "end": 0, "raw": "11.76", "start": 0, @@ -8785,6 +9795,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 9375, "end": 0, "operator": "-", "start": 0, @@ -8800,11 +9811,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 9350, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9350, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8816,14 +9829,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 9419, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9433, "elements": [ { + "commentStart": 9434, "end": 0, "raw": "5.04", "start": 0, @@ -8836,6 +9852,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 9441, "end": 0, "raw": "11.76", "start": 0, @@ -8846,6 +9863,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 9440, "end": 0, "operator": "-", "start": 0, @@ -8861,11 +9879,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 9414, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9414, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8877,14 +9897,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 9485, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9499, "elements": [ { + "commentStart": 9500, "end": 0, "raw": "5.04", "start": 0, @@ -8897,6 +9920,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 9507, "end": 0, "raw": "10.92", "start": 0, @@ -8907,6 +9931,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 9506, "end": 0, "operator": "-", "start": 0, @@ -8922,11 +9947,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 9480, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9480, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8938,14 +9965,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 9550, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9564, "elements": [ { + "commentStart": 9565, "end": 0, "raw": "7.5600000000000005", "start": 0, @@ -8958,6 +9988,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 9586, "end": 0, "raw": "10.92", "start": 0, @@ -8968,6 +9999,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 9585, "end": 0, "operator": "-", "start": 0, @@ -8983,11 +10015,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 9545, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9545, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8999,14 +10033,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 9630, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9644, "elements": [ { + "commentStart": 9645, "end": 0, "raw": "7.5600000000000005", "start": 0, @@ -9019,6 +10056,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 9666, "end": 0, "raw": "11.76", "start": 0, @@ -9029,6 +10067,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 9665, "end": 0, "operator": "-", "start": 0, @@ -9044,11 +10083,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 9625, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9625, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9060,14 +10101,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 9709, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9723, "elements": [ { + "commentStart": 9724, "end": 0, "raw": "8.4", "start": 0, @@ -9080,6 +10124,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 9730, "end": 0, "raw": "11.76", "start": 0, @@ -9090,6 +10135,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 9729, "end": 0, "operator": "-", "start": 0, @@ -9105,11 +10151,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 9704, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9704, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9121,14 +10169,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 9774, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9788, "elements": [ { + "commentStart": 9789, "end": 0, "raw": "8.4", "start": 0, @@ -9141,6 +10192,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 9795, "end": 0, "raw": "12.6", "start": 0, @@ -9151,6 +10203,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 9794, "end": 0, "operator": "-", "start": 0, @@ -9166,11 +10219,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 9769, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9769, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9182,14 +10237,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 9837, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9851, "elements": [ { + "commentStart": 9852, "end": 0, "raw": "3.36", "start": 0, @@ -9202,6 +10260,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 9859, "end": 0, "raw": "5.88", "start": 0, @@ -9212,6 +10271,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 9858, "end": 0, "operator": "-", "start": 0, @@ -9227,11 +10287,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 9832, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9832, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9243,14 +10305,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 9892, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9906, "elements": [ { + "commentStart": 9907, "end": 0, "raw": "3.36", "start": 0, @@ -9263,6 +10328,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 9914, "end": 0, "raw": "5.04", "start": 0, @@ -9273,6 +10339,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 9913, "end": 0, "operator": "-", "start": 0, @@ -9288,11 +10355,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 9887, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9887, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9304,14 +10373,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 9955, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9969, "elements": [ { + "commentStart": 9970, "end": 0, "raw": "4.2", "start": 0, @@ -9324,6 +10396,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 9976, "end": 0, "raw": "5.04", "start": 0, @@ -9334,6 +10407,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 9975, "end": 0, "operator": "-", "start": 0, @@ -9349,11 +10423,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 9950, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9950, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9365,14 +10441,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 10019, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10033, "elements": [ { + "commentStart": 10034, "end": 0, "raw": "4.2", "start": 0, @@ -9385,6 +10464,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 10040, "end": 0, "raw": "3.36", "start": 0, @@ -9395,6 +10475,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 10039, "end": 0, "operator": "-", "start": 0, @@ -9410,11 +10491,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 10014, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10014, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9426,14 +10509,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 10081, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10095, "elements": [ { + "commentStart": 10096, "end": 0, "raw": "5.04", "start": 0, @@ -9446,6 +10532,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 10103, "end": 0, "raw": "3.36", "start": 0, @@ -9456,6 +10543,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 10102, "end": 0, "operator": "-", "start": 0, @@ -9471,11 +10559,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 10076, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10076, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9487,14 +10577,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 10146, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10160, "elements": [ { + "commentStart": 10161, "end": 0, "raw": "5.04", "start": 0, @@ -9507,6 +10600,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 10168, "end": 0, "raw": "1.68", "start": 0, @@ -9517,6 +10611,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 10167, "end": 0, "operator": "-", "start": 0, @@ -9532,11 +10627,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 10141, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10141, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9548,14 +10645,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 10209, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10223, "elements": [ { + "commentStart": 10224, "end": 0, "raw": "5.88", "start": 0, @@ -9568,6 +10668,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 10231, "end": 0, "raw": "1.68", "start": 0, @@ -9578,6 +10679,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 10230, "end": 0, "operator": "-", "start": 0, @@ -9593,11 +10695,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 10204, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10204, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9609,14 +10713,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 10274, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10288, "elements": [ { + "commentStart": 10289, "end": 0, "raw": "5.88", "start": 0, @@ -9629,6 +10736,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 10296, "end": 0, "raw": "0.83999599", "start": 0, @@ -9639,6 +10747,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 10295, "end": 0, "operator": "-", "start": 0, @@ -9654,11 +10763,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 10269, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10269, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9670,14 +10781,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 10343, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10357, "elements": [ { + "commentStart": 10358, "end": 0, "raw": "6.72", "start": 0, @@ -9690,6 +10804,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 10365, "end": 0, "raw": "0.83999599", "start": 0, @@ -9700,6 +10815,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 10364, "end": 0, "operator": "-", "start": 0, @@ -9715,11 +10831,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 10338, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10338, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9731,14 +10849,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 10414, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10428, "elements": [ { + "commentStart": 10429, "end": 0, "raw": "6.72", "start": 0, @@ -9751,6 +10872,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 10436, "end": 0, "raw": "1.68", "start": 0, @@ -9761,6 +10883,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 10435, "end": 0, "operator": "-", "start": 0, @@ -9776,11 +10899,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 10409, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10409, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9792,14 +10917,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 10477, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10491, "elements": [ { + "commentStart": 10492, "end": 0, "raw": "7.56", "start": 0, @@ -9812,6 +10940,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 10499, "end": 0, "raw": "1.68", "start": 0, @@ -9822,6 +10951,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 10498, "end": 0, "operator": "-", "start": 0, @@ -9837,11 +10967,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 10472, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10472, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9853,14 +10985,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 10542, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10556, "elements": [ { + "commentStart": 10557, "end": 0, "raw": "7.56", "start": 0, @@ -9873,6 +11008,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 10564, "end": 0, "raw": "3.36", "start": 0, @@ -9883,6 +11019,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 10563, "end": 0, "operator": "-", "start": 0, @@ -9898,11 +11035,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 10537, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10537, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9914,14 +11053,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 10605, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10619, "elements": [ { + "commentStart": 10620, "end": 0, "raw": "8.4", "start": 0, @@ -9934,6 +11076,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 10626, "end": 0, "raw": "3.36", "start": 0, @@ -9944,6 +11087,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 10625, "end": 0, "operator": "-", "start": 0, @@ -9959,11 +11103,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 10600, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10600, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9975,14 +11121,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 10669, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10683, "elements": [ { + "commentStart": 10684, "end": 0, "raw": "8.4", "start": 0, @@ -9995,6 +11144,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 10690, "end": 0, "raw": "5.04", "start": 0, @@ -10005,6 +11155,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 10689, "end": 0, "operator": "-", "start": 0, @@ -10020,11 +11171,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 10664, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10664, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10036,14 +11189,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 10732, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10746, "elements": [ { + "commentStart": 10747, "end": 0, "raw": "9.24", "start": 0, @@ -10056,6 +11212,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 10754, "end": 0, "raw": "5.04", "start": 0, @@ -10066,6 +11223,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 10753, "end": 0, "operator": "-", "start": 0, @@ -10081,11 +11239,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 10727, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10727, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10097,14 +11257,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 10797, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10811, "elements": [ { + "commentStart": 10812, "end": 0, "raw": "9.24", "start": 0, @@ -10117,6 +11280,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 10819, "end": 0, "raw": "5.88", "start": 0, @@ -10127,6 +11291,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 10818, "end": 0, "operator": "-", "start": 0, @@ -10142,11 +11307,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 10792, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10792, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10158,14 +11325,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 10861, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10875, "elements": [ { + "commentStart": 10876, "end": 0, "raw": "17.64", "start": 0, @@ -10178,6 +11348,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 10884, "end": 0, "raw": "5.04", "start": 0, @@ -10188,6 +11359,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 10883, "end": 0, "operator": "-", "start": 0, @@ -10203,11 +11375,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 10856, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10856, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10219,14 +11393,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 10917, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10931, "elements": [ { + "commentStart": 10932, "end": 0, "raw": "17.64", "start": 0, @@ -10239,6 +11416,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 10940, "end": 0, "raw": "5.88", "start": 0, @@ -10249,6 +11427,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 10939, "end": 0, "operator": "-", "start": 0, @@ -10264,11 +11443,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 10912, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10912, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10280,14 +11461,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 10981, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10995, "elements": [ { + "commentStart": 10996, "end": 0, "raw": "11.76", "start": 0, @@ -10300,6 +11484,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 11004, "end": 0, "raw": "5.88", "start": 0, @@ -10310,6 +11495,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 11003, "end": 0, "operator": "-", "start": 0, @@ -10325,11 +11511,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 10976, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10976, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10341,14 +11529,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 11047, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11061, "elements": [ { + "commentStart": 11062, "end": 0, "raw": "11.76", "start": 0, @@ -10361,6 +11552,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 11070, "end": 0, "raw": "5.04", "start": 0, @@ -10371,6 +11563,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 11069, "end": 0, "operator": "-", "start": 0, @@ -10386,11 +11579,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 11042, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11042, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10402,14 +11597,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 11111, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11125, "elements": [ { + "commentStart": 11126, "end": 0, "raw": "12.6", "start": 0, @@ -10422,6 +11620,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 11133, "end": 0, "raw": "5.04", "start": 0, @@ -10432,6 +11631,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 11132, "end": 0, "operator": "-", "start": 0, @@ -10447,11 +11647,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 11106, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11106, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10463,14 +11665,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 11176, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11190, "elements": [ { + "commentStart": 11191, "end": 0, "raw": "12.6", "start": 0, @@ -10483,6 +11688,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 11198, "end": 0, "raw": "3.36", "start": 0, @@ -10493,6 +11699,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 11197, "end": 0, "operator": "-", "start": 0, @@ -10508,11 +11715,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 11171, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11171, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10524,14 +11733,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 11239, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11253, "elements": [ { + "commentStart": 11254, "end": 0, "raw": "13.44", "start": 0, @@ -10544,6 +11756,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 11262, "end": 0, "raw": "3.36", "start": 0, @@ -10554,6 +11767,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 11261, "end": 0, "operator": "-", "start": 0, @@ -10569,11 +11783,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 11234, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11234, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10585,14 +11801,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 11305, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11319, "elements": [ { + "commentStart": 11320, "end": 0, "raw": "13.44", "start": 0, @@ -10605,6 +11824,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 11328, "end": 0, "raw": "1.68", "start": 0, @@ -10615,6 +11835,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 11327, "end": 0, "operator": "-", "start": 0, @@ -10630,11 +11851,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 11300, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11300, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10646,14 +11869,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 11369, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11383, "elements": [ { + "commentStart": 11384, "end": 0, "raw": "14.28", "start": 0, @@ -10666,6 +11892,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 11392, "end": 0, "raw": "1.68", "start": 0, @@ -10676,6 +11903,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 11391, "end": 0, "operator": "-", "start": 0, @@ -10691,11 +11919,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 11364, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11364, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10707,14 +11937,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 11435, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11449, "elements": [ { + "commentStart": 11450, "end": 0, "raw": "14.28", "start": 0, @@ -10727,6 +11960,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 11458, "end": 0, "raw": "0.83999599", "start": 0, @@ -10737,6 +11971,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 11457, "end": 0, "operator": "-", "start": 0, @@ -10752,11 +11987,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 11430, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11430, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10768,14 +12005,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 11505, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11519, "elements": [ { + "commentStart": 11520, "end": 0, "raw": "15.12", "start": 0, @@ -10788,6 +12028,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 11528, "end": 0, "raw": "0.83999599", "start": 0, @@ -10798,6 +12039,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 11527, "end": 0, "operator": "-", "start": 0, @@ -10813,11 +12055,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 11500, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11500, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10829,14 +12073,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 11577, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11591, "elements": [ { + "commentStart": 11592, "end": 0, "raw": "15.12", "start": 0, @@ -10849,6 +12096,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 11600, "end": 0, "raw": "1.68", "start": 0, @@ -10859,6 +12107,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 11599, "end": 0, "operator": "-", "start": 0, @@ -10874,11 +12123,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 11572, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11572, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10890,14 +12141,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 11641, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11655, "elements": [ { + "commentStart": 11656, "end": 0, "raw": "15.959999999999999", "start": 0, @@ -10910,6 +12164,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 11677, "end": 0, "raw": "1.68", "start": 0, @@ -10920,6 +12175,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 11676, "end": 0, "operator": "-", "start": 0, @@ -10935,11 +12191,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 11636, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11636, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10951,14 +12209,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 11720, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11734, "elements": [ { + "commentStart": 11735, "end": 0, "raw": "15.959999999999999", "start": 0, @@ -10971,6 +12232,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 11756, "end": 0, "raw": "3.36", "start": 0, @@ -10981,6 +12243,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 11755, "end": 0, "operator": "-", "start": 0, @@ -10996,11 +12259,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 11715, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11715, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11012,14 +12277,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 11798, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11812, "elements": [ { + "commentStart": 11813, "end": 0, "raw": "16.8", "start": 0, @@ -11032,6 +12300,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 11820, "end": 0, "raw": "3.36", "start": 0, @@ -11042,6 +12311,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 11819, "end": 0, "operator": "-", "start": 0, @@ -11057,11 +12327,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 11793, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11793, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11073,14 +12345,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 11863, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11877, "elements": [ { + "commentStart": 11878, "end": 0, "raw": "16.8", "start": 0, @@ -11093,6 +12368,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 11885, "end": 0, "raw": "5.04", "start": 0, @@ -11103,6 +12379,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 11884, "end": 0, "operator": "-", "start": 0, @@ -11118,11 +12395,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 11858, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11858, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11134,14 +12413,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 11927, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11941, "elements": [ { + "commentStart": 11942, "end": 0, "raw": "13.44", "start": 0, @@ -11154,6 +12436,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 11950, "end": 0, "raw": "1.68", "start": 0, @@ -11164,6 +12447,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 11949, "end": 0, "operator": "-", "start": 0, @@ -11179,11 +12463,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 11922, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11922, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11195,14 +12481,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 11983, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11997, "elements": [ { + "commentStart": 11998, "end": 0, "raw": "13.44", "start": 0, @@ -11215,6 +12504,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 12006, "end": 0, "raw": "0", "start": 0, @@ -11225,6 +12515,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 12005, "end": 0, "operator": "-", "start": 0, @@ -11240,11 +12531,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 11978, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11978, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11256,14 +12549,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 12044, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12058, "elements": [ { + "commentStart": 12059, "end": 0, "raw": "15.959999999999999", "start": 0, @@ -11276,6 +12572,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 12080, "end": 0, "raw": "0", "start": 0, @@ -11286,6 +12583,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 12079, "end": 0, "operator": "-", "start": 0, @@ -11301,11 +12599,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 12039, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12039, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11317,14 +12617,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 12120, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12134, "elements": [ { + "commentStart": 12135, "end": 0, "raw": "15.959999999999999", "start": 0, @@ -11337,6 +12640,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 12156, "end": 0, "raw": "1.68", "start": 0, @@ -11347,6 +12651,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 12155, "end": 0, "operator": "-", "start": 0, @@ -11362,11 +12667,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 12115, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12115, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11378,14 +12685,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 12198, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12212, "elements": [ { + "commentStart": 12213, "end": 0, "raw": "16.8", "start": 0, @@ -11398,6 +12708,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 12220, "end": 0, "raw": "1.68", "start": 0, @@ -11408,6 +12719,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 12219, "end": 0, "operator": "-", "start": 0, @@ -11423,11 +12735,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 12193, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12193, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11439,14 +12753,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 12263, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12277, "elements": [ { + "commentStart": 12278, "end": 0, "raw": "16.8", "start": 0, @@ -11459,6 +12776,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 12285, "end": 0, "raw": "3.36", "start": 0, @@ -11469,6 +12787,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 12284, "end": 0, "operator": "-", "start": 0, @@ -11484,11 +12803,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 12258, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12258, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11500,14 +12821,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 12327, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12341, "elements": [ { + "commentStart": 12342, "end": 0, "raw": "17.64", "start": 0, @@ -11520,6 +12844,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 12350, "end": 0, "raw": "3.36", "start": 0, @@ -11530,6 +12855,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 12349, "end": 0, "operator": "-", "start": 0, @@ -11545,11 +12871,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 12322, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12322, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11561,14 +12889,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 12393, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12407, "elements": [ { + "commentStart": 12408, "end": 0, "raw": "17.64", "start": 0, @@ -11581,6 +12912,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 12416, "end": 0, "raw": "4.62", "start": 0, @@ -11591,6 +12923,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 12415, "end": 0, "operator": "-", "start": 0, @@ -11606,11 +12939,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 12388, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12388, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11622,14 +12957,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 12457, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12471, "elements": [ { + "commentStart": 12472, "end": 0, "raw": "16.8", "start": 0, @@ -11642,6 +12980,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 12479, "end": 0, "raw": "4.62", "start": 0, @@ -11652,6 +12991,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 12478, "end": 0, "operator": "-", "start": 0, @@ -11667,11 +13007,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 12452, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12452, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11683,14 +13025,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 12522, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12536, "elements": [ { + "commentStart": 12537, "end": 0, "raw": "16.8", "start": 0, @@ -11703,6 +13048,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 12544, "end": 0, "raw": "3.36", "start": 0, @@ -11713,6 +13059,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 12543, "end": 0, "operator": "-", "start": 0, @@ -11728,11 +13075,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 12517, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12517, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11744,14 +13093,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 12585, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12599, "elements": [ { + "commentStart": 12600, "end": 0, "raw": "15.96", "start": 0, @@ -11764,6 +13116,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 12608, "end": 0, "raw": "3.36", "start": 0, @@ -11774,6 +13127,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 12607, "end": 0, "operator": "-", "start": 0, @@ -11789,11 +13143,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 12580, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12580, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11805,14 +13161,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 12651, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12665, "elements": [ { + "commentStart": 12666, "end": 0, "raw": "15.96", "start": 0, @@ -11825,6 +13184,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 12674, "end": 0, "raw": "1.68", "start": 0, @@ -11835,6 +13195,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 12673, "end": 0, "operator": "-", "start": 0, @@ -11850,11 +13211,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 12646, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12646, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11866,14 +13229,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 12715, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12729, "elements": [ { + "commentStart": 12730, "end": 0, "raw": "15.12", "start": 0, @@ -11886,6 +13252,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 12738, "end": 0, "raw": "1.68", "start": 0, @@ -11896,6 +13263,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 12737, "end": 0, "operator": "-", "start": 0, @@ -11911,11 +13279,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 12710, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12710, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11927,14 +13297,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 12781, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12795, "elements": [ { + "commentStart": 12796, "end": 0, "raw": "15.12", "start": 0, @@ -11947,6 +13320,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 12804, "end": 0, "raw": "0.83999999", "start": 0, @@ -11957,6 +13331,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 12803, "end": 0, "operator": "-", "start": 0, @@ -11972,11 +13347,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 12776, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12776, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11988,14 +13365,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 12851, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12865, "elements": [ { + "commentStart": 12866, "end": 0, "raw": "14.28", "start": 0, @@ -12008,6 +13388,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 12874, "end": 0, "raw": "0.83999999", "start": 0, @@ -12018,6 +13399,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 12873, "end": 0, "operator": "-", "start": 0, @@ -12033,11 +13415,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 12846, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12846, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12049,14 +13433,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 12923, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12937, "elements": [ { + "commentStart": 12938, "end": 0, "raw": "14.28", "start": 0, @@ -12069,6 +13456,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 12946, "end": 0, "raw": "1.68", "start": 0, @@ -12079,6 +13467,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 12945, "end": 0, "operator": "-", "start": 0, @@ -12094,11 +13483,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 12918, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12918, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12110,14 +13501,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 12987, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13001, "elements": [ { + "commentStart": 13002, "end": 0, "raw": "13.44", "start": 0, @@ -12130,6 +13524,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 13010, "end": 0, "raw": "1.68", "start": 0, @@ -12140,6 +13535,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 13009, "end": 0, "operator": "-", "start": 0, @@ -12155,11 +13551,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 12982, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12982, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12171,14 +13569,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 13053, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13067, "elements": [ { + "commentStart": 13068, "end": 0, "raw": "13.44", "start": 0, @@ -12191,6 +13592,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 13076, "end": 0, "raw": "3.36", "start": 0, @@ -12201,6 +13603,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 13075, "end": 0, "operator": "-", "start": 0, @@ -12216,11 +13619,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 13048, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13048, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12232,14 +13637,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 13117, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13131, "elements": [ { + "commentStart": 13132, "end": 0, "raw": "12.6", "start": 0, @@ -12252,6 +13660,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 13139, "end": 0, "raw": "3.36", "start": 0, @@ -12262,6 +13671,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 13138, "end": 0, "operator": "-", "start": 0, @@ -12277,11 +13687,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 13112, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13112, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12293,14 +13705,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 13182, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13196, "elements": [ { + "commentStart": 13197, "end": 0, "raw": "12.6", "start": 0, @@ -12313,6 +13728,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 13204, "end": 0, "raw": "4.62", "start": 0, @@ -12323,6 +13739,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 13203, "end": 0, "operator": "-", "start": 0, @@ -12338,11 +13755,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 13177, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13177, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12354,14 +13773,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 13245, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13259, "elements": [ { + "commentStart": 13260, "end": 0, "raw": "11.76", "start": 0, @@ -12374,6 +13796,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 13268, "end": 0, "raw": "4.62", "start": 0, @@ -12384,6 +13807,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 13267, "end": 0, "operator": "-", "start": 0, @@ -12399,11 +13823,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 13240, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13240, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12415,14 +13841,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 13311, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13325, "elements": [ { + "commentStart": 13326, "end": 0, "raw": "11.76", "start": 0, @@ -12435,6 +13864,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 13334, "end": 0, "raw": "3.36", "start": 0, @@ -12445,6 +13875,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 13333, "end": 0, "operator": "-", "start": 0, @@ -12460,11 +13891,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 13306, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13306, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12476,14 +13909,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 13375, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13389, "elements": [ { + "commentStart": 13390, "end": 0, "raw": "12.6", "start": 0, @@ -12496,6 +13932,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 13397, "end": 0, "raw": "3.36", "start": 0, @@ -12506,6 +13943,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 13396, "end": 0, "operator": "-", "start": 0, @@ -12521,11 +13959,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 13370, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13370, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12537,14 +13977,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 13440, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13454, "elements": [ { + "commentStart": 13455, "end": 0, "raw": "12.6", "start": 0, @@ -12557,6 +14000,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 13462, "end": 0, "raw": "1.68", "start": 0, @@ -12567,6 +14011,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 13461, "end": 0, "operator": "-", "start": 0, @@ -12582,11 +14027,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 13435, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13435, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12598,14 +14045,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 13503, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13517, "elements": [ { + "commentStart": 13518, "end": 0, "raw": "5.04", "start": 0, @@ -12618,6 +14068,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 13525, "end": 0, "raw": "1.68", "start": 0, @@ -12628,6 +14079,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 13524, "end": 0, "operator": "-", "start": 0, @@ -12643,11 +14095,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 13498, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13498, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12659,14 +14113,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 13558, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13572, "elements": [ { + "commentStart": 13573, "end": 0, "raw": "5.04", "start": 0, @@ -12679,6 +14136,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 13580, "end": 0, "raw": "0", "start": 0, @@ -12689,6 +14147,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 13579, "end": 0, "operator": "-", "start": 0, @@ -12704,11 +14163,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 13553, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13553, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12720,14 +14181,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 13618, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13632, "elements": [ { + "commentStart": 13633, "end": 0, "raw": "7.56", "start": 0, @@ -12740,6 +14204,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 13640, "end": 0, "raw": "0", "start": 0, @@ -12750,6 +14215,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 13639, "end": 0, "operator": "-", "start": 0, @@ -12765,11 +14231,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 13613, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13613, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12781,14 +14249,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 13680, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13694, "elements": [ { + "commentStart": 13695, "end": 0, "raw": "7.56", "start": 0, @@ -12801,6 +14272,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 13702, "end": 0, "raw": "1.68", "start": 0, @@ -12811,6 +14283,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 13701, "end": 0, "operator": "-", "start": 0, @@ -12826,11 +14299,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 13675, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13675, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12842,14 +14317,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 13743, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13757, "elements": [ { + "commentStart": 13758, "end": 0, "raw": "8.4", "start": 0, @@ -12862,6 +14340,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 13764, "end": 0, "raw": "1.68", "start": 0, @@ -12872,6 +14351,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 13763, "end": 0, "operator": "-", "start": 0, @@ -12887,11 +14367,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 13738, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13738, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12903,14 +14385,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 13807, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13821, "elements": [ { + "commentStart": 13822, "end": 0, "raw": "8.4", "start": 0, @@ -12923,6 +14408,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 13828, "end": 0, "raw": "3.36", "start": 0, @@ -12933,6 +14419,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 13827, "end": 0, "operator": "-", "start": 0, @@ -12948,11 +14435,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 13802, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13802, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12964,14 +14453,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 13869, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13883, "elements": [ { + "commentStart": 13884, "end": 0, "raw": "9.24", "start": 0, @@ -12984,6 +14476,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 13891, "end": 0, "raw": "3.36", "start": 0, @@ -12994,6 +14487,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 13890, "end": 0, "operator": "-", "start": 0, @@ -13009,11 +14503,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 13864, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13864, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13025,14 +14521,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 13934, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13948, "elements": [ { + "commentStart": 13949, "end": 0, "raw": "9.24", "start": 0, @@ -13045,6 +14544,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 13956, "end": 0, "raw": "4.62", "start": 0, @@ -13055,6 +14555,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 13955, "end": 0, "operator": "-", "start": 0, @@ -13070,11 +14571,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 13929, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13929, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13086,14 +14589,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 13997, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14011, "elements": [ { + "commentStart": 14012, "end": 0, "raw": "8.4", "start": 0, @@ -13106,6 +14612,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 14018, "end": 0, "raw": "4.62", "start": 0, @@ -13116,6 +14623,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 14017, "end": 0, "operator": "-", "start": 0, @@ -13131,11 +14639,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 13992, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13992, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13147,14 +14657,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 14061, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14075, "elements": [ { + "commentStart": 14076, "end": 0, "raw": "8.4", "start": 0, @@ -13167,6 +14680,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 14082, "end": 0, "raw": "3.36", "start": 0, @@ -13177,6 +14691,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 14081, "end": 0, "operator": "-", "start": 0, @@ -13192,11 +14707,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 14056, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14056, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13208,14 +14725,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 14123, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14137, "elements": [ { + "commentStart": 14138, "end": 0, "raw": "7.56", "start": 0, @@ -13228,6 +14748,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 14145, "end": 0, "raw": "3.36", "start": 0, @@ -13238,6 +14759,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 14144, "end": 0, "operator": "-", "start": 0, @@ -13253,11 +14775,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 14118, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14118, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13269,14 +14793,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 14188, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14202, "elements": [ { + "commentStart": 14203, "end": 0, "raw": "7.56", "start": 0, @@ -13289,6 +14816,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 14210, "end": 0, "raw": "1.68", "start": 0, @@ -13299,6 +14827,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 14209, "end": 0, "operator": "-", "start": 0, @@ -13314,11 +14843,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 14183, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14183, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13330,14 +14861,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 14251, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14265, "elements": [ { + "commentStart": 14266, "end": 0, "raw": "6.72", "start": 0, @@ -13350,6 +14884,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 14273, "end": 0, "raw": "1.68", "start": 0, @@ -13360,6 +14895,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 14272, "end": 0, "operator": "-", "start": 0, @@ -13375,11 +14911,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 14246, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14246, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13391,14 +14929,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 14316, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14330, "elements": [ { + "commentStart": 14331, "end": 0, "raw": "6.72", "start": 0, @@ -13411,6 +14952,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 14338, "end": 0, "raw": "0.83999999", "start": 0, @@ -13421,6 +14963,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 14337, "end": 0, "operator": "-", "start": 0, @@ -13436,11 +14979,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 14311, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14311, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13452,14 +14997,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 14385, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14399, "elements": [ { + "commentStart": 14400, "end": 0, "raw": "5.88", "start": 0, @@ -13472,6 +15020,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 14407, "end": 0, "raw": "0.83999999", "start": 0, @@ -13482,6 +15031,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 14406, "end": 0, "operator": "-", "start": 0, @@ -13497,11 +15047,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 14380, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14380, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13513,14 +15065,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 14456, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14470, "elements": [ { + "commentStart": 14471, "end": 0, "raw": "5.88", "start": 0, @@ -13533,6 +15088,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 14478, "end": 0, "raw": "1.68", "start": 0, @@ -13543,6 +15099,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 14477, "end": 0, "operator": "-", "start": 0, @@ -13558,11 +15115,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 14451, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14451, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13574,14 +15133,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 14519, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14533, "elements": [ { + "commentStart": 14534, "end": 0, "raw": "5.04", "start": 0, @@ -13594,6 +15156,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 14541, "end": 0, "raw": "1.68", "start": 0, @@ -13604,6 +15167,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 14540, "end": 0, "operator": "-", "start": 0, @@ -13619,11 +15183,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 14514, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14514, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13635,14 +15201,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 14584, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14598, "elements": [ { + "commentStart": 14599, "end": 0, "raw": "5.04", "start": 0, @@ -13655,6 +15224,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 14606, "end": 0, "raw": "3.36", "start": 0, @@ -13665,6 +15235,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 14605, "end": 0, "operator": "-", "start": 0, @@ -13680,11 +15251,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 14579, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14579, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13696,14 +15269,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 14647, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14661, "elements": [ { + "commentStart": 14662, "end": 0, "raw": "4.2", "start": 0, @@ -13716,6 +15292,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 14668, "end": 0, "raw": "3.36", "start": 0, @@ -13726,6 +15303,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 14667, "end": 0, "operator": "-", "start": 0, @@ -13741,11 +15319,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 14642, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14642, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13757,14 +15337,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 14711, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14725, "elements": [ { + "commentStart": 14726, "end": 0, "raw": "4.2", "start": 0, @@ -13777,6 +15360,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 14732, "end": 0, "raw": "4.62", "start": 0, @@ -13787,6 +15371,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 14731, "end": 0, "operator": "-", "start": 0, @@ -13802,11 +15387,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 14706, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14706, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13818,14 +15405,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 14773, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14787, "elements": [ { + "commentStart": 14788, "end": 0, "raw": "3.36", "start": 0, @@ -13838,6 +15428,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 14795, "end": 0, "raw": "4.62", "start": 0, @@ -13848,6 +15439,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 14794, "end": 0, "operator": "-", "start": 0, @@ -13863,11 +15455,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 14768, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14768, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13879,14 +15473,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 14838, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14852, "elements": [ { + "commentStart": 14853, "end": 0, "raw": "3.36", "start": 0, @@ -13899,6 +15496,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 14860, "end": 0, "raw": "3.36", "start": 0, @@ -13909,6 +15507,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 14859, "end": 0, "operator": "-", "start": 0, @@ -13924,11 +15523,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 14833, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14833, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13940,14 +15541,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 14901, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14915, "elements": [ { + "commentStart": 14916, "end": 0, "raw": "4.2", "start": 0, @@ -13960,6 +15564,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 14922, "end": 0, "raw": "3.36", "start": 0, @@ -13970,6 +15575,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 14921, "end": 0, "operator": "-", "start": 0, @@ -13985,11 +15591,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 14896, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14896, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14001,14 +15609,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 14965, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14979, "elements": [ { + "commentStart": 14980, "end": 0, "raw": "4.2", "start": 0, @@ -14021,6 +15632,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 14986, "end": 0, "raw": "1.68", "start": 0, @@ -14031,6 +15643,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 14985, "end": 0, "operator": "-", "start": 0, @@ -14046,11 +15659,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 14960, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14960, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14062,14 +15677,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 15027, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15041, "elements": [ { + "commentStart": 15042, "end": 0, "raw": "13.44", "start": 0, @@ -14082,6 +15700,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 15050, "end": 0, "raw": "5.88", "start": 0, @@ -14092,6 +15711,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 15049, "end": 0, "operator": "-", "start": 0, @@ -14107,11 +15727,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 15022, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15022, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14123,14 +15745,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 15083, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15097, "elements": [ { + "commentStart": 15098, "end": 0, "raw": "13.44", "start": 0, @@ -14143,6 +15768,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 15106, "end": 0, "raw": "5.04", "start": 0, @@ -14153,6 +15779,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 15105, "end": 0, "operator": "-", "start": 0, @@ -14168,11 +15795,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 15078, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15078, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14184,14 +15813,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 15147, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15161, "elements": [ { + "commentStart": 15162, "end": 0, "raw": "14.28", "start": 0, @@ -14204,6 +15836,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 15170, "end": 0, "raw": "5.04", "start": 0, @@ -14214,6 +15847,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 15169, "end": 0, "operator": "-", "start": 0, @@ -14229,11 +15863,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 15142, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15142, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14245,14 +15881,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 15213, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15227, "elements": [ { + "commentStart": 15228, "end": 0, "raw": "14.28", "start": 0, @@ -14265,6 +15904,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 15236, "end": 0, "raw": "4.2", "start": 0, @@ -14275,6 +15915,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 15235, "end": 0, "operator": "-", "start": 0, @@ -14290,11 +15931,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 15208, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15208, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14306,14 +15949,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 15276, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15290, "elements": [ { + "commentStart": 15291, "end": 0, "raw": "15.12", "start": 0, @@ -14326,6 +15972,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 15299, "end": 0, "raw": "4.2", "start": 0, @@ -14336,6 +15983,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 15298, "end": 0, "operator": "-", "start": 0, @@ -14351,11 +15999,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 15271, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15271, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14367,14 +16017,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 15341, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15355, "elements": [ { + "commentStart": 15356, "end": 0, "raw": "15.12", "start": 0, @@ -14387,6 +16040,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 15364, "end": 0, "raw": "5.04", "start": 0, @@ -14397,6 +16051,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 15363, "end": 0, "operator": "-", "start": 0, @@ -14412,11 +16067,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 15336, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15336, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14428,14 +16085,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 15406, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15420, "elements": [ { + "commentStart": 15421, "end": 0, "raw": "15.959999999999999", "start": 0, @@ -14448,6 +16108,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 15442, "end": 0, "raw": "5.04", "start": 0, @@ -14458,6 +16119,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 15441, "end": 0, "operator": "-", "start": 0, @@ -14473,11 +16135,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 15401, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15401, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14489,14 +16153,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 15485, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15499, "elements": [ { + "commentStart": 15500, "end": 0, "raw": "15.959999999999999", "start": 0, @@ -14509,6 +16176,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 15521, "end": 0, "raw": "5.88", "start": 0, @@ -14519,6 +16187,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 15520, "end": 0, "operator": "-", "start": 0, @@ -14534,11 +16203,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 15480, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15480, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14550,14 +16221,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 15563, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15577, "elements": [ { + "commentStart": 15578, "end": 0, "raw": "5.88", "start": 0, @@ -14570,6 +16244,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 15585, "end": 0, "raw": "5.04", "start": 0, @@ -14580,6 +16255,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 15584, "end": 0, "operator": "-", "start": 0, @@ -14595,11 +16271,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 15558, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15558, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14611,14 +16289,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 15618, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15632, "elements": [ { + "commentStart": 15633, "end": 0, "raw": "5.88", "start": 0, @@ -14631,6 +16312,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 15640, "end": 0, "raw": "4.2", "start": 0, @@ -14641,6 +16323,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 15639, "end": 0, "operator": "-", "start": 0, @@ -14656,11 +16339,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 15613, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15613, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14672,14 +16357,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 15680, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15694, "elements": [ { + "commentStart": 15695, "end": 0, "raw": "6.72", "start": 0, @@ -14692,6 +16380,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 15702, "end": 0, "raw": "4.2", "start": 0, @@ -14702,6 +16391,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 15701, "end": 0, "operator": "-", "start": 0, @@ -14717,11 +16407,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 15675, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15675, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14733,14 +16425,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 15744, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15758, "elements": [ { + "commentStart": 15759, "end": 0, "raw": "6.72", "start": 0, @@ -14753,6 +16448,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 15766, "end": 0, "raw": "5.04", "start": 0, @@ -14763,6 +16459,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 15765, "end": 0, "operator": "-", "start": 0, @@ -14778,11 +16475,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 15739, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15739, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14794,14 +16493,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 15807, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15821, "elements": [ { + "commentStart": 15822, "end": 0, "raw": "7.56", "start": 0, @@ -14814,6 +16516,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 15829, "end": 0, "raw": "5.04", "start": 0, @@ -14824,6 +16527,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 15828, "end": 0, "operator": "-", "start": 0, @@ -14839,11 +16543,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 15802, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15802, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14855,14 +16561,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 15872, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15886, "elements": [ { + "commentStart": 15887, "end": 0, "raw": "7.56", "start": 0, @@ -14875,6 +16584,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 15894, "end": 0, "raw": "5.88", "start": 0, @@ -14885,6 +16595,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 15893, "end": 0, "operator": "-", "start": 0, @@ -14900,11 +16611,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 15867, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15867, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14916,14 +16629,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 15935, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15949, "elements": [ { + "commentStart": 15950, "end": 0, "raw": "5.04", "start": 0, @@ -14936,6 +16652,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 15957, "end": 0, "raw": "5.88", "start": 0, @@ -14946,6 +16663,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 15956, "end": 0, "operator": "-", "start": 0, @@ -14961,11 +16679,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 15930, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15930, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14977,14 +16697,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 16000, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16014, "elements": [ { + "commentStart": 16015, "end": 0, "raw": "5.04", "start": 0, @@ -14997,6 +16720,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 16022, "end": 0, "raw": "5.04", "start": 0, @@ -15007,6 +16731,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 16021, "end": 0, "operator": "-", "start": 0, @@ -15022,11 +16747,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 15995, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15995, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15038,14 +16765,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 16063, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16077, "elements": [ { + "commentStart": 16078, "end": 0, "raw": "17.64", "start": 0, @@ -15058,6 +16788,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 16086, "end": 0, "raw": "5.88", "start": 0, @@ -15068,6 +16799,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 16085, "end": 0, "operator": "-", "start": 0, @@ -15083,11 +16815,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 16058, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16058, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15099,14 +16833,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 16119, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16133, "elements": [ { + "commentStart": 16134, "end": 0, "raw": "17.64", "start": 0, @@ -15119,6 +16856,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 16142, "end": 0, "raw": "5.04", "start": 0, @@ -15129,6 +16867,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 16141, "end": 0, "operator": "-", "start": 0, @@ -15144,11 +16883,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 16114, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16114, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15160,14 +16901,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 16183, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16197, "elements": [ { + "commentStart": 16198, "end": 0, "raw": "16.8", "start": 0, @@ -15180,6 +16924,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 16205, "end": 0, "raw": "5.04", "start": 0, @@ -15190,6 +16935,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 16204, "end": 0, "operator": "-", "start": 0, @@ -15205,11 +16951,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 16178, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16178, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15221,14 +16969,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 16248, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16262, "elements": [ { + "commentStart": 16263, "end": 0, "raw": "16.8", "start": 0, @@ -15241,6 +16992,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 16270, "end": 0, "raw": "4.2", "start": 0, @@ -15251,6 +17003,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 16269, "end": 0, "operator": "-", "start": 0, @@ -15266,11 +17019,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 16243, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16243, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15282,14 +17037,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 16310, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16324, "elements": [ { + "commentStart": 16325, "end": 0, "raw": "17.64", "start": 0, @@ -15302,6 +17060,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 16333, "end": 0, "raw": "4.2", "start": 0, @@ -15312,6 +17071,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 16332, "end": 0, "operator": "-", "start": 0, @@ -15327,11 +17087,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 16305, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16305, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15343,14 +17105,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 16375, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16389, "elements": [ { + "commentStart": 16390, "end": 0, "raw": "17.64", "start": 0, @@ -15363,6 +17128,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 16398, "end": 0, "raw": "5.04", "start": 0, @@ -15373,6 +17139,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 16397, "end": 0, "operator": "-", "start": 0, @@ -15388,11 +17155,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 16370, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16370, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15404,14 +17173,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 16440, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16454, "elements": [ { + "commentStart": 16455, "end": 0, "raw": "18.48", "start": 0, @@ -15424,6 +17196,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 16463, "end": 0, "raw": "5.04", "start": 0, @@ -15434,6 +17207,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 16462, "end": 0, "operator": "-", "start": 0, @@ -15449,11 +17223,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 16435, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16435, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15465,14 +17241,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 16506, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16520, "elements": [ { + "commentStart": 16521, "end": 0, "raw": "18.48", "start": 0, @@ -15485,6 +17264,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 16529, "end": 0, "raw": "5.88", "start": 0, @@ -15495,6 +17275,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 16528, "end": 0, "operator": "-", "start": 0, @@ -15510,11 +17291,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 16501, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16501, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15526,14 +17309,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 16571, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16585, "elements": [ { + "commentStart": 16586, "end": 0, "raw": "3.36", "start": 0, @@ -15546,6 +17332,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 16593, "end": 0, "raw": "5.04", "start": 0, @@ -15556,6 +17343,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 16592, "end": 0, "operator": "-", "start": 0, @@ -15571,11 +17359,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 16566, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16566, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15587,14 +17377,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 16626, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16640, "elements": [ { + "commentStart": 16641, "end": 0, "raw": "3.36", "start": 0, @@ -15607,6 +17400,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 16648, "end": 0, "raw": "5.88", "start": 0, @@ -15617,6 +17411,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 16647, "end": 0, "operator": "-", "start": 0, @@ -15632,11 +17427,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 16621, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16621, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15648,14 +17445,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 16689, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16703, "elements": [ { + "commentStart": 16704, "end": 0, "raw": "2.52", "start": 0, @@ -15668,6 +17468,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 16711, "end": 0, "raw": "5.88", "start": 0, @@ -15678,6 +17479,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 16710, "end": 0, "operator": "-", "start": 0, @@ -15693,11 +17495,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 16684, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16684, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15709,14 +17513,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 16754, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16768, "elements": [ { + "commentStart": 16769, "end": 0, "raw": "2.52", "start": 0, @@ -15729,6 +17536,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 16776, "end": 0, "raw": "5.04", "start": 0, @@ -15739,6 +17547,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 16775, "end": 0, "operator": "-", "start": 0, @@ -15754,11 +17563,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 16749, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16749, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15770,14 +17581,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 16817, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16831, "elements": [ { + "commentStart": 16832, "end": 0, "raw": "3.36", "start": 0, @@ -15790,6 +17604,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 16839, "end": 0, "raw": "5.04", "start": 0, @@ -15800,6 +17615,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 16838, "end": 0, "operator": "-", "start": 0, @@ -15815,11 +17631,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 16812, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16812, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15831,14 +17649,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 16882, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16896, "elements": [ { + "commentStart": 16897, "end": 0, "raw": "3.36", "start": 0, @@ -15851,6 +17672,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 16904, "end": 0, "raw": "4.2", "start": 0, @@ -15861,6 +17683,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 16903, "end": 0, "operator": "-", "start": 0, @@ -15876,11 +17699,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 16877, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16877, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15892,14 +17717,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 16944, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16958, "elements": [ { + "commentStart": 16959, "end": 0, "raw": "4.2", "start": 0, @@ -15912,6 +17740,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 16965, "end": 0, "raw": "4.2", "start": 0, @@ -15922,6 +17751,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 16964, "end": 0, "operator": "-", "start": 0, @@ -15937,11 +17767,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 16939, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16939, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15953,14 +17785,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 17007, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17021, "elements": [ { + "commentStart": 17022, "end": 0, "raw": "4.2", "start": 0, @@ -15973,6 +17808,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 17028, "end": 0, "raw": "5.04", "start": 0, @@ -15983,6 +17819,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 17027, "end": 0, "operator": "-", "start": 0, @@ -15998,11 +17835,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 17002, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17002, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16014,14 +17853,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 17070, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17084, "elements": [ { + "commentStart": 17085, "end": 0, "raw": "8.4", "start": 0, @@ -16034,6 +17876,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 17091, "end": 0, "raw": "4.2", "start": 0, @@ -16044,6 +17887,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 17090, "end": 0, "operator": "-", "start": 0, @@ -16059,11 +17903,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 17065, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17065, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16075,14 +17921,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 17123, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17137, "elements": [ { + "commentStart": 17138, "end": 0, "raw": "9.24", "start": 0, @@ -16095,6 +17944,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 17145, "end": 0, "raw": "4.2", "start": 0, @@ -16105,6 +17955,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 17144, "end": 0, "operator": "-", "start": 0, @@ -16120,11 +17971,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 17118, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17118, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16136,14 +17989,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 17187, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17201, "elements": [ { + "commentStart": 17202, "end": 0, "raw": "9.24", "start": 0, @@ -16156,6 +18012,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 17209, "end": 0, "raw": "5.04", "start": 0, @@ -16166,6 +18023,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 17208, "end": 0, "operator": "-", "start": 0, @@ -16181,11 +18039,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 17182, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17182, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16197,14 +18057,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 17251, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17265, "elements": [ { + "commentStart": 17266, "end": 0, "raw": "10.08", "start": 0, @@ -16217,6 +18080,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 17274, "end": 0, "raw": "5.04", "start": 0, @@ -16227,6 +18091,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 17273, "end": 0, "operator": "-", "start": 0, @@ -16242,11 +18107,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 17246, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17246, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16258,14 +18125,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 17317, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17331, "elements": [ { + "commentStart": 17332, "end": 0, "raw": "10.08", "start": 0, @@ -16278,6 +18148,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 17340, "end": 0, "raw": "5.88", "start": 0, @@ -16288,6 +18159,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 17339, "end": 0, "operator": "-", "start": 0, @@ -16303,11 +18175,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 17312, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17312, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16319,14 +18193,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 17381, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17395, "elements": [ { + "commentStart": 17396, "end": 0, "raw": "9.24", "start": 0, @@ -16339,6 +18216,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 17403, "end": 0, "raw": "5.88", "start": 0, @@ -16349,6 +18227,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 17402, "end": 0, "operator": "-", "start": 0, @@ -16364,11 +18243,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 17376, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17376, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16380,14 +18261,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 17446, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17460, "elements": [ { + "commentStart": 17461, "end": 0, "raw": "9.24", "start": 0, @@ -16400,6 +18284,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 17468, "end": 0, "raw": "5.04", "start": 0, @@ -16410,6 +18295,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 17467, "end": 0, "operator": "-", "start": 0, @@ -16425,11 +18311,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 17441, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17441, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16441,14 +18329,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 17509, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17523, "elements": [ { + "commentStart": 17524, "end": 0, "raw": "8.4", "start": 0, @@ -16461,6 +18352,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 17530, "end": 0, "raw": "5.04", "start": 0, @@ -16471,6 +18363,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 17529, "end": 0, "operator": "-", "start": 0, @@ -16486,11 +18379,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 17504, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17504, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16502,14 +18397,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 17573, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17587, "elements": [ { + "commentStart": 17588, "end": 0, "raw": "11.76", "start": 0, @@ -16522,6 +18420,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 17596, "end": 0, "raw": "4.2", "start": 0, @@ -16532,6 +18431,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 17595, "end": 0, "operator": "-", "start": 0, @@ -16547,11 +18447,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 17568, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17568, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16563,14 +18465,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 17628, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17642, "elements": [ { + "commentStart": 17643, "end": 0, "raw": "12.6", "start": 0, @@ -16583,6 +18488,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 17650, "end": 0, "raw": "4.2", "start": 0, @@ -16593,6 +18499,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 17649, "end": 0, "operator": "-", "start": 0, @@ -16608,11 +18515,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 17623, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17623, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16624,14 +18533,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 17692, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17706, "elements": [ { + "commentStart": 17707, "end": 0, "raw": "12.6", "start": 0, @@ -16644,6 +18556,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 17714, "end": 0, "raw": "5.04", "start": 0, @@ -16654,6 +18567,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 17713, "end": 0, "operator": "-", "start": 0, @@ -16669,11 +18583,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 17687, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17687, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16685,14 +18601,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 17755, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17769, "elements": [ { + "commentStart": 17770, "end": 0, "raw": "11.76", "start": 0, @@ -16705,6 +18624,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 17778, "end": 0, "raw": "5.04", "start": 0, @@ -16715,6 +18635,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 17777, "end": 0, "operator": "-", "start": 0, @@ -16730,11 +18651,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 17750, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17750, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16746,14 +18669,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 17821, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17835, "elements": [ { + "commentStart": 17836, "end": 0, "raw": "11.76", "start": 0, @@ -16766,6 +18692,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 17844, "end": 0, "raw": "5.88", "start": 0, @@ -16776,6 +18703,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 17843, "end": 0, "operator": "-", "start": 0, @@ -16791,11 +18719,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 17816, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17816, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16807,14 +18737,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 17885, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17899, "elements": [ { + "commentStart": 17900, "end": 0, "raw": "10.92", "start": 0, @@ -16827,6 +18760,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 17908, "end": 0, "raw": "5.88", "start": 0, @@ -16837,6 +18771,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 17907, "end": 0, "operator": "-", "start": 0, @@ -16852,11 +18787,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 17880, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17880, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16868,14 +18805,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 17951, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17965, "elements": [ { + "commentStart": 17966, "end": 0, "raw": "10.92", "start": 0, @@ -16888,6 +18828,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 17974, "end": 0, "raw": "5.04", "start": 0, @@ -16898,6 +18839,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 17973, "end": 0, "operator": "-", "start": 0, @@ -16913,11 +18855,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 17946, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17946, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16929,14 +18873,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 18015, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18029, "elements": [ { + "commentStart": 18030, "end": 0, "raw": "11.76", "start": 0, @@ -16949,6 +18896,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 18038, "end": 0, "raw": "5.04", "start": 0, @@ -16959,6 +18907,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 18037, "end": 0, "operator": "-", "start": 0, @@ -16974,11 +18923,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 18010, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18010, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16990,14 +18941,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 18081, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18095, "elements": [ { + "commentStart": 18096, "end": 0, "raw": "14.28", "start": 0, @@ -17010,6 +18964,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 18104, "end": 0, "raw": "10.92", "start": 0, @@ -17020,6 +18975,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 18103, "end": 0, "operator": "-", "start": 0, @@ -17035,11 +18991,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 18076, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18076, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17051,14 +19009,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 18138, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18152, "elements": [ { + "commentStart": 18153, "end": 0, "raw": "13.44", "start": 0, @@ -17071,6 +19032,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 18161, "end": 0, "raw": "10.92", "start": 0, @@ -17081,6 +19043,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 18160, "end": 0, "operator": "-", "start": 0, @@ -17096,11 +19059,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 18133, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18133, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17112,14 +19077,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 18205, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18219, "elements": [ { + "commentStart": 18220, "end": 0, "raw": "13.44", "start": 0, @@ -17132,6 +19100,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 18228, "end": 0, "raw": "13.44", "start": 0, @@ -17142,6 +19111,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 18227, "end": 0, "operator": "-", "start": 0, @@ -17157,11 +19127,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 18200, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18200, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17173,14 +19145,17 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 18271, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18285, "elements": [ { + "commentStart": 18286, "end": 0, "raw": "14.28", "start": 0, @@ -17193,6 +19168,7 @@ description: Result of parsing kittycad_svg.kcl }, { "argument": { + "commentStart": 18294, "end": 0, "raw": "13.44", "start": 0, @@ -17203,6 +19179,7 @@ description: Result of parsing kittycad_svg.kcl "suffix": "None" } }, + "commentStart": 18293, "end": 0, "operator": "-", "start": 0, @@ -17218,11 +19195,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 18266, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18266, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17232,6 +19211,7 @@ description: Result of parsing kittycad_svg.kcl { "arguments": [ { + "commentStart": 18339, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -17239,11 +19219,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 18333, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 18333, "end": 0, "start": 0, "type": "CallExpression", @@ -17254,12 +19236,14 @@ description: Result of parsing kittycad_svg.kcl { "type": "LabeledArg", "label": { + "commentStart": 18355, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18364, "end": 0, "raw": "1", "start": 0, @@ -17273,11 +19257,13 @@ description: Result of parsing kittycad_svg.kcl } ], "callee": { + "commentStart": 18347, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 18347, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17285,11 +19271,13 @@ description: Result of parsing kittycad_svg.kcl "unlabeled": null } ], + "commentStart": 6, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 96, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17302,6 +19290,7 @@ description: Result of parsing kittycad_svg.kcl ], "3": [ { + "commentStart": 151, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17314,6 +19303,7 @@ description: Result of parsing kittycad_svg.kcl ], "4": [ { + "commentStart": 214, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17326,6 +19316,7 @@ description: Result of parsing kittycad_svg.kcl ], "5": [ { + "commentStart": 280, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17338,6 +19329,7 @@ description: Result of parsing kittycad_svg.kcl ], "6": [ { + "commentStart": 341, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17350,6 +19342,7 @@ description: Result of parsing kittycad_svg.kcl ], "7": [ { + "commentStart": 403, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17362,6 +19355,7 @@ description: Result of parsing kittycad_svg.kcl ], "8": [ { + "commentStart": 466, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17374,6 +19368,7 @@ description: Result of parsing kittycad_svg.kcl ], "9": [ { + "commentStart": 531, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17386,6 +19381,7 @@ description: Result of parsing kittycad_svg.kcl ], "10": [ { + "commentStart": 594, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17398,6 +19394,7 @@ description: Result of parsing kittycad_svg.kcl ], "11": [ { + "commentStart": 659, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17410,6 +19407,7 @@ description: Result of parsing kittycad_svg.kcl ], "12": [ { + "commentStart": 722, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17422,6 +19420,7 @@ description: Result of parsing kittycad_svg.kcl ], "13": [ { + "commentStart": 786, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17434,6 +19433,7 @@ description: Result of parsing kittycad_svg.kcl ], "14": [ { + "commentStart": 848, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17446,6 +19446,7 @@ description: Result of parsing kittycad_svg.kcl ], "15": [ { + "commentStart": 913, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17458,6 +19459,7 @@ description: Result of parsing kittycad_svg.kcl ], "16": [ { + "commentStart": 977, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17470,6 +19472,7 @@ description: Result of parsing kittycad_svg.kcl ], "17": [ { + "commentStart": 1042, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17482,6 +19485,7 @@ description: Result of parsing kittycad_svg.kcl ], "18": [ { + "commentStart": 1105, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17494,6 +19498,7 @@ description: Result of parsing kittycad_svg.kcl ], "19": [ { + "commentStart": 1171, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17506,6 +19511,7 @@ description: Result of parsing kittycad_svg.kcl ], "20": [ { + "commentStart": 1236, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17518,6 +19524,7 @@ description: Result of parsing kittycad_svg.kcl ], "21": [ { + "commentStart": 1302, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17530,6 +19537,7 @@ description: Result of parsing kittycad_svg.kcl ], "22": [ { + "commentStart": 1367, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17542,6 +19550,7 @@ description: Result of parsing kittycad_svg.kcl ], "23": [ { + "commentStart": 1433, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17554,6 +19563,7 @@ description: Result of parsing kittycad_svg.kcl ], "24": [ { + "commentStart": 1494, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17566,6 +19576,7 @@ description: Result of parsing kittycad_svg.kcl ], "25": [ { + "commentStart": 1558, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17578,6 +19589,7 @@ description: Result of parsing kittycad_svg.kcl ], "26": [ { + "commentStart": 1624, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17590,6 +19602,7 @@ description: Result of parsing kittycad_svg.kcl ], "27": [ { + "commentStart": 1690, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17602,6 +19615,7 @@ description: Result of parsing kittycad_svg.kcl ], "28": [ { + "commentStart": 1755, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17614,6 +19628,7 @@ description: Result of parsing kittycad_svg.kcl ], "29": [ { + "commentStart": 1822, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17626,6 +19641,7 @@ description: Result of parsing kittycad_svg.kcl ], "30": [ { + "commentStart": 1888, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17638,6 +19654,7 @@ description: Result of parsing kittycad_svg.kcl ], "31": [ { + "commentStart": 1955, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17650,6 +19667,7 @@ description: Result of parsing kittycad_svg.kcl ], "32": [ { + "commentStart": 2020, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17662,6 +19680,7 @@ description: Result of parsing kittycad_svg.kcl ], "33": [ { + "commentStart": 2086, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17674,6 +19693,7 @@ description: Result of parsing kittycad_svg.kcl ], "34": [ { + "commentStart": 2152, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17686,6 +19706,7 @@ description: Result of parsing kittycad_svg.kcl ], "35": [ { + "commentStart": 2219, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17698,6 +19719,7 @@ description: Result of parsing kittycad_svg.kcl ], "36": [ { + "commentStart": 2283, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17710,6 +19732,7 @@ description: Result of parsing kittycad_svg.kcl ], "37": [ { + "commentStart": 2349, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17722,6 +19745,7 @@ description: Result of parsing kittycad_svg.kcl ], "38": [ { + "commentStart": 2412, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17734,6 +19758,7 @@ description: Result of parsing kittycad_svg.kcl ], "39": [ { + "commentStart": 2477, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17746,6 +19771,7 @@ description: Result of parsing kittycad_svg.kcl ], "40": [ { + "commentStart": 2542, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17758,6 +19784,7 @@ description: Result of parsing kittycad_svg.kcl ], "41": [ { + "commentStart": 2608, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17770,6 +19797,7 @@ description: Result of parsing kittycad_svg.kcl ], "42": [ { + "commentStart": 2672, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17782,6 +19810,7 @@ description: Result of parsing kittycad_svg.kcl ], "43": [ { + "commentStart": 2737, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17794,6 +19823,7 @@ description: Result of parsing kittycad_svg.kcl ], "44": [ { + "commentStart": 2802, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17806,6 +19836,7 @@ description: Result of parsing kittycad_svg.kcl ], "45": [ { + "commentStart": 2868, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17818,6 +19849,7 @@ description: Result of parsing kittycad_svg.kcl ], "46": [ { + "commentStart": 2937, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17830,6 +19862,7 @@ description: Result of parsing kittycad_svg.kcl ], "47": [ { + "commentStart": 2997, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17842,6 +19875,7 @@ description: Result of parsing kittycad_svg.kcl ], "48": [ { + "commentStart": 3062, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17854,6 +19888,7 @@ description: Result of parsing kittycad_svg.kcl ], "49": [ { + "commentStart": 3127, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17866,6 +19901,7 @@ description: Result of parsing kittycad_svg.kcl ], "50": [ { + "commentStart": 3192, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17878,6 +19914,7 @@ description: Result of parsing kittycad_svg.kcl ], "51": [ { + "commentStart": 3259, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17890,6 +19927,7 @@ description: Result of parsing kittycad_svg.kcl ], "52": [ { + "commentStart": 3325, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17902,6 +19940,7 @@ description: Result of parsing kittycad_svg.kcl ], "53": [ { + "commentStart": 3392, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17912,6 +19951,7 @@ description: Result of parsing kittycad_svg.kcl } }, { + "commentStart": 3418, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17924,6 +19964,7 @@ description: Result of parsing kittycad_svg.kcl ], "54": [ { + "commentStart": 3474, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17936,6 +19977,7 @@ description: Result of parsing kittycad_svg.kcl ], "55": [ { + "commentStart": 3530, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17948,6 +19990,7 @@ description: Result of parsing kittycad_svg.kcl ], "56": [ { + "commentStart": 3596, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17960,6 +20003,7 @@ description: Result of parsing kittycad_svg.kcl ], "57": [ { + "commentStart": 3663, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17972,6 +20016,7 @@ description: Result of parsing kittycad_svg.kcl ], "58": [ { + "commentStart": 3728, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17984,6 +20029,7 @@ description: Result of parsing kittycad_svg.kcl ], "59": [ { + "commentStart": 3784, "end": 0, "start": 0, "type": "NonCodeNode", @@ -17996,6 +20042,7 @@ description: Result of parsing kittycad_svg.kcl ], "60": [ { + "commentStart": 3849, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18008,6 +20055,7 @@ description: Result of parsing kittycad_svg.kcl ], "61": [ { + "commentStart": 3915, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18020,6 +20068,7 @@ description: Result of parsing kittycad_svg.kcl ], "62": [ { + "commentStart": 3980, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18032,6 +20081,7 @@ description: Result of parsing kittycad_svg.kcl ], "63": [ { + "commentStart": 4036, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18044,6 +20094,7 @@ description: Result of parsing kittycad_svg.kcl ], "64": [ { + "commentStart": 4101, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18056,6 +20107,7 @@ description: Result of parsing kittycad_svg.kcl ], "65": [ { + "commentStart": 4167, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18068,6 +20120,7 @@ description: Result of parsing kittycad_svg.kcl ], "66": [ { + "commentStart": 4233, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18080,6 +20133,7 @@ description: Result of parsing kittycad_svg.kcl ], "67": [ { + "commentStart": 4290, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18092,6 +20146,7 @@ description: Result of parsing kittycad_svg.kcl ], "68": [ { + "commentStart": 4369, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18104,6 +20159,7 @@ description: Result of parsing kittycad_svg.kcl ], "69": [ { + "commentStart": 4449, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18116,6 +20172,7 @@ description: Result of parsing kittycad_svg.kcl ], "70": [ { + "commentStart": 4514, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18128,6 +20185,7 @@ description: Result of parsing kittycad_svg.kcl ], "71": [ { + "commentStart": 4570, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18140,6 +20198,7 @@ description: Result of parsing kittycad_svg.kcl ], "72": [ { + "commentStart": 4636, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18152,6 +20211,7 @@ description: Result of parsing kittycad_svg.kcl ], "73": [ { + "commentStart": 4703, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18164,6 +20224,7 @@ description: Result of parsing kittycad_svg.kcl ], "74": [ { + "commentStart": 4769, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18176,6 +20237,7 @@ description: Result of parsing kittycad_svg.kcl ], "75": [ { + "commentStart": 4826, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18188,6 +20250,7 @@ description: Result of parsing kittycad_svg.kcl ], "76": [ { + "commentStart": 4892, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18200,6 +20263,7 @@ description: Result of parsing kittycad_svg.kcl ], "77": [ { + "commentStart": 4959, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18212,6 +20276,7 @@ description: Result of parsing kittycad_svg.kcl ], "78": [ { + "commentStart": 5025, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18224,6 +20289,7 @@ description: Result of parsing kittycad_svg.kcl ], "79": [ { + "commentStart": 5082, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18236,6 +20302,7 @@ description: Result of parsing kittycad_svg.kcl ], "80": [ { + "commentStart": 5148, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18248,6 +20315,7 @@ description: Result of parsing kittycad_svg.kcl ], "81": [ { + "commentStart": 5215, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18260,6 +20328,7 @@ description: Result of parsing kittycad_svg.kcl ], "82": [ { + "commentStart": 5280, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18272,6 +20341,7 @@ description: Result of parsing kittycad_svg.kcl ], "83": [ { + "commentStart": 5336, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18284,6 +20354,7 @@ description: Result of parsing kittycad_svg.kcl ], "84": [ { + "commentStart": 5400, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18296,6 +20367,7 @@ description: Result of parsing kittycad_svg.kcl ], "85": [ { + "commentStart": 5465, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18308,6 +20380,7 @@ description: Result of parsing kittycad_svg.kcl ], "86": [ { + "commentStart": 5527, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18320,6 +20393,7 @@ description: Result of parsing kittycad_svg.kcl ], "87": [ { + "commentStart": 5592, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18332,6 +20406,7 @@ description: Result of parsing kittycad_svg.kcl ], "88": [ { + "commentStart": 5655, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18344,6 +20419,7 @@ description: Result of parsing kittycad_svg.kcl ], "89": [ { + "commentStart": 5720, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18356,6 +20432,7 @@ description: Result of parsing kittycad_svg.kcl ], "90": [ { + "commentStart": 5783, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18368,6 +20445,7 @@ description: Result of parsing kittycad_svg.kcl ], "91": [ { + "commentStart": 5848, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18380,6 +20458,7 @@ description: Result of parsing kittycad_svg.kcl ], "92": [ { + "commentStart": 5915, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18392,6 +20471,7 @@ description: Result of parsing kittycad_svg.kcl ], "93": [ { + "commentStart": 5983, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18404,6 +20484,7 @@ description: Result of parsing kittycad_svg.kcl ], "94": [ { + "commentStart": 6046, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18416,6 +20497,7 @@ description: Result of parsing kittycad_svg.kcl ], "95": [ { + "commentStart": 6112, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18428,6 +20510,7 @@ description: Result of parsing kittycad_svg.kcl ], "96": [ { + "commentStart": 6176, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18440,6 +20523,7 @@ description: Result of parsing kittycad_svg.kcl ], "97": [ { + "commentStart": 6242, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18452,6 +20536,7 @@ description: Result of parsing kittycad_svg.kcl ], "98": [ { + "commentStart": 6306, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18464,6 +20549,7 @@ description: Result of parsing kittycad_svg.kcl ], "99": [ { + "commentStart": 6365, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18476,6 +20562,7 @@ description: Result of parsing kittycad_svg.kcl ], "100": [ { + "commentStart": 6435, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18488,6 +20575,7 @@ description: Result of parsing kittycad_svg.kcl ], "101": [ { + "commentStart": 6500, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18500,6 +20588,7 @@ description: Result of parsing kittycad_svg.kcl ], "102": [ { + "commentStart": 6566, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18512,6 +20601,7 @@ description: Result of parsing kittycad_svg.kcl ], "103": [ { + "commentStart": 6624, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18524,6 +20614,7 @@ description: Result of parsing kittycad_svg.kcl ], "104": [ { + "commentStart": 6691, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18536,6 +20627,7 @@ description: Result of parsing kittycad_svg.kcl ], "105": [ { + "commentStart": 6758, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18548,6 +20640,7 @@ description: Result of parsing kittycad_svg.kcl ], "106": [ { + "commentStart": 6823, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18560,6 +20653,7 @@ description: Result of parsing kittycad_svg.kcl ], "107": [ { + "commentStart": 6889, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18572,6 +20666,7 @@ description: Result of parsing kittycad_svg.kcl ], "108": [ { + "commentStart": 6954, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18584,6 +20679,7 @@ description: Result of parsing kittycad_svg.kcl ], "109": [ { + "commentStart": 7021, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18596,6 +20692,7 @@ description: Result of parsing kittycad_svg.kcl ], "110": [ { + "commentStart": 7086, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18608,6 +20705,7 @@ description: Result of parsing kittycad_svg.kcl ], "111": [ { + "commentStart": 7151, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18620,6 +20718,7 @@ description: Result of parsing kittycad_svg.kcl ], "112": [ { + "commentStart": 7214, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18632,6 +20731,7 @@ description: Result of parsing kittycad_svg.kcl ], "113": [ { + "commentStart": 7293, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18644,6 +20744,7 @@ description: Result of parsing kittycad_svg.kcl ], "114": [ { + "commentStart": 7359, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18656,6 +20757,7 @@ description: Result of parsing kittycad_svg.kcl ], "115": [ { + "commentStart": 7416, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18668,6 +20770,7 @@ description: Result of parsing kittycad_svg.kcl ], "116": [ { + "commentStart": 7482, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18680,6 +20783,7 @@ description: Result of parsing kittycad_svg.kcl ], "117": [ { + "commentStart": 7549, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18692,6 +20796,7 @@ description: Result of parsing kittycad_svg.kcl ], "118": [ { + "commentStart": 7615, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18704,6 +20809,7 @@ description: Result of parsing kittycad_svg.kcl ], "119": [ { + "commentStart": 7681, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18716,6 +20822,7 @@ description: Result of parsing kittycad_svg.kcl ], "120": [ { + "commentStart": 7738, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18728,6 +20835,7 @@ description: Result of parsing kittycad_svg.kcl ], "121": [ { + "commentStart": 7805, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18740,6 +20848,7 @@ description: Result of parsing kittycad_svg.kcl ], "122": [ { + "commentStart": 7871, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18752,6 +20861,7 @@ description: Result of parsing kittycad_svg.kcl ], "123": [ { + "commentStart": 7956, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18764,6 +20874,7 @@ description: Result of parsing kittycad_svg.kcl ], "124": [ { + "commentStart": 8035, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18776,6 +20887,7 @@ description: Result of parsing kittycad_svg.kcl ], "125": [ { + "commentStart": 8102, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18788,6 +20900,7 @@ description: Result of parsing kittycad_svg.kcl ], "126": [ { + "commentStart": 8168, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18800,6 +20913,7 @@ description: Result of parsing kittycad_svg.kcl ], "127": [ { + "commentStart": 8248, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18812,6 +20926,7 @@ description: Result of parsing kittycad_svg.kcl ], "128": [ { + "commentStart": 8327, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18824,6 +20939,7 @@ description: Result of parsing kittycad_svg.kcl ], "129": [ { + "commentStart": 8393, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18836,6 +20952,7 @@ description: Result of parsing kittycad_svg.kcl ], "130": [ { + "commentStart": 8456, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18848,6 +20965,7 @@ description: Result of parsing kittycad_svg.kcl ], "131": [ { + "commentStart": 8522, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18860,6 +20978,7 @@ description: Result of parsing kittycad_svg.kcl ], "132": [ { + "commentStart": 8586, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18872,6 +20991,7 @@ description: Result of parsing kittycad_svg.kcl ], "133": [ { + "commentStart": 8665, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18884,6 +21004,7 @@ description: Result of parsing kittycad_svg.kcl ], "134": [ { + "commentStart": 8743, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18896,6 +21017,7 @@ description: Result of parsing kittycad_svg.kcl ], "135": [ { + "commentStart": 8809, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18908,6 +21030,7 @@ description: Result of parsing kittycad_svg.kcl ], "136": [ { + "commentStart": 8875, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18920,6 +21043,7 @@ description: Result of parsing kittycad_svg.kcl ], "137": [ { + "commentStart": 8942, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18932,6 +21056,7 @@ description: Result of parsing kittycad_svg.kcl ], "138": [ { + "commentStart": 9006, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18944,6 +21069,7 @@ description: Result of parsing kittycad_svg.kcl ], "139": [ { + "commentStart": 9071, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18956,6 +21082,7 @@ description: Result of parsing kittycad_svg.kcl ], "140": [ { + "commentStart": 9127, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18968,6 +21095,7 @@ description: Result of parsing kittycad_svg.kcl ], "141": [ { + "commentStart": 9191, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18980,6 +21108,7 @@ description: Result of parsing kittycad_svg.kcl ], "142": [ { + "commentStart": 9256, "end": 0, "start": 0, "type": "NonCodeNode", @@ -18992,6 +21121,7 @@ description: Result of parsing kittycad_svg.kcl ], "143": [ { + "commentStart": 9318, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19004,6 +21134,7 @@ description: Result of parsing kittycad_svg.kcl ], "144": [ { + "commentStart": 9383, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19016,6 +21147,7 @@ description: Result of parsing kittycad_svg.kcl ], "145": [ { + "commentStart": 9448, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19028,6 +21160,7 @@ description: Result of parsing kittycad_svg.kcl ], "146": [ { + "commentStart": 9514, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19040,6 +21173,7 @@ description: Result of parsing kittycad_svg.kcl ], "147": [ { + "commentStart": 9593, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19052,6 +21186,7 @@ description: Result of parsing kittycad_svg.kcl ], "148": [ { + "commentStart": 9673, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19064,6 +21199,7 @@ description: Result of parsing kittycad_svg.kcl ], "149": [ { + "commentStart": 9737, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19076,6 +21212,7 @@ description: Result of parsing kittycad_svg.kcl ], "150": [ { + "commentStart": 9801, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19088,6 +21225,7 @@ description: Result of parsing kittycad_svg.kcl ], "151": [ { + "commentStart": 9865, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19100,6 +21238,7 @@ description: Result of parsing kittycad_svg.kcl ], "152": [ { + "commentStart": 9920, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19112,6 +21251,7 @@ description: Result of parsing kittycad_svg.kcl ], "153": [ { + "commentStart": 9982, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19124,6 +21264,7 @@ description: Result of parsing kittycad_svg.kcl ], "154": [ { + "commentStart": 10046, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19136,6 +21277,7 @@ description: Result of parsing kittycad_svg.kcl ], "155": [ { + "commentStart": 10109, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19148,6 +21290,7 @@ description: Result of parsing kittycad_svg.kcl ], "156": [ { + "commentStart": 10174, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19160,6 +21303,7 @@ description: Result of parsing kittycad_svg.kcl ], "157": [ { + "commentStart": 10237, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19172,6 +21316,7 @@ description: Result of parsing kittycad_svg.kcl ], "158": [ { + "commentStart": 10308, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19184,6 +21329,7 @@ description: Result of parsing kittycad_svg.kcl ], "159": [ { + "commentStart": 10377, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19196,6 +21342,7 @@ description: Result of parsing kittycad_svg.kcl ], "160": [ { + "commentStart": 10442, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19208,6 +21355,7 @@ description: Result of parsing kittycad_svg.kcl ], "161": [ { + "commentStart": 10505, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19220,6 +21368,7 @@ description: Result of parsing kittycad_svg.kcl ], "162": [ { + "commentStart": 10570, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19232,6 +21381,7 @@ description: Result of parsing kittycad_svg.kcl ], "163": [ { + "commentStart": 10632, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19244,6 +21394,7 @@ description: Result of parsing kittycad_svg.kcl ], "164": [ { + "commentStart": 10696, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19256,6 +21407,7 @@ description: Result of parsing kittycad_svg.kcl ], "165": [ { + "commentStart": 10760, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19268,6 +21420,7 @@ description: Result of parsing kittycad_svg.kcl ], "166": [ { + "commentStart": 10825, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19280,6 +21433,7 @@ description: Result of parsing kittycad_svg.kcl ], "167": [ { + "commentStart": 10890, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19292,6 +21446,7 @@ description: Result of parsing kittycad_svg.kcl ], "168": [ { + "commentStart": 10946, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19304,6 +21459,7 @@ description: Result of parsing kittycad_svg.kcl ], "169": [ { + "commentStart": 11010, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19316,6 +21472,7 @@ description: Result of parsing kittycad_svg.kcl ], "170": [ { + "commentStart": 11076, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19328,6 +21485,7 @@ description: Result of parsing kittycad_svg.kcl ], "171": [ { + "commentStart": 11139, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19340,6 +21498,7 @@ description: Result of parsing kittycad_svg.kcl ], "172": [ { + "commentStart": 11204, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19352,6 +21511,7 @@ description: Result of parsing kittycad_svg.kcl ], "173": [ { + "commentStart": 11268, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19364,6 +21524,7 @@ description: Result of parsing kittycad_svg.kcl ], "174": [ { + "commentStart": 11334, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19376,6 +21537,7 @@ description: Result of parsing kittycad_svg.kcl ], "175": [ { + "commentStart": 11398, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19388,6 +21550,7 @@ description: Result of parsing kittycad_svg.kcl ], "176": [ { + "commentStart": 11470, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19400,6 +21563,7 @@ description: Result of parsing kittycad_svg.kcl ], "177": [ { + "commentStart": 11540, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19412,6 +21576,7 @@ description: Result of parsing kittycad_svg.kcl ], "178": [ { + "commentStart": 11606, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19424,6 +21589,7 @@ description: Result of parsing kittycad_svg.kcl ], "179": [ { + "commentStart": 11683, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19436,6 +21602,7 @@ description: Result of parsing kittycad_svg.kcl ], "180": [ { + "commentStart": 11762, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19448,6 +21615,7 @@ description: Result of parsing kittycad_svg.kcl ], "181": [ { + "commentStart": 11826, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19460,6 +21628,7 @@ description: Result of parsing kittycad_svg.kcl ], "182": [ { + "commentStart": 11891, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19472,6 +21641,7 @@ description: Result of parsing kittycad_svg.kcl ], "183": [ { + "commentStart": 11956, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19484,6 +21654,7 @@ description: Result of parsing kittycad_svg.kcl ], "184": [ { + "commentStart": 12009, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19496,6 +21667,7 @@ description: Result of parsing kittycad_svg.kcl ], "185": [ { + "commentStart": 12083, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19508,6 +21680,7 @@ description: Result of parsing kittycad_svg.kcl ], "186": [ { + "commentStart": 12162, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19520,6 +21693,7 @@ description: Result of parsing kittycad_svg.kcl ], "187": [ { + "commentStart": 12226, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19532,6 +21706,7 @@ description: Result of parsing kittycad_svg.kcl ], "188": [ { + "commentStart": 12291, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19544,6 +21719,7 @@ description: Result of parsing kittycad_svg.kcl ], "189": [ { + "commentStart": 12356, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19556,6 +21732,7 @@ description: Result of parsing kittycad_svg.kcl ], "190": [ { + "commentStart": 12422, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19568,6 +21745,7 @@ description: Result of parsing kittycad_svg.kcl ], "191": [ { + "commentStart": 12485, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19580,6 +21758,7 @@ description: Result of parsing kittycad_svg.kcl ], "192": [ { + "commentStart": 12550, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19592,6 +21771,7 @@ description: Result of parsing kittycad_svg.kcl ], "193": [ { + "commentStart": 12614, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19604,6 +21784,7 @@ description: Result of parsing kittycad_svg.kcl ], "194": [ { + "commentStart": 12680, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19616,6 +21797,7 @@ description: Result of parsing kittycad_svg.kcl ], "195": [ { + "commentStart": 12744, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19628,6 +21810,7 @@ description: Result of parsing kittycad_svg.kcl ], "196": [ { + "commentStart": 12816, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19640,6 +21823,7 @@ description: Result of parsing kittycad_svg.kcl ], "197": [ { + "commentStart": 12886, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19652,6 +21836,7 @@ description: Result of parsing kittycad_svg.kcl ], "198": [ { + "commentStart": 12952, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19664,6 +21849,7 @@ description: Result of parsing kittycad_svg.kcl ], "199": [ { + "commentStart": 13016, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19676,6 +21862,7 @@ description: Result of parsing kittycad_svg.kcl ], "200": [ { + "commentStart": 13082, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19688,6 +21875,7 @@ description: Result of parsing kittycad_svg.kcl ], "201": [ { + "commentStart": 13145, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19700,6 +21888,7 @@ description: Result of parsing kittycad_svg.kcl ], "202": [ { + "commentStart": 13210, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19712,6 +21901,7 @@ description: Result of parsing kittycad_svg.kcl ], "203": [ { + "commentStart": 13274, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19724,6 +21914,7 @@ description: Result of parsing kittycad_svg.kcl ], "204": [ { + "commentStart": 13340, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19736,6 +21927,7 @@ description: Result of parsing kittycad_svg.kcl ], "205": [ { + "commentStart": 13403, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19748,6 +21940,7 @@ description: Result of parsing kittycad_svg.kcl ], "206": [ { + "commentStart": 13468, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19760,6 +21953,7 @@ description: Result of parsing kittycad_svg.kcl ], "207": [ { + "commentStart": 13531, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19772,6 +21966,7 @@ description: Result of parsing kittycad_svg.kcl ], "208": [ { + "commentStart": 13583, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19784,6 +21979,7 @@ description: Result of parsing kittycad_svg.kcl ], "209": [ { + "commentStart": 13643, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19796,6 +21992,7 @@ description: Result of parsing kittycad_svg.kcl ], "210": [ { + "commentStart": 13708, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19808,6 +22005,7 @@ description: Result of parsing kittycad_svg.kcl ], "211": [ { + "commentStart": 13770, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19820,6 +22018,7 @@ description: Result of parsing kittycad_svg.kcl ], "212": [ { + "commentStart": 13834, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19832,6 +22031,7 @@ description: Result of parsing kittycad_svg.kcl ], "213": [ { + "commentStart": 13897, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19844,6 +22044,7 @@ description: Result of parsing kittycad_svg.kcl ], "214": [ { + "commentStart": 13962, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19856,6 +22057,7 @@ description: Result of parsing kittycad_svg.kcl ], "215": [ { + "commentStart": 14024, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19868,6 +22070,7 @@ description: Result of parsing kittycad_svg.kcl ], "216": [ { + "commentStart": 14088, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19880,6 +22083,7 @@ description: Result of parsing kittycad_svg.kcl ], "217": [ { + "commentStart": 14151, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19892,6 +22096,7 @@ description: Result of parsing kittycad_svg.kcl ], "218": [ { + "commentStart": 14216, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19904,6 +22109,7 @@ description: Result of parsing kittycad_svg.kcl ], "219": [ { + "commentStart": 14279, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19916,6 +22122,7 @@ description: Result of parsing kittycad_svg.kcl ], "220": [ { + "commentStart": 14350, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19928,6 +22135,7 @@ description: Result of parsing kittycad_svg.kcl ], "221": [ { + "commentStart": 14419, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19940,6 +22148,7 @@ description: Result of parsing kittycad_svg.kcl ], "222": [ { + "commentStart": 14484, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19952,6 +22161,7 @@ description: Result of parsing kittycad_svg.kcl ], "223": [ { + "commentStart": 14547, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19964,6 +22174,7 @@ description: Result of parsing kittycad_svg.kcl ], "224": [ { + "commentStart": 14612, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19976,6 +22187,7 @@ description: Result of parsing kittycad_svg.kcl ], "225": [ { + "commentStart": 14674, "end": 0, "start": 0, "type": "NonCodeNode", @@ -19988,6 +22200,7 @@ description: Result of parsing kittycad_svg.kcl ], "226": [ { + "commentStart": 14738, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20000,6 +22213,7 @@ description: Result of parsing kittycad_svg.kcl ], "227": [ { + "commentStart": 14801, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20012,6 +22226,7 @@ description: Result of parsing kittycad_svg.kcl ], "228": [ { + "commentStart": 14866, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20024,6 +22239,7 @@ description: Result of parsing kittycad_svg.kcl ], "229": [ { + "commentStart": 14928, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20036,6 +22252,7 @@ description: Result of parsing kittycad_svg.kcl ], "230": [ { + "commentStart": 14992, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20048,6 +22265,7 @@ description: Result of parsing kittycad_svg.kcl ], "231": [ { + "commentStart": 15056, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20060,6 +22278,7 @@ description: Result of parsing kittycad_svg.kcl ], "232": [ { + "commentStart": 15112, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20072,6 +22291,7 @@ description: Result of parsing kittycad_svg.kcl ], "233": [ { + "commentStart": 15176, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20084,6 +22304,7 @@ description: Result of parsing kittycad_svg.kcl ], "234": [ { + "commentStart": 15241, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20096,6 +22317,7 @@ description: Result of parsing kittycad_svg.kcl ], "235": [ { + "commentStart": 15304, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20108,6 +22330,7 @@ description: Result of parsing kittycad_svg.kcl ], "236": [ { + "commentStart": 15370, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20120,6 +22343,7 @@ description: Result of parsing kittycad_svg.kcl ], "237": [ { + "commentStart": 15448, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20132,6 +22356,7 @@ description: Result of parsing kittycad_svg.kcl ], "238": [ { + "commentStart": 15527, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20144,6 +22369,7 @@ description: Result of parsing kittycad_svg.kcl ], "239": [ { + "commentStart": 15591, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20156,6 +22382,7 @@ description: Result of parsing kittycad_svg.kcl ], "240": [ { + "commentStart": 15645, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20168,6 +22395,7 @@ description: Result of parsing kittycad_svg.kcl ], "241": [ { + "commentStart": 15707, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20180,6 +22408,7 @@ description: Result of parsing kittycad_svg.kcl ], "242": [ { + "commentStart": 15772, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20192,6 +22421,7 @@ description: Result of parsing kittycad_svg.kcl ], "243": [ { + "commentStart": 15835, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20204,6 +22434,7 @@ description: Result of parsing kittycad_svg.kcl ], "244": [ { + "commentStart": 15900, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20216,6 +22447,7 @@ description: Result of parsing kittycad_svg.kcl ], "245": [ { + "commentStart": 15963, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20228,6 +22460,7 @@ description: Result of parsing kittycad_svg.kcl ], "246": [ { + "commentStart": 16028, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20240,6 +22473,7 @@ description: Result of parsing kittycad_svg.kcl ], "247": [ { + "commentStart": 16092, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20252,6 +22486,7 @@ description: Result of parsing kittycad_svg.kcl ], "248": [ { + "commentStart": 16148, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20264,6 +22499,7 @@ description: Result of parsing kittycad_svg.kcl ], "249": [ { + "commentStart": 16211, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20276,6 +22512,7 @@ description: Result of parsing kittycad_svg.kcl ], "250": [ { + "commentStart": 16275, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20288,6 +22525,7 @@ description: Result of parsing kittycad_svg.kcl ], "251": [ { + "commentStart": 16338, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20300,6 +22538,7 @@ description: Result of parsing kittycad_svg.kcl ], "252": [ { + "commentStart": 16404, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20312,6 +22551,7 @@ description: Result of parsing kittycad_svg.kcl ], "253": [ { + "commentStart": 16469, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20324,6 +22564,7 @@ description: Result of parsing kittycad_svg.kcl ], "254": [ { + "commentStart": 16535, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20336,6 +22577,7 @@ description: Result of parsing kittycad_svg.kcl ], "255": [ { + "commentStart": 16599, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20348,6 +22590,7 @@ description: Result of parsing kittycad_svg.kcl ], "256": [ { + "commentStart": 16654, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20360,6 +22603,7 @@ description: Result of parsing kittycad_svg.kcl ], "257": [ { + "commentStart": 16717, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20372,6 +22616,7 @@ description: Result of parsing kittycad_svg.kcl ], "258": [ { + "commentStart": 16782, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20384,6 +22629,7 @@ description: Result of parsing kittycad_svg.kcl ], "259": [ { + "commentStart": 16845, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20396,6 +22642,7 @@ description: Result of parsing kittycad_svg.kcl ], "260": [ { + "commentStart": 16909, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20408,6 +22655,7 @@ description: Result of parsing kittycad_svg.kcl ], "261": [ { + "commentStart": 16970, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20420,6 +22668,7 @@ description: Result of parsing kittycad_svg.kcl ], "262": [ { + "commentStart": 17034, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20432,6 +22681,7 @@ description: Result of parsing kittycad_svg.kcl ], "263": [ { + "commentStart": 17096, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20444,6 +22694,7 @@ description: Result of parsing kittycad_svg.kcl ], "264": [ { + "commentStart": 17150, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20456,6 +22707,7 @@ description: Result of parsing kittycad_svg.kcl ], "265": [ { + "commentStart": 17215, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20468,6 +22720,7 @@ description: Result of parsing kittycad_svg.kcl ], "266": [ { + "commentStart": 17280, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20480,6 +22733,7 @@ description: Result of parsing kittycad_svg.kcl ], "267": [ { + "commentStart": 17346, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20492,6 +22746,7 @@ description: Result of parsing kittycad_svg.kcl ], "268": [ { + "commentStart": 17409, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20504,6 +22759,7 @@ description: Result of parsing kittycad_svg.kcl ], "269": [ { + "commentStart": 17474, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20516,6 +22772,7 @@ description: Result of parsing kittycad_svg.kcl ], "270": [ { + "commentStart": 17536, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20528,6 +22785,7 @@ description: Result of parsing kittycad_svg.kcl ], "271": [ { + "commentStart": 17601, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20540,6 +22798,7 @@ description: Result of parsing kittycad_svg.kcl ], "272": [ { + "commentStart": 17655, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20552,6 +22811,7 @@ description: Result of parsing kittycad_svg.kcl ], "273": [ { + "commentStart": 17720, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20564,6 +22824,7 @@ description: Result of parsing kittycad_svg.kcl ], "274": [ { + "commentStart": 17784, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20576,6 +22837,7 @@ description: Result of parsing kittycad_svg.kcl ], "275": [ { + "commentStart": 17850, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20588,6 +22850,7 @@ description: Result of parsing kittycad_svg.kcl ], "276": [ { + "commentStart": 17914, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20600,6 +22863,7 @@ description: Result of parsing kittycad_svg.kcl ], "277": [ { + "commentStart": 17980, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20612,6 +22876,7 @@ description: Result of parsing kittycad_svg.kcl ], "278": [ { + "commentStart": 18044, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20624,6 +22889,7 @@ description: Result of parsing kittycad_svg.kcl ], "279": [ { + "commentStart": 18111, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20636,6 +22902,7 @@ description: Result of parsing kittycad_svg.kcl ], "280": [ { + "commentStart": 18168, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20648,6 +22915,7 @@ description: Result of parsing kittycad_svg.kcl ], "281": [ { + "commentStart": 18235, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20660,6 +22928,7 @@ description: Result of parsing kittycad_svg.kcl ], "282": [ { + "commentStart": 18301, "end": 0, "start": 0, "type": "NonCodeNode", @@ -20687,6 +22956,7 @@ description: Result of parsing kittycad_svg.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/kw_fn/ast.snap b/rust/kcl-lib/tests/kw_fn/ast.snap index da676b8bd..7f10652b9 100644 --- a/rust/kcl-lib/tests/kw_fn/ast.snap +++ b/rust/kcl-lib/tests/kw_fn/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing kw_fn.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "increment", "start": 0, @@ -19,8 +22,10 @@ description: Result of parsing kw_fn.kcl "body": [ { "argument": { + "commentStart": 28, "end": 0, "left": { + "commentStart": 28, "end": 0, "name": "x", "start": 0, @@ -29,6 +34,7 @@ description: Result of parsing kw_fn.kcl }, "operator": "+", "right": { + "commentStart": 32, "end": 0, "raw": "1", "start": 0, @@ -43,20 +49,24 @@ description: Result of parsing kw_fn.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 21, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 17, "end": 0, "start": 0 }, + "commentStart": 12, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 14, "end": 0, "name": "x", "start": 0, @@ -79,9 +89,12 @@ description: Result of parsing kw_fn.kcl "type": "VariableDeclaration" }, { + "commentStart": 35, "declaration": { + "commentStart": 40, "end": 0, "id": { + "commentStart": 40, "end": 0, "name": "add", "start": 0, @@ -92,8 +105,10 @@ description: Result of parsing kw_fn.kcl "body": [ { "argument": { + "commentStart": 66, "end": 0, "left": { + "commentStart": 66, "end": 0, "name": "x", "start": 0, @@ -102,6 +117,7 @@ description: Result of parsing kw_fn.kcl }, "operator": "+", "right": { + "commentStart": 70, "end": 0, "name": "delta", "start": 0, @@ -112,20 +128,24 @@ description: Result of parsing kw_fn.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 59, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 55, "end": 0, "start": 0 }, + "commentStart": 43, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 45, "end": 0, "name": "x", "start": 0, @@ -136,6 +156,7 @@ description: Result of parsing kw_fn.kcl { "type": "Parameter", "identifier": { + "commentStart": 48, "end": 0, "name": "delta", "start": 0, @@ -157,9 +178,12 @@ description: Result of parsing kw_fn.kcl "type": "VariableDeclaration" }, { + "commentStart": 77, "declaration": { + "commentStart": 79, "end": 0, "id": { + "commentStart": 79, "end": 0, "name": "two", "start": 0, @@ -168,6 +192,7 @@ description: Result of parsing kw_fn.kcl "init": { "arguments": [ { + "commentStart": 95, "end": 0, "raw": "1", "start": 0, @@ -180,11 +205,13 @@ description: Result of parsing kw_fn.kcl } ], "callee": { + "commentStart": 85, "end": 0, "name": "increment", "start": 0, "type": "Identifier" }, + "commentStart": 85, "end": 0, "start": 0, "type": "CallExpression", @@ -200,9 +227,12 @@ description: Result of parsing kw_fn.kcl "type": "VariableDeclaration" }, { + "commentStart": 98, "declaration": { + "commentStart": 98, "end": 0, "id": { + "commentStart": 98, "end": 0, "name": "three", "start": 0, @@ -213,12 +243,14 @@ description: Result of parsing kw_fn.kcl { "type": "LabeledArg", "label": { + "commentStart": 113, "end": 0, "name": "delta", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 121, "end": 0, "raw": "2", "start": 0, @@ -232,16 +264,19 @@ description: Result of parsing kw_fn.kcl } ], "callee": { + "commentStart": 106, "end": 0, "name": "add", "start": 0, "type": "Identifier" }, + "commentStart": 106, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 110, "end": 0, "raw": "1", "start": 0, @@ -263,11 +298,13 @@ description: Result of parsing kw_fn.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 35, "end": 0, "start": 0, "type": "NonCodeNode", @@ -278,6 +315,7 @@ description: Result of parsing kw_fn.kcl ], "1": [ { + "commentStart": 77, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/kw_fn_too_few_args/ast.snap b/rust/kcl-lib/tests/kw_fn_too_few_args/ast.snap index 3d95a3b11..3049a8958 100644 --- a/rust/kcl-lib/tests/kw_fn_too_few_args/ast.snap +++ b/rust/kcl-lib/tests/kw_fn_too_few_args/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing kw_fn_too_few_args.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "add", "start": 0, @@ -19,8 +22,10 @@ description: Result of parsing kw_fn_too_few_args.kcl "body": [ { "argument": { + "commentStart": 24, "end": 0, "left": { + "commentStart": 24, "end": 0, "name": "x", "start": 0, @@ -29,6 +34,7 @@ description: Result of parsing kw_fn_too_few_args.kcl }, "operator": "+", "right": { + "commentStart": 28, "end": 0, "name": "y", "start": 0, @@ -39,20 +45,24 @@ description: Result of parsing kw_fn_too_few_args.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 17, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 13, "end": 0, "start": 0 }, + "commentStart": 6, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 7, "end": 0, "name": "x", "start": 0, @@ -62,6 +72,7 @@ description: Result of parsing kw_fn_too_few_args.kcl { "type": "Parameter", "identifier": { + "commentStart": 10, "end": 0, "name": "y", "start": 0, @@ -83,9 +94,12 @@ description: Result of parsing kw_fn_too_few_args.kcl "type": "VariableDeclaration" }, { + "commentStart": 31, "declaration": { + "commentStart": 33, "end": 0, "id": { + "commentStart": 33, "end": 0, "name": "three", "start": 0, @@ -96,12 +110,14 @@ description: Result of parsing kw_fn_too_few_args.kcl { "type": "LabeledArg", "label": { + "commentStart": 45, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 49, "end": 0, "raw": "1", "start": 0, @@ -115,11 +131,13 @@ description: Result of parsing kw_fn_too_few_args.kcl } ], "callee": { + "commentStart": 41, "end": 0, "name": "add", "start": 0, "type": "Identifier" }, + "commentStart": 41, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -136,11 +154,13 @@ description: Result of parsing kw_fn_too_few_args.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 31, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/kw_fn_unlabeled_but_has_label/ast.snap b/rust/kcl-lib/tests/kw_fn_unlabeled_but_has_label/ast.snap index e016181c0..f3c4a1a75 100644 --- a/rust/kcl-lib/tests/kw_fn_unlabeled_but_has_label/ast.snap +++ b/rust/kcl-lib/tests/kw_fn_unlabeled_but_has_label/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing kw_fn_unlabeled_but_has_label.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "add", "start": 0, @@ -19,8 +22,10 @@ description: Result of parsing kw_fn_unlabeled_but_has_label.kcl "body": [ { "argument": { + "commentStart": 22, "end": 0, "left": { + "commentStart": 22, "end": 0, "name": "x", "start": 0, @@ -29,6 +34,7 @@ description: Result of parsing kw_fn_unlabeled_but_has_label.kcl }, "operator": "+", "right": { + "commentStart": 26, "end": 0, "raw": "1", "start": 0, @@ -43,20 +49,24 @@ description: Result of parsing kw_fn_unlabeled_but_has_label.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 15, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 11, "end": 0, "start": 0 }, + "commentStart": 6, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 8, "end": 0, "name": "x", "start": 0, @@ -79,9 +89,12 @@ description: Result of parsing kw_fn_unlabeled_but_has_label.kcl "type": "VariableDeclaration" }, { + "commentStart": 29, "declaration": { + "commentStart": 31, "end": 0, "id": { + "commentStart": 31, "end": 0, "name": "two", "start": 0, @@ -92,12 +105,14 @@ description: Result of parsing kw_fn_unlabeled_but_has_label.kcl { "type": "LabeledArg", "label": { + "commentStart": 41, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 45, "end": 0, "raw": "1", "start": 0, @@ -111,11 +126,13 @@ description: Result of parsing kw_fn_unlabeled_but_has_label.kcl } ], "callee": { + "commentStart": 37, "end": 0, "name": "add", "start": 0, "type": "Identifier" }, + "commentStart": 37, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -132,11 +149,13 @@ description: Result of parsing kw_fn_unlabeled_but_has_label.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 29, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/kw_fn_with_defaults/ast.snap b/rust/kcl-lib/tests/kw_fn_with_defaults/ast.snap index 5a6acc243..1a7562343 100644 --- a/rust/kcl-lib/tests/kw_fn_with_defaults/ast.snap +++ b/rust/kcl-lib/tests/kw_fn_with_defaults/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing kw_fn_with_defaults.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "increment", "start": 0, @@ -19,8 +22,10 @@ description: Result of parsing kw_fn_with_defaults.kcl "body": [ { "argument": { + "commentStart": 37, "end": 0, "left": { + "commentStart": 37, "end": 0, "name": "x", "start": 0, @@ -29,6 +34,7 @@ description: Result of parsing kw_fn_with_defaults.kcl }, "operator": "+", "right": { + "commentStart": 41, "end": 0, "name": "by", "start": 0, @@ -39,20 +45,24 @@ description: Result of parsing kw_fn_with_defaults.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 30, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 26, "end": 0, "start": 0 }, + "commentStart": 12, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 14, "end": 0, "name": "x", "start": 0, @@ -63,12 +73,14 @@ description: Result of parsing kw_fn_with_defaults.kcl { "type": "Parameter", "identifier": { + "commentStart": 17, "end": 0, "name": "by", "start": 0, "type": "Identifier" }, "default_value": { + "commentStart": 23, "end": 0, "raw": "1", "start": 0, @@ -95,9 +107,12 @@ description: Result of parsing kw_fn_with_defaults.kcl "type": "VariableDeclaration" }, { + "commentStart": 45, "declaration": { + "commentStart": 47, "end": 0, "id": { + "commentStart": 47, "end": 0, "name": "two", "start": 0, @@ -106,6 +121,7 @@ description: Result of parsing kw_fn_with_defaults.kcl "init": { "arguments": [ { + "commentStart": 63, "end": 0, "raw": "1", "start": 0, @@ -118,11 +134,13 @@ description: Result of parsing kw_fn_with_defaults.kcl } ], "callee": { + "commentStart": 53, "end": 0, "name": "increment", "start": 0, "type": "Identifier" }, + "commentStart": 53, "end": 0, "start": 0, "type": "CallExpression", @@ -138,9 +156,12 @@ description: Result of parsing kw_fn_with_defaults.kcl "type": "VariableDeclaration" }, { + "commentStart": 66, "declaration": { + "commentStart": 66, "end": 0, "id": { + "commentStart": 66, "end": 0, "name": "twentyOne", "start": 0, @@ -151,12 +172,14 @@ description: Result of parsing kw_fn_with_defaults.kcl { "type": "LabeledArg", "label": { + "commentStart": 91, "end": 0, "name": "by", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 96, "end": 0, "raw": "20", "start": 0, @@ -170,16 +193,19 @@ description: Result of parsing kw_fn_with_defaults.kcl } ], "callee": { + "commentStart": 78, "end": 0, "name": "increment", "start": 0, "type": "Identifier" }, + "commentStart": 78, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 88, "end": 0, "raw": "1", "start": 0, @@ -201,11 +227,13 @@ description: Result of parsing kw_fn_with_defaults.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 45, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/linear_pattern3d_a_pattern/ast.snap b/rust/kcl-lib/tests/linear_pattern3d_a_pattern/ast.snap index 604f62ecd..1696eeba2 100644 --- a/rust/kcl-lib/tests/linear_pattern3d_a_pattern/ast.snap +++ b/rust/kcl-lib/tests/linear_pattern3d_a_pattern/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "exampleSketch", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl { "arguments": [ { + "commentStart": 30, "end": 0, "raw": "'XZ'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 16, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 16, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl { "arguments": [ { + "commentStart": 56, "elements": [ { + "commentStart": 57, "end": 0, "raw": "0", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl } }, { + "commentStart": 60, "end": 0, "raw": "0", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl "type": "ArrayExpression" }, { + "commentStart": 64, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 41, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 41, "end": 0, "start": 0, "type": "CallExpression", @@ -93,14 +105,17 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 77, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 83, "elements": [ { + "commentStart": 84, "end": 0, "raw": "0", "start": 0, @@ -112,6 +127,7 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl } }, { + "commentStart": 87, "end": 0, "raw": "2", "start": 0, @@ -131,11 +147,13 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 72, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 72, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -147,14 +165,17 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 101, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 107, "elements": [ { + "commentStart": 108, "end": 0, "raw": "3", "start": 0, @@ -166,6 +187,7 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl } }, { + "commentStart": 111, "end": 0, "raw": "1", "start": 0, @@ -185,11 +207,13 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 96, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 96, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -201,14 +225,17 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 125, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 131, "elements": [ { + "commentStart": 132, "end": 0, "raw": "0", "start": 0, @@ -221,6 +248,7 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl }, { "argument": { + "commentStart": 136, "end": 0, "raw": "4", "start": 0, @@ -231,6 +259,7 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl "suffix": "None" } }, + "commentStart": 135, "end": 0, "operator": "-", "start": 0, @@ -246,11 +275,13 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 120, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 120, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -260,6 +291,7 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl { "arguments": [ { + "commentStart": 151, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -267,11 +299,13 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 145, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 145, "end": 0, "start": 0, "type": "CallExpression", @@ -282,12 +316,14 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 167, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 176, "end": 0, "raw": "1", "start": 0, @@ -301,11 +337,13 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 159, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 159, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -313,6 +351,7 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl "unlabeled": null } ], + "commentStart": 16, "end": 0, "start": 0, "type": "PipeExpression", @@ -328,9 +367,12 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl "type": "VariableDeclaration" }, { + "commentStart": 178, "declaration": { + "commentStart": 180, "end": 0, "id": { + "commentStart": 180, "end": 0, "name": "pattn1", "start": 0, @@ -341,14 +383,17 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 225, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 232, "elements": [ { + "commentStart": 233, "end": 0, "raw": "1", "start": 0, @@ -360,6 +405,7 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl } }, { + "commentStart": 236, "end": 0, "raw": "0", "start": 0, @@ -371,6 +417,7 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl } }, { + "commentStart": 239, "end": 0, "raw": "0", "start": 0, @@ -391,12 +438,14 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 245, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 257, "end": 0, "raw": "7", "start": 0, @@ -411,12 +460,14 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 262, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 273, "end": 0, "raw": "6", "start": 0, @@ -430,16 +481,19 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 189, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 189, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 208, "end": 0, "name": "exampleSketch", "start": 0, @@ -457,9 +511,12 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl "type": "VariableDeclaration" }, { + "commentStart": 277, "declaration": { + "commentStart": 279, "end": 0, "id": { + "commentStart": 279, "end": 0, "name": "pattn2", "start": 0, @@ -470,14 +527,17 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 317, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 324, "elements": [ { + "commentStart": 325, "end": 0, "raw": "0", "start": 0, @@ -489,6 +549,7 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl } }, { + "commentStart": 328, "end": 0, "raw": "0", "start": 0, @@ -500,6 +561,7 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl } }, { + "commentStart": 331, "end": 0, "raw": "1", "start": 0, @@ -520,12 +582,14 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 337, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 348, "end": 0, "raw": "1", "start": 0, @@ -540,12 +604,14 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 353, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 365, "end": 0, "raw": "7", "start": 0, @@ -559,16 +625,19 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl } ], "callee": { + "commentStart": 288, "end": 0, "name": "patternLinear3d", "start": 0, "type": "Identifier" }, + "commentStart": 288, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 307, "end": 0, "name": "pattn1", "start": 0, @@ -586,11 +655,13 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 178, "end": 0, "start": 0, "type": "NonCodeNode", @@ -601,6 +672,7 @@ description: Result of parsing linear_pattern3d_a_pattern.kcl ], "1": [ { + "commentStart": 277, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/mike_stress_test/ast.snap b/rust/kcl-lib/tests/mike_stress_test/ast.snap index 96ac8b919..c729dc426 100644 --- a/rust/kcl-lib/tests/mike_stress_test/ast.snap +++ b/rust/kcl-lib/tests/mike_stress_test/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing mike_stress_test.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "part001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing mike_stress_test.kcl { "arguments": [ { + "commentStart": 24, "end": 0, "raw": "'XY'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 10, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 10, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing mike_stress_test.kcl { "arguments": [ { + "commentStart": 50, "elements": [ { + "commentStart": 51, "end": 0, "raw": "0.0", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 56, "end": 0, "raw": "0.0", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing mike_stress_test.kcl "type": "ArrayExpression" }, { + "commentStart": 62, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 35, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 35, "end": 0, "start": 0, "type": "CallExpression", @@ -93,15 +105,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 75, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 81, "elements": [ { "argument": { + "commentStart": 91, "end": 0, "raw": "0.3670208139314082", "start": 0, @@ -112,6 +127,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 90, "end": 0, "operator": "-", "start": 0, @@ -119,6 +135,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 118, "end": 0, "raw": "0.21201331909674526", "start": 0, @@ -138,11 +155,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 70, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 70, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -154,15 +173,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 156, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 162, "elements": [ { "argument": { + "commentStart": 172, "end": 0, "raw": "0.4707511307971115", "start": 0, @@ -173,6 +195,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 171, "end": 0, "operator": "-", "start": 0, @@ -180,6 +203,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 199, "end": 0, "raw": "0.4905279615419764", "start": 0, @@ -199,11 +223,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 151, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 151, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -215,15 +241,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 236, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 242, "elements": [ { "argument": { + "commentStart": 252, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -234,6 +263,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 251, "end": 0, "operator": "-", "start": 0, @@ -241,6 +271,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 279, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -260,11 +291,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 231, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 231, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -276,15 +309,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 316, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 322, "elements": [ { "argument": { + "commentStart": 332, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -295,6 +331,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 331, "end": 0, "operator": "-", "start": 0, @@ -303,6 +340,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 360, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -313,6 +351,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 359, "end": 0, "operator": "-", "start": 0, @@ -328,11 +367,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 311, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 311, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -344,14 +385,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 398, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 404, "elements": [ { + "commentStart": 413, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -363,6 +407,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 441, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -382,11 +427,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 393, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 393, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -398,14 +445,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 479, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 485, "elements": [ { + "commentStart": 494, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -417,6 +467,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 522, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -436,11 +487,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 474, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 474, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -452,15 +505,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 560, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 566, "elements": [ { "argument": { + "commentStart": 576, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -471,6 +527,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 575, "end": 0, "operator": "-", "start": 0, @@ -478,6 +535,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 604, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -497,11 +555,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 555, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 555, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -513,15 +573,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 641, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 647, "elements": [ { "argument": { + "commentStart": 657, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -532,6 +595,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 656, "end": 0, "operator": "-", "start": 0, @@ -540,6 +604,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 686, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -550,6 +615,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 685, "end": 0, "operator": "-", "start": 0, @@ -565,11 +631,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 636, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 636, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -581,14 +649,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 724, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 730, "elements": [ { + "commentStart": 739, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -601,6 +672,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 767, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -611,6 +683,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 766, "end": 0, "operator": "-", "start": 0, @@ -626,11 +699,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 719, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 719, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -642,14 +717,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 805, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 811, "elements": [ { + "commentStart": 820, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -662,6 +740,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 851, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -672,6 +751,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 850, "end": 0, "operator": "-", "start": 0, @@ -687,11 +767,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 800, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 800, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -703,14 +785,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 888, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 894, "elements": [ { + "commentStart": 903, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -723,6 +808,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 931, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -733,6 +819,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 930, "end": 0, "operator": "-", "start": 0, @@ -748,11 +835,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 883, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 883, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -764,15 +853,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 968, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 974, "elements": [ { "argument": { + "commentStart": 984, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -783,6 +875,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 983, "end": 0, "operator": "-", "start": 0, @@ -790,6 +883,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 1011, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -809,11 +903,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 963, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 963, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -825,14 +921,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 1048, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1054, "elements": [ { + "commentStart": 1055, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -844,6 +943,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 1075, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -863,11 +963,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 1043, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1043, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -879,15 +981,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 1106, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1112, "elements": [ { "argument": { + "commentStart": 1122, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -898,6 +1003,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 1121, "end": 0, "operator": "-", "start": 0, @@ -905,6 +1011,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 1150, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -924,11 +1031,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 1101, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1101, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -940,15 +1049,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 1189, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1195, "elements": [ { "argument": { + "commentStart": 1205, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -959,6 +1071,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 1204, "end": 0, "operator": "-", "start": 0, @@ -967,6 +1080,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 1233, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -977,6 +1091,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 1232, "end": 0, "operator": "-", "start": 0, @@ -992,11 +1107,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 1184, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1184, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1008,15 +1125,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 1271, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1277, "elements": [ { "argument": { + "commentStart": 1287, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -1027,6 +1147,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 1286, "end": 0, "operator": "-", "start": 0, @@ -1035,6 +1156,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 1315, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -1045,6 +1167,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 1314, "end": 0, "operator": "-", "start": 0, @@ -1060,11 +1183,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 1266, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1266, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1076,14 +1201,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 1353, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1359, "elements": [ { + "commentStart": 1360, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -1095,6 +1223,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 1379, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -1114,11 +1243,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 1348, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1348, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1130,14 +1261,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 1410, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1416, "elements": [ { + "commentStart": 1425, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -1150,6 +1284,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 1454, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -1160,6 +1295,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 1453, "end": 0, "operator": "-", "start": 0, @@ -1175,11 +1311,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 1405, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1405, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1191,14 +1329,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 1492, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1498, "elements": [ { + "commentStart": 1499, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -1210,6 +1351,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 1519, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -1229,11 +1371,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 1487, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1487, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1245,14 +1389,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 1549, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1555, "elements": [ { + "commentStart": 1564, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -1265,6 +1412,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 1593, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -1275,6 +1423,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 1592, "end": 0, "operator": "-", "start": 0, @@ -1290,11 +1439,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 1544, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1544, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1306,14 +1457,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 1630, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1636, "elements": [ { + "commentStart": 1637, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -1325,6 +1479,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 1657, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -1344,11 +1499,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 1625, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1625, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1360,14 +1517,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 1688, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1694, "elements": [ { + "commentStart": 1703, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -1379,6 +1539,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 1730, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -1398,11 +1559,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 1683, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1683, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1414,14 +1577,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 1768, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1774, "elements": [ { + "commentStart": 1775, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -1433,6 +1599,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 1795, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -1452,11 +1619,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 1763, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1763, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1468,15 +1637,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 1826, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1832, "elements": [ { "argument": { + "commentStart": 1842, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -1487,6 +1659,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 1841, "end": 0, "operator": "-", "start": 0, @@ -1495,6 +1668,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 1871, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -1505,6 +1679,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 1870, "end": 0, "operator": "-", "start": 0, @@ -1520,11 +1695,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 1821, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1821, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1536,14 +1713,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 1908, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1914, "elements": [ { + "commentStart": 1923, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -1556,6 +1736,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 1951, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -1566,6 +1747,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 1950, "end": 0, "operator": "-", "start": 0, @@ -1581,11 +1763,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 1903, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1903, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1597,15 +1781,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 1988, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1994, "elements": [ { "argument": { + "commentStart": 2004, "end": 0, "raw": "0.6716353749059765", "start": 0, @@ -1616,6 +1803,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 2003, "end": 0, "operator": "-", "start": 0, @@ -1624,6 +1812,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 2032, "end": 0, "raw": "0.9605576808879026", "start": 0, @@ -1634,6 +1823,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 2031, "end": 0, "operator": "-", "start": 0, @@ -1649,11 +1839,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 1983, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1983, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1665,14 +1857,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 2069, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2075, "elements": [ { + "commentStart": 2084, "end": 0, "raw": "0.010280170930300203", "start": 0, @@ -1685,6 +1880,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 2114, "end": 0, "raw": "0.37344123662342166", "start": 0, @@ -1695,6 +1891,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 2113, "end": 0, "operator": "-", "start": 0, @@ -1710,11 +1907,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 2064, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2064, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1726,14 +1925,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 2152, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2158, "elements": [ { + "commentStart": 2167, "end": 0, "raw": "0.10357375682791004", "start": 0, @@ -1746,6 +1948,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 2196, "end": 0, "raw": "0.42294321030821425", "start": 0, @@ -1756,6 +1959,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 2195, "end": 0, "operator": "-", "start": 0, @@ -1771,11 +1975,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 2147, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2147, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1787,14 +1993,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 2234, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2240, "elements": [ { + "commentStart": 2249, "end": 0, "raw": "0.4520311575096987", "start": 0, @@ -1807,6 +2016,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 2277, "end": 0, "raw": "0.11232675307600548", "start": 0, @@ -1817,6 +2027,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 2276, "end": 0, "operator": "-", "start": 0, @@ -1832,11 +2043,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 2229, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2229, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1848,15 +2061,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 2315, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2321, "elements": [ { "argument": { + "commentStart": 2331, "end": 0, "raw": "0.8821185914380845", "start": 0, @@ -1867,6 +2083,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 2330, "end": 0, "operator": "-", "start": 0, @@ -1875,6 +2092,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 2359, "end": 0, "raw": "0.7155147434939819", "start": 0, @@ -1885,6 +2103,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 2358, "end": 0, "operator": "-", "start": 0, @@ -1900,11 +2119,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 2310, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2310, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1916,14 +2137,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 2396, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2402, "elements": [ { + "commentStart": 2403, "end": 0, "raw": "0.9195487101690416", "start": 0, @@ -1935,6 +2159,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 2423, "end": 0, "raw": "0.2691627465297364", "start": 0, @@ -1954,11 +2179,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 2391, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2391, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1970,14 +2197,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 2454, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2460, "elements": [ { + "commentStart": 2469, "end": 0, "raw": "0.7098978191546745", "start": 0, @@ -1989,6 +2219,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 2496, "end": 0, "raw": "0.11710004169385968", "start": 0, @@ -2008,11 +2239,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 2449, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2449, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2024,15 +2257,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 2534, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2540, "elements": [ { "argument": { + "commentStart": 2550, "end": 0, "raw": "0.37876368560819995", "start": 0, @@ -2043,6 +2279,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 2549, "end": 0, "operator": "-", "start": 0, @@ -2050,6 +2287,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 2578, "end": 0, "raw": "0.7106729314759084", "start": 0, @@ -2069,11 +2307,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 2529, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2529, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2085,15 +2325,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 2615, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2621, "elements": [ { "argument": { + "commentStart": 2631, "end": 0, "raw": "0.29728126898353335", "start": 0, @@ -2104,6 +2347,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 2630, "end": 0, "operator": "-", "start": 0, @@ -2112,6 +2356,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 2660, "end": 0, "raw": "0.06649734568328003", "start": 0, @@ -2122,6 +2367,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 2659, "end": 0, "operator": "-", "start": 0, @@ -2137,11 +2383,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 2610, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2610, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2153,14 +2401,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 2698, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2704, "elements": [ { + "commentStart": 2713, "end": 0, "raw": "0.22965781558352072", "start": 0, @@ -2173,6 +2424,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 2742, "end": 0, "raw": "0.7601866432836641", "start": 0, @@ -2183,6 +2435,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 2741, "end": 0, "operator": "-", "start": 0, @@ -2198,11 +2451,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 2693, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2693, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2214,15 +2469,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 2779, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2785, "elements": [ { "argument": { + "commentStart": 2795, "end": 0, "raw": "0.6356501074317229", "start": 0, @@ -2233,6 +2491,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 2794, "end": 0, "operator": "-", "start": 0, @@ -2240,6 +2499,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 2822, "end": 0, "raw": "0.19458425399338064", "start": 0, @@ -2259,11 +2519,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 2774, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2774, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2275,14 +2537,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 2860, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2866, "elements": [ { + "commentStart": 2867, "end": 0, "raw": "0.5721251777404546", "start": 0, @@ -2294,6 +2559,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 2887, "end": 0, "raw": "0.2888584097921527", "start": 0, @@ -2313,11 +2579,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 2855, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2855, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2329,15 +2597,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 2918, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 2924, "elements": [ { "argument": { + "commentStart": 2934, "end": 0, "raw": "0.9580409549552311", "start": 0, @@ -2348,6 +2619,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 2933, "end": 0, "operator": "-", "start": 0, @@ -2356,6 +2628,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 2962, "end": 0, "raw": "0.02243818192078395", "start": 0, @@ -2366,6 +2639,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 2961, "end": 0, "operator": "-", "start": 0, @@ -2381,11 +2655,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 2913, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2913, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2397,14 +2673,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 3000, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3006, "elements": [ { + "commentStart": 3015, "end": 0, "raw": "0.3299184618602866", "start": 0, @@ -2417,6 +2696,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 3043, "end": 0, "raw": "0.8353726942369875", "start": 0, @@ -2427,6 +2707,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 3042, "end": 0, "operator": "-", "start": 0, @@ -2442,11 +2723,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 2995, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 2995, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2458,14 +2741,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 3080, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3086, "elements": [ { + "commentStart": 3095, "end": 0, "raw": "0.7434639386755209", "start": 0, @@ -2478,6 +2764,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 3123, "end": 0, "raw": "0.7919648864138378", "start": 0, @@ -2488,6 +2775,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 3122, "end": 0, "operator": "-", "start": 0, @@ -2503,11 +2791,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 3075, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3075, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2519,14 +2809,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 3160, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3166, "elements": [ { + "commentStart": 3167, "end": 0, "raw": "0.9935751011164615", "start": 0, @@ -2538,6 +2831,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 3187, "end": 0, "raw": "0.9042566468497608", "start": 0, @@ -2557,11 +2851,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 3155, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3155, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2573,15 +2869,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 3218, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3224, "elements": [ { "argument": { + "commentStart": 3234, "end": 0, "raw": "0.5035812884687294", "start": 0, @@ -2592,6 +2891,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 3233, "end": 0, "operator": "-", "start": 0, @@ -2599,6 +2899,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 3261, "end": 0, "raw": "0.5150967434989442", "start": 0, @@ -2618,11 +2919,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 3213, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3213, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2634,14 +2937,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 3298, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3304, "elements": [ { + "commentStart": 3305, "end": 0, "raw": "0.5526227215900215", "start": 0, @@ -2653,6 +2959,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 3325, "end": 0, "raw": "0.7612604137272441", "start": 0, @@ -2672,11 +2979,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 3293, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3293, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2688,14 +2997,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 3356, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3362, "elements": [ { + "commentStart": 3371, "end": 0, "raw": "0.8593271349126876", "start": 0, @@ -2707,6 +3019,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 3398, "end": 0, "raw": "0.08414894953725849", "start": 0, @@ -2726,11 +3039,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 3351, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3351, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2742,15 +3057,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 3436, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3442, "elements": [ { "argument": { + "commentStart": 3452, "end": 0, "raw": "0.8181049219192864", "start": 0, @@ -2761,6 +3079,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 3451, "end": 0, "operator": "-", "start": 0, @@ -2769,6 +3088,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 3480, "end": 0, "raw": "0.903548131323352", "start": 0, @@ -2779,6 +3099,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 3479, "end": 0, "operator": "-", "start": 0, @@ -2794,11 +3115,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 3431, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3431, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2810,14 +3133,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 3516, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3522, "elements": [ { + "commentStart": 3531, "end": 0, "raw": "0.3165782044458305", "start": 0, @@ -2830,6 +3156,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 3559, "end": 0, "raw": "0.24189274252014914", "start": 0, @@ -2840,6 +3167,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 3558, "end": 0, "operator": "-", "start": 0, @@ -2855,11 +3183,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 3511, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3511, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2871,15 +3201,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 3597, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3603, "elements": [ { "argument": { + "commentStart": 3613, "end": 0, "raw": "0.44390956414045135", "start": 0, @@ -2890,6 +3223,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 3612, "end": 0, "operator": "-", "start": 0, @@ -2898,6 +3232,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 3642, "end": 0, "raw": "0.25912591535126905", "start": 0, @@ -2908,6 +3243,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 3641, "end": 0, "operator": "-", "start": 0, @@ -2923,11 +3259,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 3592, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3592, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2939,15 +3277,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 3680, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3686, "elements": [ { "argument": { + "commentStart": 3696, "end": 0, "raw": "0.6605165911891009", "start": 0, @@ -2958,6 +3299,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 3695, "end": 0, "operator": "-", "start": 0, @@ -2966,6 +3308,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 3724, "end": 0, "raw": "0.40355115288839194", "start": 0, @@ -2976,6 +3319,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 3723, "end": 0, "operator": "-", "start": 0, @@ -2991,11 +3335,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 3675, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3675, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3007,15 +3353,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 3762, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3768, "elements": [ { "argument": { + "commentStart": 3778, "end": 0, "raw": "0.7170489950180006", "start": 0, @@ -3026,6 +3375,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 3777, "end": 0, "operator": "-", "start": 0, @@ -3033,6 +3383,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 3805, "end": 0, "raw": "0.23454356079651384", "start": 0, @@ -3052,11 +3403,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 3757, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3757, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3068,15 +3421,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 3843, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3849, "elements": [ { "argument": { + "commentStart": 3859, "end": 0, "raw": "0.2568187045379722", "start": 0, @@ -3087,6 +3443,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 3858, "end": 0, "operator": "-", "start": 0, @@ -3095,6 +3452,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 3887, "end": 0, "raw": "0.45031188717601367", "start": 0, @@ -3105,6 +3463,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 3886, "end": 0, "operator": "-", "start": 0, @@ -3120,11 +3479,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 3838, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3838, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3136,14 +3497,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 3925, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 3931, "elements": [ { + "commentStart": 3940, "end": 0, "raw": "0.6751951211858687", "start": 0, @@ -3156,6 +3520,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 3968, "end": 0, "raw": "0.9709424233465593", "start": 0, @@ -3166,6 +3531,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 3967, "end": 0, "operator": "-", "start": 0, @@ -3181,11 +3547,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 3920, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 3920, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3197,15 +3565,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 4005, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4011, "elements": [ { "argument": { + "commentStart": 4021, "end": 0, "raw": "0.5689619842972184", "start": 0, @@ -3216,6 +3587,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 4020, "end": 0, "operator": "-", "start": 0, @@ -3223,6 +3595,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 4048, "end": 0, "raw": "0.5918969913790362", "start": 0, @@ -3242,11 +3615,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 4000, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4000, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3258,15 +3633,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 4085, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4091, "elements": [ { "argument": { + "commentStart": 4101, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -3277,6 +3655,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 4100, "end": 0, "operator": "-", "start": 0, @@ -3284,6 +3663,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 4128, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -3303,11 +3683,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 4080, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4080, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3319,15 +3701,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 4165, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4171, "elements": [ { "argument": { + "commentStart": 4181, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -3338,6 +3723,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 4180, "end": 0, "operator": "-", "start": 0, @@ -3346,6 +3732,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 4209, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -3356,6 +3743,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 4208, "end": 0, "operator": "-", "start": 0, @@ -3371,11 +3759,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 4160, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4160, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3387,14 +3777,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 4247, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4253, "elements": [ { + "commentStart": 4262, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -3406,6 +3799,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 4290, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -3425,11 +3819,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 4242, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4242, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3441,14 +3837,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 4328, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4334, "elements": [ { + "commentStart": 4343, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -3460,6 +3859,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 4371, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -3479,11 +3879,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 4323, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4323, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3495,15 +3897,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 4409, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4415, "elements": [ { "argument": { + "commentStart": 4425, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -3514,6 +3919,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 4424, "end": 0, "operator": "-", "start": 0, @@ -3521,6 +3927,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 4453, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -3540,11 +3947,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 4404, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4404, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3556,15 +3965,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 4490, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4496, "elements": [ { "argument": { + "commentStart": 4506, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -3575,6 +3987,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 4505, "end": 0, "operator": "-", "start": 0, @@ -3583,6 +3996,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 4535, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -3593,6 +4007,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 4534, "end": 0, "operator": "-", "start": 0, @@ -3608,11 +4023,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 4485, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4485, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3624,14 +4041,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 4573, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4579, "elements": [ { + "commentStart": 4588, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -3644,6 +4064,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 4616, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -3654,6 +4075,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 4615, "end": 0, "operator": "-", "start": 0, @@ -3669,11 +4091,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 4568, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4568, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3685,14 +4109,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 4654, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4660, "elements": [ { + "commentStart": 4669, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -3705,6 +4132,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 4700, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -3715,6 +4143,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 4699, "end": 0, "operator": "-", "start": 0, @@ -3730,11 +4159,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 4649, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4649, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3746,14 +4177,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 4737, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4743, "elements": [ { + "commentStart": 4752, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -3766,6 +4200,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 4780, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -3776,6 +4211,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 4779, "end": 0, "operator": "-", "start": 0, @@ -3791,11 +4227,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 4732, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4732, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3807,15 +4245,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 4817, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4823, "elements": [ { "argument": { + "commentStart": 4833, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -3826,6 +4267,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 4832, "end": 0, "operator": "-", "start": 0, @@ -3833,6 +4275,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 4860, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -3852,11 +4295,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 4812, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4812, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3868,14 +4313,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 4897, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4903, "elements": [ { + "commentStart": 4904, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -3887,6 +4335,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 4924, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -3906,11 +4355,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 4892, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4892, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3922,15 +4373,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 4955, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 4961, "elements": [ { "argument": { + "commentStart": 4971, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -3941,6 +4395,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 4970, "end": 0, "operator": "-", "start": 0, @@ -3948,6 +4403,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 4999, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -3967,11 +4423,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 4950, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 4950, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -3983,15 +4441,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 5038, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5044, "elements": [ { "argument": { + "commentStart": 5054, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -4002,6 +4463,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 5053, "end": 0, "operator": "-", "start": 0, @@ -4010,6 +4472,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 5082, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -4020,6 +4483,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 5081, "end": 0, "operator": "-", "start": 0, @@ -4035,11 +4499,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 5033, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5033, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4051,15 +4517,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 5120, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5126, "elements": [ { "argument": { + "commentStart": 5136, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -4070,6 +4539,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 5135, "end": 0, "operator": "-", "start": 0, @@ -4078,6 +4548,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 5164, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -4088,6 +4559,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 5163, "end": 0, "operator": "-", "start": 0, @@ -4103,11 +4575,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 5115, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5115, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4119,14 +4593,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 5202, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5208, "elements": [ { + "commentStart": 5209, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -4138,6 +4615,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 5228, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -4157,11 +4635,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 5197, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5197, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4173,14 +4653,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 5259, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5265, "elements": [ { + "commentStart": 5274, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -4193,6 +4676,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 5303, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -4203,6 +4687,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 5302, "end": 0, "operator": "-", "start": 0, @@ -4218,11 +4703,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 5254, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5254, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4234,14 +4721,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 5341, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5347, "elements": [ { + "commentStart": 5348, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -4253,6 +4743,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 5368, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -4272,11 +4763,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 5336, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5336, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4288,14 +4781,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 5398, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5404, "elements": [ { + "commentStart": 5413, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -4308,6 +4804,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 5442, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -4318,6 +4815,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 5441, "end": 0, "operator": "-", "start": 0, @@ -4333,11 +4831,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 5393, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5393, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4349,14 +4849,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 5479, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5485, "elements": [ { + "commentStart": 5486, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -4368,6 +4871,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 5506, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -4387,11 +4891,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 5474, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5474, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4403,14 +4909,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 5537, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5543, "elements": [ { + "commentStart": 5552, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -4422,6 +4931,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 5579, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -4441,11 +4951,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 5532, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5532, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4457,14 +4969,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 5617, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5623, "elements": [ { + "commentStart": 5624, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -4476,6 +4991,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 5644, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -4495,11 +5011,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 5612, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5612, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4511,15 +5029,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 5675, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5681, "elements": [ { "argument": { + "commentStart": 5691, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -4530,6 +5051,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 5690, "end": 0, "operator": "-", "start": 0, @@ -4538,6 +5060,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 5720, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -4548,6 +5071,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 5719, "end": 0, "operator": "-", "start": 0, @@ -4563,11 +5087,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 5670, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5670, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4579,14 +5105,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 5757, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5763, "elements": [ { + "commentStart": 5772, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -4599,6 +5128,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 5800, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -4609,6 +5139,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 5799, "end": 0, "operator": "-", "start": 0, @@ -4624,11 +5155,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 5752, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5752, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4640,14 +5173,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 5837, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5843, "elements": [ { + "commentStart": 5852, "end": 0, "raw": "0.6751951211858687", "start": 0, @@ -4660,6 +5196,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 5880, "end": 0, "raw": "0.9709424233465593", "start": 0, @@ -4670,6 +5207,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 5879, "end": 0, "operator": "-", "start": 0, @@ -4685,11 +5223,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 5832, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5832, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4701,15 +5241,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 5917, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 5923, "elements": [ { "argument": { + "commentStart": 5933, "end": 0, "raw": "0.5689619842972184", "start": 0, @@ -4720,6 +5263,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 5932, "end": 0, "operator": "-", "start": 0, @@ -4727,6 +5271,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 5960, "end": 0, "raw": "0.5918969913790362", "start": 0, @@ -4746,11 +5291,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 5912, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5912, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4762,14 +5309,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 5997, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6003, "elements": [ { + "commentStart": 6012, "end": 0, "raw": "0.9464450621708211", "start": 0, @@ -4782,6 +5332,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 6040, "end": 0, "raw": "0.2684908127803667", "start": 0, @@ -4792,6 +5343,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 6039, "end": 0, "operator": "-", "start": 0, @@ -4807,11 +5359,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 5992, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 5992, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4823,14 +5377,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 6077, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6083, "elements": [ { + "commentStart": 6084, "end": 0, "raw": "0.5241732366617591", "start": 0, @@ -4842,6 +5399,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 6104, "end": 0, "raw": "0.9011437416408563", "start": 0, @@ -4861,11 +5419,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 6072, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6072, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4877,15 +5437,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 6135, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6141, "elements": [ { "argument": { + "commentStart": 6151, "end": 0, "raw": "0.14255393713960607", "start": 0, @@ -4896,6 +5459,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 6150, "end": 0, "operator": "-", "start": 0, @@ -4904,6 +5468,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 6180, "end": 0, "raw": "0.5194262624564814", "start": 0, @@ -4914,6 +5479,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 6179, "end": 0, "operator": "-", "start": 0, @@ -4929,11 +5495,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 6130, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6130, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -4945,15 +5513,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 6217, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6223, "elements": [ { "argument": { + "commentStart": 6233, "end": 0, "raw": "0.4287123231350338", "start": 0, @@ -4964,6 +5535,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 6232, "end": 0, "operator": "-", "start": 0, @@ -4972,6 +5544,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 6261, "end": 0, "raw": "0.4223564528725028", "start": 0, @@ -4982,6 +5555,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 6260, "end": 0, "operator": "-", "start": 0, @@ -4997,11 +5571,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 6212, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6212, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5013,15 +5589,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 6298, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6304, "elements": [ { "argument": { + "commentStart": 6314, "end": 0, "raw": "0.09316367294024519", "start": 0, @@ -5032,6 +5611,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 6313, "end": 0, "operator": "-", "start": 0, @@ -5040,6 +5620,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 6343, "end": 0, "raw": "0.9063127021008246", "start": 0, @@ -5050,6 +5631,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 6342, "end": 0, "operator": "-", "start": 0, @@ -5065,11 +5647,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 6293, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6293, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5081,15 +5665,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 6380, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6386, "elements": [ { "argument": { + "commentStart": 6396, "end": 0, "raw": "0.2767766535558669", "start": 0, @@ -5100,6 +5687,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 6395, "end": 0, "operator": "-", "start": 0, @@ -5107,6 +5695,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 6423, "end": 0, "raw": "0.6816248114129131", "start": 0, @@ -5126,11 +5715,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 6375, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6375, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5142,14 +5733,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 6460, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6466, "elements": [ { + "commentStart": 6475, "end": 0, "raw": "0.9796762495562534", "start": 0, @@ -5162,6 +5756,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 6503, "end": 0, "raw": "0.0822145668330625", "start": 0, @@ -5172,6 +5767,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 6502, "end": 0, "operator": "-", "start": 0, @@ -5187,11 +5783,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 6455, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6455, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5203,15 +5801,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 6540, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6546, "elements": [ { "argument": { + "commentStart": 6556, "end": 0, "raw": "0.8666513070867441", "start": 0, @@ -5222,6 +5823,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 6555, "end": 0, "operator": "-", "start": 0, @@ -5230,6 +5832,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 6584, "end": 0, "raw": "0.301053160242023", "start": 0, @@ -5240,6 +5843,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 6583, "end": 0, "operator": "-", "start": 0, @@ -5255,11 +5859,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 6535, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6535, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5271,14 +5877,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 6620, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6626, "elements": [ { + "commentStart": 6635, "end": 0, "raw": "0.537415656028112", "start": 0, @@ -5290,6 +5899,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 6661, "end": 0, "raw": "0.020272692875002774", "start": 0, @@ -5309,11 +5919,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 6615, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6615, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5325,14 +5937,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 6700, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6706, "elements": [ { + "commentStart": 6715, "end": 0, "raw": "0.9332396256457531", "start": 0, @@ -5345,6 +5960,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 6743, "end": 0, "raw": "0.6228175690649898", "start": 0, @@ -5355,6 +5971,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 6742, "end": 0, "operator": "-", "start": 0, @@ -5370,11 +5987,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 6695, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6695, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5386,14 +6005,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 6780, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6786, "elements": [ { + "commentStart": 6795, "end": 0, "raw": "0.18052415837320734", "start": 0, @@ -5406,6 +6028,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 6824, "end": 0, "raw": "0.36894384647296197", "start": 0, @@ -5416,6 +6039,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 6823, "end": 0, "operator": "-", "start": 0, @@ -5431,11 +6055,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 6775, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6775, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5447,14 +6073,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 6862, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6868, "elements": [ { + "commentStart": 6869, "end": 0, "raw": "0.5384372634075449", "start": 0, @@ -5466,6 +6095,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 6889, "end": 0, "raw": "0.2377565050887107", "start": 0, @@ -5485,11 +6115,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 6857, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6857, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5501,14 +6133,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 6920, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 6926, "elements": [ { + "commentStart": 6935, "end": 0, "raw": "0.39043436929278874", "start": 0, @@ -5520,6 +6155,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 6963, "end": 0, "raw": "0.14273182483160451", "start": 0, @@ -5539,11 +6175,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 6915, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6915, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5555,14 +6193,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 7001, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7007, "elements": [ { + "commentStart": 7016, "end": 0, "raw": "0.09782890412897283", "start": 0, @@ -5574,6 +6215,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 7044, "end": 0, "raw": "0.9907667536909659", "start": 0, @@ -5593,11 +6235,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 6996, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 6996, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5609,14 +6253,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 7081, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7087, "elements": [ { + "commentStart": 7096, "end": 0, "raw": "0.5286610085921146", "start": 0, @@ -5629,6 +6276,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 7124, "end": 0, "raw": "0.7924508308419256", "start": 0, @@ -5639,6 +6287,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 7123, "end": 0, "operator": "-", "start": 0, @@ -5654,11 +6303,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 7076, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7076, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5670,14 +6321,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 7161, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7167, "elements": [ { + "commentStart": 7176, "end": 0, "raw": "0.3789978184503342", "start": 0, @@ -5689,6 +6343,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 7203, "end": 0, "raw": "0.12396120576838676", "start": 0, @@ -5708,11 +6363,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 7156, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7156, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5724,15 +6381,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 7241, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7247, "elements": [ { "argument": { + "commentStart": 7257, "end": 0, "raw": "0.9484912744890612", "start": 0, @@ -5743,6 +6403,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 7256, "end": 0, "operator": "-", "start": 0, @@ -5750,6 +6411,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 7284, "end": 0, "raw": "0.6729649846476855", "start": 0, @@ -5769,11 +6431,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 7236, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7236, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5785,14 +6449,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 7321, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7327, "elements": [ { + "commentStart": 7336, "end": 0, "raw": "0.7451758753425153", "start": 0, @@ -5805,6 +6472,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 7364, "end": 0, "raw": "0.21318737562458967", "start": 0, @@ -5815,6 +6483,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 7363, "end": 0, "operator": "-", "start": 0, @@ -5830,11 +6499,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 7316, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7316, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5846,14 +6517,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 7402, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7408, "elements": [ { + "commentStart": 7417, "end": 0, "raw": "0.1873200727251887", "start": 0, @@ -5866,6 +6540,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 7445, "end": 0, "raw": "0.15961374297992448", "start": 0, @@ -5876,6 +6551,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 7444, "end": 0, "operator": "-", "start": 0, @@ -5891,11 +6567,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 7397, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7397, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5907,15 +6585,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 7483, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7489, "elements": [ { "argument": { + "commentStart": 7499, "end": 0, "raw": "0.05729464924537564", "start": 0, @@ -5926,6 +6607,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 7498, "end": 0, "operator": "-", "start": 0, @@ -5934,6 +6616,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 7528, "end": 0, "raw": "0.5436345558508746", "start": 0, @@ -5944,6 +6627,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 7527, "end": 0, "operator": "-", "start": 0, @@ -5959,11 +6643,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 7478, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7478, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -5975,15 +6661,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 7565, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7571, "elements": [ { "argument": { + "commentStart": 7581, "end": 0, "raw": "0.09582414374469184", "start": 0, @@ -5994,6 +6683,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 7580, "end": 0, "operator": "-", "start": 0, @@ -6002,6 +6692,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 7610, "end": 0, "raw": "0.7533839681212353", "start": 0, @@ -6012,6 +6703,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 7609, "end": 0, "operator": "-", "start": 0, @@ -6027,11 +6719,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 7560, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7560, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6043,15 +6737,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 7647, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7653, "elements": [ { "argument": { + "commentStart": 7663, "end": 0, "raw": "0.17254116580051848", "start": 0, @@ -6062,6 +6759,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 7662, "end": 0, "operator": "-", "start": 0, @@ -6070,6 +6768,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 7692, "end": 0, "raw": "0.7669113400341137", "start": 0, @@ -6080,6 +6779,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 7691, "end": 0, "operator": "-", "start": 0, @@ -6095,11 +6795,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 7642, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7642, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6111,14 +6813,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 7729, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7735, "elements": [ { + "commentStart": 7736, "end": 0, "raw": "0.8944730032887609", "start": 0, @@ -6130,6 +6835,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 7756, "end": 0, "raw": "0.6093318694741408", "start": 0, @@ -6149,11 +6855,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 7724, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7724, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6165,15 +6873,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 7787, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7793, "elements": [ { "argument": { + "commentStart": 7803, "end": 0, "raw": "0.3670208139314082", "start": 0, @@ -6184,6 +6895,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 7802, "end": 0, "operator": "-", "start": 0, @@ -6191,6 +6903,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 7830, "end": 0, "raw": "0.21201331909674526", "start": 0, @@ -6210,11 +6923,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 7782, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7782, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6226,15 +6941,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 7868, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7874, "elements": [ { "argument": { + "commentStart": 7884, "end": 0, "raw": "0.4707511307971115", "start": 0, @@ -6245,6 +6963,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 7883, "end": 0, "operator": "-", "start": 0, @@ -6252,6 +6971,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 7911, "end": 0, "raw": "0.4905279615419764", "start": 0, @@ -6271,11 +6991,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 7863, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7863, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6287,15 +7009,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 7948, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 7954, "elements": [ { "argument": { + "commentStart": 7964, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -6306,6 +7031,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 7963, "end": 0, "operator": "-", "start": 0, @@ -6313,6 +7039,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 7991, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -6332,11 +7059,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 7943, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 7943, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6348,15 +7077,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 8028, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8034, "elements": [ { "argument": { + "commentStart": 8044, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -6367,6 +7099,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 8043, "end": 0, "operator": "-", "start": 0, @@ -6375,6 +7108,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 8072, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -6385,6 +7119,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 8071, "end": 0, "operator": "-", "start": 0, @@ -6400,11 +7135,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 8023, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8023, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6416,14 +7153,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 8110, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8116, "elements": [ { + "commentStart": 8125, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -6435,6 +7175,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 8153, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -6454,11 +7195,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 8105, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8105, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6470,14 +7213,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 8191, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8197, "elements": [ { + "commentStart": 8206, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -6489,6 +7235,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 8234, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -6508,11 +7255,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 8186, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8186, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6524,15 +7273,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 8272, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8278, "elements": [ { "argument": { + "commentStart": 8288, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -6543,6 +7295,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 8287, "end": 0, "operator": "-", "start": 0, @@ -6550,6 +7303,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 8316, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -6569,11 +7323,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 8267, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8267, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6585,15 +7341,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 8353, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8359, "elements": [ { "argument": { + "commentStart": 8369, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -6604,6 +7363,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 8368, "end": 0, "operator": "-", "start": 0, @@ -6612,6 +7372,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 8398, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -6622,6 +7383,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 8397, "end": 0, "operator": "-", "start": 0, @@ -6637,11 +7399,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 8348, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8348, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6653,14 +7417,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 8436, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8442, "elements": [ { + "commentStart": 8451, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -6673,6 +7440,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 8479, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -6683,6 +7451,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 8478, "end": 0, "operator": "-", "start": 0, @@ -6698,11 +7467,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 8431, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8431, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6714,14 +7485,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 8517, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8523, "elements": [ { + "commentStart": 8532, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -6734,6 +7508,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 8563, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -6744,6 +7519,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 8562, "end": 0, "operator": "-", "start": 0, @@ -6759,11 +7535,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 8512, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8512, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6775,14 +7553,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 8600, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8606, "elements": [ { + "commentStart": 8615, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -6795,6 +7576,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 8643, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -6805,6 +7587,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 8642, "end": 0, "operator": "-", "start": 0, @@ -6820,11 +7603,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 8595, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8595, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6836,15 +7621,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 8680, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8686, "elements": [ { "argument": { + "commentStart": 8696, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -6855,6 +7643,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 8695, "end": 0, "operator": "-", "start": 0, @@ -6862,6 +7651,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 8723, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -6881,11 +7671,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 8675, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8675, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6897,14 +7689,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 8760, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8766, "elements": [ { + "commentStart": 8767, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -6916,6 +7711,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 8787, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -6935,11 +7731,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 8755, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8755, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -6951,15 +7749,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 8818, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8824, "elements": [ { "argument": { + "commentStart": 8834, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -6970,6 +7771,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 8833, "end": 0, "operator": "-", "start": 0, @@ -6977,6 +7779,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 8862, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -6996,11 +7799,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 8813, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8813, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7012,15 +7817,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 8901, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8907, "elements": [ { "argument": { + "commentStart": 8917, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -7031,6 +7839,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 8916, "end": 0, "operator": "-", "start": 0, @@ -7039,6 +7848,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 8945, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -7049,6 +7859,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 8944, "end": 0, "operator": "-", "start": 0, @@ -7064,11 +7875,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 8896, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8896, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7080,15 +7893,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 8983, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 8989, "elements": [ { "argument": { + "commentStart": 8999, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -7099,6 +7915,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 8998, "end": 0, "operator": "-", "start": 0, @@ -7107,6 +7924,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 9027, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -7117,6 +7935,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 9026, "end": 0, "operator": "-", "start": 0, @@ -7132,11 +7951,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 8978, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 8978, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7148,14 +7969,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 9065, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9071, "elements": [ { + "commentStart": 9072, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -7167,6 +7991,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 9091, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -7186,11 +8011,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 9060, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9060, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7202,14 +8029,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 9122, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9128, "elements": [ { + "commentStart": 9137, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -7222,6 +8052,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 9166, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -7232,6 +8063,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 9165, "end": 0, "operator": "-", "start": 0, @@ -7247,11 +8079,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 9117, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9117, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7263,14 +8097,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 9204, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9210, "elements": [ { + "commentStart": 9211, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -7282,6 +8119,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 9231, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -7301,11 +8139,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 9199, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9199, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7317,14 +8157,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 9261, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9267, "elements": [ { + "commentStart": 9276, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -7337,6 +8180,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 9305, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -7347,6 +8191,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 9304, "end": 0, "operator": "-", "start": 0, @@ -7362,11 +8207,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 9256, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9256, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7378,14 +8225,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 9342, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9348, "elements": [ { + "commentStart": 9349, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -7397,6 +8247,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 9369, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -7416,11 +8267,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 9337, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9337, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7432,14 +8285,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 9400, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9406, "elements": [ { + "commentStart": 9415, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -7451,6 +8307,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 9442, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -7470,11 +8327,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 9395, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9395, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7486,14 +8345,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 9480, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9486, "elements": [ { + "commentStart": 9487, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -7505,6 +8367,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 9507, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -7524,11 +8387,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 9475, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9475, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7540,15 +8405,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 9538, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9544, "elements": [ { "argument": { + "commentStart": 9554, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -7559,6 +8427,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 9553, "end": 0, "operator": "-", "start": 0, @@ -7567,6 +8436,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 9583, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -7577,6 +8447,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 9582, "end": 0, "operator": "-", "start": 0, @@ -7592,11 +8463,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 9533, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9533, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7608,14 +8481,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 9620, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9626, "elements": [ { + "commentStart": 9635, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -7628,6 +8504,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 9663, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -7638,6 +8515,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 9662, "end": 0, "operator": "-", "start": 0, @@ -7653,11 +8531,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 9615, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9615, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7669,15 +8549,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 9700, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9706, "elements": [ { "argument": { + "commentStart": 9716, "end": 0, "raw": "0.6716353749059765", "start": 0, @@ -7688,6 +8571,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 9715, "end": 0, "operator": "-", "start": 0, @@ -7696,6 +8580,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 9744, "end": 0, "raw": "0.9605576808879026", "start": 0, @@ -7706,6 +8591,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 9743, "end": 0, "operator": "-", "start": 0, @@ -7721,11 +8607,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 9695, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9695, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7737,14 +8625,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 9781, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9787, "elements": [ { + "commentStart": 9796, "end": 0, "raw": "0.010280170930300203", "start": 0, @@ -7757,6 +8648,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 9826, "end": 0, "raw": "0.37344123662342166", "start": 0, @@ -7767,6 +8659,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 9825, "end": 0, "operator": "-", "start": 0, @@ -7782,11 +8675,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 9776, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9776, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7798,14 +8693,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 9864, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9870, "elements": [ { + "commentStart": 9879, "end": 0, "raw": "0.10357375682791004", "start": 0, @@ -7818,6 +8716,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 9908, "end": 0, "raw": "0.42294321030821425", "start": 0, @@ -7828,6 +8727,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 9907, "end": 0, "operator": "-", "start": 0, @@ -7843,11 +8743,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 9859, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9859, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7859,14 +8761,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 9946, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 9952, "elements": [ { + "commentStart": 9961, "end": 0, "raw": "0.4520311575096987", "start": 0, @@ -7879,6 +8784,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 9989, "end": 0, "raw": "0.11232675307600548", "start": 0, @@ -7889,6 +8795,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 9988, "end": 0, "operator": "-", "start": 0, @@ -7904,11 +8811,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 9941, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 9941, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7920,15 +8829,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 10027, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10033, "elements": [ { "argument": { + "commentStart": 10043, "end": 0, "raw": "0.8821185914380845", "start": 0, @@ -7939,6 +8851,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 10042, "end": 0, "operator": "-", "start": 0, @@ -7947,6 +8860,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 10071, "end": 0, "raw": "0.7155147434939819", "start": 0, @@ -7957,6 +8871,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 10070, "end": 0, "operator": "-", "start": 0, @@ -7972,11 +8887,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 10022, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10022, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -7988,14 +8905,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 10108, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10114, "elements": [ { + "commentStart": 10115, "end": 0, "raw": "0.9195487101690416", "start": 0, @@ -8007,6 +8927,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 10135, "end": 0, "raw": "0.2691627465297364", "start": 0, @@ -8026,11 +8947,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 10103, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10103, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8042,14 +8965,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 10166, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10172, "elements": [ { + "commentStart": 10181, "end": 0, "raw": "0.7098978191546745", "start": 0, @@ -8061,6 +8987,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 10208, "end": 0, "raw": "0.11710004169385968", "start": 0, @@ -8080,11 +9007,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 10161, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10161, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8096,15 +9025,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 10246, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10252, "elements": [ { "argument": { + "commentStart": 10262, "end": 0, "raw": "0.37876368560819995", "start": 0, @@ -8115,6 +9047,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 10261, "end": 0, "operator": "-", "start": 0, @@ -8122,6 +9055,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 10290, "end": 0, "raw": "0.7106729314759084", "start": 0, @@ -8141,11 +9075,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 10241, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10241, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8157,15 +9093,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 10327, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10333, "elements": [ { "argument": { + "commentStart": 10343, "end": 0, "raw": "0.29728126898353335", "start": 0, @@ -8176,6 +9115,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 10342, "end": 0, "operator": "-", "start": 0, @@ -8184,6 +9124,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 10372, "end": 0, "raw": "0.06649734568328003", "start": 0, @@ -8194,6 +9135,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 10371, "end": 0, "operator": "-", "start": 0, @@ -8209,11 +9151,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 10322, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10322, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8225,14 +9169,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 10410, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10416, "elements": [ { + "commentStart": 10425, "end": 0, "raw": "0.22965781558352072", "start": 0, @@ -8245,6 +9192,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 10454, "end": 0, "raw": "0.7601866432836641", "start": 0, @@ -8255,6 +9203,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 10453, "end": 0, "operator": "-", "start": 0, @@ -8270,11 +9219,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 10405, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10405, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8286,15 +9237,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 10491, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10497, "elements": [ { "argument": { + "commentStart": 10507, "end": 0, "raw": "0.6356501074317229", "start": 0, @@ -8305,6 +9259,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 10506, "end": 0, "operator": "-", "start": 0, @@ -8312,6 +9267,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 10534, "end": 0, "raw": "0.19458425399338064", "start": 0, @@ -8331,11 +9287,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 10486, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10486, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8347,14 +9305,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 10572, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10578, "elements": [ { + "commentStart": 10579, "end": 0, "raw": "0.5721251777404546", "start": 0, @@ -8366,6 +9327,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 10599, "end": 0, "raw": "0.2888584097921527", "start": 0, @@ -8385,11 +9347,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 10567, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10567, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8401,15 +9365,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 10630, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10636, "elements": [ { "argument": { + "commentStart": 10646, "end": 0, "raw": "0.9580409549552311", "start": 0, @@ -8420,6 +9387,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 10645, "end": 0, "operator": "-", "start": 0, @@ -8428,6 +9396,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 10674, "end": 0, "raw": "0.02243818192078395", "start": 0, @@ -8438,6 +9407,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 10673, "end": 0, "operator": "-", "start": 0, @@ -8453,11 +9423,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 10625, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10625, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8469,14 +9441,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 10712, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10718, "elements": [ { + "commentStart": 10727, "end": 0, "raw": "0.3299184618602866", "start": 0, @@ -8489,6 +9464,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 10755, "end": 0, "raw": "0.8353726942369875", "start": 0, @@ -8499,6 +9475,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 10754, "end": 0, "operator": "-", "start": 0, @@ -8514,11 +9491,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 10707, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10707, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8530,14 +9509,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 10792, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10798, "elements": [ { + "commentStart": 10807, "end": 0, "raw": "0.7434639386755209", "start": 0, @@ -8550,6 +9532,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 10835, "end": 0, "raw": "0.7919648864138378", "start": 0, @@ -8560,6 +9543,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 10834, "end": 0, "operator": "-", "start": 0, @@ -8575,11 +9559,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 10787, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10787, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8591,14 +9577,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 10872, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10878, "elements": [ { + "commentStart": 10879, "end": 0, "raw": "0.9935751011164615", "start": 0, @@ -8610,6 +9599,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 10899, "end": 0, "raw": "0.9042566468497608", "start": 0, @@ -8629,11 +9619,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 10867, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10867, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8645,15 +9637,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 10930, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 10936, "elements": [ { "argument": { + "commentStart": 10946, "end": 0, "raw": "0.5035812884687294", "start": 0, @@ -8664,6 +9659,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 10945, "end": 0, "operator": "-", "start": 0, @@ -8671,6 +9667,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 10973, "end": 0, "raw": "0.5150967434989442", "start": 0, @@ -8690,11 +9687,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 10925, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 10925, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8706,14 +9705,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 11010, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11016, "elements": [ { + "commentStart": 11017, "end": 0, "raw": "0.5526227215900215", "start": 0, @@ -8725,6 +9727,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 11037, "end": 0, "raw": "0.7612604137272441", "start": 0, @@ -8744,11 +9747,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 11005, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11005, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8760,14 +9765,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 11068, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11074, "elements": [ { + "commentStart": 11083, "end": 0, "raw": "0.8593271349126876", "start": 0, @@ -8779,6 +9787,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 11110, "end": 0, "raw": "0.08414894953725849", "start": 0, @@ -8798,11 +9807,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 11063, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11063, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8814,15 +9825,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 11148, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11154, "elements": [ { "argument": { + "commentStart": 11164, "end": 0, "raw": "0.8181049219192864", "start": 0, @@ -8833,6 +9847,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 11163, "end": 0, "operator": "-", "start": 0, @@ -8841,6 +9856,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 11192, "end": 0, "raw": "0.903548131323352", "start": 0, @@ -8851,6 +9867,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 11191, "end": 0, "operator": "-", "start": 0, @@ -8866,11 +9883,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 11143, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11143, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8882,14 +9901,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 11228, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11234, "elements": [ { + "commentStart": 11243, "end": 0, "raw": "0.3165782044458305", "start": 0, @@ -8902,6 +9924,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 11271, "end": 0, "raw": "0.24189274252014914", "start": 0, @@ -8912,6 +9935,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 11270, "end": 0, "operator": "-", "start": 0, @@ -8927,11 +9951,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 11223, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11223, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -8943,15 +9969,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 11309, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11315, "elements": [ { "argument": { + "commentStart": 11325, "end": 0, "raw": "0.44390956414045135", "start": 0, @@ -8962,6 +9991,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 11324, "end": 0, "operator": "-", "start": 0, @@ -8970,6 +10000,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 11354, "end": 0, "raw": "0.25912591535126905", "start": 0, @@ -8980,6 +10011,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 11353, "end": 0, "operator": "-", "start": 0, @@ -8995,11 +10027,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 11304, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11304, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9011,15 +10045,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 11392, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11398, "elements": [ { "argument": { + "commentStart": 11408, "end": 0, "raw": "0.6605165911891009", "start": 0, @@ -9030,6 +10067,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 11407, "end": 0, "operator": "-", "start": 0, @@ -9038,6 +10076,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 11436, "end": 0, "raw": "0.40355115288839194", "start": 0, @@ -9048,6 +10087,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 11435, "end": 0, "operator": "-", "start": 0, @@ -9063,11 +10103,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 11387, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11387, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9079,15 +10121,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 11474, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11480, "elements": [ { "argument": { + "commentStart": 11490, "end": 0, "raw": "0.7170489950180006", "start": 0, @@ -9098,6 +10143,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 11489, "end": 0, "operator": "-", "start": 0, @@ -9105,6 +10151,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 11517, "end": 0, "raw": "0.23454356079651384", "start": 0, @@ -9124,11 +10171,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 11469, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11469, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9140,15 +10189,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 11555, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11561, "elements": [ { "argument": { + "commentStart": 11571, "end": 0, "raw": "0.2568187045379722", "start": 0, @@ -9159,6 +10211,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 11570, "end": 0, "operator": "-", "start": 0, @@ -9167,6 +10220,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 11599, "end": 0, "raw": "0.45031188717601367", "start": 0, @@ -9177,6 +10231,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 11598, "end": 0, "operator": "-", "start": 0, @@ -9192,11 +10247,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 11550, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11550, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9208,14 +10265,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 11637, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11643, "elements": [ { + "commentStart": 11652, "end": 0, "raw": "0.6751951211858687", "start": 0, @@ -9228,6 +10288,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 11680, "end": 0, "raw": "0.9709424233465593", "start": 0, @@ -9238,6 +10299,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 11679, "end": 0, "operator": "-", "start": 0, @@ -9253,11 +10315,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 11632, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11632, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9269,15 +10333,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 11717, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11723, "elements": [ { "argument": { + "commentStart": 11733, "end": 0, "raw": "0.5689619842972184", "start": 0, @@ -9288,6 +10355,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 11732, "end": 0, "operator": "-", "start": 0, @@ -9295,6 +10363,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 11760, "end": 0, "raw": "0.5918969913790362", "start": 0, @@ -9314,11 +10383,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 11712, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11712, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9330,15 +10401,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 11797, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11803, "elements": [ { "argument": { + "commentStart": 11813, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -9349,6 +10423,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 11812, "end": 0, "operator": "-", "start": 0, @@ -9356,6 +10431,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 11840, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -9375,11 +10451,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 11792, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11792, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9391,15 +10469,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 11877, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11883, "elements": [ { "argument": { + "commentStart": 11893, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -9410,6 +10491,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 11892, "end": 0, "operator": "-", "start": 0, @@ -9418,6 +10500,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 11921, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -9428,6 +10511,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 11920, "end": 0, "operator": "-", "start": 0, @@ -9443,11 +10527,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 11872, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11872, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9459,14 +10545,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 11959, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 11965, "elements": [ { + "commentStart": 11974, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -9478,6 +10567,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 12002, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -9497,11 +10587,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 11954, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 11954, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9513,14 +10605,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 12040, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12046, "elements": [ { + "commentStart": 12055, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -9532,6 +10627,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 12083, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -9551,11 +10647,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 12035, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12035, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9567,15 +10665,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 12121, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12127, "elements": [ { "argument": { + "commentStart": 12137, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -9586,6 +10687,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 12136, "end": 0, "operator": "-", "start": 0, @@ -9593,6 +10695,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 12165, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -9612,11 +10715,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 12116, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12116, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9628,15 +10733,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 12202, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12208, "elements": [ { "argument": { + "commentStart": 12218, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -9647,6 +10755,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 12217, "end": 0, "operator": "-", "start": 0, @@ -9655,6 +10764,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 12247, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -9665,6 +10775,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 12246, "end": 0, "operator": "-", "start": 0, @@ -9680,11 +10791,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 12197, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12197, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9696,14 +10809,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 12285, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12291, "elements": [ { + "commentStart": 12300, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -9716,6 +10832,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 12328, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -9726,6 +10843,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 12327, "end": 0, "operator": "-", "start": 0, @@ -9741,11 +10859,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 12280, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12280, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9757,14 +10877,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 12366, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12372, "elements": [ { + "commentStart": 12381, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -9777,6 +10900,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 12412, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -9787,6 +10911,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 12411, "end": 0, "operator": "-", "start": 0, @@ -9802,11 +10927,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 12361, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12361, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9818,14 +10945,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 12449, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12455, "elements": [ { + "commentStart": 12464, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -9838,6 +10968,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 12492, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -9848,6 +10979,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 12491, "end": 0, "operator": "-", "start": 0, @@ -9863,11 +10995,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 12444, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12444, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9879,15 +11013,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 12529, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12535, "elements": [ { "argument": { + "commentStart": 12545, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -9898,6 +11035,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 12544, "end": 0, "operator": "-", "start": 0, @@ -9905,6 +11043,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 12572, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -9924,11 +11063,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 12524, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12524, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9940,14 +11081,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 12609, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12615, "elements": [ { + "commentStart": 12616, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -9959,6 +11103,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 12636, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -9978,11 +11123,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 12604, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12604, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9994,15 +11141,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 12667, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12673, "elements": [ { "argument": { + "commentStart": 12683, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -10013,6 +11163,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 12682, "end": 0, "operator": "-", "start": 0, @@ -10020,6 +11171,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 12711, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -10039,11 +11191,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 12662, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12662, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10055,15 +11209,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 12750, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12756, "elements": [ { "argument": { + "commentStart": 12766, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -10074,6 +11231,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 12765, "end": 0, "operator": "-", "start": 0, @@ -10082,6 +11240,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 12794, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -10092,6 +11251,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 12793, "end": 0, "operator": "-", "start": 0, @@ -10107,11 +11267,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 12745, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12745, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10123,15 +11285,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 12832, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12838, "elements": [ { "argument": { + "commentStart": 12848, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -10142,6 +11307,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 12847, "end": 0, "operator": "-", "start": 0, @@ -10150,6 +11316,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 12876, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -10160,6 +11327,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 12875, "end": 0, "operator": "-", "start": 0, @@ -10175,11 +11343,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 12827, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12827, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10191,14 +11361,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 12914, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12920, "elements": [ { + "commentStart": 12921, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -10210,6 +11383,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 12940, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -10229,11 +11403,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 12909, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12909, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10245,14 +11421,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 12971, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 12977, "elements": [ { + "commentStart": 12986, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -10265,6 +11444,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 13015, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -10275,6 +11455,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 13014, "end": 0, "operator": "-", "start": 0, @@ -10290,11 +11471,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 12966, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 12966, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10306,14 +11489,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 13053, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13059, "elements": [ { + "commentStart": 13060, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -10325,6 +11511,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 13080, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -10344,11 +11531,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 13048, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13048, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10360,14 +11549,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 13110, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13116, "elements": [ { + "commentStart": 13125, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -10380,6 +11572,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 13154, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -10390,6 +11583,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 13153, "end": 0, "operator": "-", "start": 0, @@ -10405,11 +11599,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 13105, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13105, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10421,14 +11617,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 13191, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13197, "elements": [ { + "commentStart": 13198, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -10440,6 +11639,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 13218, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -10459,11 +11659,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 13186, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13186, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10475,14 +11677,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 13249, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13255, "elements": [ { + "commentStart": 13264, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -10494,6 +11699,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 13291, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -10513,11 +11719,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 13244, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13244, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10529,14 +11737,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 13329, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13335, "elements": [ { + "commentStart": 13336, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -10548,6 +11759,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 13356, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -10567,11 +11779,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 13324, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13324, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10583,15 +11797,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 13387, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13393, "elements": [ { "argument": { + "commentStart": 13403, "end": 0, "raw": "0.3670208139314082", "start": 0, @@ -10602,6 +11819,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 13402, "end": 0, "operator": "-", "start": 0, @@ -10609,6 +11827,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 13430, "end": 0, "raw": "0.21201331909674526", "start": 0, @@ -10628,11 +11847,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 13382, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13382, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10644,15 +11865,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 13468, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13474, "elements": [ { "argument": { + "commentStart": 13484, "end": 0, "raw": "0.4707511307971115", "start": 0, @@ -10663,6 +11887,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 13483, "end": 0, "operator": "-", "start": 0, @@ -10670,6 +11895,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 13511, "end": 0, "raw": "0.4905279615419764", "start": 0, @@ -10689,11 +11915,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 13463, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13463, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10705,15 +11933,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 13548, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13554, "elements": [ { "argument": { + "commentStart": 13564, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -10724,6 +11955,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 13563, "end": 0, "operator": "-", "start": 0, @@ -10731,6 +11963,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 13591, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -10750,11 +11983,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 13543, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13543, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10766,15 +12001,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 13628, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13634, "elements": [ { "argument": { + "commentStart": 13644, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -10785,6 +12023,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 13643, "end": 0, "operator": "-", "start": 0, @@ -10793,6 +12032,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 13672, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -10803,6 +12043,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 13671, "end": 0, "operator": "-", "start": 0, @@ -10818,11 +12059,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 13623, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13623, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10834,14 +12077,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 13710, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13716, "elements": [ { + "commentStart": 13725, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -10853,6 +12099,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 13753, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -10872,11 +12119,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 13705, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13705, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10888,14 +12137,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 13791, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13797, "elements": [ { + "commentStart": 13806, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -10907,6 +12159,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 13834, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -10926,11 +12179,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 13786, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13786, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -10942,15 +12197,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 13872, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13878, "elements": [ { "argument": { + "commentStart": 13888, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -10961,6 +12219,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 13887, "end": 0, "operator": "-", "start": 0, @@ -10968,6 +12227,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 13916, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -10987,11 +12247,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 13867, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13867, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11003,15 +12265,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 13953, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 13959, "elements": [ { "argument": { + "commentStart": 13969, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -11022,6 +12287,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 13968, "end": 0, "operator": "-", "start": 0, @@ -11030,6 +12296,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 13998, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -11040,6 +12307,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 13997, "end": 0, "operator": "-", "start": 0, @@ -11055,11 +12323,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 13948, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 13948, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11071,14 +12341,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 14036, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14042, "elements": [ { + "commentStart": 14051, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -11091,6 +12364,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 14079, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -11101,6 +12375,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 14078, "end": 0, "operator": "-", "start": 0, @@ -11116,11 +12391,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 14031, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14031, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11132,14 +12409,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 14117, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14123, "elements": [ { + "commentStart": 14132, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -11152,6 +12432,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 14163, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -11162,6 +12443,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 14162, "end": 0, "operator": "-", "start": 0, @@ -11177,11 +12459,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 14112, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14112, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11193,14 +12477,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 14200, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14206, "elements": [ { + "commentStart": 14215, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -11213,6 +12500,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 14243, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -11223,6 +12511,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 14242, "end": 0, "operator": "-", "start": 0, @@ -11238,11 +12527,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 14195, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14195, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11254,15 +12545,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 14280, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14286, "elements": [ { "argument": { + "commentStart": 14296, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -11273,6 +12567,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 14295, "end": 0, "operator": "-", "start": 0, @@ -11280,6 +12575,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 14323, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -11299,11 +12595,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 14275, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14275, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11315,14 +12613,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 14360, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14366, "elements": [ { + "commentStart": 14367, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -11334,6 +12635,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 14387, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -11353,11 +12655,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 14355, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14355, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11369,15 +12673,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 14418, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14424, "elements": [ { "argument": { + "commentStart": 14434, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -11388,6 +12695,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 14433, "end": 0, "operator": "-", "start": 0, @@ -11395,6 +12703,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 14462, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -11414,11 +12723,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 14413, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14413, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11430,15 +12741,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 14501, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14507, "elements": [ { "argument": { + "commentStart": 14517, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -11449,6 +12763,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 14516, "end": 0, "operator": "-", "start": 0, @@ -11457,6 +12772,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 14545, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -11467,6 +12783,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 14544, "end": 0, "operator": "-", "start": 0, @@ -11482,11 +12799,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 14496, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14496, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11498,15 +12817,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 14583, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14589, "elements": [ { "argument": { + "commentStart": 14599, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -11517,6 +12839,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 14598, "end": 0, "operator": "-", "start": 0, @@ -11525,6 +12848,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 14627, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -11535,6 +12859,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 14626, "end": 0, "operator": "-", "start": 0, @@ -11550,11 +12875,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 14578, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14578, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11566,14 +12893,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 14665, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14671, "elements": [ { + "commentStart": 14672, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -11585,6 +12915,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 14691, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -11604,11 +12935,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 14660, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14660, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11620,14 +12953,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 14722, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14728, "elements": [ { + "commentStart": 14737, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -11640,6 +12976,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 14766, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -11650,6 +12987,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 14765, "end": 0, "operator": "-", "start": 0, @@ -11665,11 +13003,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 14717, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14717, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11681,14 +13021,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 14804, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14810, "elements": [ { + "commentStart": 14811, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -11700,6 +13043,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 14831, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -11719,11 +13063,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 14799, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14799, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11735,14 +13081,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 14861, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14867, "elements": [ { + "commentStart": 14876, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -11755,6 +13104,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 14905, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -11765,6 +13115,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 14904, "end": 0, "operator": "-", "start": 0, @@ -11780,11 +13131,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 14856, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14856, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11796,14 +13149,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 14942, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 14948, "elements": [ { + "commentStart": 14949, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -11815,6 +13171,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 14969, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -11834,11 +13191,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 14937, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14937, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11850,14 +13209,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 15000, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15006, "elements": [ { + "commentStart": 15015, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -11869,6 +13231,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 15042, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -11888,11 +13251,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 14995, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 14995, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11904,14 +13269,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 15080, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15086, "elements": [ { + "commentStart": 15087, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -11923,6 +13291,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 15107, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -11942,11 +13311,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 15075, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15075, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -11958,15 +13329,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 15138, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15144, "elements": [ { "argument": { + "commentStart": 15154, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -11977,6 +13351,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 15153, "end": 0, "operator": "-", "start": 0, @@ -11985,6 +13360,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 15183, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -11995,6 +13371,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 15182, "end": 0, "operator": "-", "start": 0, @@ -12010,11 +13387,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 15133, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15133, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12026,14 +13405,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 15220, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15226, "elements": [ { + "commentStart": 15235, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -12046,6 +13428,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 15263, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -12056,6 +13439,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 15262, "end": 0, "operator": "-", "start": 0, @@ -12071,11 +13455,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 15215, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15215, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12087,15 +13473,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 15300, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15306, "elements": [ { "argument": { + "commentStart": 15316, "end": 0, "raw": "0.6716353749059765", "start": 0, @@ -12106,6 +13495,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 15315, "end": 0, "operator": "-", "start": 0, @@ -12114,6 +13504,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 15344, "end": 0, "raw": "0.9605576808879026", "start": 0, @@ -12124,6 +13515,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 15343, "end": 0, "operator": "-", "start": 0, @@ -12139,11 +13531,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 15295, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15295, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12155,14 +13549,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 15381, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15387, "elements": [ { + "commentStart": 15396, "end": 0, "raw": "0.010280170930300203", "start": 0, @@ -12175,6 +13572,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 15426, "end": 0, "raw": "0.37344123662342166", "start": 0, @@ -12185,6 +13583,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 15425, "end": 0, "operator": "-", "start": 0, @@ -12200,11 +13599,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 15376, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15376, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12216,15 +13617,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 15464, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15470, "elements": [ { "argument": { + "commentStart": 15480, "end": 0, "raw": "0.3670208139314082", "start": 0, @@ -12235,6 +13639,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 15479, "end": 0, "operator": "-", "start": 0, @@ -12242,6 +13647,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 15507, "end": 0, "raw": "0.21201331909674526", "start": 0, @@ -12261,11 +13667,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 15459, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15459, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12277,15 +13685,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 15545, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15551, "elements": [ { "argument": { + "commentStart": 15561, "end": 0, "raw": "0.4707511307971115", "start": 0, @@ -12296,6 +13707,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 15560, "end": 0, "operator": "-", "start": 0, @@ -12303,6 +13715,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 15588, "end": 0, "raw": "0.4905279615419764", "start": 0, @@ -12322,11 +13735,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 15540, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15540, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12338,15 +13753,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 15625, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15631, "elements": [ { "argument": { + "commentStart": 15641, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -12357,6 +13775,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 15640, "end": 0, "operator": "-", "start": 0, @@ -12364,6 +13783,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 15668, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -12383,11 +13803,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 15620, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15620, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12399,15 +13821,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 15705, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15711, "elements": [ { "argument": { + "commentStart": 15721, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -12418,6 +13843,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 15720, "end": 0, "operator": "-", "start": 0, @@ -12426,6 +13852,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 15749, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -12436,6 +13863,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 15748, "end": 0, "operator": "-", "start": 0, @@ -12451,11 +13879,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 15700, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15700, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12467,14 +13897,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 15787, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15793, "elements": [ { + "commentStart": 15802, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -12486,6 +13919,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 15830, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -12505,11 +13939,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 15782, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15782, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12521,14 +13957,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 15868, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15874, "elements": [ { + "commentStart": 15883, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -12540,6 +13979,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 15911, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -12559,11 +13999,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 15863, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15863, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12575,15 +14017,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 15949, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 15955, "elements": [ { "argument": { + "commentStart": 15965, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -12594,6 +14039,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 15964, "end": 0, "operator": "-", "start": 0, @@ -12601,6 +14047,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 15993, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -12620,11 +14067,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 15944, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 15944, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12636,15 +14085,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 16030, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16036, "elements": [ { "argument": { + "commentStart": 16046, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -12655,6 +14107,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 16045, "end": 0, "operator": "-", "start": 0, @@ -12663,6 +14116,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 16075, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -12673,6 +14127,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 16074, "end": 0, "operator": "-", "start": 0, @@ -12688,11 +14143,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 16025, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16025, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12704,14 +14161,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 16113, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16119, "elements": [ { + "commentStart": 16128, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -12724,6 +14184,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 16156, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -12734,6 +14195,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 16155, "end": 0, "operator": "-", "start": 0, @@ -12749,11 +14211,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 16108, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16108, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12765,14 +14229,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 16194, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16200, "elements": [ { + "commentStart": 16209, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -12785,6 +14252,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 16240, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -12795,6 +14263,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 16239, "end": 0, "operator": "-", "start": 0, @@ -12810,11 +14279,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 16189, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16189, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12826,14 +14297,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 16277, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16283, "elements": [ { + "commentStart": 16292, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -12846,6 +14320,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 16320, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -12856,6 +14331,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 16319, "end": 0, "operator": "-", "start": 0, @@ -12871,11 +14347,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 16272, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16272, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12887,15 +14365,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 16357, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16363, "elements": [ { "argument": { + "commentStart": 16373, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -12906,6 +14387,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 16372, "end": 0, "operator": "-", "start": 0, @@ -12913,6 +14395,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 16400, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -12932,11 +14415,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 16352, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16352, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -12948,14 +14433,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 16437, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16443, "elements": [ { + "commentStart": 16444, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -12967,6 +14455,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 16464, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -12986,11 +14475,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 16432, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16432, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13002,15 +14493,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 16495, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16501, "elements": [ { "argument": { + "commentStart": 16511, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -13021,6 +14515,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 16510, "end": 0, "operator": "-", "start": 0, @@ -13028,6 +14523,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 16539, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -13047,11 +14543,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 16490, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16490, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13063,15 +14561,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 16578, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16584, "elements": [ { "argument": { + "commentStart": 16594, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -13082,6 +14583,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 16593, "end": 0, "operator": "-", "start": 0, @@ -13090,6 +14592,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 16622, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -13100,6 +14603,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 16621, "end": 0, "operator": "-", "start": 0, @@ -13115,11 +14619,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 16573, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16573, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13131,15 +14637,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 16660, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16666, "elements": [ { "argument": { + "commentStart": 16676, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -13150,6 +14659,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 16675, "end": 0, "operator": "-", "start": 0, @@ -13158,6 +14668,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 16704, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -13168,6 +14679,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 16703, "end": 0, "operator": "-", "start": 0, @@ -13183,11 +14695,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 16655, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16655, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13199,14 +14713,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 16742, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16748, "elements": [ { + "commentStart": 16749, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -13218,6 +14735,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 16768, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -13237,11 +14755,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 16737, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16737, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13253,14 +14773,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 16799, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16805, "elements": [ { + "commentStart": 16814, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -13273,6 +14796,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 16843, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -13283,6 +14807,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 16842, "end": 0, "operator": "-", "start": 0, @@ -13298,11 +14823,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 16794, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16794, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13314,14 +14841,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 16881, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16887, "elements": [ { + "commentStart": 16888, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -13333,6 +14863,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 16908, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -13352,11 +14883,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 16876, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16876, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13368,14 +14901,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 16938, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 16944, "elements": [ { + "commentStart": 16953, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -13388,6 +14924,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 16982, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -13398,6 +14935,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 16981, "end": 0, "operator": "-", "start": 0, @@ -13413,11 +14951,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 16933, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 16933, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13429,14 +14969,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 17019, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17025, "elements": [ { + "commentStart": 17026, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -13448,6 +14991,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 17046, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -13467,11 +15011,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 17014, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17014, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13483,14 +15029,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 17077, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17083, "elements": [ { + "commentStart": 17092, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -13502,6 +15051,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 17119, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -13521,11 +15071,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 17072, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17072, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13537,14 +15089,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 17157, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17163, "elements": [ { + "commentStart": 17164, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -13556,6 +15111,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 17184, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -13575,11 +15131,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 17152, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17152, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13591,15 +15149,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 17215, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17221, "elements": [ { "argument": { + "commentStart": 17231, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -13610,6 +15171,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 17230, "end": 0, "operator": "-", "start": 0, @@ -13618,6 +15180,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 17260, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -13628,6 +15191,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 17259, "end": 0, "operator": "-", "start": 0, @@ -13643,11 +15207,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 17210, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17210, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13659,14 +15225,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 17297, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17303, "elements": [ { + "commentStart": 17312, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -13679,6 +15248,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 17340, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -13689,6 +15259,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 17339, "end": 0, "operator": "-", "start": 0, @@ -13704,11 +15275,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 17292, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17292, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13720,15 +15293,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 17377, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17383, "elements": [ { "argument": { + "commentStart": 17393, "end": 0, "raw": "0.6716353749059765", "start": 0, @@ -13739,6 +15315,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 17392, "end": 0, "operator": "-", "start": 0, @@ -13747,6 +15324,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 17421, "end": 0, "raw": "0.9605576808879026", "start": 0, @@ -13757,6 +15335,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 17420, "end": 0, "operator": "-", "start": 0, @@ -13772,11 +15351,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 17372, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17372, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13788,14 +15369,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 17458, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17464, "elements": [ { + "commentStart": 17473, "end": 0, "raw": "0.010280170930300203", "start": 0, @@ -13808,6 +15392,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 17503, "end": 0, "raw": "0.37344123662342166", "start": 0, @@ -13818,6 +15403,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 17502, "end": 0, "operator": "-", "start": 0, @@ -13833,11 +15419,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 17453, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17453, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13849,14 +15437,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 17541, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17547, "elements": [ { + "commentStart": 17556, "end": 0, "raw": "0.10357375682791004", "start": 0, @@ -13869,6 +15460,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 17585, "end": 0, "raw": "0.42294321030821425", "start": 0, @@ -13879,6 +15471,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 17584, "end": 0, "operator": "-", "start": 0, @@ -13894,11 +15487,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 17536, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17536, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13910,14 +15505,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 17623, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17629, "elements": [ { + "commentStart": 17638, "end": 0, "raw": "0.4520311575096987", "start": 0, @@ -13930,6 +15528,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 17666, "end": 0, "raw": "0.11232675307600548", "start": 0, @@ -13940,6 +15539,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 17665, "end": 0, "operator": "-", "start": 0, @@ -13955,11 +15555,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 17618, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17618, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -13971,15 +15573,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 17704, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17710, "elements": [ { "argument": { + "commentStart": 17720, "end": 0, "raw": "0.8821185914380845", "start": 0, @@ -13990,6 +15595,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 17719, "end": 0, "operator": "-", "start": 0, @@ -13998,6 +15604,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 17748, "end": 0, "raw": "0.7155147434939819", "start": 0, @@ -14008,6 +15615,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 17747, "end": 0, "operator": "-", "start": 0, @@ -14023,11 +15631,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 17699, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17699, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14039,14 +15649,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 17785, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17791, "elements": [ { + "commentStart": 17792, "end": 0, "raw": "0.9195487101690416", "start": 0, @@ -14058,6 +15671,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 17812, "end": 0, "raw": "0.2691627465297364", "start": 0, @@ -14077,11 +15691,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 17780, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17780, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14093,14 +15709,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 17843, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17849, "elements": [ { + "commentStart": 17858, "end": 0, "raw": "0.7098978191546745", "start": 0, @@ -14112,6 +15731,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 17885, "end": 0, "raw": "0.11710004169385968", "start": 0, @@ -14131,11 +15751,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 17838, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17838, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14147,15 +15769,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 17923, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 17929, "elements": [ { "argument": { + "commentStart": 17939, "end": 0, "raw": "0.37876368560819995", "start": 0, @@ -14166,6 +15791,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 17938, "end": 0, "operator": "-", "start": 0, @@ -14173,6 +15799,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 17967, "end": 0, "raw": "0.7106729314759084", "start": 0, @@ -14192,11 +15819,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 17918, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17918, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14208,15 +15837,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 18004, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18010, "elements": [ { "argument": { + "commentStart": 18020, "end": 0, "raw": "0.29728126898353335", "start": 0, @@ -14227,6 +15859,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 18019, "end": 0, "operator": "-", "start": 0, @@ -14235,6 +15868,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 18049, "end": 0, "raw": "0.06649734568328003", "start": 0, @@ -14245,6 +15879,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 18048, "end": 0, "operator": "-", "start": 0, @@ -14260,11 +15895,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 17999, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 17999, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14276,14 +15913,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 18087, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18093, "elements": [ { + "commentStart": 18102, "end": 0, "raw": "0.22965781558352072", "start": 0, @@ -14296,6 +15936,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 18131, "end": 0, "raw": "0.7601866432836641", "start": 0, @@ -14306,6 +15947,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 18130, "end": 0, "operator": "-", "start": 0, @@ -14321,11 +15963,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 18082, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18082, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14337,15 +15981,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 18168, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18174, "elements": [ { "argument": { + "commentStart": 18184, "end": 0, "raw": "0.6356501074317229", "start": 0, @@ -14356,6 +16003,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 18183, "end": 0, "operator": "-", "start": 0, @@ -14363,6 +16011,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 18211, "end": 0, "raw": "0.19458425399338064", "start": 0, @@ -14382,11 +16031,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 18163, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18163, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14398,14 +16049,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 18249, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18255, "elements": [ { + "commentStart": 18256, "end": 0, "raw": "0.5721251777404546", "start": 0, @@ -14417,6 +16071,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 18276, "end": 0, "raw": "0.2888584097921527", "start": 0, @@ -14436,11 +16091,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 18244, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18244, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14452,15 +16109,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 18307, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18313, "elements": [ { "argument": { + "commentStart": 18323, "end": 0, "raw": "0.9580409549552311", "start": 0, @@ -14471,6 +16131,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 18322, "end": 0, "operator": "-", "start": 0, @@ -14479,6 +16140,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 18351, "end": 0, "raw": "0.02243818192078395", "start": 0, @@ -14489,6 +16151,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 18350, "end": 0, "operator": "-", "start": 0, @@ -14504,11 +16167,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 18302, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18302, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14520,14 +16185,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 18389, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18395, "elements": [ { + "commentStart": 18404, "end": 0, "raw": "0.3299184618602866", "start": 0, @@ -14540,6 +16208,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 18432, "end": 0, "raw": "0.8353726942369875", "start": 0, @@ -14550,6 +16219,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 18431, "end": 0, "operator": "-", "start": 0, @@ -14565,11 +16235,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 18384, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18384, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14581,14 +16253,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 18469, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18475, "elements": [ { + "commentStart": 18484, "end": 0, "raw": "0.7434639386755209", "start": 0, @@ -14601,6 +16276,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 18512, "end": 0, "raw": "0.7919648864138378", "start": 0, @@ -14611,6 +16287,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 18511, "end": 0, "operator": "-", "start": 0, @@ -14626,11 +16303,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 18464, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18464, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14642,14 +16321,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 18549, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18555, "elements": [ { + "commentStart": 18556, "end": 0, "raw": "0.9935751011164615", "start": 0, @@ -14661,6 +16343,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 18576, "end": 0, "raw": "0.9042566468497608", "start": 0, @@ -14680,11 +16363,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 18544, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18544, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14696,15 +16381,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 18607, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18613, "elements": [ { "argument": { + "commentStart": 18623, "end": 0, "raw": "0.5035812884687294", "start": 0, @@ -14715,6 +16403,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 18622, "end": 0, "operator": "-", "start": 0, @@ -14722,6 +16411,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 18650, "end": 0, "raw": "0.5150967434989442", "start": 0, @@ -14741,11 +16431,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 18602, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18602, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14757,14 +16449,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 18687, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18693, "elements": [ { + "commentStart": 18694, "end": 0, "raw": "0.5526227215900215", "start": 0, @@ -14776,6 +16471,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 18714, "end": 0, "raw": "0.7612604137272441", "start": 0, @@ -14795,11 +16491,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 18682, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18682, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14811,14 +16509,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 18745, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18751, "elements": [ { + "commentStart": 18760, "end": 0, "raw": "0.8593271349126876", "start": 0, @@ -14830,6 +16531,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 18787, "end": 0, "raw": "0.08414894953725849", "start": 0, @@ -14849,11 +16551,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 18740, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18740, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14865,15 +16569,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 18825, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18831, "elements": [ { "argument": { + "commentStart": 18841, "end": 0, "raw": "0.8181049219192864", "start": 0, @@ -14884,6 +16591,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 18840, "end": 0, "operator": "-", "start": 0, @@ -14892,6 +16600,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 18869, "end": 0, "raw": "0.903548131323352", "start": 0, @@ -14902,6 +16611,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 18868, "end": 0, "operator": "-", "start": 0, @@ -14917,11 +16627,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 18820, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18820, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14933,14 +16645,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 18905, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18911, "elements": [ { + "commentStart": 18920, "end": 0, "raw": "0.3165782044458305", "start": 0, @@ -14953,6 +16668,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 18948, "end": 0, "raw": "0.24189274252014914", "start": 0, @@ -14963,6 +16679,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 18947, "end": 0, "operator": "-", "start": 0, @@ -14978,11 +16695,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 18900, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18900, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -14994,15 +16713,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 18986, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 18992, "elements": [ { "argument": { + "commentStart": 19002, "end": 0, "raw": "0.44390956414045135", "start": 0, @@ -15013,6 +16735,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 19001, "end": 0, "operator": "-", "start": 0, @@ -15021,6 +16744,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 19031, "end": 0, "raw": "0.25912591535126905", "start": 0, @@ -15031,6 +16755,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 19030, "end": 0, "operator": "-", "start": 0, @@ -15046,11 +16771,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 18981, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 18981, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15062,15 +16789,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 19069, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 19075, "elements": [ { "argument": { + "commentStart": 19085, "end": 0, "raw": "0.6605165911891009", "start": 0, @@ -15081,6 +16811,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 19084, "end": 0, "operator": "-", "start": 0, @@ -15089,6 +16820,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 19113, "end": 0, "raw": "0.40355115288839194", "start": 0, @@ -15099,6 +16831,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 19112, "end": 0, "operator": "-", "start": 0, @@ -15114,11 +16847,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 19064, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 19064, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15130,15 +16865,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 19151, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 19157, "elements": [ { "argument": { + "commentStart": 19167, "end": 0, "raw": "0.7170489950180006", "start": 0, @@ -15149,6 +16887,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 19166, "end": 0, "operator": "-", "start": 0, @@ -15156,6 +16895,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 19194, "end": 0, "raw": "0.23454356079651384", "start": 0, @@ -15175,11 +16915,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 19146, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 19146, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15191,15 +16933,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 19232, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 19238, "elements": [ { "argument": { + "commentStart": 19248, "end": 0, "raw": "0.2568187045379722", "start": 0, @@ -15210,6 +16955,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 19247, "end": 0, "operator": "-", "start": 0, @@ -15218,6 +16964,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 19276, "end": 0, "raw": "0.45031188717601367", "start": 0, @@ -15228,6 +16975,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 19275, "end": 0, "operator": "-", "start": 0, @@ -15243,11 +16991,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 19227, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 19227, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15259,14 +17009,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 19314, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 19320, "elements": [ { + "commentStart": 19329, "end": 0, "raw": "0.6751951211858687", "start": 0, @@ -15279,6 +17032,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 19357, "end": 0, "raw": "0.9709424233465593", "start": 0, @@ -15289,6 +17043,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 19356, "end": 0, "operator": "-", "start": 0, @@ -15304,11 +17059,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 19309, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 19309, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15320,15 +17077,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 19394, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 19400, "elements": [ { "argument": { + "commentStart": 19410, "end": 0, "raw": "0.5689619842972184", "start": 0, @@ -15339,6 +17099,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 19409, "end": 0, "operator": "-", "start": 0, @@ -15346,6 +17107,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 19437, "end": 0, "raw": "0.5918969913790362", "start": 0, @@ -15365,11 +17127,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 19389, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 19389, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15381,15 +17145,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 19474, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 19480, "elements": [ { "argument": { + "commentStart": 19490, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -15400,6 +17167,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 19489, "end": 0, "operator": "-", "start": 0, @@ -15407,6 +17175,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 19517, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -15426,11 +17195,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 19469, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 19469, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15442,15 +17213,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 19554, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 19560, "elements": [ { "argument": { + "commentStart": 19570, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -15461,6 +17235,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 19569, "end": 0, "operator": "-", "start": 0, @@ -15469,6 +17244,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 19598, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -15479,6 +17255,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 19597, "end": 0, "operator": "-", "start": 0, @@ -15494,11 +17271,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 19549, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 19549, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15510,14 +17289,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 19636, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 19642, "elements": [ { + "commentStart": 19651, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -15529,6 +17311,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 19679, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -15548,11 +17331,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 19631, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 19631, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15564,14 +17349,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 19717, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 19723, "elements": [ { + "commentStart": 19732, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -15583,6 +17371,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 19760, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -15602,11 +17391,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 19712, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 19712, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15618,15 +17409,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 19798, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 19804, "elements": [ { "argument": { + "commentStart": 19814, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -15637,6 +17431,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 19813, "end": 0, "operator": "-", "start": 0, @@ -15644,6 +17439,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 19842, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -15663,11 +17459,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 19793, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 19793, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15679,15 +17477,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 19879, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 19885, "elements": [ { "argument": { + "commentStart": 19895, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -15698,6 +17499,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 19894, "end": 0, "operator": "-", "start": 0, @@ -15706,6 +17508,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 19924, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -15716,6 +17519,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 19923, "end": 0, "operator": "-", "start": 0, @@ -15731,11 +17535,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 19874, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 19874, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15747,14 +17553,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 19962, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 19968, "elements": [ { + "commentStart": 19977, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -15767,6 +17576,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 20005, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -15777,6 +17587,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 20004, "end": 0, "operator": "-", "start": 0, @@ -15792,11 +17603,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 19957, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 19957, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15808,14 +17621,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 20043, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 20049, "elements": [ { + "commentStart": 20058, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -15828,6 +17644,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 20089, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -15838,6 +17655,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 20088, "end": 0, "operator": "-", "start": 0, @@ -15853,11 +17671,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 20038, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 20038, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15869,14 +17689,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 20126, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 20132, "elements": [ { + "commentStart": 20141, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -15889,6 +17712,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 20169, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -15899,6 +17723,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 20168, "end": 0, "operator": "-", "start": 0, @@ -15914,11 +17739,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 20121, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 20121, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15930,15 +17757,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 20206, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 20212, "elements": [ { "argument": { + "commentStart": 20222, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -15949,6 +17779,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 20221, "end": 0, "operator": "-", "start": 0, @@ -15956,6 +17787,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 20249, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -15975,11 +17807,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 20201, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 20201, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -15991,14 +17825,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 20286, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 20292, "elements": [ { + "commentStart": 20293, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -16010,6 +17847,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 20313, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -16029,11 +17867,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 20281, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 20281, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16045,15 +17885,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 20344, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 20350, "elements": [ { "argument": { + "commentStart": 20360, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -16064,6 +17907,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 20359, "end": 0, "operator": "-", "start": 0, @@ -16071,6 +17915,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 20388, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -16090,11 +17935,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 20339, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 20339, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16106,15 +17953,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 20427, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 20433, "elements": [ { "argument": { + "commentStart": 20443, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -16125,6 +17975,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 20442, "end": 0, "operator": "-", "start": 0, @@ -16133,6 +17984,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 20471, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -16143,6 +17995,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 20470, "end": 0, "operator": "-", "start": 0, @@ -16158,11 +18011,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 20422, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 20422, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16174,15 +18029,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 20509, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 20515, "elements": [ { "argument": { + "commentStart": 20525, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -16193,6 +18051,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 20524, "end": 0, "operator": "-", "start": 0, @@ -16201,6 +18060,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 20553, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -16211,6 +18071,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 20552, "end": 0, "operator": "-", "start": 0, @@ -16226,11 +18087,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 20504, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 20504, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16242,14 +18105,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 20591, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 20597, "elements": [ { + "commentStart": 20598, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -16261,6 +18127,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 20617, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -16280,11 +18147,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 20586, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 20586, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16296,14 +18165,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 20648, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 20654, "elements": [ { + "commentStart": 20663, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -16316,6 +18188,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 20692, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -16326,6 +18199,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 20691, "end": 0, "operator": "-", "start": 0, @@ -16341,11 +18215,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 20643, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 20643, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16357,14 +18233,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 20730, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 20736, "elements": [ { + "commentStart": 20737, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -16376,6 +18255,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 20757, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -16395,11 +18275,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 20725, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 20725, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16411,14 +18293,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 20787, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 20793, "elements": [ { + "commentStart": 20802, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -16431,6 +18316,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 20831, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -16441,6 +18327,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 20830, "end": 0, "operator": "-", "start": 0, @@ -16456,11 +18343,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 20782, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 20782, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16472,14 +18361,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 20868, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 20874, "elements": [ { + "commentStart": 20875, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -16491,6 +18383,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 20895, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -16510,11 +18403,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 20863, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 20863, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16526,14 +18421,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 20926, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 20932, "elements": [ { + "commentStart": 20941, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -16545,6 +18443,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 20968, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -16564,11 +18463,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 20921, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 20921, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16580,14 +18481,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 21006, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 21012, "elements": [ { + "commentStart": 21013, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -16599,6 +18503,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 21033, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -16618,11 +18523,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 21001, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 21001, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16634,15 +18541,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 21064, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 21070, "elements": [ { "argument": { + "commentStart": 21080, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -16653,6 +18563,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 21079, "end": 0, "operator": "-", "start": 0, @@ -16661,6 +18572,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 21109, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -16671,6 +18583,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 21108, "end": 0, "operator": "-", "start": 0, @@ -16686,11 +18599,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 21059, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 21059, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16702,14 +18617,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 21146, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 21152, "elements": [ { + "commentStart": 21161, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -16722,6 +18640,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 21189, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -16732,6 +18651,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 21188, "end": 0, "operator": "-", "start": 0, @@ -16747,11 +18667,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 21141, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 21141, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16763,14 +18685,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 21226, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 21232, "elements": [ { + "commentStart": 21241, "end": 0, "raw": "0.6751951211858687", "start": 0, @@ -16783,6 +18708,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 21269, "end": 0, "raw": "0.9709424233465593", "start": 0, @@ -16793,6 +18719,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 21268, "end": 0, "operator": "-", "start": 0, @@ -16808,11 +18735,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 21221, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 21221, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16824,15 +18753,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 21306, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 21312, "elements": [ { "argument": { + "commentStart": 21322, "end": 0, "raw": "0.5689619842972184", "start": 0, @@ -16843,6 +18775,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 21321, "end": 0, "operator": "-", "start": 0, @@ -16850,6 +18783,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 21349, "end": 0, "raw": "0.5918969913790362", "start": 0, @@ -16869,11 +18803,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 21301, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 21301, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16885,14 +18821,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 21386, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 21392, "elements": [ { + "commentStart": 21401, "end": 0, "raw": "0.9464450621708211", "start": 0, @@ -16905,6 +18844,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 21429, "end": 0, "raw": "0.2684908127803667", "start": 0, @@ -16915,6 +18855,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 21428, "end": 0, "operator": "-", "start": 0, @@ -16930,11 +18871,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 21381, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 21381, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -16946,14 +18889,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 21466, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 21472, "elements": [ { + "commentStart": 21473, "end": 0, "raw": "0.5241732366617591", "start": 0, @@ -16965,6 +18911,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 21493, "end": 0, "raw": "0.9011437416408563", "start": 0, @@ -16984,11 +18931,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 21461, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 21461, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17000,15 +18949,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 21524, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 21530, "elements": [ { "argument": { + "commentStart": 21540, "end": 0, "raw": "0.14255393713960607", "start": 0, @@ -17019,6 +18971,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 21539, "end": 0, "operator": "-", "start": 0, @@ -17027,6 +18980,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 21569, "end": 0, "raw": "0.5194262624564814", "start": 0, @@ -17037,6 +18991,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 21568, "end": 0, "operator": "-", "start": 0, @@ -17052,11 +19007,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 21519, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 21519, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17068,15 +19025,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 21606, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 21612, "elements": [ { "argument": { + "commentStart": 21622, "end": 0, "raw": "0.4287123231350338", "start": 0, @@ -17087,6 +19047,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 21621, "end": 0, "operator": "-", "start": 0, @@ -17095,6 +19056,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 21650, "end": 0, "raw": "0.4223564528725028", "start": 0, @@ -17105,6 +19067,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 21649, "end": 0, "operator": "-", "start": 0, @@ -17120,11 +19083,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 21601, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 21601, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17136,15 +19101,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 21687, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 21693, "elements": [ { "argument": { + "commentStart": 21703, "end": 0, "raw": "0.09316367294024519", "start": 0, @@ -17155,6 +19123,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 21702, "end": 0, "operator": "-", "start": 0, @@ -17163,6 +19132,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 21732, "end": 0, "raw": "0.9063127021008246", "start": 0, @@ -17173,6 +19143,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 21731, "end": 0, "operator": "-", "start": 0, @@ -17188,11 +19159,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 21682, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 21682, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17204,15 +19177,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 21769, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 21775, "elements": [ { "argument": { + "commentStart": 21785, "end": 0, "raw": "0.2767766535558669", "start": 0, @@ -17223,6 +19199,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 21784, "end": 0, "operator": "-", "start": 0, @@ -17230,6 +19207,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 21812, "end": 0, "raw": "0.6816248114129131", "start": 0, @@ -17249,11 +19227,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 21764, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 21764, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17265,14 +19245,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 21849, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 21855, "elements": [ { + "commentStart": 21864, "end": 0, "raw": "0.9796762495562534", "start": 0, @@ -17285,6 +19268,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 21892, "end": 0, "raw": "0.0822145668330625", "start": 0, @@ -17295,6 +19279,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 21891, "end": 0, "operator": "-", "start": 0, @@ -17310,11 +19295,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 21844, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 21844, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17326,15 +19313,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 21929, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 21935, "elements": [ { "argument": { + "commentStart": 21945, "end": 0, "raw": "0.8666513070867441", "start": 0, @@ -17345,6 +19335,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 21944, "end": 0, "operator": "-", "start": 0, @@ -17353,6 +19344,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 21973, "end": 0, "raw": "0.301053160242023", "start": 0, @@ -17363,6 +19355,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 21972, "end": 0, "operator": "-", "start": 0, @@ -17378,11 +19371,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 21924, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 21924, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17394,14 +19389,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 22009, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 22015, "elements": [ { + "commentStart": 22024, "end": 0, "raw": "0.537415656028112", "start": 0, @@ -17413,6 +19411,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 22050, "end": 0, "raw": "0.020272692875002774", "start": 0, @@ -17432,11 +19431,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 22004, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 22004, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17448,14 +19449,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 22089, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 22095, "elements": [ { + "commentStart": 22104, "end": 0, "raw": "0.9332396256457531", "start": 0, @@ -17468,6 +19472,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 22132, "end": 0, "raw": "0.6228175690649898", "start": 0, @@ -17478,6 +19483,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 22131, "end": 0, "operator": "-", "start": 0, @@ -17493,11 +19499,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 22084, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 22084, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17509,14 +19517,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 22169, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 22175, "elements": [ { + "commentStart": 22184, "end": 0, "raw": "0.18052415837320734", "start": 0, @@ -17529,6 +19540,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 22213, "end": 0, "raw": "0.36894384647296197", "start": 0, @@ -17539,6 +19551,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 22212, "end": 0, "operator": "-", "start": 0, @@ -17554,11 +19567,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 22164, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 22164, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17570,14 +19585,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 22251, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 22257, "elements": [ { + "commentStart": 22258, "end": 0, "raw": "0.5384372634075449", "start": 0, @@ -17589,6 +19607,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 22278, "end": 0, "raw": "0.2377565050887107", "start": 0, @@ -17608,11 +19627,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 22246, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 22246, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17624,14 +19645,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 22309, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 22315, "elements": [ { + "commentStart": 22324, "end": 0, "raw": "0.39043436929278874", "start": 0, @@ -17643,6 +19667,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 22352, "end": 0, "raw": "0.14273182483160451", "start": 0, @@ -17662,11 +19687,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 22304, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 22304, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17678,14 +19705,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 22390, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 22396, "elements": [ { + "commentStart": 22405, "end": 0, "raw": "0.09782890412897283", "start": 0, @@ -17697,6 +19727,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 22433, "end": 0, "raw": "0.9907667536909659", "start": 0, @@ -17716,11 +19747,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 22385, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 22385, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17732,14 +19765,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 22470, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 22476, "elements": [ { + "commentStart": 22485, "end": 0, "raw": "0.5286610085921146", "start": 0, @@ -17752,6 +19788,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 22513, "end": 0, "raw": "0.7924508308419256", "start": 0, @@ -17762,6 +19799,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 22512, "end": 0, "operator": "-", "start": 0, @@ -17777,11 +19815,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 22465, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 22465, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17793,14 +19833,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 22550, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 22556, "elements": [ { + "commentStart": 22565, "end": 0, "raw": "0.3789978184503342", "start": 0, @@ -17812,6 +19855,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 22592, "end": 0, "raw": "0.12396120576838676", "start": 0, @@ -17831,11 +19875,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 22545, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 22545, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17847,15 +19893,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 22630, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 22636, "elements": [ { "argument": { + "commentStart": 22646, "end": 0, "raw": "0.9484912744890612", "start": 0, @@ -17866,6 +19915,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 22645, "end": 0, "operator": "-", "start": 0, @@ -17873,6 +19923,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 22673, "end": 0, "raw": "0.6729649846476855", "start": 0, @@ -17892,11 +19943,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 22625, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 22625, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17908,14 +19961,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 22710, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 22716, "elements": [ { + "commentStart": 22725, "end": 0, "raw": "0.7451758753425153", "start": 0, @@ -17928,6 +19984,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 22753, "end": 0, "raw": "0.21318737562458967", "start": 0, @@ -17938,6 +19995,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 22752, "end": 0, "operator": "-", "start": 0, @@ -17953,11 +20011,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 22705, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 22705, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -17969,14 +20029,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 22791, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 22797, "elements": [ { + "commentStart": 22806, "end": 0, "raw": "0.1873200727251887", "start": 0, @@ -17989,6 +20052,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 22834, "end": 0, "raw": "0.15961374297992448", "start": 0, @@ -17999,6 +20063,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 22833, "end": 0, "operator": "-", "start": 0, @@ -18014,11 +20079,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 22786, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 22786, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -18030,15 +20097,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 22872, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 22878, "elements": [ { "argument": { + "commentStart": 22888, "end": 0, "raw": "0.05729464924537564", "start": 0, @@ -18049,6 +20119,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 22887, "end": 0, "operator": "-", "start": 0, @@ -18057,6 +20128,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 22917, "end": 0, "raw": "0.5436345558508746", "start": 0, @@ -18067,6 +20139,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 22916, "end": 0, "operator": "-", "start": 0, @@ -18082,11 +20155,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 22867, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 22867, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -18098,15 +20173,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 22954, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 22960, "elements": [ { "argument": { + "commentStart": 22970, "end": 0, "raw": "0.09582414374469184", "start": 0, @@ -18117,6 +20195,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 22969, "end": 0, "operator": "-", "start": 0, @@ -18125,6 +20204,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 22999, "end": 0, "raw": "0.7533839681212353", "start": 0, @@ -18135,6 +20215,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 22998, "end": 0, "operator": "-", "start": 0, @@ -18150,11 +20231,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 22949, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 22949, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -18166,15 +20249,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 23036, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 23042, "elements": [ { "argument": { + "commentStart": 23052, "end": 0, "raw": "0.17254116580051848", "start": 0, @@ -18185,6 +20271,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 23051, "end": 0, "operator": "-", "start": 0, @@ -18193,6 +20280,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 23081, "end": 0, "raw": "0.7669113400341137", "start": 0, @@ -18203,6 +20291,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 23080, "end": 0, "operator": "-", "start": 0, @@ -18218,11 +20307,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 23031, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 23031, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -18234,14 +20325,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 23118, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 23124, "elements": [ { + "commentStart": 23125, "end": 0, "raw": "0.8944730032887609", "start": 0, @@ -18253,6 +20347,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 23145, "end": 0, "raw": "0.6093318694741408", "start": 0, @@ -18272,11 +20367,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 23113, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 23113, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -18288,15 +20385,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 23176, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 23182, "elements": [ { "argument": { + "commentStart": 23192, "end": 0, "raw": "0.3670208139314082", "start": 0, @@ -18307,6 +20407,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 23191, "end": 0, "operator": "-", "start": 0, @@ -18314,6 +20415,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 23219, "end": 0, "raw": "0.21201331909674526", "start": 0, @@ -18333,11 +20435,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 23171, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 23171, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -18349,15 +20453,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 23257, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 23263, "elements": [ { "argument": { + "commentStart": 23273, "end": 0, "raw": "0.4707511307971115", "start": 0, @@ -18368,6 +20475,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 23272, "end": 0, "operator": "-", "start": 0, @@ -18375,6 +20483,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 23300, "end": 0, "raw": "0.4905279615419764", "start": 0, @@ -18394,11 +20503,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 23252, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 23252, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -18410,15 +20521,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 23337, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 23343, "elements": [ { "argument": { + "commentStart": 23353, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -18429,6 +20543,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 23352, "end": 0, "operator": "-", "start": 0, @@ -18436,6 +20551,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 23380, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -18455,11 +20571,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 23332, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 23332, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -18471,15 +20589,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 23417, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 23423, "elements": [ { "argument": { + "commentStart": 23433, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -18490,6 +20611,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 23432, "end": 0, "operator": "-", "start": 0, @@ -18498,6 +20620,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 23461, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -18508,6 +20631,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 23460, "end": 0, "operator": "-", "start": 0, @@ -18523,11 +20647,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 23412, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 23412, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -18539,14 +20665,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 23499, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 23505, "elements": [ { + "commentStart": 23514, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -18558,6 +20687,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 23542, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -18577,11 +20707,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 23494, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 23494, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -18593,14 +20725,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 23580, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 23586, "elements": [ { + "commentStart": 23595, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -18612,6 +20747,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 23623, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -18631,11 +20767,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 23575, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 23575, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -18647,15 +20785,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 23661, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 23667, "elements": [ { "argument": { + "commentStart": 23677, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -18666,6 +20807,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 23676, "end": 0, "operator": "-", "start": 0, @@ -18673,6 +20815,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 23705, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -18692,11 +20835,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 23656, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 23656, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -18708,15 +20853,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 23742, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 23748, "elements": [ { "argument": { + "commentStart": 23758, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -18727,6 +20875,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 23757, "end": 0, "operator": "-", "start": 0, @@ -18735,6 +20884,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 23787, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -18745,6 +20895,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 23786, "end": 0, "operator": "-", "start": 0, @@ -18760,11 +20911,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 23737, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 23737, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -18776,14 +20929,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 23825, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 23831, "elements": [ { + "commentStart": 23840, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -18796,6 +20952,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 23868, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -18806,6 +20963,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 23867, "end": 0, "operator": "-", "start": 0, @@ -18821,11 +20979,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 23820, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 23820, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -18837,14 +20997,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 23906, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 23912, "elements": [ { + "commentStart": 23921, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -18857,6 +21020,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 23952, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -18867,6 +21031,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 23951, "end": 0, "operator": "-", "start": 0, @@ -18882,11 +21047,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 23901, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 23901, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -18898,14 +21065,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 23989, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 23995, "elements": [ { + "commentStart": 24004, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -18918,6 +21088,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 24032, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -18928,6 +21099,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 24031, "end": 0, "operator": "-", "start": 0, @@ -18943,11 +21115,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 23984, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 23984, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -18959,15 +21133,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 24069, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 24075, "elements": [ { "argument": { + "commentStart": 24085, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -18978,6 +21155,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 24084, "end": 0, "operator": "-", "start": 0, @@ -18985,6 +21163,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 24112, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -19004,11 +21183,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 24064, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 24064, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19020,14 +21201,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 24149, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 24155, "elements": [ { + "commentStart": 24156, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -19039,6 +21223,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 24176, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -19058,11 +21243,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 24144, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 24144, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19074,15 +21261,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 24207, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 24213, "elements": [ { "argument": { + "commentStart": 24223, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -19093,6 +21283,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 24222, "end": 0, "operator": "-", "start": 0, @@ -19100,6 +21291,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 24251, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -19119,11 +21311,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 24202, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 24202, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19135,15 +21329,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 24290, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 24296, "elements": [ { "argument": { + "commentStart": 24306, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -19154,6 +21351,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 24305, "end": 0, "operator": "-", "start": 0, @@ -19162,6 +21360,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 24334, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -19172,6 +21371,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 24333, "end": 0, "operator": "-", "start": 0, @@ -19187,11 +21387,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 24285, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 24285, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19203,15 +21405,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 24372, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 24378, "elements": [ { "argument": { + "commentStart": 24388, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -19222,6 +21427,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 24387, "end": 0, "operator": "-", "start": 0, @@ -19230,6 +21436,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 24416, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -19240,6 +21447,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 24415, "end": 0, "operator": "-", "start": 0, @@ -19255,11 +21463,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 24367, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 24367, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19271,14 +21481,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 24454, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 24460, "elements": [ { + "commentStart": 24461, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -19290,6 +21503,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 24480, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -19309,11 +21523,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 24449, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 24449, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19325,14 +21541,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 24511, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 24517, "elements": [ { + "commentStart": 24526, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -19345,6 +21564,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 24555, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -19355,6 +21575,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 24554, "end": 0, "operator": "-", "start": 0, @@ -19370,11 +21591,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 24506, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 24506, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19386,14 +21609,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 24593, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 24599, "elements": [ { + "commentStart": 24600, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -19405,6 +21631,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 24620, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -19424,11 +21651,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 24588, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 24588, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19440,14 +21669,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 24650, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 24656, "elements": [ { + "commentStart": 24665, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -19460,6 +21692,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 24694, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -19470,6 +21703,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 24693, "end": 0, "operator": "-", "start": 0, @@ -19485,11 +21719,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 24645, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 24645, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19501,14 +21737,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 24731, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 24737, "elements": [ { + "commentStart": 24738, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -19520,6 +21759,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 24758, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -19539,11 +21779,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 24726, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 24726, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19555,14 +21797,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 24789, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 24795, "elements": [ { + "commentStart": 24804, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -19574,6 +21819,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 24831, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -19593,11 +21839,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 24784, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 24784, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19609,14 +21857,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 24869, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 24875, "elements": [ { + "commentStart": 24876, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -19628,6 +21879,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 24896, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -19647,11 +21899,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 24864, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 24864, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19663,15 +21917,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 24927, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 24933, "elements": [ { "argument": { + "commentStart": 24943, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -19682,6 +21939,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 24942, "end": 0, "operator": "-", "start": 0, @@ -19690,6 +21948,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 24972, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -19700,6 +21959,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 24971, "end": 0, "operator": "-", "start": 0, @@ -19715,11 +21975,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 24922, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 24922, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19731,14 +21993,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 25009, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 25015, "elements": [ { + "commentStart": 25024, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -19751,6 +22016,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 25052, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -19761,6 +22027,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 25051, "end": 0, "operator": "-", "start": 0, @@ -19776,11 +22043,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 25004, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 25004, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19792,15 +22061,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 25089, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 25095, "elements": [ { "argument": { + "commentStart": 25105, "end": 0, "raw": "0.6716353749059765", "start": 0, @@ -19811,6 +22083,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 25104, "end": 0, "operator": "-", "start": 0, @@ -19819,6 +22092,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 25133, "end": 0, "raw": "0.9605576808879026", "start": 0, @@ -19829,6 +22103,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 25132, "end": 0, "operator": "-", "start": 0, @@ -19844,11 +22119,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 25084, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 25084, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19860,14 +22137,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 25170, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 25176, "elements": [ { + "commentStart": 25185, "end": 0, "raw": "0.010280170930300203", "start": 0, @@ -19880,6 +22160,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 25215, "end": 0, "raw": "0.37344123662342166", "start": 0, @@ -19890,6 +22171,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 25214, "end": 0, "operator": "-", "start": 0, @@ -19905,11 +22187,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 25165, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 25165, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19921,14 +22205,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 25253, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 25259, "elements": [ { + "commentStart": 25268, "end": 0, "raw": "0.10357375682791004", "start": 0, @@ -19941,6 +22228,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 25297, "end": 0, "raw": "0.42294321030821425", "start": 0, @@ -19951,6 +22239,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 25296, "end": 0, "operator": "-", "start": 0, @@ -19966,11 +22255,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 25248, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 25248, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -19982,14 +22273,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 25335, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 25341, "elements": [ { + "commentStart": 25350, "end": 0, "raw": "0.4520311575096987", "start": 0, @@ -20002,6 +22296,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 25378, "end": 0, "raw": "0.11232675307600548", "start": 0, @@ -20012,6 +22307,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 25377, "end": 0, "operator": "-", "start": 0, @@ -20027,11 +22323,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 25330, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 25330, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -20043,15 +22341,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 25416, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 25422, "elements": [ { "argument": { + "commentStart": 25432, "end": 0, "raw": "0.8821185914380845", "start": 0, @@ -20062,6 +22363,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 25431, "end": 0, "operator": "-", "start": 0, @@ -20070,6 +22372,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 25460, "end": 0, "raw": "0.7155147434939819", "start": 0, @@ -20080,6 +22383,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 25459, "end": 0, "operator": "-", "start": 0, @@ -20095,11 +22399,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 25411, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 25411, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -20111,14 +22417,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 25497, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 25503, "elements": [ { + "commentStart": 25504, "end": 0, "raw": "0.9195487101690416", "start": 0, @@ -20130,6 +22439,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 25524, "end": 0, "raw": "0.2691627465297364", "start": 0, @@ -20149,11 +22459,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 25492, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 25492, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -20165,14 +22477,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 25555, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 25561, "elements": [ { + "commentStart": 25570, "end": 0, "raw": "0.7098978191546745", "start": 0, @@ -20184,6 +22499,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 25597, "end": 0, "raw": "0.11710004169385968", "start": 0, @@ -20203,11 +22519,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 25550, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 25550, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -20219,15 +22537,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 25635, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 25641, "elements": [ { "argument": { + "commentStart": 25651, "end": 0, "raw": "0.37876368560819995", "start": 0, @@ -20238,6 +22559,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 25650, "end": 0, "operator": "-", "start": 0, @@ -20245,6 +22567,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 25679, "end": 0, "raw": "0.7106729314759084", "start": 0, @@ -20264,11 +22587,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 25630, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 25630, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -20280,15 +22605,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 25716, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 25722, "elements": [ { "argument": { + "commentStart": 25732, "end": 0, "raw": "0.29728126898353335", "start": 0, @@ -20299,6 +22627,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 25731, "end": 0, "operator": "-", "start": 0, @@ -20307,6 +22636,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 25761, "end": 0, "raw": "0.06649734568328003", "start": 0, @@ -20317,6 +22647,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 25760, "end": 0, "operator": "-", "start": 0, @@ -20332,11 +22663,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 25711, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 25711, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -20348,14 +22681,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 25799, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 25805, "elements": [ { + "commentStart": 25814, "end": 0, "raw": "0.22965781558352072", "start": 0, @@ -20368,6 +22704,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 25843, "end": 0, "raw": "0.7601866432836641", "start": 0, @@ -20378,6 +22715,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 25842, "end": 0, "operator": "-", "start": 0, @@ -20393,11 +22731,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 25794, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 25794, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -20409,15 +22749,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 25880, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 25886, "elements": [ { "argument": { + "commentStart": 25896, "end": 0, "raw": "0.6356501074317229", "start": 0, @@ -20428,6 +22771,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 25895, "end": 0, "operator": "-", "start": 0, @@ -20435,6 +22779,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 25923, "end": 0, "raw": "0.19458425399338064", "start": 0, @@ -20454,11 +22799,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 25875, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 25875, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -20470,14 +22817,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 25961, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 25967, "elements": [ { + "commentStart": 25968, "end": 0, "raw": "0.5721251777404546", "start": 0, @@ -20489,6 +22839,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 25988, "end": 0, "raw": "0.2888584097921527", "start": 0, @@ -20508,11 +22859,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 25956, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 25956, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -20524,15 +22877,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 26019, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 26025, "elements": [ { "argument": { + "commentStart": 26035, "end": 0, "raw": "0.9580409549552311", "start": 0, @@ -20543,6 +22899,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 26034, "end": 0, "operator": "-", "start": 0, @@ -20551,6 +22908,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 26063, "end": 0, "raw": "0.02243818192078395", "start": 0, @@ -20561,6 +22919,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 26062, "end": 0, "operator": "-", "start": 0, @@ -20576,11 +22935,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 26014, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 26014, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -20592,14 +22953,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 26101, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 26107, "elements": [ { + "commentStart": 26116, "end": 0, "raw": "0.3299184618602866", "start": 0, @@ -20612,6 +22976,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 26144, "end": 0, "raw": "0.8353726942369875", "start": 0, @@ -20622,6 +22987,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 26143, "end": 0, "operator": "-", "start": 0, @@ -20637,11 +23003,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 26096, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 26096, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -20653,14 +23021,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 26181, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 26187, "elements": [ { + "commentStart": 26196, "end": 0, "raw": "0.7434639386755209", "start": 0, @@ -20673,6 +23044,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 26224, "end": 0, "raw": "0.7919648864138378", "start": 0, @@ -20683,6 +23055,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 26223, "end": 0, "operator": "-", "start": 0, @@ -20698,11 +23071,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 26176, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 26176, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -20714,14 +23089,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 26261, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 26267, "elements": [ { + "commentStart": 26268, "end": 0, "raw": "0.9935751011164615", "start": 0, @@ -20733,6 +23111,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 26288, "end": 0, "raw": "0.9042566468497608", "start": 0, @@ -20752,11 +23131,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 26256, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 26256, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -20768,15 +23149,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 26319, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 26325, "elements": [ { "argument": { + "commentStart": 26335, "end": 0, "raw": "0.5035812884687294", "start": 0, @@ -20787,6 +23171,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 26334, "end": 0, "operator": "-", "start": 0, @@ -20794,6 +23179,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 26362, "end": 0, "raw": "0.5150967434989442", "start": 0, @@ -20813,11 +23199,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 26314, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 26314, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -20829,14 +23217,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 26399, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 26405, "elements": [ { + "commentStart": 26406, "end": 0, "raw": "0.5526227215900215", "start": 0, @@ -20848,6 +23239,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 26426, "end": 0, "raw": "0.7612604137272441", "start": 0, @@ -20867,11 +23259,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 26394, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 26394, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -20883,14 +23277,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 26457, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 26463, "elements": [ { + "commentStart": 26472, "end": 0, "raw": "0.8593271349126876", "start": 0, @@ -20902,6 +23299,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 26499, "end": 0, "raw": "0.08414894953725849", "start": 0, @@ -20921,11 +23319,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 26452, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 26452, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -20937,15 +23337,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 26537, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 26543, "elements": [ { "argument": { + "commentStart": 26553, "end": 0, "raw": "0.8181049219192864", "start": 0, @@ -20956,6 +23359,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 26552, "end": 0, "operator": "-", "start": 0, @@ -20964,6 +23368,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 26581, "end": 0, "raw": "0.903548131323352", "start": 0, @@ -20974,6 +23379,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 26580, "end": 0, "operator": "-", "start": 0, @@ -20989,11 +23395,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 26532, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 26532, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -21005,14 +23413,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 26617, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 26623, "elements": [ { + "commentStart": 26632, "end": 0, "raw": "0.3165782044458305", "start": 0, @@ -21025,6 +23436,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 26660, "end": 0, "raw": "0.24189274252014914", "start": 0, @@ -21035,6 +23447,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 26659, "end": 0, "operator": "-", "start": 0, @@ -21050,11 +23463,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 26612, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 26612, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -21066,15 +23481,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 26698, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 26704, "elements": [ { "argument": { + "commentStart": 26714, "end": 0, "raw": "0.44390956414045135", "start": 0, @@ -21085,6 +23503,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 26713, "end": 0, "operator": "-", "start": 0, @@ -21093,6 +23512,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 26743, "end": 0, "raw": "0.25912591535126905", "start": 0, @@ -21103,6 +23523,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 26742, "end": 0, "operator": "-", "start": 0, @@ -21118,11 +23539,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 26693, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 26693, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -21134,15 +23557,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 26781, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 26787, "elements": [ { "argument": { + "commentStart": 26797, "end": 0, "raw": "0.6605165911891009", "start": 0, @@ -21153,6 +23579,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 26796, "end": 0, "operator": "-", "start": 0, @@ -21161,6 +23588,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 26825, "end": 0, "raw": "0.40355115288839194", "start": 0, @@ -21171,6 +23599,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 26824, "end": 0, "operator": "-", "start": 0, @@ -21186,11 +23615,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 26776, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 26776, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -21202,15 +23633,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 26863, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 26869, "elements": [ { "argument": { + "commentStart": 26879, "end": 0, "raw": "0.7170489950180006", "start": 0, @@ -21221,6 +23655,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 26878, "end": 0, "operator": "-", "start": 0, @@ -21228,6 +23663,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 26906, "end": 0, "raw": "0.23454356079651384", "start": 0, @@ -21247,11 +23683,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 26858, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 26858, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -21263,15 +23701,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 26944, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 26950, "elements": [ { "argument": { + "commentStart": 26960, "end": 0, "raw": "0.2568187045379722", "start": 0, @@ -21282,6 +23723,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 26959, "end": 0, "operator": "-", "start": 0, @@ -21290,6 +23732,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 26988, "end": 0, "raw": "0.45031188717601367", "start": 0, @@ -21300,6 +23743,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 26987, "end": 0, "operator": "-", "start": 0, @@ -21315,11 +23759,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 26939, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 26939, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -21331,14 +23777,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 27026, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 27032, "elements": [ { + "commentStart": 27041, "end": 0, "raw": "0.6751951211858687", "start": 0, @@ -21351,6 +23800,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 27069, "end": 0, "raw": "0.9709424233465593", "start": 0, @@ -21361,6 +23811,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 27068, "end": 0, "operator": "-", "start": 0, @@ -21376,11 +23827,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 27021, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 27021, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -21392,15 +23845,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 27106, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 27112, "elements": [ { "argument": { + "commentStart": 27122, "end": 0, "raw": "0.5689619842972184", "start": 0, @@ -21411,6 +23867,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 27121, "end": 0, "operator": "-", "start": 0, @@ -21418,6 +23875,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 27149, "end": 0, "raw": "0.5918969913790362", "start": 0, @@ -21437,11 +23895,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 27101, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 27101, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -21453,15 +23913,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 27186, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 27192, "elements": [ { "argument": { + "commentStart": 27202, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -21472,6 +23935,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 27201, "end": 0, "operator": "-", "start": 0, @@ -21479,6 +23943,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 27229, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -21498,11 +23963,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 27181, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 27181, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -21514,15 +23981,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 27266, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 27272, "elements": [ { "argument": { + "commentStart": 27282, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -21533,6 +24003,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 27281, "end": 0, "operator": "-", "start": 0, @@ -21541,6 +24012,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 27310, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -21551,6 +24023,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 27309, "end": 0, "operator": "-", "start": 0, @@ -21566,11 +24039,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 27261, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 27261, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -21582,14 +24057,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 27348, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 27354, "elements": [ { + "commentStart": 27363, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -21601,6 +24079,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 27391, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -21620,11 +24099,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 27343, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 27343, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -21636,14 +24117,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 27429, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 27435, "elements": [ { + "commentStart": 27444, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -21655,6 +24139,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 27472, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -21674,11 +24159,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 27424, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 27424, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -21690,15 +24177,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 27510, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 27516, "elements": [ { "argument": { + "commentStart": 27526, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -21709,6 +24199,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 27525, "end": 0, "operator": "-", "start": 0, @@ -21716,6 +24207,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 27554, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -21735,11 +24227,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 27505, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 27505, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -21751,15 +24245,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 27591, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 27597, "elements": [ { "argument": { + "commentStart": 27607, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -21770,6 +24267,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 27606, "end": 0, "operator": "-", "start": 0, @@ -21778,6 +24276,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 27636, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -21788,6 +24287,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 27635, "end": 0, "operator": "-", "start": 0, @@ -21803,11 +24303,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 27586, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 27586, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -21819,14 +24321,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 27674, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 27680, "elements": [ { + "commentStart": 27689, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -21839,6 +24344,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 27717, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -21849,6 +24355,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 27716, "end": 0, "operator": "-", "start": 0, @@ -21864,11 +24371,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 27669, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 27669, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -21880,14 +24389,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 27755, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 27761, "elements": [ { + "commentStart": 27770, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -21900,6 +24412,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 27801, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -21910,6 +24423,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 27800, "end": 0, "operator": "-", "start": 0, @@ -21925,11 +24439,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 27750, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 27750, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -21941,14 +24457,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 27838, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 27844, "elements": [ { + "commentStart": 27853, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -21961,6 +24480,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 27881, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -21971,6 +24491,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 27880, "end": 0, "operator": "-", "start": 0, @@ -21986,11 +24507,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 27833, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 27833, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22002,15 +24525,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 27918, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 27924, "elements": [ { "argument": { + "commentStart": 27934, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -22021,6 +24547,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 27933, "end": 0, "operator": "-", "start": 0, @@ -22028,6 +24555,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 27961, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -22047,11 +24575,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 27913, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 27913, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22063,14 +24593,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 27998, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 28004, "elements": [ { + "commentStart": 28005, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -22082,6 +24615,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 28025, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -22101,11 +24635,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 27993, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 27993, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22117,15 +24653,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 28056, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 28062, "elements": [ { "argument": { + "commentStart": 28072, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -22136,6 +24675,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 28071, "end": 0, "operator": "-", "start": 0, @@ -22143,6 +24683,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 28100, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -22162,11 +24703,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 28051, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 28051, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22178,15 +24721,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 28139, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 28145, "elements": [ { "argument": { + "commentStart": 28155, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -22197,6 +24743,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 28154, "end": 0, "operator": "-", "start": 0, @@ -22205,6 +24752,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 28183, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -22215,6 +24763,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 28182, "end": 0, "operator": "-", "start": 0, @@ -22230,11 +24779,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 28134, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 28134, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22246,15 +24797,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 28221, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 28227, "elements": [ { "argument": { + "commentStart": 28237, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -22265,6 +24819,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 28236, "end": 0, "operator": "-", "start": 0, @@ -22273,6 +24828,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 28265, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -22283,6 +24839,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 28264, "end": 0, "operator": "-", "start": 0, @@ -22298,11 +24855,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 28216, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 28216, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22314,14 +24873,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 28303, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 28309, "elements": [ { + "commentStart": 28310, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -22333,6 +24895,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 28329, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -22352,11 +24915,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 28298, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 28298, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22368,14 +24933,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 28360, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 28366, "elements": [ { + "commentStart": 28375, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -22388,6 +24956,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 28404, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -22398,6 +24967,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 28403, "end": 0, "operator": "-", "start": 0, @@ -22413,11 +24983,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 28355, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 28355, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22429,14 +25001,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 28442, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 28448, "elements": [ { + "commentStart": 28449, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -22448,6 +25023,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 28469, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -22467,11 +25043,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 28437, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 28437, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22483,14 +25061,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 28499, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 28505, "elements": [ { + "commentStart": 28514, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -22503,6 +25084,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 28543, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -22513,6 +25095,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 28542, "end": 0, "operator": "-", "start": 0, @@ -22528,11 +25111,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 28494, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 28494, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22544,14 +25129,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 28580, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 28586, "elements": [ { + "commentStart": 28587, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -22563,6 +25151,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 28607, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -22582,11 +25171,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 28575, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 28575, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22598,14 +25189,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 28638, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 28644, "elements": [ { + "commentStart": 28653, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -22617,6 +25211,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 28680, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -22636,11 +25231,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 28633, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 28633, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22652,14 +25249,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 28718, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 28724, "elements": [ { + "commentStart": 28725, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -22671,6 +25271,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 28745, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -22690,11 +25291,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 28713, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 28713, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22706,15 +25309,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 28776, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 28782, "elements": [ { "argument": { + "commentStart": 28792, "end": 0, "raw": "0.3670208139314082", "start": 0, @@ -22725,6 +25331,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 28791, "end": 0, "operator": "-", "start": 0, @@ -22732,6 +25339,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 28819, "end": 0, "raw": "0.21201331909674526", "start": 0, @@ -22751,11 +25359,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 28771, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 28771, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22767,15 +25377,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 28857, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 28863, "elements": [ { "argument": { + "commentStart": 28873, "end": 0, "raw": "0.4707511307971115", "start": 0, @@ -22786,6 +25399,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 28872, "end": 0, "operator": "-", "start": 0, @@ -22793,6 +25407,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 28900, "end": 0, "raw": "0.4905279615419764", "start": 0, @@ -22812,11 +25427,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 28852, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 28852, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22828,15 +25445,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 28937, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 28943, "elements": [ { "argument": { + "commentStart": 28953, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -22847,6 +25467,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 28952, "end": 0, "operator": "-", "start": 0, @@ -22854,6 +25475,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 28980, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -22873,11 +25495,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 28932, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 28932, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22889,15 +25513,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 29017, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 29023, "elements": [ { "argument": { + "commentStart": 29033, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -22908,6 +25535,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 29032, "end": 0, "operator": "-", "start": 0, @@ -22916,6 +25544,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 29061, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -22926,6 +25555,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 29060, "end": 0, "operator": "-", "start": 0, @@ -22941,11 +25571,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 29012, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 29012, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -22957,14 +25589,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 29099, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 29105, "elements": [ { + "commentStart": 29114, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -22976,6 +25611,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 29142, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -22995,11 +25631,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 29094, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 29094, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23011,14 +25649,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 29180, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 29186, "elements": [ { + "commentStart": 29195, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -23030,6 +25671,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 29223, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -23049,11 +25691,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 29175, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 29175, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23065,15 +25709,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 29261, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 29267, "elements": [ { "argument": { + "commentStart": 29277, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -23084,6 +25731,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 29276, "end": 0, "operator": "-", "start": 0, @@ -23091,6 +25739,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 29305, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -23110,11 +25759,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 29256, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 29256, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23126,15 +25777,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 29342, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 29348, "elements": [ { "argument": { + "commentStart": 29358, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -23145,6 +25799,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 29357, "end": 0, "operator": "-", "start": 0, @@ -23153,6 +25808,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 29387, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -23163,6 +25819,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 29386, "end": 0, "operator": "-", "start": 0, @@ -23178,11 +25835,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 29337, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 29337, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23194,14 +25853,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 29425, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 29431, "elements": [ { + "commentStart": 29440, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -23214,6 +25876,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 29468, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -23224,6 +25887,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 29467, "end": 0, "operator": "-", "start": 0, @@ -23239,11 +25903,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 29420, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 29420, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23255,14 +25921,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 29506, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 29512, "elements": [ { + "commentStart": 29521, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -23275,6 +25944,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 29552, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -23285,6 +25955,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 29551, "end": 0, "operator": "-", "start": 0, @@ -23300,11 +25971,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 29501, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 29501, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23316,14 +25989,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 29589, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 29595, "elements": [ { + "commentStart": 29604, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -23336,6 +26012,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 29632, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -23346,6 +26023,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 29631, "end": 0, "operator": "-", "start": 0, @@ -23361,11 +26039,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 29584, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 29584, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23377,15 +26057,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 29669, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 29675, "elements": [ { "argument": { + "commentStart": 29685, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -23396,6 +26079,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 29684, "end": 0, "operator": "-", "start": 0, @@ -23403,6 +26087,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 29712, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -23422,11 +26107,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 29664, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 29664, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23438,14 +26125,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 29749, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 29755, "elements": [ { + "commentStart": 29756, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -23457,6 +26147,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 29776, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -23476,11 +26167,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 29744, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 29744, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23492,15 +26185,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 29807, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 29813, "elements": [ { "argument": { + "commentStart": 29823, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -23511,6 +26207,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 29822, "end": 0, "operator": "-", "start": 0, @@ -23518,6 +26215,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 29851, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -23537,11 +26235,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 29802, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 29802, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23553,15 +26253,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 29890, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 29896, "elements": [ { "argument": { + "commentStart": 29906, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -23572,6 +26275,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 29905, "end": 0, "operator": "-", "start": 0, @@ -23580,6 +26284,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 29934, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -23590,6 +26295,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 29933, "end": 0, "operator": "-", "start": 0, @@ -23605,11 +26311,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 29885, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 29885, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23621,15 +26329,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 29972, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 29978, "elements": [ { "argument": { + "commentStart": 29988, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -23640,6 +26351,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 29987, "end": 0, "operator": "-", "start": 0, @@ -23648,6 +26360,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 30016, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -23658,6 +26371,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 30015, "end": 0, "operator": "-", "start": 0, @@ -23673,11 +26387,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 29967, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 29967, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23689,14 +26405,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 30054, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 30060, "elements": [ { + "commentStart": 30061, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -23708,6 +26427,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 30080, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -23727,11 +26447,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 30049, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 30049, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23743,14 +26465,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 30111, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 30117, "elements": [ { + "commentStart": 30126, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -23763,6 +26488,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 30155, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -23773,6 +26499,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 30154, "end": 0, "operator": "-", "start": 0, @@ -23788,11 +26515,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 30106, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 30106, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23804,14 +26533,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 30193, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 30199, "elements": [ { + "commentStart": 30200, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -23823,6 +26555,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 30220, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -23842,11 +26575,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 30188, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 30188, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23858,14 +26593,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 30250, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 30256, "elements": [ { + "commentStart": 30265, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -23878,6 +26616,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 30294, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -23888,6 +26627,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 30293, "end": 0, "operator": "-", "start": 0, @@ -23903,11 +26643,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 30245, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 30245, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23919,14 +26661,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 30331, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 30337, "elements": [ { + "commentStart": 30338, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -23938,6 +26683,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 30358, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -23957,11 +26703,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 30326, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 30326, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -23973,14 +26721,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 30389, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 30395, "elements": [ { + "commentStart": 30404, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -23992,6 +26743,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 30431, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -24011,11 +26763,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 30384, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 30384, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -24027,14 +26781,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 30469, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 30475, "elements": [ { + "commentStart": 30476, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -24046,6 +26803,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 30496, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -24065,11 +26823,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 30464, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 30464, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -24081,15 +26841,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 30527, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 30533, "elements": [ { "argument": { + "commentStart": 30543, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -24100,6 +26863,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 30542, "end": 0, "operator": "-", "start": 0, @@ -24108,6 +26872,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 30572, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -24118,6 +26883,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 30571, "end": 0, "operator": "-", "start": 0, @@ -24133,11 +26899,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 30522, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 30522, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -24149,14 +26917,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 30609, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 30615, "elements": [ { + "commentStart": 30624, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -24169,6 +26940,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 30652, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -24179,6 +26951,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 30651, "end": 0, "operator": "-", "start": 0, @@ -24194,11 +26967,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 30604, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 30604, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -24210,15 +26985,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 30689, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 30695, "elements": [ { "argument": { + "commentStart": 30705, "end": 0, "raw": "0.6716353749059765", "start": 0, @@ -24229,6 +27007,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 30704, "end": 0, "operator": "-", "start": 0, @@ -24237,6 +27016,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 30733, "end": 0, "raw": "0.9605576808879026", "start": 0, @@ -24247,6 +27027,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 30732, "end": 0, "operator": "-", "start": 0, @@ -24262,11 +27043,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 30684, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 30684, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -24278,14 +27061,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 30770, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 30776, "elements": [ { + "commentStart": 30785, "end": 0, "raw": "0.010280170930300203", "start": 0, @@ -24298,6 +27084,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 30815, "end": 0, "raw": "0.37344123662342166", "start": 0, @@ -24308,6 +27095,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 30814, "end": 0, "operator": "-", "start": 0, @@ -24323,11 +27111,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 30765, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 30765, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -24339,14 +27129,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 30853, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 30859, "elements": [ { + "commentStart": 30868, "end": 0, "raw": "0.10357375682791004", "start": 0, @@ -24359,6 +27152,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 30897, "end": 0, "raw": "0.42294321030821425", "start": 0, @@ -24369,6 +27163,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 30896, "end": 0, "operator": "-", "start": 0, @@ -24384,11 +27179,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 30848, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 30848, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -24400,14 +27197,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 30935, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 30941, "elements": [ { + "commentStart": 30950, "end": 0, "raw": "0.4520311575096987", "start": 0, @@ -24420,6 +27220,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 30978, "end": 0, "raw": "0.11232675307600548", "start": 0, @@ -24430,6 +27231,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 30977, "end": 0, "operator": "-", "start": 0, @@ -24445,11 +27247,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 30930, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 30930, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -24461,15 +27265,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 31016, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 31022, "elements": [ { "argument": { + "commentStart": 31032, "end": 0, "raw": "0.8821185914380845", "start": 0, @@ -24480,6 +27287,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 31031, "end": 0, "operator": "-", "start": 0, @@ -24488,6 +27296,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 31060, "end": 0, "raw": "0.7155147434939819", "start": 0, @@ -24498,6 +27307,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 31059, "end": 0, "operator": "-", "start": 0, @@ -24513,11 +27323,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 31011, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 31011, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -24529,14 +27341,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 31097, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 31103, "elements": [ { + "commentStart": 31104, "end": 0, "raw": "0.9195487101690416", "start": 0, @@ -24548,6 +27363,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 31124, "end": 0, "raw": "0.2691627465297364", "start": 0, @@ -24567,11 +27383,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 31092, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 31092, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -24583,14 +27401,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 31155, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 31161, "elements": [ { + "commentStart": 31170, "end": 0, "raw": "0.7098978191546745", "start": 0, @@ -24602,6 +27423,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 31197, "end": 0, "raw": "0.11710004169385968", "start": 0, @@ -24621,11 +27443,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 31150, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 31150, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -24637,15 +27461,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 31235, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 31241, "elements": [ { "argument": { + "commentStart": 31251, "end": 0, "raw": "0.37876368560819995", "start": 0, @@ -24656,6 +27483,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 31250, "end": 0, "operator": "-", "start": 0, @@ -24663,6 +27491,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 31279, "end": 0, "raw": "0.7106729314759084", "start": 0, @@ -24682,11 +27511,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 31230, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 31230, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -24698,15 +27529,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 31316, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 31322, "elements": [ { "argument": { + "commentStart": 31332, "end": 0, "raw": "0.29728126898353335", "start": 0, @@ -24717,6 +27551,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 31331, "end": 0, "operator": "-", "start": 0, @@ -24725,6 +27560,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 31361, "end": 0, "raw": "0.06649734568328003", "start": 0, @@ -24735,6 +27571,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 31360, "end": 0, "operator": "-", "start": 0, @@ -24750,11 +27587,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 31311, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 31311, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -24766,14 +27605,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 31399, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 31405, "elements": [ { + "commentStart": 31414, "end": 0, "raw": "0.22965781558352072", "start": 0, @@ -24786,6 +27628,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 31443, "end": 0, "raw": "0.7601866432836641", "start": 0, @@ -24796,6 +27639,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 31442, "end": 0, "operator": "-", "start": 0, @@ -24811,11 +27655,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 31394, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 31394, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -24827,15 +27673,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 31480, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 31486, "elements": [ { "argument": { + "commentStart": 31496, "end": 0, "raw": "0.6356501074317229", "start": 0, @@ -24846,6 +27695,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 31495, "end": 0, "operator": "-", "start": 0, @@ -24853,6 +27703,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 31523, "end": 0, "raw": "0.19458425399338064", "start": 0, @@ -24872,11 +27723,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 31475, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 31475, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -24888,14 +27741,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 31561, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 31567, "elements": [ { + "commentStart": 31568, "end": 0, "raw": "0.5721251777404546", "start": 0, @@ -24907,6 +27763,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 31588, "end": 0, "raw": "0.2888584097921527", "start": 0, @@ -24926,11 +27783,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 31556, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 31556, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -24942,15 +27801,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 31619, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 31625, "elements": [ { "argument": { + "commentStart": 31635, "end": 0, "raw": "0.9580409549552311", "start": 0, @@ -24961,6 +27823,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 31634, "end": 0, "operator": "-", "start": 0, @@ -24969,6 +27832,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 31663, "end": 0, "raw": "0.02243818192078395", "start": 0, @@ -24979,6 +27843,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 31662, "end": 0, "operator": "-", "start": 0, @@ -24994,11 +27859,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 31614, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 31614, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -25010,14 +27877,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 31701, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 31707, "elements": [ { + "commentStart": 31716, "end": 0, "raw": "0.3299184618602866", "start": 0, @@ -25030,6 +27900,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 31744, "end": 0, "raw": "0.8353726942369875", "start": 0, @@ -25040,6 +27911,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 31743, "end": 0, "operator": "-", "start": 0, @@ -25055,11 +27927,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 31696, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 31696, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -25071,14 +27945,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 31781, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 31787, "elements": [ { + "commentStart": 31796, "end": 0, "raw": "0.7434639386755209", "start": 0, @@ -25091,6 +27968,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 31824, "end": 0, "raw": "0.7919648864138378", "start": 0, @@ -25101,6 +27979,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 31823, "end": 0, "operator": "-", "start": 0, @@ -25116,11 +27995,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 31776, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 31776, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -25132,14 +28013,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 31861, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 31867, "elements": [ { + "commentStart": 31868, "end": 0, "raw": "0.9935751011164615", "start": 0, @@ -25151,6 +28035,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 31888, "end": 0, "raw": "0.9042566468497608", "start": 0, @@ -25170,11 +28055,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 31856, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 31856, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -25186,15 +28073,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 31919, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 31925, "elements": [ { "argument": { + "commentStart": 31935, "end": 0, "raw": "0.5035812884687294", "start": 0, @@ -25205,6 +28095,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 31934, "end": 0, "operator": "-", "start": 0, @@ -25212,6 +28103,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 31962, "end": 0, "raw": "0.5150967434989442", "start": 0, @@ -25231,11 +28123,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 31914, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 31914, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -25247,14 +28141,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 31999, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 32005, "elements": [ { + "commentStart": 32006, "end": 0, "raw": "0.5526227215900215", "start": 0, @@ -25266,6 +28163,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 32026, "end": 0, "raw": "0.7612604137272441", "start": 0, @@ -25285,11 +28183,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 31994, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 31994, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -25301,14 +28201,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 32057, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 32063, "elements": [ { + "commentStart": 32072, "end": 0, "raw": "0.8593271349126876", "start": 0, @@ -25320,6 +28223,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 32099, "end": 0, "raw": "0.08414894953725849", "start": 0, @@ -25339,11 +28243,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 32052, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 32052, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -25355,15 +28261,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 32137, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 32143, "elements": [ { "argument": { + "commentStart": 32153, "end": 0, "raw": "0.8181049219192864", "start": 0, @@ -25374,6 +28283,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 32152, "end": 0, "operator": "-", "start": 0, @@ -25382,6 +28292,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 32181, "end": 0, "raw": "0.903548131323352", "start": 0, @@ -25392,6 +28303,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 32180, "end": 0, "operator": "-", "start": 0, @@ -25407,11 +28319,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 32132, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 32132, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -25423,14 +28337,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 32217, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 32223, "elements": [ { + "commentStart": 32232, "end": 0, "raw": "0.3165782044458305", "start": 0, @@ -25443,6 +28360,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 32260, "end": 0, "raw": "0.24189274252014914", "start": 0, @@ -25453,6 +28371,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 32259, "end": 0, "operator": "-", "start": 0, @@ -25468,11 +28387,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 32212, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 32212, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -25484,15 +28405,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 32298, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 32304, "elements": [ { "argument": { + "commentStart": 32314, "end": 0, "raw": "0.44390956414045135", "start": 0, @@ -25503,6 +28427,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 32313, "end": 0, "operator": "-", "start": 0, @@ -25511,6 +28436,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 32343, "end": 0, "raw": "0.25912591535126905", "start": 0, @@ -25521,6 +28447,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 32342, "end": 0, "operator": "-", "start": 0, @@ -25536,11 +28463,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 32293, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 32293, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -25552,15 +28481,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 32381, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 32387, "elements": [ { "argument": { + "commentStart": 32397, "end": 0, "raw": "0.6605165911891009", "start": 0, @@ -25571,6 +28503,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 32396, "end": 0, "operator": "-", "start": 0, @@ -25579,6 +28512,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 32425, "end": 0, "raw": "0.40355115288839194", "start": 0, @@ -25589,6 +28523,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 32424, "end": 0, "operator": "-", "start": 0, @@ -25604,11 +28539,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 32376, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 32376, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -25620,15 +28557,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 32463, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 32469, "elements": [ { "argument": { + "commentStart": 32479, "end": 0, "raw": "0.7170489950180006", "start": 0, @@ -25639,6 +28579,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 32478, "end": 0, "operator": "-", "start": 0, @@ -25646,6 +28587,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 32506, "end": 0, "raw": "0.23454356079651384", "start": 0, @@ -25665,11 +28607,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 32458, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 32458, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -25681,15 +28625,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 32544, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 32550, "elements": [ { "argument": { + "commentStart": 32560, "end": 0, "raw": "0.2568187045379722", "start": 0, @@ -25700,6 +28647,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 32559, "end": 0, "operator": "-", "start": 0, @@ -25708,6 +28656,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 32588, "end": 0, "raw": "0.45031188717601367", "start": 0, @@ -25718,6 +28667,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 32587, "end": 0, "operator": "-", "start": 0, @@ -25733,11 +28683,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 32539, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 32539, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -25749,14 +28701,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 32626, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 32632, "elements": [ { + "commentStart": 32641, "end": 0, "raw": "0.6751951211858687", "start": 0, @@ -25769,6 +28724,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 32669, "end": 0, "raw": "0.9709424233465593", "start": 0, @@ -25779,6 +28735,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 32668, "end": 0, "operator": "-", "start": 0, @@ -25794,11 +28751,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 32621, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 32621, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -25810,15 +28769,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 32706, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 32712, "elements": [ { "argument": { + "commentStart": 32722, "end": 0, "raw": "0.5689619842972184", "start": 0, @@ -25829,6 +28791,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 32721, "end": 0, "operator": "-", "start": 0, @@ -25836,6 +28799,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 32749, "end": 0, "raw": "0.5918969913790362", "start": 0, @@ -25855,11 +28819,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 32701, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 32701, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -25871,15 +28837,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 32786, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 32792, "elements": [ { "argument": { + "commentStart": 32802, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -25890,6 +28859,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 32801, "end": 0, "operator": "-", "start": 0, @@ -25897,6 +28867,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 32829, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -25916,11 +28887,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 32781, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 32781, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -25932,15 +28905,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 32866, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 32872, "elements": [ { "argument": { + "commentStart": 32882, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -25951,6 +28927,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 32881, "end": 0, "operator": "-", "start": 0, @@ -25959,6 +28936,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 32910, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -25969,6 +28947,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 32909, "end": 0, "operator": "-", "start": 0, @@ -25984,11 +28963,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 32861, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 32861, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26000,14 +28981,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 32948, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 32954, "elements": [ { + "commentStart": 32963, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -26019,6 +29003,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 32991, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -26038,11 +29023,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 32943, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 32943, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26054,14 +29041,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 33029, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 33035, "elements": [ { + "commentStart": 33044, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -26073,6 +29063,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 33072, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -26092,11 +29083,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 33024, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 33024, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26108,15 +29101,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 33110, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 33116, "elements": [ { "argument": { + "commentStart": 33126, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -26127,6 +29123,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 33125, "end": 0, "operator": "-", "start": 0, @@ -26134,6 +29131,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 33154, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -26153,11 +29151,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 33105, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 33105, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26169,15 +29169,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 33191, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 33197, "elements": [ { "argument": { + "commentStart": 33207, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -26188,6 +29191,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 33206, "end": 0, "operator": "-", "start": 0, @@ -26196,6 +29200,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 33236, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -26206,6 +29211,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 33235, "end": 0, "operator": "-", "start": 0, @@ -26221,11 +29227,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 33186, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 33186, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26237,14 +29245,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 33274, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 33280, "elements": [ { + "commentStart": 33289, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -26257,6 +29268,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 33317, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -26267,6 +29279,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 33316, "end": 0, "operator": "-", "start": 0, @@ -26282,11 +29295,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 33269, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 33269, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26298,14 +29313,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 33355, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 33361, "elements": [ { + "commentStart": 33370, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -26318,6 +29336,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 33401, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -26328,6 +29347,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 33400, "end": 0, "operator": "-", "start": 0, @@ -26343,11 +29363,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 33350, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 33350, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26359,14 +29381,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 33438, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 33444, "elements": [ { + "commentStart": 33453, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -26379,6 +29404,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 33481, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -26389,6 +29415,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 33480, "end": 0, "operator": "-", "start": 0, @@ -26404,11 +29431,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 33433, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 33433, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26420,15 +29449,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 33518, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 33524, "elements": [ { "argument": { + "commentStart": 33534, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -26439,6 +29471,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 33533, "end": 0, "operator": "-", "start": 0, @@ -26446,6 +29479,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 33561, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -26465,11 +29499,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 33513, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 33513, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26481,14 +29517,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 33598, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 33604, "elements": [ { + "commentStart": 33605, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -26500,6 +29539,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 33625, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -26519,11 +29559,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 33593, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 33593, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26535,15 +29577,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 33656, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 33662, "elements": [ { "argument": { + "commentStart": 33672, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -26554,6 +29599,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 33671, "end": 0, "operator": "-", "start": 0, @@ -26561,6 +29607,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 33700, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -26580,11 +29627,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 33651, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 33651, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26596,15 +29645,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 33739, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 33745, "elements": [ { "argument": { + "commentStart": 33755, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -26615,6 +29667,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 33754, "end": 0, "operator": "-", "start": 0, @@ -26623,6 +29676,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 33783, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -26633,6 +29687,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 33782, "end": 0, "operator": "-", "start": 0, @@ -26648,11 +29703,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 33734, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 33734, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26664,15 +29721,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 33821, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 33827, "elements": [ { "argument": { + "commentStart": 33837, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -26683,6 +29743,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 33836, "end": 0, "operator": "-", "start": 0, @@ -26691,6 +29752,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 33865, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -26701,6 +29763,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 33864, "end": 0, "operator": "-", "start": 0, @@ -26716,11 +29779,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 33816, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 33816, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26732,14 +29797,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 33903, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 33909, "elements": [ { + "commentStart": 33910, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -26751,6 +29819,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 33929, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -26770,11 +29839,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 33898, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 33898, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26786,14 +29857,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 33960, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 33966, "elements": [ { + "commentStart": 33975, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -26806,6 +29880,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 34004, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -26816,6 +29891,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 34003, "end": 0, "operator": "-", "start": 0, @@ -26831,11 +29907,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 33955, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 33955, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26847,14 +29925,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 34042, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 34048, "elements": [ { + "commentStart": 34049, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -26866,6 +29947,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 34069, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -26885,11 +29967,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 34037, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 34037, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26901,14 +29985,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 34099, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 34105, "elements": [ { + "commentStart": 34114, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -26921,6 +30008,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 34143, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -26931,6 +30019,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 34142, "end": 0, "operator": "-", "start": 0, @@ -26946,11 +30035,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 34094, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 34094, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -26962,14 +30053,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 34180, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 34186, "elements": [ { + "commentStart": 34187, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -26981,6 +30075,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 34207, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -27000,11 +30095,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 34175, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 34175, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -27016,14 +30113,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 34238, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 34244, "elements": [ { + "commentStart": 34253, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -27035,6 +30135,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 34280, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -27054,11 +30155,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 34233, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 34233, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -27070,15 +30173,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 34318, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 34324, "elements": [ { "argument": { + "commentStart": 34334, "end": 0, "raw": "0.09582414374469184", "start": 0, @@ -27089,6 +30195,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 34333, "end": 0, "operator": "-", "start": 0, @@ -27097,6 +30204,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 34363, "end": 0, "raw": "0.7533839681212353", "start": 0, @@ -27107,6 +30215,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 34362, "end": 0, "operator": "-", "start": 0, @@ -27122,11 +30231,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 34313, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 34313, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -27138,15 +30249,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 34400, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 34406, "elements": [ { "argument": { + "commentStart": 34416, "end": 0, "raw": "0.17254116580051848", "start": 0, @@ -27157,6 +30271,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 34415, "end": 0, "operator": "-", "start": 0, @@ -27165,6 +30280,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 34445, "end": 0, "raw": "0.7669113400341137", "start": 0, @@ -27175,6 +30291,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 34444, "end": 0, "operator": "-", "start": 0, @@ -27190,11 +30307,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 34395, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 34395, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -27206,14 +30325,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 34482, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 34488, "elements": [ { + "commentStart": 34489, "end": 0, "raw": "0.8944730032887609", "start": 0, @@ -27225,6 +30347,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 34509, "end": 0, "raw": "0.6093318694741408", "start": 0, @@ -27244,11 +30367,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 34477, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 34477, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -27260,15 +30385,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 34540, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 34546, "elements": [ { "argument": { + "commentStart": 34556, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -27279,6 +30407,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 34555, "end": 0, "operator": "-", "start": 0, @@ -27287,6 +30416,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 34585, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -27297,6 +30427,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 34584, "end": 0, "operator": "-", "start": 0, @@ -27312,11 +30443,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 34535, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 34535, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -27328,14 +30461,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 34622, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 34628, "elements": [ { + "commentStart": 34637, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -27348,6 +30484,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 34665, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -27358,6 +30495,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 34664, "end": 0, "operator": "-", "start": 0, @@ -27373,11 +30511,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 34617, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 34617, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -27389,14 +30529,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 34702, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 34708, "elements": [ { + "commentStart": 34717, "end": 0, "raw": "0.6751951211858687", "start": 0, @@ -27409,6 +30552,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 34745, "end": 0, "raw": "0.9709424233465593", "start": 0, @@ -27419,6 +30563,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 34744, "end": 0, "operator": "-", "start": 0, @@ -27434,11 +30579,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 34697, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 34697, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -27450,15 +30597,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 34782, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 34788, "elements": [ { "argument": { + "commentStart": 34798, "end": 0, "raw": "0.5689619842972184", "start": 0, @@ -27469,6 +30619,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 34797, "end": 0, "operator": "-", "start": 0, @@ -27476,6 +30627,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 34825, "end": 0, "raw": "0.5918969913790362", "start": 0, @@ -27495,11 +30647,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 34777, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 34777, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -27511,14 +30665,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 34862, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 34868, "elements": [ { + "commentStart": 34877, "end": 0, "raw": "0.9464450621708211", "start": 0, @@ -27531,6 +30688,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 34905, "end": 0, "raw": "0.2684908127803667", "start": 0, @@ -27541,6 +30699,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 34904, "end": 0, "operator": "-", "start": 0, @@ -27556,11 +30715,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 34857, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 34857, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -27572,14 +30733,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 34942, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 34948, "elements": [ { + "commentStart": 34949, "end": 0, "raw": "0.5241732366617591", "start": 0, @@ -27591,6 +30755,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 34969, "end": 0, "raw": "0.9011437416408563", "start": 0, @@ -27610,11 +30775,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 34937, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 34937, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -27626,15 +30793,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 35000, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 35006, "elements": [ { "argument": { + "commentStart": 35016, "end": 0, "raw": "0.14255393713960607", "start": 0, @@ -27645,6 +30815,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 35015, "end": 0, "operator": "-", "start": 0, @@ -27653,6 +30824,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 35045, "end": 0, "raw": "0.5194262624564814", "start": 0, @@ -27663,6 +30835,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 35044, "end": 0, "operator": "-", "start": 0, @@ -27678,11 +30851,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 34995, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 34995, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -27694,15 +30869,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 35082, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 35088, "elements": [ { "argument": { + "commentStart": 35098, "end": 0, "raw": "0.4287123231350338", "start": 0, @@ -27713,6 +30891,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 35097, "end": 0, "operator": "-", "start": 0, @@ -27721,6 +30900,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 35126, "end": 0, "raw": "0.4223564528725028", "start": 0, @@ -27731,6 +30911,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 35125, "end": 0, "operator": "-", "start": 0, @@ -27746,11 +30927,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 35077, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 35077, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -27762,15 +30945,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 35163, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 35169, "elements": [ { "argument": { + "commentStart": 35179, "end": 0, "raw": "0.09316367294024519", "start": 0, @@ -27781,6 +30967,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 35178, "end": 0, "operator": "-", "start": 0, @@ -27789,6 +30976,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 35208, "end": 0, "raw": "0.9063127021008246", "start": 0, @@ -27799,6 +30987,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 35207, "end": 0, "operator": "-", "start": 0, @@ -27814,11 +31003,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 35158, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 35158, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -27830,15 +31021,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 35245, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 35251, "elements": [ { "argument": { + "commentStart": 35261, "end": 0, "raw": "0.2767766535558669", "start": 0, @@ -27849,6 +31043,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 35260, "end": 0, "operator": "-", "start": 0, @@ -27856,6 +31051,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 35288, "end": 0, "raw": "0.6816248114129131", "start": 0, @@ -27875,11 +31071,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 35240, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 35240, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -27891,14 +31089,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 35325, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 35331, "elements": [ { + "commentStart": 35340, "end": 0, "raw": "0.9796762495562534", "start": 0, @@ -27911,6 +31112,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 35368, "end": 0, "raw": "0.0822145668330625", "start": 0, @@ -27921,6 +31123,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 35367, "end": 0, "operator": "-", "start": 0, @@ -27936,11 +31139,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 35320, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 35320, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -27952,15 +31157,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 35405, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 35411, "elements": [ { "argument": { + "commentStart": 35421, "end": 0, "raw": "0.8666513070867441", "start": 0, @@ -27971,6 +31179,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 35420, "end": 0, "operator": "-", "start": 0, @@ -27979,6 +31188,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 35449, "end": 0, "raw": "0.301053160242023", "start": 0, @@ -27989,6 +31199,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 35448, "end": 0, "operator": "-", "start": 0, @@ -28004,11 +31215,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 35400, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 35400, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28020,14 +31233,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 35485, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 35491, "elements": [ { + "commentStart": 35500, "end": 0, "raw": "0.537415656028112", "start": 0, @@ -28039,6 +31255,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 35526, "end": 0, "raw": "0.020272692875002774", "start": 0, @@ -28058,11 +31275,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 35480, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 35480, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28074,14 +31293,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 35565, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 35571, "elements": [ { + "commentStart": 35580, "end": 0, "raw": "0.9332396256457531", "start": 0, @@ -28094,6 +31316,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 35608, "end": 0, "raw": "0.6228175690649898", "start": 0, @@ -28104,6 +31327,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 35607, "end": 0, "operator": "-", "start": 0, @@ -28119,11 +31343,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 35560, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 35560, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28135,14 +31361,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 35645, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 35651, "elements": [ { + "commentStart": 35660, "end": 0, "raw": "0.18052415837320734", "start": 0, @@ -28155,6 +31384,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 35689, "end": 0, "raw": "0.36894384647296197", "start": 0, @@ -28165,6 +31395,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 35688, "end": 0, "operator": "-", "start": 0, @@ -28180,11 +31411,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 35640, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 35640, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28196,14 +31429,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 35727, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 35733, "elements": [ { + "commentStart": 35734, "end": 0, "raw": "0.5384372634075449", "start": 0, @@ -28215,6 +31451,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 35754, "end": 0, "raw": "0.2377565050887107", "start": 0, @@ -28234,11 +31471,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 35722, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 35722, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28250,14 +31489,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 35785, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 35791, "elements": [ { + "commentStart": 35800, "end": 0, "raw": "0.39043436929278874", "start": 0, @@ -28269,6 +31511,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 35828, "end": 0, "raw": "0.14273182483160451", "start": 0, @@ -28288,11 +31531,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 35780, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 35780, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28304,14 +31549,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 35866, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 35872, "elements": [ { + "commentStart": 35881, "end": 0, "raw": "0.09782890412897283", "start": 0, @@ -28323,6 +31571,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 35909, "end": 0, "raw": "0.9907667536909659", "start": 0, @@ -28342,11 +31591,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 35861, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 35861, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28358,14 +31609,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 35946, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 35952, "elements": [ { + "commentStart": 35961, "end": 0, "raw": "0.5286610085921146", "start": 0, @@ -28378,6 +31632,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 35989, "end": 0, "raw": "0.7924508308419256", "start": 0, @@ -28388,6 +31643,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 35988, "end": 0, "operator": "-", "start": 0, @@ -28403,11 +31659,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 35941, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 35941, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28419,14 +31677,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 36026, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 36032, "elements": [ { + "commentStart": 36041, "end": 0, "raw": "0.3789978184503342", "start": 0, @@ -28438,6 +31699,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 36068, "end": 0, "raw": "0.12396120576838676", "start": 0, @@ -28457,11 +31719,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 36021, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 36021, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28473,15 +31737,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 36106, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 36112, "elements": [ { "argument": { + "commentStart": 36122, "end": 0, "raw": "0.9484912744890612", "start": 0, @@ -28492,6 +31759,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 36121, "end": 0, "operator": "-", "start": 0, @@ -28499,6 +31767,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 36149, "end": 0, "raw": "0.6729649846476855", "start": 0, @@ -28518,11 +31787,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 36101, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 36101, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28534,14 +31805,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 36186, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 36192, "elements": [ { + "commentStart": 36201, "end": 0, "raw": "0.7451758753425153", "start": 0, @@ -28554,6 +31828,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 36229, "end": 0, "raw": "0.21318737562458967", "start": 0, @@ -28564,6 +31839,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 36228, "end": 0, "operator": "-", "start": 0, @@ -28579,11 +31855,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 36181, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 36181, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28595,14 +31873,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 36267, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 36273, "elements": [ { + "commentStart": 36282, "end": 0, "raw": "0.1873200727251887", "start": 0, @@ -28615,6 +31896,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 36310, "end": 0, "raw": "0.15961374297992448", "start": 0, @@ -28625,6 +31907,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 36309, "end": 0, "operator": "-", "start": 0, @@ -28640,11 +31923,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 36262, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 36262, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28656,15 +31941,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 36348, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 36354, "elements": [ { "argument": { + "commentStart": 36364, "end": 0, "raw": "0.05729464924537564", "start": 0, @@ -28675,6 +31963,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 36363, "end": 0, "operator": "-", "start": 0, @@ -28683,6 +31972,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 36393, "end": 0, "raw": "0.5436345558508746", "start": 0, @@ -28693,6 +31983,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 36392, "end": 0, "operator": "-", "start": 0, @@ -28708,11 +31999,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 36343, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 36343, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28724,15 +32017,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 36430, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 36436, "elements": [ { "argument": { + "commentStart": 36446, "end": 0, "raw": "0.09582414374469184", "start": 0, @@ -28743,6 +32039,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 36445, "end": 0, "operator": "-", "start": 0, @@ -28751,6 +32048,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 36475, "end": 0, "raw": "0.7533839681212353", "start": 0, @@ -28761,6 +32059,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 36474, "end": 0, "operator": "-", "start": 0, @@ -28776,11 +32075,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 36425, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 36425, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28792,15 +32093,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 36512, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 36518, "elements": [ { "argument": { + "commentStart": 36528, "end": 0, "raw": "0.17254116580051848", "start": 0, @@ -28811,6 +32115,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 36527, "end": 0, "operator": "-", "start": 0, @@ -28819,6 +32124,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 36557, "end": 0, "raw": "0.7669113400341137", "start": 0, @@ -28829,6 +32135,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 36556, "end": 0, "operator": "-", "start": 0, @@ -28844,11 +32151,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 36507, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 36507, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28860,14 +32169,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 36594, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 36600, "elements": [ { + "commentStart": 36601, "end": 0, "raw": "0.8944730032887609", "start": 0, @@ -28879,6 +32191,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 36621, "end": 0, "raw": "0.6093318694741408", "start": 0, @@ -28898,11 +32211,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 36589, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 36589, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28914,15 +32229,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 36652, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 36658, "elements": [ { "argument": { + "commentStart": 36668, "end": 0, "raw": "0.6238548626325471", "start": 0, @@ -28933,6 +32251,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 36667, "end": 0, "operator": "-", "start": 0, @@ -28940,6 +32259,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 36695, "end": 0, "raw": "0.4053626746020169", "start": 0, @@ -28959,11 +32279,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 36647, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 36647, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -28975,14 +32297,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 36732, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 36738, "elements": [ { + "commentStart": 36747, "end": 0, "raw": "0.1379445992766417", "start": 0, @@ -28995,6 +32320,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 36775, "end": 0, "raw": "0.47871087958516045", "start": 0, @@ -29005,6 +32331,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 36774, "end": 0, "operator": "-", "start": 0, @@ -29020,11 +32347,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 36727, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 36727, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -29036,15 +32365,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 36813, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 36819, "elements": [ { "argument": { + "commentStart": 36829, "end": 0, "raw": "0.9516767113283946", "start": 0, @@ -29055,6 +32387,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 36828, "end": 0, "operator": "-", "start": 0, @@ -29062,6 +32395,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 36856, "end": 0, "raw": "0.8619900618578948", "start": 0, @@ -29081,11 +32415,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 36808, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 36808, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -29097,14 +32433,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 36893, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 36899, "elements": [ { + "commentStart": 36900, "end": 0, "raw": "0.9398732950992088", "start": 0, @@ -29116,6 +32455,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 36920, "end": 0, "raw": "0.6326239915683629", "start": 0, @@ -29135,11 +32475,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 36888, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 36888, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -29151,15 +32493,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 36951, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 36957, "elements": [ { "argument": { + "commentStart": 36967, "end": 0, "raw": "0.8631974445502164", "start": 0, @@ -29170,6 +32515,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 36966, "end": 0, "operator": "-", "start": 0, @@ -29177,6 +32523,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 36994, "end": 0, "raw": "0.016153555523963137", "start": 0, @@ -29196,11 +32543,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 36946, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 36946, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -29212,14 +32561,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 37033, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 37039, "elements": [ { + "commentStart": 37048, "end": 0, "raw": "0.19167797120152907", "start": 0, @@ -29232,6 +32584,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 37077, "end": 0, "raw": "0.4916414381703984", "start": 0, @@ -29242,6 +32595,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 37076, "end": 0, "operator": "-", "start": 0, @@ -29257,11 +32611,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 37028, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 37028, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -29273,15 +32629,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 37114, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 37120, "elements": [ { "argument": { + "commentStart": 37130, "end": 0, "raw": "0.8644261221501586", "start": 0, @@ -29292,6 +32651,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 37129, "end": 0, "operator": "-", "start": 0, @@ -29300,6 +32660,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 37158, "end": 0, "raw": "0.11434763886359756", "start": 0, @@ -29310,6 +32671,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 37157, "end": 0, "operator": "-", "start": 0, @@ -29325,11 +32687,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 37109, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 37109, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -29341,15 +32705,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 37196, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 37202, "elements": [ { "argument": { + "commentStart": 37212, "end": 0, "raw": "0.029081958413378572", "start": 0, @@ -29360,6 +32727,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 37211, "end": 0, "operator": "-", "start": 0, @@ -29368,6 +32736,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 37242, "end": 0, "raw": "0.5214138808318329", "start": 0, @@ -29378,6 +32747,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 37241, "end": 0, "operator": "-", "start": 0, @@ -29393,11 +32763,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 37191, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 37191, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -29409,15 +32781,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 37279, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 37285, "elements": [ { "argument": { + "commentStart": 37295, "end": 0, "raw": "0.8713091851579695", "start": 0, @@ -29428,6 +32803,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 37294, "end": 0, "operator": "-", "start": 0, @@ -29435,6 +32811,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 37322, "end": 0, "raw": "0.7866284950967315", "start": 0, @@ -29454,11 +32831,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 37274, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 37274, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -29470,14 +32849,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 37359, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 37365, "elements": [ { + "commentStart": 37366, "end": 0, "raw": "0.884342023093545", "start": 0, @@ -29490,6 +32872,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 37386, "end": 0, "raw": "0.1825407002568431", "start": 0, @@ -29500,6 +32883,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 37385, "end": 0, "operator": "-", "start": 0, @@ -29515,11 +32899,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 37354, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 37354, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -29531,15 +32917,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 37417, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 37423, "elements": [ { "argument": { + "commentStart": 37433, "end": 0, "raw": "0.6978385295364686", "start": 0, @@ -29550,6 +32939,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 37432, "end": 0, "operator": "-", "start": 0, @@ -29557,6 +32947,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 37460, "end": 0, "raw": "0.0440574328736949", "start": 0, @@ -29576,11 +32967,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 37412, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 37412, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -29592,15 +32985,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 37497, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 37503, "elements": [ { "argument": { + "commentStart": 37513, "end": 0, "raw": "0.48055049324331556", "start": 0, @@ -29611,6 +33007,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 37512, "end": 0, "operator": "-", "start": 0, @@ -29619,6 +33016,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 37542, "end": 0, "raw": "0.028546347149214002", "start": 0, @@ -29629,6 +33027,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 37541, "end": 0, "operator": "-", "start": 0, @@ -29644,11 +33043,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 37492, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 37492, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -29660,14 +33061,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 37581, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 37587, "elements": [ { + "commentStart": 37596, "end": 0, "raw": "0.41283517382864776", "start": 0, @@ -29680,6 +33084,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 37625, "end": 0, "raw": "0.44938038251347323", "start": 0, @@ -29690,6 +33095,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 37624, "end": 0, "operator": "-", "start": 0, @@ -29705,11 +33111,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 37576, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 37576, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -29721,14 +33129,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 37663, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 37669, "elements": [ { + "commentStart": 37670, "end": 0, "raw": "0.7911399832501751", "start": 0, @@ -29740,6 +33151,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 37690, "end": 0, "raw": "0.893446368526005", "start": 0, @@ -29759,11 +33171,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 37658, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 37658, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -29775,14 +33189,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 37720, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 37726, "elements": [ { + "commentStart": 37735, "end": 0, "raw": "0.6507434699009087", "start": 0, @@ -29795,6 +33212,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 37763, "end": 0, "raw": "0.6890023920962012", "start": 0, @@ -29805,6 +33223,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 37762, "end": 0, "operator": "-", "start": 0, @@ -29820,11 +33239,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 37715, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 37715, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -29836,14 +33257,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 37800, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 37806, "elements": [ { + "commentStart": 37815, "end": 0, "raw": "0.10489019777253028", "start": 0, @@ -29856,6 +33280,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 37844, "end": 0, "raw": "0.5467450997193952", "start": 0, @@ -29866,6 +33291,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 37843, "end": 0, "operator": "-", "start": 0, @@ -29881,11 +33307,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 37795, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 37795, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -29897,15 +33325,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 37881, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 37887, "elements": [ { "argument": { + "commentStart": 37897, "end": 0, "raw": "0.5760905289992633", "start": 0, @@ -29916,6 +33347,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 37896, "end": 0, "operator": "-", "start": 0, @@ -29924,6 +33356,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 37925, "end": 0, "raw": "0.2639900702114173", "start": 0, @@ -29934,6 +33367,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 37924, "end": 0, "operator": "-", "start": 0, @@ -29949,11 +33383,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 37876, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 37876, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -29965,14 +33401,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 37962, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 37968, "elements": [ { + "commentStart": 37977, "end": 0, "raw": "0.39828861790105297", "start": 0, @@ -29984,6 +33423,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 38005, "end": 0, "raw": "0.8036624129416385", "start": 0, @@ -30003,11 +33443,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 37957, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 37957, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -30019,15 +33461,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 38042, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 38048, "elements": [ { "argument": { + "commentStart": 38050, "end": 0, "raw": "0.673848991328553", "start": 0, @@ -30038,6 +33483,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 38049, "end": 0, "operator": "-", "start": 0, @@ -30046,6 +33492,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 38070, "end": 0, "raw": "0.918443329270668", "start": 0, @@ -30056,6 +33503,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 38069, "end": 0, "operator": "-", "start": 0, @@ -30071,11 +33519,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 38037, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 38037, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -30087,15 +33537,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 38100, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 38106, "elements": [ { "argument": { + "commentStart": 38116, "end": 0, "raw": "0.8599152936179257", "start": 0, @@ -30106,6 +33559,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 38115, "end": 0, "operator": "-", "start": 0, @@ -30114,6 +33568,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 38144, "end": 0, "raw": "0.9499371022680787", "start": 0, @@ -30124,6 +33579,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 38143, "end": 0, "operator": "-", "start": 0, @@ -30139,11 +33595,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 38095, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 38095, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -30155,14 +33613,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 38181, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 38187, "elements": [ { + "commentStart": 38196, "end": 0, "raw": "0.6285243831393765", "start": 0, @@ -30175,6 +33636,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 38224, "end": 0, "raw": "0.5186557636566307", "start": 0, @@ -30185,6 +33647,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 38223, "end": 0, "operator": "-", "start": 0, @@ -30200,11 +33663,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 38176, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 38176, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -30216,14 +33681,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 38261, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 38267, "elements": [ { + "commentStart": 38276, "end": 0, "raw": "0.3222412784832269", "start": 0, @@ -30235,6 +33703,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 38303, "end": 0, "raw": "0.24621192679727177", "start": 0, @@ -30254,11 +33723,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 38256, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 38256, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -30270,14 +33741,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 38341, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 38347, "elements": [ { + "commentStart": 38356, "end": 0, "raw": "0.19754357911311016", "start": 0, @@ -30290,6 +33764,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 38385, "end": 0, "raw": "0.7529246632397206", "start": 0, @@ -30300,6 +33775,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 38384, "end": 0, "operator": "-", "start": 0, @@ -30315,11 +33791,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 38336, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 38336, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -30331,15 +33809,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 38422, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 38428, "elements": [ { "argument": { + "commentStart": 38438, "end": 0, "raw": "0.43181570545865555", "start": 0, @@ -30350,6 +33831,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 38437, "end": 0, "operator": "-", "start": 0, @@ -30357,6 +33839,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 38466, "end": 0, "raw": "0.18945437402201537", "start": 0, @@ -30376,11 +33859,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 38417, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 38417, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -30392,14 +33877,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 38504, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 38510, "elements": [ { + "commentStart": 38519, "end": 0, "raw": "0.8714511090241797", "start": 0, @@ -30412,6 +33900,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 38547, "end": 0, "raw": "0.7215844196844685", "start": 0, @@ -30422,6 +33911,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 38546, "end": 0, "operator": "-", "start": 0, @@ -30437,11 +33927,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 38499, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 38499, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -30453,15 +33945,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 38584, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 38590, "elements": [ { "argument": { + "commentStart": 38600, "end": 0, "raw": "0.3670208139314082", "start": 0, @@ -30472,6 +33967,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 38599, "end": 0, "operator": "-", "start": 0, @@ -30479,6 +33975,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 38627, "end": 0, "raw": "0.21201331909674526", "start": 0, @@ -30498,11 +33995,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 38579, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 38579, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -30514,15 +34013,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 38665, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 38671, "elements": [ { "argument": { + "commentStart": 38681, "end": 0, "raw": "0.4707511307971115", "start": 0, @@ -30533,6 +34035,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 38680, "end": 0, "operator": "-", "start": 0, @@ -30540,6 +34043,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 38708, "end": 0, "raw": "0.4905279615419764", "start": 0, @@ -30559,11 +34063,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 38660, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 38660, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -30575,15 +34081,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 38745, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 38751, "elements": [ { "argument": { + "commentStart": 38761, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -30594,6 +34103,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 38760, "end": 0, "operator": "-", "start": 0, @@ -30601,6 +34111,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 38788, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -30620,11 +34131,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 38740, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 38740, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -30636,15 +34149,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 38825, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 38831, "elements": [ { "argument": { + "commentStart": 38841, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -30655,6 +34171,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 38840, "end": 0, "operator": "-", "start": 0, @@ -30663,6 +34180,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 38869, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -30673,6 +34191,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 38868, "end": 0, "operator": "-", "start": 0, @@ -30688,11 +34207,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 38820, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 38820, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -30704,14 +34225,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 38907, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 38913, "elements": [ { + "commentStart": 38922, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -30723,6 +34247,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 38950, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -30742,11 +34267,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 38902, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 38902, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -30758,14 +34285,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 38988, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 38994, "elements": [ { + "commentStart": 39003, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -30777,6 +34307,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 39031, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -30796,11 +34327,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 38983, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 38983, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -30812,15 +34345,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 39069, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 39075, "elements": [ { "argument": { + "commentStart": 39085, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -30831,6 +34367,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 39084, "end": 0, "operator": "-", "start": 0, @@ -30838,6 +34375,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 39113, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -30857,11 +34395,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 39064, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 39064, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -30873,15 +34413,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 39150, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 39156, "elements": [ { "argument": { + "commentStart": 39166, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -30892,6 +34435,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 39165, "end": 0, "operator": "-", "start": 0, @@ -30900,6 +34444,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 39195, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -30910,6 +34455,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 39194, "end": 0, "operator": "-", "start": 0, @@ -30925,11 +34471,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 39145, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 39145, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -30941,14 +34489,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 39233, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 39239, "elements": [ { + "commentStart": 39248, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -30961,6 +34512,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 39276, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -30971,6 +34523,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 39275, "end": 0, "operator": "-", "start": 0, @@ -30986,11 +34539,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 39228, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 39228, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31002,14 +34557,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 39314, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 39320, "elements": [ { + "commentStart": 39329, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -31022,6 +34580,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 39360, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -31032,6 +34591,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 39359, "end": 0, "operator": "-", "start": 0, @@ -31047,11 +34607,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 39309, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 39309, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31063,14 +34625,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 39397, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 39403, "elements": [ { + "commentStart": 39412, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -31083,6 +34648,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 39440, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -31093,6 +34659,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 39439, "end": 0, "operator": "-", "start": 0, @@ -31108,11 +34675,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 39392, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 39392, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31124,15 +34693,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 39477, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 39483, "elements": [ { "argument": { + "commentStart": 39493, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -31143,6 +34715,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 39492, "end": 0, "operator": "-", "start": 0, @@ -31150,6 +34723,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 39520, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -31169,11 +34743,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 39472, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 39472, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31185,14 +34761,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 39557, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 39563, "elements": [ { + "commentStart": 39564, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -31204,6 +34783,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 39584, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -31223,11 +34803,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 39552, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 39552, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31239,15 +34821,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 39615, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 39621, "elements": [ { "argument": { + "commentStart": 39631, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -31258,6 +34843,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 39630, "end": 0, "operator": "-", "start": 0, @@ -31265,6 +34851,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 39659, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -31284,11 +34871,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 39610, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 39610, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31300,15 +34889,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 39698, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 39704, "elements": [ { "argument": { + "commentStart": 39714, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -31319,6 +34911,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 39713, "end": 0, "operator": "-", "start": 0, @@ -31327,6 +34920,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 39742, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -31337,6 +34931,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 39741, "end": 0, "operator": "-", "start": 0, @@ -31352,11 +34947,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 39693, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 39693, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31368,15 +34965,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 39780, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 39786, "elements": [ { "argument": { + "commentStart": 39796, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -31387,6 +34987,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 39795, "end": 0, "operator": "-", "start": 0, @@ -31395,6 +34996,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 39824, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -31405,6 +35007,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 39823, "end": 0, "operator": "-", "start": 0, @@ -31420,11 +35023,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 39775, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 39775, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31436,14 +35041,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 39862, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 39868, "elements": [ { + "commentStart": 39869, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -31455,6 +35063,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 39888, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -31474,11 +35083,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 39857, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 39857, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31490,14 +35101,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 39919, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 39925, "elements": [ { + "commentStart": 39934, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -31510,6 +35124,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 39963, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -31520,6 +35135,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 39962, "end": 0, "operator": "-", "start": 0, @@ -31535,11 +35151,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 39914, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 39914, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31551,14 +35169,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 40001, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 40007, "elements": [ { + "commentStart": 40008, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -31570,6 +35191,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 40028, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -31589,11 +35211,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 39996, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 39996, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31605,14 +35229,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 40058, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 40064, "elements": [ { + "commentStart": 40073, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -31625,6 +35252,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 40102, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -31635,6 +35263,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 40101, "end": 0, "operator": "-", "start": 0, @@ -31650,11 +35279,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 40053, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 40053, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31666,14 +35297,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 40139, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 40145, "elements": [ { + "commentStart": 40146, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -31685,6 +35319,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 40166, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -31704,11 +35339,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 40134, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 40134, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31720,14 +35357,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 40197, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 40203, "elements": [ { + "commentStart": 40212, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -31739,6 +35379,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 40239, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -31758,11 +35399,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 40192, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 40192, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31774,14 +35417,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 40277, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 40283, "elements": [ { + "commentStart": 40284, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -31793,6 +35439,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 40304, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -31812,11 +35459,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 40272, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 40272, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31828,15 +35477,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 40335, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 40341, "elements": [ { "argument": { + "commentStart": 40351, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -31847,6 +35499,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 40350, "end": 0, "operator": "-", "start": 0, @@ -31855,6 +35508,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 40380, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -31865,6 +35519,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 40379, "end": 0, "operator": "-", "start": 0, @@ -31880,11 +35535,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 40330, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 40330, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31896,14 +35553,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 40417, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 40423, "elements": [ { + "commentStart": 40432, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -31916,6 +35576,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 40460, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -31926,6 +35587,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 40459, "end": 0, "operator": "-", "start": 0, @@ -31941,11 +35603,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 40412, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 40412, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -31957,15 +35621,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 40497, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 40503, "elements": [ { "argument": { + "commentStart": 40513, "end": 0, "raw": "0.6716353749059765", "start": 0, @@ -31976,6 +35643,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 40512, "end": 0, "operator": "-", "start": 0, @@ -31984,6 +35652,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 40541, "end": 0, "raw": "0.9605576808879026", "start": 0, @@ -31994,6 +35663,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 40540, "end": 0, "operator": "-", "start": 0, @@ -32009,11 +35679,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 40492, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 40492, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32025,14 +35697,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 40578, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 40584, "elements": [ { + "commentStart": 40593, "end": 0, "raw": "0.010280170930300203", "start": 0, @@ -32045,6 +35720,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 40623, "end": 0, "raw": "0.37344123662342166", "start": 0, @@ -32055,6 +35731,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 40622, "end": 0, "operator": "-", "start": 0, @@ -32070,11 +35747,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 40573, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 40573, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32086,14 +35765,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 40661, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 40667, "elements": [ { + "commentStart": 40676, "end": 0, "raw": "0.10357375682791004", "start": 0, @@ -32106,6 +35788,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 40705, "end": 0, "raw": "0.42294321030821425", "start": 0, @@ -32116,6 +35799,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 40704, "end": 0, "operator": "-", "start": 0, @@ -32131,11 +35815,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 40656, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 40656, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32147,14 +35833,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 40743, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 40749, "elements": [ { + "commentStart": 40758, "end": 0, "raw": "0.4520311575096987", "start": 0, @@ -32167,6 +35856,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 40786, "end": 0, "raw": "0.11232675307600548", "start": 0, @@ -32177,6 +35867,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 40785, "end": 0, "operator": "-", "start": 0, @@ -32192,11 +35883,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 40738, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 40738, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32208,15 +35901,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 40824, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 40830, "elements": [ { "argument": { + "commentStart": 40840, "end": 0, "raw": "0.8821185914380845", "start": 0, @@ -32227,6 +35923,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 40839, "end": 0, "operator": "-", "start": 0, @@ -32235,6 +35932,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 40868, "end": 0, "raw": "0.7155147434939819", "start": 0, @@ -32245,6 +35943,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 40867, "end": 0, "operator": "-", "start": 0, @@ -32260,11 +35959,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 40819, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 40819, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32276,14 +35977,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 40905, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 40911, "elements": [ { + "commentStart": 40912, "end": 0, "raw": "0.9195487101690416", "start": 0, @@ -32295,6 +35999,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 40932, "end": 0, "raw": "0.2691627465297364", "start": 0, @@ -32314,11 +36019,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 40900, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 40900, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32330,14 +36037,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 40963, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 40969, "elements": [ { + "commentStart": 40978, "end": 0, "raw": "0.7098978191546745", "start": 0, @@ -32349,6 +36059,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 41005, "end": 0, "raw": "0.11710004169385968", "start": 0, @@ -32368,11 +36079,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 40958, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 40958, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32384,15 +36097,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 41043, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 41049, "elements": [ { "argument": { + "commentStart": 41059, "end": 0, "raw": "0.37876368560819995", "start": 0, @@ -32403,6 +36119,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 41058, "end": 0, "operator": "-", "start": 0, @@ -32410,6 +36127,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 41087, "end": 0, "raw": "0.7106729314759084", "start": 0, @@ -32429,11 +36147,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 41038, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 41038, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32445,15 +36165,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 41124, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 41130, "elements": [ { "argument": { + "commentStart": 41140, "end": 0, "raw": "0.29728126898353335", "start": 0, @@ -32464,6 +36187,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 41139, "end": 0, "operator": "-", "start": 0, @@ -32472,6 +36196,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 41169, "end": 0, "raw": "0.06649734568328003", "start": 0, @@ -32482,6 +36207,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 41168, "end": 0, "operator": "-", "start": 0, @@ -32497,11 +36223,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 41119, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 41119, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32513,14 +36241,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 41207, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 41213, "elements": [ { + "commentStart": 41222, "end": 0, "raw": "0.22965781558352072", "start": 0, @@ -32533,6 +36264,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 41251, "end": 0, "raw": "0.7601866432836641", "start": 0, @@ -32543,6 +36275,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 41250, "end": 0, "operator": "-", "start": 0, @@ -32558,11 +36291,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 41202, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 41202, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32574,15 +36309,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 41288, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 41294, "elements": [ { "argument": { + "commentStart": 41304, "end": 0, "raw": "0.6356501074317229", "start": 0, @@ -32593,6 +36331,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 41303, "end": 0, "operator": "-", "start": 0, @@ -32600,6 +36339,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 41331, "end": 0, "raw": "0.19458425399338064", "start": 0, @@ -32619,11 +36359,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 41283, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 41283, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32635,14 +36377,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 41369, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 41375, "elements": [ { + "commentStart": 41376, "end": 0, "raw": "0.5721251777404546", "start": 0, @@ -32654,6 +36399,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 41396, "end": 0, "raw": "0.2888584097921527", "start": 0, @@ -32673,11 +36419,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 41364, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 41364, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32689,15 +36437,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 41427, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 41433, "elements": [ { "argument": { + "commentStart": 41443, "end": 0, "raw": "0.9580409549552311", "start": 0, @@ -32708,6 +36459,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 41442, "end": 0, "operator": "-", "start": 0, @@ -32716,6 +36468,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 41471, "end": 0, "raw": "0.02243818192078395", "start": 0, @@ -32726,6 +36479,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 41470, "end": 0, "operator": "-", "start": 0, @@ -32741,11 +36495,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 41422, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 41422, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32757,14 +36513,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 41509, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 41515, "elements": [ { + "commentStart": 41524, "end": 0, "raw": "0.3299184618602866", "start": 0, @@ -32777,6 +36536,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 41552, "end": 0, "raw": "0.8353726942369875", "start": 0, @@ -32787,6 +36547,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 41551, "end": 0, "operator": "-", "start": 0, @@ -32802,11 +36563,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 41504, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 41504, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32818,14 +36581,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 41589, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 41595, "elements": [ { + "commentStart": 41604, "end": 0, "raw": "0.7434639386755209", "start": 0, @@ -32838,6 +36604,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 41632, "end": 0, "raw": "0.7919648864138378", "start": 0, @@ -32848,6 +36615,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 41631, "end": 0, "operator": "-", "start": 0, @@ -32863,11 +36631,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 41584, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 41584, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32879,14 +36649,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 41669, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 41675, "elements": [ { + "commentStart": 41676, "end": 0, "raw": "0.9935751011164615", "start": 0, @@ -32898,6 +36671,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 41696, "end": 0, "raw": "0.9042566468497608", "start": 0, @@ -32917,11 +36691,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 41664, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 41664, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32933,15 +36709,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 41727, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 41733, "elements": [ { "argument": { + "commentStart": 41743, "end": 0, "raw": "0.5035812884687294", "start": 0, @@ -32952,6 +36731,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 41742, "end": 0, "operator": "-", "start": 0, @@ -32959,6 +36739,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 41770, "end": 0, "raw": "0.5150967434989442", "start": 0, @@ -32978,11 +36759,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 41722, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 41722, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -32994,14 +36777,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 41807, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 41813, "elements": [ { + "commentStart": 41814, "end": 0, "raw": "0.5526227215900215", "start": 0, @@ -33013,6 +36799,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 41834, "end": 0, "raw": "0.7612604137272441", "start": 0, @@ -33032,11 +36819,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 41802, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 41802, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -33048,14 +36837,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 41865, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 41871, "elements": [ { + "commentStart": 41880, "end": 0, "raw": "0.8593271349126876", "start": 0, @@ -33067,6 +36859,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 41907, "end": 0, "raw": "0.08414894953725849", "start": 0, @@ -33086,11 +36879,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 41860, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 41860, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -33102,15 +36897,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 41945, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 41951, "elements": [ { "argument": { + "commentStart": 41961, "end": 0, "raw": "0.8181049219192864", "start": 0, @@ -33121,6 +36919,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 41960, "end": 0, "operator": "-", "start": 0, @@ -33129,6 +36928,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 41989, "end": 0, "raw": "0.903548131323352", "start": 0, @@ -33139,6 +36939,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 41988, "end": 0, "operator": "-", "start": 0, @@ -33154,11 +36955,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 41940, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 41940, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -33170,14 +36973,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 42025, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 42031, "elements": [ { + "commentStart": 42040, "end": 0, "raw": "0.3165782044458305", "start": 0, @@ -33190,6 +36996,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 42068, "end": 0, "raw": "0.24189274252014914", "start": 0, @@ -33200,6 +37007,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 42067, "end": 0, "operator": "-", "start": 0, @@ -33215,11 +37023,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 42020, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 42020, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -33231,15 +37041,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 42106, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 42112, "elements": [ { "argument": { + "commentStart": 42122, "end": 0, "raw": "0.44390956414045135", "start": 0, @@ -33250,6 +37063,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 42121, "end": 0, "operator": "-", "start": 0, @@ -33258,6 +37072,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 42151, "end": 0, "raw": "0.25912591535126905", "start": 0, @@ -33268,6 +37083,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 42150, "end": 0, "operator": "-", "start": 0, @@ -33283,11 +37099,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 42101, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 42101, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -33299,15 +37117,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 42189, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 42195, "elements": [ { "argument": { + "commentStart": 42205, "end": 0, "raw": "0.6605165911891009", "start": 0, @@ -33318,6 +37139,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 42204, "end": 0, "operator": "-", "start": 0, @@ -33326,6 +37148,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 42233, "end": 0, "raw": "0.40355115288839194", "start": 0, @@ -33336,6 +37159,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 42232, "end": 0, "operator": "-", "start": 0, @@ -33351,11 +37175,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 42184, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 42184, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -33367,15 +37193,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 42271, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 42277, "elements": [ { "argument": { + "commentStart": 42287, "end": 0, "raw": "0.7170489950180006", "start": 0, @@ -33386,6 +37215,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 42286, "end": 0, "operator": "-", "start": 0, @@ -33393,6 +37223,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 42314, "end": 0, "raw": "0.23454356079651384", "start": 0, @@ -33412,11 +37243,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 42266, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 42266, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -33428,15 +37261,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 42352, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 42358, "elements": [ { "argument": { + "commentStart": 42368, "end": 0, "raw": "0.2568187045379722", "start": 0, @@ -33447,6 +37283,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 42367, "end": 0, "operator": "-", "start": 0, @@ -33455,6 +37292,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 42396, "end": 0, "raw": "0.45031188717601367", "start": 0, @@ -33465,6 +37303,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 42395, "end": 0, "operator": "-", "start": 0, @@ -33480,11 +37319,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 42347, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 42347, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -33496,14 +37337,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 42434, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 42440, "elements": [ { + "commentStart": 42449, "end": 0, "raw": "0.6751951211858687", "start": 0, @@ -33516,6 +37360,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 42477, "end": 0, "raw": "0.9709424233465593", "start": 0, @@ -33526,6 +37371,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 42476, "end": 0, "operator": "-", "start": 0, @@ -33541,11 +37387,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 42429, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 42429, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -33557,15 +37405,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 42514, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 42520, "elements": [ { "argument": { + "commentStart": 42530, "end": 0, "raw": "0.5689619842972184", "start": 0, @@ -33576,6 +37427,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 42529, "end": 0, "operator": "-", "start": 0, @@ -33583,6 +37435,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 42557, "end": 0, "raw": "0.5918969913790362", "start": 0, @@ -33602,11 +37455,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 42509, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 42509, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -33618,15 +37473,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 42594, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 42600, "elements": [ { "argument": { + "commentStart": 42610, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -33637,6 +37495,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 42609, "end": 0, "operator": "-", "start": 0, @@ -33644,6 +37503,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 42637, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -33663,11 +37523,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 42589, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 42589, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -33679,15 +37541,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 42674, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 42680, "elements": [ { "argument": { + "commentStart": 42690, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -33698,6 +37563,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 42689, "end": 0, "operator": "-", "start": 0, @@ -33706,6 +37572,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 42718, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -33716,6 +37583,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 42717, "end": 0, "operator": "-", "start": 0, @@ -33731,11 +37599,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 42669, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 42669, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -33747,14 +37617,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 42756, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 42762, "elements": [ { + "commentStart": 42771, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -33766,6 +37639,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 42799, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -33785,11 +37659,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 42751, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 42751, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -33801,14 +37677,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 42837, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 42843, "elements": [ { + "commentStart": 42852, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -33820,6 +37699,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 42880, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -33839,11 +37719,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 42832, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 42832, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -33855,15 +37737,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 42918, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 42924, "elements": [ { "argument": { + "commentStart": 42934, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -33874,6 +37759,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 42933, "end": 0, "operator": "-", "start": 0, @@ -33881,6 +37767,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 42962, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -33900,11 +37787,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 42913, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 42913, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -33916,15 +37805,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 42999, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 43005, "elements": [ { "argument": { + "commentStart": 43015, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -33935,6 +37827,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 43014, "end": 0, "operator": "-", "start": 0, @@ -33943,6 +37836,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 43044, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -33953,6 +37847,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 43043, "end": 0, "operator": "-", "start": 0, @@ -33968,11 +37863,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 42994, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 42994, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -33984,14 +37881,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 43082, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 43088, "elements": [ { + "commentStart": 43097, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -34004,6 +37904,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 43125, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -34014,6 +37915,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 43124, "end": 0, "operator": "-", "start": 0, @@ -34029,11 +37931,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 43077, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 43077, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -34045,14 +37949,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 43163, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 43169, "elements": [ { + "commentStart": 43178, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -34065,6 +37972,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 43209, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -34075,6 +37983,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 43208, "end": 0, "operator": "-", "start": 0, @@ -34090,11 +37999,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 43158, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 43158, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -34106,14 +38017,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 43246, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 43252, "elements": [ { + "commentStart": 43261, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -34126,6 +38040,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 43289, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -34136,6 +38051,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 43288, "end": 0, "operator": "-", "start": 0, @@ -34151,11 +38067,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 43241, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 43241, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -34167,15 +38085,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 43326, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 43332, "elements": [ { "argument": { + "commentStart": 43342, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -34186,6 +38107,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 43341, "end": 0, "operator": "-", "start": 0, @@ -34193,6 +38115,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 43369, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -34212,11 +38135,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 43321, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 43321, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -34228,14 +38153,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 43406, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 43412, "elements": [ { + "commentStart": 43413, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -34247,6 +38175,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 43433, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -34266,11 +38195,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 43401, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 43401, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -34282,15 +38213,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 43464, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 43470, "elements": [ { "argument": { + "commentStart": 43480, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -34301,6 +38235,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 43479, "end": 0, "operator": "-", "start": 0, @@ -34308,6 +38243,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 43508, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -34327,11 +38263,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 43459, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 43459, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -34343,15 +38281,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 43547, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 43553, "elements": [ { "argument": { + "commentStart": 43563, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -34362,6 +38303,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 43562, "end": 0, "operator": "-", "start": 0, @@ -34370,6 +38312,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 43591, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -34380,6 +38323,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 43590, "end": 0, "operator": "-", "start": 0, @@ -34395,11 +38339,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 43542, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 43542, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -34411,15 +38357,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 43629, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 43635, "elements": [ { "argument": { + "commentStart": 43645, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -34430,6 +38379,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 43644, "end": 0, "operator": "-", "start": 0, @@ -34438,6 +38388,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 43673, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -34448,6 +38399,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 43672, "end": 0, "operator": "-", "start": 0, @@ -34463,11 +38415,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 43624, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 43624, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -34479,14 +38433,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 43711, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 43717, "elements": [ { + "commentStart": 43718, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -34498,6 +38455,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 43737, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -34517,11 +38475,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 43706, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 43706, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -34533,14 +38493,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 43768, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 43774, "elements": [ { + "commentStart": 43783, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -34553,6 +38516,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 43812, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -34563,6 +38527,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 43811, "end": 0, "operator": "-", "start": 0, @@ -34578,11 +38543,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 43763, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 43763, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -34594,14 +38561,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 43850, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 43856, "elements": [ { + "commentStart": 43857, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -34613,6 +38583,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 43877, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -34632,11 +38603,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 43845, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 43845, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -34648,14 +38621,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 43907, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 43913, "elements": [ { + "commentStart": 43922, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -34668,6 +38644,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 43951, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -34678,6 +38655,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 43950, "end": 0, "operator": "-", "start": 0, @@ -34693,11 +38671,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 43902, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 43902, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -34709,14 +38689,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 43988, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 43994, "elements": [ { + "commentStart": 43995, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -34728,6 +38711,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 44015, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -34747,11 +38731,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 43983, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 43983, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -34763,14 +38749,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 44046, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 44052, "elements": [ { + "commentStart": 44061, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -34782,6 +38771,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 44088, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -34801,11 +38791,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 44041, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 44041, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -34817,14 +38809,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 44126, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 44132, "elements": [ { + "commentStart": 44133, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -34836,6 +38831,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 44153, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -34855,11 +38851,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 44121, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 44121, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -34871,15 +38869,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 44184, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 44190, "elements": [ { "argument": { + "commentStart": 44200, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -34890,6 +38891,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 44199, "end": 0, "operator": "-", "start": 0, @@ -34898,6 +38900,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 44229, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -34908,6 +38911,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 44228, "end": 0, "operator": "-", "start": 0, @@ -34923,11 +38927,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 44179, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 44179, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -34939,14 +38945,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 44266, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 44272, "elements": [ { + "commentStart": 44281, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -34959,6 +38968,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 44309, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -34969,6 +38979,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 44308, "end": 0, "operator": "-", "start": 0, @@ -34984,11 +38995,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 44261, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 44261, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35000,14 +39013,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 44346, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 44352, "elements": [ { + "commentStart": 44361, "end": 0, "raw": "0.6751951211858687", "start": 0, @@ -35020,6 +39036,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 44389, "end": 0, "raw": "0.9709424233465593", "start": 0, @@ -35030,6 +39047,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 44388, "end": 0, "operator": "-", "start": 0, @@ -35045,11 +39063,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 44341, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 44341, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35061,15 +39081,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 44426, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 44432, "elements": [ { "argument": { + "commentStart": 44442, "end": 0, "raw": "0.5689619842972184", "start": 0, @@ -35080,6 +39103,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 44441, "end": 0, "operator": "-", "start": 0, @@ -35087,6 +39111,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 44469, "end": 0, "raw": "0.5918969913790362", "start": 0, @@ -35106,11 +39131,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 44421, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 44421, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35122,14 +39149,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 44506, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 44512, "elements": [ { + "commentStart": 44521, "end": 0, "raw": "0.9464450621708211", "start": 0, @@ -35142,6 +39172,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 44549, "end": 0, "raw": "0.2684908127803667", "start": 0, @@ -35152,6 +39183,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 44548, "end": 0, "operator": "-", "start": 0, @@ -35167,11 +39199,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 44501, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 44501, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35183,14 +39217,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 44586, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 44592, "elements": [ { + "commentStart": 44593, "end": 0, "raw": "0.5241732366617591", "start": 0, @@ -35202,6 +39239,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 44613, "end": 0, "raw": "0.9011437416408563", "start": 0, @@ -35221,11 +39259,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 44581, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 44581, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35237,15 +39277,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 44644, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 44650, "elements": [ { "argument": { + "commentStart": 44660, "end": 0, "raw": "0.14255393713960607", "start": 0, @@ -35256,6 +39299,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 44659, "end": 0, "operator": "-", "start": 0, @@ -35264,6 +39308,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 44689, "end": 0, "raw": "0.5194262624564814", "start": 0, @@ -35274,6 +39319,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 44688, "end": 0, "operator": "-", "start": 0, @@ -35289,11 +39335,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 44639, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 44639, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35305,15 +39353,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 44726, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 44732, "elements": [ { "argument": { + "commentStart": 44742, "end": 0, "raw": "0.4287123231350338", "start": 0, @@ -35324,6 +39375,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 44741, "end": 0, "operator": "-", "start": 0, @@ -35332,6 +39384,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 44770, "end": 0, "raw": "0.4223564528725028", "start": 0, @@ -35342,6 +39395,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 44769, "end": 0, "operator": "-", "start": 0, @@ -35357,11 +39411,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 44721, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 44721, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35373,15 +39429,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 44807, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 44813, "elements": [ { "argument": { + "commentStart": 44823, "end": 0, "raw": "0.09316367294024519", "start": 0, @@ -35392,6 +39451,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 44822, "end": 0, "operator": "-", "start": 0, @@ -35400,6 +39460,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 44852, "end": 0, "raw": "0.9063127021008246", "start": 0, @@ -35410,6 +39471,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 44851, "end": 0, "operator": "-", "start": 0, @@ -35425,11 +39487,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 44802, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 44802, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35441,15 +39505,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 44889, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 44895, "elements": [ { "argument": { + "commentStart": 44905, "end": 0, "raw": "0.2767766535558669", "start": 0, @@ -35460,6 +39527,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 44904, "end": 0, "operator": "-", "start": 0, @@ -35467,6 +39535,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 44932, "end": 0, "raw": "0.6816248114129131", "start": 0, @@ -35486,11 +39555,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 44884, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 44884, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35502,14 +39573,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 44969, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 44975, "elements": [ { + "commentStart": 44984, "end": 0, "raw": "0.9796762495562534", "start": 0, @@ -35522,6 +39596,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 45012, "end": 0, "raw": "0.0822145668330625", "start": 0, @@ -35532,6 +39607,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 45011, "end": 0, "operator": "-", "start": 0, @@ -35547,11 +39623,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 44964, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 44964, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35563,15 +39641,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 45049, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 45055, "elements": [ { "argument": { + "commentStart": 45065, "end": 0, "raw": "0.8666513070867441", "start": 0, @@ -35582,6 +39663,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 45064, "end": 0, "operator": "-", "start": 0, @@ -35590,6 +39672,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 45093, "end": 0, "raw": "0.301053160242023", "start": 0, @@ -35600,6 +39683,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 45092, "end": 0, "operator": "-", "start": 0, @@ -35615,11 +39699,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 45044, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 45044, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35631,14 +39717,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 45129, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 45135, "elements": [ { + "commentStart": 45144, "end": 0, "raw": "0.537415656028112", "start": 0, @@ -35650,6 +39739,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 45170, "end": 0, "raw": "0.020272692875002774", "start": 0, @@ -35669,11 +39759,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 45124, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 45124, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35685,14 +39777,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 45209, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 45215, "elements": [ { + "commentStart": 45224, "end": 0, "raw": "0.9332396256457531", "start": 0, @@ -35705,6 +39800,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 45252, "end": 0, "raw": "0.6228175690649898", "start": 0, @@ -35715,6 +39811,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 45251, "end": 0, "operator": "-", "start": 0, @@ -35730,11 +39827,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 45204, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 45204, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35746,14 +39845,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 45289, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 45295, "elements": [ { + "commentStart": 45304, "end": 0, "raw": "0.18052415837320734", "start": 0, @@ -35766,6 +39868,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 45333, "end": 0, "raw": "0.36894384647296197", "start": 0, @@ -35776,6 +39879,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 45332, "end": 0, "operator": "-", "start": 0, @@ -35791,11 +39895,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 45284, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 45284, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35807,14 +39913,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 45371, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 45377, "elements": [ { + "commentStart": 45378, "end": 0, "raw": "0.5384372634075449", "start": 0, @@ -35826,6 +39935,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 45398, "end": 0, "raw": "0.2377565050887107", "start": 0, @@ -35845,11 +39955,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 45366, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 45366, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35861,14 +39973,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 45429, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 45435, "elements": [ { + "commentStart": 45444, "end": 0, "raw": "0.39043436929278874", "start": 0, @@ -35880,6 +39995,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 45472, "end": 0, "raw": "0.14273182483160451", "start": 0, @@ -35899,11 +40015,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 45424, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 45424, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35915,14 +40033,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 45510, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 45516, "elements": [ { + "commentStart": 45525, "end": 0, "raw": "0.09782890412897283", "start": 0, @@ -35934,6 +40055,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 45553, "end": 0, "raw": "0.9907667536909659", "start": 0, @@ -35953,11 +40075,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 45505, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 45505, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -35969,14 +40093,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 45590, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 45596, "elements": [ { + "commentStart": 45605, "end": 0, "raw": "0.5286610085921146", "start": 0, @@ -35989,6 +40116,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 45633, "end": 0, "raw": "0.7924508308419256", "start": 0, @@ -35999,6 +40127,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 45632, "end": 0, "operator": "-", "start": 0, @@ -36014,11 +40143,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 45585, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 45585, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -36030,14 +40161,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 45670, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 45676, "elements": [ { + "commentStart": 45685, "end": 0, "raw": "0.3789978184503342", "start": 0, @@ -36049,6 +40183,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 45712, "end": 0, "raw": "0.12396120576838676", "start": 0, @@ -36068,11 +40203,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 45665, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 45665, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -36084,15 +40221,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 45750, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 45756, "elements": [ { "argument": { + "commentStart": 45766, "end": 0, "raw": "0.9484912744890612", "start": 0, @@ -36103,6 +40243,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 45765, "end": 0, "operator": "-", "start": 0, @@ -36110,6 +40251,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 45793, "end": 0, "raw": "0.6729649846476855", "start": 0, @@ -36129,11 +40271,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 45745, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 45745, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -36145,14 +40289,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 45830, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 45836, "elements": [ { + "commentStart": 45845, "end": 0, "raw": "0.7451758753425153", "start": 0, @@ -36165,6 +40312,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 45873, "end": 0, "raw": "0.21318737562458967", "start": 0, @@ -36175,6 +40323,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 45872, "end": 0, "operator": "-", "start": 0, @@ -36190,11 +40339,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 45825, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 45825, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -36206,14 +40357,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 45911, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 45917, "elements": [ { + "commentStart": 45926, "end": 0, "raw": "0.1873200727251887", "start": 0, @@ -36226,6 +40380,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 45954, "end": 0, "raw": "0.15961374297992448", "start": 0, @@ -36236,6 +40391,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 45953, "end": 0, "operator": "-", "start": 0, @@ -36251,11 +40407,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 45906, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 45906, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -36267,15 +40425,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 45992, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 45998, "elements": [ { "argument": { + "commentStart": 46008, "end": 0, "raw": "0.05729464924537564", "start": 0, @@ -36286,6 +40447,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 46007, "end": 0, "operator": "-", "start": 0, @@ -36294,6 +40456,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 46037, "end": 0, "raw": "0.5436345558508746", "start": 0, @@ -36304,6 +40467,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 46036, "end": 0, "operator": "-", "start": 0, @@ -36319,11 +40483,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 45987, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 45987, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -36335,15 +40501,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 46074, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 46080, "elements": [ { "argument": { + "commentStart": 46090, "end": 0, "raw": "0.09582414374469184", "start": 0, @@ -36354,6 +40523,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 46089, "end": 0, "operator": "-", "start": 0, @@ -36362,6 +40532,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 46119, "end": 0, "raw": "0.7533839681212353", "start": 0, @@ -36372,6 +40543,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 46118, "end": 0, "operator": "-", "start": 0, @@ -36387,11 +40559,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 46069, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 46069, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -36403,15 +40577,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 46156, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 46162, "elements": [ { "argument": { + "commentStart": 46172, "end": 0, "raw": "0.17254116580051848", "start": 0, @@ -36422,6 +40599,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 46171, "end": 0, "operator": "-", "start": 0, @@ -36430,6 +40608,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 46201, "end": 0, "raw": "0.7669113400341137", "start": 0, @@ -36440,6 +40619,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 46200, "end": 0, "operator": "-", "start": 0, @@ -36455,11 +40635,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 46151, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 46151, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -36471,14 +40653,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 46238, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 46244, "elements": [ { + "commentStart": 46245, "end": 0, "raw": "0.8944730032887609", "start": 0, @@ -36490,6 +40675,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 46265, "end": 0, "raw": "0.6093318694741408", "start": 0, @@ -36509,11 +40695,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 46233, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 46233, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -36525,15 +40713,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 46296, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 46302, "elements": [ { "argument": { + "commentStart": 46312, "end": 0, "raw": "0.3670208139314082", "start": 0, @@ -36544,6 +40735,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 46311, "end": 0, "operator": "-", "start": 0, @@ -36551,6 +40743,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 46339, "end": 0, "raw": "0.21201331909674526", "start": 0, @@ -36570,11 +40763,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 46291, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 46291, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -36586,15 +40781,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 46377, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 46383, "elements": [ { "argument": { + "commentStart": 46393, "end": 0, "raw": "0.4707511307971115", "start": 0, @@ -36605,6 +40803,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 46392, "end": 0, "operator": "-", "start": 0, @@ -36612,6 +40811,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 46420, "end": 0, "raw": "0.4905279615419764", "start": 0, @@ -36631,11 +40831,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 46372, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 46372, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -36647,15 +40849,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 46457, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 46463, "elements": [ { "argument": { + "commentStart": 46473, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -36666,6 +40871,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 46472, "end": 0, "operator": "-", "start": 0, @@ -36673,6 +40879,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 46500, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -36692,11 +40899,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 46452, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 46452, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -36708,15 +40917,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 46537, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 46543, "elements": [ { "argument": { + "commentStart": 46553, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -36727,6 +40939,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 46552, "end": 0, "operator": "-", "start": 0, @@ -36735,6 +40948,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 46581, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -36745,6 +40959,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 46580, "end": 0, "operator": "-", "start": 0, @@ -36760,11 +40975,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 46532, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 46532, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -36776,14 +40993,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 46619, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 46625, "elements": [ { + "commentStart": 46634, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -36795,6 +41015,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 46662, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -36814,11 +41035,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 46614, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 46614, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -36830,14 +41053,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 46700, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 46706, "elements": [ { + "commentStart": 46715, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -36849,6 +41075,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 46743, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -36868,11 +41095,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 46695, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 46695, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -36884,15 +41113,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 46781, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 46787, "elements": [ { "argument": { + "commentStart": 46797, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -36903,6 +41135,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 46796, "end": 0, "operator": "-", "start": 0, @@ -36910,6 +41143,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 46825, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -36929,11 +41163,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 46776, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 46776, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -36945,15 +41181,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 46862, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 46868, "elements": [ { "argument": { + "commentStart": 46878, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -36964,6 +41203,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 46877, "end": 0, "operator": "-", "start": 0, @@ -36972,6 +41212,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 46907, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -36982,6 +41223,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 46906, "end": 0, "operator": "-", "start": 0, @@ -36997,11 +41239,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 46857, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 46857, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37013,14 +41257,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 46945, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 46951, "elements": [ { + "commentStart": 46960, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -37033,6 +41280,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 46988, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -37043,6 +41291,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 46987, "end": 0, "operator": "-", "start": 0, @@ -37058,11 +41307,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 46940, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 46940, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37074,14 +41325,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 47026, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 47032, "elements": [ { + "commentStart": 47041, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -37094,6 +41348,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 47072, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -37104,6 +41359,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 47071, "end": 0, "operator": "-", "start": 0, @@ -37119,11 +41375,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 47021, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 47021, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37135,14 +41393,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 47109, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 47115, "elements": [ { + "commentStart": 47124, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -37155,6 +41416,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 47152, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -37165,6 +41427,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 47151, "end": 0, "operator": "-", "start": 0, @@ -37180,11 +41443,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 47104, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 47104, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37196,15 +41461,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 47189, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 47195, "elements": [ { "argument": { + "commentStart": 47205, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -37215,6 +41483,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 47204, "end": 0, "operator": "-", "start": 0, @@ -37222,6 +41491,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 47232, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -37241,11 +41511,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 47184, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 47184, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37257,14 +41529,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 47269, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 47275, "elements": [ { + "commentStart": 47276, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -37276,6 +41551,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 47296, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -37295,11 +41571,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 47264, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 47264, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37311,15 +41589,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 47327, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 47333, "elements": [ { "argument": { + "commentStart": 47343, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -37330,6 +41611,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 47342, "end": 0, "operator": "-", "start": 0, @@ -37337,6 +41619,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 47371, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -37356,11 +41639,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 47322, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 47322, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37372,15 +41657,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 47410, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 47416, "elements": [ { "argument": { + "commentStart": 47426, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -37391,6 +41679,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 47425, "end": 0, "operator": "-", "start": 0, @@ -37399,6 +41688,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 47454, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -37409,6 +41699,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 47453, "end": 0, "operator": "-", "start": 0, @@ -37424,11 +41715,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 47405, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 47405, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37440,15 +41733,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 47492, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 47498, "elements": [ { "argument": { + "commentStart": 47508, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -37459,6 +41755,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 47507, "end": 0, "operator": "-", "start": 0, @@ -37467,6 +41764,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 47536, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -37477,6 +41775,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 47535, "end": 0, "operator": "-", "start": 0, @@ -37492,11 +41791,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 47487, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 47487, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37508,14 +41809,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 47574, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 47580, "elements": [ { + "commentStart": 47581, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -37527,6 +41831,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 47600, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -37546,11 +41851,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 47569, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 47569, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37562,14 +41869,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 47631, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 47637, "elements": [ { + "commentStart": 47646, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -37582,6 +41892,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 47675, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -37592,6 +41903,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 47674, "end": 0, "operator": "-", "start": 0, @@ -37607,11 +41919,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 47626, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 47626, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37623,14 +41937,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 47713, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 47719, "elements": [ { + "commentStart": 47720, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -37642,6 +41959,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 47740, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -37661,11 +41979,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 47708, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 47708, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37677,14 +41997,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 47770, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 47776, "elements": [ { + "commentStart": 47785, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -37697,6 +42020,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 47814, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -37707,6 +42031,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 47813, "end": 0, "operator": "-", "start": 0, @@ -37722,11 +42047,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 47765, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 47765, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37738,14 +42065,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 47851, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 47857, "elements": [ { + "commentStart": 47858, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -37757,6 +42087,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 47878, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -37776,11 +42107,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 47846, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 47846, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37792,14 +42125,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 47909, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 47915, "elements": [ { + "commentStart": 47924, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -37811,6 +42147,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 47951, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -37830,11 +42167,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 47904, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 47904, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37846,14 +42185,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 47989, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 47995, "elements": [ { + "commentStart": 47996, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -37865,6 +42207,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 48016, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -37884,11 +42227,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 47984, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 47984, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37900,15 +42245,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 48047, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 48053, "elements": [ { "argument": { + "commentStart": 48063, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -37919,6 +42267,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 48062, "end": 0, "operator": "-", "start": 0, @@ -37927,6 +42276,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 48092, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -37937,6 +42287,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 48091, "end": 0, "operator": "-", "start": 0, @@ -37952,11 +42303,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 48042, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 48042, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -37968,14 +42321,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 48129, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 48135, "elements": [ { + "commentStart": 48144, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -37988,6 +42344,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 48172, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -37998,6 +42355,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 48171, "end": 0, "operator": "-", "start": 0, @@ -38013,11 +42371,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 48124, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 48124, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -38029,15 +42389,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 48209, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 48215, "elements": [ { "argument": { + "commentStart": 48225, "end": 0, "raw": "0.6716353749059765", "start": 0, @@ -38048,6 +42411,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 48224, "end": 0, "operator": "-", "start": 0, @@ -38056,6 +42420,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 48253, "end": 0, "raw": "0.9605576808879026", "start": 0, @@ -38066,6 +42431,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 48252, "end": 0, "operator": "-", "start": 0, @@ -38081,11 +42447,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 48204, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 48204, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -38097,14 +42465,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 48290, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 48296, "elements": [ { + "commentStart": 48305, "end": 0, "raw": "0.010280170930300203", "start": 0, @@ -38117,6 +42488,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 48335, "end": 0, "raw": "0.37344123662342166", "start": 0, @@ -38127,6 +42499,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 48334, "end": 0, "operator": "-", "start": 0, @@ -38142,11 +42515,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 48285, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 48285, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -38158,14 +42533,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 48373, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 48379, "elements": [ { + "commentStart": 48388, "end": 0, "raw": "0.10357375682791004", "start": 0, @@ -38178,6 +42556,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 48417, "end": 0, "raw": "0.42294321030821425", "start": 0, @@ -38188,6 +42567,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 48416, "end": 0, "operator": "-", "start": 0, @@ -38203,11 +42583,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 48368, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 48368, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -38219,14 +42601,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 48455, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 48461, "elements": [ { + "commentStart": 48470, "end": 0, "raw": "0.4520311575096987", "start": 0, @@ -38239,6 +42624,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 48498, "end": 0, "raw": "0.11232675307600548", "start": 0, @@ -38249,6 +42635,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 48497, "end": 0, "operator": "-", "start": 0, @@ -38264,11 +42651,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 48450, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 48450, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -38280,15 +42669,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 48536, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 48542, "elements": [ { "argument": { + "commentStart": 48552, "end": 0, "raw": "0.8821185914380845", "start": 0, @@ -38299,6 +42691,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 48551, "end": 0, "operator": "-", "start": 0, @@ -38307,6 +42700,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 48580, "end": 0, "raw": "0.7155147434939819", "start": 0, @@ -38317,6 +42711,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 48579, "end": 0, "operator": "-", "start": 0, @@ -38332,11 +42727,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 48531, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 48531, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -38348,14 +42745,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 48617, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 48623, "elements": [ { + "commentStart": 48624, "end": 0, "raw": "0.9195487101690416", "start": 0, @@ -38367,6 +42767,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 48644, "end": 0, "raw": "0.2691627465297364", "start": 0, @@ -38386,11 +42787,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 48612, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 48612, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -38402,14 +42805,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 48675, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 48681, "elements": [ { + "commentStart": 48690, "end": 0, "raw": "0.7098978191546745", "start": 0, @@ -38421,6 +42827,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 48717, "end": 0, "raw": "0.11710004169385968", "start": 0, @@ -38440,11 +42847,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 48670, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 48670, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -38456,15 +42865,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 48755, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 48761, "elements": [ { "argument": { + "commentStart": 48771, "end": 0, "raw": "0.37876368560819995", "start": 0, @@ -38475,6 +42887,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 48770, "end": 0, "operator": "-", "start": 0, @@ -38482,6 +42895,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 48799, "end": 0, "raw": "0.7106729314759084", "start": 0, @@ -38501,11 +42915,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 48750, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 48750, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -38517,15 +42933,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 48836, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 48842, "elements": [ { "argument": { + "commentStart": 48852, "end": 0, "raw": "0.29728126898353335", "start": 0, @@ -38536,6 +42955,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 48851, "end": 0, "operator": "-", "start": 0, @@ -38544,6 +42964,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 48881, "end": 0, "raw": "0.06649734568328003", "start": 0, @@ -38554,6 +42975,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 48880, "end": 0, "operator": "-", "start": 0, @@ -38569,11 +42991,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 48831, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 48831, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -38585,14 +43009,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 48919, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 48925, "elements": [ { + "commentStart": 48934, "end": 0, "raw": "0.22965781558352072", "start": 0, @@ -38605,6 +43032,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 48963, "end": 0, "raw": "0.7601866432836641", "start": 0, @@ -38615,6 +43043,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 48962, "end": 0, "operator": "-", "start": 0, @@ -38630,11 +43059,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 48914, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 48914, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -38646,15 +43077,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 49000, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 49006, "elements": [ { "argument": { + "commentStart": 49016, "end": 0, "raw": "0.6356501074317229", "start": 0, @@ -38665,6 +43099,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 49015, "end": 0, "operator": "-", "start": 0, @@ -38672,6 +43107,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 49043, "end": 0, "raw": "0.19458425399338064", "start": 0, @@ -38691,11 +43127,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 48995, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 48995, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -38707,14 +43145,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 49081, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 49087, "elements": [ { + "commentStart": 49088, "end": 0, "raw": "0.5721251777404546", "start": 0, @@ -38726,6 +43167,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 49108, "end": 0, "raw": "0.2888584097921527", "start": 0, @@ -38745,11 +43187,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 49076, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 49076, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -38761,15 +43205,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 49139, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 49145, "elements": [ { "argument": { + "commentStart": 49155, "end": 0, "raw": "0.9580409549552311", "start": 0, @@ -38780,6 +43227,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 49154, "end": 0, "operator": "-", "start": 0, @@ -38788,6 +43236,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 49183, "end": 0, "raw": "0.02243818192078395", "start": 0, @@ -38798,6 +43247,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 49182, "end": 0, "operator": "-", "start": 0, @@ -38813,11 +43263,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 49134, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 49134, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -38829,14 +43281,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 49221, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 49227, "elements": [ { + "commentStart": 49236, "end": 0, "raw": "0.3299184618602866", "start": 0, @@ -38849,6 +43304,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 49264, "end": 0, "raw": "0.8353726942369875", "start": 0, @@ -38859,6 +43315,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 49263, "end": 0, "operator": "-", "start": 0, @@ -38874,11 +43331,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 49216, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 49216, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -38890,14 +43349,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 49301, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 49307, "elements": [ { + "commentStart": 49316, "end": 0, "raw": "0.7434639386755209", "start": 0, @@ -38910,6 +43372,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 49344, "end": 0, "raw": "0.7919648864138378", "start": 0, @@ -38920,6 +43383,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 49343, "end": 0, "operator": "-", "start": 0, @@ -38935,11 +43399,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 49296, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 49296, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -38951,14 +43417,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 49381, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 49387, "elements": [ { + "commentStart": 49388, "end": 0, "raw": "0.9935751011164615", "start": 0, @@ -38970,6 +43439,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 49408, "end": 0, "raw": "0.9042566468497608", "start": 0, @@ -38989,11 +43459,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 49376, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 49376, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39005,15 +43477,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 49439, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 49445, "elements": [ { "argument": { + "commentStart": 49455, "end": 0, "raw": "0.5035812884687294", "start": 0, @@ -39024,6 +43499,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 49454, "end": 0, "operator": "-", "start": 0, @@ -39031,6 +43507,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 49482, "end": 0, "raw": "0.5150967434989442", "start": 0, @@ -39050,11 +43527,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 49434, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 49434, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39066,14 +43545,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 49519, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 49525, "elements": [ { + "commentStart": 49526, "end": 0, "raw": "0.5526227215900215", "start": 0, @@ -39085,6 +43567,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 49546, "end": 0, "raw": "0.7612604137272441", "start": 0, @@ -39104,11 +43587,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 49514, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 49514, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39120,14 +43605,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 49577, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 49583, "elements": [ { + "commentStart": 49592, "end": 0, "raw": "0.8593271349126876", "start": 0, @@ -39139,6 +43627,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 49619, "end": 0, "raw": "0.08414894953725849", "start": 0, @@ -39158,11 +43647,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 49572, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 49572, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39174,15 +43665,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 49657, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 49663, "elements": [ { "argument": { + "commentStart": 49673, "end": 0, "raw": "0.8181049219192864", "start": 0, @@ -39193,6 +43687,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 49672, "end": 0, "operator": "-", "start": 0, @@ -39201,6 +43696,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 49701, "end": 0, "raw": "0.903548131323352", "start": 0, @@ -39211,6 +43707,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 49700, "end": 0, "operator": "-", "start": 0, @@ -39226,11 +43723,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 49652, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 49652, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39242,14 +43741,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 49737, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 49743, "elements": [ { + "commentStart": 49752, "end": 0, "raw": "0.3165782044458305", "start": 0, @@ -39262,6 +43764,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 49780, "end": 0, "raw": "0.24189274252014914", "start": 0, @@ -39272,6 +43775,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 49779, "end": 0, "operator": "-", "start": 0, @@ -39287,11 +43791,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 49732, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 49732, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39303,15 +43809,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 49818, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 49824, "elements": [ { "argument": { + "commentStart": 49834, "end": 0, "raw": "0.44390956414045135", "start": 0, @@ -39322,6 +43831,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 49833, "end": 0, "operator": "-", "start": 0, @@ -39330,6 +43840,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 49863, "end": 0, "raw": "0.25912591535126905", "start": 0, @@ -39340,6 +43851,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 49862, "end": 0, "operator": "-", "start": 0, @@ -39355,11 +43867,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 49813, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 49813, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39371,15 +43885,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 49901, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 49907, "elements": [ { "argument": { + "commentStart": 49917, "end": 0, "raw": "0.6605165911891009", "start": 0, @@ -39390,6 +43907,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 49916, "end": 0, "operator": "-", "start": 0, @@ -39398,6 +43916,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 49945, "end": 0, "raw": "0.40355115288839194", "start": 0, @@ -39408,6 +43927,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 49944, "end": 0, "operator": "-", "start": 0, @@ -39423,11 +43943,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 49896, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 49896, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39439,15 +43961,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 49983, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 49989, "elements": [ { "argument": { + "commentStart": 49999, "end": 0, "raw": "0.7170489950180006", "start": 0, @@ -39458,6 +43983,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 49998, "end": 0, "operator": "-", "start": 0, @@ -39465,6 +43991,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 50026, "end": 0, "raw": "0.23454356079651384", "start": 0, @@ -39484,11 +44011,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 49978, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 49978, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39500,15 +44029,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 50064, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 50070, "elements": [ { "argument": { + "commentStart": 50080, "end": 0, "raw": "0.2568187045379722", "start": 0, @@ -39519,6 +44051,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 50079, "end": 0, "operator": "-", "start": 0, @@ -39527,6 +44060,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 50108, "end": 0, "raw": "0.45031188717601367", "start": 0, @@ -39537,6 +44071,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 50107, "end": 0, "operator": "-", "start": 0, @@ -39552,11 +44087,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 50059, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 50059, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39568,14 +44105,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 50146, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 50152, "elements": [ { + "commentStart": 50161, "end": 0, "raw": "0.6751951211858687", "start": 0, @@ -39588,6 +44128,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 50189, "end": 0, "raw": "0.9709424233465593", "start": 0, @@ -39598,6 +44139,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 50188, "end": 0, "operator": "-", "start": 0, @@ -39613,11 +44155,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 50141, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 50141, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39629,15 +44173,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 50226, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 50232, "elements": [ { "argument": { + "commentStart": 50242, "end": 0, "raw": "0.5689619842972184", "start": 0, @@ -39648,6 +44195,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 50241, "end": 0, "operator": "-", "start": 0, @@ -39655,6 +44203,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 50269, "end": 0, "raw": "0.5918969913790362", "start": 0, @@ -39674,11 +44223,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 50221, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 50221, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39690,15 +44241,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 50306, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 50312, "elements": [ { "argument": { + "commentStart": 50322, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -39709,6 +44263,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 50321, "end": 0, "operator": "-", "start": 0, @@ -39716,6 +44271,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 50349, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -39735,11 +44291,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 50301, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 50301, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39751,15 +44309,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 50386, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 50392, "elements": [ { "argument": { + "commentStart": 50402, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -39770,6 +44331,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 50401, "end": 0, "operator": "-", "start": 0, @@ -39778,6 +44340,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 50430, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -39788,6 +44351,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 50429, "end": 0, "operator": "-", "start": 0, @@ -39803,11 +44367,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 50381, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 50381, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39819,14 +44385,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 50468, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 50474, "elements": [ { + "commentStart": 50483, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -39838,6 +44407,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 50511, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -39857,11 +44427,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 50463, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 50463, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39873,14 +44445,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 50549, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 50555, "elements": [ { + "commentStart": 50564, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -39892,6 +44467,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 50592, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -39911,11 +44487,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 50544, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 50544, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39927,15 +44505,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 50630, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 50636, "elements": [ { "argument": { + "commentStart": 50646, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -39946,6 +44527,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 50645, "end": 0, "operator": "-", "start": 0, @@ -39953,6 +44535,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 50674, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -39972,11 +44555,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 50625, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 50625, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -39988,15 +44573,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 50711, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 50717, "elements": [ { "argument": { + "commentStart": 50727, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -40007,6 +44595,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 50726, "end": 0, "operator": "-", "start": 0, @@ -40015,6 +44604,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 50756, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -40025,6 +44615,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 50755, "end": 0, "operator": "-", "start": 0, @@ -40040,11 +44631,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 50706, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 50706, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -40056,14 +44649,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 50794, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 50800, "elements": [ { + "commentStart": 50809, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -40076,6 +44672,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 50837, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -40086,6 +44683,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 50836, "end": 0, "operator": "-", "start": 0, @@ -40101,11 +44699,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 50789, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 50789, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -40117,14 +44717,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 50875, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 50881, "elements": [ { + "commentStart": 50890, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -40137,6 +44740,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 50921, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -40147,6 +44751,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 50920, "end": 0, "operator": "-", "start": 0, @@ -40162,11 +44767,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 50870, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 50870, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -40178,14 +44785,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 50958, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 50964, "elements": [ { + "commentStart": 50973, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -40198,6 +44808,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 51001, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -40208,6 +44819,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 51000, "end": 0, "operator": "-", "start": 0, @@ -40223,11 +44835,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 50953, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 50953, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -40239,15 +44853,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 51038, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 51044, "elements": [ { "argument": { + "commentStart": 51054, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -40258,6 +44875,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 51053, "end": 0, "operator": "-", "start": 0, @@ -40265,6 +44883,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 51081, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -40284,11 +44903,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 51033, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 51033, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -40300,14 +44921,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 51118, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 51124, "elements": [ { + "commentStart": 51125, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -40319,6 +44943,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 51145, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -40338,11 +44963,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 51113, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 51113, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -40354,15 +44981,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 51176, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 51182, "elements": [ { "argument": { + "commentStart": 51192, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -40373,6 +45003,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 51191, "end": 0, "operator": "-", "start": 0, @@ -40380,6 +45011,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 51220, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -40399,11 +45031,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 51171, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 51171, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -40415,15 +45049,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 51259, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 51265, "elements": [ { "argument": { + "commentStart": 51275, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -40434,6 +45071,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 51274, "end": 0, "operator": "-", "start": 0, @@ -40442,6 +45080,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 51303, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -40452,6 +45091,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 51302, "end": 0, "operator": "-", "start": 0, @@ -40467,11 +45107,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 51254, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 51254, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -40483,15 +45125,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 51341, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 51347, "elements": [ { "argument": { + "commentStart": 51357, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -40502,6 +45147,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 51356, "end": 0, "operator": "-", "start": 0, @@ -40510,6 +45156,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 51385, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -40520,6 +45167,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 51384, "end": 0, "operator": "-", "start": 0, @@ -40535,11 +45183,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 51336, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 51336, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -40551,14 +45201,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 51423, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 51429, "elements": [ { + "commentStart": 51430, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -40570,6 +45223,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 51449, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -40589,11 +45243,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 51418, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 51418, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -40605,14 +45261,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 51480, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 51486, "elements": [ { + "commentStart": 51495, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -40625,6 +45284,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 51524, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -40635,6 +45295,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 51523, "end": 0, "operator": "-", "start": 0, @@ -40650,11 +45311,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 51475, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 51475, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -40666,14 +45329,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 51562, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 51568, "elements": [ { + "commentStart": 51569, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -40685,6 +45351,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 51589, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -40704,11 +45371,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 51557, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 51557, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -40720,14 +45389,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 51619, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 51625, "elements": [ { + "commentStart": 51634, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -40740,6 +45412,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 51663, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -40750,6 +45423,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 51662, "end": 0, "operator": "-", "start": 0, @@ -40765,11 +45439,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 51614, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 51614, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -40781,14 +45457,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 51700, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 51706, "elements": [ { + "commentStart": 51707, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -40800,6 +45479,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 51727, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -40819,11 +45499,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 51695, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 51695, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -40835,14 +45517,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 51758, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 51764, "elements": [ { + "commentStart": 51773, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -40854,6 +45539,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 51800, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -40873,11 +45559,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 51753, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 51753, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -40889,14 +45577,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 51838, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 51844, "elements": [ { + "commentStart": 51845, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -40908,6 +45599,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 51865, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -40927,11 +45619,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 51833, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 51833, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -40943,15 +45637,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 51896, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 51902, "elements": [ { "argument": { + "commentStart": 51912, "end": 0, "raw": "0.3670208139314082", "start": 0, @@ -40962,6 +45659,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 51911, "end": 0, "operator": "-", "start": 0, @@ -40969,6 +45667,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 51939, "end": 0, "raw": "0.21201331909674526", "start": 0, @@ -40988,11 +45687,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 51891, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 51891, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41004,15 +45705,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 51977, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 51983, "elements": [ { "argument": { + "commentStart": 51993, "end": 0, "raw": "0.4707511307971115", "start": 0, @@ -41023,6 +45727,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 51992, "end": 0, "operator": "-", "start": 0, @@ -41030,6 +45735,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 52020, "end": 0, "raw": "0.4905279615419764", "start": 0, @@ -41049,11 +45755,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 51972, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 51972, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41065,15 +45773,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 52057, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 52063, "elements": [ { "argument": { + "commentStart": 52073, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -41084,6 +45795,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 52072, "end": 0, "operator": "-", "start": 0, @@ -41091,6 +45803,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 52100, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -41110,11 +45823,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 52052, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 52052, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41126,15 +45841,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 52137, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 52143, "elements": [ { "argument": { + "commentStart": 52153, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -41145,6 +45863,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 52152, "end": 0, "operator": "-", "start": 0, @@ -41153,6 +45872,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 52181, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -41163,6 +45883,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 52180, "end": 0, "operator": "-", "start": 0, @@ -41178,11 +45899,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 52132, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 52132, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41194,14 +45917,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 52219, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 52225, "elements": [ { + "commentStart": 52234, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -41213,6 +45939,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 52262, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -41232,11 +45959,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 52214, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 52214, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41248,14 +45977,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 52300, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 52306, "elements": [ { + "commentStart": 52315, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -41267,6 +45999,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 52343, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -41286,11 +46019,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 52295, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 52295, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41302,15 +46037,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 52381, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 52387, "elements": [ { "argument": { + "commentStart": 52397, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -41321,6 +46059,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 52396, "end": 0, "operator": "-", "start": 0, @@ -41328,6 +46067,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 52425, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -41347,11 +46087,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 52376, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 52376, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41363,15 +46105,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 52462, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 52468, "elements": [ { "argument": { + "commentStart": 52478, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -41382,6 +46127,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 52477, "end": 0, "operator": "-", "start": 0, @@ -41390,6 +46136,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 52507, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -41400,6 +46147,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 52506, "end": 0, "operator": "-", "start": 0, @@ -41415,11 +46163,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 52457, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 52457, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41431,14 +46181,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 52545, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 52551, "elements": [ { + "commentStart": 52560, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -41451,6 +46204,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 52588, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -41461,6 +46215,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 52587, "end": 0, "operator": "-", "start": 0, @@ -41476,11 +46231,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 52540, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 52540, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41492,14 +46249,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 52626, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 52632, "elements": [ { + "commentStart": 52641, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -41512,6 +46272,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 52672, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -41522,6 +46283,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 52671, "end": 0, "operator": "-", "start": 0, @@ -41537,11 +46299,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 52621, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 52621, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41553,14 +46317,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 52709, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 52715, "elements": [ { + "commentStart": 52724, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -41573,6 +46340,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 52752, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -41583,6 +46351,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 52751, "end": 0, "operator": "-", "start": 0, @@ -41598,11 +46367,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 52704, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 52704, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41614,15 +46385,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 52789, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 52795, "elements": [ { "argument": { + "commentStart": 52805, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -41633,6 +46407,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 52804, "end": 0, "operator": "-", "start": 0, @@ -41640,6 +46415,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 52832, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -41659,11 +46435,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 52784, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 52784, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41675,14 +46453,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 52869, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 52875, "elements": [ { + "commentStart": 52876, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -41694,6 +46475,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 52896, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -41713,11 +46495,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 52864, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 52864, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41729,15 +46513,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 52927, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 52933, "elements": [ { "argument": { + "commentStart": 52943, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -41748,6 +46535,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 52942, "end": 0, "operator": "-", "start": 0, @@ -41755,6 +46543,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 52971, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -41774,11 +46563,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 52922, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 52922, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41790,15 +46581,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 53010, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 53016, "elements": [ { "argument": { + "commentStart": 53026, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -41809,6 +46603,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 53025, "end": 0, "operator": "-", "start": 0, @@ -41817,6 +46612,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 53054, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -41827,6 +46623,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 53053, "end": 0, "operator": "-", "start": 0, @@ -41842,11 +46639,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 53005, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 53005, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41858,15 +46657,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 53092, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 53098, "elements": [ { "argument": { + "commentStart": 53108, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -41877,6 +46679,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 53107, "end": 0, "operator": "-", "start": 0, @@ -41885,6 +46688,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 53136, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -41895,6 +46699,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 53135, "end": 0, "operator": "-", "start": 0, @@ -41910,11 +46715,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 53087, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 53087, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41926,14 +46733,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 53174, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 53180, "elements": [ { + "commentStart": 53181, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -41945,6 +46755,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 53200, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -41964,11 +46775,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 53169, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 53169, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -41980,14 +46793,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 53231, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 53237, "elements": [ { + "commentStart": 53246, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -42000,6 +46816,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 53275, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -42010,6 +46827,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 53274, "end": 0, "operator": "-", "start": 0, @@ -42025,11 +46843,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 53226, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 53226, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42041,14 +46861,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 53313, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 53319, "elements": [ { + "commentStart": 53320, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -42060,6 +46883,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 53340, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -42079,11 +46903,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 53308, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 53308, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42095,14 +46921,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 53370, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 53376, "elements": [ { + "commentStart": 53385, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -42115,6 +46944,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 53414, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -42125,6 +46955,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 53413, "end": 0, "operator": "-", "start": 0, @@ -42140,11 +46971,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 53365, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 53365, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42156,14 +46989,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 53451, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 53457, "elements": [ { + "commentStart": 53458, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -42175,6 +47011,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 53478, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -42194,11 +47031,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 53446, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 53446, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42210,14 +47049,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 53509, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 53515, "elements": [ { + "commentStart": 53524, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -42229,6 +47071,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 53551, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -42248,11 +47091,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 53504, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 53504, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42264,14 +47109,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 53589, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 53595, "elements": [ { + "commentStart": 53596, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -42283,6 +47131,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 53616, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -42302,11 +47151,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 53584, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 53584, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42318,15 +47169,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 53647, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 53653, "elements": [ { "argument": { + "commentStart": 53663, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -42337,6 +47191,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 53662, "end": 0, "operator": "-", "start": 0, @@ -42345,6 +47200,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 53692, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -42355,6 +47211,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 53691, "end": 0, "operator": "-", "start": 0, @@ -42370,11 +47227,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 53642, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 53642, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42386,14 +47245,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 53729, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 53735, "elements": [ { + "commentStart": 53744, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -42406,6 +47268,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 53772, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -42416,6 +47279,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 53771, "end": 0, "operator": "-", "start": 0, @@ -42431,11 +47295,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 53724, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 53724, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42447,15 +47313,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 53809, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 53815, "elements": [ { "argument": { + "commentStart": 53825, "end": 0, "raw": "0.6716353749059765", "start": 0, @@ -42466,6 +47335,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 53824, "end": 0, "operator": "-", "start": 0, @@ -42474,6 +47344,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 53853, "end": 0, "raw": "0.9605576808879026", "start": 0, @@ -42484,6 +47355,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 53852, "end": 0, "operator": "-", "start": 0, @@ -42499,11 +47371,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 53804, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 53804, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42515,14 +47389,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 53890, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 53896, "elements": [ { + "commentStart": 53905, "end": 0, "raw": "0.010280170930300203", "start": 0, @@ -42535,6 +47412,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 53935, "end": 0, "raw": "0.37344123662342166", "start": 0, @@ -42545,6 +47423,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 53934, "end": 0, "operator": "-", "start": 0, @@ -42560,11 +47439,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 53885, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 53885, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42576,15 +47457,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 53973, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 53979, "elements": [ { "argument": { + "commentStart": 53989, "end": 0, "raw": "0.3670208139314082", "start": 0, @@ -42595,6 +47479,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 53988, "end": 0, "operator": "-", "start": 0, @@ -42602,6 +47487,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 54016, "end": 0, "raw": "0.21201331909674526", "start": 0, @@ -42621,11 +47507,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 53968, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 53968, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42637,15 +47525,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 54054, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 54060, "elements": [ { "argument": { + "commentStart": 54070, "end": 0, "raw": "0.4707511307971115", "start": 0, @@ -42656,6 +47547,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 54069, "end": 0, "operator": "-", "start": 0, @@ -42663,6 +47555,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 54097, "end": 0, "raw": "0.4905279615419764", "start": 0, @@ -42682,11 +47575,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 54049, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 54049, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42698,15 +47593,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 54134, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 54140, "elements": [ { "argument": { + "commentStart": 54150, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -42717,6 +47615,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 54149, "end": 0, "operator": "-", "start": 0, @@ -42724,6 +47623,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 54177, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -42743,11 +47643,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 54129, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 54129, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42759,15 +47661,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 54214, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 54220, "elements": [ { "argument": { + "commentStart": 54230, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -42778,6 +47683,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 54229, "end": 0, "operator": "-", "start": 0, @@ -42786,6 +47692,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 54258, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -42796,6 +47703,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 54257, "end": 0, "operator": "-", "start": 0, @@ -42811,11 +47719,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 54209, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 54209, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42827,14 +47737,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 54296, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 54302, "elements": [ { + "commentStart": 54311, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -42846,6 +47759,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 54339, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -42865,11 +47779,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 54291, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 54291, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42881,14 +47797,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 54377, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 54383, "elements": [ { + "commentStart": 54392, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -42900,6 +47819,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 54420, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -42919,11 +47839,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 54372, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 54372, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42935,15 +47857,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 54458, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 54464, "elements": [ { "argument": { + "commentStart": 54474, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -42954,6 +47879,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 54473, "end": 0, "operator": "-", "start": 0, @@ -42961,6 +47887,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 54502, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -42980,11 +47907,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 54453, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 54453, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -42996,15 +47925,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 54539, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 54545, "elements": [ { "argument": { + "commentStart": 54555, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -43015,6 +47947,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 54554, "end": 0, "operator": "-", "start": 0, @@ -43023,6 +47956,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 54584, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -43033,6 +47967,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 54583, "end": 0, "operator": "-", "start": 0, @@ -43048,11 +47983,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 54534, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 54534, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -43064,14 +48001,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 54622, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 54628, "elements": [ { + "commentStart": 54637, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -43084,6 +48024,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 54665, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -43094,6 +48035,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 54664, "end": 0, "operator": "-", "start": 0, @@ -43109,11 +48051,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 54617, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 54617, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -43125,14 +48069,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 54703, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 54709, "elements": [ { + "commentStart": 54718, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -43145,6 +48092,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 54749, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -43155,6 +48103,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 54748, "end": 0, "operator": "-", "start": 0, @@ -43170,11 +48119,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 54698, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 54698, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -43186,14 +48137,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 54786, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 54792, "elements": [ { + "commentStart": 54801, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -43206,6 +48160,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 54829, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -43216,6 +48171,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 54828, "end": 0, "operator": "-", "start": 0, @@ -43231,11 +48187,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 54781, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 54781, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -43247,15 +48205,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 54866, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 54872, "elements": [ { "argument": { + "commentStart": 54882, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -43266,6 +48227,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 54881, "end": 0, "operator": "-", "start": 0, @@ -43273,6 +48235,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 54909, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -43292,11 +48255,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 54861, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 54861, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -43308,14 +48273,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 54946, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 54952, "elements": [ { + "commentStart": 54953, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -43327,6 +48295,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 54973, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -43346,11 +48315,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 54941, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 54941, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -43362,15 +48333,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 55004, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 55010, "elements": [ { "argument": { + "commentStart": 55020, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -43381,6 +48355,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 55019, "end": 0, "operator": "-", "start": 0, @@ -43388,6 +48363,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 55048, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -43407,11 +48383,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 54999, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 54999, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -43423,15 +48401,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 55087, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 55093, "elements": [ { "argument": { + "commentStart": 55103, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -43442,6 +48423,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 55102, "end": 0, "operator": "-", "start": 0, @@ -43450,6 +48432,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 55131, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -43460,6 +48443,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 55130, "end": 0, "operator": "-", "start": 0, @@ -43475,11 +48459,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 55082, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 55082, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -43491,15 +48477,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 55169, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 55175, "elements": [ { "argument": { + "commentStart": 55185, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -43510,6 +48499,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 55184, "end": 0, "operator": "-", "start": 0, @@ -43518,6 +48508,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 55213, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -43528,6 +48519,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 55212, "end": 0, "operator": "-", "start": 0, @@ -43543,11 +48535,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 55164, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 55164, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -43559,14 +48553,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 55251, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 55257, "elements": [ { + "commentStart": 55258, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -43578,6 +48575,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 55277, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -43597,11 +48595,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 55246, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 55246, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -43613,14 +48613,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 55308, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 55314, "elements": [ { + "commentStart": 55323, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -43633,6 +48636,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 55352, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -43643,6 +48647,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 55351, "end": 0, "operator": "-", "start": 0, @@ -43658,11 +48663,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 55303, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 55303, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -43674,14 +48681,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 55390, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 55396, "elements": [ { + "commentStart": 55397, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -43693,6 +48703,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 55417, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -43712,11 +48723,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 55385, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 55385, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -43728,14 +48741,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 55447, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 55453, "elements": [ { + "commentStart": 55462, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -43748,6 +48764,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 55491, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -43758,6 +48775,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 55490, "end": 0, "operator": "-", "start": 0, @@ -43773,11 +48791,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 55442, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 55442, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -43789,14 +48809,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 55528, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 55534, "elements": [ { + "commentStart": 55535, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -43808,6 +48831,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 55555, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -43827,11 +48851,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 55523, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 55523, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -43843,14 +48869,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 55586, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 55592, "elements": [ { + "commentStart": 55601, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -43862,6 +48891,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 55628, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -43881,11 +48911,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 55581, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 55581, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -43897,14 +48929,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 55666, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 55672, "elements": [ { + "commentStart": 55673, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -43916,6 +48951,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 55693, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -43935,11 +48971,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 55661, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 55661, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -43951,15 +48989,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 55724, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 55730, "elements": [ { "argument": { + "commentStart": 55740, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -43970,6 +49011,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 55739, "end": 0, "operator": "-", "start": 0, @@ -43978,6 +49020,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 55769, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -43988,6 +49031,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 55768, "end": 0, "operator": "-", "start": 0, @@ -44003,11 +49047,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 55719, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 55719, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -44019,14 +49065,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 55806, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 55812, "elements": [ { + "commentStart": 55821, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -44039,6 +49088,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 55849, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -44049,6 +49099,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 55848, "end": 0, "operator": "-", "start": 0, @@ -44064,11 +49115,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 55801, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 55801, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -44080,15 +49133,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 55886, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 55892, "elements": [ { "argument": { + "commentStart": 55902, "end": 0, "raw": "0.6716353749059765", "start": 0, @@ -44099,6 +49155,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 55901, "end": 0, "operator": "-", "start": 0, @@ -44107,6 +49164,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 55930, "end": 0, "raw": "0.9605576808879026", "start": 0, @@ -44117,6 +49175,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 55929, "end": 0, "operator": "-", "start": 0, @@ -44132,11 +49191,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 55881, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 55881, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -44148,14 +49209,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 55967, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 55973, "elements": [ { + "commentStart": 55982, "end": 0, "raw": "0.010280170930300203", "start": 0, @@ -44168,6 +49232,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 56012, "end": 0, "raw": "0.37344123662342166", "start": 0, @@ -44178,6 +49243,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 56011, "end": 0, "operator": "-", "start": 0, @@ -44193,11 +49259,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 55962, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 55962, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -44209,14 +49277,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 56050, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 56056, "elements": [ { + "commentStart": 56065, "end": 0, "raw": "0.10357375682791004", "start": 0, @@ -44229,6 +49300,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 56094, "end": 0, "raw": "0.42294321030821425", "start": 0, @@ -44239,6 +49311,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 56093, "end": 0, "operator": "-", "start": 0, @@ -44254,11 +49327,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 56045, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 56045, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -44270,14 +49345,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 56132, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 56138, "elements": [ { + "commentStart": 56147, "end": 0, "raw": "0.4520311575096987", "start": 0, @@ -44290,6 +49368,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 56175, "end": 0, "raw": "0.11232675307600548", "start": 0, @@ -44300,6 +49379,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 56174, "end": 0, "operator": "-", "start": 0, @@ -44315,11 +49395,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 56127, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 56127, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -44331,15 +49413,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 56213, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 56219, "elements": [ { "argument": { + "commentStart": 56229, "end": 0, "raw": "0.8821185914380845", "start": 0, @@ -44350,6 +49435,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 56228, "end": 0, "operator": "-", "start": 0, @@ -44358,6 +49444,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 56257, "end": 0, "raw": "0.7155147434939819", "start": 0, @@ -44368,6 +49455,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 56256, "end": 0, "operator": "-", "start": 0, @@ -44383,11 +49471,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 56208, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 56208, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -44399,14 +49489,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 56294, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 56300, "elements": [ { + "commentStart": 56301, "end": 0, "raw": "0.9195487101690416", "start": 0, @@ -44418,6 +49511,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 56321, "end": 0, "raw": "0.2691627465297364", "start": 0, @@ -44437,11 +49531,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 56289, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 56289, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -44453,14 +49549,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 56352, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 56358, "elements": [ { + "commentStart": 56367, "end": 0, "raw": "0.7098978191546745", "start": 0, @@ -44472,6 +49571,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 56394, "end": 0, "raw": "0.11710004169385968", "start": 0, @@ -44491,11 +49591,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 56347, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 56347, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -44507,15 +49609,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 56432, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 56438, "elements": [ { "argument": { + "commentStart": 56448, "end": 0, "raw": "0.37876368560819995", "start": 0, @@ -44526,6 +49631,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 56447, "end": 0, "operator": "-", "start": 0, @@ -44533,6 +49639,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 56476, "end": 0, "raw": "0.7106729314759084", "start": 0, @@ -44552,11 +49659,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 56427, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 56427, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -44568,15 +49677,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 56513, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 56519, "elements": [ { "argument": { + "commentStart": 56529, "end": 0, "raw": "0.29728126898353335", "start": 0, @@ -44587,6 +49699,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 56528, "end": 0, "operator": "-", "start": 0, @@ -44595,6 +49708,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 56558, "end": 0, "raw": "0.06649734568328003", "start": 0, @@ -44605,6 +49719,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 56557, "end": 0, "operator": "-", "start": 0, @@ -44620,11 +49735,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 56508, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 56508, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -44636,14 +49753,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 56596, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 56602, "elements": [ { + "commentStart": 56611, "end": 0, "raw": "0.22965781558352072", "start": 0, @@ -44656,6 +49776,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 56640, "end": 0, "raw": "0.7601866432836641", "start": 0, @@ -44666,6 +49787,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 56639, "end": 0, "operator": "-", "start": 0, @@ -44681,11 +49803,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 56591, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 56591, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -44697,15 +49821,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 56677, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 56683, "elements": [ { "argument": { + "commentStart": 56693, "end": 0, "raw": "0.6356501074317229", "start": 0, @@ -44716,6 +49843,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 56692, "end": 0, "operator": "-", "start": 0, @@ -44723,6 +49851,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 56720, "end": 0, "raw": "0.19458425399338064", "start": 0, @@ -44742,11 +49871,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 56672, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 56672, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -44758,14 +49889,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 56758, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 56764, "elements": [ { + "commentStart": 56765, "end": 0, "raw": "0.5721251777404546", "start": 0, @@ -44777,6 +49911,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 56785, "end": 0, "raw": "0.2888584097921527", "start": 0, @@ -44796,11 +49931,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 56753, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 56753, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -44812,15 +49949,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 56816, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 56822, "elements": [ { "argument": { + "commentStart": 56832, "end": 0, "raw": "0.9580409549552311", "start": 0, @@ -44831,6 +49971,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 56831, "end": 0, "operator": "-", "start": 0, @@ -44839,6 +49980,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 56860, "end": 0, "raw": "0.02243818192078395", "start": 0, @@ -44849,6 +49991,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 56859, "end": 0, "operator": "-", "start": 0, @@ -44864,11 +50007,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 56811, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 56811, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -44880,14 +50025,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 56898, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 56904, "elements": [ { + "commentStart": 56913, "end": 0, "raw": "0.3299184618602866", "start": 0, @@ -44900,6 +50048,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 56941, "end": 0, "raw": "0.8353726942369875", "start": 0, @@ -44910,6 +50059,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 56940, "end": 0, "operator": "-", "start": 0, @@ -44925,11 +50075,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 56893, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 56893, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -44941,14 +50093,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 56978, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 56984, "elements": [ { + "commentStart": 56993, "end": 0, "raw": "0.7434639386755209", "start": 0, @@ -44961,6 +50116,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 57021, "end": 0, "raw": "0.7919648864138378", "start": 0, @@ -44971,6 +50127,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 57020, "end": 0, "operator": "-", "start": 0, @@ -44986,11 +50143,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 56973, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 56973, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45002,14 +50161,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 57058, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 57064, "elements": [ { + "commentStart": 57065, "end": 0, "raw": "0.9935751011164615", "start": 0, @@ -45021,6 +50183,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 57085, "end": 0, "raw": "0.9042566468497608", "start": 0, @@ -45040,11 +50203,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 57053, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 57053, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45056,15 +50221,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 57116, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 57122, "elements": [ { "argument": { + "commentStart": 57132, "end": 0, "raw": "0.5035812884687294", "start": 0, @@ -45075,6 +50243,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 57131, "end": 0, "operator": "-", "start": 0, @@ -45082,6 +50251,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 57159, "end": 0, "raw": "0.5150967434989442", "start": 0, @@ -45101,11 +50271,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 57111, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 57111, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45117,14 +50289,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 57196, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 57202, "elements": [ { + "commentStart": 57203, "end": 0, "raw": "0.5526227215900215", "start": 0, @@ -45136,6 +50311,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 57223, "end": 0, "raw": "0.7612604137272441", "start": 0, @@ -45155,11 +50331,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 57191, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 57191, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45171,14 +50349,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 57254, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 57260, "elements": [ { + "commentStart": 57269, "end": 0, "raw": "0.8593271349126876", "start": 0, @@ -45190,6 +50371,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 57296, "end": 0, "raw": "0.08414894953725849", "start": 0, @@ -45209,11 +50391,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 57249, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 57249, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45225,15 +50409,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 57334, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 57340, "elements": [ { "argument": { + "commentStart": 57350, "end": 0, "raw": "0.8181049219192864", "start": 0, @@ -45244,6 +50431,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 57349, "end": 0, "operator": "-", "start": 0, @@ -45252,6 +50440,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 57378, "end": 0, "raw": "0.903548131323352", "start": 0, @@ -45262,6 +50451,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 57377, "end": 0, "operator": "-", "start": 0, @@ -45277,11 +50467,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 57329, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 57329, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45293,14 +50485,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 57414, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 57420, "elements": [ { + "commentStart": 57429, "end": 0, "raw": "0.3165782044458305", "start": 0, @@ -45313,6 +50508,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 57457, "end": 0, "raw": "0.24189274252014914", "start": 0, @@ -45323,6 +50519,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 57456, "end": 0, "operator": "-", "start": 0, @@ -45338,11 +50535,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 57409, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 57409, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45354,15 +50553,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 57495, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 57501, "elements": [ { "argument": { + "commentStart": 57511, "end": 0, "raw": "0.44390956414045135", "start": 0, @@ -45373,6 +50575,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 57510, "end": 0, "operator": "-", "start": 0, @@ -45381,6 +50584,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 57540, "end": 0, "raw": "0.25912591535126905", "start": 0, @@ -45391,6 +50595,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 57539, "end": 0, "operator": "-", "start": 0, @@ -45406,11 +50611,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 57490, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 57490, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45422,15 +50629,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 57578, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 57584, "elements": [ { "argument": { + "commentStart": 57594, "end": 0, "raw": "0.6605165911891009", "start": 0, @@ -45441,6 +50651,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 57593, "end": 0, "operator": "-", "start": 0, @@ -45449,6 +50660,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 57622, "end": 0, "raw": "0.40355115288839194", "start": 0, @@ -45459,6 +50671,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 57621, "end": 0, "operator": "-", "start": 0, @@ -45474,11 +50687,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 57573, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 57573, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45490,15 +50705,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 57660, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 57666, "elements": [ { "argument": { + "commentStart": 57676, "end": 0, "raw": "0.7170489950180006", "start": 0, @@ -45509,6 +50727,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 57675, "end": 0, "operator": "-", "start": 0, @@ -45516,6 +50735,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 57703, "end": 0, "raw": "0.23454356079651384", "start": 0, @@ -45535,11 +50755,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 57655, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 57655, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45551,15 +50773,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 57741, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 57747, "elements": [ { "argument": { + "commentStart": 57757, "end": 0, "raw": "0.2568187045379722", "start": 0, @@ -45570,6 +50795,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 57756, "end": 0, "operator": "-", "start": 0, @@ -45578,6 +50804,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 57785, "end": 0, "raw": "0.45031188717601367", "start": 0, @@ -45588,6 +50815,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 57784, "end": 0, "operator": "-", "start": 0, @@ -45603,11 +50831,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 57736, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 57736, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45619,14 +50849,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 57823, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 57829, "elements": [ { + "commentStart": 57838, "end": 0, "raw": "0.6751951211858687", "start": 0, @@ -45639,6 +50872,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 57866, "end": 0, "raw": "0.9709424233465593", "start": 0, @@ -45649,6 +50883,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 57865, "end": 0, "operator": "-", "start": 0, @@ -45664,11 +50899,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 57818, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 57818, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45680,15 +50917,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 57903, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 57909, "elements": [ { "argument": { + "commentStart": 57919, "end": 0, "raw": "0.5689619842972184", "start": 0, @@ -45699,6 +50939,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 57918, "end": 0, "operator": "-", "start": 0, @@ -45706,6 +50947,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 57946, "end": 0, "raw": "0.5918969913790362", "start": 0, @@ -45725,11 +50967,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 57898, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 57898, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45741,15 +50985,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 57983, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 57989, "elements": [ { "argument": { + "commentStart": 57999, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -45760,6 +51007,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 57998, "end": 0, "operator": "-", "start": 0, @@ -45767,6 +51015,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 58026, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -45786,11 +51035,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 57978, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 57978, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45802,15 +51053,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 58063, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 58069, "elements": [ { "argument": { + "commentStart": 58079, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -45821,6 +51075,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 58078, "end": 0, "operator": "-", "start": 0, @@ -45829,6 +51084,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 58107, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -45839,6 +51095,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 58106, "end": 0, "operator": "-", "start": 0, @@ -45854,11 +51111,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 58058, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 58058, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45870,14 +51129,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 58145, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 58151, "elements": [ { + "commentStart": 58160, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -45889,6 +51151,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 58188, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -45908,11 +51171,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 58140, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 58140, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45924,14 +51189,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 58226, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 58232, "elements": [ { + "commentStart": 58241, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -45943,6 +51211,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 58269, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -45962,11 +51231,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 58221, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 58221, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -45978,15 +51249,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 58307, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 58313, "elements": [ { "argument": { + "commentStart": 58323, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -45997,6 +51271,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 58322, "end": 0, "operator": "-", "start": 0, @@ -46004,6 +51279,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 58351, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -46023,11 +51299,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 58302, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 58302, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46039,15 +51317,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 58388, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 58394, "elements": [ { "argument": { + "commentStart": 58404, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -46058,6 +51339,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 58403, "end": 0, "operator": "-", "start": 0, @@ -46066,6 +51348,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 58433, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -46076,6 +51359,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 58432, "end": 0, "operator": "-", "start": 0, @@ -46091,11 +51375,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 58383, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 58383, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46107,14 +51393,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 58471, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 58477, "elements": [ { + "commentStart": 58486, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -46127,6 +51416,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 58514, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -46137,6 +51427,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 58513, "end": 0, "operator": "-", "start": 0, @@ -46152,11 +51443,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 58466, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 58466, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46168,14 +51461,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 58552, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 58558, "elements": [ { + "commentStart": 58567, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -46188,6 +51484,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 58598, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -46198,6 +51495,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 58597, "end": 0, "operator": "-", "start": 0, @@ -46213,11 +51511,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 58547, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 58547, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46229,14 +51529,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 58635, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 58641, "elements": [ { + "commentStart": 58650, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -46249,6 +51552,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 58678, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -46259,6 +51563,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 58677, "end": 0, "operator": "-", "start": 0, @@ -46274,11 +51579,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 58630, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 58630, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46290,15 +51597,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 58715, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 58721, "elements": [ { "argument": { + "commentStart": 58731, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -46309,6 +51619,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 58730, "end": 0, "operator": "-", "start": 0, @@ -46316,6 +51627,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 58758, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -46335,11 +51647,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 58710, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 58710, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46351,14 +51665,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 58795, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 58801, "elements": [ { + "commentStart": 58802, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -46370,6 +51687,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 58822, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -46389,11 +51707,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 58790, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 58790, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46405,15 +51725,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 58853, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 58859, "elements": [ { "argument": { + "commentStart": 58869, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -46424,6 +51747,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 58868, "end": 0, "operator": "-", "start": 0, @@ -46431,6 +51755,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 58897, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -46450,11 +51775,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 58848, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 58848, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46466,15 +51793,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 58936, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 58942, "elements": [ { "argument": { + "commentStart": 58952, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -46485,6 +51815,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 58951, "end": 0, "operator": "-", "start": 0, @@ -46493,6 +51824,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 58980, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -46503,6 +51835,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 58979, "end": 0, "operator": "-", "start": 0, @@ -46518,11 +51851,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 58931, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 58931, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46534,15 +51869,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 59018, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 59024, "elements": [ { "argument": { + "commentStart": 59034, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -46553,6 +51891,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 59033, "end": 0, "operator": "-", "start": 0, @@ -46561,6 +51900,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 59062, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -46571,6 +51911,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 59061, "end": 0, "operator": "-", "start": 0, @@ -46586,11 +51927,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 59013, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 59013, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46602,14 +51945,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 59100, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 59106, "elements": [ { + "commentStart": 59107, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -46621,6 +51967,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 59126, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -46640,11 +51987,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 59095, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 59095, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46656,14 +52005,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 59157, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 59163, "elements": [ { + "commentStart": 59172, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -46676,6 +52028,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 59201, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -46686,6 +52039,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 59200, "end": 0, "operator": "-", "start": 0, @@ -46701,11 +52055,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 59152, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 59152, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46717,14 +52073,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 59239, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 59245, "elements": [ { + "commentStart": 59246, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -46736,6 +52095,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 59266, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -46755,11 +52115,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 59234, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 59234, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46771,14 +52133,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 59296, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 59302, "elements": [ { + "commentStart": 59311, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -46791,6 +52156,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 59340, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -46801,6 +52167,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 59339, "end": 0, "operator": "-", "start": 0, @@ -46816,11 +52183,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 59291, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 59291, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46832,14 +52201,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 59377, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 59383, "elements": [ { + "commentStart": 59384, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -46851,6 +52223,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 59404, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -46870,11 +52243,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 59372, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 59372, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46886,14 +52261,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 59435, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 59441, "elements": [ { + "commentStart": 59450, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -46905,6 +52283,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 59477, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -46924,11 +52303,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 59430, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 59430, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46940,14 +52321,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 59515, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 59521, "elements": [ { + "commentStart": 59522, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -46959,6 +52343,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 59542, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -46978,11 +52363,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 59510, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 59510, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -46994,15 +52381,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 59573, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 59579, "elements": [ { "argument": { + "commentStart": 59589, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -47013,6 +52403,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 59588, "end": 0, "operator": "-", "start": 0, @@ -47021,6 +52412,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 59618, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -47031,6 +52423,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 59617, "end": 0, "operator": "-", "start": 0, @@ -47046,11 +52439,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 59568, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 59568, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -47062,14 +52457,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 59655, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 59661, "elements": [ { + "commentStart": 59670, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -47082,6 +52480,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 59698, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -47092,6 +52491,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 59697, "end": 0, "operator": "-", "start": 0, @@ -47107,11 +52507,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 59650, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 59650, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -47123,14 +52525,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 59735, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 59741, "elements": [ { + "commentStart": 59750, "end": 0, "raw": "0.6751951211858687", "start": 0, @@ -47143,6 +52548,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 59778, "end": 0, "raw": "0.9709424233465593", "start": 0, @@ -47153,6 +52559,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 59777, "end": 0, "operator": "-", "start": 0, @@ -47168,11 +52575,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 59730, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 59730, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -47184,15 +52593,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 59815, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 59821, "elements": [ { "argument": { + "commentStart": 59831, "end": 0, "raw": "0.5689619842972184", "start": 0, @@ -47203,6 +52615,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 59830, "end": 0, "operator": "-", "start": 0, @@ -47210,6 +52623,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 59858, "end": 0, "raw": "0.5918969913790362", "start": 0, @@ -47229,11 +52643,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 59810, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 59810, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -47245,14 +52661,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 59895, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 59901, "elements": [ { + "commentStart": 59910, "end": 0, "raw": "0.9464450621708211", "start": 0, @@ -47265,6 +52684,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 59938, "end": 0, "raw": "0.2684908127803667", "start": 0, @@ -47275,6 +52695,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 59937, "end": 0, "operator": "-", "start": 0, @@ -47290,11 +52711,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 59890, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 59890, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -47306,14 +52729,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 59975, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 59981, "elements": [ { + "commentStart": 59982, "end": 0, "raw": "0.5241732366617591", "start": 0, @@ -47325,6 +52751,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 60002, "end": 0, "raw": "0.9011437416408563", "start": 0, @@ -47344,11 +52771,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 59970, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 59970, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -47360,15 +52789,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 60033, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 60039, "elements": [ { "argument": { + "commentStart": 60049, "end": 0, "raw": "0.14255393713960607", "start": 0, @@ -47379,6 +52811,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 60048, "end": 0, "operator": "-", "start": 0, @@ -47387,6 +52820,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 60078, "end": 0, "raw": "0.5194262624564814", "start": 0, @@ -47397,6 +52831,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 60077, "end": 0, "operator": "-", "start": 0, @@ -47412,11 +52847,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 60028, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 60028, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -47428,15 +52865,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 60115, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 60121, "elements": [ { "argument": { + "commentStart": 60131, "end": 0, "raw": "0.4287123231350338", "start": 0, @@ -47447,6 +52887,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 60130, "end": 0, "operator": "-", "start": 0, @@ -47455,6 +52896,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 60159, "end": 0, "raw": "0.4223564528725028", "start": 0, @@ -47465,6 +52907,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 60158, "end": 0, "operator": "-", "start": 0, @@ -47480,11 +52923,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 60110, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 60110, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -47496,15 +52941,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 60196, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 60202, "elements": [ { "argument": { + "commentStart": 60212, "end": 0, "raw": "0.09316367294024519", "start": 0, @@ -47515,6 +52963,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 60211, "end": 0, "operator": "-", "start": 0, @@ -47523,6 +52972,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 60241, "end": 0, "raw": "0.9063127021008246", "start": 0, @@ -47533,6 +52983,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 60240, "end": 0, "operator": "-", "start": 0, @@ -47548,11 +52999,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 60191, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 60191, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -47564,15 +53017,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 60278, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 60284, "elements": [ { "argument": { + "commentStart": 60294, "end": 0, "raw": "0.2767766535558669", "start": 0, @@ -47583,6 +53039,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 60293, "end": 0, "operator": "-", "start": 0, @@ -47590,6 +53047,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 60321, "end": 0, "raw": "0.6816248114129131", "start": 0, @@ -47609,11 +53067,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 60273, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 60273, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -47625,14 +53085,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 60358, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 60364, "elements": [ { + "commentStart": 60373, "end": 0, "raw": "0.9796762495562534", "start": 0, @@ -47645,6 +53108,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 60401, "end": 0, "raw": "0.0822145668330625", "start": 0, @@ -47655,6 +53119,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 60400, "end": 0, "operator": "-", "start": 0, @@ -47670,11 +53135,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 60353, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 60353, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -47686,15 +53153,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 60438, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 60444, "elements": [ { "argument": { + "commentStart": 60454, "end": 0, "raw": "0.8666513070867441", "start": 0, @@ -47705,6 +53175,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 60453, "end": 0, "operator": "-", "start": 0, @@ -47713,6 +53184,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 60482, "end": 0, "raw": "0.301053160242023", "start": 0, @@ -47723,6 +53195,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 60481, "end": 0, "operator": "-", "start": 0, @@ -47738,11 +53211,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 60433, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 60433, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -47754,14 +53229,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 60518, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 60524, "elements": [ { + "commentStart": 60533, "end": 0, "raw": "0.537415656028112", "start": 0, @@ -47773,6 +53251,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 60559, "end": 0, "raw": "0.020272692875002774", "start": 0, @@ -47792,11 +53271,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 60513, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 60513, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -47808,14 +53289,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 60598, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 60604, "elements": [ { + "commentStart": 60613, "end": 0, "raw": "0.9332396256457531", "start": 0, @@ -47828,6 +53312,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 60641, "end": 0, "raw": "0.6228175690649898", "start": 0, @@ -47838,6 +53323,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 60640, "end": 0, "operator": "-", "start": 0, @@ -47853,11 +53339,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 60593, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 60593, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -47869,14 +53357,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 60678, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 60684, "elements": [ { + "commentStart": 60693, "end": 0, "raw": "0.18052415837320734", "start": 0, @@ -47889,6 +53380,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 60722, "end": 0, "raw": "0.36894384647296197", "start": 0, @@ -47899,6 +53391,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 60721, "end": 0, "operator": "-", "start": 0, @@ -47914,11 +53407,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 60673, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 60673, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -47930,14 +53425,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 60760, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 60766, "elements": [ { + "commentStart": 60767, "end": 0, "raw": "0.5384372634075449", "start": 0, @@ -47949,6 +53447,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 60787, "end": 0, "raw": "0.2377565050887107", "start": 0, @@ -47968,11 +53467,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 60755, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 60755, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -47984,14 +53485,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 60818, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 60824, "elements": [ { + "commentStart": 60833, "end": 0, "raw": "0.39043436929278874", "start": 0, @@ -48003,6 +53507,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 60861, "end": 0, "raw": "0.14273182483160451", "start": 0, @@ -48022,11 +53527,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 60813, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 60813, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -48038,14 +53545,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 60899, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 60905, "elements": [ { + "commentStart": 60914, "end": 0, "raw": "0.09782890412897283", "start": 0, @@ -48057,6 +53567,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 60942, "end": 0, "raw": "0.9907667536909659", "start": 0, @@ -48076,11 +53587,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 60894, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 60894, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -48092,14 +53605,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 60979, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 60985, "elements": [ { + "commentStart": 60994, "end": 0, "raw": "0.5286610085921146", "start": 0, @@ -48112,6 +53628,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 61022, "end": 0, "raw": "0.7924508308419256", "start": 0, @@ -48122,6 +53639,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 61021, "end": 0, "operator": "-", "start": 0, @@ -48137,11 +53655,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 60974, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 60974, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -48153,14 +53673,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 61059, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 61065, "elements": [ { + "commentStart": 61074, "end": 0, "raw": "0.3789978184503342", "start": 0, @@ -48172,6 +53695,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 61101, "end": 0, "raw": "0.12396120576838676", "start": 0, @@ -48191,11 +53715,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 61054, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 61054, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -48207,15 +53733,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 61139, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 61145, "elements": [ { "argument": { + "commentStart": 61155, "end": 0, "raw": "0.9484912744890612", "start": 0, @@ -48226,6 +53755,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 61154, "end": 0, "operator": "-", "start": 0, @@ -48233,6 +53763,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 61182, "end": 0, "raw": "0.6729649846476855", "start": 0, @@ -48252,11 +53783,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 61134, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 61134, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -48268,14 +53801,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 61219, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 61225, "elements": [ { + "commentStart": 61234, "end": 0, "raw": "0.7451758753425153", "start": 0, @@ -48288,6 +53824,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 61262, "end": 0, "raw": "0.21318737562458967", "start": 0, @@ -48298,6 +53835,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 61261, "end": 0, "operator": "-", "start": 0, @@ -48313,11 +53851,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 61214, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 61214, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -48329,14 +53869,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 61300, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 61306, "elements": [ { + "commentStart": 61315, "end": 0, "raw": "0.1873200727251887", "start": 0, @@ -48349,6 +53892,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 61343, "end": 0, "raw": "0.15961374297992448", "start": 0, @@ -48359,6 +53903,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 61342, "end": 0, "operator": "-", "start": 0, @@ -48374,11 +53919,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 61295, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 61295, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -48390,15 +53937,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 61381, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 61387, "elements": [ { "argument": { + "commentStart": 61397, "end": 0, "raw": "0.05729464924537564", "start": 0, @@ -48409,6 +53959,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 61396, "end": 0, "operator": "-", "start": 0, @@ -48417,6 +53968,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 61426, "end": 0, "raw": "0.5436345558508746", "start": 0, @@ -48427,6 +53979,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 61425, "end": 0, "operator": "-", "start": 0, @@ -48442,11 +53995,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 61376, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 61376, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -48458,15 +54013,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 61463, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 61469, "elements": [ { "argument": { + "commentStart": 61479, "end": 0, "raw": "0.09582414374469184", "start": 0, @@ -48477,6 +54035,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 61478, "end": 0, "operator": "-", "start": 0, @@ -48485,6 +54044,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 61508, "end": 0, "raw": "0.7533839681212353", "start": 0, @@ -48495,6 +54055,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 61507, "end": 0, "operator": "-", "start": 0, @@ -48510,11 +54071,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 61458, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 61458, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -48526,15 +54089,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 61545, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 61551, "elements": [ { "argument": { + "commentStart": 61561, "end": 0, "raw": "0.17254116580051848", "start": 0, @@ -48545,6 +54111,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 61560, "end": 0, "operator": "-", "start": 0, @@ -48553,6 +54120,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 61590, "end": 0, "raw": "0.7669113400341137", "start": 0, @@ -48563,6 +54131,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 61589, "end": 0, "operator": "-", "start": 0, @@ -48578,11 +54147,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 61540, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 61540, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -48594,14 +54165,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 61627, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 61633, "elements": [ { + "commentStart": 61634, "end": 0, "raw": "0.8944730032887609", "start": 0, @@ -48613,6 +54187,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 61654, "end": 0, "raw": "0.6093318694741408", "start": 0, @@ -48632,11 +54207,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 61622, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 61622, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -48648,15 +54225,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 61685, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 61691, "elements": [ { "argument": { + "commentStart": 61701, "end": 0, "raw": "0.3670208139314082", "start": 0, @@ -48667,6 +54247,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 61700, "end": 0, "operator": "-", "start": 0, @@ -48674,6 +54255,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 61728, "end": 0, "raw": "0.21201331909674526", "start": 0, @@ -48693,11 +54275,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 61680, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 61680, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -48709,15 +54293,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 61766, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 61772, "elements": [ { "argument": { + "commentStart": 61782, "end": 0, "raw": "0.4707511307971115", "start": 0, @@ -48728,6 +54315,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 61781, "end": 0, "operator": "-", "start": 0, @@ -48735,6 +54323,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 61809, "end": 0, "raw": "0.4905279615419764", "start": 0, @@ -48754,11 +54343,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 61761, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 61761, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -48770,15 +54361,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 61846, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 61852, "elements": [ { "argument": { + "commentStart": 61862, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -48789,6 +54383,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 61861, "end": 0, "operator": "-", "start": 0, @@ -48796,6 +54391,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 61889, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -48815,11 +54411,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 61841, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 61841, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -48831,15 +54429,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 61926, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 61932, "elements": [ { "argument": { + "commentStart": 61942, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -48850,6 +54451,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 61941, "end": 0, "operator": "-", "start": 0, @@ -48858,6 +54460,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 61970, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -48868,6 +54471,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 61969, "end": 0, "operator": "-", "start": 0, @@ -48883,11 +54487,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 61921, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 61921, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -48899,14 +54505,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 62008, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 62014, "elements": [ { + "commentStart": 62023, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -48918,6 +54527,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 62051, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -48937,11 +54547,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 62003, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 62003, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -48953,14 +54565,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 62089, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 62095, "elements": [ { + "commentStart": 62104, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -48972,6 +54587,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 62132, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -48991,11 +54607,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 62084, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 62084, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49007,15 +54625,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 62170, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 62176, "elements": [ { "argument": { + "commentStart": 62186, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -49026,6 +54647,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 62185, "end": 0, "operator": "-", "start": 0, @@ -49033,6 +54655,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 62214, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -49052,11 +54675,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 62165, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 62165, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49068,15 +54693,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 62251, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 62257, "elements": [ { "argument": { + "commentStart": 62267, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -49087,6 +54715,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 62266, "end": 0, "operator": "-", "start": 0, @@ -49095,6 +54724,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 62296, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -49105,6 +54735,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 62295, "end": 0, "operator": "-", "start": 0, @@ -49120,11 +54751,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 62246, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 62246, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49136,14 +54769,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 62334, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 62340, "elements": [ { + "commentStart": 62349, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -49156,6 +54792,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 62377, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -49166,6 +54803,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 62376, "end": 0, "operator": "-", "start": 0, @@ -49181,11 +54819,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 62329, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 62329, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49197,14 +54837,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 62415, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 62421, "elements": [ { + "commentStart": 62430, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -49217,6 +54860,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 62461, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -49227,6 +54871,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 62460, "end": 0, "operator": "-", "start": 0, @@ -49242,11 +54887,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 62410, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 62410, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49258,14 +54905,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 62498, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 62504, "elements": [ { + "commentStart": 62513, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -49278,6 +54928,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 62541, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -49288,6 +54939,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 62540, "end": 0, "operator": "-", "start": 0, @@ -49303,11 +54955,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 62493, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 62493, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49319,15 +54973,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 62578, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 62584, "elements": [ { "argument": { + "commentStart": 62594, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -49338,6 +54995,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 62593, "end": 0, "operator": "-", "start": 0, @@ -49345,6 +55003,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 62621, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -49364,11 +55023,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 62573, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 62573, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49380,14 +55041,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 62658, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 62664, "elements": [ { + "commentStart": 62665, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -49399,6 +55063,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 62685, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -49418,11 +55083,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 62653, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 62653, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49434,15 +55101,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 62716, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 62722, "elements": [ { "argument": { + "commentStart": 62732, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -49453,6 +55123,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 62731, "end": 0, "operator": "-", "start": 0, @@ -49460,6 +55131,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 62760, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -49479,11 +55151,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 62711, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 62711, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49495,15 +55169,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 62799, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 62805, "elements": [ { "argument": { + "commentStart": 62815, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -49514,6 +55191,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 62814, "end": 0, "operator": "-", "start": 0, @@ -49522,6 +55200,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 62843, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -49532,6 +55211,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 62842, "end": 0, "operator": "-", "start": 0, @@ -49547,11 +55227,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 62794, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 62794, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49563,15 +55245,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 62881, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 62887, "elements": [ { "argument": { + "commentStart": 62897, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -49582,6 +55267,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 62896, "end": 0, "operator": "-", "start": 0, @@ -49590,6 +55276,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 62925, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -49600,6 +55287,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 62924, "end": 0, "operator": "-", "start": 0, @@ -49615,11 +55303,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 62876, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 62876, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49631,14 +55321,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 62963, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 62969, "elements": [ { + "commentStart": 62970, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -49650,6 +55343,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 62989, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -49669,11 +55363,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 62958, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 62958, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49685,14 +55381,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 63020, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 63026, "elements": [ { + "commentStart": 63035, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -49705,6 +55404,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 63064, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -49715,6 +55415,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 63063, "end": 0, "operator": "-", "start": 0, @@ -49730,11 +55431,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 63015, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 63015, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49746,14 +55449,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 63102, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 63108, "elements": [ { + "commentStart": 63109, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -49765,6 +55471,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 63129, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -49784,11 +55491,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 63097, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 63097, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49800,14 +55509,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 63159, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 63165, "elements": [ { + "commentStart": 63174, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -49820,6 +55532,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 63203, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -49830,6 +55543,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 63202, "end": 0, "operator": "-", "start": 0, @@ -49845,11 +55559,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 63154, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 63154, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49861,14 +55577,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 63240, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 63246, "elements": [ { + "commentStart": 63247, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -49880,6 +55599,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 63267, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -49899,11 +55619,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 63235, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 63235, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49915,14 +55637,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 63298, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 63304, "elements": [ { + "commentStart": 63313, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -49934,6 +55659,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 63340, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -49953,11 +55679,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 63293, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 63293, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -49969,14 +55697,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 63378, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 63384, "elements": [ { + "commentStart": 63385, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -49988,6 +55719,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 63405, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -50007,11 +55739,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 63373, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 63373, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -50023,15 +55757,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 63436, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 63442, "elements": [ { "argument": { + "commentStart": 63452, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -50042,6 +55779,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 63451, "end": 0, "operator": "-", "start": 0, @@ -50050,6 +55788,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 63481, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -50060,6 +55799,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 63480, "end": 0, "operator": "-", "start": 0, @@ -50075,11 +55815,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 63431, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 63431, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -50091,14 +55833,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 63518, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 63524, "elements": [ { + "commentStart": 63533, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -50111,6 +55856,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 63561, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -50121,6 +55867,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 63560, "end": 0, "operator": "-", "start": 0, @@ -50136,11 +55883,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 63513, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 63513, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -50152,15 +55901,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 63598, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 63604, "elements": [ { "argument": { + "commentStart": 63614, "end": 0, "raw": "0.6716353749059765", "start": 0, @@ -50171,6 +55923,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 63613, "end": 0, "operator": "-", "start": 0, @@ -50179,6 +55932,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 63642, "end": 0, "raw": "0.9605576808879026", "start": 0, @@ -50189,6 +55943,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 63641, "end": 0, "operator": "-", "start": 0, @@ -50204,11 +55959,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 63593, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 63593, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -50220,14 +55977,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 63679, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 63685, "elements": [ { + "commentStart": 63694, "end": 0, "raw": "0.010280170930300203", "start": 0, @@ -50240,6 +56000,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 63724, "end": 0, "raw": "0.37344123662342166", "start": 0, @@ -50250,6 +56011,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 63723, "end": 0, "operator": "-", "start": 0, @@ -50265,11 +56027,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 63674, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 63674, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -50281,14 +56045,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 63762, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 63768, "elements": [ { + "commentStart": 63777, "end": 0, "raw": "0.10357375682791004", "start": 0, @@ -50301,6 +56068,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 63806, "end": 0, "raw": "0.42294321030821425", "start": 0, @@ -50311,6 +56079,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 63805, "end": 0, "operator": "-", "start": 0, @@ -50326,11 +56095,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 63757, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 63757, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -50342,14 +56113,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 63844, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 63850, "elements": [ { + "commentStart": 63859, "end": 0, "raw": "0.4520311575096987", "start": 0, @@ -50362,6 +56136,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 63887, "end": 0, "raw": "0.11232675307600548", "start": 0, @@ -50372,6 +56147,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 63886, "end": 0, "operator": "-", "start": 0, @@ -50387,11 +56163,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 63839, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 63839, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -50403,15 +56181,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 63925, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 63931, "elements": [ { "argument": { + "commentStart": 63941, "end": 0, "raw": "0.8821185914380845", "start": 0, @@ -50422,6 +56203,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 63940, "end": 0, "operator": "-", "start": 0, @@ -50430,6 +56212,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 63969, "end": 0, "raw": "0.7155147434939819", "start": 0, @@ -50440,6 +56223,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 63968, "end": 0, "operator": "-", "start": 0, @@ -50455,11 +56239,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 63920, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 63920, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -50471,14 +56257,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 64006, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 64012, "elements": [ { + "commentStart": 64013, "end": 0, "raw": "0.9195487101690416", "start": 0, @@ -50490,6 +56279,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 64033, "end": 0, "raw": "0.2691627465297364", "start": 0, @@ -50509,11 +56299,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 64001, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 64001, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -50525,14 +56317,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 64064, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 64070, "elements": [ { + "commentStart": 64079, "end": 0, "raw": "0.7098978191546745", "start": 0, @@ -50544,6 +56339,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 64106, "end": 0, "raw": "0.11710004169385968", "start": 0, @@ -50563,11 +56359,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 64059, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 64059, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -50579,15 +56377,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 64144, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 64150, "elements": [ { "argument": { + "commentStart": 64160, "end": 0, "raw": "0.37876368560819995", "start": 0, @@ -50598,6 +56399,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 64159, "end": 0, "operator": "-", "start": 0, @@ -50605,6 +56407,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 64188, "end": 0, "raw": "0.7106729314759084", "start": 0, @@ -50624,11 +56427,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 64139, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 64139, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -50640,15 +56445,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 64225, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 64231, "elements": [ { "argument": { + "commentStart": 64241, "end": 0, "raw": "0.29728126898353335", "start": 0, @@ -50659,6 +56467,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 64240, "end": 0, "operator": "-", "start": 0, @@ -50667,6 +56476,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 64270, "end": 0, "raw": "0.06649734568328003", "start": 0, @@ -50677,6 +56487,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 64269, "end": 0, "operator": "-", "start": 0, @@ -50692,11 +56503,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 64220, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 64220, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -50708,14 +56521,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 64308, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 64314, "elements": [ { + "commentStart": 64323, "end": 0, "raw": "0.22965781558352072", "start": 0, @@ -50728,6 +56544,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 64352, "end": 0, "raw": "0.7601866432836641", "start": 0, @@ -50738,6 +56555,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 64351, "end": 0, "operator": "-", "start": 0, @@ -50753,11 +56571,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 64303, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 64303, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -50769,15 +56589,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 64389, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 64395, "elements": [ { "argument": { + "commentStart": 64405, "end": 0, "raw": "0.6356501074317229", "start": 0, @@ -50788,6 +56611,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 64404, "end": 0, "operator": "-", "start": 0, @@ -50795,6 +56619,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 64432, "end": 0, "raw": "0.19458425399338064", "start": 0, @@ -50814,11 +56639,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 64384, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 64384, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -50830,14 +56657,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 64470, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 64476, "elements": [ { + "commentStart": 64477, "end": 0, "raw": "0.5721251777404546", "start": 0, @@ -50849,6 +56679,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 64497, "end": 0, "raw": "0.2888584097921527", "start": 0, @@ -50868,11 +56699,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 64465, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 64465, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -50884,15 +56717,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 64528, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 64534, "elements": [ { "argument": { + "commentStart": 64544, "end": 0, "raw": "0.9580409549552311", "start": 0, @@ -50903,6 +56739,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 64543, "end": 0, "operator": "-", "start": 0, @@ -50911,6 +56748,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 64572, "end": 0, "raw": "0.02243818192078395", "start": 0, @@ -50921,6 +56759,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 64571, "end": 0, "operator": "-", "start": 0, @@ -50936,11 +56775,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 64523, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 64523, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -50952,14 +56793,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 64610, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 64616, "elements": [ { + "commentStart": 64625, "end": 0, "raw": "0.3299184618602866", "start": 0, @@ -50972,6 +56816,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 64653, "end": 0, "raw": "0.8353726942369875", "start": 0, @@ -50982,6 +56827,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 64652, "end": 0, "operator": "-", "start": 0, @@ -50997,11 +56843,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 64605, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 64605, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51013,14 +56861,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 64690, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 64696, "elements": [ { + "commentStart": 64705, "end": 0, "raw": "0.7434639386755209", "start": 0, @@ -51033,6 +56884,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 64733, "end": 0, "raw": "0.7919648864138378", "start": 0, @@ -51043,6 +56895,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 64732, "end": 0, "operator": "-", "start": 0, @@ -51058,11 +56911,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 64685, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 64685, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51074,14 +56929,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 64770, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 64776, "elements": [ { + "commentStart": 64777, "end": 0, "raw": "0.9935751011164615", "start": 0, @@ -51093,6 +56951,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 64797, "end": 0, "raw": "0.9042566468497608", "start": 0, @@ -51112,11 +56971,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 64765, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 64765, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51128,15 +56989,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 64828, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 64834, "elements": [ { "argument": { + "commentStart": 64844, "end": 0, "raw": "0.5035812884687294", "start": 0, @@ -51147,6 +57011,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 64843, "end": 0, "operator": "-", "start": 0, @@ -51154,6 +57019,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 64871, "end": 0, "raw": "0.5150967434989442", "start": 0, @@ -51173,11 +57039,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 64823, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 64823, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51189,14 +57057,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 64908, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 64914, "elements": [ { + "commentStart": 64915, "end": 0, "raw": "0.5526227215900215", "start": 0, @@ -51208,6 +57079,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 64935, "end": 0, "raw": "0.7612604137272441", "start": 0, @@ -51227,11 +57099,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 64903, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 64903, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51243,14 +57117,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 64966, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 64972, "elements": [ { + "commentStart": 64981, "end": 0, "raw": "0.8593271349126876", "start": 0, @@ -51262,6 +57139,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 65008, "end": 0, "raw": "0.08414894953725849", "start": 0, @@ -51281,11 +57159,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 64961, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 64961, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51297,15 +57177,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 65046, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 65052, "elements": [ { "argument": { + "commentStart": 65062, "end": 0, "raw": "0.8181049219192864", "start": 0, @@ -51316,6 +57199,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 65061, "end": 0, "operator": "-", "start": 0, @@ -51324,6 +57208,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 65090, "end": 0, "raw": "0.903548131323352", "start": 0, @@ -51334,6 +57219,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 65089, "end": 0, "operator": "-", "start": 0, @@ -51349,11 +57235,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 65041, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 65041, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51365,14 +57253,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 65126, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 65132, "elements": [ { + "commentStart": 65141, "end": 0, "raw": "0.3165782044458305", "start": 0, @@ -51385,6 +57276,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 65169, "end": 0, "raw": "0.24189274252014914", "start": 0, @@ -51395,6 +57287,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 65168, "end": 0, "operator": "-", "start": 0, @@ -51410,11 +57303,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 65121, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 65121, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51426,15 +57321,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 65207, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 65213, "elements": [ { "argument": { + "commentStart": 65223, "end": 0, "raw": "0.44390956414045135", "start": 0, @@ -51445,6 +57343,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 65222, "end": 0, "operator": "-", "start": 0, @@ -51453,6 +57352,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 65252, "end": 0, "raw": "0.25912591535126905", "start": 0, @@ -51463,6 +57363,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 65251, "end": 0, "operator": "-", "start": 0, @@ -51478,11 +57379,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 65202, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 65202, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51494,15 +57397,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 65290, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 65296, "elements": [ { "argument": { + "commentStart": 65306, "end": 0, "raw": "0.6605165911891009", "start": 0, @@ -51513,6 +57419,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 65305, "end": 0, "operator": "-", "start": 0, @@ -51521,6 +57428,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 65334, "end": 0, "raw": "0.40355115288839194", "start": 0, @@ -51531,6 +57439,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 65333, "end": 0, "operator": "-", "start": 0, @@ -51546,11 +57455,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 65285, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 65285, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51562,15 +57473,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 65372, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 65378, "elements": [ { "argument": { + "commentStart": 65388, "end": 0, "raw": "0.7170489950180006", "start": 0, @@ -51581,6 +57495,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 65387, "end": 0, "operator": "-", "start": 0, @@ -51588,6 +57503,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 65415, "end": 0, "raw": "0.23454356079651384", "start": 0, @@ -51607,11 +57523,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 65367, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 65367, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51623,15 +57541,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 65453, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 65459, "elements": [ { "argument": { + "commentStart": 65469, "end": 0, "raw": "0.2568187045379722", "start": 0, @@ -51642,6 +57563,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 65468, "end": 0, "operator": "-", "start": 0, @@ -51650,6 +57572,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 65497, "end": 0, "raw": "0.45031188717601367", "start": 0, @@ -51660,6 +57583,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 65496, "end": 0, "operator": "-", "start": 0, @@ -51675,11 +57599,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 65448, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 65448, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51691,14 +57617,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 65535, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 65541, "elements": [ { + "commentStart": 65550, "end": 0, "raw": "0.6751951211858687", "start": 0, @@ -51711,6 +57640,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 65578, "end": 0, "raw": "0.9709424233465593", "start": 0, @@ -51721,6 +57651,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 65577, "end": 0, "operator": "-", "start": 0, @@ -51736,11 +57667,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 65530, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 65530, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51752,15 +57685,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 65615, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 65621, "elements": [ { "argument": { + "commentStart": 65631, "end": 0, "raw": "0.5689619842972184", "start": 0, @@ -51771,6 +57707,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 65630, "end": 0, "operator": "-", "start": 0, @@ -51778,6 +57715,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 65658, "end": 0, "raw": "0.5918969913790362", "start": 0, @@ -51797,11 +57735,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 65610, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 65610, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51813,15 +57753,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 65695, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 65701, "elements": [ { "argument": { + "commentStart": 65711, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -51832,6 +57775,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 65710, "end": 0, "operator": "-", "start": 0, @@ -51839,6 +57783,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 65738, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -51858,11 +57803,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 65690, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 65690, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51874,15 +57821,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 65775, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 65781, "elements": [ { "argument": { + "commentStart": 65791, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -51893,6 +57843,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 65790, "end": 0, "operator": "-", "start": 0, @@ -51901,6 +57852,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 65819, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -51911,6 +57863,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 65818, "end": 0, "operator": "-", "start": 0, @@ -51926,11 +57879,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 65770, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 65770, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51942,14 +57897,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 65857, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 65863, "elements": [ { + "commentStart": 65872, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -51961,6 +57919,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 65900, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -51980,11 +57939,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 65852, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 65852, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -51996,14 +57957,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 65938, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 65944, "elements": [ { + "commentStart": 65953, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -52015,6 +57979,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 65981, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -52034,11 +57999,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 65933, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 65933, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -52050,15 +58017,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 66019, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 66025, "elements": [ { "argument": { + "commentStart": 66035, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -52069,6 +58039,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 66034, "end": 0, "operator": "-", "start": 0, @@ -52076,6 +58047,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 66063, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -52095,11 +58067,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 66014, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66014, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -52111,15 +58085,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 66100, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 66106, "elements": [ { "argument": { + "commentStart": 66116, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -52130,6 +58107,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 66115, "end": 0, "operator": "-", "start": 0, @@ -52138,6 +58116,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 66145, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -52148,6 +58127,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 66144, "end": 0, "operator": "-", "start": 0, @@ -52163,11 +58143,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 66095, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66095, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -52179,14 +58161,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 66183, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 66189, "elements": [ { + "commentStart": 66198, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -52199,6 +58184,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 66226, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -52209,6 +58195,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 66225, "end": 0, "operator": "-", "start": 0, @@ -52224,11 +58211,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 66178, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66178, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -52240,14 +58229,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 66264, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 66270, "elements": [ { + "commentStart": 66279, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -52260,6 +58252,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 66310, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -52270,6 +58263,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 66309, "end": 0, "operator": "-", "start": 0, @@ -52285,11 +58279,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 66259, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66259, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -52301,14 +58297,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 66347, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 66353, "elements": [ { + "commentStart": 66362, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -52321,6 +58320,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 66390, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -52331,6 +58331,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 66389, "end": 0, "operator": "-", "start": 0, @@ -52346,11 +58347,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 66342, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66342, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -52362,15 +58365,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 66427, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 66433, "elements": [ { "argument": { + "commentStart": 66443, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -52381,6 +58387,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 66442, "end": 0, "operator": "-", "start": 0, @@ -52388,6 +58395,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 66470, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -52407,11 +58415,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 66422, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66422, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -52423,14 +58433,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 66507, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 66513, "elements": [ { + "commentStart": 66514, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -52442,6 +58455,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 66534, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -52461,11 +58475,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 66502, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66502, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -52477,15 +58493,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 66565, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 66571, "elements": [ { "argument": { + "commentStart": 66581, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -52496,6 +58515,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 66580, "end": 0, "operator": "-", "start": 0, @@ -52503,6 +58523,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 66609, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -52522,11 +58543,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 66560, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66560, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -52538,15 +58561,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 66648, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 66654, "elements": [ { "argument": { + "commentStart": 66664, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -52557,6 +58583,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 66663, "end": 0, "operator": "-", "start": 0, @@ -52565,6 +58592,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 66692, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -52575,6 +58603,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 66691, "end": 0, "operator": "-", "start": 0, @@ -52590,11 +58619,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 66643, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66643, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -52606,15 +58637,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 66730, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 66736, "elements": [ { "argument": { + "commentStart": 66746, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -52625,6 +58659,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 66745, "end": 0, "operator": "-", "start": 0, @@ -52633,6 +58668,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 66774, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -52643,6 +58679,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 66773, "end": 0, "operator": "-", "start": 0, @@ -52658,11 +58695,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 66725, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66725, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -52674,14 +58713,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 66812, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 66818, "elements": [ { + "commentStart": 66819, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -52693,6 +58735,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 66838, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -52712,11 +58755,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 66807, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66807, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -52728,14 +58773,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 66869, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 66875, "elements": [ { + "commentStart": 66884, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -52748,6 +58796,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 66913, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -52758,6 +58807,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 66912, "end": 0, "operator": "-", "start": 0, @@ -52773,11 +58823,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 66864, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66864, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -52789,14 +58841,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 66951, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 66957, "elements": [ { + "commentStart": 66958, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -52808,6 +58863,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 66978, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -52827,11 +58883,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 66946, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66946, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -52843,14 +58901,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 67008, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 67014, "elements": [ { + "commentStart": 67023, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -52863,6 +58924,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 67052, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -52873,6 +58935,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 67051, "end": 0, "operator": "-", "start": 0, @@ -52888,11 +58951,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 67003, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 67003, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -52904,14 +58969,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 67089, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 67095, "elements": [ { + "commentStart": 67096, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -52923,6 +58991,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 67116, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -52942,11 +59011,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 67084, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 67084, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -52958,14 +59029,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 67147, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 67153, "elements": [ { + "commentStart": 67162, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -52977,6 +59051,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 67189, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -52996,11 +59071,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 67142, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 67142, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53012,14 +59089,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 67227, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 67233, "elements": [ { + "commentStart": 67234, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -53031,6 +59111,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 67254, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -53050,11 +59131,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 67222, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 67222, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53066,15 +59149,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 67285, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 67291, "elements": [ { "argument": { + "commentStart": 67301, "end": 0, "raw": "0.3670208139314082", "start": 0, @@ -53085,6 +59171,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 67300, "end": 0, "operator": "-", "start": 0, @@ -53092,6 +59179,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 67328, "end": 0, "raw": "0.21201331909674526", "start": 0, @@ -53111,11 +59199,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 67280, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 67280, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53127,15 +59217,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 67366, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 67372, "elements": [ { "argument": { + "commentStart": 67382, "end": 0, "raw": "0.4707511307971115", "start": 0, @@ -53146,6 +59239,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 67381, "end": 0, "operator": "-", "start": 0, @@ -53153,6 +59247,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 67409, "end": 0, "raw": "0.4905279615419764", "start": 0, @@ -53172,11 +59267,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 67361, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 67361, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53188,15 +59285,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 67446, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 67452, "elements": [ { "argument": { + "commentStart": 67462, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -53207,6 +59307,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 67461, "end": 0, "operator": "-", "start": 0, @@ -53214,6 +59315,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 67489, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -53233,11 +59335,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 67441, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 67441, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53249,15 +59353,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 67526, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 67532, "elements": [ { "argument": { + "commentStart": 67542, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -53268,6 +59375,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 67541, "end": 0, "operator": "-", "start": 0, @@ -53276,6 +59384,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 67570, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -53286,6 +59395,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 67569, "end": 0, "operator": "-", "start": 0, @@ -53301,11 +59411,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 67521, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 67521, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53317,14 +59429,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 67608, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 67614, "elements": [ { + "commentStart": 67623, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -53336,6 +59451,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 67651, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -53355,11 +59471,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 67603, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 67603, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53371,14 +59489,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 67689, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 67695, "elements": [ { + "commentStart": 67704, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -53390,6 +59511,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 67732, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -53409,11 +59531,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 67684, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 67684, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53425,15 +59549,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 67770, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 67776, "elements": [ { "argument": { + "commentStart": 67786, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -53444,6 +59571,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 67785, "end": 0, "operator": "-", "start": 0, @@ -53451,6 +59579,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 67814, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -53470,11 +59599,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 67765, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 67765, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53486,15 +59617,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 67851, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 67857, "elements": [ { "argument": { + "commentStart": 67867, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -53505,6 +59639,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 67866, "end": 0, "operator": "-", "start": 0, @@ -53513,6 +59648,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 67896, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -53523,6 +59659,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 67895, "end": 0, "operator": "-", "start": 0, @@ -53538,11 +59675,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 67846, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 67846, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53554,14 +59693,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 67934, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 67940, "elements": [ { + "commentStart": 67949, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -53574,6 +59716,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 67977, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -53584,6 +59727,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 67976, "end": 0, "operator": "-", "start": 0, @@ -53599,11 +59743,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 67929, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 67929, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53615,14 +59761,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 68015, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 68021, "elements": [ { + "commentStart": 68030, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -53635,6 +59784,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 68061, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -53645,6 +59795,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 68060, "end": 0, "operator": "-", "start": 0, @@ -53660,11 +59811,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 68010, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 68010, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53676,14 +59829,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 68098, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 68104, "elements": [ { + "commentStart": 68113, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -53696,6 +59852,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 68141, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -53706,6 +59863,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 68140, "end": 0, "operator": "-", "start": 0, @@ -53721,11 +59879,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 68093, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 68093, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53737,15 +59897,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 68178, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 68184, "elements": [ { "argument": { + "commentStart": 68194, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -53756,6 +59919,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 68193, "end": 0, "operator": "-", "start": 0, @@ -53763,6 +59927,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 68221, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -53782,11 +59947,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 68173, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 68173, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53798,14 +59965,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 68258, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 68264, "elements": [ { + "commentStart": 68265, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -53817,6 +59987,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 68285, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -53836,11 +60007,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 68253, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 68253, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53852,15 +60025,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 68316, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 68322, "elements": [ { "argument": { + "commentStart": 68332, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -53871,6 +60047,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 68331, "end": 0, "operator": "-", "start": 0, @@ -53878,6 +60055,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 68360, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -53897,11 +60075,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 68311, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 68311, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53913,15 +60093,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 68399, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 68405, "elements": [ { "argument": { + "commentStart": 68415, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -53932,6 +60115,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 68414, "end": 0, "operator": "-", "start": 0, @@ -53940,6 +60124,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 68443, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -53950,6 +60135,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 68442, "end": 0, "operator": "-", "start": 0, @@ -53965,11 +60151,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 68394, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 68394, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -53981,15 +60169,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 68481, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 68487, "elements": [ { "argument": { + "commentStart": 68497, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -54000,6 +60191,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 68496, "end": 0, "operator": "-", "start": 0, @@ -54008,6 +60200,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 68525, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -54018,6 +60211,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 68524, "end": 0, "operator": "-", "start": 0, @@ -54033,11 +60227,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 68476, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 68476, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54049,14 +60245,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 68563, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 68569, "elements": [ { + "commentStart": 68570, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -54068,6 +60267,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 68589, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -54087,11 +60287,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 68558, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 68558, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54103,14 +60305,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 68620, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 68626, "elements": [ { + "commentStart": 68635, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -54123,6 +60328,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 68664, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -54133,6 +60339,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 68663, "end": 0, "operator": "-", "start": 0, @@ -54148,11 +60355,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 68615, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 68615, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54164,14 +60373,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 68702, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 68708, "elements": [ { + "commentStart": 68709, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -54183,6 +60395,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 68729, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -54202,11 +60415,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 68697, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 68697, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54218,14 +60433,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 68759, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 68765, "elements": [ { + "commentStart": 68774, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -54238,6 +60456,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 68803, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -54248,6 +60467,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 68802, "end": 0, "operator": "-", "start": 0, @@ -54263,11 +60483,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 68754, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 68754, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54279,14 +60501,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 68840, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 68846, "elements": [ { + "commentStart": 68847, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -54298,6 +60523,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 68867, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -54317,11 +60543,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 68835, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 68835, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54333,14 +60561,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 68898, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 68904, "elements": [ { + "commentStart": 68913, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -54352,6 +60583,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 68940, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -54371,11 +60603,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 68893, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 68893, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54387,14 +60621,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 68978, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 68984, "elements": [ { + "commentStart": 68985, "end": 0, "raw": "0.8830488380766681", "start": 0, @@ -54406,6 +60643,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 69005, "end": 0, "raw": "0.6996724408425232", "start": 0, @@ -54425,11 +60663,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 68973, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 68973, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54441,15 +60681,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 69036, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 69042, "elements": [ { "argument": { + "commentStart": 69052, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -54460,6 +60703,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 69051, "end": 0, "operator": "-", "start": 0, @@ -54468,6 +60712,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 69081, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -54478,6 +60723,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 69080, "end": 0, "operator": "-", "start": 0, @@ -54493,11 +60739,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 69031, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 69031, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54509,14 +60757,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 69118, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 69124, "elements": [ { + "commentStart": 69133, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -54529,6 +60780,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 69161, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -54539,6 +60791,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 69160, "end": 0, "operator": "-", "start": 0, @@ -54554,11 +60807,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 69113, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 69113, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54570,15 +60825,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 69198, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 69204, "elements": [ { "argument": { + "commentStart": 69214, "end": 0, "raw": "0.6716353749059765", "start": 0, @@ -54589,6 +60847,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 69213, "end": 0, "operator": "-", "start": 0, @@ -54597,6 +60856,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 69242, "end": 0, "raw": "0.9605576808879026", "start": 0, @@ -54607,6 +60867,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 69241, "end": 0, "operator": "-", "start": 0, @@ -54622,11 +60883,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 69193, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 69193, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54638,14 +60901,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 69279, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 69285, "elements": [ { + "commentStart": 69294, "end": 0, "raw": "0.010280170930300203", "start": 0, @@ -54658,6 +60924,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 69324, "end": 0, "raw": "0.37344123662342166", "start": 0, @@ -54668,6 +60935,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 69323, "end": 0, "operator": "-", "start": 0, @@ -54683,11 +60951,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 69274, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 69274, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54699,14 +60969,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 69362, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 69368, "elements": [ { + "commentStart": 69377, "end": 0, "raw": "0.10357375682791004", "start": 0, @@ -54719,6 +60992,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 69406, "end": 0, "raw": "0.42294321030821425", "start": 0, @@ -54729,6 +61003,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 69405, "end": 0, "operator": "-", "start": 0, @@ -54744,11 +61019,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 69357, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 69357, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54760,14 +61037,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 69444, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 69450, "elements": [ { + "commentStart": 69459, "end": 0, "raw": "0.4520311575096987", "start": 0, @@ -54780,6 +61060,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 69487, "end": 0, "raw": "0.11232675307600548", "start": 0, @@ -54790,6 +61071,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 69486, "end": 0, "operator": "-", "start": 0, @@ -54805,11 +61087,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 69439, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 69439, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54821,15 +61105,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 69525, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 69531, "elements": [ { "argument": { + "commentStart": 69541, "end": 0, "raw": "0.8821185914380845", "start": 0, @@ -54840,6 +61127,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 69540, "end": 0, "operator": "-", "start": 0, @@ -54848,6 +61136,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 69569, "end": 0, "raw": "0.7155147434939819", "start": 0, @@ -54858,6 +61147,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 69568, "end": 0, "operator": "-", "start": 0, @@ -54873,11 +61163,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 69520, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 69520, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54889,14 +61181,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 69606, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 69612, "elements": [ { + "commentStart": 69613, "end": 0, "raw": "0.9195487101690416", "start": 0, @@ -54908,6 +61203,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 69633, "end": 0, "raw": "0.2691627465297364", "start": 0, @@ -54927,11 +61223,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 69601, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 69601, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54943,14 +61241,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 69664, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 69670, "elements": [ { + "commentStart": 69679, "end": 0, "raw": "0.7098978191546745", "start": 0, @@ -54962,6 +61263,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 69706, "end": 0, "raw": "0.11710004169385968", "start": 0, @@ -54981,11 +61283,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 69659, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 69659, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -54997,15 +61301,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 69744, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 69750, "elements": [ { "argument": { + "commentStart": 69760, "end": 0, "raw": "0.37876368560819995", "start": 0, @@ -55016,6 +61323,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 69759, "end": 0, "operator": "-", "start": 0, @@ -55023,6 +61331,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 69788, "end": 0, "raw": "0.7106729314759084", "start": 0, @@ -55042,11 +61351,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 69739, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 69739, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -55058,15 +61369,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 69825, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 69831, "elements": [ { "argument": { + "commentStart": 69841, "end": 0, "raw": "0.29728126898353335", "start": 0, @@ -55077,6 +61391,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 69840, "end": 0, "operator": "-", "start": 0, @@ -55085,6 +61400,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 69870, "end": 0, "raw": "0.06649734568328003", "start": 0, @@ -55095,6 +61411,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 69869, "end": 0, "operator": "-", "start": 0, @@ -55110,11 +61427,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 69820, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 69820, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -55126,14 +61445,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 69908, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 69914, "elements": [ { + "commentStart": 69923, "end": 0, "raw": "0.22965781558352072", "start": 0, @@ -55146,6 +61468,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 69952, "end": 0, "raw": "0.7601866432836641", "start": 0, @@ -55156,6 +61479,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 69951, "end": 0, "operator": "-", "start": 0, @@ -55171,11 +61495,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 69903, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 69903, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -55187,15 +61513,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 69989, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 69995, "elements": [ { "argument": { + "commentStart": 70005, "end": 0, "raw": "0.6356501074317229", "start": 0, @@ -55206,6 +61535,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 70004, "end": 0, "operator": "-", "start": 0, @@ -55213,6 +61543,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 70032, "end": 0, "raw": "0.19458425399338064", "start": 0, @@ -55232,11 +61563,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 69984, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 69984, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -55248,14 +61581,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 70070, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 70076, "elements": [ { + "commentStart": 70077, "end": 0, "raw": "0.5721251777404546", "start": 0, @@ -55267,6 +61603,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 70097, "end": 0, "raw": "0.2888584097921527", "start": 0, @@ -55286,11 +61623,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 70065, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 70065, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -55302,15 +61641,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 70128, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 70134, "elements": [ { "argument": { + "commentStart": 70144, "end": 0, "raw": "0.9580409549552311", "start": 0, @@ -55321,6 +61663,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 70143, "end": 0, "operator": "-", "start": 0, @@ -55329,6 +61672,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 70172, "end": 0, "raw": "0.02243818192078395", "start": 0, @@ -55339,6 +61683,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 70171, "end": 0, "operator": "-", "start": 0, @@ -55354,11 +61699,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 70123, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 70123, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -55370,14 +61717,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 70210, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 70216, "elements": [ { + "commentStart": 70225, "end": 0, "raw": "0.3299184618602866", "start": 0, @@ -55390,6 +61740,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 70253, "end": 0, "raw": "0.8353726942369875", "start": 0, @@ -55400,6 +61751,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 70252, "end": 0, "operator": "-", "start": 0, @@ -55415,11 +61767,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 70205, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 70205, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -55431,14 +61785,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 70290, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 70296, "elements": [ { + "commentStart": 70305, "end": 0, "raw": "0.7434639386755209", "start": 0, @@ -55451,6 +61808,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 70333, "end": 0, "raw": "0.7919648864138378", "start": 0, @@ -55461,6 +61819,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 70332, "end": 0, "operator": "-", "start": 0, @@ -55476,11 +61835,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 70285, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 70285, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -55492,14 +61853,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 70370, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 70376, "elements": [ { + "commentStart": 70377, "end": 0, "raw": "0.9935751011164615", "start": 0, @@ -55511,6 +61875,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 70397, "end": 0, "raw": "0.9042566468497608", "start": 0, @@ -55530,11 +61895,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 70365, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 70365, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -55546,15 +61913,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 70428, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 70434, "elements": [ { "argument": { + "commentStart": 70444, "end": 0, "raw": "0.5035812884687294", "start": 0, @@ -55565,6 +61935,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 70443, "end": 0, "operator": "-", "start": 0, @@ -55572,6 +61943,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 70471, "end": 0, "raw": "0.5150967434989442", "start": 0, @@ -55591,11 +61963,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 70423, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 70423, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -55607,14 +61981,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 70508, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 70514, "elements": [ { + "commentStart": 70515, "end": 0, "raw": "0.5526227215900215", "start": 0, @@ -55626,6 +62003,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 70535, "end": 0, "raw": "0.7612604137272441", "start": 0, @@ -55645,11 +62023,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 70503, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 70503, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -55661,14 +62041,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 70566, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 70572, "elements": [ { + "commentStart": 70581, "end": 0, "raw": "0.8593271349126876", "start": 0, @@ -55680,6 +62063,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 70608, "end": 0, "raw": "0.08414894953725849", "start": 0, @@ -55699,11 +62083,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 70561, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 70561, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -55715,15 +62101,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 70646, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 70652, "elements": [ { "argument": { + "commentStart": 70662, "end": 0, "raw": "0.8181049219192864", "start": 0, @@ -55734,6 +62123,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 70661, "end": 0, "operator": "-", "start": 0, @@ -55742,6 +62132,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 70690, "end": 0, "raw": "0.903548131323352", "start": 0, @@ -55752,6 +62143,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 70689, "end": 0, "operator": "-", "start": 0, @@ -55767,11 +62159,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 70641, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 70641, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -55783,14 +62177,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 70726, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 70732, "elements": [ { + "commentStart": 70741, "end": 0, "raw": "0.3165782044458305", "start": 0, @@ -55803,6 +62200,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 70769, "end": 0, "raw": "0.24189274252014914", "start": 0, @@ -55813,6 +62211,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 70768, "end": 0, "operator": "-", "start": 0, @@ -55828,11 +62227,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 70721, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 70721, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -55844,15 +62245,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 70807, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 70813, "elements": [ { "argument": { + "commentStart": 70823, "end": 0, "raw": "0.44390956414045135", "start": 0, @@ -55863,6 +62267,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 70822, "end": 0, "operator": "-", "start": 0, @@ -55871,6 +62276,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 70852, "end": 0, "raw": "0.25912591535126905", "start": 0, @@ -55881,6 +62287,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 70851, "end": 0, "operator": "-", "start": 0, @@ -55896,11 +62303,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 70802, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 70802, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -55912,15 +62321,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 70890, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 70896, "elements": [ { "argument": { + "commentStart": 70906, "end": 0, "raw": "0.6605165911891009", "start": 0, @@ -55931,6 +62343,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 70905, "end": 0, "operator": "-", "start": 0, @@ -55939,6 +62352,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 70934, "end": 0, "raw": "0.40355115288839194", "start": 0, @@ -55949,6 +62363,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 70933, "end": 0, "operator": "-", "start": 0, @@ -55964,11 +62379,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 70885, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 70885, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -55980,15 +62397,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 70972, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 70978, "elements": [ { "argument": { + "commentStart": 70988, "end": 0, "raw": "0.7170489950180006", "start": 0, @@ -55999,6 +62419,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 70987, "end": 0, "operator": "-", "start": 0, @@ -56006,6 +62427,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 71015, "end": 0, "raw": "0.23454356079651384", "start": 0, @@ -56025,11 +62447,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 70967, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 70967, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -56041,15 +62465,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 71053, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 71059, "elements": [ { "argument": { + "commentStart": 71069, "end": 0, "raw": "0.2568187045379722", "start": 0, @@ -56060,6 +62487,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 71068, "end": 0, "operator": "-", "start": 0, @@ -56068,6 +62496,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 71097, "end": 0, "raw": "0.45031188717601367", "start": 0, @@ -56078,6 +62507,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 71096, "end": 0, "operator": "-", "start": 0, @@ -56093,11 +62523,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 71048, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 71048, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -56109,14 +62541,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 71135, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 71141, "elements": [ { + "commentStart": 71150, "end": 0, "raw": "0.6751951211858687", "start": 0, @@ -56129,6 +62564,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 71178, "end": 0, "raw": "0.9709424233465593", "start": 0, @@ -56139,6 +62575,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 71177, "end": 0, "operator": "-", "start": 0, @@ -56154,11 +62591,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 71130, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 71130, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -56170,15 +62609,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 71215, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 71221, "elements": [ { "argument": { + "commentStart": 71231, "end": 0, "raw": "0.5689619842972184", "start": 0, @@ -56189,6 +62631,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 71230, "end": 0, "operator": "-", "start": 0, @@ -56196,6 +62639,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 71258, "end": 0, "raw": "0.5918969913790362", "start": 0, @@ -56215,11 +62659,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 71210, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 71210, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -56231,15 +62677,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 71295, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 71301, "elements": [ { "argument": { + "commentStart": 71311, "end": 0, "raw": "0.8328324229085962", "start": 0, @@ -56250,6 +62699,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 71310, "end": 0, "operator": "-", "start": 0, @@ -56257,6 +62707,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 71338, "end": 0, "raw": "0.4677492878818803", "start": 0, @@ -56276,11 +62727,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 71290, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 71290, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -56292,15 +62745,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 71375, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 71381, "elements": [ { "argument": { + "commentStart": 71391, "end": 0, "raw": "0.8111463382182231", "start": 0, @@ -56311,6 +62767,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 71390, "end": 0, "operator": "-", "start": 0, @@ -56319,6 +62776,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 71419, "end": 0, "raw": "0.41814807547140576", "start": 0, @@ -56329,6 +62787,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 71418, "end": 0, "operator": "-", "start": 0, @@ -56344,11 +62803,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 71370, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 71370, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -56360,14 +62821,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 71457, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 71463, "elements": [ { + "commentStart": 71472, "end": 0, "raw": "0.03807684940941125", "start": 0, @@ -56379,6 +62843,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 71500, "end": 0, "raw": "0.25664826686353326", "start": 0, @@ -56398,11 +62863,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 71452, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 71452, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -56414,14 +62881,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 71538, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 71544, "elements": [ { + "commentStart": 71553, "end": 0, "raw": "0.23950083339596384", "start": 0, @@ -56433,6 +62903,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 71581, "end": 0, "raw": "0.43693196301855575", "start": 0, @@ -56452,11 +62923,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 71533, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 71533, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -56468,15 +62941,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 71619, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 71625, "elements": [ { "argument": { + "commentStart": 71635, "end": 0, "raw": "0.16279444820904887", "start": 0, @@ -56487,6 +62963,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 71634, "end": 0, "operator": "-", "start": 0, @@ -56494,6 +62971,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 71663, "end": 0, "raw": "0.8064475707664818", "start": 0, @@ -56513,11 +62991,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 71614, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 71614, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -56529,15 +63009,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 71700, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 71706, "elements": [ { "argument": { + "commentStart": 71716, "end": 0, "raw": "0.08972872009232558", "start": 0, @@ -56548,6 +63031,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 71715, "end": 0, "operator": "-", "start": 0, @@ -56556,6 +63040,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 71745, "end": 0, "raw": "0.08887625823751266", "start": 0, @@ -56566,6 +63051,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 71744, "end": 0, "operator": "-", "start": 0, @@ -56581,11 +63067,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 71695, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 71695, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -56597,14 +63085,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 71783, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 71789, "elements": [ { + "commentStart": 71798, "end": 0, "raw": "0.9203433427102556", "start": 0, @@ -56617,6 +63108,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 71826, "end": 0, "raw": "0.17343459369697545", "start": 0, @@ -56627,6 +63119,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 71825, "end": 0, "operator": "-", "start": 0, @@ -56642,11 +63135,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 71778, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 71778, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -56658,14 +63153,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 71864, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 71870, "elements": [ { + "commentStart": 71879, "end": 0, "raw": "0.0017496234414517975", "start": 0, @@ -56678,6 +63176,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 71910, "end": 0, "raw": "0.5178508316168335", "start": 0, @@ -56688,6 +63187,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 71909, "end": 0, "operator": "-", "start": 0, @@ -56703,11 +63203,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 71859, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 71859, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -56719,14 +63221,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 71947, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 71953, "elements": [ { + "commentStart": 71962, "end": 0, "raw": "0.6206263405732759", "start": 0, @@ -56739,6 +63244,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 71990, "end": 0, "raw": "0.8733399468665124", "start": 0, @@ -56749,6 +63255,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 71989, "end": 0, "operator": "-", "start": 0, @@ -56764,11 +63271,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 71942, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 71942, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -56780,15 +63289,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 72027, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 72033, "elements": [ { "argument": { + "commentStart": 72043, "end": 0, "raw": "0.7776386664456383", "start": 0, @@ -56799,6 +63311,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 72042, "end": 0, "operator": "-", "start": 0, @@ -56806,6 +63319,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 72070, "end": 0, "raw": "0.7602780485384968", "start": 0, @@ -56825,11 +63339,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 72022, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 72022, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -56841,14 +63357,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 72107, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 72113, "elements": [ { + "commentStart": 72114, "end": 0, "raw": "0.5439379760788592", "start": 0, @@ -56860,6 +63379,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 72134, "end": 0, "raw": "0.8449177589350552", "start": 0, @@ -56879,11 +63399,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 72102, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 72102, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -56895,15 +63417,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 72165, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 72171, "elements": [ { "argument": { + "commentStart": 72181, "end": 0, "raw": "0.13036646025917076", "start": 0, @@ -56914,6 +63439,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 72180, "end": 0, "operator": "-", "start": 0, @@ -56921,6 +63447,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 72209, "end": 0, "raw": "0.012051713627069693", "start": 0, @@ -56940,11 +63467,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 72160, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 72160, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -56956,15 +63485,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 72248, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 72254, "elements": [ { "argument": { + "commentStart": 72264, "end": 0, "raw": "0.1656465612645519", "start": 0, @@ -56975,6 +63507,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 72263, "end": 0, "operator": "-", "start": 0, @@ -56983,6 +63516,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 72292, "end": 0, "raw": "0.20775229173765486", "start": 0, @@ -56993,6 +63527,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 72291, "end": 0, "operator": "-", "start": 0, @@ -57008,11 +63543,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 72243, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 72243, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57024,15 +63561,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 72330, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 72336, "elements": [ { "argument": { + "commentStart": 72346, "end": 0, "raw": "0.0962723255929061", "start": 0, @@ -57043,6 +63583,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 72345, "end": 0, "operator": "-", "start": 0, @@ -57051,6 +63592,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 72374, "end": 0, "raw": "0.05417797659066137", "start": 0, @@ -57061,6 +63603,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 72373, "end": 0, "operator": "-", "start": 0, @@ -57076,11 +63619,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 72325, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 72325, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57092,14 +63637,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 72412, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 72418, "elements": [ { + "commentStart": 72419, "end": 0, "raw": "0.902108945498191", "start": 0, @@ -57111,6 +63659,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 72438, "end": 0, "raw": "0.3958978534964961", "start": 0, @@ -57130,11 +63679,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 72407, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 72407, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57146,14 +63697,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 72469, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 72475, "elements": [ { + "commentStart": 72484, "end": 0, "raw": "0.27997950083139167", "start": 0, @@ -57166,6 +63720,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 72513, "end": 0, "raw": "0.17778188444008958", "start": 0, @@ -57176,6 +63731,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 72512, "end": 0, "operator": "-", "start": 0, @@ -57191,11 +63747,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 72464, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 72464, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57207,14 +63765,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 72551, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 72557, "elements": [ { + "commentStart": 72558, "end": 0, "raw": "0.5235806061589545", "start": 0, @@ -57226,6 +63787,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 72578, "end": 0, "raw": "0.694318985642328", "start": 0, @@ -57245,11 +63807,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 72546, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 72546, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57261,14 +63825,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 72608, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 72614, "elements": [ { + "commentStart": 72623, "end": 0, "raw": "0.39140760219992154", "start": 0, @@ -57281,6 +63848,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 72652, "end": 0, "raw": "0.7839795272576484", "start": 0, @@ -57291,6 +63859,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 72651, "end": 0, "operator": "-", "start": 0, @@ -57306,11 +63875,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 72603, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 72603, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57322,14 +63893,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 72689, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 72695, "elements": [ { + "commentStart": 72696, "end": 0, "raw": "0.8414243527073519", "start": 0, @@ -57341,6 +63915,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 72716, "end": 0, "raw": "0.5395591528940082", "start": 0, @@ -57360,11 +63935,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 72684, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 72684, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57376,14 +63953,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 72747, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 72753, "elements": [ { + "commentStart": 72762, "end": 0, "raw": "0.6137667704875602", "start": 0, @@ -57395,6 +63975,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 72789, "end": 0, "raw": "0.22119647516722085", "start": 0, @@ -57414,11 +63995,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 72742, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 72742, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57430,15 +64013,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 72827, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 72833, "elements": [ { "argument": { + "commentStart": 72843, "end": 0, "raw": "0.09582414374469184", "start": 0, @@ -57449,6 +64035,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 72842, "end": 0, "operator": "-", "start": 0, @@ -57457,6 +64044,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 72872, "end": 0, "raw": "0.7533839681212353", "start": 0, @@ -57467,6 +64055,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 72871, "end": 0, "operator": "-", "start": 0, @@ -57482,11 +64071,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 72822, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 72822, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57498,15 +64089,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 72909, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 72915, "elements": [ { "argument": { + "commentStart": 72925, "end": 0, "raw": "0.17254116580051848", "start": 0, @@ -57517,6 +64111,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 72924, "end": 0, "operator": "-", "start": 0, @@ -57525,6 +64120,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 72954, "end": 0, "raw": "0.7669113400341137", "start": 0, @@ -57535,6 +64131,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 72953, "end": 0, "operator": "-", "start": 0, @@ -57550,11 +64147,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 72904, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 72904, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57566,14 +64165,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 72991, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 72997, "elements": [ { + "commentStart": 72998, "end": 0, "raw": "0.8944730032887609", "start": 0, @@ -57585,6 +64187,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 73018, "end": 0, "raw": "0.6093318694741408", "start": 0, @@ -57604,11 +64207,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 72986, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 72986, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57620,15 +64225,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 73049, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 73055, "elements": [ { "argument": { + "commentStart": 73065, "end": 0, "raw": "0.41290485754343953", "start": 0, @@ -57639,6 +64247,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 73064, "end": 0, "operator": "-", "start": 0, @@ -57647,6 +64256,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 73094, "end": 0, "raw": "0.4152647361760933", "start": 0, @@ -57657,6 +64267,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 73093, "end": 0, "operator": "-", "start": 0, @@ -57672,11 +64283,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 73044, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 73044, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57688,14 +64301,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 73131, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 73137, "elements": [ { + "commentStart": 73146, "end": 0, "raw": "0.5169538755575687", "start": 0, @@ -57708,6 +64324,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 73174, "end": 0, "raw": "0.9085567867302617", "start": 0, @@ -57718,6 +64335,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 73173, "end": 0, "operator": "-", "start": 0, @@ -57733,11 +64351,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 73126, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 73126, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57749,14 +64369,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 73211, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 73217, "elements": [ { + "commentStart": 73226, "end": 0, "raw": "0.6751951211858687", "start": 0, @@ -57769,6 +64392,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 73254, "end": 0, "raw": "0.9709424233465593", "start": 0, @@ -57779,6 +64403,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 73253, "end": 0, "operator": "-", "start": 0, @@ -57794,11 +64419,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 73206, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 73206, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57810,15 +64437,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 73291, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 73297, "elements": [ { "argument": { + "commentStart": 73307, "end": 0, "raw": "0.5689619842972184", "start": 0, @@ -57829,6 +64459,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 73306, "end": 0, "operator": "-", "start": 0, @@ -57836,6 +64467,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 73334, "end": 0, "raw": "0.5918969913790362", "start": 0, @@ -57855,11 +64487,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 73286, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 73286, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57871,14 +64505,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 73371, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 73377, "elements": [ { + "commentStart": 73386, "end": 0, "raw": "0.9464450621708211", "start": 0, @@ -57891,6 +64528,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 73414, "end": 0, "raw": "0.2684908127803667", "start": 0, @@ -57901,6 +64539,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 73413, "end": 0, "operator": "-", "start": 0, @@ -57916,11 +64555,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 73366, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 73366, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57932,14 +64573,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 73451, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 73457, "elements": [ { + "commentStart": 73458, "end": 0, "raw": "0.5241732366617591", "start": 0, @@ -57951,6 +64595,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 73478, "end": 0, "raw": "0.9011437416408563", "start": 0, @@ -57970,11 +64615,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 73446, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 73446, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -57986,15 +64633,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 73509, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 73515, "elements": [ { "argument": { + "commentStart": 73525, "end": 0, "raw": "0.14255393713960607", "start": 0, @@ -58005,6 +64655,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 73524, "end": 0, "operator": "-", "start": 0, @@ -58013,6 +64664,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 73554, "end": 0, "raw": "0.5194262624564814", "start": 0, @@ -58023,6 +64675,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 73553, "end": 0, "operator": "-", "start": 0, @@ -58038,11 +64691,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 73504, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 73504, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -58054,15 +64709,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 73591, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 73597, "elements": [ { "argument": { + "commentStart": 73607, "end": 0, "raw": "0.4287123231350338", "start": 0, @@ -58073,6 +64731,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 73606, "end": 0, "operator": "-", "start": 0, @@ -58081,6 +64740,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 73635, "end": 0, "raw": "0.4223564528725028", "start": 0, @@ -58091,6 +64751,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 73634, "end": 0, "operator": "-", "start": 0, @@ -58106,11 +64767,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 73586, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 73586, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -58122,15 +64785,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 73672, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 73678, "elements": [ { "argument": { + "commentStart": 73688, "end": 0, "raw": "0.09316367294024519", "start": 0, @@ -58141,6 +64807,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 73687, "end": 0, "operator": "-", "start": 0, @@ -58149,6 +64816,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 73717, "end": 0, "raw": "0.9063127021008246", "start": 0, @@ -58159,6 +64827,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 73716, "end": 0, "operator": "-", "start": 0, @@ -58174,11 +64843,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 73667, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 73667, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -58190,15 +64861,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 73754, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 73760, "elements": [ { "argument": { + "commentStart": 73770, "end": 0, "raw": "0.2767766535558669", "start": 0, @@ -58209,6 +64883,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 73769, "end": 0, "operator": "-", "start": 0, @@ -58216,6 +64891,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 73797, "end": 0, "raw": "0.6816248114129131", "start": 0, @@ -58235,11 +64911,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 73749, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 73749, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -58251,14 +64929,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 73834, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 73840, "elements": [ { + "commentStart": 73849, "end": 0, "raw": "0.9796762495562534", "start": 0, @@ -58271,6 +64952,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 73877, "end": 0, "raw": "0.0822145668330625", "start": 0, @@ -58281,6 +64963,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 73876, "end": 0, "operator": "-", "start": 0, @@ -58296,11 +64979,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 73829, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 73829, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -58312,15 +64997,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 73914, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 73920, "elements": [ { "argument": { + "commentStart": 73930, "end": 0, "raw": "0.8666513070867441", "start": 0, @@ -58331,6 +65019,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 73929, "end": 0, "operator": "-", "start": 0, @@ -58339,6 +65028,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 73958, "end": 0, "raw": "0.301053160242023", "start": 0, @@ -58349,6 +65039,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 73957, "end": 0, "operator": "-", "start": 0, @@ -58364,11 +65055,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 73909, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 73909, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -58380,14 +65073,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 73994, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 74000, "elements": [ { + "commentStart": 74009, "end": 0, "raw": "0.537415656028112", "start": 0, @@ -58399,6 +65095,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 74035, "end": 0, "raw": "0.020272692875002774", "start": 0, @@ -58418,11 +65115,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 73989, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 73989, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -58434,14 +65133,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 74074, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 74080, "elements": [ { + "commentStart": 74089, "end": 0, "raw": "0.9332396256457531", "start": 0, @@ -58454,6 +65156,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 74117, "end": 0, "raw": "0.6228175690649898", "start": 0, @@ -58464,6 +65167,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 74116, "end": 0, "operator": "-", "start": 0, @@ -58479,11 +65183,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 74069, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 74069, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -58495,14 +65201,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 74154, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 74160, "elements": [ { + "commentStart": 74169, "end": 0, "raw": "0.18052415837320734", "start": 0, @@ -58515,6 +65224,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 74198, "end": 0, "raw": "0.36894384647296197", "start": 0, @@ -58525,6 +65235,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 74197, "end": 0, "operator": "-", "start": 0, @@ -58540,11 +65251,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 74149, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 74149, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -58556,14 +65269,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 74236, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 74242, "elements": [ { + "commentStart": 74243, "end": 0, "raw": "0.5384372634075449", "start": 0, @@ -58575,6 +65291,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 74263, "end": 0, "raw": "0.2377565050887107", "start": 0, @@ -58594,11 +65311,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 74231, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 74231, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -58610,14 +65329,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 74294, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 74300, "elements": [ { + "commentStart": 74309, "end": 0, "raw": "0.39043436929278874", "start": 0, @@ -58629,6 +65351,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 74337, "end": 0, "raw": "0.14273182483160451", "start": 0, @@ -58648,11 +65371,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 74289, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 74289, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -58664,14 +65389,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 74375, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 74381, "elements": [ { + "commentStart": 74390, "end": 0, "raw": "0.09782890412897283", "start": 0, @@ -58683,6 +65411,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 74418, "end": 0, "raw": "0.9907667536909659", "start": 0, @@ -58702,11 +65431,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 74370, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 74370, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -58718,14 +65449,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 74455, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 74461, "elements": [ { + "commentStart": 74470, "end": 0, "raw": "0.5286610085921146", "start": 0, @@ -58738,6 +65472,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 74498, "end": 0, "raw": "0.7924508308419256", "start": 0, @@ -58748,6 +65483,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 74497, "end": 0, "operator": "-", "start": 0, @@ -58763,11 +65499,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 74450, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 74450, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -58779,14 +65517,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 74535, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 74541, "elements": [ { + "commentStart": 74550, "end": 0, "raw": "0.3789978184503342", "start": 0, @@ -58798,6 +65539,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 74577, "end": 0, "raw": "0.12396120576838676", "start": 0, @@ -58817,11 +65559,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 74530, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 74530, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -58833,15 +65577,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 74615, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 74621, "elements": [ { "argument": { + "commentStart": 74631, "end": 0, "raw": "0.9484912744890612", "start": 0, @@ -58852,6 +65599,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 74630, "end": 0, "operator": "-", "start": 0, @@ -58859,6 +65607,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 74658, "end": 0, "raw": "0.6729649846476855", "start": 0, @@ -58878,11 +65627,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 74610, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 74610, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -58894,14 +65645,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 74695, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 74701, "elements": [ { + "commentStart": 74710, "end": 0, "raw": "0.7451758753425153", "start": 0, @@ -58914,6 +65668,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 74738, "end": 0, "raw": "0.21318737562458967", "start": 0, @@ -58924,6 +65679,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 74737, "end": 0, "operator": "-", "start": 0, @@ -58939,11 +65695,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 74690, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 74690, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -58955,14 +65713,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 74776, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 74782, "elements": [ { + "commentStart": 74791, "end": 0, "raw": "0.1873200727251887", "start": 0, @@ -58975,6 +65736,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 74819, "end": 0, "raw": "0.15961374297992448", "start": 0, @@ -58985,6 +65747,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 74818, "end": 0, "operator": "-", "start": 0, @@ -59000,11 +65763,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 74771, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 74771, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -59016,15 +65781,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 74857, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 74863, "elements": [ { "argument": { + "commentStart": 74873, "end": 0, "raw": "0.05729464924537564", "start": 0, @@ -59035,6 +65803,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 74872, "end": 0, "operator": "-", "start": 0, @@ -59043,6 +65812,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 74902, "end": 0, "raw": "0.5436345558508746", "start": 0, @@ -59053,6 +65823,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 74901, "end": 0, "operator": "-", "start": 0, @@ -59068,11 +65839,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 74852, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 74852, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -59084,15 +65857,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 74939, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 74945, "elements": [ { "argument": { + "commentStart": 74955, "end": 0, "raw": "0.09582414374469184", "start": 0, @@ -59103,6 +65879,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 74954, "end": 0, "operator": "-", "start": 0, @@ -59111,6 +65888,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 74984, "end": 0, "raw": "0.7533839681212353", "start": 0, @@ -59121,6 +65899,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 74983, "end": 0, "operator": "-", "start": 0, @@ -59136,11 +65915,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 74934, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 74934, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -59152,15 +65933,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 75021, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 75027, "elements": [ { "argument": { + "commentStart": 75037, "end": 0, "raw": "0.17254116580051848", "start": 0, @@ -59171,6 +65955,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 75036, "end": 0, "operator": "-", "start": 0, @@ -59179,6 +65964,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 75066, "end": 0, "raw": "0.7669113400341137", "start": 0, @@ -59189,6 +65975,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 75065, "end": 0, "operator": "-", "start": 0, @@ -59204,11 +65991,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 75016, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 75016, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -59220,14 +66009,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 75103, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 75109, "elements": [ { + "commentStart": 75110, "end": 0, "raw": "0.8944730032887609", "start": 0, @@ -59239,6 +66031,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 75130, "end": 0, "raw": "0.6093318694741408", "start": 0, @@ -59258,11 +66051,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 75098, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 75098, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -59274,15 +66069,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 75161, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 75167, "elements": [ { "argument": { + "commentStart": 75177, "end": 0, "raw": "0.6238548626325471", "start": 0, @@ -59293,6 +66091,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 75176, "end": 0, "operator": "-", "start": 0, @@ -59300,6 +66099,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 75204, "end": 0, "raw": "0.4053626746020169", "start": 0, @@ -59319,11 +66119,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 75156, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 75156, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -59335,14 +66137,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 75241, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 75247, "elements": [ { + "commentStart": 75256, "end": 0, "raw": "0.1379445992766417", "start": 0, @@ -59355,6 +66160,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 75284, "end": 0, "raw": "0.47871087958516045", "start": 0, @@ -59365,6 +66171,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 75283, "end": 0, "operator": "-", "start": 0, @@ -59380,11 +66187,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 75236, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 75236, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -59396,15 +66205,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 75322, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 75328, "elements": [ { "argument": { + "commentStart": 75338, "end": 0, "raw": "0.9516767113283946", "start": 0, @@ -59415,6 +66227,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 75337, "end": 0, "operator": "-", "start": 0, @@ -59422,6 +66235,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 75365, "end": 0, "raw": "0.8619900618578948", "start": 0, @@ -59441,11 +66255,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 75317, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 75317, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -59457,14 +66273,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 75402, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 75408, "elements": [ { + "commentStart": 75409, "end": 0, "raw": "0.9398732950992088", "start": 0, @@ -59476,6 +66295,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 75429, "end": 0, "raw": "0.6326239915683629", "start": 0, @@ -59495,11 +66315,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 75397, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 75397, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -59511,15 +66333,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 75460, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 75466, "elements": [ { "argument": { + "commentStart": 75476, "end": 0, "raw": "0.8631974445502164", "start": 0, @@ -59530,6 +66355,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 75475, "end": 0, "operator": "-", "start": 0, @@ -59537,6 +66363,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 75503, "end": 0, "raw": "0.016153555523963137", "start": 0, @@ -59556,11 +66383,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 75455, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 75455, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -59572,14 +66401,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 75542, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 75548, "elements": [ { + "commentStart": 75557, "end": 0, "raw": "0.19167797120152907", "start": 0, @@ -59592,6 +66424,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 75586, "end": 0, "raw": "0.4916414381703984", "start": 0, @@ -59602,6 +66435,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 75585, "end": 0, "operator": "-", "start": 0, @@ -59617,11 +66451,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 75537, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 75537, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -59633,15 +66469,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 75623, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 75629, "elements": [ { "argument": { + "commentStart": 75639, "end": 0, "raw": "0.8644261221501586", "start": 0, @@ -59652,6 +66491,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 75638, "end": 0, "operator": "-", "start": 0, @@ -59660,6 +66500,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 75667, "end": 0, "raw": "0.11434763886359756", "start": 0, @@ -59670,6 +66511,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 75666, "end": 0, "operator": "-", "start": 0, @@ -59685,11 +66527,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 75618, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 75618, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -59701,15 +66545,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 75705, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 75711, "elements": [ { "argument": { + "commentStart": 75721, "end": 0, "raw": "0.029081958413378572", "start": 0, @@ -59720,6 +66567,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 75720, "end": 0, "operator": "-", "start": 0, @@ -59728,6 +66576,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 75751, "end": 0, "raw": "0.5214138808318329", "start": 0, @@ -59738,6 +66587,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 75750, "end": 0, "operator": "-", "start": 0, @@ -59753,11 +66603,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 75700, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 75700, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -59769,15 +66621,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 75788, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 75794, "elements": [ { "argument": { + "commentStart": 75804, "end": 0, "raw": "0.8713091851579695", "start": 0, @@ -59788,6 +66643,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 75803, "end": 0, "operator": "-", "start": 0, @@ -59795,6 +66651,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 75831, "end": 0, "raw": "0.7866284950967315", "start": 0, @@ -59814,11 +66671,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 75783, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 75783, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -59830,14 +66689,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 75868, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 75874, "elements": [ { + "commentStart": 75875, "end": 0, "raw": "0.884342023093545", "start": 0, @@ -59850,6 +66712,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 75895, "end": 0, "raw": "0.1825407002568431", "start": 0, @@ -59860,6 +66723,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 75894, "end": 0, "operator": "-", "start": 0, @@ -59875,11 +66739,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 75863, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 75863, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -59891,15 +66757,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 75926, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 75932, "elements": [ { "argument": { + "commentStart": 75942, "end": 0, "raw": "0.6978385295364686", "start": 0, @@ -59910,6 +66779,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 75941, "end": 0, "operator": "-", "start": 0, @@ -59917,6 +66787,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 75969, "end": 0, "raw": "0.0440574328736949", "start": 0, @@ -59936,11 +66807,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 75921, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 75921, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -59952,15 +66825,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 76006, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 76012, "elements": [ { "argument": { + "commentStart": 76022, "end": 0, "raw": "0.48055049324331556", "start": 0, @@ -59971,6 +66847,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 76021, "end": 0, "operator": "-", "start": 0, @@ -59979,6 +66856,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 76051, "end": 0, "raw": "0.028546347149214002", "start": 0, @@ -59989,6 +66867,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 76050, "end": 0, "operator": "-", "start": 0, @@ -60004,11 +66883,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 76001, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 76001, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -60020,14 +66901,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 76090, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 76096, "elements": [ { + "commentStart": 76105, "end": 0, "raw": "0.41283517382864776", "start": 0, @@ -60040,6 +66924,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 76134, "end": 0, "raw": "0.44938038251347323", "start": 0, @@ -60050,6 +66935,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 76133, "end": 0, "operator": "-", "start": 0, @@ -60065,11 +66951,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 76085, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 76085, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -60081,14 +66969,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 76172, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 76178, "elements": [ { + "commentStart": 76179, "end": 0, "raw": "0.7911399832501751", "start": 0, @@ -60100,6 +66991,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 76199, "end": 0, "raw": "0.893446368526005", "start": 0, @@ -60119,11 +67011,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 76167, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 76167, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -60135,14 +67029,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 76229, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 76235, "elements": [ { + "commentStart": 76244, "end": 0, "raw": "0.6507434699009087", "start": 0, @@ -60155,6 +67052,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 76272, "end": 0, "raw": "0.6890023920962012", "start": 0, @@ -60165,6 +67063,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 76271, "end": 0, "operator": "-", "start": 0, @@ -60180,11 +67079,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 76224, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 76224, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -60196,14 +67097,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 76309, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 76315, "elements": [ { + "commentStart": 76324, "end": 0, "raw": "0.10489019777253028", "start": 0, @@ -60216,6 +67120,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 76353, "end": 0, "raw": "0.5467450997193952", "start": 0, @@ -60226,6 +67131,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 76352, "end": 0, "operator": "-", "start": 0, @@ -60241,11 +67147,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 76304, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 76304, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -60257,15 +67165,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 76390, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 76396, "elements": [ { "argument": { + "commentStart": 76406, "end": 0, "raw": "0.5760905289992633", "start": 0, @@ -60276,6 +67187,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 76405, "end": 0, "operator": "-", "start": 0, @@ -60284,6 +67196,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 76434, "end": 0, "raw": "0.2639900702114173", "start": 0, @@ -60294,6 +67207,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 76433, "end": 0, "operator": "-", "start": 0, @@ -60309,11 +67223,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 76385, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 76385, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -60325,14 +67241,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 76471, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 76477, "elements": [ { + "commentStart": 76486, "end": 0, "raw": "0.39828861790105297", "start": 0, @@ -60344,6 +67263,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 76514, "end": 0, "raw": "0.8036624129416385", "start": 0, @@ -60363,11 +67283,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 76466, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 76466, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -60379,15 +67301,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 76551, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 76557, "elements": [ { "argument": { + "commentStart": 76559, "end": 0, "raw": "0.673848991328553", "start": 0, @@ -60398,6 +67323,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 76558, "end": 0, "operator": "-", "start": 0, @@ -60406,6 +67332,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 76579, "end": 0, "raw": "0.918443329270668", "start": 0, @@ -60416,6 +67343,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 76578, "end": 0, "operator": "-", "start": 0, @@ -60431,11 +67359,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 76546, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 76546, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -60447,15 +67377,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 76609, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 76615, "elements": [ { "argument": { + "commentStart": 76625, "end": 0, "raw": "0.8599152936179257", "start": 0, @@ -60466,6 +67399,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 76624, "end": 0, "operator": "-", "start": 0, @@ -60474,6 +67408,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 76653, "end": 0, "raw": "0.9499371022680787", "start": 0, @@ -60484,6 +67419,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 76652, "end": 0, "operator": "-", "start": 0, @@ -60499,11 +67435,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 76604, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 76604, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -60515,14 +67453,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 76690, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 76696, "elements": [ { + "commentStart": 76705, "end": 0, "raw": "0.6285243831393765", "start": 0, @@ -60535,6 +67476,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 76733, "end": 0, "raw": "0.5186557636566307", "start": 0, @@ -60545,6 +67487,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 76732, "end": 0, "operator": "-", "start": 0, @@ -60560,11 +67503,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 76685, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 76685, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -60576,14 +67521,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 76770, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 76776, "elements": [ { + "commentStart": 76785, "end": 0, "raw": "0.3222412784832269", "start": 0, @@ -60595,6 +67543,7 @@ description: Result of parsing mike_stress_test.kcl } }, { + "commentStart": 76812, "end": 0, "raw": "0.24621192679727177", "start": 0, @@ -60614,11 +67563,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 76765, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 76765, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -60630,14 +67581,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 76850, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 76856, "elements": [ { + "commentStart": 76865, "end": 0, "raw": "0.19754357911311016", "start": 0, @@ -60650,6 +67604,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 76894, "end": 0, "raw": "0.7529246632397206", "start": 0, @@ -60660,6 +67615,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 76893, "end": 0, "operator": "-", "start": 0, @@ -60675,11 +67631,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 76845, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 76845, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -60691,15 +67649,18 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 76931, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 76937, "elements": [ { "argument": { + "commentStart": 76947, "end": 0, "raw": "0.43181570545865555", "start": 0, @@ -60710,6 +67671,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 76946, "end": 0, "operator": "-", "start": 0, @@ -60717,6 +67679,7 @@ description: Result of parsing mike_stress_test.kcl "type": "UnaryExpression" }, { + "commentStart": 76975, "end": 0, "raw": "0.18945437402201537", "start": 0, @@ -60736,11 +67699,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 76926, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 76926, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -60752,14 +67717,17 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 77013, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 77019, "elements": [ { + "commentStart": 77028, "end": 0, "raw": "0.8714511090241797", "start": 0, @@ -60772,6 +67740,7 @@ description: Result of parsing mike_stress_test.kcl }, { "argument": { + "commentStart": 77056, "end": 0, "raw": "0.7215844196844685", "start": 0, @@ -60782,6 +67751,7 @@ description: Result of parsing mike_stress_test.kcl "suffix": "None" } }, + "commentStart": 77055, "end": 0, "operator": "-", "start": 0, @@ -60797,11 +67767,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 77008, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 77008, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -60811,6 +67783,7 @@ description: Result of parsing mike_stress_test.kcl { "arguments": [ { + "commentStart": 77094, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -60818,11 +67791,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 77088, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 77088, "end": 0, "start": 0, "type": "CallExpression", @@ -60833,12 +67808,14 @@ description: Result of parsing mike_stress_test.kcl { "type": "LabeledArg", "label": { + "commentStart": 77110, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 77119, "end": 0, "raw": "5", "start": 0, @@ -60852,11 +67829,13 @@ description: Result of parsing mike_stress_test.kcl } ], "callee": { + "commentStart": 77102, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 77102, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -60864,6 +67843,7 @@ description: Result of parsing mike_stress_test.kcl "unlabeled": null } ], + "commentStart": 10, "end": 0, "start": 0, "type": "PipeExpression", @@ -60879,6 +67859,7 @@ description: Result of parsing mike_stress_test.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/multi_transform/ast.snap b/rust/kcl-lib/tests/multi_transform/ast.snap index ef19a3cef..d6514730a 100644 --- a/rust/kcl-lib/tests/multi_transform/ast.snap +++ b/rust/kcl-lib/tests/multi_transform/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing multi_transform.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "transform", "start": 0, @@ -19,13 +22,17 @@ description: Result of parsing multi_transform.kcl "body": [ { "argument": { + "commentStart": 27, "elements": [ { + "commentStart": 33, "end": 0, "properties": [ { + "commentStart": 35, "end": 0, "key": { + "commentStart": 35, "end": 0, "name": "translate", "start": 0, @@ -34,10 +41,13 @@ description: Result of parsing multi_transform.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 47, "elements": [ { + "commentStart": 48, "end": 0, "left": { + "commentStart": 48, "end": 0, "raw": "30", "start": 0, @@ -50,6 +60,7 @@ description: Result of parsing multi_transform.kcl }, "operator": "*", "right": { + "commentStart": 53, "end": 0, "name": "i", "start": 0, @@ -61,6 +72,7 @@ description: Result of parsing multi_transform.kcl "type": "BinaryExpression" }, { + "commentStart": 56, "end": 0, "raw": "0", "start": 0, @@ -72,6 +84,7 @@ description: Result of parsing multi_transform.kcl } }, { + "commentStart": 59, "end": 0, "raw": "0", "start": 0, @@ -95,11 +108,14 @@ description: Result of parsing multi_transform.kcl "type": "ObjectExpression" }, { + "commentStart": 69, "end": 0, "properties": [ { + "commentStart": 71, "end": 0, "key": { + "commentStart": 71, "end": 0, "name": "rotation", "start": 0, @@ -108,11 +124,14 @@ description: Result of parsing multi_transform.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 82, "end": 0, "properties": [ { + "commentStart": 84, "end": 0, "key": { + "commentStart": 84, "end": 0, "name": "angle", "start": 0, @@ -121,8 +140,10 @@ description: Result of parsing multi_transform.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 92, "end": 0, "left": { + "commentStart": 92, "end": 0, "raw": "45", "start": 0, @@ -135,6 +156,7 @@ description: Result of parsing multi_transform.kcl }, "operator": "*", "right": { + "commentStart": 97, "end": 0, "name": "i", "start": 0, @@ -163,20 +185,24 @@ description: Result of parsing multi_transform.kcl "type": "ArrayExpression", "type": "ArrayExpression" }, + "commentStart": 20, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 16, "end": 0, "start": 0 }, + "commentStart": 12, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 13, "end": 0, "name": "i", "start": 0, @@ -198,12 +224,14 @@ description: Result of parsing multi_transform.kcl "type": "VariableDeclaration" }, { + "commentStart": 109, "end": 0, "expression": { "body": [ { "arguments": [ { + "commentStart": 123, "end": 0, "name": "XY", "start": 0, @@ -212,11 +240,13 @@ description: Result of parsing multi_transform.kcl } ], "callee": { + "commentStart": 109, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 109, "end": 0, "start": 0, "type": "CallExpression", @@ -225,8 +255,10 @@ description: Result of parsing multi_transform.kcl { "arguments": [ { + "commentStart": 147, "elements": [ { + "commentStart": 148, "end": 0, "raw": "0", "start": 0, @@ -238,6 +270,7 @@ description: Result of parsing multi_transform.kcl } }, { + "commentStart": 151, "end": 0, "raw": "0", "start": 0, @@ -255,6 +288,7 @@ description: Result of parsing multi_transform.kcl "type": "ArrayExpression" }, { + "commentStart": 155, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -262,11 +296,13 @@ description: Result of parsing multi_transform.kcl } ], "callee": { + "commentStart": 132, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 132, "end": 0, "start": 0, "type": "CallExpression", @@ -275,11 +311,14 @@ description: Result of parsing multi_transform.kcl { "arguments": [ { + "commentStart": 171, "end": 0, "properties": [ { + "commentStart": 180, "end": 0, "key": { + "commentStart": 180, "end": 0, "name": "radius", "start": 0, @@ -288,6 +327,7 @@ description: Result of parsing multi_transform.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 189, "end": 0, "raw": "10", "start": 0, @@ -300,8 +340,10 @@ description: Result of parsing multi_transform.kcl } }, { + "commentStart": 200, "end": 0, "key": { + "commentStart": 200, "end": 0, "name": "numSides", "start": 0, @@ -310,6 +352,7 @@ description: Result of parsing multi_transform.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 211, "end": 0, "raw": "4", "start": 0, @@ -322,8 +365,10 @@ description: Result of parsing multi_transform.kcl } }, { + "commentStart": 221, "end": 0, "key": { + "commentStart": 221, "end": 0, "name": "center", "start": 0, @@ -332,8 +377,10 @@ description: Result of parsing multi_transform.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 230, "elements": [ { + "commentStart": 231, "end": 0, "raw": "0", "start": 0, @@ -345,6 +392,7 @@ description: Result of parsing multi_transform.kcl } }, { + "commentStart": 234, "end": 0, "raw": "0", "start": 0, @@ -363,8 +411,10 @@ description: Result of parsing multi_transform.kcl } }, { + "commentStart": 245, "end": 0, "key": { + "commentStart": 245, "end": 0, "name": "inscribed", "start": 0, @@ -373,6 +423,7 @@ description: Result of parsing multi_transform.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 257, "end": 0, "raw": "false", "start": 0, @@ -387,6 +438,7 @@ description: Result of parsing multi_transform.kcl "type": "ObjectExpression" }, { + "commentStart": 271, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -394,11 +446,13 @@ description: Result of parsing multi_transform.kcl } ], "callee": { + "commentStart": 163, "end": 0, "name": "polygon", "start": 0, "type": "Identifier" }, + "commentStart": 163, "end": 0, "start": 0, "type": "CallExpression", @@ -409,12 +463,14 @@ description: Result of parsing multi_transform.kcl { "type": "LabeledArg", "label": { + "commentStart": 287, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 296, "end": 0, "raw": "4", "start": 0, @@ -428,11 +484,13 @@ description: Result of parsing multi_transform.kcl } ], "callee": { + "commentStart": 279, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 279, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -444,12 +502,14 @@ description: Result of parsing multi_transform.kcl { "type": "LabeledArg", "label": { + "commentStart": 321, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 333, "end": 0, "raw": "3", "start": 0, @@ -464,12 +524,14 @@ description: Result of parsing multi_transform.kcl { "type": "LabeledArg", "label": { + "commentStart": 336, "end": 0, "name": "transform", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 348, "end": 0, "name": "transform", "start": 0, @@ -479,11 +541,13 @@ description: Result of parsing multi_transform.kcl } ], "callee": { + "commentStart": 304, "end": 0, "name": "patternTransform", "start": 0, "type": "Identifier" }, + "commentStart": 304, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -491,6 +555,7 @@ description: Result of parsing multi_transform.kcl "unlabeled": null } ], + "commentStart": 109, "end": 0, "start": 0, "type": "PipeExpression", @@ -501,6 +566,7 @@ description: Result of parsing multi_transform.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/neg_xz_plane/ast.snap b/rust/kcl-lib/tests/neg_xz_plane/ast.snap index 466ece452..4f68c37c0 100644 --- a/rust/kcl-lib/tests/neg_xz_plane/ast.snap +++ b/rust/kcl-lib/tests/neg_xz_plane/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing neg_xz_plane.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "part001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing neg_xz_plane.kcl { "arguments": [ { + "commentStart": 24, "end": 0, "raw": "'-XZ'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing neg_xz_plane.kcl } ], "callee": { + "commentStart": 10, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 10, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing neg_xz_plane.kcl { "arguments": [ { + "commentStart": 51, "elements": [ { + "commentStart": 52, "end": 0, "raw": "0", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing neg_xz_plane.kcl } }, { + "commentStart": 55, "end": 0, "raw": "0", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing neg_xz_plane.kcl "type": "ArrayExpression" }, { + "commentStart": 59, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing neg_xz_plane.kcl } ], "callee": { + "commentStart": 36, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 36, "end": 0, "start": 0, "type": "CallExpression", @@ -93,14 +105,17 @@ description: Result of parsing neg_xz_plane.kcl { "type": "LabeledArg", "label": { + "commentStart": 72, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 86, "elements": [ { + "commentStart": 87, "end": 0, "raw": "100", "start": 0, @@ -112,6 +127,7 @@ description: Result of parsing neg_xz_plane.kcl } }, { + "commentStart": 92, "end": 0, "raw": "100", "start": 0, @@ -131,11 +147,13 @@ description: Result of parsing neg_xz_plane.kcl } ], "callee": { + "commentStart": 67, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 67, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -147,14 +165,17 @@ description: Result of parsing neg_xz_plane.kcl { "type": "LabeledArg", "label": { + "commentStart": 108, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 122, "elements": [ { + "commentStart": 123, "end": 0, "raw": "100", "start": 0, @@ -166,6 +187,7 @@ description: Result of parsing neg_xz_plane.kcl } }, { + "commentStart": 128, "end": 0, "raw": "0", "start": 0, @@ -185,11 +207,13 @@ description: Result of parsing neg_xz_plane.kcl } ], "callee": { + "commentStart": 103, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 103, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -199,6 +223,7 @@ description: Result of parsing neg_xz_plane.kcl { "arguments": [ { + "commentStart": 143, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -206,11 +231,13 @@ description: Result of parsing neg_xz_plane.kcl } ], "callee": { + "commentStart": 137, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 137, "end": 0, "start": 0, "type": "CallExpression", @@ -221,14 +248,17 @@ description: Result of parsing neg_xz_plane.kcl { "type": "LabeledArg", "label": { + "commentStart": 159, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 168, "end": 0, "left": { + "commentStart": 168, "end": 0, "raw": "5", "start": 0, @@ -241,6 +271,7 @@ description: Result of parsing neg_xz_plane.kcl }, "operator": "+", "right": { + "commentStart": 172, "end": 0, "raw": "7", "start": 0, @@ -258,11 +289,13 @@ description: Result of parsing neg_xz_plane.kcl } ], "callee": { + "commentStart": 151, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 151, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -270,6 +303,7 @@ description: Result of parsing neg_xz_plane.kcl "unlabeled": null } ], + "commentStart": 10, "end": 0, "start": 0, "type": "PipeExpression", @@ -285,6 +319,7 @@ description: Result of parsing neg_xz_plane.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/non_string_key_of_object/ast.snap b/rust/kcl-lib/tests/non_string_key_of_object/ast.snap index 2a3becb5e..b0755cfc0 100644 --- a/rust/kcl-lib/tests/non_string_key_of_object/ast.snap +++ b/rust/kcl-lib/tests/non_string_key_of_object/ast.snap @@ -6,20 +6,26 @@ description: Result of parsing non_string_key_of_object.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "obj", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "end": 0, "properties": [ { + "commentStart": 8, "end": 0, "key": { + "commentStart": 8, "end": 0, "name": "key", "start": 0, @@ -28,6 +34,7 @@ description: Result of parsing non_string_key_of_object.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 14, "end": 0, "raw": "123", "start": 0, @@ -54,18 +61,23 @@ description: Result of parsing non_string_key_of_object.kcl "type": "VariableDeclaration" }, { + "commentStart": 20, "declaration": { + "commentStart": 20, "end": 0, "id": { + "commentStart": 20, "end": 0, "name": "num", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 26, "computed": false, "end": 0, "object": { + "commentStart": 26, "end": 0, "name": "obj", "start": 0, @@ -73,6 +85,7 @@ description: Result of parsing non_string_key_of_object.kcl "type": "Identifier" }, "property": { + "commentStart": 30, "end": 0, "raw": "3", "start": 0, @@ -97,6 +110,7 @@ description: Result of parsing non_string_key_of_object.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/object_prop_not_found/ast.snap b/rust/kcl-lib/tests/object_prop_not_found/ast.snap index 322097d59..2c4b887e8 100644 --- a/rust/kcl-lib/tests/object_prop_not_found/ast.snap +++ b/rust/kcl-lib/tests/object_prop_not_found/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing object_prop_not_found.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "obj", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 6, "end": 0, "properties": [], "start": 0, @@ -31,18 +35,23 @@ description: Result of parsing object_prop_not_found.kcl "type": "VariableDeclaration" }, { + "commentStart": 11, "declaration": { + "commentStart": 11, "end": 0, "id": { + "commentStart": 11, "end": 0, "name": "k", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 15, "computed": false, "end": 0, "object": { + "commentStart": 15, "end": 0, "name": "obj", "start": 0, @@ -50,6 +59,7 @@ description: Result of parsing object_prop_not_found.kcl "type": "Identifier" }, "property": { + "commentStart": 19, "end": 0, "raw": "\"age\"", "start": 0, @@ -71,6 +81,7 @@ description: Result of parsing object_prop_not_found.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/out_of_band_sketches/ast.snap b/rust/kcl-lib/tests/out_of_band_sketches/ast.snap index 763f31bea..e03efecd6 100644 --- a/rust/kcl-lib/tests/out_of_band_sketches/ast.snap +++ b/rust/kcl-lib/tests/out_of_band_sketches/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing out_of_band_sketches.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "sketch001", "start": 0, @@ -17,6 +20,7 @@ description: Result of parsing out_of_band_sketches.kcl "init": { "arguments": [ { + "commentStart": 26, "end": 0, "raw": "'XZ'", "start": 0, @@ -26,11 +30,13 @@ description: Result of parsing out_of_band_sketches.kcl } ], "callee": { + "commentStart": 12, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 12, "end": 0, "start": 0, "type": "CallExpression", @@ -46,9 +52,12 @@ description: Result of parsing out_of_band_sketches.kcl "type": "VariableDeclaration" }, { + "commentStart": 32, "declaration": { + "commentStart": 32, "end": 0, "id": { + "commentStart": 32, "end": 0, "name": "profile001", "start": 0, @@ -59,8 +68,10 @@ description: Result of parsing out_of_band_sketches.kcl { "arguments": [ { + "commentStart": 60, "elements": [ { + "commentStart": 61, "end": 0, "raw": "27.67", "start": 0, @@ -72,6 +83,7 @@ description: Result of parsing out_of_band_sketches.kcl } }, { + "commentStart": 68, "end": 0, "raw": "239.34", "start": 0, @@ -89,6 +101,7 @@ description: Result of parsing out_of_band_sketches.kcl "type": "ArrayExpression" }, { + "commentStart": 77, "end": 0, "name": "sketch001", "start": 0, @@ -97,11 +110,13 @@ description: Result of parsing out_of_band_sketches.kcl } ], "callee": { + "commentStart": 45, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 45, "end": 0, "start": 0, "type": "CallExpression", @@ -112,14 +127,17 @@ description: Result of parsing out_of_band_sketches.kcl { "type": "LabeledArg", "label": { + "commentStart": 169, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 175, "elements": [ { + "commentStart": 176, "end": 0, "raw": "414.61", "start": 0, @@ -131,6 +149,7 @@ description: Result of parsing out_of_band_sketches.kcl } }, { + "commentStart": 184, "end": 0, "raw": "0", "start": 0, @@ -150,11 +169,13 @@ description: Result of parsing out_of_band_sketches.kcl } ], "callee": { + "commentStart": 164, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 164, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -166,14 +187,17 @@ description: Result of parsing out_of_band_sketches.kcl { "type": "LabeledArg", "label": { + "commentStart": 213, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 219, "elements": [ { + "commentStart": 220, "end": 0, "raw": "33.98", "start": 0, @@ -186,6 +210,7 @@ description: Result of parsing out_of_band_sketches.kcl }, { "argument": { + "commentStart": 228, "end": 0, "raw": "389.36", "start": 0, @@ -196,6 +221,7 @@ description: Result of parsing out_of_band_sketches.kcl "suffix": "None" } }, + "commentStart": 227, "end": 0, "operator": "-", "start": 0, @@ -211,11 +237,13 @@ description: Result of parsing out_of_band_sketches.kcl } ], "callee": { + "commentStart": 208, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 208, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -223,11 +251,13 @@ description: Result of parsing out_of_band_sketches.kcl "unlabeled": null } ], + "commentStart": 45, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 90, "end": 0, "start": 0, "type": "NonCodeNode", @@ -240,6 +270,7 @@ description: Result of parsing out_of_band_sketches.kcl ], "1": [ { + "commentStart": 187, "end": 0, "start": 0, "type": "NonCodeNode", @@ -252,6 +283,7 @@ description: Result of parsing out_of_band_sketches.kcl ], "2": [ { + "commentStart": 236, "end": 0, "start": 0, "type": "NonCodeNode", @@ -279,9 +311,12 @@ description: Result of parsing out_of_band_sketches.kcl "type": "VariableDeclaration" }, { + "commentStart": 251, "declaration": { + "commentStart": 253, "end": 0, "id": { + "commentStart": 253, "end": 0, "name": "sketch002", "start": 0, @@ -290,6 +325,7 @@ description: Result of parsing out_of_band_sketches.kcl "init": { "arguments": [ { + "commentStart": 279, "end": 0, "raw": "'XY'", "start": 0, @@ -299,11 +335,13 @@ description: Result of parsing out_of_band_sketches.kcl } ], "callee": { + "commentStart": 265, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 265, "end": 0, "start": 0, "type": "CallExpression", @@ -319,9 +357,12 @@ description: Result of parsing out_of_band_sketches.kcl "type": "VariableDeclaration" }, { + "commentStart": 285, "declaration": { + "commentStart": 285, "end": 0, "id": { + "commentStart": 285, "end": 0, "name": "profile002", "start": 0, @@ -332,8 +373,10 @@ description: Result of parsing out_of_band_sketches.kcl { "arguments": [ { + "commentStart": 313, "elements": [ { + "commentStart": 314, "end": 0, "raw": "67.04", "start": 0, @@ -346,6 +389,7 @@ description: Result of parsing out_of_band_sketches.kcl }, { "argument": { + "commentStart": 322, "end": 0, "raw": "63.5", "start": 0, @@ -356,6 +400,7 @@ description: Result of parsing out_of_band_sketches.kcl "suffix": "None" } }, + "commentStart": 321, "end": 0, "operator": "-", "start": 0, @@ -369,6 +414,7 @@ description: Result of parsing out_of_band_sketches.kcl "type": "ArrayExpression" }, { + "commentStart": 329, "end": 0, "name": "sketch002", "start": 0, @@ -377,11 +423,13 @@ description: Result of parsing out_of_band_sketches.kcl } ], "callee": { + "commentStart": 298, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 298, "end": 0, "start": 0, "type": "CallExpression", @@ -392,14 +440,17 @@ description: Result of parsing out_of_band_sketches.kcl { "type": "LabeledArg", "label": { + "commentStart": 421, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 427, "elements": [ { + "commentStart": 428, "end": 0, "raw": "282.37", "start": 0, @@ -411,6 +462,7 @@ description: Result of parsing out_of_band_sketches.kcl } }, { + "commentStart": 436, "end": 0, "raw": "0", "start": 0, @@ -430,11 +482,13 @@ description: Result of parsing out_of_band_sketches.kcl } ], "callee": { + "commentStart": 416, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 416, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -446,15 +500,18 @@ description: Result of parsing out_of_band_sketches.kcl { "type": "LabeledArg", "label": { + "commentStart": 465, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 471, "elements": [ { "argument": { + "commentStart": 473, "end": 0, "raw": "12.77", "start": 0, @@ -465,6 +522,7 @@ description: Result of parsing out_of_band_sketches.kcl "suffix": "None" } }, + "commentStart": 472, "end": 0, "operator": "-", "start": 0, @@ -473,6 +531,7 @@ description: Result of parsing out_of_band_sketches.kcl }, { "argument": { + "commentStart": 481, "end": 0, "raw": "178.07", "start": 0, @@ -483,6 +542,7 @@ description: Result of parsing out_of_band_sketches.kcl "suffix": "None" } }, + "commentStart": 480, "end": 0, "operator": "-", "start": 0, @@ -498,11 +558,13 @@ description: Result of parsing out_of_band_sketches.kcl } ], "callee": { + "commentStart": 460, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 460, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -510,11 +572,13 @@ description: Result of parsing out_of_band_sketches.kcl "unlabeled": null } ], + "commentStart": 298, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 342, "end": 0, "start": 0, "type": "NonCodeNode", @@ -527,6 +591,7 @@ description: Result of parsing out_of_band_sketches.kcl ], "1": [ { + "commentStart": 439, "end": 0, "start": 0, "type": "NonCodeNode", @@ -539,6 +604,7 @@ description: Result of parsing out_of_band_sketches.kcl ], "2": [ { + "commentStart": 489, "end": 0, "start": 0, "type": "NonCodeNode", @@ -566,9 +632,12 @@ description: Result of parsing out_of_band_sketches.kcl "type": "VariableDeclaration" }, { + "commentStart": 504, "declaration": { + "commentStart": 506, "end": 0, "id": { + "commentStart": 506, "end": 0, "name": "profile001extended", "start": 0, @@ -577,6 +646,7 @@ description: Result of parsing out_of_band_sketches.kcl "init": { "body": [ { + "commentStart": 527, "end": 0, "name": "profile001", "start": 0, @@ -588,15 +658,18 @@ description: Result of parsing out_of_band_sketches.kcl { "type": "LabeledArg", "label": { + "commentStart": 548, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 554, "elements": [ { "argument": { + "commentStart": 556, "end": 0, "raw": "455.38", "start": 0, @@ -607,6 +680,7 @@ description: Result of parsing out_of_band_sketches.kcl "suffix": "None" } }, + "commentStart": 555, "end": 0, "operator": "-", "start": 0, @@ -614,6 +688,7 @@ description: Result of parsing out_of_band_sketches.kcl "type": "UnaryExpression" }, { + "commentStart": 564, "end": 0, "raw": "0", "start": 0, @@ -633,11 +708,13 @@ description: Result of parsing out_of_band_sketches.kcl } ], "callee": { + "commentStart": 543, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 543, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -647,22 +724,26 @@ description: Result of parsing out_of_band_sketches.kcl { "arguments": [], "callee": { + "commentStart": 588, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 588, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 527, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 567, "end": 0, "start": 0, "type": "NonCodeNode", @@ -675,6 +756,7 @@ description: Result of parsing out_of_band_sketches.kcl ], "2": [ { + "commentStart": 595, "end": 0, "start": 0, "type": "NonCodeNode", @@ -702,9 +784,12 @@ description: Result of parsing out_of_band_sketches.kcl "type": "VariableDeclaration" }, { + "commentStart": 604, "declaration": { + "commentStart": 606, "end": 0, "id": { + "commentStart": 606, "end": 0, "name": "profile002extended", "start": 0, @@ -713,6 +798,7 @@ description: Result of parsing out_of_band_sketches.kcl "init": { "body": [ { + "commentStart": 627, "end": 0, "name": "profile002", "start": 0, @@ -724,15 +810,18 @@ description: Result of parsing out_of_band_sketches.kcl { "type": "LabeledArg", "label": { + "commentStart": 648, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 654, "elements": [ { "argument": { + "commentStart": 656, "end": 0, "raw": "299.39", "start": 0, @@ -743,6 +832,7 @@ description: Result of parsing out_of_band_sketches.kcl "suffix": "None" } }, + "commentStart": 655, "end": 0, "operator": "-", "start": 0, @@ -750,6 +840,7 @@ description: Result of parsing out_of_band_sketches.kcl "type": "UnaryExpression" }, { + "commentStart": 664, "end": 0, "raw": "21.28", "start": 0, @@ -769,11 +860,13 @@ description: Result of parsing out_of_band_sketches.kcl } ], "callee": { + "commentStart": 643, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 643, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -783,22 +876,26 @@ description: Result of parsing out_of_band_sketches.kcl { "arguments": [], "callee": { + "commentStart": 692, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 692, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 627, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 671, "end": 0, "start": 0, "type": "NonCodeNode", @@ -811,6 +908,7 @@ description: Result of parsing out_of_band_sketches.kcl ], "2": [ { + "commentStart": 699, "end": 0, "start": 0, "type": "NonCodeNode", @@ -838,18 +936,21 @@ description: Result of parsing out_of_band_sketches.kcl "type": "VariableDeclaration" }, { + "commentStart": 708, "end": 0, "expression": { "arguments": [ { "type": "LabeledArg", "label": { + "commentStart": 760, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 769, "end": 0, "raw": "10.14", "start": 0, @@ -863,18 +964,22 @@ description: Result of parsing out_of_band_sketches.kcl } ], "callee": { + "commentStart": 710, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 710, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 718, "elements": [ { + "commentStart": 719, "end": 0, "name": "profile001extended", "start": 0, @@ -882,6 +987,7 @@ description: Result of parsing out_of_band_sketches.kcl "type": "Identifier" }, { + "commentStart": 739, "end": 0, "name": "profile002extended", "start": 0, @@ -900,11 +1006,13 @@ description: Result of parsing out_of_band_sketches.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 251, "end": 0, "start": 0, "type": "NonCodeNode", @@ -915,6 +1023,7 @@ description: Result of parsing out_of_band_sketches.kcl ], "3": [ { + "commentStart": 504, "end": 0, "start": 0, "type": "NonCodeNode", @@ -925,6 +1034,7 @@ description: Result of parsing out_of_band_sketches.kcl ], "4": [ { + "commentStart": 604, "end": 0, "start": 0, "type": "NonCodeNode", @@ -935,6 +1045,7 @@ description: Result of parsing out_of_band_sketches.kcl ], "5": [ { + "commentStart": 708, "end": 0, "start": 0, "type": "NonCodeNode", @@ -945,6 +1056,7 @@ description: Result of parsing out_of_band_sketches.kcl ], "6": [ { + "commentStart": 775, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/parametric/ast.snap b/rust/kcl-lib/tests/parametric/ast.snap index aec87373c..b28f9c8a9 100644 --- a/rust/kcl-lib/tests/parametric/ast.snap +++ b/rust/kcl-lib/tests/parametric/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing parametric.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "sigmaAllow", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 13, "end": 0, "raw": "35000", "start": 0, @@ -35,15 +39,19 @@ description: Result of parsing parametric.kcl "type": "VariableDeclaration" }, { + "commentStart": 18, "declaration": { + "commentStart": 26, "end": 0, "id": { + "commentStart": 26, "end": 0, "name": "width", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 34, "end": 0, "raw": "9", "start": 0, @@ -64,15 +72,19 @@ description: Result of parsing parametric.kcl "type": "VariableDeclaration" }, { + "commentStart": 35, "declaration": { + "commentStart": 44, "end": 0, "id": { + "commentStart": 44, "end": 0, "name": "p", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 48, "end": 0, "raw": "150", "start": 0, @@ -93,15 +105,19 @@ description: Result of parsing parametric.kcl "type": "VariableDeclaration" }, { + "commentStart": 51, "declaration": { + "commentStart": 76, "end": 0, "id": { + "commentStart": 76, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 87, "end": 0, "raw": "6", "start": 0, @@ -122,15 +138,19 @@ description: Result of parsing parametric.kcl "type": "VariableDeclaration" }, { + "commentStart": 88, "declaration": { + "commentStart": 99, "end": 0, "id": { + "commentStart": 99, "end": 0, "name": "FOS", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 105, "end": 0, "raw": "2", "start": 0, @@ -151,15 +171,19 @@ description: Result of parsing parametric.kcl "type": "VariableDeclaration" }, { + "commentStart": 106, "declaration": { + "commentStart": 108, "end": 0, "id": { + "commentStart": 108, "end": 0, "name": "leg1", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 115, "end": 0, "raw": "5", "start": 0, @@ -180,15 +204,19 @@ description: Result of parsing parametric.kcl "type": "VariableDeclaration" }, { + "commentStart": 116, "declaration": { + "commentStart": 127, "end": 0, "id": { + "commentStart": 127, "end": 0, "name": "leg2", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 134, "end": 0, "raw": "8", "start": 0, @@ -209,9 +237,12 @@ description: Result of parsing parametric.kcl "type": "VariableDeclaration" }, { + "commentStart": 135, "declaration": { + "commentStart": 146, "end": 0, "id": { + "commentStart": 146, "end": 0, "name": "thickness", "start": 0, @@ -220,16 +251,22 @@ description: Result of parsing parametric.kcl "init": { "arguments": [ { + "commentStart": 163, "end": 0, "left": { + "commentStart": 163, "end": 0, "left": { + "commentStart": 163, "end": 0, "left": { + "commentStart": 163, "end": 0, "left": { + "commentStart": 163, "end": 0, "left": { + "commentStart": 163, "end": 0, "name": "distance", "start": 0, @@ -238,6 +275,7 @@ description: Result of parsing parametric.kcl }, "operator": "*", "right": { + "commentStart": 174, "end": 0, "name": "p", "start": 0, @@ -250,6 +288,7 @@ description: Result of parsing parametric.kcl }, "operator": "*", "right": { + "commentStart": 178, "end": 0, "name": "FOS", "start": 0, @@ -262,6 +301,7 @@ description: Result of parsing parametric.kcl }, "operator": "*", "right": { + "commentStart": 184, "end": 0, "raw": "6", "start": 0, @@ -278,6 +318,7 @@ description: Result of parsing parametric.kcl }, "operator": "/", "right": { + "commentStart": 188, "end": 0, "name": "sigmaAllow", "start": 0, @@ -290,6 +331,7 @@ description: Result of parsing parametric.kcl }, "operator": "/", "right": { + "commentStart": 201, "end": 0, "name": "width", "start": 0, @@ -302,11 +344,13 @@ description: Result of parsing parametric.kcl } ], "callee": { + "commentStart": 158, "end": 0, "name": "sqrt", "start": 0, "type": "Identifier" }, + "commentStart": 158, "end": 0, "start": 0, "type": "CallExpression", @@ -322,9 +366,12 @@ description: Result of parsing parametric.kcl "type": "VariableDeclaration" }, { + "commentStart": 207, "declaration": { + "commentStart": 218, "end": 0, "id": { + "commentStart": 218, "end": 0, "name": "bracket", "start": 0, @@ -335,6 +382,7 @@ description: Result of parsing parametric.kcl { "arguments": [ { + "commentStart": 242, "end": 0, "raw": "'XY'", "start": 0, @@ -344,11 +392,13 @@ description: Result of parsing parametric.kcl } ], "callee": { + "commentStart": 228, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 228, "end": 0, "start": 0, "type": "CallExpression", @@ -357,8 +407,10 @@ description: Result of parsing parametric.kcl { "arguments": [ { + "commentStart": 268, "elements": [ { + "commentStart": 269, "end": 0, "raw": "0", "start": 0, @@ -370,6 +422,7 @@ description: Result of parsing parametric.kcl } }, { + "commentStart": 272, "end": 0, "raw": "0", "start": 0, @@ -387,6 +440,7 @@ description: Result of parsing parametric.kcl "type": "ArrayExpression" }, { + "commentStart": 276, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -394,11 +448,13 @@ description: Result of parsing parametric.kcl } ], "callee": { + "commentStart": 253, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 253, "end": 0, "start": 0, "type": "CallExpression", @@ -409,14 +465,17 @@ description: Result of parsing parametric.kcl { "type": "LabeledArg", "label": { + "commentStart": 289, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 295, "elements": [ { + "commentStart": 296, "end": 0, "raw": "0", "start": 0, @@ -428,6 +487,7 @@ description: Result of parsing parametric.kcl } }, { + "commentStart": 299, "end": 0, "name": "leg1", "start": 0, @@ -443,11 +503,13 @@ description: Result of parsing parametric.kcl } ], "callee": { + "commentStart": 284, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 284, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -459,14 +521,17 @@ description: Result of parsing parametric.kcl { "type": "LabeledArg", "label": { + "commentStart": 316, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 322, "elements": [ { + "commentStart": 323, "end": 0, "name": "leg2", "start": 0, @@ -474,6 +539,7 @@ description: Result of parsing parametric.kcl "type": "Identifier" }, { + "commentStart": 329, "end": 0, "raw": "0", "start": 0, @@ -493,11 +559,13 @@ description: Result of parsing parametric.kcl } ], "callee": { + "commentStart": 311, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 311, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -509,14 +577,17 @@ description: Result of parsing parametric.kcl { "type": "LabeledArg", "label": { + "commentStart": 343, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 349, "elements": [ { + "commentStart": 350, "end": 0, "raw": "0", "start": 0, @@ -529,12 +600,14 @@ description: Result of parsing parametric.kcl }, { "argument": { + "commentStart": 354, "end": 0, "name": "thickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 353, "end": 0, "operator": "-", "start": 0, @@ -550,11 +623,13 @@ description: Result of parsing parametric.kcl } ], "callee": { + "commentStart": 338, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 338, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -566,23 +641,28 @@ description: Result of parsing parametric.kcl { "type": "LabeledArg", "label": { + "commentStart": 376, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 382, "elements": [ { + "commentStart": 383, "end": 0, "left": { "argument": { + "commentStart": 384, "end": 0, "name": "leg2", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 383, "end": 0, "operator": "-", "start": 0, @@ -591,6 +671,7 @@ description: Result of parsing parametric.kcl }, "operator": "+", "right": { + "commentStart": 391, "end": 0, "name": "thickness", "start": 0, @@ -602,6 +683,7 @@ description: Result of parsing parametric.kcl "type": "BinaryExpression" }, { + "commentStart": 402, "end": 0, "raw": "0", "start": 0, @@ -621,11 +703,13 @@ description: Result of parsing parametric.kcl } ], "callee": { + "commentStart": 371, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 371, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -637,14 +721,17 @@ description: Result of parsing parametric.kcl { "type": "LabeledArg", "label": { + "commentStart": 416, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 422, "elements": [ { + "commentStart": 423, "end": 0, "raw": "0", "start": 0, @@ -656,15 +743,18 @@ description: Result of parsing parametric.kcl } }, { + "commentStart": 426, "end": 0, "left": { "argument": { + "commentStart": 427, "end": 0, "name": "leg1", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 426, "end": 0, "operator": "-", "start": 0, @@ -673,6 +763,7 @@ description: Result of parsing parametric.kcl }, "operator": "+", "right": { + "commentStart": 434, "end": 0, "name": "thickness", "start": 0, @@ -692,11 +783,13 @@ description: Result of parsing parametric.kcl } ], "callee": { + "commentStart": 411, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 411, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -706,6 +799,7 @@ description: Result of parsing parametric.kcl { "arguments": [ { + "commentStart": 457, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -713,11 +807,13 @@ description: Result of parsing parametric.kcl } ], "callee": { + "commentStart": 451, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 451, "end": 0, "start": 0, "type": "CallExpression", @@ -728,12 +824,14 @@ description: Result of parsing parametric.kcl { "type": "LabeledArg", "label": { + "commentStart": 473, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 482, "end": 0, "name": "width", "start": 0, @@ -743,11 +841,13 @@ description: Result of parsing parametric.kcl } ], "callee": { + "commentStart": 465, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 465, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -755,6 +855,7 @@ description: Result of parsing parametric.kcl "unlabeled": null } ], + "commentStart": 228, "end": 0, "start": 0, "type": "PipeExpression", @@ -770,11 +871,13 @@ description: Result of parsing parametric.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 18, "end": 0, "start": 0, "type": "NonCodeNode", @@ -787,6 +890,7 @@ description: Result of parsing parametric.kcl ], "1": [ { + "commentStart": 35, "end": 0, "start": 0, "type": "NonCodeNode", @@ -799,6 +903,7 @@ description: Result of parsing parametric.kcl ], "2": [ { + "commentStart": 51, "end": 0, "start": 0, "type": "NonCodeNode", @@ -811,6 +916,7 @@ description: Result of parsing parametric.kcl ], "3": [ { + "commentStart": 88, "end": 0, "start": 0, "type": "NonCodeNode", @@ -823,6 +929,7 @@ description: Result of parsing parametric.kcl ], "4": [ { + "commentStart": 106, "end": 0, "start": 0, "type": "NonCodeNode", @@ -833,6 +940,7 @@ description: Result of parsing parametric.kcl ], "5": [ { + "commentStart": 116, "end": 0, "start": 0, "type": "NonCodeNode", @@ -845,6 +953,7 @@ description: Result of parsing parametric.kcl ], "6": [ { + "commentStart": 135, "end": 0, "start": 0, "type": "NonCodeNode", @@ -857,6 +966,7 @@ description: Result of parsing parametric.kcl ], "7": [ { + "commentStart": 207, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/parametric_with_tan_arc/ast.snap b/rust/kcl-lib/tests/parametric_with_tan_arc/ast.snap index a4ed43ec3..35028b558 100644 --- a/rust/kcl-lib/tests/parametric_with_tan_arc/ast.snap +++ b/rust/kcl-lib/tests/parametric_with_tan_arc/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing parametric_with_tan_arc.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "sigmaAllow", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 13, "end": 0, "raw": "15000", "start": 0, @@ -35,15 +39,19 @@ description: Result of parsing parametric_with_tan_arc.kcl "type": "VariableDeclaration" }, { + "commentStart": 18, "declaration": { + "commentStart": 26, "end": 0, "id": { + "commentStart": 26, "end": 0, "name": "width", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 34, "end": 0, "raw": "11", "start": 0, @@ -64,15 +72,19 @@ description: Result of parsing parametric_with_tan_arc.kcl "type": "VariableDeclaration" }, { + "commentStart": 36, "declaration": { + "commentStart": 45, "end": 0, "id": { + "commentStart": 45, "end": 0, "name": "p", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 49, "end": 0, "raw": "150", "start": 0, @@ -93,15 +105,19 @@ description: Result of parsing parametric_with_tan_arc.kcl "type": "VariableDeclaration" }, { + "commentStart": 52, "declaration": { + "commentStart": 77, "end": 0, "id": { + "commentStart": 77, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 88, "end": 0, "raw": "12", "start": 0, @@ -122,15 +138,19 @@ description: Result of parsing parametric_with_tan_arc.kcl "type": "VariableDeclaration" }, { + "commentStart": 90, "declaration": { + "commentStart": 101, "end": 0, "id": { + "commentStart": 101, "end": 0, "name": "FOS", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 107, "end": 0, "raw": "2", "start": 0, @@ -151,9 +171,12 @@ description: Result of parsing parametric_with_tan_arc.kcl "type": "VariableDeclaration" }, { + "commentStart": 109, "declaration": { + "commentStart": 109, "end": 0, "id": { + "commentStart": 109, "end": 0, "name": "thickness", "start": 0, @@ -162,14 +185,19 @@ description: Result of parsing parametric_with_tan_arc.kcl "init": { "arguments": [ { + "commentStart": 126, "end": 0, "left": { + "commentStart": 126, "end": 0, "left": { + "commentStart": 126, "end": 0, "left": { + "commentStart": 126, "end": 0, "left": { + "commentStart": 126, "end": 0, "name": "distance", "start": 0, @@ -178,6 +206,7 @@ description: Result of parsing parametric_with_tan_arc.kcl }, "operator": "*", "right": { + "commentStart": 137, "end": 0, "name": "p", "start": 0, @@ -190,6 +219,7 @@ description: Result of parsing parametric_with_tan_arc.kcl }, "operator": "*", "right": { + "commentStart": 141, "end": 0, "name": "FOS", "start": 0, @@ -202,6 +232,7 @@ description: Result of parsing parametric_with_tan_arc.kcl }, "operator": "*", "right": { + "commentStart": 147, "end": 0, "raw": "6", "start": 0, @@ -218,8 +249,10 @@ description: Result of parsing parametric_with_tan_arc.kcl }, "operator": "/", "right": { + "commentStart": 152, "end": 0, "left": { + "commentStart": 152, "end": 0, "name": "sigmaAllow", "start": 0, @@ -228,6 +261,7 @@ description: Result of parsing parametric_with_tan_arc.kcl }, "operator": "*", "right": { + "commentStart": 165, "end": 0, "name": "width", "start": 0, @@ -244,11 +278,13 @@ description: Result of parsing parametric_with_tan_arc.kcl } ], "callee": { + "commentStart": 121, "end": 0, "name": "sqrt", "start": 0, "type": "Identifier" }, + "commentStart": 121, "end": 0, "start": 0, "type": "CallExpression", @@ -264,17 +300,22 @@ description: Result of parsing parametric_with_tan_arc.kcl "type": "VariableDeclaration" }, { + "commentStart": 173, "declaration": { + "commentStart": 173, "end": 0, "id": { + "commentStart": 173, "end": 0, "name": "filletR", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 183, "end": 0, "left": { + "commentStart": 183, "end": 0, "name": "thickness", "start": 0, @@ -283,6 +324,7 @@ description: Result of parsing parametric_with_tan_arc.kcl }, "operator": "*", "right": { + "commentStart": 195, "end": 0, "raw": "2", "start": 0, @@ -307,15 +349,19 @@ description: Result of parsing parametric_with_tan_arc.kcl "type": "VariableDeclaration" }, { + "commentStart": 197, "declaration": { + "commentStart": 197, "end": 0, "id": { + "commentStart": 197, "end": 0, "name": "shelfMountL", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 211, "end": 0, "raw": "9", "start": 0, @@ -336,15 +382,19 @@ description: Result of parsing parametric_with_tan_arc.kcl "type": "VariableDeclaration" }, { + "commentStart": 213, "declaration": { + "commentStart": 213, "end": 0, "id": { + "commentStart": 213, "end": 0, "name": "wallMountL", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 226, "end": 0, "raw": "8", "start": 0, @@ -365,9 +415,12 @@ description: Result of parsing parametric_with_tan_arc.kcl "type": "VariableDeclaration" }, { + "commentStart": 227, "declaration": { + "commentStart": 229, "end": 0, "id": { + "commentStart": 229, "end": 0, "name": "bracket", "start": 0, @@ -378,6 +431,7 @@ description: Result of parsing parametric_with_tan_arc.kcl { "arguments": [ { + "commentStart": 253, "end": 0, "name": "XY", "start": 0, @@ -386,11 +440,13 @@ description: Result of parsing parametric_with_tan_arc.kcl } ], "callee": { + "commentStart": 239, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 239, "end": 0, "start": 0, "type": "CallExpression", @@ -399,8 +455,10 @@ description: Result of parsing parametric_with_tan_arc.kcl { "arguments": [ { + "commentStart": 277, "elements": [ { + "commentStart": 278, "end": 0, "raw": "0", "start": 0, @@ -412,6 +470,7 @@ description: Result of parsing parametric_with_tan_arc.kcl } }, { + "commentStart": 281, "end": 0, "raw": "0", "start": 0, @@ -429,6 +488,7 @@ description: Result of parsing parametric_with_tan_arc.kcl "type": "ArrayExpression" }, { + "commentStart": 285, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -436,11 +496,13 @@ description: Result of parsing parametric_with_tan_arc.kcl } ], "callee": { + "commentStart": 262, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 262, "end": 0, "start": 0, "type": "CallExpression", @@ -451,14 +513,17 @@ description: Result of parsing parametric_with_tan_arc.kcl { "type": "LabeledArg", "label": { + "commentStart": 298, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 304, "elements": [ { + "commentStart": 305, "end": 0, "raw": "0", "start": 0, @@ -470,6 +535,7 @@ description: Result of parsing parametric_with_tan_arc.kcl } }, { + "commentStart": 308, "end": 0, "name": "wallMountL", "start": 0, @@ -485,11 +551,13 @@ description: Result of parsing parametric_with_tan_arc.kcl } ], "callee": { + "commentStart": 293, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 293, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -499,11 +567,14 @@ description: Result of parsing parametric_with_tan_arc.kcl { "arguments": [ { + "commentStart": 340, "end": 0, "properties": [ { + "commentStart": 342, "end": 0, "key": { + "commentStart": 342, "end": 0, "name": "radius", "start": 0, @@ -512,6 +583,7 @@ description: Result of parsing parametric_with_tan_arc.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 351, "end": 0, "name": "filletR", "start": 0, @@ -520,8 +592,10 @@ description: Result of parsing parametric_with_tan_arc.kcl } }, { + "commentStart": 360, "end": 0, "key": { + "commentStart": 360, "end": 0, "name": "offset", "start": 0, @@ -530,6 +604,7 @@ description: Result of parsing parametric_with_tan_arc.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 369, "end": 0, "raw": "90", "start": 0, @@ -547,6 +622,7 @@ description: Result of parsing parametric_with_tan_arc.kcl "type": "ObjectExpression" }, { + "commentStart": 375, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -554,11 +630,13 @@ description: Result of parsing parametric_with_tan_arc.kcl } ], "callee": { + "commentStart": 326, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 326, "end": 0, "start": 0, "type": "CallExpression", @@ -569,21 +647,25 @@ description: Result of parsing parametric_with_tan_arc.kcl { "type": "LabeledArg", "label": { + "commentStart": 388, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 394, "elements": [ { "argument": { + "commentStart": 396, "end": 0, "name": "shelfMountL", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 395, "end": 0, "operator": "-", "start": 0, @@ -591,6 +673,7 @@ description: Result of parsing parametric_with_tan_arc.kcl "type": "UnaryExpression" }, { + "commentStart": 409, "end": 0, "raw": "0", "start": 0, @@ -610,11 +693,13 @@ description: Result of parsing parametric_with_tan_arc.kcl } ], "callee": { + "commentStart": 383, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 383, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -626,14 +711,17 @@ description: Result of parsing parametric_with_tan_arc.kcl { "type": "LabeledArg", "label": { + "commentStart": 423, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 429, "elements": [ { + "commentStart": 430, "end": 0, "raw": "0", "start": 0, @@ -646,12 +734,14 @@ description: Result of parsing parametric_with_tan_arc.kcl }, { "argument": { + "commentStart": 434, "end": 0, "name": "thickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 433, "end": 0, "operator": "-", "start": 0, @@ -667,11 +757,13 @@ description: Result of parsing parametric_with_tan_arc.kcl } ], "callee": { + "commentStart": 418, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 418, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -683,14 +775,17 @@ description: Result of parsing parametric_with_tan_arc.kcl { "type": "LabeledArg", "label": { + "commentStart": 456, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 462, "elements": [ { + "commentStart": 463, "end": 0, "name": "shelfMountL", "start": 0, @@ -698,6 +793,7 @@ description: Result of parsing parametric_with_tan_arc.kcl "type": "Identifier" }, { + "commentStart": 476, "end": 0, "raw": "0", "start": 0, @@ -717,11 +813,13 @@ description: Result of parsing parametric_with_tan_arc.kcl } ], "callee": { + "commentStart": 451, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 451, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -731,11 +829,14 @@ description: Result of parsing parametric_with_tan_arc.kcl { "arguments": [ { + "commentStart": 499, "end": 0, "properties": [ { + "commentStart": 508, "end": 0, "key": { + "commentStart": 508, "end": 0, "name": "radius", "start": 0, @@ -744,8 +845,10 @@ description: Result of parsing parametric_with_tan_arc.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 517, "end": 0, "left": { + "commentStart": 517, "end": 0, "name": "filletR", "start": 0, @@ -754,6 +857,7 @@ description: Result of parsing parametric_with_tan_arc.kcl }, "operator": "-", "right": { + "commentStart": 527, "end": 0, "name": "thickness", "start": 0, @@ -766,8 +870,10 @@ description: Result of parsing parametric_with_tan_arc.kcl } }, { + "commentStart": 545, "end": 0, "key": { + "commentStart": 545, "end": 0, "name": "offset", "start": 0, @@ -777,6 +883,7 @@ description: Result of parsing parametric_with_tan_arc.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 555, "end": 0, "raw": "90", "start": 0, @@ -787,6 +894,7 @@ description: Result of parsing parametric_with_tan_arc.kcl "suffix": "None" } }, + "commentStart": 554, "end": 0, "operator": "-", "start": 0, @@ -800,6 +908,7 @@ description: Result of parsing parametric_with_tan_arc.kcl "type": "ObjectExpression" }, { + "commentStart": 566, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -807,11 +916,13 @@ description: Result of parsing parametric_with_tan_arc.kcl } ], "callee": { + "commentStart": 485, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 485, "end": 0, "start": 0, "type": "CallExpression", @@ -822,14 +933,17 @@ description: Result of parsing parametric_with_tan_arc.kcl { "type": "LabeledArg", "label": { + "commentStart": 579, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 585, "elements": [ { + "commentStart": 586, "end": 0, "raw": "0", "start": 0, @@ -842,12 +956,14 @@ description: Result of parsing parametric_with_tan_arc.kcl }, { "argument": { + "commentStart": 590, "end": 0, "name": "wallMountL", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 589, "end": 0, "operator": "-", "start": 0, @@ -863,11 +979,13 @@ description: Result of parsing parametric_with_tan_arc.kcl } ], "callee": { + "commentStart": 574, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 574, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -877,6 +995,7 @@ description: Result of parsing parametric_with_tan_arc.kcl { "arguments": [ { + "commentStart": 614, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -884,11 +1003,13 @@ description: Result of parsing parametric_with_tan_arc.kcl } ], "callee": { + "commentStart": 608, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 608, "end": 0, "start": 0, "type": "CallExpression", @@ -899,12 +1020,14 @@ description: Result of parsing parametric_with_tan_arc.kcl { "type": "LabeledArg", "label": { + "commentStart": 630, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 639, "end": 0, "name": "width", "start": 0, @@ -914,11 +1037,13 @@ description: Result of parsing parametric_with_tan_arc.kcl } ], "callee": { + "commentStart": 622, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 622, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -926,6 +1051,7 @@ description: Result of parsing parametric_with_tan_arc.kcl "unlabeled": null } ], + "commentStart": 239, "end": 0, "start": 0, "type": "PipeExpression", @@ -941,11 +1067,13 @@ description: Result of parsing parametric_with_tan_arc.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 18, "end": 0, "start": 0, "type": "NonCodeNode", @@ -958,6 +1086,7 @@ description: Result of parsing parametric_with_tan_arc.kcl ], "1": [ { + "commentStart": 36, "end": 0, "start": 0, "type": "NonCodeNode", @@ -970,6 +1099,7 @@ description: Result of parsing parametric_with_tan_arc.kcl ], "2": [ { + "commentStart": 52, "end": 0, "start": 0, "type": "NonCodeNode", @@ -982,6 +1112,7 @@ description: Result of parsing parametric_with_tan_arc.kcl ], "3": [ { + "commentStart": 90, "end": 0, "start": 0, "type": "NonCodeNode", @@ -994,6 +1125,7 @@ description: Result of parsing parametric_with_tan_arc.kcl ], "8": [ { + "commentStart": 227, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/pentagon_fillet_sugar/ast.snap b/rust/kcl-lib/tests/pentagon_fillet_sugar/ast.snap index 0be203e2f..9def875ee 100644 --- a/rust/kcl-lib/tests/pentagon_fillet_sugar/ast.snap +++ b/rust/kcl-lib/tests/pentagon_fillet_sugar/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing pentagon_fillet_sugar.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "triangleHeight", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 17, "end": 0, "raw": "200", "start": 0, @@ -35,15 +39,19 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "VariableDeclaration" }, { + "commentStart": 21, "declaration": { + "commentStart": 21, "end": 0, "id": { + "commentStart": 21, "end": 0, "name": "plumbusLen", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 34, "end": 0, "raw": "100", "start": 0, @@ -64,15 +72,19 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "VariableDeclaration" }, { + "commentStart": 38, "declaration": { + "commentStart": 38, "end": 0, "id": { + "commentStart": 38, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 47, "end": 0, "raw": "80", "start": 0, @@ -93,20 +105,26 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "VariableDeclaration" }, { + "commentStart": 50, "declaration": { + "commentStart": 50, "end": 0, "id": { + "commentStart": 50, "end": 0, "name": "circ", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 57, "end": 0, "properties": [ { + "commentStart": 61, "end": 0, "key": { + "commentStart": 61, "end": 0, "name": "angleStart", "start": 0, @@ -115,6 +133,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 74, "end": 0, "raw": "0", "start": 0, @@ -127,8 +146,10 @@ description: Result of parsing pentagon_fillet_sugar.kcl } }, { + "commentStart": 79, "end": 0, "key": { + "commentStart": 79, "end": 0, "name": "angleEnd", "start": 0, @@ -137,6 +158,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 90, "end": 0, "raw": "360", "start": 0, @@ -149,8 +171,10 @@ description: Result of parsing pentagon_fillet_sugar.kcl } }, { + "commentStart": 97, "end": 0, "key": { + "commentStart": 97, "end": 0, "name": "radius", "start": 0, @@ -159,6 +183,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 106, "end": 0, "name": "radius", "start": 0, @@ -181,15 +206,19 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "VariableDeclaration" }, { + "commentStart": 114, "declaration": { + "commentStart": 116, "end": 0, "id": { + "commentStart": 116, "end": 0, "name": "triangleLen", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 130, "end": 0, "raw": "500", "start": 0, @@ -210,9 +239,12 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "VariableDeclaration" }, { + "commentStart": 134, "declaration": { + "commentStart": 134, "end": 0, "id": { + "commentStart": 134, "end": 0, "name": "p", "start": 0, @@ -223,6 +255,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "arguments": [ { + "commentStart": 152, "end": 0, "raw": "'XY'", "start": 0, @@ -232,11 +265,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 138, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 138, "end": 0, "start": 0, "type": "CallExpression", @@ -245,8 +280,10 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "arguments": [ { + "commentStart": 178, "elements": [ { + "commentStart": 179, "end": 0, "raw": "0", "start": 0, @@ -258,6 +295,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl } }, { + "commentStart": 182, "end": 0, "raw": "0", "start": 0, @@ -275,6 +313,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "ArrayExpression" }, { + "commentStart": 186, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -282,11 +321,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 163, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 163, "end": 0, "start": 0, "type": "CallExpression", @@ -295,11 +336,14 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "arguments": [ { + "commentStart": 205, "end": 0, "properties": [ { + "commentStart": 207, "end": 0, "key": { + "commentStart": 207, "end": 0, "name": "angle", "start": 0, @@ -308,6 +352,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 215, "end": 0, "raw": "60", "start": 0, @@ -320,8 +365,10 @@ description: Result of parsing pentagon_fillet_sugar.kcl } }, { + "commentStart": 219, "end": 0, "key": { + "commentStart": 219, "end": 0, "name": "length", "start": 0, @@ -330,6 +377,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 228, "end": 0, "name": "triangleLen", "start": 0, @@ -343,12 +391,14 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "ObjectExpression" }, { + "commentStart": 243, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 246, "end": 0, "start": 0, "type": "TagDeclarator", @@ -357,11 +407,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 194, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 194, "end": 0, "start": 0, "type": "CallExpression", @@ -370,11 +422,14 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "arguments": [ { + "commentStart": 266, "end": 0, "properties": [ { + "commentStart": 268, "end": 0, "key": { + "commentStart": 268, "end": 0, "name": "angle", "start": 0, @@ -383,6 +438,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 276, "end": 0, "raw": "180", "start": 0, @@ -395,8 +451,10 @@ description: Result of parsing pentagon_fillet_sugar.kcl } }, { + "commentStart": 281, "end": 0, "key": { + "commentStart": 281, "end": 0, "name": "length", "start": 0, @@ -405,6 +463,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 290, "end": 0, "name": "triangleLen", "start": 0, @@ -418,12 +477,14 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "ObjectExpression" }, { + "commentStart": 305, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 308, "end": 0, "start": 0, "type": "TagDeclarator", @@ -432,11 +493,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 255, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 255, "end": 0, "start": 0, "type": "CallExpression", @@ -445,11 +508,14 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "arguments": [ { + "commentStart": 328, "end": 0, "properties": [ { + "commentStart": 330, "end": 0, "key": { + "commentStart": 330, "end": 0, "name": "angle", "start": 0, @@ -458,6 +524,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 338, "end": 0, "raw": "300", "start": 0, @@ -470,8 +537,10 @@ description: Result of parsing pentagon_fillet_sugar.kcl } }, { + "commentStart": 343, "end": 0, "key": { + "commentStart": 343, "end": 0, "name": "length", "start": 0, @@ -480,6 +549,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 352, "end": 0, "name": "triangleLen", "start": 0, @@ -493,12 +563,14 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "ObjectExpression" }, { + "commentStart": 367, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 370, "end": 0, "start": 0, "type": "TagDeclarator", @@ -507,11 +579,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 317, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 317, "end": 0, "start": 0, "type": "CallExpression", @@ -522,12 +596,14 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "type": "LabeledArg", "label": { + "commentStart": 387, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 396, "end": 0, "name": "triangleHeight", "start": 0, @@ -537,11 +613,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 379, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 379, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -549,6 +627,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "unlabeled": null } ], + "commentStart": 138, "end": 0, "start": 0, "type": "PipeExpression", @@ -564,9 +643,12 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "VariableDeclaration" }, { + "commentStart": 411, "declaration": { + "commentStart": 416, "end": 0, "id": { + "commentStart": 416, "end": 0, "name": "circl", "start": 0, @@ -581,6 +663,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "arguments": [ { + "commentStart": 456, "end": 0, "name": "p", "start": 0, @@ -588,6 +671,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "Identifier" }, { + "commentStart": 459, "end": 0, "name": "face", "start": 0, @@ -596,11 +680,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 442, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 442, "end": 0, "start": 0, "type": "CallExpression", @@ -609,10 +695,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "arguments": [ { + "commentStart": 487, "elements": [ { + "commentStart": 488, "end": 0, "left": { + "commentStart": 488, "end": 0, "name": "x", "start": 0, @@ -621,6 +710,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl }, "operator": "+", "right": { + "commentStart": 492, "end": 0, "name": "radius", "start": 0, @@ -632,8 +722,10 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "BinaryExpression" }, { + "commentStart": 500, "end": 0, "left": { + "commentStart": 500, "end": 0, "name": "triangleHeight", "start": 0, @@ -642,6 +734,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl }, "operator": "/", "right": { + "commentStart": 517, "end": 0, "raw": "2", "start": 0, @@ -663,6 +756,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "ArrayExpression" }, { + "commentStart": 521, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -670,11 +764,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 472, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 472, "end": 0, "start": 0, "type": "CallExpression", @@ -683,6 +779,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "arguments": [ { + "commentStart": 535, "end": 0, "name": "circ", "start": 0, @@ -690,12 +787,14 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "Identifier" }, { + "commentStart": 541, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 544, "end": 0, "start": 0, "type": "TagDeclarator", @@ -704,11 +803,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 531, "end": 0, "name": "arc", "start": 0, "type": "Identifier" }, + "commentStart": 531, "end": 0, "start": 0, "type": "CallExpression", @@ -717,6 +818,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "arguments": [ { + "commentStart": 567, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -724,36 +826,43 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 561, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 561, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 442, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, + "commentStart": 435, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 431, "end": 0, "start": 0 }, + "commentStart": 421, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 422, "end": 0, "name": "x", "start": 0, @@ -763,6 +872,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "type": "Parameter", "identifier": { + "commentStart": 425, "end": 0, "name": "face", "start": 0, @@ -784,9 +894,12 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "VariableDeclaration" }, { + "commentStart": 571, "declaration": { + "commentStart": 573, "end": 0, "id": { + "commentStart": 573, "end": 0, "name": "c1", "start": 0, @@ -796,6 +909,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "arguments": [ { "argument": { + "commentStart": 585, "end": 0, "raw": "200", "start": 0, @@ -806,6 +920,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "suffix": "None" } }, + "commentStart": 584, "end": 0, "operator": "-", "start": 0, @@ -813,6 +928,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "UnaryExpression" }, { + "commentStart": 590, "end": 0, "name": "c", "start": 0, @@ -821,11 +937,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 578, "end": 0, "name": "circl", "start": 0, "type": "Identifier" }, + "commentStart": 578, "end": 0, "start": 0, "type": "CallExpression", @@ -841,9 +959,12 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "VariableDeclaration" }, { + "commentStart": 593, "declaration": { + "commentStart": 593, "end": 0, "id": { + "commentStart": 593, "end": 0, "name": "plumbus1", "start": 0, @@ -852,6 +973,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "init": { "body": [ { + "commentStart": 604, "end": 0, "name": "c1", "start": 0, @@ -863,12 +985,14 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "type": "LabeledArg", "label": { + "commentStart": 620, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 629, "end": 0, "name": "plumbusLen", "start": 0, @@ -878,11 +1002,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 612, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 612, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -894,12 +1020,14 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "type": "LabeledArg", "label": { + "commentStart": 661, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 670, "end": 0, "raw": "5", "start": 0, @@ -914,20 +1042,25 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "type": "LabeledArg", "label": { + "commentStart": 680, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 687, "elements": [ { + "commentStart": 698, "computed": false, "end": 0, "object": { + "commentStart": 698, "computed": false, "end": 0, "object": { + "commentStart": 698, "end": 0, "name": "c1", "start": 0, @@ -935,6 +1068,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "Identifier" }, "property": { + "commentStart": 701, "end": 0, "name": "tags", "start": 0, @@ -946,6 +1080,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "MemberExpression" }, "property": { + "commentStart": 706, "end": 0, "name": "arc_tag", "start": 0, @@ -959,12 +1094,15 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "arguments": [ { + "commentStart": 740, "computed": false, "end": 0, "object": { + "commentStart": 740, "computed": false, "end": 0, "object": { + "commentStart": 740, "end": 0, "name": "c1", "start": 0, @@ -972,6 +1110,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "Identifier" }, "property": { + "commentStart": 743, "end": 0, "name": "tags", "start": 0, @@ -983,6 +1122,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "MemberExpression" }, "property": { + "commentStart": 748, "end": 0, "name": "arc_tag", "start": 0, @@ -995,11 +1135,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 724, "end": 0, "name": "getOppositeEdge", "start": 0, "type": "Identifier" }, + "commentStart": 724, "end": 0, "start": 0, "type": "CallExpression", @@ -1014,11 +1156,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 646, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 646, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1026,6 +1170,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "unlabeled": null } ], + "commentStart": 604, "end": 0, "start": 0, "type": "PipeExpression", @@ -1041,9 +1186,12 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "VariableDeclaration" }, { + "commentStart": 774, "declaration": { + "commentStart": 774, "end": 0, "id": { + "commentStart": 774, "end": 0, "name": "c2", "start": 0, @@ -1052,6 +1200,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "init": { "arguments": [ { + "commentStart": 785, "end": 0, "raw": "200", "start": 0, @@ -1063,6 +1212,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl } }, { + "commentStart": 790, "end": 0, "name": "a", "start": 0, @@ -1071,11 +1221,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 779, "end": 0, "name": "circl", "start": 0, "type": "Identifier" }, + "commentStart": 779, "end": 0, "start": 0, "type": "CallExpression", @@ -1091,9 +1243,12 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "VariableDeclaration" }, { + "commentStart": 793, "declaration": { + "commentStart": 793, "end": 0, "id": { + "commentStart": 793, "end": 0, "name": "plumbus0", "start": 0, @@ -1102,6 +1257,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "init": { "body": [ { + "commentStart": 804, "end": 0, "name": "c2", "start": 0, @@ -1113,12 +1269,14 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "type": "LabeledArg", "label": { + "commentStart": 820, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 829, "end": 0, "name": "plumbusLen", "start": 0, @@ -1128,11 +1286,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 812, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 812, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1144,12 +1304,14 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "type": "LabeledArg", "label": { + "commentStart": 861, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 870, "end": 0, "raw": "5", "start": 0, @@ -1164,20 +1326,25 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "type": "LabeledArg", "label": { + "commentStart": 880, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 887, "elements": [ { + "commentStart": 898, "computed": false, "end": 0, "object": { + "commentStart": 898, "computed": false, "end": 0, "object": { + "commentStart": 898, "end": 0, "name": "c2", "start": 0, @@ -1185,6 +1352,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "Identifier" }, "property": { + "commentStart": 901, "end": 0, "name": "tags", "start": 0, @@ -1196,6 +1364,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "MemberExpression" }, "property": { + "commentStart": 906, "end": 0, "name": "arc_tag", "start": 0, @@ -1209,12 +1378,15 @@ description: Result of parsing pentagon_fillet_sugar.kcl { "arguments": [ { + "commentStart": 940, "computed": false, "end": 0, "object": { + "commentStart": 940, "computed": false, "end": 0, "object": { + "commentStart": 940, "end": 0, "name": "c2", "start": 0, @@ -1222,6 +1394,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "Identifier" }, "property": { + "commentStart": 943, "end": 0, "name": "tags", "start": 0, @@ -1233,6 +1406,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "MemberExpression" }, "property": { + "commentStart": 948, "end": 0, "name": "arc_tag", "start": 0, @@ -1245,11 +1419,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 924, "end": 0, "name": "getOppositeEdge", "start": 0, "type": "Identifier" }, + "commentStart": 924, "end": 0, "start": 0, "type": "CallExpression", @@ -1264,11 +1440,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl } ], "callee": { + "commentStart": 846, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 846, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1276,6 +1454,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl "unlabeled": null } ], + "commentStart": 804, "end": 0, "start": 0, "type": "PipeExpression", @@ -1291,11 +1470,13 @@ description: Result of parsing pentagon_fillet_sugar.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "3": [ { + "commentStart": 114, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1306,6 +1487,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl ], "5": [ { + "commentStart": 411, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1316,6 +1498,7 @@ description: Result of parsing pentagon_fillet_sugar.kcl ], "6": [ { + "commentStart": 571, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/pentagon_fillet_sugar/program_memory.snap b/rust/kcl-lib/tests/pentagon_fillet_sugar/program_memory.snap index 7e48d9560..811883c76 100644 --- a/rust/kcl-lib/tests/pentagon_fillet_sugar/program_memory.snap +++ b/rust/kcl-lib/tests/pentagon_fillet_sugar/program_memory.snap @@ -45,6 +45,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl ], "radius": 80.0, "tag": { + "commentStart": 544, "end": 552, "start": 544, "type": "TagDeclarator", @@ -109,6 +110,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 246, "end": 248, "start": 246, "type": "TagDeclarator", @@ -121,6 +123,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 308, "end": 310, "start": 308, "type": "TagDeclarator", @@ -133,6 +136,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 370, "end": 372, "start": 370, "type": "TagDeclarator", @@ -155,6 +159,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl 0.0 ], "tag": { + "commentStart": 246, "end": 248, "start": 246, "type": "TagDeclarator", @@ -179,6 +184,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl 433.0127 ], "tag": { + "commentStart": 308, "end": 310, "start": 308, "type": "TagDeclarator", @@ -203,6 +209,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl 433.0127 ], "tag": { + "commentStart": 370, "end": 372, "start": 370, "type": "TagDeclarator", @@ -349,6 +356,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl ], "radius": 80.0, "tag": { + "commentStart": 544, "end": 552, "start": 544, "type": "TagDeclarator", @@ -413,6 +421,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 246, "end": 248, "start": 246, "type": "TagDeclarator", @@ -425,6 +434,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 308, "end": 310, "start": 308, "type": "TagDeclarator", @@ -437,6 +447,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 370, "end": 372, "start": 370, "type": "TagDeclarator", @@ -459,6 +470,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl 0.0 ], "tag": { + "commentStart": 246, "end": 248, "start": 246, "type": "TagDeclarator", @@ -483,6 +495,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl 433.0127 ], "tag": { + "commentStart": 308, "end": 310, "start": 308, "type": "TagDeclarator", @@ -507,6 +520,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl 433.0127 ], "tag": { + "commentStart": 370, "end": 372, "start": 370, "type": "TagDeclarator", @@ -690,6 +704,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 246, "end": 248, "start": 246, "type": "TagDeclarator", @@ -702,6 +717,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 308, "end": 310, "start": 308, "type": "TagDeclarator", @@ -714,6 +730,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 370, "end": 372, "start": 370, "type": "TagDeclarator", @@ -736,6 +753,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl 0.0 ], "tag": { + "commentStart": 246, "end": 248, "start": 246, "type": "TagDeclarator", @@ -760,6 +778,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl 433.0127 ], "tag": { + "commentStart": 308, "end": 310, "start": 308, "type": "TagDeclarator", @@ -784,6 +803,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl 433.0127 ], "tag": { + "commentStart": 370, "end": 372, "start": 370, "type": "TagDeclarator", @@ -886,6 +906,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 544, "end": 552, "start": 544, "type": "TagDeclarator", @@ -914,6 +935,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl ], "radius": 80.0, "tag": { + "commentStart": 544, "end": 552, "start": 544, "type": "TagDeclarator", @@ -978,6 +1000,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 246, "end": 248, "start": 246, "type": "TagDeclarator", @@ -990,6 +1013,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 308, "end": 310, "start": 308, "type": "TagDeclarator", @@ -1002,6 +1026,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 370, "end": 372, "start": 370, "type": "TagDeclarator", @@ -1024,6 +1049,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl 0.0 ], "tag": { + "commentStart": 246, "end": 248, "start": 246, "type": "TagDeclarator", @@ -1048,6 +1074,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl 433.0127 ], "tag": { + "commentStart": 308, "end": 310, "start": 308, "type": "TagDeclarator", @@ -1072,6 +1099,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl 433.0127 ], "tag": { + "commentStart": 370, "end": 372, "start": 370, "type": "TagDeclarator", @@ -1231,6 +1259,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 544, "end": 552, "start": 544, "type": "TagDeclarator", @@ -1259,6 +1288,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl ], "radius": 80.0, "tag": { + "commentStart": 544, "end": 552, "start": 544, "type": "TagDeclarator", @@ -1323,6 +1353,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 246, "end": 248, "start": 246, "type": "TagDeclarator", @@ -1335,6 +1366,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 308, "end": 310, "start": 308, "type": "TagDeclarator", @@ -1347,6 +1379,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 370, "end": 372, "start": 370, "type": "TagDeclarator", @@ -1369,6 +1402,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl 0.0 ], "tag": { + "commentStart": 246, "end": 248, "start": 246, "type": "TagDeclarator", @@ -1393,6 +1427,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl 433.0127 ], "tag": { + "commentStart": 308, "end": 310, "start": 308, "type": "TagDeclarator", @@ -1417,6 +1452,7 @@ description: Variables in memory after executing pentagon_fillet_sugar.kcl 433.0127 ], "tag": { + "commentStart": 370, "end": 372, "start": 370, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/pipe_as_arg/ast.snap b/rust/kcl-lib/tests/pipe_as_arg/ast.snap index 8ee2be320..dba4aee1c 100644 --- a/rust/kcl-lib/tests/pipe_as_arg/ast.snap +++ b/rust/kcl-lib/tests/pipe_as_arg/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing pipe_as_arg.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "cube", "start": 0, @@ -18,17 +21,22 @@ description: Result of parsing pipe_as_arg.kcl "body": { "body": [ { + "commentStart": 28, "declaration": { + "commentStart": 28, "end": 0, "id": { + "commentStart": 28, "end": 0, "name": "l", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 32, "end": 0, "left": { + "commentStart": 32, "end": 0, "name": "length", "start": 0, @@ -37,6 +45,7 @@ description: Result of parsing pipe_as_arg.kcl }, "operator": "/", "right": { + "commentStart": 41, "end": 0, "raw": "2", "start": 0, @@ -61,18 +70,23 @@ description: Result of parsing pipe_as_arg.kcl "type": "VariableDeclaration" }, { + "commentStart": 45, "declaration": { + "commentStart": 45, "end": 0, "id": { + "commentStart": 45, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 49, "computed": false, "end": 0, "object": { + "commentStart": 49, "end": 0, "name": "center", "start": 0, @@ -80,6 +94,7 @@ description: Result of parsing pipe_as_arg.kcl "type": "Identifier" }, "property": { + "commentStart": 56, "end": 0, "raw": "0", "start": 0, @@ -104,18 +119,23 @@ description: Result of parsing pipe_as_arg.kcl "type": "VariableDeclaration" }, { + "commentStart": 61, "declaration": { + "commentStart": 61, "end": 0, "id": { + "commentStart": 61, "end": 0, "name": "y", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 65, "computed": false, "end": 0, "object": { + "commentStart": 65, "end": 0, "name": "center", "start": 0, @@ -123,6 +143,7 @@ description: Result of parsing pipe_as_arg.kcl "type": "Identifier" }, "property": { + "commentStart": 72, "end": 0, "raw": "1", "start": 0, @@ -147,26 +168,33 @@ description: Result of parsing pipe_as_arg.kcl "type": "VariableDeclaration" }, { + "commentStart": 77, "declaration": { + "commentStart": 77, "end": 0, "id": { + "commentStart": 77, "end": 0, "name": "p0", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 82, "elements": [ { + "commentStart": 83, "end": 0, "left": { "argument": { + "commentStart": 84, "end": 0, "name": "l", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 83, "end": 0, "operator": "-", "start": 0, @@ -175,6 +203,7 @@ description: Result of parsing pipe_as_arg.kcl }, "operator": "+", "right": { + "commentStart": 88, "end": 0, "name": "x", "start": 0, @@ -186,15 +215,18 @@ description: Result of parsing pipe_as_arg.kcl "type": "BinaryExpression" }, { + "commentStart": 91, "end": 0, "left": { "argument": { + "commentStart": 92, "end": 0, "name": "l", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 91, "end": 0, "operator": "-", "start": 0, @@ -203,6 +235,7 @@ description: Result of parsing pipe_as_arg.kcl }, "operator": "+", "right": { + "commentStart": 96, "end": 0, "name": "y", "start": 0, @@ -229,26 +262,33 @@ description: Result of parsing pipe_as_arg.kcl "type": "VariableDeclaration" }, { + "commentStart": 101, "declaration": { + "commentStart": 101, "end": 0, "id": { + "commentStart": 101, "end": 0, "name": "p1", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 106, "elements": [ { + "commentStart": 107, "end": 0, "left": { "argument": { + "commentStart": 108, "end": 0, "name": "l", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 107, "end": 0, "operator": "-", "start": 0, @@ -257,6 +297,7 @@ description: Result of parsing pipe_as_arg.kcl }, "operator": "+", "right": { + "commentStart": 112, "end": 0, "name": "x", "start": 0, @@ -268,8 +309,10 @@ description: Result of parsing pipe_as_arg.kcl "type": "BinaryExpression" }, { + "commentStart": 115, "end": 0, "left": { + "commentStart": 115, "end": 0, "name": "l", "start": 0, @@ -278,6 +321,7 @@ description: Result of parsing pipe_as_arg.kcl }, "operator": "+", "right": { + "commentStart": 119, "end": 0, "name": "y", "start": 0, @@ -304,19 +348,25 @@ description: Result of parsing pipe_as_arg.kcl "type": "VariableDeclaration" }, { + "commentStart": 124, "declaration": { + "commentStart": 124, "end": 0, "id": { + "commentStart": 124, "end": 0, "name": "p2", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 129, "elements": [ { + "commentStart": 130, "end": 0, "left": { + "commentStart": 130, "end": 0, "name": "l", "start": 0, @@ -325,6 +375,7 @@ description: Result of parsing pipe_as_arg.kcl }, "operator": "+", "right": { + "commentStart": 134, "end": 0, "name": "x", "start": 0, @@ -336,8 +387,10 @@ description: Result of parsing pipe_as_arg.kcl "type": "BinaryExpression" }, { + "commentStart": 137, "end": 0, "left": { + "commentStart": 137, "end": 0, "name": "l", "start": 0, @@ -346,6 +399,7 @@ description: Result of parsing pipe_as_arg.kcl }, "operator": "+", "right": { + "commentStart": 141, "end": 0, "name": "y", "start": 0, @@ -372,19 +426,25 @@ description: Result of parsing pipe_as_arg.kcl "type": "VariableDeclaration" }, { + "commentStart": 146, "declaration": { + "commentStart": 146, "end": 0, "id": { + "commentStart": 146, "end": 0, "name": "p3", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 151, "elements": [ { + "commentStart": 152, "end": 0, "left": { + "commentStart": 152, "end": 0, "name": "l", "start": 0, @@ -393,6 +453,7 @@ description: Result of parsing pipe_as_arg.kcl }, "operator": "+", "right": { + "commentStart": 156, "end": 0, "name": "x", "start": 0, @@ -404,15 +465,18 @@ description: Result of parsing pipe_as_arg.kcl "type": "BinaryExpression" }, { + "commentStart": 159, "end": 0, "left": { "argument": { + "commentStart": 160, "end": 0, "name": "l", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 159, "end": 0, "operator": "-", "start": 0, @@ -421,6 +485,7 @@ description: Result of parsing pipe_as_arg.kcl }, "operator": "+", "right": { + "commentStart": 164, "end": 0, "name": "y", "start": 0, @@ -452,6 +517,7 @@ description: Result of parsing pipe_as_arg.kcl { "arguments": [ { + "commentStart": 191, "end": 0, "name": "XY", "start": 0, @@ -460,11 +526,13 @@ description: Result of parsing pipe_as_arg.kcl } ], "callee": { + "commentStart": 177, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 177, "end": 0, "start": 0, "type": "CallExpression", @@ -473,6 +541,7 @@ description: Result of parsing pipe_as_arg.kcl { "arguments": [ { + "commentStart": 217, "end": 0, "name": "p0", "start": 0, @@ -480,6 +549,7 @@ description: Result of parsing pipe_as_arg.kcl "type": "Identifier" }, { + "commentStart": 221, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -487,11 +557,13 @@ description: Result of parsing pipe_as_arg.kcl } ], "callee": { + "commentStart": 202, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 202, "end": 0, "start": 0, "type": "CallExpression", @@ -502,12 +574,14 @@ description: Result of parsing pipe_as_arg.kcl { "type": "LabeledArg", "label": { + "commentStart": 236, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 250, "end": 0, "name": "p1", "start": 0, @@ -517,11 +591,13 @@ description: Result of parsing pipe_as_arg.kcl } ], "callee": { + "commentStart": 231, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 231, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -533,12 +609,14 @@ description: Result of parsing pipe_as_arg.kcl { "type": "LabeledArg", "label": { + "commentStart": 266, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 280, "end": 0, "name": "p2", "start": 0, @@ -548,11 +626,13 @@ description: Result of parsing pipe_as_arg.kcl } ], "callee": { + "commentStart": 261, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 261, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -564,12 +644,14 @@ description: Result of parsing pipe_as_arg.kcl { "type": "LabeledArg", "label": { + "commentStart": 296, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 310, "end": 0, "name": "p3", "start": 0, @@ -579,11 +661,13 @@ description: Result of parsing pipe_as_arg.kcl } ], "callee": { + "commentStart": 291, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 291, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -595,12 +679,14 @@ description: Result of parsing pipe_as_arg.kcl { "type": "LabeledArg", "label": { + "commentStart": 326, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 340, "end": 0, "name": "p0", "start": 0, @@ -610,11 +696,13 @@ description: Result of parsing pipe_as_arg.kcl } ], "callee": { + "commentStart": 321, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 321, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -624,6 +712,7 @@ description: Result of parsing pipe_as_arg.kcl { "arguments": [ { + "commentStart": 357, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -631,11 +720,13 @@ description: Result of parsing pipe_as_arg.kcl } ], "callee": { + "commentStart": 351, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 351, "end": 0, "start": 0, "type": "CallExpression", @@ -646,12 +737,14 @@ description: Result of parsing pipe_as_arg.kcl { "type": "LabeledArg", "label": { + "commentStart": 375, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 384, "end": 0, "name": "length", "start": 0, @@ -661,11 +754,13 @@ description: Result of parsing pipe_as_arg.kcl } ], "callee": { + "commentStart": 367, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 367, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -673,22 +768,26 @@ description: Result of parsing pipe_as_arg.kcl "unlabeled": null } ], + "commentStart": 177, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, + "commentStart": 166, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 24, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "6": [ { + "commentStart": 166, "end": 0, "start": 0, "type": "NonCodeNode", @@ -702,11 +801,13 @@ description: Result of parsing pipe_as_arg.kcl }, "start": 0 }, + "commentStart": 7, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 8, "end": 0, "name": "length", "start": 0, @@ -716,6 +817,7 @@ description: Result of parsing pipe_as_arg.kcl { "type": "Parameter", "identifier": { + "commentStart": 16, "end": 0, "name": "center", "start": 0, @@ -737,9 +839,12 @@ description: Result of parsing pipe_as_arg.kcl "type": "VariableDeclaration" }, { + "commentStart": 393, "declaration": { + "commentStart": 398, "end": 0, "id": { + "commentStart": 398, "end": 0, "name": "double", "start": 0, @@ -750,8 +855,10 @@ description: Result of parsing pipe_as_arg.kcl "body": [ { "argument": { + "commentStart": 419, "end": 0, "left": { + "commentStart": 419, "end": 0, "name": "x", "start": 0, @@ -760,6 +867,7 @@ description: Result of parsing pipe_as_arg.kcl }, "operator": "*", "right": { + "commentStart": 423, "end": 0, "raw": "2", "start": 0, @@ -774,20 +882,24 @@ description: Result of parsing pipe_as_arg.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 412, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 408, "end": 0, "start": 0 }, + "commentStart": 404, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 405, "end": 0, "name": "x", "start": 0, @@ -809,9 +921,12 @@ description: Result of parsing pipe_as_arg.kcl "type": "VariableDeclaration" }, { + "commentStart": 427, "declaration": { + "commentStart": 430, "end": 0, "id": { + "commentStart": 430, "end": 0, "name": "width", "start": 0, @@ -822,6 +937,7 @@ description: Result of parsing pipe_as_arg.kcl "body": [ { "argument": { + "commentStart": 449, "end": 0, "raw": "200", "start": 0, @@ -832,15 +948,18 @@ description: Result of parsing pipe_as_arg.kcl "suffix": "None" } }, + "commentStart": 442, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 438, "end": 0, "start": 0 }, + "commentStart": 435, "end": 0, "params": [], "start": 0, @@ -857,9 +976,12 @@ description: Result of parsing pipe_as_arg.kcl "type": "VariableDeclaration" }, { + "commentStart": 454, "declaration": { + "commentStart": 456, "end": 0, "id": { + "commentStart": 456, "end": 0, "name": "myCube", "start": 0, @@ -870,6 +992,7 @@ description: Result of parsing pipe_as_arg.kcl { "body": [ { + "commentStart": 470, "end": 0, "raw": "200", "start": 0, @@ -883,6 +1006,7 @@ description: Result of parsing pipe_as_arg.kcl { "arguments": [ { + "commentStart": 486, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -890,25 +1014,30 @@ description: Result of parsing pipe_as_arg.kcl } ], "callee": { + "commentStart": 479, "end": 0, "name": "double", "start": 0, "type": "Identifier" }, + "commentStart": 479, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 470, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, { + "commentStart": 490, "elements": [ { + "commentStart": 491, "end": 0, "raw": "0", "start": 0, @@ -920,6 +1049,7 @@ description: Result of parsing pipe_as_arg.kcl } }, { + "commentStart": 494, "end": 0, "raw": "0", "start": 0, @@ -938,11 +1068,13 @@ description: Result of parsing pipe_as_arg.kcl } ], "callee": { + "commentStart": 465, "end": 0, "name": "cube", "start": 0, "type": "Identifier" }, + "commentStart": 465, "end": 0, "start": 0, "type": "CallExpression", @@ -958,11 +1090,13 @@ description: Result of parsing pipe_as_arg.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 393, "end": 0, "start": 0, "type": "NonCodeNode", @@ -973,6 +1107,7 @@ description: Result of parsing pipe_as_arg.kcl ], "2": [ { + "commentStart": 454, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/pipe_substitution_inside_function_called_from_pipeline/ast.snap b/rust/kcl-lib/tests/pipe_substitution_inside_function_called_from_pipeline/ast.snap index a786dd6e6..6d94e457c 100644 --- a/rust/kcl-lib/tests/pipe_substitution_inside_function_called_from_pipeline/ast.snap +++ b/rust/kcl-lib/tests/pipe_substitution_inside_function_called_from_pipeline/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing pipe_substitution_inside_function_called_from_pip "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 64, "end": 0, "id": { + "commentStart": 64, "end": 0, "name": "f", "start": 0, @@ -19,25 +22,30 @@ description: Result of parsing pipe_substitution_inside_function_called_from_pip "body": [ { "argument": { + "commentStart": 86, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, + "commentStart": 79, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 75, "end": 0, "start": 0 }, + "commentStart": 65, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 66, "end": 0, "name": "ignored", "start": 0, @@ -54,14 +62,20 @@ description: Result of parsing pipe_substitution_inside_function_called_from_pip }, "end": 0, "kind": "fn", + "preComments": [ + "// Make sure pipe value doesn't leak into the function call." + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 89, "declaration": { + "commentStart": 91, "end": 0, "id": { + "commentStart": 91, "end": 0, "name": "answer", "start": 0, @@ -70,6 +84,7 @@ description: Result of parsing pipe_substitution_inside_function_called_from_pip "init": { "body": [ { + "commentStart": 100, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,6 +93,7 @@ description: Result of parsing pipe_substitution_inside_function_called_from_pip { "arguments": [ { + "commentStart": 109, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -85,17 +101,20 @@ description: Result of parsing pipe_substitution_inside_function_called_from_pip } ], "callee": { + "commentStart": 107, "end": 0, "name": "f", "start": 0, "type": "Identifier" }, + "commentStart": 107, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 100, "end": 0, "start": 0, "type": "PipeExpression", @@ -111,11 +130,13 @@ description: Result of parsing pipe_substitution_inside_function_called_from_pip "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 89, "end": 0, "start": 0, "type": "NonCodeNode", @@ -125,18 +146,7 @@ description: Result of parsing pipe_substitution_inside_function_called_from_pip } ] }, - "startNodes": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Make sure pipe value doesn't leak into the function call.", - "style": "line" - } - } - ] + "startNodes": [] }, "start": 0 } diff --git a/rust/kcl-lib/tests/poop_chute/ast.snap b/rust/kcl-lib/tests/poop_chute/ast.snap index 71fbd296b..a61e612e2 100644 --- a/rust/kcl-lib/tests/poop_chute/ast.snap +++ b/rust/kcl-lib/tests/poop_chute/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing poop_chute.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "wall_thickness", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 17, "end": 0, "raw": "0.125", "start": 0, @@ -35,15 +39,19 @@ description: Result of parsing poop_chute.kcl "type": "VariableDeclaration" }, { + "commentStart": 23, "declaration": { + "commentStart": 23, "end": 0, "id": { + "commentStart": 23, "end": 0, "name": "back_walls_width", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 42, "end": 0, "raw": "2", "start": 0, @@ -64,15 +72,19 @@ description: Result of parsing poop_chute.kcl "type": "VariableDeclaration" }, { + "commentStart": 44, "declaration": { + "commentStart": 44, "end": 0, "id": { + "commentStart": 44, "end": 0, "name": "front_walls_width", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 64, "end": 0, "raw": "2.5", "start": 0, @@ -93,15 +105,19 @@ description: Result of parsing poop_chute.kcl "type": "VariableDeclaration" }, { + "commentStart": 68, "declaration": { + "commentStart": 68, "end": 0, "id": { + "commentStart": 68, "end": 0, "name": "height", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 77, "end": 0, "raw": "5.5", "start": 0, @@ -122,15 +138,19 @@ description: Result of parsing poop_chute.kcl "type": "VariableDeclaration" }, { + "commentStart": 81, "declaration": { + "commentStart": 81, "end": 0, "id": { + "commentStart": 81, "end": 0, "name": "filletRadius", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 96, "end": 0, "raw": "0.050", "start": 0, @@ -151,15 +171,19 @@ description: Result of parsing poop_chute.kcl "type": "VariableDeclaration" }, { + "commentStart": 102, "declaration": { + "commentStart": 102, "end": 0, "id": { + "commentStart": 102, "end": 0, "name": "back_length", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 116, "end": 0, "raw": "7", "start": 0, @@ -180,15 +204,19 @@ description: Result of parsing poop_chute.kcl "type": "VariableDeclaration" }, { + "commentStart": 118, "declaration": { + "commentStart": 118, "end": 0, "id": { + "commentStart": 118, "end": 0, "name": "exit_height", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 132, "end": 0, "raw": "1", "start": 0, @@ -209,15 +237,19 @@ description: Result of parsing poop_chute.kcl "type": "VariableDeclaration" }, { + "commentStart": 134, "declaration": { + "commentStart": 134, "end": 0, "id": { + "commentStart": 134, "end": 0, "name": "front_length", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 149, "end": 0, "raw": "6", "start": 0, @@ -238,15 +270,19 @@ description: Result of parsing poop_chute.kcl "type": "VariableDeclaration" }, { + "commentStart": 151, "declaration": { + "commentStart": 151, "end": 0, "id": { + "commentStart": 151, "end": 0, "name": "Fx", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 156, "end": 0, "raw": "0.5", "start": 0, @@ -267,15 +303,19 @@ description: Result of parsing poop_chute.kcl "type": "VariableDeclaration" }, { + "commentStart": 160, "declaration": { + "commentStart": 160, "end": 0, "id": { + "commentStart": 160, "end": 0, "name": "Fy", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 165, "end": 0, "raw": "0.5", "start": 0, @@ -296,9 +336,12 @@ description: Result of parsing poop_chute.kcl "type": "VariableDeclaration" }, { + "commentStart": 168, "declaration": { + "commentStart": 170, "end": 0, "id": { + "commentStart": 170, "end": 0, "name": "sketch001", "start": 0, @@ -309,6 +352,7 @@ description: Result of parsing poop_chute.kcl { "arguments": [ { + "commentStart": 196, "end": 0, "raw": "'-YZ'", "start": 0, @@ -318,11 +362,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 182, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 182, "end": 0, "start": 0, "type": "CallExpression", @@ -331,10 +377,13 @@ description: Result of parsing poop_chute.kcl { "arguments": [ { + "commentStart": 223, "elements": [ { + "commentStart": 224, "end": 0, "left": { + "commentStart": 224, "end": 0, "name": "back_walls_width", "start": 0, @@ -343,6 +392,7 @@ description: Result of parsing poop_chute.kcl }, "operator": "/", "right": { + "commentStart": 243, "end": 0, "raw": "2", "start": 0, @@ -358,6 +408,7 @@ description: Result of parsing poop_chute.kcl "type": "BinaryExpression" }, { + "commentStart": 246, "end": 0, "raw": "0", "start": 0, @@ -375,6 +426,7 @@ description: Result of parsing poop_chute.kcl "type": "ArrayExpression" }, { + "commentStart": 250, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -382,11 +434,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 208, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 208, "end": 0, "start": 0, "type": "CallExpression", @@ -397,14 +451,17 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 264, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 273, "end": 0, "left": { + "commentStart": 273, "end": 0, "name": "wall_thickness", "start": 0, @@ -413,6 +470,7 @@ description: Result of parsing poop_chute.kcl }, "operator": "/", "right": { + "commentStart": 290, "end": 0, "raw": "2", "start": 0, @@ -430,11 +488,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 258, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 258, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -444,11 +504,14 @@ description: Result of parsing poop_chute.kcl { "arguments": [ { + "commentStart": 312, "end": 0, "properties": [ { + "commentStart": 314, "end": 0, "key": { + "commentStart": 314, "end": 0, "name": "angle", "start": 0, @@ -457,6 +520,7 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 322, "end": 0, "raw": "45", "start": 0, @@ -469,8 +533,10 @@ description: Result of parsing poop_chute.kcl } }, { + "commentStart": 326, "end": 0, "key": { + "commentStart": 326, "end": 0, "name": "to", "start": 0, @@ -479,6 +545,7 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 331, "end": 0, "name": "back_walls_width", "start": 0, @@ -492,12 +559,14 @@ description: Result of parsing poop_chute.kcl "type": "ObjectExpression" }, { + "commentStart": 351, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 354, "end": 0, "start": 0, "type": "TagDeclarator", @@ -506,11 +575,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 298, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 298, "end": 0, "start": 0, "type": "CallExpression", @@ -521,12 +592,14 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 373, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 387, "end": 0, "name": "height", "start": 0, @@ -536,11 +609,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 367, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 367, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -552,6 +627,7 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 406, "end": 0, "name": "length", "start": 0, @@ -559,12 +635,14 @@ description: Result of parsing poop_chute.kcl }, "arg": { "argument": { + "commentStart": 416, "end": 0, "name": "wall_thickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 415, "end": 0, "operator": "-", "start": 0, @@ -574,11 +652,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 400, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 400, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -590,6 +670,7 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 443, "end": 0, "name": "endAbsolute", "start": 0, @@ -598,6 +679,7 @@ description: Result of parsing poop_chute.kcl "arg": { "arguments": [ { + "commentStart": 465, "end": 0, "name": "seg01", "start": 0, @@ -606,11 +688,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 457, "end": 0, "name": "segEndY", "start": 0, "type": "Identifier" }, + "commentStart": 457, "end": 0, "start": 0, "type": "CallExpression", @@ -619,11 +703,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 437, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 437, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -633,11 +719,14 @@ description: Result of parsing poop_chute.kcl { "arguments": [ { + "commentStart": 492, "end": 0, "properties": [ { + "commentStart": 501, "end": 0, "key": { + "commentStart": 501, "end": 0, "name": "angle", "start": 0, @@ -646,6 +735,7 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 509, "end": 0, "raw": "45", "start": 0, @@ -658,8 +748,10 @@ description: Result of parsing poop_chute.kcl } }, { + "commentStart": 520, "end": 0, "key": { + "commentStart": 520, "end": 0, "name": "to", "start": 0, @@ -668,10 +760,13 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 525, "end": 0, "left": { + "commentStart": 525, "end": 0, "left": { + "commentStart": 525, "end": 0, "name": "back_walls_width", "start": 0, @@ -680,6 +775,7 @@ description: Result of parsing poop_chute.kcl }, "operator": "/", "right": { + "commentStart": 544, "end": 0, "raw": "2", "start": 0, @@ -696,8 +792,10 @@ description: Result of parsing poop_chute.kcl }, "operator": "+", "right": { + "commentStart": 548, "end": 0, "left": { + "commentStart": 548, "end": 0, "name": "wall_thickness", "start": 0, @@ -706,6 +804,7 @@ description: Result of parsing poop_chute.kcl }, "operator": "/", "right": { + "commentStart": 565, "end": 0, "raw": "2", "start": 0, @@ -731,6 +830,7 @@ description: Result of parsing poop_chute.kcl "type": "ObjectExpression" }, { + "commentStart": 575, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -738,11 +838,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 478, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 478, "end": 0, "start": 0, "type": "CallExpression", @@ -753,6 +855,7 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 589, "end": 0, "name": "length", "start": 0, @@ -760,12 +863,14 @@ description: Result of parsing poop_chute.kcl }, "arg": { "argument": { + "commentStart": 599, "end": 0, "name": "wall_thickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 598, "end": 0, "operator": "-", "start": 0, @@ -775,11 +880,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 583, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 583, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -789,11 +896,14 @@ description: Result of parsing poop_chute.kcl { "arguments": [ { + "commentStart": 634, "end": 0, "properties": [ { + "commentStart": 643, "end": 0, "key": { + "commentStart": 643, "end": 0, "name": "angle", "start": 0, @@ -802,8 +912,10 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 651, "end": 0, "left": { + "commentStart": 651, "end": 0, "raw": "180", "start": 0, @@ -816,6 +928,7 @@ description: Result of parsing poop_chute.kcl }, "operator": "-", "right": { + "commentStart": 657, "end": 0, "raw": "45", "start": 0, @@ -832,8 +945,10 @@ description: Result of parsing poop_chute.kcl } }, { + "commentStart": 668, "end": 0, "key": { + "commentStart": 668, "end": 0, "name": "to", "start": 0, @@ -842,6 +957,7 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 673, "end": 0, "name": "wall_thickness", "start": 0, @@ -855,6 +971,7 @@ description: Result of parsing poop_chute.kcl "type": "ObjectExpression" }, { + "commentStart": 696, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -862,11 +979,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 620, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 620, "end": 0, "start": 0, "type": "CallExpression", @@ -877,12 +996,14 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 710, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 724, "end": 0, "name": "height", "start": 0, @@ -892,11 +1013,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 704, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 704, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -908,12 +1031,14 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 743, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 757, "end": 0, "raw": "0", "start": 0, @@ -927,11 +1052,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 737, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 737, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -943,6 +1070,7 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 771, "end": 0, "name": "endAbsolute", "start": 0, @@ -951,6 +1079,7 @@ description: Result of parsing poop_chute.kcl "arg": { "arguments": [ { + "commentStart": 793, "end": 0, "name": "seg01", "start": 0, @@ -959,11 +1088,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 785, "end": 0, "name": "segEndY", "start": 0, "type": "Identifier" }, + "commentStart": 785, "end": 0, "start": 0, "type": "CallExpression", @@ -972,11 +1103,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 765, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 765, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -986,11 +1119,14 @@ description: Result of parsing poop_chute.kcl { "arguments": [ { + "commentStart": 820, "end": 0, "properties": [ { + "commentStart": 822, "end": 0, "key": { + "commentStart": 822, "end": 0, "name": "angle", "start": 0, @@ -999,8 +1135,10 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 830, "end": 0, "left": { + "commentStart": 830, "end": 0, "raw": "180", "start": 0, @@ -1013,6 +1151,7 @@ description: Result of parsing poop_chute.kcl }, "operator": "-", "right": { + "commentStart": 836, "end": 0, "raw": "45", "start": 0, @@ -1029,8 +1168,10 @@ description: Result of parsing poop_chute.kcl } }, { + "commentStart": 840, "end": 0, "key": { + "commentStart": 840, "end": 0, "name": "to", "start": 0, @@ -1039,6 +1180,7 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 845, "end": 0, "raw": "0", "start": 0, @@ -1056,6 +1198,7 @@ description: Result of parsing poop_chute.kcl "type": "ObjectExpression" }, { + "commentStart": 850, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1063,11 +1206,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 806, "end": 0, "name": "angledLineToY", "start": 0, "type": "Identifier" }, + "commentStart": 806, "end": 0, "start": 0, "type": "CallExpression", @@ -1076,6 +1221,7 @@ description: Result of parsing poop_chute.kcl { "arguments": [ { + "commentStart": 864, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1083,17 +1229,20 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 858, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 858, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 182, "end": 0, "start": 0, "type": "PipeExpression", @@ -1109,9 +1258,12 @@ description: Result of parsing poop_chute.kcl "type": "VariableDeclaration" }, { + "commentStart": 867, "declaration": { + "commentStart": 867, "end": 0, "id": { + "commentStart": 867, "end": 0, "name": "part001", "start": 0, @@ -1122,12 +1274,14 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 901, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 909, "end": 0, "raw": "90", "start": 0, @@ -1142,17 +1296,21 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 915, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 922, "end": 0, "properties": [ { + "commentStart": 928, "end": 0, "key": { + "commentStart": 928, "end": 0, "name": "custom", "start": 0, @@ -1161,11 +1319,14 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 937, "end": 0, "properties": [ { + "commentStart": 945, "end": 0, "key": { + "commentStart": 945, "end": 0, "name": "axis", "start": 0, @@ -1174,8 +1335,10 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 952, "elements": [ { + "commentStart": 953, "end": 0, "raw": "1.0", "start": 0, @@ -1187,6 +1350,7 @@ description: Result of parsing poop_chute.kcl } }, { + "commentStart": 958, "end": 0, "raw": "0.0", "start": 0, @@ -1205,8 +1369,10 @@ description: Result of parsing poop_chute.kcl } }, { + "commentStart": 970, "end": 0, "key": { + "commentStart": 970, "end": 0, "name": "origin", "start": 0, @@ -1215,8 +1381,10 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 979, "elements": [ { + "commentStart": 980, "end": 0, "raw": "0.0", "start": 0, @@ -1228,8 +1396,10 @@ description: Result of parsing poop_chute.kcl } }, { + "commentStart": 985, "end": 0, "left": { + "commentStart": 985, "end": 0, "name": "height", "start": 0, @@ -1238,6 +1408,7 @@ description: Result of parsing poop_chute.kcl }, "operator": "+", "right": { + "commentStart": 994, "end": 0, "raw": ".0000001", "start": 0, @@ -1273,16 +1444,19 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 877, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 877, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 888, "end": 0, "name": "sketch001", "start": 0, @@ -1300,9 +1474,12 @@ description: Result of parsing poop_chute.kcl "type": "VariableDeclaration" }, { + "commentStart": 1016, "declaration": { + "commentStart": 1018, "end": 0, "id": { + "commentStart": 1018, "end": 0, "name": "sketch002", "start": 0, @@ -1313,6 +1490,7 @@ description: Result of parsing poop_chute.kcl { "arguments": [ { + "commentStart": 1044, "end": 0, "raw": "'-YZ'", "start": 0, @@ -1322,11 +1500,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1030, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1030, "end": 0, "start": 0, "type": "CallExpression", @@ -1335,10 +1515,13 @@ description: Result of parsing poop_chute.kcl { "arguments": [ { + "commentStart": 1071, "elements": [ { + "commentStart": 1072, "end": 0, "left": { + "commentStart": 1072, "end": 0, "name": "back_walls_width", "start": 0, @@ -1347,6 +1530,7 @@ description: Result of parsing poop_chute.kcl }, "operator": "/", "right": { + "commentStart": 1091, "end": 0, "raw": "2", "start": 0, @@ -1362,6 +1546,7 @@ description: Result of parsing poop_chute.kcl "type": "BinaryExpression" }, { + "commentStart": 1094, "end": 0, "raw": "0", "start": 0, @@ -1379,6 +1564,7 @@ description: Result of parsing poop_chute.kcl "type": "ArrayExpression" }, { + "commentStart": 1098, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1386,11 +1572,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1056, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1056, "end": 0, "start": 0, "type": "CallExpression", @@ -1401,14 +1589,17 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 1112, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1121, "end": 0, "left": { + "commentStart": 1121, "end": 0, "name": "wall_thickness", "start": 0, @@ -1417,6 +1608,7 @@ description: Result of parsing poop_chute.kcl }, "operator": "/", "right": { + "commentStart": 1138, "end": 0, "raw": "2", "start": 0, @@ -1434,11 +1626,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1106, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1106, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1448,11 +1642,14 @@ description: Result of parsing poop_chute.kcl { "arguments": [ { + "commentStart": 1160, "end": 0, "properties": [ { + "commentStart": 1162, "end": 0, "key": { + "commentStart": 1162, "end": 0, "name": "angle", "start": 0, @@ -1461,6 +1658,7 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1170, "end": 0, "raw": "45", "start": 0, @@ -1473,8 +1671,10 @@ description: Result of parsing poop_chute.kcl } }, { + "commentStart": 1174, "end": 0, "key": { + "commentStart": 1174, "end": 0, "name": "to", "start": 0, @@ -1483,6 +1683,7 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1179, "end": 0, "name": "back_walls_width", "start": 0, @@ -1496,12 +1697,14 @@ description: Result of parsing poop_chute.kcl "type": "ObjectExpression" }, { + "commentStart": 1199, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1202, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1510,11 +1713,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1146, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 1146, "end": 0, "start": 0, "type": "CallExpression", @@ -1525,12 +1730,14 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 1221, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1235, "end": 0, "name": "height", "start": 0, @@ -1540,11 +1747,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1215, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1215, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1556,6 +1765,7 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 1254, "end": 0, "name": "length", "start": 0, @@ -1563,12 +1773,14 @@ description: Result of parsing poop_chute.kcl }, "arg": { "argument": { + "commentStart": 1264, "end": 0, "name": "wall_thickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1263, "end": 0, "operator": "-", "start": 0, @@ -1578,11 +1790,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1248, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1248, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1594,6 +1808,7 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 1291, "end": 0, "name": "endAbsolute", "start": 0, @@ -1602,6 +1817,7 @@ description: Result of parsing poop_chute.kcl "arg": { "arguments": [ { + "commentStart": 1313, "end": 0, "name": "seg01", "start": 0, @@ -1610,11 +1826,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1305, "end": 0, "name": "segEndY", "start": 0, "type": "Identifier" }, + "commentStart": 1305, "end": 0, "start": 0, "type": "CallExpression", @@ -1623,11 +1841,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1285, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1285, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1637,11 +1857,14 @@ description: Result of parsing poop_chute.kcl { "arguments": [ { + "commentStart": 1340, "end": 0, "properties": [ { + "commentStart": 1349, "end": 0, "key": { + "commentStart": 1349, "end": 0, "name": "angle", "start": 0, @@ -1650,6 +1873,7 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1357, "end": 0, "raw": "45", "start": 0, @@ -1662,8 +1886,10 @@ description: Result of parsing poop_chute.kcl } }, { + "commentStart": 1368, "end": 0, "key": { + "commentStart": 1368, "end": 0, "name": "to", "start": 0, @@ -1672,10 +1898,13 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1373, "end": 0, "left": { + "commentStart": 1373, "end": 0, "left": { + "commentStart": 1373, "end": 0, "name": "back_walls_width", "start": 0, @@ -1684,6 +1913,7 @@ description: Result of parsing poop_chute.kcl }, "operator": "/", "right": { + "commentStart": 1392, "end": 0, "raw": "2", "start": 0, @@ -1700,8 +1930,10 @@ description: Result of parsing poop_chute.kcl }, "operator": "+", "right": { + "commentStart": 1396, "end": 0, "left": { + "commentStart": 1396, "end": 0, "name": "wall_thickness", "start": 0, @@ -1710,6 +1942,7 @@ description: Result of parsing poop_chute.kcl }, "operator": "/", "right": { + "commentStart": 1413, "end": 0, "raw": "2", "start": 0, @@ -1735,6 +1968,7 @@ description: Result of parsing poop_chute.kcl "type": "ObjectExpression" }, { + "commentStart": 1423, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1742,11 +1976,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1326, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 1326, "end": 0, "start": 0, "type": "CallExpression", @@ -1757,6 +1993,7 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 1437, "end": 0, "name": "length", "start": 0, @@ -1764,12 +2001,14 @@ description: Result of parsing poop_chute.kcl }, "arg": { "argument": { + "commentStart": 1447, "end": 0, "name": "wall_thickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1446, "end": 0, "operator": "-", "start": 0, @@ -1779,11 +2018,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1431, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1431, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1793,11 +2034,14 @@ description: Result of parsing poop_chute.kcl { "arguments": [ { + "commentStart": 1482, "end": 0, "properties": [ { + "commentStart": 1491, "end": 0, "key": { + "commentStart": 1491, "end": 0, "name": "angle", "start": 0, @@ -1806,8 +2050,10 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1499, "end": 0, "left": { + "commentStart": 1499, "end": 0, "raw": "180", "start": 0, @@ -1820,6 +2066,7 @@ description: Result of parsing poop_chute.kcl }, "operator": "-", "right": { + "commentStart": 1505, "end": 0, "raw": "45", "start": 0, @@ -1836,8 +2083,10 @@ description: Result of parsing poop_chute.kcl } }, { + "commentStart": 1516, "end": 0, "key": { + "commentStart": 1516, "end": 0, "name": "to", "start": 0, @@ -1846,6 +2095,7 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1521, "end": 0, "name": "wall_thickness", "start": 0, @@ -1859,6 +2109,7 @@ description: Result of parsing poop_chute.kcl "type": "ObjectExpression" }, { + "commentStart": 1544, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1866,11 +2117,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1468, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, + "commentStart": 1468, "end": 0, "start": 0, "type": "CallExpression", @@ -1881,12 +2134,14 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 1558, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1572, "end": 0, "name": "height", "start": 0, @@ -1896,11 +2151,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1552, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1552, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1912,12 +2169,14 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 1591, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1605, "end": 0, "raw": "0", "start": 0, @@ -1931,11 +2190,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1585, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 1585, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1947,6 +2208,7 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 1619, "end": 0, "name": "endAbsolute", "start": 0, @@ -1955,6 +2217,7 @@ description: Result of parsing poop_chute.kcl "arg": { "arguments": [ { + "commentStart": 1641, "end": 0, "name": "seg02", "start": 0, @@ -1963,11 +2226,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1633, "end": 0, "name": "segEndY", "start": 0, "type": "Identifier" }, + "commentStart": 1633, "end": 0, "start": 0, "type": "CallExpression", @@ -1976,11 +2241,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1613, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 1613, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1990,11 +2257,14 @@ description: Result of parsing poop_chute.kcl { "arguments": [ { + "commentStart": 1668, "end": 0, "properties": [ { + "commentStart": 1670, "end": 0, "key": { + "commentStart": 1670, "end": 0, "name": "angle", "start": 0, @@ -2003,8 +2273,10 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1678, "end": 0, "left": { + "commentStart": 1678, "end": 0, "raw": "180", "start": 0, @@ -2017,6 +2289,7 @@ description: Result of parsing poop_chute.kcl }, "operator": "-", "right": { + "commentStart": 1684, "end": 0, "raw": "45", "start": 0, @@ -2033,8 +2306,10 @@ description: Result of parsing poop_chute.kcl } }, { + "commentStart": 1688, "end": 0, "key": { + "commentStart": 1688, "end": 0, "name": "to", "start": 0, @@ -2043,6 +2318,7 @@ description: Result of parsing poop_chute.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1693, "end": 0, "raw": "0", "start": 0, @@ -2060,6 +2336,7 @@ description: Result of parsing poop_chute.kcl "type": "ObjectExpression" }, { + "commentStart": 1698, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2067,11 +2344,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1654, "end": 0, "name": "angledLineToY", "start": 0, "type": "Identifier" }, + "commentStart": 1654, "end": 0, "start": 0, "type": "CallExpression", @@ -2080,6 +2359,7 @@ description: Result of parsing poop_chute.kcl { "arguments": [ { + "commentStart": 1712, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -2087,11 +2367,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1706, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1706, "end": 0, "start": 0, "type": "CallExpression", @@ -2102,14 +2384,17 @@ description: Result of parsing poop_chute.kcl { "type": "LabeledArg", "label": { + "commentStart": 1728, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1737, "end": 0, "left": { + "commentStart": 1737, "end": 0, "name": "back_length", "start": 0, @@ -2118,6 +2403,7 @@ description: Result of parsing poop_chute.kcl }, "operator": "-", "right": { + "commentStart": 1751, "end": 0, "name": "height", "start": 0, @@ -2131,11 +2417,13 @@ description: Result of parsing poop_chute.kcl } ], "callee": { + "commentStart": 1720, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1720, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2143,6 +2431,7 @@ description: Result of parsing poop_chute.kcl "unlabeled": null } ], + "commentStart": 1030, "end": 0, "start": 0, "type": "PipeExpression", @@ -2158,11 +2447,13 @@ description: Result of parsing poop_chute.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "9": [ { + "commentStart": 168, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2173,6 +2464,7 @@ description: Result of parsing poop_chute.kcl ], "11": [ { + "commentStart": 1016, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/poop_chute/program_memory.snap b/rust/kcl-lib/tests/poop_chute/program_memory.snap index 1478ede96..75afc4d54 100644 --- a/rust/kcl-lib/tests/poop_chute/program_memory.snap +++ b/rust/kcl-lib/tests/poop_chute/program_memory.snap @@ -139,6 +139,7 @@ description: Variables in memory after executing poop_chute.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 354, "end": 360, "start": 354, "type": "TagDeclarator", @@ -257,6 +258,7 @@ description: Variables in memory after executing poop_chute.kcl 0.0 ], "tag": { + "commentStart": 354, "end": 360, "start": 354, "type": "TagDeclarator", @@ -593,6 +595,7 @@ description: Variables in memory after executing poop_chute.kcl 0.0 ], "tag": { + "commentStart": 354, "end": 360, "start": 354, "type": "TagDeclarator", @@ -896,6 +899,7 @@ description: Variables in memory after executing poop_chute.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1202, "end": 1208, "start": 1202, "type": "TagDeclarator", @@ -1014,6 +1018,7 @@ description: Variables in memory after executing poop_chute.kcl 0.0 ], "tag": { + "commentStart": 1202, "end": 1208, "start": 1202, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/property_of_object/ast.snap b/rust/kcl-lib/tests/property_of_object/ast.snap index eb6e161a3..c64d9a8d3 100644 --- a/rust/kcl-lib/tests/property_of_object/ast.snap +++ b/rust/kcl-lib/tests/property_of_object/ast.snap @@ -6,20 +6,26 @@ description: Result of parsing property_of_object.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 50, "end": 0, "id": { + "commentStart": 50, "end": 0, "name": "obj", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 56, "end": 0, "properties": [ { + "commentStart": 58, "end": 0, "key": { + "commentStart": 58, "end": 0, "name": "foo", "start": 0, @@ -28,6 +34,7 @@ description: Result of parsing property_of_object.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 64, "end": 0, "raw": "1", "start": 0, @@ -40,8 +47,10 @@ description: Result of parsing property_of_object.kcl } }, { + "commentStart": 67, "end": 0, "key": { + "commentStart": 67, "end": 0, "name": "bar", "start": 0, @@ -50,6 +59,7 @@ description: Result of parsing property_of_object.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 73, "end": 0, "raw": "0", "start": 0, @@ -76,18 +86,23 @@ description: Result of parsing property_of_object.kcl "type": "VariableDeclaration" }, { + "commentStart": 76, "declaration": { + "commentStart": 116, "end": 0, "id": { + "commentStart": 116, "end": 0, "name": "one_a", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 124, "computed": false, "end": 0, "object": { + "commentStart": 124, "end": 0, "name": "obj", "start": 0, @@ -95,6 +110,7 @@ description: Result of parsing property_of_object.kcl "type": "Identifier" }, "property": { + "commentStart": 128, "end": 0, "raw": "\"foo\"", "start": 0, @@ -116,10 +132,12 @@ description: Result of parsing property_of_object.kcl "type": "VariableDeclaration" }, { + "commentStart": 134, "end": 0, "expression": { "arguments": [ { + "commentStart": 155, "end": 0, "name": "one_a", "start": 0, @@ -127,6 +145,7 @@ description: Result of parsing property_of_object.kcl "type": "Identifier" }, { + "commentStart": 162, "end": 0, "raw": "1", "start": 0, @@ -138,6 +157,7 @@ description: Result of parsing property_of_object.kcl } }, { + "commentStart": 165, "end": 0, "raw": "\"Literal property lookup\"", "start": 0, @@ -147,11 +167,13 @@ description: Result of parsing property_of_object.kcl } ], "callee": { + "commentStart": 136, "end": 0, "name": "assertLessThanOrEq", "start": 0, "type": "Identifier" }, + "commentStart": 136, "end": 0, "start": 0, "type": "CallExpression", @@ -162,10 +184,12 @@ description: Result of parsing property_of_object.kcl "type": "ExpressionStatement" }, { + "commentStart": 192, "end": 0, "expression": { "arguments": [ { + "commentStart": 214, "end": 0, "name": "one_a", "start": 0, @@ -173,6 +197,7 @@ description: Result of parsing property_of_object.kcl "type": "Identifier" }, { + "commentStart": 221, "end": 0, "raw": "1", "start": 0, @@ -184,6 +209,7 @@ description: Result of parsing property_of_object.kcl } }, { + "commentStart": 224, "end": 0, "raw": "\"Literal property lookup\"", "start": 0, @@ -193,11 +219,13 @@ description: Result of parsing property_of_object.kcl } ], "callee": { + "commentStart": 192, "end": 0, "name": "assertGreaterThanOrEq", "start": 0, "type": "Identifier" }, + "commentStart": 192, "end": 0, "start": 0, "type": "CallExpression", @@ -208,15 +236,19 @@ description: Result of parsing property_of_object.kcl "type": "ExpressionStatement" }, { + "commentStart": 250, "declaration": { + "commentStart": 340, "end": 0, "id": { + "commentStart": 340, "end": 0, "name": "p", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 344, "end": 0, "raw": "\"foo\"", "start": 0, @@ -234,18 +266,23 @@ description: Result of parsing property_of_object.kcl "type": "VariableDeclaration" }, { + "commentStart": 350, "declaration": { + "commentStart": 350, "end": 0, "id": { + "commentStart": 350, "end": 0, "name": "one_b", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 358, "computed": true, "end": 0, "object": { + "commentStart": 358, "end": 0, "name": "obj", "start": 0, @@ -253,6 +290,7 @@ description: Result of parsing property_of_object.kcl "type": "Identifier" }, "property": { + "commentStart": 362, "end": 0, "name": "p", "start": 0, @@ -273,10 +311,12 @@ description: Result of parsing property_of_object.kcl "type": "VariableDeclaration" }, { + "commentStart": 364, "end": 0, "expression": { "arguments": [ { + "commentStart": 385, "end": 0, "name": "one_b", "start": 0, @@ -284,6 +324,7 @@ description: Result of parsing property_of_object.kcl "type": "Identifier" }, { + "commentStart": 392, "end": 0, "raw": "1", "start": 0, @@ -295,6 +336,7 @@ description: Result of parsing property_of_object.kcl } }, { + "commentStart": 395, "end": 0, "raw": "\"Computed property lookup\"", "start": 0, @@ -304,11 +346,13 @@ description: Result of parsing property_of_object.kcl } ], "callee": { + "commentStart": 366, "end": 0, "name": "assertLessThanOrEq", "start": 0, "type": "Identifier" }, + "commentStart": 366, "end": 0, "start": 0, "type": "CallExpression", @@ -319,10 +363,12 @@ description: Result of parsing property_of_object.kcl "type": "ExpressionStatement" }, { + "commentStart": 423, "end": 0, "expression": { "arguments": [ { + "commentStart": 445, "end": 0, "name": "one_b", "start": 0, @@ -330,6 +376,7 @@ description: Result of parsing property_of_object.kcl "type": "Identifier" }, { + "commentStart": 452, "end": 0, "raw": "1", "start": 0, @@ -341,6 +388,7 @@ description: Result of parsing property_of_object.kcl } }, { + "commentStart": 455, "end": 0, "raw": "\"Computed property lookup\"", "start": 0, @@ -350,11 +398,13 @@ description: Result of parsing property_of_object.kcl } ], "callee": { + "commentStart": 423, "end": 0, "name": "assertGreaterThanOrEq", "start": 0, "type": "Identifier" }, + "commentStart": 423, "end": 0, "start": 0, "type": "CallExpression", @@ -365,20 +415,26 @@ description: Result of parsing property_of_object.kcl "type": "ExpressionStatement" }, { + "commentStart": 482, "declaration": { + "commentStart": 524, "end": 0, "id": { + "commentStart": 524, "end": 0, "name": "obj2", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 531, "end": 0, "properties": [ { + "commentStart": 533, "end": 0, "key": { + "commentStart": 533, "end": 0, "name": "inner", "start": 0, @@ -387,6 +443,7 @@ description: Result of parsing property_of_object.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 541, "end": 0, "name": "obj", "start": 0, @@ -409,21 +466,27 @@ description: Result of parsing property_of_object.kcl "type": "VariableDeclaration" }, { + "commentStart": 546, "declaration": { + "commentStart": 548, "end": 0, "id": { + "commentStart": 548, "end": 0, "name": "one_c", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 556, "computed": false, "end": 0, "object": { + "commentStart": 556, "computed": false, "end": 0, "object": { + "commentStart": 556, "end": 0, "name": "obj2", "start": 0, @@ -431,6 +494,7 @@ description: Result of parsing property_of_object.kcl "type": "Identifier" }, "property": { + "commentStart": 561, "end": 0, "name": "inner", "start": 0, @@ -442,6 +506,7 @@ description: Result of parsing property_of_object.kcl "type": "MemberExpression" }, "property": { + "commentStart": 567, "end": 0, "raw": "\"foo\"", "start": 0, @@ -463,10 +528,12 @@ description: Result of parsing property_of_object.kcl "type": "VariableDeclaration" }, { + "commentStart": 573, "end": 0, "expression": { "arguments": [ { + "commentStart": 594, "end": 0, "name": "one_c", "start": 0, @@ -474,6 +541,7 @@ description: Result of parsing property_of_object.kcl "type": "Identifier" }, { + "commentStart": 601, "end": 0, "raw": "1", "start": 0, @@ -485,6 +553,7 @@ description: Result of parsing property_of_object.kcl } }, { + "commentStart": 604, "end": 0, "raw": "\"Literal property lookup\"", "start": 0, @@ -494,11 +563,13 @@ description: Result of parsing property_of_object.kcl } ], "callee": { + "commentStart": 575, "end": 0, "name": "assertLessThanOrEq", "start": 0, "type": "Identifier" }, + "commentStart": 575, "end": 0, "start": 0, "type": "CallExpression", @@ -509,10 +580,12 @@ description: Result of parsing property_of_object.kcl "type": "ExpressionStatement" }, { + "commentStart": 631, "end": 0, "expression": { "arguments": [ { + "commentStart": 653, "end": 0, "name": "one_c", "start": 0, @@ -520,6 +593,7 @@ description: Result of parsing property_of_object.kcl "type": "Identifier" }, { + "commentStart": 660, "end": 0, "raw": "1", "start": 0, @@ -531,6 +605,7 @@ description: Result of parsing property_of_object.kcl } }, { + "commentStart": 663, "end": 0, "raw": "\"Literal property lookup\"", "start": 0, @@ -540,11 +615,13 @@ description: Result of parsing property_of_object.kcl } ], "callee": { + "commentStart": 631, "end": 0, "name": "assertGreaterThanOrEq", "start": 0, "type": "Identifier" }, + "commentStart": 631, "end": 0, "start": 0, "type": "CallExpression", @@ -555,21 +632,27 @@ description: Result of parsing property_of_object.kcl "type": "ExpressionStatement" }, { + "commentStart": 689, "declaration": { + "commentStart": 752, "end": 0, "id": { + "commentStart": 752, "end": 0, "name": "one_d", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 760, "computed": true, "end": 0, "object": { + "commentStart": 760, "computed": false, "end": 0, "object": { + "commentStart": 760, "end": 0, "name": "obj2", "start": 0, @@ -577,6 +660,7 @@ description: Result of parsing property_of_object.kcl "type": "Identifier" }, "property": { + "commentStart": 765, "end": 0, "name": "inner", "start": 0, @@ -588,6 +672,7 @@ description: Result of parsing property_of_object.kcl "type": "MemberExpression" }, "property": { + "commentStart": 771, "end": 0, "name": "p", "start": 0, @@ -608,10 +693,12 @@ description: Result of parsing property_of_object.kcl "type": "VariableDeclaration" }, { + "commentStart": 773, "end": 0, "expression": { "arguments": [ { + "commentStart": 794, "end": 0, "name": "one_d", "start": 0, @@ -619,6 +706,7 @@ description: Result of parsing property_of_object.kcl "type": "Identifier" }, { + "commentStart": 801, "end": 0, "raw": "1", "start": 0, @@ -630,6 +718,7 @@ description: Result of parsing property_of_object.kcl } }, { + "commentStart": 804, "end": 0, "raw": "\"Computed property lookup\"", "start": 0, @@ -639,11 +728,13 @@ description: Result of parsing property_of_object.kcl } ], "callee": { + "commentStart": 775, "end": 0, "name": "assertLessThanOrEq", "start": 0, "type": "Identifier" }, + "commentStart": 775, "end": 0, "start": 0, "type": "CallExpression", @@ -654,10 +745,12 @@ description: Result of parsing property_of_object.kcl "type": "ExpressionStatement" }, { + "commentStart": 832, "end": 0, "expression": { "arguments": [ { + "commentStart": 854, "end": 0, "name": "one_d", "start": 0, @@ -665,6 +758,7 @@ description: Result of parsing property_of_object.kcl "type": "Identifier" }, { + "commentStart": 861, "end": 0, "raw": "1", "start": 0, @@ -676,6 +770,7 @@ description: Result of parsing property_of_object.kcl } }, { + "commentStart": 864, "end": 0, "raw": "\"Computed property lookup\"", "start": 0, @@ -685,11 +780,13 @@ description: Result of parsing property_of_object.kcl } ], "callee": { + "commentStart": 832, "end": 0, "name": "assertGreaterThanOrEq", "start": 0, "type": "Identifier" }, + "commentStart": 832, "end": 0, "start": 0, "type": "CallExpression", @@ -700,11 +797,13 @@ description: Result of parsing property_of_object.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 76, "end": 0, "start": 0, "type": "NonCodeNode", @@ -715,6 +814,7 @@ description: Result of parsing property_of_object.kcl } }, { + "commentStart": 113, "end": 0, "start": 0, "type": "NonCodeNode", @@ -725,6 +825,7 @@ description: Result of parsing property_of_object.kcl ], "1": [ { + "commentStart": 134, "end": 0, "start": 0, "type": "NonCodeNode", @@ -735,6 +836,7 @@ description: Result of parsing property_of_object.kcl ], "3": [ { + "commentStart": 250, "end": 0, "start": 0, "type": "NonCodeNode", @@ -745,6 +847,7 @@ description: Result of parsing property_of_object.kcl } }, { + "commentStart": 289, "end": 0, "start": 0, "type": "NonCodeNode", @@ -755,6 +858,7 @@ description: Result of parsing property_of_object.kcl } }, { + "commentStart": 337, "end": 0, "start": 0, "type": "NonCodeNode", @@ -765,6 +869,7 @@ description: Result of parsing property_of_object.kcl ], "5": [ { + "commentStart": 364, "end": 0, "start": 0, "type": "NonCodeNode", @@ -775,6 +880,7 @@ description: Result of parsing property_of_object.kcl ], "7": [ { + "commentStart": 482, "end": 0, "start": 0, "type": "NonCodeNode", @@ -785,6 +891,7 @@ description: Result of parsing property_of_object.kcl } }, { + "commentStart": 521, "end": 0, "start": 0, "type": "NonCodeNode", @@ -795,6 +902,7 @@ description: Result of parsing property_of_object.kcl ], "8": [ { + "commentStart": 546, "end": 0, "start": 0, "type": "NonCodeNode", @@ -805,6 +913,7 @@ description: Result of parsing property_of_object.kcl ], "9": [ { + "commentStart": 573, "end": 0, "start": 0, "type": "NonCodeNode", @@ -815,6 +924,7 @@ description: Result of parsing property_of_object.kcl ], "11": [ { + "commentStart": 689, "end": 0, "start": 0, "type": "NonCodeNode", @@ -825,6 +935,7 @@ description: Result of parsing property_of_object.kcl } }, { + "commentStart": 749, "end": 0, "start": 0, "type": "NonCodeNode", @@ -835,6 +946,7 @@ description: Result of parsing property_of_object.kcl ], "12": [ { + "commentStart": 773, "end": 0, "start": 0, "type": "NonCodeNode", @@ -846,6 +958,7 @@ description: Result of parsing property_of_object.kcl }, "startNodes": [ { + "commentStart": 0, "end": 0, "start": 0, "type": "NonCodeNode", @@ -856,6 +969,7 @@ description: Result of parsing property_of_object.kcl } }, { + "commentStart": 47, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/revolve_about_edge/ast.snap b/rust/kcl-lib/tests/revolve_about_edge/ast.snap index 753275e8b..7e6b1a44b 100644 --- a/rust/kcl-lib/tests/revolve_about_edge/ast.snap +++ b/rust/kcl-lib/tests/revolve_about_edge/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing revolve_about_edge.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "sketch001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing revolve_about_edge.kcl { "arguments": [ { + "commentStart": 26, "end": 0, "raw": "'XY'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing revolve_about_edge.kcl } ], "callee": { + "commentStart": 12, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 12, "end": 0, "start": 0, "type": "CallExpression", @@ -41,9 +47,11 @@ description: Result of parsing revolve_about_edge.kcl { "arguments": [ { + "commentStart": 52, "elements": [ { "argument": { + "commentStart": 54, "end": 0, "raw": "25", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing revolve_about_edge.kcl "suffix": "None" } }, + "commentStart": 53, "end": 0, "operator": "-", "start": 0, @@ -61,6 +70,7 @@ description: Result of parsing revolve_about_edge.kcl "type": "UnaryExpression" }, { + "commentStart": 58, "end": 0, "raw": "25", "start": 0, @@ -78,6 +88,7 @@ description: Result of parsing revolve_about_edge.kcl "type": "ArrayExpression" }, { + "commentStart": 63, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -85,11 +96,13 @@ description: Result of parsing revolve_about_edge.kcl } ], "callee": { + "commentStart": 37, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 37, "end": 0, "start": 0, "type": "CallExpression", @@ -100,6 +113,7 @@ description: Result of parsing revolve_about_edge.kcl { "type": "LabeledArg", "label": { + "commentStart": 77, "end": 0, "name": "length", "start": 0, @@ -107,6 +121,7 @@ description: Result of parsing revolve_about_edge.kcl }, "arg": { "argument": { + "commentStart": 87, "end": 0, "raw": "50", "start": 0, @@ -117,6 +132,7 @@ description: Result of parsing revolve_about_edge.kcl "suffix": "None" } }, + "commentStart": 86, "end": 0, "operator": "-", "start": 0, @@ -127,12 +143,14 @@ description: Result of parsing revolve_about_edge.kcl { "type": "LabeledArg", "label": { + "commentStart": 91, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 97, "end": 0, "start": 0, "type": "TagDeclarator", @@ -142,11 +160,13 @@ description: Result of parsing revolve_about_edge.kcl } ], "callee": { + "commentStart": 71, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 71, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -154,6 +174,7 @@ description: Result of parsing revolve_about_edge.kcl "unlabeled": null } ], + "commentStart": 12, "end": 0, "start": 0, "type": "PipeExpression", @@ -169,9 +190,12 @@ description: Result of parsing revolve_about_edge.kcl "type": "VariableDeclaration" }, { + "commentStart": 120, "declaration": { + "commentStart": 120, "end": 0, "id": { + "commentStart": 120, "end": 0, "name": "sketch002", "start": 0, @@ -182,6 +206,7 @@ description: Result of parsing revolve_about_edge.kcl { "arguments": [ { + "commentStart": 146, "end": 0, "raw": "'XY'", "start": 0, @@ -191,11 +216,13 @@ description: Result of parsing revolve_about_edge.kcl } ], "callee": { + "commentStart": 132, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 132, "end": 0, "start": 0, "type": "CallExpression", @@ -206,15 +233,18 @@ description: Result of parsing revolve_about_edge.kcl { "type": "LabeledArg", "label": { + "commentStart": 164, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 173, "elements": [ { "argument": { + "commentStart": 175, "end": 0, "raw": "50", "start": 0, @@ -225,6 +255,7 @@ description: Result of parsing revolve_about_edge.kcl "suffix": "None" } }, + "commentStart": 174, "end": 0, "operator": "-", "start": 0, @@ -232,6 +263,7 @@ description: Result of parsing revolve_about_edge.kcl "type": "UnaryExpression" }, { + "commentStart": 179, "end": 0, "raw": "0", "start": 0, @@ -252,12 +284,14 @@ description: Result of parsing revolve_about_edge.kcl { "type": "LabeledArg", "label": { + "commentStart": 183, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 192, "end": 0, "raw": "10", "start": 0, @@ -271,11 +305,13 @@ description: Result of parsing revolve_about_edge.kcl } ], "callee": { + "commentStart": 157, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 157, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -287,12 +323,14 @@ description: Result of parsing revolve_about_edge.kcl { "type": "LabeledArg", "label": { + "commentStart": 209, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 217, "end": 0, "raw": "90", "start": 0, @@ -307,12 +345,14 @@ description: Result of parsing revolve_about_edge.kcl { "type": "LabeledArg", "label": { + "commentStart": 221, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 228, "end": 0, "name": "rectangleSegmentB001", "start": 0, @@ -322,11 +362,13 @@ description: Result of parsing revolve_about_edge.kcl } ], "callee": { + "commentStart": 201, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, + "commentStart": 201, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -334,6 +376,7 @@ description: Result of parsing revolve_about_edge.kcl "unlabeled": null } ], + "commentStart": 132, "end": 0, "start": 0, "type": "PipeExpression", @@ -349,6 +392,7 @@ description: Result of parsing revolve_about_edge.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/revolve_about_edge/program_memory.snap b/rust/kcl-lib/tests/revolve_about_edge/program_memory.snap index 5f136be86..aa22243d0 100644 --- a/rust/kcl-lib/tests/revolve_about_edge/program_memory.snap +++ b/rust/kcl-lib/tests/revolve_about_edge/program_memory.snap @@ -24,6 +24,7 @@ description: Variables in memory after executing revolve_about_edge.kcl 25.0 ], "tag": { + "commentStart": 97, "end": 118, "start": 97, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/riddle_small/ast.snap b/rust/kcl-lib/tests/riddle_small/ast.snap index 9b39b5701..cf9e9bace 100644 --- a/rust/kcl-lib/tests/riddle_small/ast.snap +++ b/rust/kcl-lib/tests/riddle_small/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing riddle_small.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "ANSWER", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 9, "end": 0, "raw": "41803", "start": 0, @@ -35,9 +39,12 @@ description: Result of parsing riddle_small.kcl "type": "VariableDeclaration" }, { + "commentStart": 14, "declaration": { + "commentStart": 19, "end": 0, "id": { + "commentStart": 19, "end": 0, "name": "t", "start": 0, @@ -48,12 +55,16 @@ description: Result of parsing riddle_small.kcl "body": [ { "argument": { + "commentStart": 36, "end": 0, "left": { + "commentStart": 36, "end": 0, "left": { + "commentStart": 36, "end": 0, "left": { + "commentStart": 36, "end": 0, "name": "ANSWER", "start": 0, @@ -62,6 +73,7 @@ description: Result of parsing riddle_small.kcl }, "operator": "*", "right": { + "commentStart": 45, "end": 0, "name": "s", "start": 0, @@ -74,6 +86,7 @@ description: Result of parsing riddle_small.kcl }, "operator": "+", "right": { + "commentStart": 49, "end": 0, "raw": "12345", "start": 0, @@ -90,6 +103,7 @@ description: Result of parsing riddle_small.kcl }, "operator": "%", "right": { + "commentStart": 58, "end": 0, "raw": "214748", "start": 0, @@ -104,20 +118,24 @@ description: Result of parsing riddle_small.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, + "commentStart": 28, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 24, "end": 0, "start": 0 }, + "commentStart": 20, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 21, "end": 0, "name": "s", "start": 0, @@ -139,15 +157,19 @@ description: Result of parsing riddle_small.kcl "type": "VariableDeclaration" }, { + "commentStart": 66, "declaration": { + "commentStart": 68, "end": 0, "id": { + "commentStart": 68, "end": 0, "name": "xs", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 73, "end": 0, "raw": "205804", "start": 0, @@ -168,15 +190,19 @@ description: Result of parsing riddle_small.kcl "type": "VariableDeclaration" }, { + "commentStart": 80, "declaration": { + "commentStart": 80, "end": 0, "id": { + "commentStart": 80, "end": 0, "name": "ys", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 85, "end": 0, "raw": "71816", "start": 0, @@ -197,17 +223,22 @@ description: Result of parsing riddle_small.kcl "type": "VariableDeclaration" }, { + "commentStart": 91, "declaration": { + "commentStart": 91, "end": 0, "id": { + "commentStart": 91, "end": 0, "name": "ox", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 96, "end": 0, "left": { + "commentStart": 96, "end": 0, "raw": "35", "start": 0, @@ -220,10 +251,12 @@ description: Result of parsing riddle_small.kcl }, "operator": "-", "right": { + "commentStart": 102, "end": 0, "left": { "arguments": [ { + "commentStart": 104, "end": 0, "name": "xs", "start": 0, @@ -232,11 +265,13 @@ description: Result of parsing riddle_small.kcl } ], "callee": { + "commentStart": 102, "end": 0, "name": "t", "start": 0, "type": "Identifier" }, + "commentStart": 102, "end": 0, "start": 0, "type": "CallExpression", @@ -244,6 +279,7 @@ description: Result of parsing riddle_small.kcl }, "operator": "%", "right": { + "commentStart": 110, "end": 0, "raw": "70", "start": 0, @@ -272,17 +308,22 @@ description: Result of parsing riddle_small.kcl "type": "VariableDeclaration" }, { + "commentStart": 114, "declaration": { + "commentStart": 114, "end": 0, "id": { + "commentStart": 114, "end": 0, "name": "oy", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 119, "end": 0, "left": { + "commentStart": 119, "end": 0, "raw": "35", "start": 0, @@ -295,10 +336,12 @@ description: Result of parsing riddle_small.kcl }, "operator": "-", "right": { + "commentStart": 125, "end": 0, "left": { "arguments": [ { + "commentStart": 127, "end": 0, "name": "ys", "start": 0, @@ -307,11 +350,13 @@ description: Result of parsing riddle_small.kcl } ], "callee": { + "commentStart": 125, "end": 0, "name": "t", "start": 0, "type": "Identifier" }, + "commentStart": 125, "end": 0, "start": 0, "type": "CallExpression", @@ -319,6 +364,7 @@ description: Result of parsing riddle_small.kcl }, "operator": "%", "right": { + "commentStart": 133, "end": 0, "raw": "70", "start": 0, @@ -347,9 +393,12 @@ description: Result of parsing riddle_small.kcl "type": "VariableDeclaration" }, { + "commentStart": 137, "declaration": { + "commentStart": 137, "end": 0, "id": { + "commentStart": 137, "end": 0, "name": "r", "start": 0, @@ -360,6 +409,7 @@ description: Result of parsing riddle_small.kcl { "arguments": [ { + "commentStart": 155, "end": 0, "raw": "'XZ'", "start": 0, @@ -369,11 +419,13 @@ description: Result of parsing riddle_small.kcl } ], "callee": { + "commentStart": 141, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 141, "end": 0, "start": 0, "type": "CallExpression", @@ -382,8 +434,10 @@ description: Result of parsing riddle_small.kcl { "arguments": [ { + "commentStart": 181, "elements": [ { + "commentStart": 182, "end": 0, "name": "ox", "start": 0, @@ -391,6 +445,7 @@ description: Result of parsing riddle_small.kcl "type": "Identifier" }, { + "commentStart": 186, "end": 0, "name": "oy", "start": 0, @@ -404,6 +459,7 @@ description: Result of parsing riddle_small.kcl "type": "ArrayExpression" }, { + "commentStart": 191, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -411,11 +467,13 @@ description: Result of parsing riddle_small.kcl } ], "callee": { + "commentStart": 166, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 166, "end": 0, "start": 0, "type": "CallExpression", @@ -426,14 +484,17 @@ description: Result of parsing riddle_small.kcl { "type": "LabeledArg", "label": { + "commentStart": 204, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 210, "elements": [ { + "commentStart": 211, "end": 0, "raw": "1", "start": 0, @@ -445,6 +506,7 @@ description: Result of parsing riddle_small.kcl } }, { + "commentStart": 214, "end": 0, "raw": "0", "start": 0, @@ -464,11 +526,13 @@ description: Result of parsing riddle_small.kcl } ], "callee": { + "commentStart": 199, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 199, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -480,14 +544,17 @@ description: Result of parsing riddle_small.kcl { "type": "LabeledArg", "label": { + "commentStart": 228, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 234, "elements": [ { + "commentStart": 235, "end": 0, "raw": "0", "start": 0, @@ -500,6 +567,7 @@ description: Result of parsing riddle_small.kcl }, { "argument": { + "commentStart": 239, "end": 0, "raw": "1", "start": 0, @@ -510,6 +578,7 @@ description: Result of parsing riddle_small.kcl "suffix": "None" } }, + "commentStart": 238, "end": 0, "operator": "-", "start": 0, @@ -525,11 +594,13 @@ description: Result of parsing riddle_small.kcl } ], "callee": { + "commentStart": 223, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 223, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -541,15 +612,18 @@ description: Result of parsing riddle_small.kcl { "type": "LabeledArg", "label": { + "commentStart": 253, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 259, "elements": [ { "argument": { + "commentStart": 261, "end": 0, "raw": "1", "start": 0, @@ -560,6 +634,7 @@ description: Result of parsing riddle_small.kcl "suffix": "None" } }, + "commentStart": 260, "end": 0, "operator": "-", "start": 0, @@ -567,6 +642,7 @@ description: Result of parsing riddle_small.kcl "type": "UnaryExpression" }, { + "commentStart": 264, "end": 0, "raw": "0", "start": 0, @@ -586,11 +662,13 @@ description: Result of parsing riddle_small.kcl } ], "callee": { + "commentStart": 248, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 248, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -600,6 +678,7 @@ description: Result of parsing riddle_small.kcl { "arguments": [ { + "commentStart": 279, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -607,11 +686,13 @@ description: Result of parsing riddle_small.kcl } ], "callee": { + "commentStart": 273, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 273, "end": 0, "start": 0, "type": "CallExpression", @@ -622,12 +703,14 @@ description: Result of parsing riddle_small.kcl { "type": "LabeledArg", "label": { + "commentStart": 295, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 304, "end": 0, "raw": "1", "start": 0, @@ -641,11 +724,13 @@ description: Result of parsing riddle_small.kcl } ], "callee": { + "commentStart": 287, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 287, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -653,6 +738,7 @@ description: Result of parsing riddle_small.kcl "unlabeled": null } ], + "commentStart": 141, "end": 0, "start": 0, "type": "PipeExpression", @@ -668,11 +754,13 @@ description: Result of parsing riddle_small.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 14, "end": 0, "start": 0, "type": "NonCodeNode", @@ -683,6 +771,7 @@ description: Result of parsing riddle_small.kcl ], "1": [ { + "commentStart": 66, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/rotate_after_fillet/ast.snap b/rust/kcl-lib/tests/rotate_after_fillet/ast.snap index b6c45b221..8750469de 100644 --- a/rust/kcl-lib/tests/rotate_after_fillet/ast.snap +++ b/rust/kcl-lib/tests/rotate_after_fillet/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing rotate_after_fillet.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 7, "end": 0, "id": { + "commentStart": 7, "end": 0, "name": "boltDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 22, "end": 0, "raw": "0.625", "start": 0, @@ -36,15 +40,19 @@ description: Result of parsing rotate_after_fillet.kcl "visibility": "export" }, { + "commentStart": 28, "declaration": { + "commentStart": 35, "end": 0, "id": { + "commentStart": 35, "end": 0, "name": "boltLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 48, "end": 0, "raw": "2.500", "start": 0, @@ -66,15 +74,19 @@ description: Result of parsing rotate_after_fillet.kcl "visibility": "export" }, { + "commentStart": 54, "declaration": { + "commentStart": 61, "end": 0, "id": { + "commentStart": 61, "end": 0, "name": "boltHeadLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 78, "end": 0, "name": "boltDiameter", "start": 0, @@ -92,15 +104,19 @@ description: Result of parsing rotate_after_fillet.kcl "visibility": "export" }, { + "commentStart": 91, "declaration": { + "commentStart": 98, "end": 0, "id": { + "commentStart": 98, "end": 0, "name": "boltHeadDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 117, "end": 0, "raw": "0.938", "start": 0, @@ -122,17 +138,22 @@ description: Result of parsing rotate_after_fillet.kcl "visibility": "export" }, { + "commentStart": 123, "declaration": { + "commentStart": 130, "end": 0, "id": { + "commentStart": 130, "end": 0, "name": "boltHexDrive", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 145, "end": 0, "left": { + "commentStart": 145, "end": 0, "raw": "1", "start": 0, @@ -145,6 +166,7 @@ description: Result of parsing rotate_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 149, "end": 0, "raw": "2", "start": 0, @@ -170,17 +192,22 @@ description: Result of parsing rotate_after_fillet.kcl "visibility": "export" }, { + "commentStart": 151, "declaration": { + "commentStart": 158, "end": 0, "id": { + "commentStart": 158, "end": 0, "name": "boltHexFlatLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 178, "end": 0, "left": { + "commentStart": 178, "end": 0, "name": "boltHexDrive", "start": 0, @@ -189,8 +216,10 @@ description: Result of parsing rotate_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 194, "end": 0, "left": { + "commentStart": 194, "end": 0, "raw": "2", "start": 0, @@ -207,6 +236,7 @@ description: Result of parsing rotate_after_fillet.kcl { "arguments": [ { + "commentStart": 212, "end": 0, "raw": "30", "start": 0, @@ -219,11 +249,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 202, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 202, "end": 0, "start": 0, "type": "CallExpression", @@ -231,11 +263,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 198, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 198, "end": 0, "start": 0, "type": "CallExpression", @@ -260,15 +294,19 @@ description: Result of parsing rotate_after_fillet.kcl "visibility": "export" }, { + "commentStart": 218, "declaration": { + "commentStart": 225, "end": 0, "id": { + "commentStart": 225, "end": 0, "name": "boltThreadLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 244, "end": 0, "raw": "1.75", "start": 0, @@ -290,9 +328,12 @@ description: Result of parsing rotate_after_fillet.kcl "visibility": "export" }, { + "commentStart": 248, "declaration": { + "commentStart": 260, "end": 0, "id": { + "commentStart": 260, "end": 0, "name": "bolt", "start": 0, @@ -302,9 +343,12 @@ description: Result of parsing rotate_after_fillet.kcl "body": { "body": [ { + "commentStart": 268, "declaration": { + "commentStart": 309, "end": 0, "id": { + "commentStart": 309, "end": 0, "name": "boltHead", "start": 0, @@ -315,6 +359,7 @@ description: Result of parsing rotate_after_fillet.kcl { "arguments": [ { + "commentStart": 334, "end": 0, "raw": "'XZ'", "start": 0, @@ -324,11 +369,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 320, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 320, "end": 0, "start": 0, "type": "CallExpression", @@ -339,14 +386,17 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 354, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 363, "elements": [ { + "commentStart": 364, "end": 0, "raw": "0", "start": 0, @@ -358,6 +408,7 @@ description: Result of parsing rotate_after_fillet.kcl } }, { + "commentStart": 367, "end": 0, "raw": "0", "start": 0, @@ -378,14 +429,17 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 371, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 380, "end": 0, "left": { + "commentStart": 380, "end": 0, "name": "boltHeadDiameter", "start": 0, @@ -394,6 +448,7 @@ description: Result of parsing rotate_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 399, "end": 0, "raw": "2", "start": 0, @@ -412,12 +467,14 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 402, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 408, "end": 0, "start": 0, "type": "TagDeclarator", @@ -427,11 +484,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 347, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 347, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -443,6 +502,7 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 433, "end": 0, "name": "length", "start": 0, @@ -450,12 +510,14 @@ description: Result of parsing rotate_after_fillet.kcl }, "arg": { "argument": { + "commentStart": 443, "end": 0, "name": "boltHeadLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 442, "end": 0, "operator": "-", "start": 0, @@ -465,11 +527,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 425, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 425, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -481,12 +545,14 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 473, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 482, "end": 0, "raw": "0.020", "start": 0, @@ -501,14 +567,17 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 489, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 496, "elements": [ { + "commentStart": 497, "end": 0, "name": "topEdge", "start": 0, @@ -518,6 +587,7 @@ description: Result of parsing rotate_after_fillet.kcl { "arguments": [ { + "commentStart": 522, "end": 0, "name": "topEdge", "start": 0, @@ -526,11 +596,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 506, "end": 0, "name": "getOppositeEdge", "start": 0, "type": "Identifier" }, + "commentStart": 506, "end": 0, "start": 0, "type": "CallExpression", @@ -545,11 +617,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 466, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 466, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -557,11 +631,13 @@ description: Result of parsing rotate_after_fillet.kcl "unlabeled": null } ], + "commentStart": 320, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "3": [ { + "commentStart": 534, "end": 0, "start": 0, "type": "NonCodeNode", @@ -584,14 +660,20 @@ description: Result of parsing rotate_after_fillet.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Create the head of the cap screw" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 596, "declaration": { + "commentStart": 596, "end": 0, "id": { + "commentStart": 596, "end": 0, "name": "hexPatternSketch", "start": 0, @@ -602,6 +684,7 @@ description: Result of parsing rotate_after_fillet.kcl { "arguments": [ { + "commentStart": 629, "end": 0, "name": "boltHead", "start": 0, @@ -609,6 +692,7 @@ description: Result of parsing rotate_after_fillet.kcl "type": "Identifier" }, { + "commentStart": 639, "end": 0, "raw": "'start'", "start": 0, @@ -618,11 +702,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 615, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 615, "end": 0, "start": 0, "type": "CallExpression", @@ -631,10 +717,13 @@ description: Result of parsing rotate_after_fillet.kcl { "arguments": [ { + "commentStart": 670, "elements": [ { + "commentStart": 681, "end": 0, "left": { + "commentStart": 681, "end": 0, "name": "boltHexDrive", "start": 0, @@ -643,6 +732,7 @@ description: Result of parsing rotate_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 696, "end": 0, "raw": "2", "start": 0, @@ -658,8 +748,10 @@ description: Result of parsing rotate_after_fillet.kcl "type": "BinaryExpression" }, { + "commentStart": 708, "end": 0, "left": { + "commentStart": 708, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -668,6 +760,7 @@ description: Result of parsing rotate_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 728, "end": 0, "raw": "2", "start": 0, @@ -689,6 +782,7 @@ description: Result of parsing rotate_after_fillet.kcl "type": "ArrayExpression" }, { + "commentStart": 740, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -696,11 +790,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 655, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 655, "end": 0, "start": 0, "type": "CallExpression", @@ -709,11 +805,14 @@ description: Result of parsing rotate_after_fillet.kcl { "arguments": [ { + "commentStart": 761, "end": 0, "properties": [ { + "commentStart": 772, "end": 0, "key": { + "commentStart": 772, "end": 0, "name": "angle", "start": 0, @@ -722,6 +821,7 @@ description: Result of parsing rotate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 780, "end": 0, "raw": "270", "start": 0, @@ -734,8 +834,10 @@ description: Result of parsing rotate_after_fillet.kcl } }, { + "commentStart": 794, "end": 0, "key": { + "commentStart": 794, "end": 0, "name": "length", "start": 0, @@ -744,6 +846,7 @@ description: Result of parsing rotate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 803, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -757,6 +860,7 @@ description: Result of parsing rotate_after_fillet.kcl "type": "ObjectExpression" }, { + "commentStart": 831, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -764,11 +868,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 750, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 750, "end": 0, "start": 0, "type": "CallExpression", @@ -777,11 +883,14 @@ description: Result of parsing rotate_after_fillet.kcl { "arguments": [ { + "commentStart": 852, "end": 0, "properties": [ { + "commentStart": 863, "end": 0, "key": { + "commentStart": 863, "end": 0, "name": "angle", "start": 0, @@ -790,6 +899,7 @@ description: Result of parsing rotate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 871, "end": 0, "raw": "210", "start": 0, @@ -802,8 +912,10 @@ description: Result of parsing rotate_after_fillet.kcl } }, { + "commentStart": 885, "end": 0, "key": { + "commentStart": 885, "end": 0, "name": "length", "start": 0, @@ -812,6 +924,7 @@ description: Result of parsing rotate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 894, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -825,6 +938,7 @@ description: Result of parsing rotate_after_fillet.kcl "type": "ObjectExpression" }, { + "commentStart": 922, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -832,11 +946,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 841, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 841, "end": 0, "start": 0, "type": "CallExpression", @@ -845,11 +961,14 @@ description: Result of parsing rotate_after_fillet.kcl { "arguments": [ { + "commentStart": 943, "end": 0, "properties": [ { + "commentStart": 954, "end": 0, "key": { + "commentStart": 954, "end": 0, "name": "angle", "start": 0, @@ -858,6 +977,7 @@ description: Result of parsing rotate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 962, "end": 0, "raw": "150", "start": 0, @@ -870,8 +990,10 @@ description: Result of parsing rotate_after_fillet.kcl } }, { + "commentStart": 976, "end": 0, "key": { + "commentStart": 976, "end": 0, "name": "length", "start": 0, @@ -880,6 +1002,7 @@ description: Result of parsing rotate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 985, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -893,6 +1016,7 @@ description: Result of parsing rotate_after_fillet.kcl "type": "ObjectExpression" }, { + "commentStart": 1013, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -900,11 +1024,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 932, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 932, "end": 0, "start": 0, "type": "CallExpression", @@ -913,11 +1039,14 @@ description: Result of parsing rotate_after_fillet.kcl { "arguments": [ { + "commentStart": 1034, "end": 0, "properties": [ { + "commentStart": 1045, "end": 0, "key": { + "commentStart": 1045, "end": 0, "name": "angle", "start": 0, @@ -926,6 +1055,7 @@ description: Result of parsing rotate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1053, "end": 0, "raw": "90", "start": 0, @@ -938,8 +1068,10 @@ description: Result of parsing rotate_after_fillet.kcl } }, { + "commentStart": 1066, "end": 0, "key": { + "commentStart": 1066, "end": 0, "name": "length", "start": 0, @@ -948,6 +1080,7 @@ description: Result of parsing rotate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1075, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -961,6 +1094,7 @@ description: Result of parsing rotate_after_fillet.kcl "type": "ObjectExpression" }, { + "commentStart": 1103, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -968,11 +1102,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 1023, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1023, "end": 0, "start": 0, "type": "CallExpression", @@ -981,11 +1117,14 @@ description: Result of parsing rotate_after_fillet.kcl { "arguments": [ { + "commentStart": 1124, "end": 0, "properties": [ { + "commentStart": 1135, "end": 0, "key": { + "commentStart": 1135, "end": 0, "name": "angle", "start": 0, @@ -994,6 +1133,7 @@ description: Result of parsing rotate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1143, "end": 0, "raw": "30", "start": 0, @@ -1006,8 +1146,10 @@ description: Result of parsing rotate_after_fillet.kcl } }, { + "commentStart": 1156, "end": 0, "key": { + "commentStart": 1156, "end": 0, "name": "length", "start": 0, @@ -1016,6 +1158,7 @@ description: Result of parsing rotate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1165, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -1029,6 +1172,7 @@ description: Result of parsing rotate_after_fillet.kcl "type": "ObjectExpression" }, { + "commentStart": 1193, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1036,11 +1180,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 1113, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1113, "end": 0, "start": 0, "type": "CallExpression", @@ -1049,11 +1195,13 @@ description: Result of parsing rotate_after_fillet.kcl { "arguments": [], "callee": { + "commentStart": 1203, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1203, "end": 0, "start": 0, "type": "CallExpression", @@ -1064,21 +1212,25 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1226, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1235, "end": 0, "left": { "argument": { + "commentStart": 1236, "end": 0, "name": "boltHeadLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1235, "end": 0, "operator": "-", "start": 0, @@ -1087,6 +1239,7 @@ description: Result of parsing rotate_after_fillet.kcl }, "operator": "*", "right": { + "commentStart": 1253, "end": 0, "raw": "0.75", "start": 0, @@ -1104,11 +1257,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 1218, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1218, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1116,6 +1271,7 @@ description: Result of parsing rotate_after_fillet.kcl "unlabeled": null } ], + "commentStart": 615, "end": 0, "start": 0, "type": "PipeExpression", @@ -1131,9 +1287,12 @@ description: Result of parsing rotate_after_fillet.kcl "type": "VariableDeclaration" }, { + "commentStart": 1258, "declaration": { + "commentStart": 1262, "end": 0, "id": { + "commentStart": 1262, "end": 0, "name": "boltBody", "start": 0, @@ -1144,6 +1303,7 @@ description: Result of parsing rotate_after_fillet.kcl { "arguments": [ { + "commentStart": 1287, "end": 0, "name": "boltHead", "start": 0, @@ -1151,6 +1311,7 @@ description: Result of parsing rotate_after_fillet.kcl "type": "Identifier" }, { + "commentStart": 1297, "end": 0, "raw": "'end'", "start": 0, @@ -1160,11 +1321,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 1273, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1273, "end": 0, "start": 0, "type": "CallExpression", @@ -1175,14 +1338,17 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1318, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1327, "elements": [ { + "commentStart": 1328, "end": 0, "raw": "0", "start": 0, @@ -1194,6 +1360,7 @@ description: Result of parsing rotate_after_fillet.kcl } }, { + "commentStart": 1331, "end": 0, "raw": "0", "start": 0, @@ -1214,14 +1381,17 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1335, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1344, "end": 0, "left": { + "commentStart": 1344, "end": 0, "name": "boltDiameter", "start": 0, @@ -1230,6 +1400,7 @@ description: Result of parsing rotate_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 1359, "end": 0, "raw": "2", "start": 0, @@ -1248,12 +1419,14 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1362, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1368, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1263,11 +1436,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 1311, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1311, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1279,12 +1454,14 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1396, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1405, "end": 0, "name": "boltLength", "start": 0, @@ -1294,11 +1471,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 1388, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1388, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1310,12 +1489,14 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1431, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1440, "end": 0, "raw": ".020", "start": 0, @@ -1330,16 +1511,19 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1446, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1453, "elements": [ { "arguments": [ { + "commentStart": 1470, "end": 0, "name": "filletEdge", "start": 0, @@ -1348,11 +1532,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 1454, "end": 0, "name": "getOppositeEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1454, "end": 0, "start": 0, "type": "CallExpression", @@ -1367,11 +1553,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 1424, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1424, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1383,12 +1571,14 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1502, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1510, "end": 0, "raw": "\"#4dd043\"", "start": 0, @@ -1400,12 +1590,14 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1521, "end": 0, "name": "metalness", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1533, "end": 0, "raw": "90", "start": 0, @@ -1420,12 +1612,14 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1537, "end": 0, "name": "roughness", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1549, "end": 0, "raw": "90", "start": 0, @@ -1439,11 +1633,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 1491, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, + "commentStart": 1491, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1451,6 +1647,7 @@ description: Result of parsing rotate_after_fillet.kcl "unlabeled": null } ], + "commentStart": 1273, "end": 0, "start": 0, "type": "PipeExpression", @@ -1467,23 +1664,27 @@ description: Result of parsing rotate_after_fillet.kcl }, { "argument": { + "commentStart": 1563, "end": 0, "name": "boltBody", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1552, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 268, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 1258, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1494,6 +1695,7 @@ description: Result of parsing rotate_after_fillet.kcl ], "2": [ { + "commentStart": 1552, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1503,21 +1705,11 @@ description: Result of parsing rotate_after_fillet.kcl } ] }, - "startNodes": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Create the head of the cap screw", - "style": "line" - } - } - ] + "startNodes": [] }, "start": 0 }, + "commentStart": 264, "end": 0, "params": [], "start": 0, @@ -1535,17 +1727,20 @@ description: Result of parsing rotate_after_fillet.kcl "visibility": "export" }, { + "commentStart": 1573, "end": 0, "expression": { "body": [ { "arguments": [], "callee": { + "commentStart": 1575, "end": 0, "name": "bolt", "start": 0, "type": "Identifier" }, + "commentStart": 1575, "end": 0, "start": 0, "type": "CallExpression", @@ -1556,12 +1751,14 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1594, "end": 0, "name": "roll", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1601, "end": 0, "raw": "3.14", "start": 0, @@ -1576,12 +1773,14 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1607, "end": 0, "name": "pitch", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1615, "end": 0, "raw": "3.14", "start": 0, @@ -1596,12 +1795,14 @@ description: Result of parsing rotate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1621, "end": 0, "name": "yaw", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1627, "end": 0, "raw": "3.14", "start": 0, @@ -1615,11 +1816,13 @@ description: Result of parsing rotate_after_fillet.kcl } ], "callee": { + "commentStart": 1587, "end": 0, "name": "rotate", "start": 0, "type": "Identifier" }, + "commentStart": 1587, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1627,11 +1830,13 @@ description: Result of parsing rotate_after_fillet.kcl "unlabeled": null } ], + "commentStart": 1575, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 1632, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1654,11 +1859,13 @@ description: Result of parsing rotate_after_fillet.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "6": [ { + "commentStart": 248, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1669,6 +1876,7 @@ description: Result of parsing rotate_after_fillet.kcl ], "7": [ { + "commentStart": 1573, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/scale_after_fillet/ast.snap b/rust/kcl-lib/tests/scale_after_fillet/ast.snap index 2748008b8..136720b4b 100644 --- a/rust/kcl-lib/tests/scale_after_fillet/ast.snap +++ b/rust/kcl-lib/tests/scale_after_fillet/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing scale_after_fillet.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 7, "end": 0, "id": { + "commentStart": 7, "end": 0, "name": "boltDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 22, "end": 0, "raw": "0.625", "start": 0, @@ -36,15 +40,19 @@ description: Result of parsing scale_after_fillet.kcl "visibility": "export" }, { + "commentStart": 28, "declaration": { + "commentStart": 35, "end": 0, "id": { + "commentStart": 35, "end": 0, "name": "boltLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 48, "end": 0, "raw": "2.500", "start": 0, @@ -66,15 +74,19 @@ description: Result of parsing scale_after_fillet.kcl "visibility": "export" }, { + "commentStart": 54, "declaration": { + "commentStart": 61, "end": 0, "id": { + "commentStart": 61, "end": 0, "name": "boltHeadLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 78, "end": 0, "name": "boltDiameter", "start": 0, @@ -92,15 +104,19 @@ description: Result of parsing scale_after_fillet.kcl "visibility": "export" }, { + "commentStart": 91, "declaration": { + "commentStart": 98, "end": 0, "id": { + "commentStart": 98, "end": 0, "name": "boltHeadDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 117, "end": 0, "raw": "0.938", "start": 0, @@ -122,17 +138,22 @@ description: Result of parsing scale_after_fillet.kcl "visibility": "export" }, { + "commentStart": 123, "declaration": { + "commentStart": 130, "end": 0, "id": { + "commentStart": 130, "end": 0, "name": "boltHexDrive", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 145, "end": 0, "left": { + "commentStart": 145, "end": 0, "raw": "1", "start": 0, @@ -145,6 +166,7 @@ description: Result of parsing scale_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 149, "end": 0, "raw": "2", "start": 0, @@ -170,17 +192,22 @@ description: Result of parsing scale_after_fillet.kcl "visibility": "export" }, { + "commentStart": 151, "declaration": { + "commentStart": 158, "end": 0, "id": { + "commentStart": 158, "end": 0, "name": "boltHexFlatLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 178, "end": 0, "left": { + "commentStart": 178, "end": 0, "name": "boltHexDrive", "start": 0, @@ -189,8 +216,10 @@ description: Result of parsing scale_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 194, "end": 0, "left": { + "commentStart": 194, "end": 0, "raw": "2", "start": 0, @@ -207,6 +236,7 @@ description: Result of parsing scale_after_fillet.kcl { "arguments": [ { + "commentStart": 212, "end": 0, "raw": "30", "start": 0, @@ -219,11 +249,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 202, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 202, "end": 0, "start": 0, "type": "CallExpression", @@ -231,11 +263,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 198, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 198, "end": 0, "start": 0, "type": "CallExpression", @@ -260,15 +294,19 @@ description: Result of parsing scale_after_fillet.kcl "visibility": "export" }, { + "commentStart": 218, "declaration": { + "commentStart": 225, "end": 0, "id": { + "commentStart": 225, "end": 0, "name": "boltThreadLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 244, "end": 0, "raw": "1.75", "start": 0, @@ -290,9 +328,12 @@ description: Result of parsing scale_after_fillet.kcl "visibility": "export" }, { + "commentStart": 248, "declaration": { + "commentStart": 260, "end": 0, "id": { + "commentStart": 260, "end": 0, "name": "bolt", "start": 0, @@ -302,9 +343,12 @@ description: Result of parsing scale_after_fillet.kcl "body": { "body": [ { + "commentStart": 268, "declaration": { + "commentStart": 309, "end": 0, "id": { + "commentStart": 309, "end": 0, "name": "boltHead", "start": 0, @@ -315,6 +359,7 @@ description: Result of parsing scale_after_fillet.kcl { "arguments": [ { + "commentStart": 334, "end": 0, "raw": "'XZ'", "start": 0, @@ -324,11 +369,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 320, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 320, "end": 0, "start": 0, "type": "CallExpression", @@ -339,14 +386,17 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 354, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 363, "elements": [ { + "commentStart": 364, "end": 0, "raw": "0", "start": 0, @@ -358,6 +408,7 @@ description: Result of parsing scale_after_fillet.kcl } }, { + "commentStart": 367, "end": 0, "raw": "0", "start": 0, @@ -378,14 +429,17 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 371, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 380, "end": 0, "left": { + "commentStart": 380, "end": 0, "name": "boltHeadDiameter", "start": 0, @@ -394,6 +448,7 @@ description: Result of parsing scale_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 399, "end": 0, "raw": "2", "start": 0, @@ -412,12 +467,14 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 402, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 408, "end": 0, "start": 0, "type": "TagDeclarator", @@ -427,11 +484,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 347, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 347, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -443,6 +502,7 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 433, "end": 0, "name": "length", "start": 0, @@ -450,12 +510,14 @@ description: Result of parsing scale_after_fillet.kcl }, "arg": { "argument": { + "commentStart": 443, "end": 0, "name": "boltHeadLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 442, "end": 0, "operator": "-", "start": 0, @@ -465,11 +527,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 425, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 425, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -481,12 +545,14 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 473, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 482, "end": 0, "raw": "0.020", "start": 0, @@ -501,14 +567,17 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 489, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 496, "elements": [ { + "commentStart": 497, "end": 0, "name": "topEdge", "start": 0, @@ -518,6 +587,7 @@ description: Result of parsing scale_after_fillet.kcl { "arguments": [ { + "commentStart": 522, "end": 0, "name": "topEdge", "start": 0, @@ -526,11 +596,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 506, "end": 0, "name": "getOppositeEdge", "start": 0, "type": "Identifier" }, + "commentStart": 506, "end": 0, "start": 0, "type": "CallExpression", @@ -545,11 +617,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 466, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 466, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -557,11 +631,13 @@ description: Result of parsing scale_after_fillet.kcl "unlabeled": null } ], + "commentStart": 320, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "3": [ { + "commentStart": 534, "end": 0, "start": 0, "type": "NonCodeNode", @@ -584,14 +660,20 @@ description: Result of parsing scale_after_fillet.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Create the head of the cap screw" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 596, "declaration": { + "commentStart": 596, "end": 0, "id": { + "commentStart": 596, "end": 0, "name": "hexPatternSketch", "start": 0, @@ -602,6 +684,7 @@ description: Result of parsing scale_after_fillet.kcl { "arguments": [ { + "commentStart": 629, "end": 0, "name": "boltHead", "start": 0, @@ -609,6 +692,7 @@ description: Result of parsing scale_after_fillet.kcl "type": "Identifier" }, { + "commentStart": 639, "end": 0, "raw": "'start'", "start": 0, @@ -618,11 +702,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 615, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 615, "end": 0, "start": 0, "type": "CallExpression", @@ -631,10 +717,13 @@ description: Result of parsing scale_after_fillet.kcl { "arguments": [ { + "commentStart": 670, "elements": [ { + "commentStart": 681, "end": 0, "left": { + "commentStart": 681, "end": 0, "name": "boltHexDrive", "start": 0, @@ -643,6 +732,7 @@ description: Result of parsing scale_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 696, "end": 0, "raw": "2", "start": 0, @@ -658,8 +748,10 @@ description: Result of parsing scale_after_fillet.kcl "type": "BinaryExpression" }, { + "commentStart": 708, "end": 0, "left": { + "commentStart": 708, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -668,6 +760,7 @@ description: Result of parsing scale_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 728, "end": 0, "raw": "2", "start": 0, @@ -689,6 +782,7 @@ description: Result of parsing scale_after_fillet.kcl "type": "ArrayExpression" }, { + "commentStart": 740, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -696,11 +790,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 655, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 655, "end": 0, "start": 0, "type": "CallExpression", @@ -709,11 +805,14 @@ description: Result of parsing scale_after_fillet.kcl { "arguments": [ { + "commentStart": 761, "end": 0, "properties": [ { + "commentStart": 772, "end": 0, "key": { + "commentStart": 772, "end": 0, "name": "angle", "start": 0, @@ -722,6 +821,7 @@ description: Result of parsing scale_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 780, "end": 0, "raw": "270", "start": 0, @@ -734,8 +834,10 @@ description: Result of parsing scale_after_fillet.kcl } }, { + "commentStart": 794, "end": 0, "key": { + "commentStart": 794, "end": 0, "name": "length", "start": 0, @@ -744,6 +846,7 @@ description: Result of parsing scale_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 803, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -757,6 +860,7 @@ description: Result of parsing scale_after_fillet.kcl "type": "ObjectExpression" }, { + "commentStart": 831, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -764,11 +868,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 750, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 750, "end": 0, "start": 0, "type": "CallExpression", @@ -777,11 +883,14 @@ description: Result of parsing scale_after_fillet.kcl { "arguments": [ { + "commentStart": 852, "end": 0, "properties": [ { + "commentStart": 863, "end": 0, "key": { + "commentStart": 863, "end": 0, "name": "angle", "start": 0, @@ -790,6 +899,7 @@ description: Result of parsing scale_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 871, "end": 0, "raw": "210", "start": 0, @@ -802,8 +912,10 @@ description: Result of parsing scale_after_fillet.kcl } }, { + "commentStart": 885, "end": 0, "key": { + "commentStart": 885, "end": 0, "name": "length", "start": 0, @@ -812,6 +924,7 @@ description: Result of parsing scale_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 894, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -825,6 +938,7 @@ description: Result of parsing scale_after_fillet.kcl "type": "ObjectExpression" }, { + "commentStart": 922, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -832,11 +946,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 841, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 841, "end": 0, "start": 0, "type": "CallExpression", @@ -845,11 +961,14 @@ description: Result of parsing scale_after_fillet.kcl { "arguments": [ { + "commentStart": 943, "end": 0, "properties": [ { + "commentStart": 954, "end": 0, "key": { + "commentStart": 954, "end": 0, "name": "angle", "start": 0, @@ -858,6 +977,7 @@ description: Result of parsing scale_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 962, "end": 0, "raw": "150", "start": 0, @@ -870,8 +990,10 @@ description: Result of parsing scale_after_fillet.kcl } }, { + "commentStart": 976, "end": 0, "key": { + "commentStart": 976, "end": 0, "name": "length", "start": 0, @@ -880,6 +1002,7 @@ description: Result of parsing scale_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 985, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -893,6 +1016,7 @@ description: Result of parsing scale_after_fillet.kcl "type": "ObjectExpression" }, { + "commentStart": 1013, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -900,11 +1024,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 932, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 932, "end": 0, "start": 0, "type": "CallExpression", @@ -913,11 +1039,14 @@ description: Result of parsing scale_after_fillet.kcl { "arguments": [ { + "commentStart": 1034, "end": 0, "properties": [ { + "commentStart": 1045, "end": 0, "key": { + "commentStart": 1045, "end": 0, "name": "angle", "start": 0, @@ -926,6 +1055,7 @@ description: Result of parsing scale_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1053, "end": 0, "raw": "90", "start": 0, @@ -938,8 +1068,10 @@ description: Result of parsing scale_after_fillet.kcl } }, { + "commentStart": 1066, "end": 0, "key": { + "commentStart": 1066, "end": 0, "name": "length", "start": 0, @@ -948,6 +1080,7 @@ description: Result of parsing scale_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1075, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -961,6 +1094,7 @@ description: Result of parsing scale_after_fillet.kcl "type": "ObjectExpression" }, { + "commentStart": 1103, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -968,11 +1102,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 1023, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1023, "end": 0, "start": 0, "type": "CallExpression", @@ -981,11 +1117,14 @@ description: Result of parsing scale_after_fillet.kcl { "arguments": [ { + "commentStart": 1124, "end": 0, "properties": [ { + "commentStart": 1135, "end": 0, "key": { + "commentStart": 1135, "end": 0, "name": "angle", "start": 0, @@ -994,6 +1133,7 @@ description: Result of parsing scale_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1143, "end": 0, "raw": "30", "start": 0, @@ -1006,8 +1146,10 @@ description: Result of parsing scale_after_fillet.kcl } }, { + "commentStart": 1156, "end": 0, "key": { + "commentStart": 1156, "end": 0, "name": "length", "start": 0, @@ -1016,6 +1158,7 @@ description: Result of parsing scale_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1165, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -1029,6 +1172,7 @@ description: Result of parsing scale_after_fillet.kcl "type": "ObjectExpression" }, { + "commentStart": 1193, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1036,11 +1180,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 1113, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1113, "end": 0, "start": 0, "type": "CallExpression", @@ -1049,11 +1195,13 @@ description: Result of parsing scale_after_fillet.kcl { "arguments": [], "callee": { + "commentStart": 1203, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1203, "end": 0, "start": 0, "type": "CallExpression", @@ -1064,21 +1212,25 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1226, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1235, "end": 0, "left": { "argument": { + "commentStart": 1236, "end": 0, "name": "boltHeadLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1235, "end": 0, "operator": "-", "start": 0, @@ -1087,6 +1239,7 @@ description: Result of parsing scale_after_fillet.kcl }, "operator": "*", "right": { + "commentStart": 1253, "end": 0, "raw": "0.75", "start": 0, @@ -1104,11 +1257,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 1218, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1218, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1116,6 +1271,7 @@ description: Result of parsing scale_after_fillet.kcl "unlabeled": null } ], + "commentStart": 615, "end": 0, "start": 0, "type": "PipeExpression", @@ -1131,9 +1287,12 @@ description: Result of parsing scale_after_fillet.kcl "type": "VariableDeclaration" }, { + "commentStart": 1258, "declaration": { + "commentStart": 1262, "end": 0, "id": { + "commentStart": 1262, "end": 0, "name": "boltBody", "start": 0, @@ -1144,6 +1303,7 @@ description: Result of parsing scale_after_fillet.kcl { "arguments": [ { + "commentStart": 1287, "end": 0, "name": "boltHead", "start": 0, @@ -1151,6 +1311,7 @@ description: Result of parsing scale_after_fillet.kcl "type": "Identifier" }, { + "commentStart": 1297, "end": 0, "raw": "'end'", "start": 0, @@ -1160,11 +1321,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 1273, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1273, "end": 0, "start": 0, "type": "CallExpression", @@ -1175,14 +1338,17 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1318, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1327, "elements": [ { + "commentStart": 1328, "end": 0, "raw": "0", "start": 0, @@ -1194,6 +1360,7 @@ description: Result of parsing scale_after_fillet.kcl } }, { + "commentStart": 1331, "end": 0, "raw": "0", "start": 0, @@ -1214,14 +1381,17 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1335, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1344, "end": 0, "left": { + "commentStart": 1344, "end": 0, "name": "boltDiameter", "start": 0, @@ -1230,6 +1400,7 @@ description: Result of parsing scale_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 1359, "end": 0, "raw": "2", "start": 0, @@ -1248,12 +1419,14 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1362, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1368, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1263,11 +1436,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 1311, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1311, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1279,12 +1454,14 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1396, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1405, "end": 0, "name": "boltLength", "start": 0, @@ -1294,11 +1471,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 1388, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1388, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1310,12 +1489,14 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1431, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1440, "end": 0, "raw": ".020", "start": 0, @@ -1330,16 +1511,19 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1446, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1453, "elements": [ { "arguments": [ { + "commentStart": 1470, "end": 0, "name": "filletEdge", "start": 0, @@ -1348,11 +1532,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 1454, "end": 0, "name": "getOppositeEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1454, "end": 0, "start": 0, "type": "CallExpression", @@ -1367,11 +1553,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 1424, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1424, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1383,12 +1571,14 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1502, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1510, "end": 0, "raw": "\"#4dd043\"", "start": 0, @@ -1400,12 +1590,14 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1521, "end": 0, "name": "metalness", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1533, "end": 0, "raw": "90", "start": 0, @@ -1420,12 +1612,14 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1537, "end": 0, "name": "roughness", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1549, "end": 0, "raw": "90", "start": 0, @@ -1439,11 +1633,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 1491, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, + "commentStart": 1491, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1451,6 +1647,7 @@ description: Result of parsing scale_after_fillet.kcl "unlabeled": null } ], + "commentStart": 1273, "end": 0, "start": 0, "type": "PipeExpression", @@ -1467,23 +1664,27 @@ description: Result of parsing scale_after_fillet.kcl }, { "argument": { + "commentStart": 1563, "end": 0, "name": "boltBody", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1552, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 268, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 1258, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1494,6 +1695,7 @@ description: Result of parsing scale_after_fillet.kcl ], "2": [ { + "commentStart": 1552, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1503,21 +1705,11 @@ description: Result of parsing scale_after_fillet.kcl } ] }, - "startNodes": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Create the head of the cap screw", - "style": "line" - } - } - ] + "startNodes": [] }, "start": 0 }, + "commentStart": 264, "end": 0, "params": [], "start": 0, @@ -1535,17 +1727,20 @@ description: Result of parsing scale_after_fillet.kcl "visibility": "export" }, { + "commentStart": 1573, "end": 0, "expression": { "body": [ { "arguments": [], "callee": { + "commentStart": 1575, "end": 0, "name": "bolt", "start": 0, "type": "Identifier" }, + "commentStart": 1575, "end": 0, "start": 0, "type": "CallExpression", @@ -1556,14 +1751,17 @@ description: Result of parsing scale_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1593, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1601, "elements": [ { + "commentStart": 1602, "end": 0, "raw": "3.14", "start": 0, @@ -1575,6 +1773,7 @@ description: Result of parsing scale_after_fillet.kcl } }, { + "commentStart": 1608, "end": 0, "raw": "3.14", "start": 0, @@ -1586,6 +1785,7 @@ description: Result of parsing scale_after_fillet.kcl } }, { + "commentStart": 1614, "end": 0, "raw": "3.14", "start": 0, @@ -1605,11 +1805,13 @@ description: Result of parsing scale_after_fillet.kcl } ], "callee": { + "commentStart": 1587, "end": 0, "name": "scale", "start": 0, "type": "Identifier" }, + "commentStart": 1587, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1617,11 +1819,13 @@ description: Result of parsing scale_after_fillet.kcl "unlabeled": null } ], + "commentStart": 1575, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 1620, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1644,11 +1848,13 @@ description: Result of parsing scale_after_fillet.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "6": [ { + "commentStart": 248, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1659,6 +1865,7 @@ description: Result of parsing scale_after_fillet.kcl ], "7": [ { + "commentStart": 1573, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/sketch-on-chamfer-two-times-different-order/ast.snap b/rust/kcl-lib/tests/sketch-on-chamfer-two-times-different-order/ast.snap index 0f7f94925..c69e37eed 100644 --- a/rust/kcl-lib/tests/sketch-on-chamfer-two-times-different-order/ast.snap +++ b/rust/kcl-lib/tests/sketch-on-chamfer-two-times-different-order/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "sketch001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 26, "end": 0, "raw": "'XZ'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 12, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 12, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 52, "elements": [ { + "commentStart": 53, "end": 0, "raw": "75.8", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } }, { + "commentStart": 59, "end": 0, "raw": "317.2", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "ArrayExpression" }, { + "commentStart": 67, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 37, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 37, "end": 0, "start": 0, "type": "CallExpression", @@ -91,8 +103,10 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 116, "elements": [ { + "commentStart": 117, "end": 0, "raw": "0", "start": 0, @@ -104,6 +118,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } }, { + "commentStart": 120, "end": 0, "raw": "268.43", "start": 0, @@ -121,12 +136,14 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "ArrayExpression" }, { + "commentStart": 129, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 132, "end": 0, "start": 0, "type": "TagDeclarator", @@ -135,11 +152,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 105, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 105, "end": 0, "start": 0, "type": "CallExpression", @@ -148,12 +167,15 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 171, "elements": [ { + "commentStart": 180, "end": 0, "left": { "arguments": [ { + "commentStart": 187, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -162,11 +184,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 180, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 180, "end": 0, "start": 0, "type": "CallExpression", @@ -174,6 +198,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl }, "operator": "-", "right": { + "commentStart": 211, "end": 0, "raw": "90", "start": 0, @@ -189,6 +214,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "BinaryExpression" }, { + "commentStart": 222, "end": 0, "raw": "217.26", "start": 0, @@ -206,12 +232,14 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "ArrayExpression" }, { + "commentStart": 237, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 240, "end": 0, "start": 0, "type": "TagDeclarator", @@ -220,11 +248,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 160, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 160, "end": 0, "start": 0, "type": "CallExpression", @@ -233,10 +263,12 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 264, "elements": [ { "arguments": [ { + "commentStart": 280, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -245,11 +277,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 273, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 273, "end": 0, "start": 0, "type": "CallExpression", @@ -259,6 +293,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "argument": { "arguments": [ { + "commentStart": 318, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -267,16 +302,19 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 311, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 311, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 310, "end": 0, "operator": "-", "start": 0, @@ -290,6 +328,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "ArrayExpression" }, { + "commentStart": 348, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -297,11 +336,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 253, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 253, "end": 0, "start": 0, "type": "CallExpression", @@ -312,16 +353,19 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "type": "LabeledArg", "label": { + "commentStart": 361, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 375, "elements": [ { "arguments": [ { + "commentStart": 390, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -329,11 +373,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 376, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 376, "end": 0, "start": 0, "type": "CallExpression", @@ -342,6 +388,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 408, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -349,11 +396,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 394, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 394, "end": 0, "start": 0, "type": "CallExpression", @@ -369,12 +418,14 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "type": "LabeledArg", "label": { + "commentStart": 413, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 419, "end": 0, "start": 0, "type": "TagDeclarator", @@ -384,11 +435,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 356, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 356, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -398,6 +451,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 438, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -405,22 +459,26 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 432, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 432, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 12, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 69, "end": 0, "start": 0, "type": "NonCodeNode", @@ -448,9 +506,12 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "VariableDeclaration" }, { + "commentStart": 441, "declaration": { + "commentStart": 441, "end": 0, "id": { + "commentStart": 441, "end": 0, "name": "extrude001", "start": 0, @@ -463,12 +524,14 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "type": "LabeledArg", "label": { + "commentStart": 473, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 482, "end": 0, "raw": "100", "start": 0, @@ -482,16 +545,19 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 454, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 454, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 462, "end": 0, "name": "sketch001", "start": 0, @@ -504,12 +570,14 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "type": "LabeledArg", "label": { + "commentStart": 499, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 508, "end": 0, "raw": "20", "start": 0, @@ -524,14 +592,17 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "type": "LabeledArg", "label": { + "commentStart": 512, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 519, "elements": [ { + "commentStart": 520, "end": 0, "name": "seg01", "start": 0, @@ -547,11 +618,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 492, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 492, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -563,12 +636,14 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "type": "LabeledArg", "label": { + "commentStart": 541, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 550, "end": 0, "raw": "50", "start": 0, @@ -583,16 +658,19 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "type": "LabeledArg", "label": { + "commentStart": 554, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 561, "elements": [ { "arguments": [ { + "commentStart": 578, "end": 0, "name": "seg01", "start": 0, @@ -601,11 +679,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 562, "end": 0, "name": "getOppositeEdge", "start": 0, "type": "Identifier" }, + "commentStart": 562, "end": 0, "start": 0, "type": "CallExpression", @@ -621,12 +701,14 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "type": "LabeledArg", "label": { + "commentStart": 587, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 593, "end": 0, "start": 0, "type": "TagDeclarator", @@ -636,11 +718,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 533, "end": 0, "name": "chamfer", "start": 0, "type": "Identifier" }, + "commentStart": 533, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -652,12 +736,14 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "type": "LabeledArg", "label": { + "commentStart": 614, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 623, "end": 0, "raw": "50", "start": 0, @@ -672,14 +758,17 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "type": "LabeledArg", "label": { + "commentStart": 627, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 634, "elements": [ { + "commentStart": 635, "end": 0, "name": "seg02", "start": 0, @@ -696,12 +785,14 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "type": "LabeledArg", "label": { + "commentStart": 643, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 649, "end": 0, "start": 0, "type": "TagDeclarator", @@ -711,11 +802,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 606, "end": 0, "name": "chamfer", "start": 0, "type": "Identifier" }, + "commentStart": 606, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -723,6 +816,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "unlabeled": null } ], + "commentStart": 454, "end": 0, "start": 0, "type": "PipeExpression", @@ -738,9 +832,12 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "VariableDeclaration" }, { + "commentStart": 656, "declaration": { + "commentStart": 658, "end": 0, "id": { + "commentStart": 658, "end": 0, "name": "sketch003", "start": 0, @@ -751,6 +848,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 684, "end": 0, "name": "extrude001", "start": 0, @@ -758,6 +856,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "Identifier" }, { + "commentStart": 696, "end": 0, "name": "seg04", "start": 0, @@ -766,11 +865,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 670, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 670, "end": 0, "start": 0, "type": "CallExpression", @@ -779,9 +880,11 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 723, "elements": [ { "argument": { + "commentStart": 725, "end": 0, "raw": "69.1", "start": 0, @@ -792,6 +895,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "suffix": "None" } }, + "commentStart": 724, "end": 0, "operator": "-", "start": 0, @@ -799,6 +903,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "UnaryExpression" }, { + "commentStart": 731, "end": 0, "raw": "277.34", "start": 0, @@ -816,6 +921,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "ArrayExpression" }, { + "commentStart": 740, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -823,11 +929,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 708, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 708, "end": 0, "start": 0, "type": "CallExpression", @@ -836,8 +944,10 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 759, "elements": [ { + "commentStart": 760, "end": 0, "raw": "0", "start": 0, @@ -849,6 +959,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } }, { + "commentStart": 763, "end": 0, "raw": "41.48", "start": 0, @@ -866,12 +977,14 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "ArrayExpression" }, { + "commentStart": 771, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 774, "end": 0, "start": 0, "type": "TagDeclarator", @@ -880,11 +993,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 748, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 748, "end": 0, "start": 0, "type": "CallExpression", @@ -893,12 +1008,15 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 813, "elements": [ { + "commentStart": 822, "end": 0, "left": { "arguments": [ { + "commentStart": 829, "end": 0, "name": "rectangleSegmentA003", "start": 0, @@ -907,11 +1025,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 822, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 822, "end": 0, "start": 0, "type": "CallExpression", @@ -919,6 +1039,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl }, "operator": "-", "right": { + "commentStart": 853, "end": 0, "raw": "90", "start": 0, @@ -934,6 +1055,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "BinaryExpression" }, { + "commentStart": 864, "end": 0, "raw": "104.8", "start": 0, @@ -951,12 +1073,14 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "ArrayExpression" }, { + "commentStart": 878, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 881, "end": 0, "start": 0, "type": "TagDeclarator", @@ -965,11 +1089,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 802, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 802, "end": 0, "start": 0, "type": "CallExpression", @@ -978,10 +1104,12 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 920, "elements": [ { "arguments": [ { + "commentStart": 936, "end": 0, "name": "rectangleSegmentA003", "start": 0, @@ -990,11 +1118,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 929, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 929, "end": 0, "start": 0, "type": "CallExpression", @@ -1004,6 +1134,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "argument": { "arguments": [ { + "commentStart": 974, "end": 0, "name": "rectangleSegmentA003", "start": 0, @@ -1012,16 +1143,19 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 967, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 967, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 966, "end": 0, "operator": "-", "start": 0, @@ -1035,12 +1169,14 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "ArrayExpression" }, { + "commentStart": 1004, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1007, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1049,11 +1185,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 909, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 909, "end": 0, "start": 0, "type": "CallExpression", @@ -1064,16 +1202,19 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "type": "LabeledArg", "label": { + "commentStart": 1040, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1054, "elements": [ { "arguments": [ { + "commentStart": 1069, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1081,11 +1222,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1055, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 1055, "end": 0, "start": 0, "type": "CallExpression", @@ -1094,6 +1237,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 1087, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1101,11 +1245,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1073, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 1073, "end": 0, "start": 0, "type": "CallExpression", @@ -1120,11 +1266,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1035, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1035, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1134,6 +1282,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 1103, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1141,17 +1290,20 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1097, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1097, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 670, "end": 0, "start": 0, "type": "PipeExpression", @@ -1167,9 +1319,12 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "VariableDeclaration" }, { + "commentStart": 1106, "declaration": { + "commentStart": 1106, "end": 0, "id": { + "commentStart": 1106, "end": 0, "name": "sketch002", "start": 0, @@ -1180,6 +1335,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 1132, "end": 0, "name": "extrude001", "start": 0, @@ -1187,6 +1343,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "Identifier" }, { + "commentStart": 1144, "end": 0, "name": "seg03", "start": 0, @@ -1195,11 +1352,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1118, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1118, "end": 0, "start": 0, "type": "CallExpression", @@ -1208,8 +1367,10 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 1171, "elements": [ { + "commentStart": 1172, "end": 0, "raw": "159.25", "start": 0, @@ -1221,6 +1382,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } }, { + "commentStart": 1180, "end": 0, "raw": "278.35", "start": 0, @@ -1238,6 +1400,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "ArrayExpression" }, { + "commentStart": 1189, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1245,11 +1408,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1156, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1156, "end": 0, "start": 0, "type": "CallExpression", @@ -1258,8 +1423,10 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 1208, "elements": [ { + "commentStart": 1209, "end": 0, "raw": "0", "start": 0, @@ -1271,6 +1438,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } }, { + "commentStart": 1212, "end": 0, "raw": "40.82", "start": 0, @@ -1288,12 +1456,14 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "ArrayExpression" }, { + "commentStart": 1220, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1223, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1302,11 +1472,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1197, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1197, "end": 0, "start": 0, "type": "CallExpression", @@ -1315,12 +1487,15 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 1262, "elements": [ { + "commentStart": 1271, "end": 0, "left": { "arguments": [ { + "commentStart": 1278, "end": 0, "name": "rectangleSegmentA002", "start": 0, @@ -1329,11 +1504,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1271, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 1271, "end": 0, "start": 0, "type": "CallExpression", @@ -1341,6 +1518,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl }, "operator": "-", "right": { + "commentStart": 1302, "end": 0, "raw": "90", "start": 0, @@ -1356,6 +1534,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "BinaryExpression" }, { + "commentStart": 1313, "end": 0, "raw": "132.27", "start": 0, @@ -1373,12 +1552,14 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "ArrayExpression" }, { + "commentStart": 1328, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1331, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1387,11 +1568,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1251, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1251, "end": 0, "start": 0, "type": "CallExpression", @@ -1400,10 +1583,12 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 1370, "elements": [ { "arguments": [ { + "commentStart": 1386, "end": 0, "name": "rectangleSegmentA002", "start": 0, @@ -1412,11 +1597,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1379, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 1379, "end": 0, "start": 0, "type": "CallExpression", @@ -1426,6 +1613,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "argument": { "arguments": [ { + "commentStart": 1424, "end": 0, "name": "rectangleSegmentA002", "start": 0, @@ -1434,16 +1622,19 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1417, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1417, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 1416, "end": 0, "operator": "-", "start": 0, @@ -1457,12 +1648,14 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "ArrayExpression" }, { + "commentStart": 1454, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1457, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1471,11 +1664,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1359, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1359, "end": 0, "start": 0, "type": "CallExpression", @@ -1486,16 +1681,19 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "type": "LabeledArg", "label": { + "commentStart": 1490, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1504, "elements": [ { "arguments": [ { + "commentStart": 1519, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1503,11 +1701,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1505, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 1505, "end": 0, "start": 0, "type": "CallExpression", @@ -1516,6 +1716,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 1537, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1523,11 +1724,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1523, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 1523, "end": 0, "start": 0, "type": "CallExpression", @@ -1542,11 +1745,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1485, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1485, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1556,6 +1761,7 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "arguments": [ { + "commentStart": 1553, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1563,17 +1769,20 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1547, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1547, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1118, "end": 0, "start": 0, "type": "PipeExpression", @@ -1589,9 +1798,12 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "VariableDeclaration" }, { + "commentStart": 1556, "declaration": { + "commentStart": 1556, "end": 0, "id": { + "commentStart": 1556, "end": 0, "name": "extrude002", "start": 0, @@ -1602,12 +1814,14 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl { "type": "LabeledArg", "label": { + "commentStart": 1588, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1597, "end": 0, "raw": "50", "start": 0, @@ -1621,16 +1835,19 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl } ], "callee": { + "commentStart": 1569, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1569, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1577, "end": 0, "name": "sketch002", "start": 0, @@ -1648,11 +1865,13 @@ description: Result of parsing sketch-on-chamfer-two-times-different-order.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 656, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/sketch-on-chamfer-two-times-different-order/program_memory.snap b/rust/kcl-lib/tests/sketch-on-chamfer-two-times-different-order/program_memory.snap index 3b3690f78..56971c5a0 100644 --- a/rust/kcl-lib/tests/sketch-on-chamfer-two-times-different-order/program_memory.snap +++ b/rust/kcl-lib/tests/sketch-on-chamfer-two-times-different-order/program_memory.snap @@ -15,6 +15,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -27,6 +28,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -46,6 +48,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -58,6 +61,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 593, "end": 599, "start": 593, "type": "TagDeclarator", @@ -70,6 +74,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 649, "end": 655, "start": 649, "type": "TagDeclarator", @@ -92,6 +97,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 317.2 ], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -116,6 +122,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 317.2 ], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -159,6 +166,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 99.94 ], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -285,6 +293,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "length": 50.0, "edgeId": "[uuid]", "tag": { + "commentStart": 593, "end": 599, "start": 593, "type": "TagDeclarator", @@ -297,6 +306,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "length": 50.0, "edgeId": "[uuid]", "tag": { + "commentStart": 649, "end": 655, "start": 649, "type": "TagDeclarator", @@ -321,6 +331,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1223, "end": 1244, "start": 1223, "type": "TagDeclarator", @@ -333,6 +344,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1331, "end": 1352, "start": 1331, "type": "TagDeclarator", @@ -345,6 +357,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1457, "end": 1478, "start": 1457, "type": "TagDeclarator", @@ -374,6 +387,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 278.35 ], "tag": { + "commentStart": 1223, "end": 1244, "start": 1223, "type": "TagDeclarator", @@ -398,6 +412,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 278.35 ], "tag": { + "commentStart": 1331, "end": 1352, "start": 1331, "type": "TagDeclarator", @@ -422,6 +437,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 146.08 ], "tag": { + "commentStart": 1457, "end": 1478, "start": 1457, "type": "TagDeclarator", @@ -505,6 +521,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -517,6 +534,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -536,6 +554,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -548,6 +567,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 593, "end": 599, "start": 593, "type": "TagDeclarator", @@ -560,6 +580,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 649, "end": 655, "start": 649, "type": "TagDeclarator", @@ -582,6 +603,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 317.2 ], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -606,6 +628,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 317.2 ], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -649,6 +672,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 99.94 ], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -775,6 +799,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "length": 50.0, "edgeId": "[uuid]", "tag": { + "commentStart": 593, "end": 599, "start": 593, "type": "TagDeclarator", @@ -787,6 +812,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "length": 50.0, "edgeId": "[uuid]", "tag": { + "commentStart": 649, "end": 655, "start": 649, "type": "TagDeclarator", @@ -919,6 +945,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 317.2 ], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -943,6 +970,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 317.2 ], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -986,6 +1014,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 99.94 ], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -1112,6 +1141,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 278.35 ], "tag": { + "commentStart": 1223, "end": 1244, "start": 1223, "type": "TagDeclarator", @@ -1136,6 +1166,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 278.35 ], "tag": { + "commentStart": 1331, "end": 1352, "start": 1331, "type": "TagDeclarator", @@ -1160,6 +1191,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 146.08 ], "tag": { + "commentStart": 1457, "end": 1478, "start": 1457, "type": "TagDeclarator", @@ -1243,6 +1275,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -1255,6 +1288,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -1274,6 +1308,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -1286,6 +1321,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 593, "end": 599, "start": 593, "type": "TagDeclarator", @@ -1298,6 +1334,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 649, "end": 655, "start": 649, "type": "TagDeclarator", @@ -1320,6 +1357,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 317.2 ], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -1344,6 +1382,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 317.2 ], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -1387,6 +1426,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 99.94 ], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -1513,6 +1553,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "length": 50.0, "edgeId": "[uuid]", "tag": { + "commentStart": 593, "end": 599, "start": 593, "type": "TagDeclarator", @@ -1525,6 +1566,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "length": 50.0, "edgeId": "[uuid]", "tag": { + "commentStart": 649, "end": 655, "start": 649, "type": "TagDeclarator", @@ -1595,6 +1637,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 277.34 ], "tag": { + "commentStart": 774, "end": 795, "start": 774, "type": "TagDeclarator", @@ -1619,6 +1662,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 277.34 ], "tag": { + "commentStart": 881, "end": 902, "start": 881, "type": "TagDeclarator", @@ -1643,6 +1687,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 172.54 ], "tag": { + "commentStart": 1007, "end": 1028, "start": 1007, "type": "TagDeclarator", @@ -1726,6 +1771,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -1738,6 +1784,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -1757,6 +1804,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -1769,6 +1817,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 593, "end": 599, "start": 593, "type": "TagDeclarator", @@ -1781,6 +1830,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 649, "end": 655, "start": 649, "type": "TagDeclarator", @@ -1803,6 +1853,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 317.2 ], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -1827,6 +1878,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 317.2 ], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -1870,6 +1922,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif 99.94 ], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -1996,6 +2049,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "length": 50.0, "edgeId": "[uuid]", "tag": { + "commentStart": 593, "end": 599, "start": 593, "type": "TagDeclarator", @@ -2008,6 +2062,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times-dif "length": 50.0, "edgeId": "[uuid]", "tag": { + "commentStart": 649, "end": 655, "start": 649, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/sketch-on-chamfer-two-times/ast.snap b/rust/kcl-lib/tests/sketch-on-chamfer-two-times/ast.snap index 5adcf087c..0ae28ee7d 100644 --- a/rust/kcl-lib/tests/sketch-on-chamfer-two-times/ast.snap +++ b/rust/kcl-lib/tests/sketch-on-chamfer-two-times/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "sketch001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 26, "end": 0, "raw": "'XZ'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 12, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 12, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 52, "elements": [ { + "commentStart": 53, "end": 0, "raw": "75.8", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } }, { + "commentStart": 59, "end": 0, "raw": "317.2", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "ArrayExpression" }, { + "commentStart": 67, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 37, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 37, "end": 0, "start": 0, "type": "CallExpression", @@ -91,8 +103,10 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 116, "elements": [ { + "commentStart": 117, "end": 0, "raw": "0", "start": 0, @@ -104,6 +118,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } }, { + "commentStart": 120, "end": 0, "raw": "268.43", "start": 0, @@ -121,12 +136,14 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "ArrayExpression" }, { + "commentStart": 129, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 132, "end": 0, "start": 0, "type": "TagDeclarator", @@ -135,11 +152,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 105, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 105, "end": 0, "start": 0, "type": "CallExpression", @@ -148,12 +167,15 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 171, "elements": [ { + "commentStart": 180, "end": 0, "left": { "arguments": [ { + "commentStart": 187, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -162,11 +184,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 180, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 180, "end": 0, "start": 0, "type": "CallExpression", @@ -174,6 +198,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl }, "operator": "-", "right": { + "commentStart": 211, "end": 0, "raw": "90", "start": 0, @@ -189,6 +214,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "BinaryExpression" }, { + "commentStart": 222, "end": 0, "raw": "217.26", "start": 0, @@ -206,12 +232,14 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "ArrayExpression" }, { + "commentStart": 237, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 240, "end": 0, "start": 0, "type": "TagDeclarator", @@ -220,11 +248,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 160, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 160, "end": 0, "start": 0, "type": "CallExpression", @@ -233,10 +263,12 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 264, "elements": [ { "arguments": [ { + "commentStart": 280, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -245,11 +277,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 273, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 273, "end": 0, "start": 0, "type": "CallExpression", @@ -259,6 +293,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "argument": { "arguments": [ { + "commentStart": 318, "end": 0, "name": "rectangleSegmentA001", "start": 0, @@ -267,16 +302,19 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 311, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 311, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 310, "end": 0, "operator": "-", "start": 0, @@ -290,6 +328,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "ArrayExpression" }, { + "commentStart": 348, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -297,11 +336,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 253, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 253, "end": 0, "start": 0, "type": "CallExpression", @@ -312,16 +353,19 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "type": "LabeledArg", "label": { + "commentStart": 361, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 375, "elements": [ { "arguments": [ { + "commentStart": 390, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -329,11 +373,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 376, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 376, "end": 0, "start": 0, "type": "CallExpression", @@ -342,6 +388,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 408, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -349,11 +396,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 394, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 394, "end": 0, "start": 0, "type": "CallExpression", @@ -369,12 +418,14 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "type": "LabeledArg", "label": { + "commentStart": 413, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 419, "end": 0, "start": 0, "type": "TagDeclarator", @@ -384,11 +435,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 356, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 356, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -398,6 +451,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 438, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -405,22 +459,26 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 432, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 432, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 12, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 69, "end": 0, "start": 0, "type": "NonCodeNode", @@ -448,9 +506,12 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "VariableDeclaration" }, { + "commentStart": 441, "declaration": { + "commentStart": 441, "end": 0, "id": { + "commentStart": 441, "end": 0, "name": "extrude001", "start": 0, @@ -463,12 +524,14 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "type": "LabeledArg", "label": { + "commentStart": 473, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 482, "end": 0, "raw": "100", "start": 0, @@ -482,16 +545,19 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 454, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 454, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 462, "end": 0, "name": "sketch001", "start": 0, @@ -504,12 +570,14 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "type": "LabeledArg", "label": { + "commentStart": 499, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 508, "end": 0, "raw": "20", "start": 0, @@ -524,14 +592,17 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "type": "LabeledArg", "label": { + "commentStart": 512, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 519, "elements": [ { + "commentStart": 520, "end": 0, "name": "seg01", "start": 0, @@ -547,11 +618,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 492, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 492, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -563,12 +636,14 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "type": "LabeledArg", "label": { + "commentStart": 541, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 550, "end": 0, "raw": "50", "start": 0, @@ -583,14 +658,17 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "type": "LabeledArg", "label": { + "commentStart": 554, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 561, "elements": [ { + "commentStart": 562, "end": 0, "name": "seg02", "start": 0, @@ -607,12 +685,14 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "type": "LabeledArg", "label": { + "commentStart": 570, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 576, "end": 0, "start": 0, "type": "TagDeclarator", @@ -622,11 +702,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 533, "end": 0, "name": "chamfer", "start": 0, "type": "Identifier" }, + "commentStart": 533, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -638,12 +720,14 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "type": "LabeledArg", "label": { + "commentStart": 597, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 606, "end": 0, "raw": "50", "start": 0, @@ -658,16 +742,19 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "type": "LabeledArg", "label": { + "commentStart": 610, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 617, "elements": [ { "arguments": [ { + "commentStart": 634, "end": 0, "name": "seg01", "start": 0, @@ -676,11 +763,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 618, "end": 0, "name": "getOppositeEdge", "start": 0, "type": "Identifier" }, + "commentStart": 618, "end": 0, "start": 0, "type": "CallExpression", @@ -696,12 +785,14 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "type": "LabeledArg", "label": { + "commentStart": 643, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 649, "end": 0, "start": 0, "type": "TagDeclarator", @@ -711,11 +802,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 589, "end": 0, "name": "chamfer", "start": 0, "type": "Identifier" }, + "commentStart": 589, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -723,6 +816,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "unlabeled": null } ], + "commentStart": 454, "end": 0, "start": 0, "type": "PipeExpression", @@ -738,9 +832,12 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "VariableDeclaration" }, { + "commentStart": 656, "declaration": { + "commentStart": 658, "end": 0, "id": { + "commentStart": 658, "end": 0, "name": "sketch003", "start": 0, @@ -751,6 +848,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 684, "end": 0, "name": "extrude001", "start": 0, @@ -758,6 +856,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "Identifier" }, { + "commentStart": 696, "end": 0, "name": "seg04", "start": 0, @@ -766,11 +865,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 670, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 670, "end": 0, "start": 0, "type": "CallExpression", @@ -779,9 +880,11 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 723, "elements": [ { "argument": { + "commentStart": 725, "end": 0, "raw": "69.1", "start": 0, @@ -792,6 +895,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "suffix": "None" } }, + "commentStart": 724, "end": 0, "operator": "-", "start": 0, @@ -799,6 +903,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "UnaryExpression" }, { + "commentStart": 731, "end": 0, "raw": "277.34", "start": 0, @@ -816,6 +921,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "ArrayExpression" }, { + "commentStart": 740, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -823,11 +929,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 708, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 708, "end": 0, "start": 0, "type": "CallExpression", @@ -836,8 +944,10 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 759, "elements": [ { + "commentStart": 760, "end": 0, "raw": "0", "start": 0, @@ -849,6 +959,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } }, { + "commentStart": 763, "end": 0, "raw": "41.48", "start": 0, @@ -866,12 +977,14 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "ArrayExpression" }, { + "commentStart": 771, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 774, "end": 0, "start": 0, "type": "TagDeclarator", @@ -880,11 +993,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 748, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 748, "end": 0, "start": 0, "type": "CallExpression", @@ -893,12 +1008,15 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 813, "elements": [ { + "commentStart": 822, "end": 0, "left": { "arguments": [ { + "commentStart": 829, "end": 0, "name": "rectangleSegmentA003", "start": 0, @@ -907,11 +1025,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 822, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 822, "end": 0, "start": 0, "type": "CallExpression", @@ -919,6 +1039,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl }, "operator": "-", "right": { + "commentStart": 853, "end": 0, "raw": "90", "start": 0, @@ -934,6 +1055,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "BinaryExpression" }, { + "commentStart": 864, "end": 0, "raw": "104.8", "start": 0, @@ -951,12 +1073,14 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "ArrayExpression" }, { + "commentStart": 878, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 881, "end": 0, "start": 0, "type": "TagDeclarator", @@ -965,11 +1089,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 802, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 802, "end": 0, "start": 0, "type": "CallExpression", @@ -978,10 +1104,12 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 920, "elements": [ { "arguments": [ { + "commentStart": 936, "end": 0, "name": "rectangleSegmentA003", "start": 0, @@ -990,11 +1118,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 929, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 929, "end": 0, "start": 0, "type": "CallExpression", @@ -1004,6 +1134,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "argument": { "arguments": [ { + "commentStart": 974, "end": 0, "name": "rectangleSegmentA003", "start": 0, @@ -1012,16 +1143,19 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 967, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 967, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 966, "end": 0, "operator": "-", "start": 0, @@ -1035,12 +1169,14 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "ArrayExpression" }, { + "commentStart": 1004, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1007, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1049,11 +1185,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 909, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 909, "end": 0, "start": 0, "type": "CallExpression", @@ -1064,16 +1202,19 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "type": "LabeledArg", "label": { + "commentStart": 1040, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1054, "elements": [ { "arguments": [ { + "commentStart": 1069, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1081,11 +1222,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1055, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 1055, "end": 0, "start": 0, "type": "CallExpression", @@ -1094,6 +1237,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 1087, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1101,11 +1245,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1073, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 1073, "end": 0, "start": 0, "type": "CallExpression", @@ -1120,11 +1266,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1035, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1035, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1134,6 +1282,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 1103, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1141,17 +1290,20 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1097, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1097, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 670, "end": 0, "start": 0, "type": "PipeExpression", @@ -1167,9 +1319,12 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "VariableDeclaration" }, { + "commentStart": 1106, "declaration": { + "commentStart": 1106, "end": 0, "id": { + "commentStart": 1106, "end": 0, "name": "sketch002", "start": 0, @@ -1180,6 +1335,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 1132, "end": 0, "name": "extrude001", "start": 0, @@ -1187,6 +1343,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "Identifier" }, { + "commentStart": 1144, "end": 0, "name": "seg03", "start": 0, @@ -1195,11 +1352,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1118, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1118, "end": 0, "start": 0, "type": "CallExpression", @@ -1208,8 +1367,10 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 1171, "elements": [ { + "commentStart": 1172, "end": 0, "raw": "159.25", "start": 0, @@ -1221,6 +1382,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } }, { + "commentStart": 1180, "end": 0, "raw": "278.35", "start": 0, @@ -1238,6 +1400,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "ArrayExpression" }, { + "commentStart": 1189, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1245,11 +1408,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1156, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1156, "end": 0, "start": 0, "type": "CallExpression", @@ -1258,8 +1423,10 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 1208, "elements": [ { + "commentStart": 1209, "end": 0, "raw": "0", "start": 0, @@ -1271,6 +1438,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } }, { + "commentStart": 1212, "end": 0, "raw": "40.82", "start": 0, @@ -1288,12 +1456,14 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "ArrayExpression" }, { + "commentStart": 1220, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1223, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1302,11 +1472,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1197, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1197, "end": 0, "start": 0, "type": "CallExpression", @@ -1315,12 +1487,15 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 1262, "elements": [ { + "commentStart": 1271, "end": 0, "left": { "arguments": [ { + "commentStart": 1278, "end": 0, "name": "rectangleSegmentA002", "start": 0, @@ -1329,11 +1504,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1271, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 1271, "end": 0, "start": 0, "type": "CallExpression", @@ -1341,6 +1518,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl }, "operator": "-", "right": { + "commentStart": 1302, "end": 0, "raw": "90", "start": 0, @@ -1356,6 +1534,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "BinaryExpression" }, { + "commentStart": 1313, "end": 0, "raw": "132.27", "start": 0, @@ -1373,12 +1552,14 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "ArrayExpression" }, { + "commentStart": 1328, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1331, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1387,11 +1568,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1251, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1251, "end": 0, "start": 0, "type": "CallExpression", @@ -1400,10 +1583,12 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 1370, "elements": [ { "arguments": [ { + "commentStart": 1386, "end": 0, "name": "rectangleSegmentA002", "start": 0, @@ -1412,11 +1597,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1379, "end": 0, "name": "segAng", "start": 0, "type": "Identifier" }, + "commentStart": 1379, "end": 0, "start": 0, "type": "CallExpression", @@ -1426,6 +1613,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "argument": { "arguments": [ { + "commentStart": 1424, "end": 0, "name": "rectangleSegmentA002", "start": 0, @@ -1434,16 +1622,19 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1417, "end": 0, "name": "segLen", "start": 0, "type": "Identifier" }, + "commentStart": 1417, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, + "commentStart": 1416, "end": 0, "operator": "-", "start": 0, @@ -1457,12 +1648,14 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "ArrayExpression" }, { + "commentStart": 1454, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 1457, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1471,11 +1664,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1359, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1359, "end": 0, "start": 0, "type": "CallExpression", @@ -1486,16 +1681,19 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "type": "LabeledArg", "label": { + "commentStart": 1490, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1504, "elements": [ { "arguments": [ { + "commentStart": 1519, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1503,11 +1701,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1505, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 1505, "end": 0, "start": 0, "type": "CallExpression", @@ -1516,6 +1716,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 1537, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1523,11 +1724,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1523, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 1523, "end": 0, "start": 0, "type": "CallExpression", @@ -1542,11 +1745,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1485, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1485, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1556,6 +1761,7 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "arguments": [ { + "commentStart": 1553, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1563,17 +1769,20 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1547, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1547, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 1118, "end": 0, "start": 0, "type": "PipeExpression", @@ -1589,9 +1798,12 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "VariableDeclaration" }, { + "commentStart": 1556, "declaration": { + "commentStart": 1556, "end": 0, "id": { + "commentStart": 1556, "end": 0, "name": "extrude002", "start": 0, @@ -1602,12 +1814,14 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl { "type": "LabeledArg", "label": { + "commentStart": 1588, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1597, "end": 0, "raw": "50", "start": 0, @@ -1621,16 +1835,19 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl } ], "callee": { + "commentStart": 1569, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1569, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 1577, "end": 0, "name": "sketch002", "start": 0, @@ -1648,11 +1865,13 @@ description: Result of parsing sketch-on-chamfer-two-times.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 656, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/sketch-on-chamfer-two-times/program_memory.snap b/rust/kcl-lib/tests/sketch-on-chamfer-two-times/program_memory.snap index d0a92cdde..2c2cca306 100644 --- a/rust/kcl-lib/tests/sketch-on-chamfer-two-times/program_memory.snap +++ b/rust/kcl-lib/tests/sketch-on-chamfer-two-times/program_memory.snap @@ -15,6 +15,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -27,6 +28,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -46,6 +48,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -58,6 +61,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 576, "end": 582, "start": 576, "type": "TagDeclarator", @@ -70,6 +74,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 649, "end": 655, "start": 649, "type": "TagDeclarator", @@ -92,6 +97,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 317.2 ], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -116,6 +122,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 317.2 ], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -159,6 +166,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 99.94 ], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -285,6 +293,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "length": 50.0, "edgeId": "[uuid]", "tag": { + "commentStart": 576, "end": 582, "start": 576, "type": "TagDeclarator", @@ -297,6 +306,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "length": 50.0, "edgeId": "[uuid]", "tag": { + "commentStart": 649, "end": 655, "start": 649, "type": "TagDeclarator", @@ -321,6 +331,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1223, "end": 1244, "start": 1223, "type": "TagDeclarator", @@ -333,6 +344,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1331, "end": 1352, "start": 1331, "type": "TagDeclarator", @@ -345,6 +357,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 1457, "end": 1478, "start": 1457, "type": "TagDeclarator", @@ -374,6 +387,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 278.35 ], "tag": { + "commentStart": 1223, "end": 1244, "start": 1223, "type": "TagDeclarator", @@ -398,6 +412,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 278.35 ], "tag": { + "commentStart": 1331, "end": 1352, "start": 1331, "type": "TagDeclarator", @@ -422,6 +437,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 146.08 ], "tag": { + "commentStart": 1457, "end": 1478, "start": 1457, "type": "TagDeclarator", @@ -505,6 +521,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -517,6 +534,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -536,6 +554,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -548,6 +567,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 576, "end": 582, "start": 576, "type": "TagDeclarator", @@ -560,6 +580,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 649, "end": 655, "start": 649, "type": "TagDeclarator", @@ -582,6 +603,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 317.2 ], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -606,6 +628,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 317.2 ], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -649,6 +672,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 99.94 ], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -775,6 +799,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "length": 50.0, "edgeId": "[uuid]", "tag": { + "commentStart": 576, "end": 582, "start": 576, "type": "TagDeclarator", @@ -787,6 +812,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "length": 50.0, "edgeId": "[uuid]", "tag": { + "commentStart": 649, "end": 655, "start": 649, "type": "TagDeclarator", @@ -919,6 +945,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 317.2 ], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -943,6 +970,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 317.2 ], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -986,6 +1014,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 99.94 ], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -1112,6 +1141,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 278.35 ], "tag": { + "commentStart": 1223, "end": 1244, "start": 1223, "type": "TagDeclarator", @@ -1136,6 +1166,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 278.35 ], "tag": { + "commentStart": 1331, "end": 1352, "start": 1331, "type": "TagDeclarator", @@ -1160,6 +1191,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 146.08 ], "tag": { + "commentStart": 1457, "end": 1478, "start": 1457, "type": "TagDeclarator", @@ -1243,6 +1275,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -1255,6 +1288,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -1274,6 +1308,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -1286,6 +1321,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 576, "end": 582, "start": 576, "type": "TagDeclarator", @@ -1298,6 +1334,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 649, "end": 655, "start": 649, "type": "TagDeclarator", @@ -1320,6 +1357,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 317.2 ], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -1344,6 +1382,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 317.2 ], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -1387,6 +1426,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 99.94 ], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -1513,6 +1553,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "length": 50.0, "edgeId": "[uuid]", "tag": { + "commentStart": 576, "end": 582, "start": 576, "type": "TagDeclarator", @@ -1525,6 +1566,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "length": 50.0, "edgeId": "[uuid]", "tag": { + "commentStart": 649, "end": 655, "start": 649, "type": "TagDeclarator", @@ -1595,6 +1637,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 277.34 ], "tag": { + "commentStart": 774, "end": 795, "start": 774, "type": "TagDeclarator", @@ -1619,6 +1662,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 277.34 ], "tag": { + "commentStart": 881, "end": 902, "start": 881, "type": "TagDeclarator", @@ -1643,6 +1687,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 172.54 ], "tag": { + "commentStart": 1007, "end": 1028, "start": 1007, "type": "TagDeclarator", @@ -1726,6 +1771,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -1738,6 +1784,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -1757,6 +1804,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -1769,6 +1817,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 576, "end": 582, "start": 576, "type": "TagDeclarator", @@ -1781,6 +1830,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 649, "end": 655, "start": 649, "type": "TagDeclarator", @@ -1803,6 +1853,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 317.2 ], "tag": { + "commentStart": 132, "end": 153, "start": 132, "type": "TagDeclarator", @@ -1827,6 +1878,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 317.2 ], "tag": { + "commentStart": 240, "end": 246, "start": 240, "type": "TagDeclarator", @@ -1870,6 +1922,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl 99.94 ], "tag": { + "commentStart": 419, "end": 425, "start": 419, "type": "TagDeclarator", @@ -1996,6 +2049,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "length": 50.0, "edgeId": "[uuid]", "tag": { + "commentStart": 576, "end": 582, "start": 576, "type": "TagDeclarator", @@ -2008,6 +2062,7 @@ description: Variables in memory after executing sketch-on-chamfer-two-times.kcl "length": 50.0, "edgeId": "[uuid]", "tag": { + "commentStart": 649, "end": 655, "start": 649, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/sketch_in_object/ast.snap b/rust/kcl-lib/tests/sketch_in_object/ast.snap index a4edb2c8d..3f0745f9e 100644 --- a/rust/kcl-lib/tests/sketch_in_object/ast.snap +++ b/rust/kcl-lib/tests/sketch_in_object/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing sketch_in_object.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "test", "start": 0, @@ -23,6 +26,7 @@ description: Result of parsing sketch_in_object.kcl { "arguments": [ { + "commentStart": 35, "end": 0, "raw": "'XY'", "start": 0, @@ -32,11 +36,13 @@ description: Result of parsing sketch_in_object.kcl } ], "callee": { + "commentStart": 21, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 21, "end": 0, "start": 0, "type": "CallExpression", @@ -45,8 +51,10 @@ description: Result of parsing sketch_in_object.kcl { "arguments": [ { + "commentStart": 63, "elements": [ { + "commentStart": 64, "end": 0, "raw": "0", "start": 0, @@ -58,6 +66,7 @@ description: Result of parsing sketch_in_object.kcl } }, { + "commentStart": 67, "end": 0, "raw": "0", "start": 0, @@ -75,6 +84,7 @@ description: Result of parsing sketch_in_object.kcl "type": "ArrayExpression" }, { + "commentStart": 71, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -82,11 +92,13 @@ description: Result of parsing sketch_in_object.kcl } ], "callee": { + "commentStart": 48, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 48, "end": 0, "start": 0, "type": "CallExpression", @@ -97,14 +109,17 @@ description: Result of parsing sketch_in_object.kcl { "type": "LabeledArg", "label": { + "commentStart": 86, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 92, "elements": [ { + "commentStart": 93, "end": 0, "raw": "0", "start": 0, @@ -116,6 +131,7 @@ description: Result of parsing sketch_in_object.kcl } }, { + "commentStart": 96, "end": 0, "raw": "1", "start": 0, @@ -135,11 +151,13 @@ description: Result of parsing sketch_in_object.kcl } ], "callee": { + "commentStart": 81, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 81, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -151,14 +169,17 @@ description: Result of parsing sketch_in_object.kcl { "type": "LabeledArg", "label": { + "commentStart": 112, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 118, "elements": [ { + "commentStart": 119, "end": 0, "raw": "1", "start": 0, @@ -170,6 +191,7 @@ description: Result of parsing sketch_in_object.kcl } }, { + "commentStart": 122, "end": 0, "raw": "0", "start": 0, @@ -189,11 +211,13 @@ description: Result of parsing sketch_in_object.kcl } ], "callee": { + "commentStart": 107, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 107, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -205,14 +229,17 @@ description: Result of parsing sketch_in_object.kcl { "type": "LabeledArg", "label": { + "commentStart": 138, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 144, "elements": [ { + "commentStart": 145, "end": 0, "raw": "0", "start": 0, @@ -225,6 +252,7 @@ description: Result of parsing sketch_in_object.kcl }, { "argument": { + "commentStart": 149, "end": 0, "raw": "1", "start": 0, @@ -235,6 +263,7 @@ description: Result of parsing sketch_in_object.kcl "suffix": "None" } }, + "commentStart": 148, "end": 0, "operator": "-", "start": 0, @@ -250,11 +279,13 @@ description: Result of parsing sketch_in_object.kcl } ], "callee": { + "commentStart": 133, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 133, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -264,6 +295,7 @@ description: Result of parsing sketch_in_object.kcl { "arguments": [ { + "commentStart": 166, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -271,31 +303,37 @@ description: Result of parsing sketch_in_object.kcl } ], "callee": { + "commentStart": 160, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 160, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 21, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, + "commentStart": 14, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 10, "end": 0, "start": 0 }, + "commentStart": 7, "end": 0, "params": [], "start": 0, @@ -312,9 +350,12 @@ description: Result of parsing sketch_in_object.kcl "type": "VariableDeclaration" }, { + "commentStart": 170, "declaration": { + "commentStart": 175, "end": 0, "id": { + "commentStart": 175, "end": 0, "name": "test2", "start": 0, @@ -325,11 +366,14 @@ description: Result of parsing sketch_in_object.kcl "body": [ { "argument": { + "commentStart": 194, "end": 0, "properties": [ { + "commentStart": 200, "end": 0, "key": { + "commentStart": 200, "end": 0, "name": "thing1", "start": 0, @@ -338,11 +382,14 @@ description: Result of parsing sketch_in_object.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 209, "end": 0, "properties": [ { + "commentStart": 217, "end": 0, "key": { + "commentStart": 217, "end": 0, "name": "thing2", "start": 0, @@ -355,6 +402,7 @@ description: Result of parsing sketch_in_object.kcl { "arguments": [ { + "commentStart": 240, "end": 0, "raw": "'XY'", "start": 0, @@ -364,11 +412,13 @@ description: Result of parsing sketch_in_object.kcl } ], "callee": { + "commentStart": 226, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 226, "end": 0, "start": 0, "type": "CallExpression", @@ -377,8 +427,10 @@ description: Result of parsing sketch_in_object.kcl { "arguments": [ { + "commentStart": 272, "elements": [ { + "commentStart": 273, "end": 0, "raw": "0", "start": 0, @@ -390,6 +442,7 @@ description: Result of parsing sketch_in_object.kcl } }, { + "commentStart": 276, "end": 0, "raw": "0", "start": 0, @@ -407,6 +460,7 @@ description: Result of parsing sketch_in_object.kcl "type": "ArrayExpression" }, { + "commentStart": 280, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -414,11 +468,13 @@ description: Result of parsing sketch_in_object.kcl } ], "callee": { + "commentStart": 257, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 257, "end": 0, "start": 0, "type": "CallExpression", @@ -429,14 +485,17 @@ description: Result of parsing sketch_in_object.kcl { "type": "LabeledArg", "label": { + "commentStart": 299, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 305, "elements": [ { + "commentStart": 306, "end": 0, "raw": "0", "start": 0, @@ -448,6 +507,7 @@ description: Result of parsing sketch_in_object.kcl } }, { + "commentStart": 309, "end": 0, "raw": "1", "start": 0, @@ -467,11 +527,13 @@ description: Result of parsing sketch_in_object.kcl } ], "callee": { + "commentStart": 294, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 294, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -483,14 +545,17 @@ description: Result of parsing sketch_in_object.kcl { "type": "LabeledArg", "label": { + "commentStart": 329, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 335, "elements": [ { + "commentStart": 336, "end": 0, "raw": "1", "start": 0, @@ -502,6 +567,7 @@ description: Result of parsing sketch_in_object.kcl } }, { + "commentStart": 339, "end": 0, "raw": "0", "start": 0, @@ -521,11 +587,13 @@ description: Result of parsing sketch_in_object.kcl } ], "callee": { + "commentStart": 324, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 324, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -537,14 +605,17 @@ description: Result of parsing sketch_in_object.kcl { "type": "LabeledArg", "label": { + "commentStart": 359, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 365, "elements": [ { + "commentStart": 366, "end": 0, "raw": "0", "start": 0, @@ -557,6 +628,7 @@ description: Result of parsing sketch_in_object.kcl }, { "argument": { + "commentStart": 370, "end": 0, "raw": "1", "start": 0, @@ -567,6 +639,7 @@ description: Result of parsing sketch_in_object.kcl "suffix": "None" } }, + "commentStart": 369, "end": 0, "operator": "-", "start": 0, @@ -582,11 +655,13 @@ description: Result of parsing sketch_in_object.kcl } ], "callee": { + "commentStart": 354, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 354, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -596,6 +671,7 @@ description: Result of parsing sketch_in_object.kcl { "arguments": [ { + "commentStart": 391, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -603,17 +679,20 @@ description: Result of parsing sketch_in_object.kcl } ], "callee": { + "commentStart": 385, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 385, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 226, "end": 0, "start": 0, "type": "PipeExpression", @@ -631,15 +710,18 @@ description: Result of parsing sketch_in_object.kcl "type": "ObjectExpression", "type": "ObjectExpression" }, + "commentStart": 187, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 183, "end": 0, "start": 0 }, + "commentStart": 180, "end": 0, "params": [], "start": 0, @@ -656,9 +738,12 @@ description: Result of parsing sketch_in_object.kcl "type": "VariableDeclaration" }, { + "commentStart": 405, "declaration": { + "commentStart": 407, "end": 0, "id": { + "commentStart": 407, "end": 0, "name": "x", "start": 0, @@ -667,11 +752,13 @@ description: Result of parsing sketch_in_object.kcl "init": { "arguments": [], "callee": { + "commentStart": 411, "end": 0, "name": "test", "start": 0, "type": "Identifier" }, + "commentStart": 411, "end": 0, "start": 0, "type": "CallExpression", @@ -687,10 +774,12 @@ description: Result of parsing sketch_in_object.kcl "type": "VariableDeclaration" }, { + "commentStart": 418, "end": 0, "expression": { "body": [ { + "commentStart": 418, "end": 0, "name": "x", "start": 0, @@ -702,6 +791,7 @@ description: Result of parsing sketch_in_object.kcl { "type": "LabeledArg", "label": { + "commentStart": 433, "end": 0, "name": "length", "start": 0, @@ -709,6 +799,7 @@ description: Result of parsing sketch_in_object.kcl }, "arg": { "argument": { + "commentStart": 443, "end": 0, "raw": "10", "start": 0, @@ -719,6 +810,7 @@ description: Result of parsing sketch_in_object.kcl "suffix": "None" } }, + "commentStart": 442, "end": 0, "operator": "-", "start": 0, @@ -728,11 +820,13 @@ description: Result of parsing sketch_in_object.kcl } ], "callee": { + "commentStart": 425, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 425, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -740,6 +834,7 @@ description: Result of parsing sketch_in_object.kcl "unlabeled": null } ], + "commentStart": 418, "end": 0, "start": 0, "type": "PipeExpression", @@ -750,9 +845,12 @@ description: Result of parsing sketch_in_object.kcl "type": "ExpressionStatement" }, { + "commentStart": 446, "declaration": { + "commentStart": 448, "end": 0, "id": { + "commentStart": 448, "end": 0, "name": "x2", "start": 0, @@ -761,11 +859,13 @@ description: Result of parsing sketch_in_object.kcl "init": { "arguments": [], "callee": { + "commentStart": 453, "end": 0, "name": "test2", "start": 0, "type": "Identifier" }, + "commentStart": 453, "end": 0, "start": 0, "type": "CallExpression", @@ -781,16 +881,20 @@ description: Result of parsing sketch_in_object.kcl "type": "VariableDeclaration" }, { + "commentStart": 461, "end": 0, "expression": { "body": [ { + "commentStart": 461, "computed": false, "end": 0, "object": { + "commentStart": 461, "computed": false, "end": 0, "object": { + "commentStart": 461, "end": 0, "name": "x2", "start": 0, @@ -798,6 +902,7 @@ description: Result of parsing sketch_in_object.kcl "type": "Identifier" }, "property": { + "commentStart": 464, "end": 0, "name": "thing1", "start": 0, @@ -809,6 +914,7 @@ description: Result of parsing sketch_in_object.kcl "type": "MemberExpression" }, "property": { + "commentStart": 471, "end": 0, "name": "thing2", "start": 0, @@ -824,12 +930,14 @@ description: Result of parsing sketch_in_object.kcl { "type": "LabeledArg", "label": { + "commentStart": 491, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 500, "end": 0, "raw": "10", "start": 0, @@ -843,11 +951,13 @@ description: Result of parsing sketch_in_object.kcl } ], "callee": { + "commentStart": 483, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 483, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -855,6 +965,7 @@ description: Result of parsing sketch_in_object.kcl "unlabeled": null } ], + "commentStart": 461, "end": 0, "start": 0, "type": "PipeExpression", @@ -865,11 +976,13 @@ description: Result of parsing sketch_in_object.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 170, "end": 0, "start": 0, "type": "NonCodeNode", @@ -880,6 +993,7 @@ description: Result of parsing sketch_in_object.kcl ], "1": [ { + "commentStart": 405, "end": 0, "start": 0, "type": "NonCodeNode", @@ -890,6 +1004,7 @@ description: Result of parsing sketch_in_object.kcl ], "3": [ { + "commentStart": 446, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/sketch_on_face/ast.snap b/rust/kcl-lib/tests/sketch_on_face/ast.snap index d2112deed..d3a0a65a6 100644 --- a/rust/kcl-lib/tests/sketch_on_face/ast.snap +++ b/rust/kcl-lib/tests/sketch_on_face/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing sketch_on_face.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "part001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing sketch_on_face.kcl { "arguments": [ { + "commentStart": 24, "end": 0, "raw": "'XY'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing sketch_on_face.kcl } ], "callee": { + "commentStart": 10, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 10, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing sketch_on_face.kcl { "arguments": [ { + "commentStart": 50, "elements": [ { + "commentStart": 51, "end": 0, "raw": "11.19", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing sketch_on_face.kcl } }, { + "commentStart": 58, "end": 0, "raw": "28.35", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing sketch_on_face.kcl "type": "ArrayExpression" }, { + "commentStart": 66, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing sketch_on_face.kcl } ], "callee": { + "commentStart": 35, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 35, "end": 0, "start": 0, "type": "CallExpression", @@ -93,14 +105,17 @@ description: Result of parsing sketch_on_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 79, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 85, "elements": [ { + "commentStart": 86, "end": 0, "raw": "28.67", "start": 0, @@ -113,6 +128,7 @@ description: Result of parsing sketch_on_face.kcl }, { "argument": { + "commentStart": 94, "end": 0, "raw": "13.25", "start": 0, @@ -123,6 +139,7 @@ description: Result of parsing sketch_on_face.kcl "suffix": "None" } }, + "commentStart": 93, "end": 0, "operator": "-", "start": 0, @@ -139,12 +156,14 @@ description: Result of parsing sketch_on_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 102, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 108, "end": 0, "start": 0, "type": "TagDeclarator", @@ -154,11 +173,13 @@ description: Result of parsing sketch_on_face.kcl } ], "callee": { + "commentStart": 74, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 74, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -170,15 +191,18 @@ description: Result of parsing sketch_on_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 125, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 131, "elements": [ { "argument": { + "commentStart": 133, "end": 0, "raw": "4.12", "start": 0, @@ -189,6 +213,7 @@ description: Result of parsing sketch_on_face.kcl "suffix": "None" } }, + "commentStart": 132, "end": 0, "operator": "-", "start": 0, @@ -197,6 +222,7 @@ description: Result of parsing sketch_on_face.kcl }, { "argument": { + "commentStart": 140, "end": 0, "raw": "22.81", "start": 0, @@ -207,6 +233,7 @@ description: Result of parsing sketch_on_face.kcl "suffix": "None" } }, + "commentStart": 139, "end": 0, "operator": "-", "start": 0, @@ -222,11 +249,13 @@ description: Result of parsing sketch_on_face.kcl } ], "callee": { + "commentStart": 120, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 120, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -238,15 +267,18 @@ description: Result of parsing sketch_on_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 158, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 164, "elements": [ { "argument": { + "commentStart": 166, "end": 0, "raw": "33.24", "start": 0, @@ -257,6 +289,7 @@ description: Result of parsing sketch_on_face.kcl "suffix": "None" } }, + "commentStart": 165, "end": 0, "operator": "-", "start": 0, @@ -264,6 +297,7 @@ description: Result of parsing sketch_on_face.kcl "type": "UnaryExpression" }, { + "commentStart": 173, "end": 0, "raw": "14.55", "start": 0, @@ -283,11 +317,13 @@ description: Result of parsing sketch_on_face.kcl } ], "callee": { + "commentStart": 153, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 153, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -297,6 +333,7 @@ description: Result of parsing sketch_on_face.kcl { "arguments": [ { + "commentStart": 192, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -304,11 +341,13 @@ description: Result of parsing sketch_on_face.kcl } ], "callee": { + "commentStart": 186, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 186, "end": 0, "start": 0, "type": "CallExpression", @@ -319,12 +358,14 @@ description: Result of parsing sketch_on_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 208, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 217, "end": 0, "raw": "5", "start": 0, @@ -338,11 +379,13 @@ description: Result of parsing sketch_on_face.kcl } ], "callee": { + "commentStart": 200, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 200, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -350,6 +393,7 @@ description: Result of parsing sketch_on_face.kcl "unlabeled": null } ], + "commentStart": 10, "end": 0, "start": 0, "type": "PipeExpression", @@ -365,9 +409,12 @@ description: Result of parsing sketch_on_face.kcl "type": "VariableDeclaration" }, { + "commentStart": 219, "declaration": { + "commentStart": 221, "end": 0, "id": { + "commentStart": 221, "end": 0, "name": "part002", "start": 0, @@ -378,6 +425,7 @@ description: Result of parsing sketch_on_face.kcl { "arguments": [ { + "commentStart": 245, "end": 0, "name": "part001", "start": 0, @@ -385,6 +433,7 @@ description: Result of parsing sketch_on_face.kcl "type": "Identifier" }, { + "commentStart": 254, "end": 0, "name": "here", "start": 0, @@ -393,11 +442,13 @@ description: Result of parsing sketch_on_face.kcl } ], "callee": { + "commentStart": 231, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 231, "end": 0, "start": 0, "type": "CallExpression", @@ -406,8 +457,10 @@ description: Result of parsing sketch_on_face.kcl { "arguments": [ { + "commentStart": 280, "elements": [ { + "commentStart": 281, "end": 0, "raw": "0", "start": 0, @@ -419,6 +472,7 @@ description: Result of parsing sketch_on_face.kcl } }, { + "commentStart": 284, "end": 0, "raw": "0", "start": 0, @@ -436,6 +490,7 @@ description: Result of parsing sketch_on_face.kcl "type": "ArrayExpression" }, { + "commentStart": 288, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -443,11 +498,13 @@ description: Result of parsing sketch_on_face.kcl } ], "callee": { + "commentStart": 265, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 265, "end": 0, "start": 0, "type": "CallExpression", @@ -458,14 +515,17 @@ description: Result of parsing sketch_on_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 301, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 307, "elements": [ { + "commentStart": 308, "end": 0, "raw": "0", "start": 0, @@ -477,6 +537,7 @@ description: Result of parsing sketch_on_face.kcl } }, { + "commentStart": 311, "end": 0, "raw": "10", "start": 0, @@ -496,11 +557,13 @@ description: Result of parsing sketch_on_face.kcl } ], "callee": { + "commentStart": 296, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 296, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -512,14 +575,17 @@ description: Result of parsing sketch_on_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 326, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 332, "elements": [ { + "commentStart": 333, "end": 0, "raw": "10", "start": 0, @@ -531,6 +597,7 @@ description: Result of parsing sketch_on_face.kcl } }, { + "commentStart": 337, "end": 0, "raw": "0", "start": 0, @@ -550,11 +617,13 @@ description: Result of parsing sketch_on_face.kcl } ], "callee": { + "commentStart": 321, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 321, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -566,14 +635,17 @@ description: Result of parsing sketch_on_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 351, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 357, "elements": [ { + "commentStart": 358, "end": 0, "raw": "0", "start": 0, @@ -586,6 +658,7 @@ description: Result of parsing sketch_on_face.kcl }, { "argument": { + "commentStart": 362, "end": 0, "raw": "10", "start": 0, @@ -596,6 +669,7 @@ description: Result of parsing sketch_on_face.kcl "suffix": "None" } }, + "commentStart": 361, "end": 0, "operator": "-", "start": 0, @@ -611,11 +685,13 @@ description: Result of parsing sketch_on_face.kcl } ], "callee": { + "commentStart": 346, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 346, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -625,6 +701,7 @@ description: Result of parsing sketch_on_face.kcl { "arguments": [ { + "commentStart": 378, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -632,11 +709,13 @@ description: Result of parsing sketch_on_face.kcl } ], "callee": { + "commentStart": 372, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 372, "end": 0, "start": 0, "type": "CallExpression", @@ -647,12 +726,14 @@ description: Result of parsing sketch_on_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 394, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 403, "end": 0, "raw": "5", "start": 0, @@ -666,11 +747,13 @@ description: Result of parsing sketch_on_face.kcl } ], "callee": { + "commentStart": 386, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 386, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -678,6 +761,7 @@ description: Result of parsing sketch_on_face.kcl "unlabeled": null } ], + "commentStart": 231, "end": 0, "start": 0, "type": "PipeExpression", @@ -693,11 +777,13 @@ description: Result of parsing sketch_on_face.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 219, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/sketch_on_face/program_memory.snap b/rust/kcl-lib/tests/sketch_on_face/program_memory.snap index ddfd1c727..7f19d90b6 100644 --- a/rust/kcl-lib/tests/sketch_on_face/program_memory.snap +++ b/rust/kcl-lib/tests/sketch_on_face/program_memory.snap @@ -20,6 +20,7 @@ description: Variables in memory after executing sketch_on_face.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 108, "end": 113, "start": 108, "type": "TagDeclarator", @@ -63,6 +64,7 @@ description: Variables in memory after executing sketch_on_face.kcl 28.35 ], "tag": { + "commentStart": 108, "end": 113, "start": 108, "type": "TagDeclarator", @@ -349,6 +351,7 @@ description: Variables in memory after executing sketch_on_face.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 108, "end": 113, "start": 108, "type": "TagDeclarator", @@ -392,6 +395,7 @@ description: Variables in memory after executing sketch_on_face.kcl 28.35 ], "tag": { + "commentStart": 108, "end": 113, "start": 108, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/artifact_graph_flowchart.snap.md b/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/artifact_graph_flowchart.snap.md index bd15d0e76..fc5b87035 100644 --- a/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/artifact_graph_flowchart.snap.md +++ b/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/artifact_graph_flowchart.snap.md @@ -1,26 +1,26 @@ ```mermaid flowchart LR subgraph path2 [Path] - 2["Path
[1017, 1042, 0]"] - 3["Segment
[1048, 1093, 0]"] - 4["Segment
[1099, 1142, 0]"] - 5["Segment
[1148, 1175, 0]"] - 6["Segment
[1181, 1239, 0]"] - 7["Segment
[1245, 1285, 0]"] - 8["Segment
[1291, 1299, 0]"] + 2["Path
[1016, 1041, 0]"] + 3["Segment
[1047, 1092, 0]"] + 4["Segment
[1098, 1141, 0]"] + 5["Segment
[1147, 1174, 0]"] + 6["Segment
[1180, 1238, 0]"] + 7["Segment
[1244, 1284, 0]"] + 8["Segment
[1290, 1298, 0]"] 9[Solid2d] end subgraph path33 [Path] - 33["Path
[1531, 1562, 0]"] - 34["Segment
[1568, 1593, 0]"] - 35["Segment
[1599, 1624, 0]"] - 36["Segment
[1630, 1655, 0]"] - 37["Segment
[1661, 1717, 0]"] - 38["Segment
[1723, 1731, 0]"] + 33["Path
[1530, 1561, 0]"] + 34["Segment
[1567, 1592, 0]"] + 35["Segment
[1598, 1623, 0]"] + 36["Segment
[1629, 1654, 0]"] + 37["Segment
[1660, 1716, 0]"] + 38["Segment
[1722, 1730, 0]"] 39[Solid2d] end - 1["Plane
[992, 1011, 0]"] - 10["Sweep Extrusion
[1305, 1328, 0]"] + 1["Plane
[991, 1010, 0]"] + 10["Sweep Extrusion
[1304, 1327, 0]"] 11[Wall] 12[Wall] 13[Wall] @@ -41,9 +41,9 @@ flowchart LR 28["SweepEdge Adjacent"] 29["SweepEdge Opposite"] 30["SweepEdge Adjacent"] - 31["EdgeCut Fillet
[1334, 1399, 0]"] - 32["EdgeCut Fillet
[1405, 1482, 0]"] - 40["Sweep Extrusion
[1737, 1757, 0]"] + 31["EdgeCut Fillet
[1333, 1398, 0]"] + 32["EdgeCut Fillet
[1404, 1481, 0]"] + 40["Sweep Extrusion
[1736, 1756, 0]"] 41[Wall] 42[Wall] 43[Wall] @@ -57,7 +57,7 @@ flowchart LR 51["SweepEdge Adjacent"] 52["SweepEdge Opposite"] 53["SweepEdge Adjacent"] - 54["StartSketchOnFace
[1496, 1525, 0]"] + 54["StartSketchOnFace
[1495, 1524, 0]"] 1 --- 2 2 --- 3 2 --- 4 diff --git a/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/ast.snap b/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/ast.snap index d9cfe3c5b..bd0551381 100644 --- a/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/ast.snap +++ b/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 353, "end": 0, "id": { + "commentStart": 353, "end": 0, "name": "shelfMountL", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 367, "end": 0, "raw": "8", "start": 0, @@ -30,20 +34,31 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Shelf Bracket", + "// This is a shelf bracket made out of 6061-T6 aluminum sheet metal. The required thickness is calculated based on a point load of 300 lbs applied to the end of the shelf. There are two brackets holding up the shelf, so the moment experienced is divided by 2. The shelf is 1 foot long from the wall.", + "", + "", + "// Define our bracket feet lengths" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 368, "declaration": { + "commentStart": 431, "end": 0, "id": { + "commentStart": 431, "end": 0, "name": "wallMountL", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 444, "end": 0, "raw": "6", "start": 0, @@ -64,15 +79,19 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "type": "VariableDeclaration" }, { + "commentStart": 445, "declaration": { + "commentStart": 559, "end": 0, "id": { + "commentStart": 559, "end": 0, "name": "sigmaAllow", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 572, "end": 0, "raw": "35000", "start": 0, @@ -88,20 +107,27 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Define constants required to calculate the thickness needed to support 300 lbs" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 577, "declaration": { + "commentStart": 585, "end": 0, "id": { + "commentStart": 585, "end": 0, "name": "width", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 593, "end": 0, "raw": "6", "start": 0, @@ -122,15 +148,19 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "type": "VariableDeclaration" }, { + "commentStart": 594, "declaration": { + "commentStart": 603, "end": 0, "id": { + "commentStart": 603, "end": 0, "name": "p", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 607, "end": 0, "raw": "300", "start": 0, @@ -151,15 +181,19 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "type": "VariableDeclaration" }, { + "commentStart": 610, "declaration": { + "commentStart": 635, "end": 0, "id": { + "commentStart": 635, "end": 0, "name": "L", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 639, "end": 0, "raw": "12", "start": 0, @@ -180,19 +214,25 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "type": "VariableDeclaration" }, { + "commentStart": 641, "declaration": { + "commentStart": 652, "end": 0, "id": { + "commentStart": 652, "end": 0, "name": "M", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 656, "end": 0, "left": { + "commentStart": 656, "end": 0, "left": { + "commentStart": 656, "end": 0, "name": "L", "start": 0, @@ -201,6 +241,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, "operator": "*", "right": { + "commentStart": 660, "end": 0, "name": "p", "start": 0, @@ -213,6 +254,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, "operator": "/", "right": { + "commentStart": 664, "end": 0, "raw": "2", "start": 0, @@ -237,15 +279,19 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "type": "VariableDeclaration" }, { + "commentStart": 665, "declaration": { + "commentStart": 712, "end": 0, "id": { + "commentStart": 712, "end": 0, "name": "FOS", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 718, "end": 0, "raw": "2", "start": 0, @@ -266,9 +312,12 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "type": "VariableDeclaration" }, { + "commentStart": 719, "declaration": { + "commentStart": 837, "end": 0, "id": { + "commentStart": 837, "end": 0, "name": "thickness", "start": 0, @@ -277,12 +326,16 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "init": { "arguments": [ { + "commentStart": 854, "end": 0, "left": { + "commentStart": 854, "end": 0, "left": { + "commentStart": 854, "end": 0, "left": { + "commentStart": 854, "end": 0, "raw": "6", "start": 0, @@ -295,6 +348,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, "operator": "*", "right": { + "commentStart": 858, "end": 0, "name": "M", "start": 0, @@ -307,6 +361,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, "operator": "*", "right": { + "commentStart": 862, "end": 0, "name": "FOS", "start": 0, @@ -319,8 +374,10 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, "operator": "/", "right": { + "commentStart": 869, "end": 0, "left": { + "commentStart": 869, "end": 0, "name": "width", "start": 0, @@ -329,6 +386,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, "operator": "*", "right": { + "commentStart": 877, "end": 0, "name": "sigmaAllow", "start": 0, @@ -345,11 +403,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 849, "end": 0, "name": "sqrt", "start": 0, "type": "Identifier" }, + "commentStart": 849, "end": 0, "start": 0, "type": "CallExpression", @@ -360,20 +420,27 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Calculate the thickness off the bending stress and factor of safety" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 889, "declaration": { + "commentStart": 918, "end": 0, "id": { + "commentStart": 918, "end": 0, "name": "filletR", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 928, "end": 0, "raw": "0.25", "start": 0, @@ -389,14 +456,22 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// 0.25 inch fillet radius" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 932, "declaration": { + "commentStart": 981, "end": 0, "id": { + "commentStart": 981, "end": 0, "name": "bracket", "start": 0, @@ -407,6 +482,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "arguments": [ { + "commentStart": 1005, "end": 0, "raw": "'XY'", "start": 0, @@ -416,11 +492,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 991, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 991, "end": 0, "start": 0, "type": "CallExpression", @@ -429,8 +507,10 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "arguments": [ { + "commentStart": 1031, "elements": [ { + "commentStart": 1032, "end": 0, "raw": "0", "start": 0, @@ -442,6 +522,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } }, { + "commentStart": 1035, "end": 0, "raw": "0", "start": 0, @@ -459,6 +540,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "type": "ArrayExpression" }, { + "commentStart": 1039, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -466,11 +548,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1016, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1016, "end": 0, "start": 0, "type": "CallExpression", @@ -481,14 +565,17 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1052, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1058, "elements": [ { + "commentStart": 1059, "end": 0, "raw": "0", "start": 0, @@ -500,6 +587,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } }, { + "commentStart": 1062, "end": 0, "name": "wallMountL", "start": 0, @@ -516,12 +604,14 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1075, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1081, "end": 0, "start": 0, "type": "TagDeclarator", @@ -531,11 +621,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1047, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1047, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -547,21 +639,25 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1103, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1109, "elements": [ { "argument": { + "commentStart": 1111, "end": 0, "name": "shelfMountL", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1110, "end": 0, "operator": "-", "start": 0, @@ -569,6 +665,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "type": "UnaryExpression" }, { + "commentStart": 1124, "end": 0, "raw": "0", "start": 0, @@ -589,12 +686,14 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1128, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1134, "end": 0, "start": 0, "type": "TagDeclarator", @@ -604,11 +703,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1098, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1098, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -620,14 +721,17 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1152, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1158, "elements": [ { + "commentStart": 1159, "end": 0, "raw": "0", "start": 0, @@ -640,12 +744,14 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, { "argument": { + "commentStart": 1163, "end": 0, "name": "thickness", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1162, "end": 0, "operator": "-", "start": 0, @@ -661,11 +767,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1147, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1147, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -677,16 +785,20 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1185, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1191, "elements": [ { + "commentStart": 1192, "end": 0, "left": { + "commentStart": 1192, "end": 0, "name": "shelfMountL", "start": 0, @@ -695,6 +807,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, "operator": "-", "right": { + "commentStart": 1206, "end": 0, "name": "thickness", "start": 0, @@ -706,6 +819,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "type": "BinaryExpression" }, { + "commentStart": 1217, "end": 0, "raw": "0", "start": 0, @@ -726,12 +840,14 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1221, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1227, "end": 0, "start": 0, "type": "TagDeclarator", @@ -741,11 +857,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1180, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1180, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -757,14 +875,17 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1249, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1255, "elements": [ { + "commentStart": 1256, "end": 0, "raw": "0", "start": 0, @@ -776,15 +897,18 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } }, { + "commentStart": 1259, "end": 0, "left": { "argument": { + "commentStart": 1260, "end": 0, "name": "wallMountL", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1259, "end": 0, "operator": "-", "start": 0, @@ -793,6 +917,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, "operator": "+", "right": { + "commentStart": 1273, "end": 0, "name": "thickness", "start": 0, @@ -812,11 +937,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1244, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1244, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -826,6 +953,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "arguments": [ { + "commentStart": 1296, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -833,11 +961,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1290, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1290, "end": 0, "start": 0, "type": "CallExpression", @@ -848,12 +978,14 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1312, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1321, "end": 0, "name": "width", "start": 0, @@ -863,11 +995,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1304, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1304, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -879,12 +1013,14 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1340, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1349, "end": 0, "name": "filletR", "start": 0, @@ -895,16 +1031,19 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1358, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1365, "elements": [ { "arguments": [ { + "commentStart": 1386, "end": 0, "name": "innerEdge", "start": 0, @@ -913,11 +1052,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1366, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1366, "end": 0, "start": 0, "type": "CallExpression", @@ -932,11 +1073,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1333, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1333, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -948,14 +1091,17 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1411, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1420, "end": 0, "left": { + "commentStart": 1420, "end": 0, "name": "filletR", "start": 0, @@ -964,6 +1110,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, "operator": "+", "right": { + "commentStart": 1430, "end": 0, "name": "thickness", "start": 0, @@ -978,16 +1125,19 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1441, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1448, "elements": [ { "arguments": [ { + "commentStart": 1469, "end": 0, "name": "outerEdge", "start": 0, @@ -996,11 +1146,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1449, "end": 0, "name": "getNextAdjacentEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1449, "end": 0, "start": 0, "type": "CallExpression", @@ -1015,11 +1167,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1404, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1404, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1027,6 +1181,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "unlabeled": null } ], + "commentStart": 991, "end": 0, "start": 0, "type": "PipeExpression", @@ -1037,14 +1192,22 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Sketch the bracket and extrude with fillets" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 1481, "declaration": { + "commentStart": 1483, "end": 0, "id": { + "commentStart": 1483, "end": 0, "name": "sketch001", "start": 0, @@ -1055,6 +1218,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "arguments": [ { + "commentStart": 1509, "end": 0, "name": "bracket", "start": 0, @@ -1062,6 +1226,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "type": "Identifier" }, { + "commentStart": 1518, "end": 0, "name": "seg01", "start": 0, @@ -1070,11 +1235,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1495, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1495, "end": 0, "start": 0, "type": "CallExpression", @@ -1083,8 +1250,10 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "arguments": [ { + "commentStart": 1545, "elements": [ { + "commentStart": 1546, "end": 0, "raw": "4.28", "start": 0, @@ -1096,6 +1265,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } }, { + "commentStart": 1552, "end": 0, "raw": "3.83", "start": 0, @@ -1113,6 +1283,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "type": "ArrayExpression" }, { + "commentStart": 1559, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1120,11 +1291,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1530, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 1530, "end": 0, "start": 0, "type": "CallExpression", @@ -1135,14 +1308,17 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1572, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1578, "elements": [ { + "commentStart": 1579, "end": 0, "raw": "2.17", "start": 0, @@ -1155,6 +1331,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, { "argument": { + "commentStart": 1586, "end": 0, "raw": "0.03", "start": 0, @@ -1165,6 +1342,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "suffix": "None" } }, + "commentStart": 1585, "end": 0, "operator": "-", "start": 0, @@ -1180,11 +1358,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1567, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1567, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1196,15 +1376,18 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1603, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1609, "elements": [ { "argument": { + "commentStart": 1611, "end": 0, "raw": "0.07", "start": 0, @@ -1215,6 +1398,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "suffix": "None" } }, + "commentStart": 1610, "end": 0, "operator": "-", "start": 0, @@ -1223,6 +1407,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl }, { "argument": { + "commentStart": 1618, "end": 0, "raw": "1.8", "start": 0, @@ -1233,6 +1418,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "suffix": "None" } }, + "commentStart": 1617, "end": 0, "operator": "-", "start": 0, @@ -1248,11 +1434,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1598, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1598, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1264,15 +1452,18 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1634, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1640, "elements": [ { "argument": { + "commentStart": 1642, "end": 0, "raw": "2.07", "start": 0, @@ -1283,6 +1474,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "suffix": "None" } }, + "commentStart": 1641, "end": 0, "operator": "-", "start": 0, @@ -1290,6 +1482,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "type": "UnaryExpression" }, { + "commentStart": 1648, "end": 0, "raw": "0.05", "start": 0, @@ -1309,11 +1502,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1629, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1629, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1325,16 +1520,19 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1665, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1679, "elements": [ { "arguments": [ { + "commentStart": 1694, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1342,11 +1540,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1680, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 1680, "end": 0, "start": 0, "type": "CallExpression", @@ -1355,6 +1555,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "arguments": [ { + "commentStart": 1712, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1362,11 +1563,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1698, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 1698, "end": 0, "start": 0, "type": "CallExpression", @@ -1381,11 +1584,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1660, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 1660, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1395,6 +1600,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "arguments": [ { + "commentStart": 1728, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1402,11 +1608,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1722, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1722, "end": 0, "start": 0, "type": "CallExpression", @@ -1417,12 +1625,14 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl { "type": "LabeledArg", "label": { + "commentStart": 1744, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1753, "end": 0, "raw": "10", "start": 0, @@ -1436,11 +1646,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ], "callee": { + "commentStart": 1736, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1736, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1448,6 +1660,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "unlabeled": null } ], + "commentStart": 1495, "end": 0, "start": 0, "type": "PipeExpression", @@ -1463,11 +1676,13 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 368, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1480,6 +1695,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl ], "1": [ { + "commentStart": 445, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1490,26 +1706,18 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } }, { + "commentStart": 474, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define constants required to calculate the thickness needed to support 300 lbs", - "style": "line" - } } ], "2": [ { + "commentStart": 577, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1522,6 +1730,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl ], "3": [ { + "commentStart": 594, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1534,6 +1743,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl ], "4": [ { + "commentStart": 610, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1546,6 +1756,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl ], "5": [ { + "commentStart": 641, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1558,6 +1769,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl ], "6": [ { + "commentStart": 665, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1570,6 +1782,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl ], "7": [ { + "commentStart": 719, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1580,50 +1793,18 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } }, { + "commentStart": 763, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Calculate the thickness off the bending stress and factor of safety", - "style": "line" - } - } - ], - "8": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "0.25 inch fillet radius", - "style": "line" - } - } - ], - "9": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Sketch the bracket and extrude with fillets", - "style": "line" - } } ], "10": [ { + "commentStart": 1481, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1633,46 +1814,7 @@ description: Result of parsing sketch_on_face_after_fillets_referencing_face.kcl } ] }, - "startNodes": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Shelf Bracket", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "This is a shelf bracket made out of 6061-T6 aluminum sheet metal. The required thickness is calculated based on a point load of 300 lbs applied to the end of the shelf. There are two brackets holding up the shelf, so the moment experienced is divided by 2. The shelf is 1 foot long from the wall.", - "style": "line" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - }, - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Define our bracket feet lengths", - "style": "line" - } - } - ] + "startNodes": [] }, "start": 0 } diff --git a/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/input.kcl b/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/input.kcl index ba251cb67..803c8f605 100644 --- a/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/input.kcl +++ b/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/input.kcl @@ -1,7 +1,6 @@ // Shelf Bracket // This is a shelf bracket made out of 6061-T6 aluminum sheet metal. The required thickness is calculated based on a point load of 300 lbs applied to the end of the shelf. There are two brackets holding up the shelf, so the moment experienced is divided by 2. The shelf is 1 foot long from the wall. - // Define our bracket feet lengths shelfMountL = 8 // The length of the bracket holding up the shelf is 6 inches wallMountL = 6 // the length of the bracket diff --git a/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/program_memory.snap b/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/program_memory.snap index 22e5c3235..cd85c05db 100644 --- a/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/program_memory.snap +++ b/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/program_memory.snap @@ -48,8 +48,9 @@ description: Variables in memory after executing sketch_on_face_after_fillets_re "id": "[uuid]", "sourceRange": [], "tag": { - "end": 1092, - "start": 1082, + "commentStart": 1081, + "end": 1091, + "start": 1081, "type": "TagDeclarator", "value": "outerEdge" }, @@ -60,8 +61,9 @@ description: Variables in memory after executing sketch_on_face_after_fillets_re "id": "[uuid]", "sourceRange": [], "tag": { - "end": 1141, - "start": 1135, + "commentStart": 1134, + "end": 1140, + "start": 1134, "type": "TagDeclarator", "value": "seg01" }, @@ -79,8 +81,9 @@ description: Variables in memory after executing sketch_on_face_after_fillets_re "id": "[uuid]", "sourceRange": [], "tag": { - "end": 1238, - "start": 1228, + "commentStart": 1227, + "end": 1237, + "start": 1227, "type": "TagDeclarator", "value": "innerEdge" }, @@ -115,8 +118,9 @@ description: Variables in memory after executing sketch_on_face_after_fillets_re 0.0 ], "tag": { - "end": 1092, - "start": 1082, + "commentStart": 1081, + "end": 1091, + "start": 1081, "type": "TagDeclarator", "value": "outerEdge" }, @@ -139,8 +143,9 @@ description: Variables in memory after executing sketch_on_face_after_fillets_re 6.0 ], "tag": { - "end": 1141, - "start": 1135, + "commentStart": 1134, + "end": 1140, + "start": 1134, "type": "TagDeclarator", "value": "seg01" }, @@ -182,8 +187,9 @@ description: Variables in memory after executing sketch_on_face_after_fillets_re 5.6793 ], "tag": { - "end": 1238, - "start": 1228, + "commentStart": 1227, + "end": 1237, + "start": 1227, "type": "TagDeclarator", "value": "innerEdge" }, @@ -559,8 +565,9 @@ description: Variables in memory after executing sketch_on_face_after_fillets_re "id": "[uuid]", "sourceRange": [], "tag": { - "end": 1092, - "start": 1082, + "commentStart": 1081, + "end": 1091, + "start": 1081, "type": "TagDeclarator", "value": "outerEdge" }, @@ -571,8 +578,9 @@ description: Variables in memory after executing sketch_on_face_after_fillets_re "id": "[uuid]", "sourceRange": [], "tag": { - "end": 1141, - "start": 1135, + "commentStart": 1134, + "end": 1140, + "start": 1134, "type": "TagDeclarator", "value": "seg01" }, @@ -590,8 +598,9 @@ description: Variables in memory after executing sketch_on_face_after_fillets_re "id": "[uuid]", "sourceRange": [], "tag": { - "end": 1238, - "start": 1228, + "commentStart": 1227, + "end": 1237, + "start": 1227, "type": "TagDeclarator", "value": "innerEdge" }, @@ -626,8 +635,9 @@ description: Variables in memory after executing sketch_on_face_after_fillets_re 0.0 ], "tag": { - "end": 1092, - "start": 1082, + "commentStart": 1081, + "end": 1091, + "start": 1081, "type": "TagDeclarator", "value": "outerEdge" }, @@ -650,8 +660,9 @@ description: Variables in memory after executing sketch_on_face_after_fillets_re 6.0 ], "tag": { - "end": 1141, - "start": 1135, + "commentStart": 1134, + "end": 1140, + "start": 1134, "type": "TagDeclarator", "value": "seg01" }, @@ -693,8 +704,9 @@ description: Variables in memory after executing sketch_on_face_after_fillets_re 5.6793 ], "tag": { - "end": 1238, - "start": 1228, + "commentStart": 1227, + "end": 1237, + "start": 1227, "type": "TagDeclarator", "value": "innerEdge" }, diff --git a/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/unparsed.snap b/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/unparsed.snap index 2f972be42..cbd6e6d04 100644 --- a/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/unparsed.snap +++ b/rust/kcl-lib/tests/sketch_on_face_after_fillets_referencing_face/unparsed.snap @@ -5,7 +5,6 @@ description: Result of unparsing sketch_on_face_after_fillets_referencing_face.k // Shelf Bracket // This is a shelf bracket made out of 6061-T6 aluminum sheet metal. The required thickness is calculated based on a point load of 300 lbs applied to the end of the shelf. There are two brackets holding up the shelf, so the moment experienced is divided by 2. The shelf is 1 foot long from the wall. - // Define our bracket feet lengths shelfMountL = 8 // The length of the bracket holding up the shelf is 6 inches wallMountL = 6 // the length of the bracket diff --git a/rust/kcl-lib/tests/sketch_on_face_circle_tagged/ast.snap b/rust/kcl-lib/tests/sketch_on_face_circle_tagged/ast.snap index 192032aa0..6272c87c8 100644 --- a/rust/kcl-lib/tests/sketch_on_face_circle_tagged/ast.snap +++ b/rust/kcl-lib/tests/sketch_on_face_circle_tagged/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "cube", "start": 0, @@ -18,9 +21,12 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl "body": { "body": [ { + "commentStart": 24, "declaration": { + "commentStart": 24, "end": 0, "id": { + "commentStart": 24, "end": 0, "name": "sg", "start": 0, @@ -31,6 +37,7 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl { "arguments": [ { + "commentStart": 43, "end": 0, "raw": "'XY'", "start": 0, @@ -40,11 +47,13 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl } ], "callee": { + "commentStart": 29, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 29, "end": 0, "start": 0, "type": "CallExpression", @@ -53,6 +62,7 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl { "arguments": [ { + "commentStart": 71, "end": 0, "name": "pos", "start": 0, @@ -60,6 +70,7 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl "type": "Identifier" }, { + "commentStart": 76, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -67,11 +78,13 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl } ], "callee": { + "commentStart": 56, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 56, "end": 0, "start": 0, "type": "CallExpression", @@ -82,14 +95,17 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl { "type": "LabeledArg", "label": { + "commentStart": 91, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 97, "elements": [ { + "commentStart": 98, "end": 0, "raw": "0", "start": 0, @@ -101,6 +117,7 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl } }, { + "commentStart": 101, "end": 0, "name": "scale", "start": 0, @@ -116,11 +133,13 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl } ], "callee": { + "commentStart": 86, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 86, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -132,14 +151,17 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl { "type": "LabeledArg", "label": { + "commentStart": 121, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 127, "elements": [ { + "commentStart": 128, "end": 0, "name": "scale", "start": 0, @@ -147,6 +169,7 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl "type": "Identifier" }, { + "commentStart": 135, "end": 0, "raw": "0", "start": 0, @@ -166,11 +189,13 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl } ], "callee": { + "commentStart": 116, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 116, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -182,14 +207,17 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl { "type": "LabeledArg", "label": { + "commentStart": 151, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 157, "elements": [ { + "commentStart": 158, "end": 0, "raw": "0", "start": 0, @@ -202,12 +230,14 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl }, { "argument": { + "commentStart": 162, "end": 0, "name": "scale", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 161, "end": 0, "operator": "-", "start": 0, @@ -223,11 +253,13 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl } ], "callee": { + "commentStart": 146, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 146, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -235,6 +267,7 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl "unlabeled": null } ], + "commentStart": 29, "end": 0, "start": 0, "type": "PipeExpression", @@ -251,23 +284,27 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl }, { "argument": { + "commentStart": 180, "end": 0, "name": "sg", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 169, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 20, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 169, "end": 0, "start": 0, "type": "NonCodeNode", @@ -281,11 +318,13 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl }, "start": 0 }, + "commentStart": 7, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 8, "end": 0, "name": "pos", "start": 0, @@ -295,6 +334,7 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl { "type": "Parameter", "identifier": { + "commentStart": 13, "end": 0, "name": "scale", "start": 0, @@ -316,9 +356,12 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl "type": "VariableDeclaration" }, { + "commentStart": 185, "declaration": { + "commentStart": 185, "end": 0, "id": { + "commentStart": 185, "end": 0, "name": "part001", "start": 0, @@ -329,8 +372,10 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl { "arguments": [ { + "commentStart": 200, "elements": [ { + "commentStart": 201, "end": 0, "raw": "0", "start": 0, @@ -342,6 +387,7 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl } }, { + "commentStart": 204, "end": 0, "raw": "0", "start": 0, @@ -359,6 +405,7 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl "type": "ArrayExpression" }, { + "commentStart": 208, "end": 0, "raw": "20", "start": 0, @@ -371,11 +418,13 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl } ], "callee": { + "commentStart": 195, "end": 0, "name": "cube", "start": 0, "type": "Identifier" }, + "commentStart": 195, "end": 0, "start": 0, "type": "CallExpression", @@ -384,6 +433,7 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl { "arguments": [ { + "commentStart": 223, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -391,11 +441,13 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl } ], "callee": { + "commentStart": 217, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 217, "end": 0, "start": 0, "type": "CallExpression", @@ -406,12 +458,14 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl { "type": "LabeledArg", "label": { + "commentStart": 239, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 248, "end": 0, "raw": "20", "start": 0, @@ -425,11 +479,13 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl } ], "callee": { + "commentStart": 231, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 231, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -437,6 +493,7 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl "unlabeled": null } ], + "commentStart": 195, "end": 0, "start": 0, "type": "PipeExpression", @@ -452,9 +509,12 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl "type": "VariableDeclaration" }, { + "commentStart": 251, "declaration": { + "commentStart": 253, "end": 0, "id": { + "commentStart": 253, "end": 0, "name": "part002", "start": 0, @@ -465,6 +525,7 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl { "arguments": [ { + "commentStart": 277, "end": 0, "name": "part001", "start": 0, @@ -472,6 +533,7 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl "type": "Identifier" }, { + "commentStart": 286, "end": 0, "raw": "\"end\"", "start": 0, @@ -481,11 +543,13 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl } ], "callee": { + "commentStart": 263, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 263, "end": 0, "start": 0, "type": "CallExpression", @@ -496,14 +560,17 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl { "type": "LabeledArg", "label": { + "commentStart": 305, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 314, "elements": [ { + "commentStart": 315, "end": 0, "raw": "0", "start": 0, @@ -515,6 +582,7 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl } }, { + "commentStart": 318, "end": 0, "raw": "0", "start": 0, @@ -535,12 +603,14 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl { "type": "LabeledArg", "label": { + "commentStart": 322, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 331, "end": 0, "raw": "5", "start": 0, @@ -555,12 +625,14 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl { "type": "LabeledArg", "label": { + "commentStart": 334, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 340, "end": 0, "start": 0, "type": "TagDeclarator", @@ -570,11 +642,13 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl } ], "callee": { + "commentStart": 298, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 298, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -586,12 +660,14 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl { "type": "LabeledArg", "label": { + "commentStart": 364, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 373, "end": 0, "raw": "5", "start": 0, @@ -605,11 +681,13 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl } ], "callee": { + "commentStart": 356, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 356, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -617,6 +695,7 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl "unlabeled": null } ], + "commentStart": 263, "end": 0, "start": 0, "type": "PipeExpression", @@ -632,11 +711,13 @@ description: Result of parsing sketch_on_face_circle_tagged.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 251, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/sketch_on_face_circle_tagged/program_memory.snap b/rust/kcl-lib/tests/sketch_on_face_circle_tagged/program_memory.snap index bfe476dcf..e8cb422f6 100644 --- a/rust/kcl-lib/tests/sketch_on_face_circle_tagged/program_memory.snap +++ b/rust/kcl-lib/tests/sketch_on_face_circle_tagged/program_memory.snap @@ -201,6 +201,7 @@ description: Variables in memory after executing sketch_on_face_circle_tagged.kc "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 340, "end": 349, "start": 340, "type": "TagDeclarator", @@ -229,6 +230,7 @@ description: Variables in memory after executing sketch_on_face_circle_tagged.kc ], "radius": 5.0, "tag": { + "commentStart": 340, "end": 349, "start": 340, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/sketch_on_face_end/ast.snap b/rust/kcl-lib/tests/sketch_on_face_end/ast.snap index 290663561..340dc28cd 100644 --- a/rust/kcl-lib/tests/sketch_on_face_end/ast.snap +++ b/rust/kcl-lib/tests/sketch_on_face_end/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing sketch_on_face_end.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "cube", "start": 0, @@ -18,9 +21,12 @@ description: Result of parsing sketch_on_face_end.kcl "body": { "body": [ { + "commentStart": 24, "declaration": { + "commentStart": 24, "end": 0, "id": { + "commentStart": 24, "end": 0, "name": "sg", "start": 0, @@ -31,6 +37,7 @@ description: Result of parsing sketch_on_face_end.kcl { "arguments": [ { + "commentStart": 43, "end": 0, "raw": "'XY'", "start": 0, @@ -40,11 +47,13 @@ description: Result of parsing sketch_on_face_end.kcl } ], "callee": { + "commentStart": 29, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 29, "end": 0, "start": 0, "type": "CallExpression", @@ -53,6 +62,7 @@ description: Result of parsing sketch_on_face_end.kcl { "arguments": [ { + "commentStart": 71, "end": 0, "name": "pos", "start": 0, @@ -60,6 +70,7 @@ description: Result of parsing sketch_on_face_end.kcl "type": "Identifier" }, { + "commentStart": 76, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -67,11 +78,13 @@ description: Result of parsing sketch_on_face_end.kcl } ], "callee": { + "commentStart": 56, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 56, "end": 0, "start": 0, "type": "CallExpression", @@ -82,14 +95,17 @@ description: Result of parsing sketch_on_face_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 91, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 97, "elements": [ { + "commentStart": 98, "end": 0, "raw": "0", "start": 0, @@ -101,6 +117,7 @@ description: Result of parsing sketch_on_face_end.kcl } }, { + "commentStart": 101, "end": 0, "name": "scale", "start": 0, @@ -116,11 +133,13 @@ description: Result of parsing sketch_on_face_end.kcl } ], "callee": { + "commentStart": 86, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 86, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -132,14 +151,17 @@ description: Result of parsing sketch_on_face_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 121, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 127, "elements": [ { + "commentStart": 128, "end": 0, "name": "scale", "start": 0, @@ -147,6 +169,7 @@ description: Result of parsing sketch_on_face_end.kcl "type": "Identifier" }, { + "commentStart": 135, "end": 0, "raw": "0", "start": 0, @@ -166,11 +189,13 @@ description: Result of parsing sketch_on_face_end.kcl } ], "callee": { + "commentStart": 116, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 116, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -182,14 +207,17 @@ description: Result of parsing sketch_on_face_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 151, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 157, "elements": [ { + "commentStart": 158, "end": 0, "raw": "0", "start": 0, @@ -202,12 +230,14 @@ description: Result of parsing sketch_on_face_end.kcl }, { "argument": { + "commentStart": 162, "end": 0, "name": "scale", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 161, "end": 0, "operator": "-", "start": 0, @@ -223,11 +253,13 @@ description: Result of parsing sketch_on_face_end.kcl } ], "callee": { + "commentStart": 146, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 146, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -235,6 +267,7 @@ description: Result of parsing sketch_on_face_end.kcl "unlabeled": null } ], + "commentStart": 29, "end": 0, "start": 0, "type": "PipeExpression", @@ -251,23 +284,27 @@ description: Result of parsing sketch_on_face_end.kcl }, { "argument": { + "commentStart": 180, "end": 0, "name": "sg", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 169, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 20, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 169, "end": 0, "start": 0, "type": "NonCodeNode", @@ -281,11 +318,13 @@ description: Result of parsing sketch_on_face_end.kcl }, "start": 0 }, + "commentStart": 7, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 8, "end": 0, "name": "pos", "start": 0, @@ -295,6 +334,7 @@ description: Result of parsing sketch_on_face_end.kcl { "type": "Parameter", "identifier": { + "commentStart": 13, "end": 0, "name": "scale", "start": 0, @@ -316,9 +356,12 @@ description: Result of parsing sketch_on_face_end.kcl "type": "VariableDeclaration" }, { + "commentStart": 185, "declaration": { + "commentStart": 185, "end": 0, "id": { + "commentStart": 185, "end": 0, "name": "part001", "start": 0, @@ -329,8 +372,10 @@ description: Result of parsing sketch_on_face_end.kcl { "arguments": [ { + "commentStart": 200, "elements": [ { + "commentStart": 201, "end": 0, "raw": "0", "start": 0, @@ -342,6 +387,7 @@ description: Result of parsing sketch_on_face_end.kcl } }, { + "commentStart": 204, "end": 0, "raw": "0", "start": 0, @@ -359,6 +405,7 @@ description: Result of parsing sketch_on_face_end.kcl "type": "ArrayExpression" }, { + "commentStart": 208, "end": 0, "raw": "20", "start": 0, @@ -371,11 +418,13 @@ description: Result of parsing sketch_on_face_end.kcl } ], "callee": { + "commentStart": 195, "end": 0, "name": "cube", "start": 0, "type": "Identifier" }, + "commentStart": 195, "end": 0, "start": 0, "type": "CallExpression", @@ -384,6 +433,7 @@ description: Result of parsing sketch_on_face_end.kcl { "arguments": [ { + "commentStart": 223, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -391,11 +441,13 @@ description: Result of parsing sketch_on_face_end.kcl } ], "callee": { + "commentStart": 217, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 217, "end": 0, "start": 0, "type": "CallExpression", @@ -406,12 +458,14 @@ description: Result of parsing sketch_on_face_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 239, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 248, "end": 0, "raw": "20", "start": 0, @@ -425,11 +479,13 @@ description: Result of parsing sketch_on_face_end.kcl } ], "callee": { + "commentStart": 231, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 231, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -437,6 +493,7 @@ description: Result of parsing sketch_on_face_end.kcl "unlabeled": null } ], + "commentStart": 195, "end": 0, "start": 0, "type": "PipeExpression", @@ -452,9 +509,12 @@ description: Result of parsing sketch_on_face_end.kcl "type": "VariableDeclaration" }, { + "commentStart": 251, "declaration": { + "commentStart": 253, "end": 0, "id": { + "commentStart": 253, "end": 0, "name": "part002", "start": 0, @@ -465,6 +525,7 @@ description: Result of parsing sketch_on_face_end.kcl { "arguments": [ { + "commentStart": 277, "end": 0, "name": "part001", "start": 0, @@ -472,6 +533,7 @@ description: Result of parsing sketch_on_face_end.kcl "type": "Identifier" }, { + "commentStart": 286, "end": 0, "raw": "\"END\"", "start": 0, @@ -481,11 +543,13 @@ description: Result of parsing sketch_on_face_end.kcl } ], "callee": { + "commentStart": 263, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 263, "end": 0, "start": 0, "type": "CallExpression", @@ -494,8 +558,10 @@ description: Result of parsing sketch_on_face_end.kcl { "arguments": [ { + "commentStart": 313, "elements": [ { + "commentStart": 314, "end": 0, "raw": "0", "start": 0, @@ -507,6 +573,7 @@ description: Result of parsing sketch_on_face_end.kcl } }, { + "commentStart": 317, "end": 0, "raw": "0", "start": 0, @@ -524,6 +591,7 @@ description: Result of parsing sketch_on_face_end.kcl "type": "ArrayExpression" }, { + "commentStart": 321, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -531,11 +599,13 @@ description: Result of parsing sketch_on_face_end.kcl } ], "callee": { + "commentStart": 298, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 298, "end": 0, "start": 0, "type": "CallExpression", @@ -546,14 +616,17 @@ description: Result of parsing sketch_on_face_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 334, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 340, "elements": [ { + "commentStart": 341, "end": 0, "raw": "0", "start": 0, @@ -565,6 +638,7 @@ description: Result of parsing sketch_on_face_end.kcl } }, { + "commentStart": 344, "end": 0, "raw": "10", "start": 0, @@ -584,11 +658,13 @@ description: Result of parsing sketch_on_face_end.kcl } ], "callee": { + "commentStart": 329, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 329, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -600,14 +676,17 @@ description: Result of parsing sketch_on_face_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 359, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 365, "elements": [ { + "commentStart": 366, "end": 0, "raw": "10", "start": 0, @@ -619,6 +698,7 @@ description: Result of parsing sketch_on_face_end.kcl } }, { + "commentStart": 370, "end": 0, "raw": "0", "start": 0, @@ -638,11 +718,13 @@ description: Result of parsing sketch_on_face_end.kcl } ], "callee": { + "commentStart": 354, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 354, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -654,14 +736,17 @@ description: Result of parsing sketch_on_face_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 384, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 390, "elements": [ { + "commentStart": 391, "end": 0, "raw": "0", "start": 0, @@ -674,6 +759,7 @@ description: Result of parsing sketch_on_face_end.kcl }, { "argument": { + "commentStart": 395, "end": 0, "raw": "10", "start": 0, @@ -684,6 +770,7 @@ description: Result of parsing sketch_on_face_end.kcl "suffix": "None" } }, + "commentStart": 394, "end": 0, "operator": "-", "start": 0, @@ -699,11 +786,13 @@ description: Result of parsing sketch_on_face_end.kcl } ], "callee": { + "commentStart": 379, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 379, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -713,6 +802,7 @@ description: Result of parsing sketch_on_face_end.kcl { "arguments": [ { + "commentStart": 411, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -720,11 +810,13 @@ description: Result of parsing sketch_on_face_end.kcl } ], "callee": { + "commentStart": 405, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 405, "end": 0, "start": 0, "type": "CallExpression", @@ -735,12 +827,14 @@ description: Result of parsing sketch_on_face_end.kcl { "type": "LabeledArg", "label": { + "commentStart": 427, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 436, "end": 0, "raw": "5", "start": 0, @@ -754,11 +848,13 @@ description: Result of parsing sketch_on_face_end.kcl } ], "callee": { + "commentStart": 419, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 419, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -766,6 +862,7 @@ description: Result of parsing sketch_on_face_end.kcl "unlabeled": null } ], + "commentStart": 263, "end": 0, "start": 0, "type": "PipeExpression", @@ -781,11 +878,13 @@ description: Result of parsing sketch_on_face_end.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 251, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/sketch_on_face_end_negative_extrude/ast.snap b/rust/kcl-lib/tests/sketch_on_face_end_negative_extrude/ast.snap index ba0953ce5..61876e33d 100644 --- a/rust/kcl-lib/tests/sketch_on_face_end_negative_extrude/ast.snap +++ b/rust/kcl-lib/tests/sketch_on_face_end_negative_extrude/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "cube", "start": 0, @@ -18,9 +21,12 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl "body": { "body": [ { + "commentStart": 24, "declaration": { + "commentStart": 24, "end": 0, "id": { + "commentStart": 24, "end": 0, "name": "sg", "start": 0, @@ -31,6 +37,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl { "arguments": [ { + "commentStart": 43, "end": 0, "raw": "'XY'", "start": 0, @@ -40,11 +47,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } ], "callee": { + "commentStart": 29, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 29, "end": 0, "start": 0, "type": "CallExpression", @@ -53,6 +62,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl { "arguments": [ { + "commentStart": 71, "end": 0, "name": "pos", "start": 0, @@ -60,6 +70,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl "type": "Identifier" }, { + "commentStart": 76, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -67,11 +78,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } ], "callee": { + "commentStart": 56, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 56, "end": 0, "start": 0, "type": "CallExpression", @@ -82,14 +95,17 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl { "type": "LabeledArg", "label": { + "commentStart": 91, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 97, "elements": [ { + "commentStart": 98, "end": 0, "raw": "0", "start": 0, @@ -101,6 +117,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } }, { + "commentStart": 101, "end": 0, "name": "scale", "start": 0, @@ -116,11 +133,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } ], "callee": { + "commentStart": 86, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 86, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -132,14 +151,17 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl { "type": "LabeledArg", "label": { + "commentStart": 121, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 127, "elements": [ { + "commentStart": 128, "end": 0, "name": "scale", "start": 0, @@ -147,6 +169,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl "type": "Identifier" }, { + "commentStart": 135, "end": 0, "raw": "0", "start": 0, @@ -166,11 +189,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } ], "callee": { + "commentStart": 116, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 116, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -182,14 +207,17 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl { "type": "LabeledArg", "label": { + "commentStart": 151, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 157, "elements": [ { + "commentStart": 158, "end": 0, "raw": "0", "start": 0, @@ -202,12 +230,14 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl }, { "argument": { + "commentStart": 162, "end": 0, "name": "scale", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 161, "end": 0, "operator": "-", "start": 0, @@ -223,11 +253,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } ], "callee": { + "commentStart": 146, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 146, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -235,6 +267,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl "unlabeled": null } ], + "commentStart": 29, "end": 0, "start": 0, "type": "PipeExpression", @@ -251,23 +284,27 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl }, { "argument": { + "commentStart": 180, "end": 0, "name": "sg", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 169, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 20, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 169, "end": 0, "start": 0, "type": "NonCodeNode", @@ -281,11 +318,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl }, "start": 0 }, + "commentStart": 7, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 8, "end": 0, "name": "pos", "start": 0, @@ -295,6 +334,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl { "type": "Parameter", "identifier": { + "commentStart": 13, "end": 0, "name": "scale", "start": 0, @@ -316,9 +356,12 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl "type": "VariableDeclaration" }, { + "commentStart": 185, "declaration": { + "commentStart": 185, "end": 0, "id": { + "commentStart": 185, "end": 0, "name": "part001", "start": 0, @@ -329,8 +372,10 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl { "arguments": [ { + "commentStart": 200, "elements": [ { + "commentStart": 201, "end": 0, "raw": "0", "start": 0, @@ -342,6 +387,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } }, { + "commentStart": 204, "end": 0, "raw": "0", "start": 0, @@ -359,6 +405,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl "type": "ArrayExpression" }, { + "commentStart": 208, "end": 0, "raw": "20", "start": 0, @@ -371,11 +418,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } ], "callee": { + "commentStart": 195, "end": 0, "name": "cube", "start": 0, "type": "Identifier" }, + "commentStart": 195, "end": 0, "start": 0, "type": "CallExpression", @@ -384,6 +433,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl { "arguments": [ { + "commentStart": 223, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -391,11 +441,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } ], "callee": { + "commentStart": 217, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 217, "end": 0, "start": 0, "type": "CallExpression", @@ -406,12 +458,14 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl { "type": "LabeledArg", "label": { + "commentStart": 239, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 248, "end": 0, "raw": "20", "start": 0, @@ -425,11 +479,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } ], "callee": { + "commentStart": 231, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 231, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -437,6 +493,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl "unlabeled": null } ], + "commentStart": 195, "end": 0, "start": 0, "type": "PipeExpression", @@ -452,9 +509,12 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl "type": "VariableDeclaration" }, { + "commentStart": 251, "declaration": { + "commentStart": 253, "end": 0, "id": { + "commentStart": 253, "end": 0, "name": "part002", "start": 0, @@ -465,6 +525,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl { "arguments": [ { + "commentStart": 277, "end": 0, "name": "part001", "start": 0, @@ -472,6 +533,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl "type": "Identifier" }, { + "commentStart": 286, "end": 0, "raw": "\"END\"", "start": 0, @@ -481,11 +543,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } ], "callee": { + "commentStart": 263, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 263, "end": 0, "start": 0, "type": "CallExpression", @@ -494,8 +558,10 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl { "arguments": [ { + "commentStart": 313, "elements": [ { + "commentStart": 314, "end": 0, "raw": "0", "start": 0, @@ -507,6 +573,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } }, { + "commentStart": 317, "end": 0, "raw": "0", "start": 0, @@ -524,6 +591,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl "type": "ArrayExpression" }, { + "commentStart": 321, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -531,11 +599,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } ], "callee": { + "commentStart": 298, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 298, "end": 0, "start": 0, "type": "CallExpression", @@ -546,14 +616,17 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl { "type": "LabeledArg", "label": { + "commentStart": 334, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 340, "elements": [ { + "commentStart": 341, "end": 0, "raw": "0", "start": 0, @@ -565,6 +638,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } }, { + "commentStart": 344, "end": 0, "raw": "10", "start": 0, @@ -584,11 +658,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } ], "callee": { + "commentStart": 329, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 329, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -600,14 +676,17 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl { "type": "LabeledArg", "label": { + "commentStart": 359, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 365, "elements": [ { + "commentStart": 366, "end": 0, "raw": "10", "start": 0, @@ -619,6 +698,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } }, { + "commentStart": 370, "end": 0, "raw": "0", "start": 0, @@ -638,11 +718,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } ], "callee": { + "commentStart": 354, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 354, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -654,14 +736,17 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl { "type": "LabeledArg", "label": { + "commentStart": 384, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 390, "elements": [ { + "commentStart": 391, "end": 0, "raw": "0", "start": 0, @@ -674,6 +759,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl }, { "argument": { + "commentStart": 395, "end": 0, "raw": "10", "start": 0, @@ -684,6 +770,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl "suffix": "None" } }, + "commentStart": 394, "end": 0, "operator": "-", "start": 0, @@ -699,11 +786,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } ], "callee": { + "commentStart": 379, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 379, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -713,6 +802,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl { "arguments": [ { + "commentStart": 411, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -720,11 +810,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } ], "callee": { + "commentStart": 405, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 405, "end": 0, "start": 0, "type": "CallExpression", @@ -735,6 +827,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl { "type": "LabeledArg", "label": { + "commentStart": 427, "end": 0, "name": "length", "start": 0, @@ -742,6 +835,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl }, "arg": { "argument": { + "commentStart": 437, "end": 0, "raw": "5", "start": 0, @@ -752,6 +846,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl "suffix": "None" } }, + "commentStart": 436, "end": 0, "operator": "-", "start": 0, @@ -761,11 +856,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl } ], "callee": { + "commentStart": 419, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 419, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -773,6 +870,7 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl "unlabeled": null } ], + "commentStart": 263, "end": 0, "start": 0, "type": "PipeExpression", @@ -788,11 +886,13 @@ description: Result of parsing sketch_on_face_end_negative_extrude.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 251, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/sketch_on_face_start/ast.snap b/rust/kcl-lib/tests/sketch_on_face_start/ast.snap index 8df546d6a..2843ab393 100644 --- a/rust/kcl-lib/tests/sketch_on_face_start/ast.snap +++ b/rust/kcl-lib/tests/sketch_on_face_start/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing sketch_on_face_start.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 3, "end": 0, "id": { + "commentStart": 3, "end": 0, "name": "cube", "start": 0, @@ -18,9 +21,12 @@ description: Result of parsing sketch_on_face_start.kcl "body": { "body": [ { + "commentStart": 24, "declaration": { + "commentStart": 24, "end": 0, "id": { + "commentStart": 24, "end": 0, "name": "sg", "start": 0, @@ -31,6 +37,7 @@ description: Result of parsing sketch_on_face_start.kcl { "arguments": [ { + "commentStart": 43, "end": 0, "raw": "'XY'", "start": 0, @@ -40,11 +47,13 @@ description: Result of parsing sketch_on_face_start.kcl } ], "callee": { + "commentStart": 29, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 29, "end": 0, "start": 0, "type": "CallExpression", @@ -53,6 +62,7 @@ description: Result of parsing sketch_on_face_start.kcl { "arguments": [ { + "commentStart": 71, "end": 0, "name": "pos", "start": 0, @@ -60,6 +70,7 @@ description: Result of parsing sketch_on_face_start.kcl "type": "Identifier" }, { + "commentStart": 76, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -67,11 +78,13 @@ description: Result of parsing sketch_on_face_start.kcl } ], "callee": { + "commentStart": 56, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 56, "end": 0, "start": 0, "type": "CallExpression", @@ -82,14 +95,17 @@ description: Result of parsing sketch_on_face_start.kcl { "type": "LabeledArg", "label": { + "commentStart": 91, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 97, "elements": [ { + "commentStart": 98, "end": 0, "raw": "0", "start": 0, @@ -101,6 +117,7 @@ description: Result of parsing sketch_on_face_start.kcl } }, { + "commentStart": 101, "end": 0, "name": "scale", "start": 0, @@ -116,11 +133,13 @@ description: Result of parsing sketch_on_face_start.kcl } ], "callee": { + "commentStart": 86, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 86, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -132,14 +151,17 @@ description: Result of parsing sketch_on_face_start.kcl { "type": "LabeledArg", "label": { + "commentStart": 121, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 127, "elements": [ { + "commentStart": 128, "end": 0, "name": "scale", "start": 0, @@ -147,6 +169,7 @@ description: Result of parsing sketch_on_face_start.kcl "type": "Identifier" }, { + "commentStart": 135, "end": 0, "raw": "0", "start": 0, @@ -166,11 +189,13 @@ description: Result of parsing sketch_on_face_start.kcl } ], "callee": { + "commentStart": 116, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 116, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -182,14 +207,17 @@ description: Result of parsing sketch_on_face_start.kcl { "type": "LabeledArg", "label": { + "commentStart": 151, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 157, "elements": [ { + "commentStart": 158, "end": 0, "raw": "0", "start": 0, @@ -202,12 +230,14 @@ description: Result of parsing sketch_on_face_start.kcl }, { "argument": { + "commentStart": 162, "end": 0, "name": "scale", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 161, "end": 0, "operator": "-", "start": 0, @@ -223,11 +253,13 @@ description: Result of parsing sketch_on_face_start.kcl } ], "callee": { + "commentStart": 146, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 146, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -235,6 +267,7 @@ description: Result of parsing sketch_on_face_start.kcl "unlabeled": null } ], + "commentStart": 29, "end": 0, "start": 0, "type": "PipeExpression", @@ -251,23 +284,27 @@ description: Result of parsing sketch_on_face_start.kcl }, { "argument": { + "commentStart": 180, "end": 0, "name": "sg", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 169, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 20, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 169, "end": 0, "start": 0, "type": "NonCodeNode", @@ -281,11 +318,13 @@ description: Result of parsing sketch_on_face_start.kcl }, "start": 0 }, + "commentStart": 7, "end": 0, "params": [ { "type": "Parameter", "identifier": { + "commentStart": 8, "end": 0, "name": "pos", "start": 0, @@ -295,6 +334,7 @@ description: Result of parsing sketch_on_face_start.kcl { "type": "Parameter", "identifier": { + "commentStart": 13, "end": 0, "name": "scale", "start": 0, @@ -316,9 +356,12 @@ description: Result of parsing sketch_on_face_start.kcl "type": "VariableDeclaration" }, { + "commentStart": 185, "declaration": { + "commentStart": 185, "end": 0, "id": { + "commentStart": 185, "end": 0, "name": "part001", "start": 0, @@ -329,8 +372,10 @@ description: Result of parsing sketch_on_face_start.kcl { "arguments": [ { + "commentStart": 200, "elements": [ { + "commentStart": 201, "end": 0, "raw": "0", "start": 0, @@ -342,6 +387,7 @@ description: Result of parsing sketch_on_face_start.kcl } }, { + "commentStart": 204, "end": 0, "raw": "0", "start": 0, @@ -359,6 +405,7 @@ description: Result of parsing sketch_on_face_start.kcl "type": "ArrayExpression" }, { + "commentStart": 208, "end": 0, "raw": "20", "start": 0, @@ -371,11 +418,13 @@ description: Result of parsing sketch_on_face_start.kcl } ], "callee": { + "commentStart": 195, "end": 0, "name": "cube", "start": 0, "type": "Identifier" }, + "commentStart": 195, "end": 0, "start": 0, "type": "CallExpression", @@ -384,6 +433,7 @@ description: Result of parsing sketch_on_face_start.kcl { "arguments": [ { + "commentStart": 223, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -391,29 +441,34 @@ description: Result of parsing sketch_on_face_start.kcl } ], "callee": { + "commentStart": 217, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 217, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { + "commentStart": 231, "end": 0, "expr": { "arguments": [ { "type": "LabeledArg", "label": { + "commentStart": 239, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 248, "end": 0, "raw": "20", "start": 0, @@ -427,11 +482,13 @@ description: Result of parsing sketch_on_face_start.kcl } ], "callee": { + "commentStart": 231, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 231, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -439,6 +496,7 @@ description: Result of parsing sketch_on_face_start.kcl "unlabeled": null }, "label": { + "commentStart": 255, "end": 0, "name": "foo", "start": 0, @@ -449,6 +507,7 @@ description: Result of parsing sketch_on_face_start.kcl "type": "LabelledExpression" } ], + "commentStart": 195, "end": 0, "start": 0, "type": "PipeExpression", @@ -464,9 +523,12 @@ description: Result of parsing sketch_on_face_start.kcl "type": "VariableDeclaration" }, { + "commentStart": 258, "declaration": { + "commentStart": 260, "end": 0, "id": { + "commentStart": 260, "end": 0, "name": "part002", "start": 0, @@ -477,6 +539,7 @@ description: Result of parsing sketch_on_face_start.kcl { "arguments": [ { + "commentStart": 284, "end": 0, "name": "foo", "start": 0, @@ -484,6 +547,7 @@ description: Result of parsing sketch_on_face_start.kcl "type": "Identifier" }, { + "commentStart": 289, "end": 0, "raw": "\"start\"", "start": 0, @@ -493,11 +557,13 @@ description: Result of parsing sketch_on_face_start.kcl } ], "callee": { + "commentStart": 270, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 270, "end": 0, "start": 0, "type": "CallExpression", @@ -506,8 +572,10 @@ description: Result of parsing sketch_on_face_start.kcl { "arguments": [ { + "commentStart": 318, "elements": [ { + "commentStart": 319, "end": 0, "raw": "0", "start": 0, @@ -519,6 +587,7 @@ description: Result of parsing sketch_on_face_start.kcl } }, { + "commentStart": 322, "end": 0, "raw": "0", "start": 0, @@ -536,6 +605,7 @@ description: Result of parsing sketch_on_face_start.kcl "type": "ArrayExpression" }, { + "commentStart": 326, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -543,11 +613,13 @@ description: Result of parsing sketch_on_face_start.kcl } ], "callee": { + "commentStart": 303, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 303, "end": 0, "start": 0, "type": "CallExpression", @@ -558,14 +630,17 @@ description: Result of parsing sketch_on_face_start.kcl { "type": "LabeledArg", "label": { + "commentStart": 339, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 345, "elements": [ { + "commentStart": 346, "end": 0, "raw": "0", "start": 0, @@ -577,6 +652,7 @@ description: Result of parsing sketch_on_face_start.kcl } }, { + "commentStart": 349, "end": 0, "raw": "10", "start": 0, @@ -596,11 +672,13 @@ description: Result of parsing sketch_on_face_start.kcl } ], "callee": { + "commentStart": 334, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 334, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -612,14 +690,17 @@ description: Result of parsing sketch_on_face_start.kcl { "type": "LabeledArg", "label": { + "commentStart": 364, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 370, "elements": [ { + "commentStart": 371, "end": 0, "raw": "10", "start": 0, @@ -631,6 +712,7 @@ description: Result of parsing sketch_on_face_start.kcl } }, { + "commentStart": 375, "end": 0, "raw": "0", "start": 0, @@ -650,11 +732,13 @@ description: Result of parsing sketch_on_face_start.kcl } ], "callee": { + "commentStart": 359, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 359, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -666,14 +750,17 @@ description: Result of parsing sketch_on_face_start.kcl { "type": "LabeledArg", "label": { + "commentStart": 389, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 395, "elements": [ { + "commentStart": 396, "end": 0, "raw": "0", "start": 0, @@ -686,6 +773,7 @@ description: Result of parsing sketch_on_face_start.kcl }, { "argument": { + "commentStart": 400, "end": 0, "raw": "10", "start": 0, @@ -696,6 +784,7 @@ description: Result of parsing sketch_on_face_start.kcl "suffix": "None" } }, + "commentStart": 399, "end": 0, "operator": "-", "start": 0, @@ -711,11 +800,13 @@ description: Result of parsing sketch_on_face_start.kcl } ], "callee": { + "commentStart": 384, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 384, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -725,6 +816,7 @@ description: Result of parsing sketch_on_face_start.kcl { "arguments": [ { + "commentStart": 416, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -732,11 +824,13 @@ description: Result of parsing sketch_on_face_start.kcl } ], "callee": { + "commentStart": 410, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 410, "end": 0, "start": 0, "type": "CallExpression", @@ -747,12 +841,14 @@ description: Result of parsing sketch_on_face_start.kcl { "type": "LabeledArg", "label": { + "commentStart": 432, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 441, "end": 0, "raw": "5", "start": 0, @@ -766,11 +862,13 @@ description: Result of parsing sketch_on_face_start.kcl } ], "callee": { + "commentStart": 424, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 424, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -778,6 +876,7 @@ description: Result of parsing sketch_on_face_start.kcl "unlabeled": null } ], + "commentStart": 270, "end": 0, "start": 0, "type": "PipeExpression", @@ -793,11 +892,13 @@ description: Result of parsing sketch_on_face_start.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 258, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/ssi_pattern/ast.snap b/rust/kcl-lib/tests/ssi_pattern/ast.snap index 6b0b6f0aa..3b830ef5a 100644 --- a/rust/kcl-lib/tests/ssi_pattern/ast.snap +++ b/rust/kcl-lib/tests/ssi_pattern/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing ssi_pattern.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "sketch001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing ssi_pattern.kcl { "arguments": [ { + "commentStart": 26, "end": 0, "raw": "'XZ'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing ssi_pattern.kcl } ], "callee": { + "commentStart": 12, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 12, "end": 0, "start": 0, "type": "CallExpression", @@ -41,9 +47,11 @@ description: Result of parsing ssi_pattern.kcl { "arguments": [ { + "commentStart": 52, "elements": [ { "argument": { + "commentStart": 54, "end": 0, "raw": "4.35", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing ssi_pattern.kcl "suffix": "None" } }, + "commentStart": 53, "end": 0, "operator": "-", "start": 0, @@ -62,6 +71,7 @@ description: Result of parsing ssi_pattern.kcl }, { "argument": { + "commentStart": 61, "end": 0, "raw": "12.26", "start": 0, @@ -72,6 +82,7 @@ description: Result of parsing ssi_pattern.kcl "suffix": "None" } }, + "commentStart": 60, "end": 0, "operator": "-", "start": 0, @@ -85,6 +96,7 @@ description: Result of parsing ssi_pattern.kcl "type": "ArrayExpression" }, { + "commentStart": 69, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -92,11 +104,13 @@ description: Result of parsing ssi_pattern.kcl } ], "callee": { + "commentStart": 37, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 37, "end": 0, "start": 0, "type": "CallExpression", @@ -107,12 +121,14 @@ description: Result of parsing ssi_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 83, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 92, "end": 0, "raw": "10.2", "start": 0, @@ -126,11 +142,13 @@ description: Result of parsing ssi_pattern.kcl } ], "callee": { + "commentStart": 77, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 77, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -142,14 +160,17 @@ description: Result of parsing ssi_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 108, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 114, "elements": [ { + "commentStart": 115, "end": 0, "raw": "0.54", "start": 0, @@ -162,6 +183,7 @@ description: Result of parsing ssi_pattern.kcl }, { "argument": { + "commentStart": 122, "end": 0, "raw": "0.03", "start": 0, @@ -172,6 +194,7 @@ description: Result of parsing ssi_pattern.kcl "suffix": "None" } }, + "commentStart": 121, "end": 0, "operator": "-", "start": 0, @@ -187,11 +210,13 @@ description: Result of parsing ssi_pattern.kcl } ], "callee": { + "commentStart": 103, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 103, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -201,8 +226,10 @@ description: Result of parsing ssi_pattern.kcl { "arguments": [ { + "commentStart": 150, "elements": [ { + "commentStart": 151, "end": 0, "raw": "20.4", "start": 0, @@ -214,6 +241,7 @@ description: Result of parsing ssi_pattern.kcl } }, { + "commentStart": 157, "end": 0, "raw": "14.61", "start": 0, @@ -231,6 +259,7 @@ description: Result of parsing ssi_pattern.kcl "type": "ArrayExpression" }, { + "commentStart": 165, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -238,11 +267,13 @@ description: Result of parsing ssi_pattern.kcl } ], "callee": { + "commentStart": 134, "end": 0, "name": "tangentialArcTo", "start": 0, "type": "Identifier" }, + "commentStart": 134, "end": 0, "start": 0, "type": "CallExpression", @@ -253,6 +284,7 @@ description: Result of parsing ssi_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 179, "end": 0, "name": "length", "start": 0, @@ -260,6 +292,7 @@ description: Result of parsing ssi_pattern.kcl }, "arg": { "argument": { + "commentStart": 189, "end": 0, "raw": "26.76", "start": 0, @@ -270,6 +303,7 @@ description: Result of parsing ssi_pattern.kcl "suffix": "None" } }, + "commentStart": 188, "end": 0, "operator": "-", "start": 0, @@ -279,11 +313,13 @@ description: Result of parsing ssi_pattern.kcl } ], "callee": { + "commentStart": 173, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, + "commentStart": 173, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -295,16 +331,19 @@ description: Result of parsing ssi_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 206, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 220, "elements": [ { "arguments": [ { + "commentStart": 235, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -312,11 +351,13 @@ description: Result of parsing ssi_pattern.kcl } ], "callee": { + "commentStart": 221, "end": 0, "name": "profileStartX", "start": 0, "type": "Identifier" }, + "commentStart": 221, "end": 0, "start": 0, "type": "CallExpression", @@ -325,6 +366,7 @@ description: Result of parsing ssi_pattern.kcl { "arguments": [ { + "commentStart": 253, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -332,11 +374,13 @@ description: Result of parsing ssi_pattern.kcl } ], "callee": { + "commentStart": 239, "end": 0, "name": "profileStartY", "start": 0, "type": "Identifier" }, + "commentStart": 239, "end": 0, "start": 0, "type": "CallExpression", @@ -352,12 +396,14 @@ description: Result of parsing ssi_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 258, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 264, "end": 0, "start": 0, "type": "TagDeclarator", @@ -367,11 +413,13 @@ description: Result of parsing ssi_pattern.kcl } ], "callee": { + "commentStart": 201, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 201, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -381,17 +429,20 @@ description: Result of parsing ssi_pattern.kcl { "arguments": [], "callee": { + "commentStart": 277, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 277, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], + "commentStart": 12, "end": 0, "start": 0, "type": "PipeExpression", @@ -407,9 +458,12 @@ description: Result of parsing ssi_pattern.kcl "type": "VariableDeclaration" }, { + "commentStart": 284, "declaration": { + "commentStart": 286, "end": 0, "id": { + "commentStart": 286, "end": 0, "name": "extrude001", "start": 0, @@ -420,12 +474,14 @@ description: Result of parsing ssi_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 318, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 327, "end": 0, "raw": "50", "start": 0, @@ -439,16 +495,19 @@ description: Result of parsing ssi_pattern.kcl } ], "callee": { + "commentStart": 299, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 299, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { + "commentStart": 307, "end": 0, "name": "sketch001", "start": 0, @@ -466,9 +525,12 @@ description: Result of parsing ssi_pattern.kcl "type": "VariableDeclaration" }, { + "commentStart": 330, "declaration": { + "commentStart": 332, "end": 0, "id": { + "commentStart": 332, "end": 0, "name": "sketch002", "start": 0, @@ -479,6 +541,7 @@ description: Result of parsing ssi_pattern.kcl { "arguments": [ { + "commentStart": 358, "end": 0, "name": "extrude001", "start": 0, @@ -486,6 +549,7 @@ description: Result of parsing ssi_pattern.kcl "type": "Identifier" }, { + "commentStart": 370, "end": 0, "name": "seg01", "start": 0, @@ -494,11 +558,13 @@ description: Result of parsing ssi_pattern.kcl } ], "callee": { + "commentStart": 344, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 344, "end": 0, "start": 0, "type": "CallExpression", @@ -509,15 +575,18 @@ description: Result of parsing ssi_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 389, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 398, "elements": [ { "argument": { + "commentStart": 400, "end": 0, "raw": "2.08", "start": 0, @@ -528,6 +597,7 @@ description: Result of parsing ssi_pattern.kcl "suffix": "None" } }, + "commentStart": 399, "end": 0, "operator": "-", "start": 0, @@ -535,6 +605,7 @@ description: Result of parsing ssi_pattern.kcl "type": "UnaryExpression" }, { + "commentStart": 406, "end": 0, "raw": "47.7", "start": 0, @@ -555,12 +626,14 @@ description: Result of parsing ssi_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 413, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 422, "end": 0, "raw": "1.4", "start": 0, @@ -574,11 +647,13 @@ description: Result of parsing ssi_pattern.kcl } ], "callee": { + "commentStart": 382, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 382, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -590,12 +665,14 @@ description: Result of parsing ssi_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 448, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 460, "end": 0, "raw": "5", "start": 0, @@ -610,12 +687,14 @@ description: Result of parsing ssi_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 463, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 474, "end": 0, "raw": "5", "start": 0, @@ -630,14 +709,17 @@ description: Result of parsing ssi_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 477, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 484, "elements": [ { + "commentStart": 485, "end": 0, "raw": "1", "start": 0, @@ -649,6 +731,7 @@ description: Result of parsing ssi_pattern.kcl } }, { + "commentStart": 488, "end": 0, "raw": "0", "start": 0, @@ -668,11 +751,13 @@ description: Result of parsing ssi_pattern.kcl } ], "callee": { + "commentStart": 432, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, + "commentStart": 432, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -684,12 +769,14 @@ description: Result of parsing ssi_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 566, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 578, "end": 0, "raw": "6", "start": 0, @@ -704,12 +791,14 @@ description: Result of parsing ssi_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 581, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 592, "end": 0, "raw": "4", "start": 0, @@ -724,14 +813,17 @@ description: Result of parsing ssi_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 595, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 602, "elements": [ { + "commentStart": 603, "end": 0, "raw": "0", "start": 0, @@ -744,6 +836,7 @@ description: Result of parsing ssi_pattern.kcl }, { "argument": { + "commentStart": 607, "end": 0, "raw": "1", "start": 0, @@ -754,6 +847,7 @@ description: Result of parsing ssi_pattern.kcl "suffix": "None" } }, + "commentStart": 606, "end": 0, "operator": "-", "start": 0, @@ -769,11 +863,13 @@ description: Result of parsing ssi_pattern.kcl } ], "callee": { + "commentStart": 550, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, + "commentStart": 550, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -785,6 +881,7 @@ description: Result of parsing ssi_pattern.kcl { "type": "LabeledArg", "label": { + "commentStart": 624, "end": 0, "name": "length", "start": 0, @@ -792,6 +889,7 @@ description: Result of parsing ssi_pattern.kcl }, "arg": { "argument": { + "commentStart": 634, "end": 0, "raw": "40", "start": 0, @@ -802,6 +900,7 @@ description: Result of parsing ssi_pattern.kcl "suffix": "None" } }, + "commentStart": 633, "end": 0, "operator": "-", "start": 0, @@ -811,11 +910,13 @@ description: Result of parsing ssi_pattern.kcl } ], "callee": { + "commentStart": 616, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 616, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -823,11 +924,13 @@ description: Result of parsing ssi_pattern.kcl "unlabeled": null } ], + "commentStart": 344, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "2": [ { + "commentStart": 493, "end": 0, "start": 0, "type": "NonCodeNode", @@ -855,11 +958,13 @@ description: Result of parsing ssi_pattern.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "0": [ { + "commentStart": 284, "end": 0, "start": 0, "type": "NonCodeNode", @@ -870,6 +975,7 @@ description: Result of parsing ssi_pattern.kcl ], "1": [ { + "commentStart": 330, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/ssi_pattern/program_memory.snap b/rust/kcl-lib/tests/ssi_pattern/program_memory.snap index 33a119454..f388be277 100644 --- a/rust/kcl-lib/tests/ssi_pattern/program_memory.snap +++ b/rust/kcl-lib/tests/ssi_pattern/program_memory.snap @@ -43,6 +43,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -146,6 +147,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -349,6 +351,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -549,6 +552,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -652,6 +656,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -891,6 +896,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -994,6 +1000,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -1233,6 +1240,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -1336,6 +1344,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -1575,6 +1584,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -1678,6 +1688,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -1917,6 +1928,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -2020,6 +2032,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -2259,6 +2272,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -2362,6 +2376,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -2601,6 +2616,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -2704,6 +2720,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -2943,6 +2960,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -3046,6 +3064,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -3285,6 +3304,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -3388,6 +3408,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -3627,6 +3648,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -3730,6 +3752,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -3969,6 +3992,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -4072,6 +4096,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -4311,6 +4336,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -4414,6 +4440,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -4653,6 +4680,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -4756,6 +4784,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -4995,6 +5024,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -5098,6 +5128,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -5337,6 +5368,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -5440,6 +5472,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -5679,6 +5712,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -5782,6 +5816,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -6021,6 +6056,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -6124,6 +6160,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -6363,6 +6400,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -6466,6 +6504,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -6705,6 +6744,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -6808,6 +6848,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -7047,6 +7088,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -7150,6 +7192,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -7389,6 +7432,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -7492,6 +7536,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -7731,6 +7776,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -7834,6 +7880,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -8073,6 +8120,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -8176,6 +8224,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -8415,6 +8464,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -8518,6 +8568,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -8757,6 +8808,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -8860,6 +8912,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -9099,6 +9152,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -9202,6 +9256,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -9441,6 +9496,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -9544,6 +9600,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -9783,6 +9840,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -9886,6 +9944,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -10125,6 +10184,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -10228,6 +10288,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -10467,6 +10528,7 @@ description: Variables in memory after executing ssi_pattern.kcl "id": "[uuid]", "sourceRange": [], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", @@ -10570,6 +10632,7 @@ description: Variables in memory after executing ssi_pattern.kcl -12.15 ], "tag": { + "commentStart": 264, "end": 270, "start": 264, "type": "TagDeclarator", diff --git a/rust/kcl-lib/tests/tan_arc_x_line/ast.snap b/rust/kcl-lib/tests/tan_arc_x_line/ast.snap index 65315a460..108b91620 100644 --- a/rust/kcl-lib/tests/tan_arc_x_line/ast.snap +++ b/rust/kcl-lib/tests/tan_arc_x_line/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing tan_arc_x_line.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "startX", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 9, "end": 0, "raw": "0", "start": 0, @@ -35,15 +39,19 @@ description: Result of parsing tan_arc_x_line.kcl "type": "VariableDeclaration" }, { + "commentStart": 11, "declaration": { + "commentStart": 11, "end": 0, "id": { + "commentStart": 11, "end": 0, "name": "startY", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 20, "end": 0, "raw": "0", "start": 0, @@ -64,15 +72,19 @@ description: Result of parsing tan_arc_x_line.kcl "type": "VariableDeclaration" }, { + "commentStart": 22, "declaration": { + "commentStart": 22, "end": 0, "id": { + "commentStart": 22, "end": 0, "name": "angleOffset", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 36, "end": 0, "raw": "135", "start": 0, @@ -93,15 +105,19 @@ description: Result of parsing tan_arc_x_line.kcl "type": "VariableDeclaration" }, { + "commentStart": 40, "declaration": { + "commentStart": 40, "end": 0, "id": { + "commentStart": 40, "end": 0, "name": "r", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 44, "end": 0, "raw": "1", "start": 0, @@ -122,15 +138,19 @@ description: Result of parsing tan_arc_x_line.kcl "type": "VariableDeclaration" }, { + "commentStart": 46, "declaration": { + "commentStart": 46, "end": 0, "id": { + "commentStart": 46, "end": 0, "name": "angleStart", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 59, "end": 0, "raw": "110", "start": 0, @@ -151,12 +171,14 @@ description: Result of parsing tan_arc_x_line.kcl "type": "VariableDeclaration" }, { + "commentStart": 62, "end": 0, "expression": { "body": [ { "arguments": [ { + "commentStart": 78, "end": 0, "raw": "'XY'", "start": 0, @@ -166,11 +188,13 @@ description: Result of parsing tan_arc_x_line.kcl } ], "callee": { + "commentStart": 64, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 64, "end": 0, "start": 0, "type": "CallExpression", @@ -179,8 +203,10 @@ description: Result of parsing tan_arc_x_line.kcl { "arguments": [ { + "commentStart": 104, "elements": [ { + "commentStart": 105, "end": 0, "name": "startX", "start": 0, @@ -188,6 +214,7 @@ description: Result of parsing tan_arc_x_line.kcl "type": "Identifier" }, { + "commentStart": 113, "end": 0, "name": "startY", "start": 0, @@ -201,6 +228,7 @@ description: Result of parsing tan_arc_x_line.kcl "type": "ArrayExpression" }, { + "commentStart": 122, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -208,11 +236,13 @@ description: Result of parsing tan_arc_x_line.kcl } ], "callee": { + "commentStart": 89, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 89, "end": 0, "start": 0, "type": "CallExpression", @@ -221,11 +251,14 @@ description: Result of parsing tan_arc_x_line.kcl { "arguments": [ { + "commentStart": 141, "end": 0, "properties": [ { + "commentStart": 143, "end": 0, "key": { + "commentStart": 143, "end": 0, "name": "angle", "start": 0, @@ -234,6 +267,7 @@ description: Result of parsing tan_arc_x_line.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 151, "end": 0, "name": "angleStart", "start": 0, @@ -242,8 +276,10 @@ description: Result of parsing tan_arc_x_line.kcl } }, { + "commentStart": 163, "end": 0, "key": { + "commentStart": 163, "end": 0, "name": "length", "start": 0, @@ -252,6 +288,7 @@ description: Result of parsing tan_arc_x_line.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 172, "end": 0, "raw": ".000001", "start": 0, @@ -269,6 +306,7 @@ description: Result of parsing tan_arc_x_line.kcl "type": "ObjectExpression" }, { + "commentStart": 183, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -276,11 +314,13 @@ description: Result of parsing tan_arc_x_line.kcl } ], "callee": { + "commentStart": 130, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 130, "end": 0, "start": 0, "type": "CallExpression", @@ -289,11 +329,14 @@ description: Result of parsing tan_arc_x_line.kcl { "arguments": [ { + "commentStart": 205, "end": 0, "properties": [ { + "commentStart": 207, "end": 0, "key": { + "commentStart": 207, "end": 0, "name": "offset", "start": 0, @@ -302,6 +345,7 @@ description: Result of parsing tan_arc_x_line.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 216, "end": 0, "name": "angleOffset", "start": 0, @@ -310,8 +354,10 @@ description: Result of parsing tan_arc_x_line.kcl } }, { + "commentStart": 229, "end": 0, "key": { + "commentStart": 229, "end": 0, "name": "radius", "start": 0, @@ -320,6 +366,7 @@ description: Result of parsing tan_arc_x_line.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 238, "end": 0, "name": "r", "start": 0, @@ -333,12 +380,14 @@ description: Result of parsing tan_arc_x_line.kcl "type": "ObjectExpression" }, { + "commentStart": 243, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 246, "end": 0, "start": 0, "type": "TagDeclarator", @@ -347,11 +396,13 @@ description: Result of parsing tan_arc_x_line.kcl } ], "callee": { + "commentStart": 191, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 191, "end": 0, "start": 0, "type": "CallExpression", @@ -360,11 +411,14 @@ description: Result of parsing tan_arc_x_line.kcl { "arguments": [ { + "commentStart": 272, "end": 0, "properties": [ { + "commentStart": 281, "end": 0, "key": { + "commentStart": 281, "end": 0, "name": "offset", "start": 0, @@ -373,6 +427,7 @@ description: Result of parsing tan_arc_x_line.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 290, "end": 0, "name": "angleOffset", "start": 0, @@ -381,8 +436,10 @@ description: Result of parsing tan_arc_x_line.kcl } }, { + "commentStart": 310, "end": 0, "key": { + "commentStart": 310, "end": 0, "name": "radius", "start": 0, @@ -391,8 +448,10 @@ description: Result of parsing tan_arc_x_line.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 319, "end": 0, "left": { + "commentStart": 319, "end": 0, "raw": "0.5", "start": 0, @@ -405,6 +464,7 @@ description: Result of parsing tan_arc_x_line.kcl }, "operator": "*", "right": { + "commentStart": 325, "end": 0, "name": "r", "start": 0, @@ -422,12 +482,14 @@ description: Result of parsing tan_arc_x_line.kcl "type": "ObjectExpression" }, { + "commentStart": 335, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 338, "end": 0, "start": 0, "type": "TagDeclarator", @@ -436,11 +498,13 @@ description: Result of parsing tan_arc_x_line.kcl } ], "callee": { + "commentStart": 258, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 258, "end": 0, "start": 0, "type": "CallExpression", @@ -449,11 +513,14 @@ description: Result of parsing tan_arc_x_line.kcl { "arguments": [ { + "commentStart": 364, "end": 0, "properties": [ { + "commentStart": 373, "end": 0, "key": { + "commentStart": 373, "end": 0, "name": "offset", "start": 0, @@ -463,12 +530,14 @@ description: Result of parsing tan_arc_x_line.kcl "type": "ObjectProperty", "value": { "argument": { + "commentStart": 383, "end": 0, "name": "angleOffset", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 382, "end": 0, "operator": "-", "start": 0, @@ -477,8 +546,10 @@ description: Result of parsing tan_arc_x_line.kcl } }, { + "commentStart": 403, "end": 0, "key": { + "commentStart": 403, "end": 0, "name": "radius", "start": 0, @@ -487,8 +558,10 @@ description: Result of parsing tan_arc_x_line.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 412, "end": 0, "left": { + "commentStart": 412, "end": 0, "raw": "0.5", "start": 0, @@ -501,6 +574,7 @@ description: Result of parsing tan_arc_x_line.kcl }, "operator": "*", "right": { + "commentStart": 418, "end": 0, "name": "r", "start": 0, @@ -518,12 +592,14 @@ description: Result of parsing tan_arc_x_line.kcl "type": "ObjectExpression" }, { + "commentStart": 428, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { + "commentStart": 431, "end": 0, "start": 0, "type": "TagDeclarator", @@ -532,11 +608,13 @@ description: Result of parsing tan_arc_x_line.kcl } ], "callee": { + "commentStart": 350, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 350, "end": 0, "start": 0, "type": "CallExpression", @@ -547,12 +625,14 @@ description: Result of parsing tan_arc_x_line.kcl { "type": "LabeledArg", "label": { + "commentStart": 449, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 463, "end": 0, "raw": "1", "start": 0, @@ -566,11 +646,13 @@ description: Result of parsing tan_arc_x_line.kcl } ], "callee": { + "commentStart": 443, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, + "commentStart": 443, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -578,6 +660,7 @@ description: Result of parsing tan_arc_x_line.kcl "unlabeled": null } ], + "commentStart": 64, "end": 0, "start": 0, "type": "PipeExpression", @@ -588,11 +671,13 @@ description: Result of parsing tan_arc_x_line.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "4": [ { + "commentStart": 62, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/tangential_arc/ast.snap b/rust/kcl-lib/tests/tangential_arc/ast.snap index aef4721b7..d97cca663 100644 --- a/rust/kcl-lib/tests/tangential_arc/ast.snap +++ b/rust/kcl-lib/tests/tangential_arc/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing tangential_arc.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "boxSketch", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing tangential_arc.kcl { "arguments": [ { + "commentStart": 26, "end": 0, "name": "XY", "start": 0, @@ -27,11 +31,13 @@ description: Result of parsing tangential_arc.kcl } ], "callee": { + "commentStart": 12, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 12, "end": 0, "start": 0, "type": "CallExpression", @@ -40,8 +46,10 @@ description: Result of parsing tangential_arc.kcl { "arguments": [ { + "commentStart": 50, "elements": [ { + "commentStart": 51, "end": 0, "raw": "0", "start": 0, @@ -53,6 +61,7 @@ description: Result of parsing tangential_arc.kcl } }, { + "commentStart": 54, "end": 0, "raw": "0", "start": 0, @@ -70,6 +79,7 @@ description: Result of parsing tangential_arc.kcl "type": "ArrayExpression" }, { + "commentStart": 58, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -77,11 +87,13 @@ description: Result of parsing tangential_arc.kcl } ], "callee": { + "commentStart": 35, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 35, "end": 0, "start": 0, "type": "CallExpression", @@ -92,14 +104,17 @@ description: Result of parsing tangential_arc.kcl { "type": "LabeledArg", "label": { + "commentStart": 71, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 77, "elements": [ { + "commentStart": 78, "end": 0, "raw": "0", "start": 0, @@ -111,6 +126,7 @@ description: Result of parsing tangential_arc.kcl } }, { + "commentStart": 81, "end": 0, "raw": "10", "start": 0, @@ -130,11 +146,13 @@ description: Result of parsing tangential_arc.kcl } ], "callee": { + "commentStart": 66, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -144,11 +162,14 @@ description: Result of parsing tangential_arc.kcl { "arguments": [ { + "commentStart": 105, "end": 0, "properties": [ { + "commentStart": 107, "end": 0, "key": { + "commentStart": 107, "end": 0, "name": "radius", "start": 0, @@ -157,6 +178,7 @@ description: Result of parsing tangential_arc.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 116, "end": 0, "raw": "5", "start": 0, @@ -169,8 +191,10 @@ description: Result of parsing tangential_arc.kcl } }, { + "commentStart": 119, "end": 0, "key": { + "commentStart": 119, "end": 0, "name": "offset", "start": 0, @@ -179,6 +203,7 @@ description: Result of parsing tangential_arc.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 128, "end": 0, "raw": "90", "start": 0, @@ -196,6 +221,7 @@ description: Result of parsing tangential_arc.kcl "type": "ObjectExpression" }, { + "commentStart": 134, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -203,11 +229,13 @@ description: Result of parsing tangential_arc.kcl } ], "callee": { + "commentStart": 91, "end": 0, "name": "tangentialArc", "start": 0, "type": "Identifier" }, + "commentStart": 91, "end": 0, "start": 0, "type": "CallExpression", @@ -218,14 +246,17 @@ description: Result of parsing tangential_arc.kcl { "type": "LabeledArg", "label": { + "commentStart": 147, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 153, "elements": [ { + "commentStart": 154, "end": 0, "raw": "5", "start": 0, @@ -238,6 +269,7 @@ description: Result of parsing tangential_arc.kcl }, { "argument": { + "commentStart": 158, "end": 0, "raw": "15", "start": 0, @@ -248,6 +280,7 @@ description: Result of parsing tangential_arc.kcl "suffix": "None" } }, + "commentStart": 157, "end": 0, "operator": "-", "start": 0, @@ -263,11 +296,13 @@ description: Result of parsing tangential_arc.kcl } ], "callee": { + "commentStart": 142, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 142, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -279,12 +314,14 @@ description: Result of parsing tangential_arc.kcl { "type": "LabeledArg", "label": { + "commentStart": 176, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 185, "end": 0, "raw": "10", "start": 0, @@ -298,11 +335,13 @@ description: Result of parsing tangential_arc.kcl } ], "callee": { + "commentStart": 168, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 168, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -310,6 +349,7 @@ description: Result of parsing tangential_arc.kcl "unlabeled": null } ], + "commentStart": 12, "end": 0, "start": 0, "type": "PipeExpression", @@ -325,6 +365,7 @@ description: Result of parsing tangential_arc.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/rust/kcl-lib/tests/translate_after_fillet/ast.snap b/rust/kcl-lib/tests/translate_after_fillet/ast.snap index 7b4ecd547..13f65e08f 100644 --- a/rust/kcl-lib/tests/translate_after_fillet/ast.snap +++ b/rust/kcl-lib/tests/translate_after_fillet/ast.snap @@ -6,15 +6,19 @@ description: Result of parsing translate_after_fillet.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 7, "end": 0, "id": { + "commentStart": 7, "end": 0, "name": "boltDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 22, "end": 0, "raw": "0.625", "start": 0, @@ -36,15 +40,19 @@ description: Result of parsing translate_after_fillet.kcl "visibility": "export" }, { + "commentStart": 28, "declaration": { + "commentStart": 35, "end": 0, "id": { + "commentStart": 35, "end": 0, "name": "boltLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 48, "end": 0, "raw": "2.500", "start": 0, @@ -66,15 +74,19 @@ description: Result of parsing translate_after_fillet.kcl "visibility": "export" }, { + "commentStart": 54, "declaration": { + "commentStart": 61, "end": 0, "id": { + "commentStart": 61, "end": 0, "name": "boltHeadLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 78, "end": 0, "name": "boltDiameter", "start": 0, @@ -92,15 +104,19 @@ description: Result of parsing translate_after_fillet.kcl "visibility": "export" }, { + "commentStart": 91, "declaration": { + "commentStart": 98, "end": 0, "id": { + "commentStart": 98, "end": 0, "name": "boltHeadDiameter", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 117, "end": 0, "raw": "0.938", "start": 0, @@ -122,17 +138,22 @@ description: Result of parsing translate_after_fillet.kcl "visibility": "export" }, { + "commentStart": 123, "declaration": { + "commentStart": 130, "end": 0, "id": { + "commentStart": 130, "end": 0, "name": "boltHexDrive", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 145, "end": 0, "left": { + "commentStart": 145, "end": 0, "raw": "1", "start": 0, @@ -145,6 +166,7 @@ description: Result of parsing translate_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 149, "end": 0, "raw": "2", "start": 0, @@ -170,17 +192,22 @@ description: Result of parsing translate_after_fillet.kcl "visibility": "export" }, { + "commentStart": 151, "declaration": { + "commentStart": 158, "end": 0, "id": { + "commentStart": 158, "end": 0, "name": "boltHexFlatLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 178, "end": 0, "left": { + "commentStart": 178, "end": 0, "name": "boltHexDrive", "start": 0, @@ -189,8 +216,10 @@ description: Result of parsing translate_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 194, "end": 0, "left": { + "commentStart": 194, "end": 0, "raw": "2", "start": 0, @@ -207,6 +236,7 @@ description: Result of parsing translate_after_fillet.kcl { "arguments": [ { + "commentStart": 212, "end": 0, "raw": "30", "start": 0, @@ -219,11 +249,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 202, "end": 0, "name": "toRadians", "start": 0, "type": "Identifier" }, + "commentStart": 202, "end": 0, "start": 0, "type": "CallExpression", @@ -231,11 +263,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 198, "end": 0, "name": "cos", "start": 0, "type": "Identifier" }, + "commentStart": 198, "end": 0, "start": 0, "type": "CallExpression", @@ -260,15 +294,19 @@ description: Result of parsing translate_after_fillet.kcl "visibility": "export" }, { + "commentStart": 218, "declaration": { + "commentStart": 225, "end": 0, "id": { + "commentStart": 225, "end": 0, "name": "boltThreadLength", "start": 0, "type": "Identifier" }, "init": { + "commentStart": 244, "end": 0, "raw": "1.75", "start": 0, @@ -290,9 +328,12 @@ description: Result of parsing translate_after_fillet.kcl "visibility": "export" }, { + "commentStart": 248, "declaration": { + "commentStart": 260, "end": 0, "id": { + "commentStart": 260, "end": 0, "name": "bolt", "start": 0, @@ -302,9 +343,12 @@ description: Result of parsing translate_after_fillet.kcl "body": { "body": [ { + "commentStart": 268, "declaration": { + "commentStart": 309, "end": 0, "id": { + "commentStart": 309, "end": 0, "name": "boltHead", "start": 0, @@ -315,6 +359,7 @@ description: Result of parsing translate_after_fillet.kcl { "arguments": [ { + "commentStart": 334, "end": 0, "raw": "'XZ'", "start": 0, @@ -324,11 +369,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 320, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 320, "end": 0, "start": 0, "type": "CallExpression", @@ -339,14 +386,17 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 354, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 363, "elements": [ { + "commentStart": 364, "end": 0, "raw": "0", "start": 0, @@ -358,6 +408,7 @@ description: Result of parsing translate_after_fillet.kcl } }, { + "commentStart": 367, "end": 0, "raw": "0", "start": 0, @@ -378,14 +429,17 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 371, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 380, "end": 0, "left": { + "commentStart": 380, "end": 0, "name": "boltHeadDiameter", "start": 0, @@ -394,6 +448,7 @@ description: Result of parsing translate_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 399, "end": 0, "raw": "2", "start": 0, @@ -412,12 +467,14 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 402, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 408, "end": 0, "start": 0, "type": "TagDeclarator", @@ -427,11 +484,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 347, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 347, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -443,6 +502,7 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 433, "end": 0, "name": "length", "start": 0, @@ -450,12 +510,14 @@ description: Result of parsing translate_after_fillet.kcl }, "arg": { "argument": { + "commentStart": 443, "end": 0, "name": "boltHeadLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 442, "end": 0, "operator": "-", "start": 0, @@ -465,11 +527,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 425, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 425, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -481,12 +545,14 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 473, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 482, "end": 0, "raw": "0.020", "start": 0, @@ -501,14 +567,17 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 489, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 496, "elements": [ { + "commentStart": 497, "end": 0, "name": "topEdge", "start": 0, @@ -518,6 +587,7 @@ description: Result of parsing translate_after_fillet.kcl { "arguments": [ { + "commentStart": 522, "end": 0, "name": "topEdge", "start": 0, @@ -526,11 +596,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 506, "end": 0, "name": "getOppositeEdge", "start": 0, "type": "Identifier" }, + "commentStart": 506, "end": 0, "start": 0, "type": "CallExpression", @@ -545,11 +617,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 466, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 466, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -557,11 +631,13 @@ description: Result of parsing translate_after_fillet.kcl "unlabeled": null } ], + "commentStart": 320, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "3": [ { + "commentStart": 534, "end": 0, "start": 0, "type": "NonCodeNode", @@ -584,14 +660,20 @@ description: Result of parsing translate_after_fillet.kcl }, "end": 0, "kind": "const", + "preComments": [ + "// Create the head of the cap screw" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { + "commentStart": 596, "declaration": { + "commentStart": 596, "end": 0, "id": { + "commentStart": 596, "end": 0, "name": "hexPatternSketch", "start": 0, @@ -602,6 +684,7 @@ description: Result of parsing translate_after_fillet.kcl { "arguments": [ { + "commentStart": 629, "end": 0, "name": "boltHead", "start": 0, @@ -609,6 +692,7 @@ description: Result of parsing translate_after_fillet.kcl "type": "Identifier" }, { + "commentStart": 639, "end": 0, "raw": "'start'", "start": 0, @@ -618,11 +702,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 615, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 615, "end": 0, "start": 0, "type": "CallExpression", @@ -631,10 +717,13 @@ description: Result of parsing translate_after_fillet.kcl { "arguments": [ { + "commentStart": 670, "elements": [ { + "commentStart": 681, "end": 0, "left": { + "commentStart": 681, "end": 0, "name": "boltHexDrive", "start": 0, @@ -643,6 +732,7 @@ description: Result of parsing translate_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 696, "end": 0, "raw": "2", "start": 0, @@ -658,8 +748,10 @@ description: Result of parsing translate_after_fillet.kcl "type": "BinaryExpression" }, { + "commentStart": 708, "end": 0, "left": { + "commentStart": 708, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -668,6 +760,7 @@ description: Result of parsing translate_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 728, "end": 0, "raw": "2", "start": 0, @@ -689,6 +782,7 @@ description: Result of parsing translate_after_fillet.kcl "type": "ArrayExpression" }, { + "commentStart": 740, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -696,11 +790,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 655, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 655, "end": 0, "start": 0, "type": "CallExpression", @@ -709,11 +805,14 @@ description: Result of parsing translate_after_fillet.kcl { "arguments": [ { + "commentStart": 761, "end": 0, "properties": [ { + "commentStart": 772, "end": 0, "key": { + "commentStart": 772, "end": 0, "name": "angle", "start": 0, @@ -722,6 +821,7 @@ description: Result of parsing translate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 780, "end": 0, "raw": "270", "start": 0, @@ -734,8 +834,10 @@ description: Result of parsing translate_after_fillet.kcl } }, { + "commentStart": 794, "end": 0, "key": { + "commentStart": 794, "end": 0, "name": "length", "start": 0, @@ -744,6 +846,7 @@ description: Result of parsing translate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 803, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -757,6 +860,7 @@ description: Result of parsing translate_after_fillet.kcl "type": "ObjectExpression" }, { + "commentStart": 831, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -764,11 +868,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 750, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 750, "end": 0, "start": 0, "type": "CallExpression", @@ -777,11 +883,14 @@ description: Result of parsing translate_after_fillet.kcl { "arguments": [ { + "commentStart": 852, "end": 0, "properties": [ { + "commentStart": 863, "end": 0, "key": { + "commentStart": 863, "end": 0, "name": "angle", "start": 0, @@ -790,6 +899,7 @@ description: Result of parsing translate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 871, "end": 0, "raw": "210", "start": 0, @@ -802,8 +912,10 @@ description: Result of parsing translate_after_fillet.kcl } }, { + "commentStart": 885, "end": 0, "key": { + "commentStart": 885, "end": 0, "name": "length", "start": 0, @@ -812,6 +924,7 @@ description: Result of parsing translate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 894, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -825,6 +938,7 @@ description: Result of parsing translate_after_fillet.kcl "type": "ObjectExpression" }, { + "commentStart": 922, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -832,11 +946,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 841, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 841, "end": 0, "start": 0, "type": "CallExpression", @@ -845,11 +961,14 @@ description: Result of parsing translate_after_fillet.kcl { "arguments": [ { + "commentStart": 943, "end": 0, "properties": [ { + "commentStart": 954, "end": 0, "key": { + "commentStart": 954, "end": 0, "name": "angle", "start": 0, @@ -858,6 +977,7 @@ description: Result of parsing translate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 962, "end": 0, "raw": "150", "start": 0, @@ -870,8 +990,10 @@ description: Result of parsing translate_after_fillet.kcl } }, { + "commentStart": 976, "end": 0, "key": { + "commentStart": 976, "end": 0, "name": "length", "start": 0, @@ -880,6 +1002,7 @@ description: Result of parsing translate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 985, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -893,6 +1016,7 @@ description: Result of parsing translate_after_fillet.kcl "type": "ObjectExpression" }, { + "commentStart": 1013, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -900,11 +1024,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 932, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 932, "end": 0, "start": 0, "type": "CallExpression", @@ -913,11 +1039,14 @@ description: Result of parsing translate_after_fillet.kcl { "arguments": [ { + "commentStart": 1034, "end": 0, "properties": [ { + "commentStart": 1045, "end": 0, "key": { + "commentStart": 1045, "end": 0, "name": "angle", "start": 0, @@ -926,6 +1055,7 @@ description: Result of parsing translate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1053, "end": 0, "raw": "90", "start": 0, @@ -938,8 +1068,10 @@ description: Result of parsing translate_after_fillet.kcl } }, { + "commentStart": 1066, "end": 0, "key": { + "commentStart": 1066, "end": 0, "name": "length", "start": 0, @@ -948,6 +1080,7 @@ description: Result of parsing translate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1075, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -961,6 +1094,7 @@ description: Result of parsing translate_after_fillet.kcl "type": "ObjectExpression" }, { + "commentStart": 1103, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -968,11 +1102,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 1023, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1023, "end": 0, "start": 0, "type": "CallExpression", @@ -981,11 +1117,14 @@ description: Result of parsing translate_after_fillet.kcl { "arguments": [ { + "commentStart": 1124, "end": 0, "properties": [ { + "commentStart": 1135, "end": 0, "key": { + "commentStart": 1135, "end": 0, "name": "angle", "start": 0, @@ -994,6 +1133,7 @@ description: Result of parsing translate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1143, "end": 0, "raw": "30", "start": 0, @@ -1006,8 +1146,10 @@ description: Result of parsing translate_after_fillet.kcl } }, { + "commentStart": 1156, "end": 0, "key": { + "commentStart": 1156, "end": 0, "name": "length", "start": 0, @@ -1016,6 +1158,7 @@ description: Result of parsing translate_after_fillet.kcl "start": 0, "type": "ObjectProperty", "value": { + "commentStart": 1165, "end": 0, "name": "boltHexFlatLength", "start": 0, @@ -1029,6 +1172,7 @@ description: Result of parsing translate_after_fillet.kcl "type": "ObjectExpression" }, { + "commentStart": 1193, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1036,11 +1180,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 1113, "end": 0, "name": "angledLine", "start": 0, "type": "Identifier" }, + "commentStart": 1113, "end": 0, "start": 0, "type": "CallExpression", @@ -1049,11 +1195,13 @@ description: Result of parsing translate_after_fillet.kcl { "arguments": [], "callee": { + "commentStart": 1203, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 1203, "end": 0, "start": 0, "type": "CallExpression", @@ -1064,21 +1212,25 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1226, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1235, "end": 0, "left": { "argument": { + "commentStart": 1236, "end": 0, "name": "boltHeadLength", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1235, "end": 0, "operator": "-", "start": 0, @@ -1087,6 +1239,7 @@ description: Result of parsing translate_after_fillet.kcl }, "operator": "*", "right": { + "commentStart": 1253, "end": 0, "raw": "0.75", "start": 0, @@ -1104,11 +1257,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 1218, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1218, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1116,6 +1271,7 @@ description: Result of parsing translate_after_fillet.kcl "unlabeled": null } ], + "commentStart": 615, "end": 0, "start": 0, "type": "PipeExpression", @@ -1131,9 +1287,12 @@ description: Result of parsing translate_after_fillet.kcl "type": "VariableDeclaration" }, { + "commentStart": 1258, "declaration": { + "commentStart": 1262, "end": 0, "id": { + "commentStart": 1262, "end": 0, "name": "boltBody", "start": 0, @@ -1144,6 +1303,7 @@ description: Result of parsing translate_after_fillet.kcl { "arguments": [ { + "commentStart": 1287, "end": 0, "name": "boltHead", "start": 0, @@ -1151,6 +1311,7 @@ description: Result of parsing translate_after_fillet.kcl "type": "Identifier" }, { + "commentStart": 1297, "end": 0, "raw": "'end'", "start": 0, @@ -1160,11 +1321,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 1273, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 1273, "end": 0, "start": 0, "type": "CallExpression", @@ -1175,14 +1338,17 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1318, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1327, "elements": [ { + "commentStart": 1328, "end": 0, "raw": "0", "start": 0, @@ -1194,6 +1360,7 @@ description: Result of parsing translate_after_fillet.kcl } }, { + "commentStart": 1331, "end": 0, "raw": "0", "start": 0, @@ -1214,14 +1381,17 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1335, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1344, "end": 0, "left": { + "commentStart": 1344, "end": 0, "name": "boltDiameter", "start": 0, @@ -1230,6 +1400,7 @@ description: Result of parsing translate_after_fillet.kcl }, "operator": "/", "right": { + "commentStart": 1359, "end": 0, "raw": "2", "start": 0, @@ -1248,12 +1419,14 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1362, "end": 0, "name": "tag", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1368, "end": 0, "start": 0, "type": "TagDeclarator", @@ -1263,11 +1436,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 1311, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, + "commentStart": 1311, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1279,12 +1454,14 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1396, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1405, "end": 0, "name": "boltLength", "start": 0, @@ -1294,11 +1471,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 1388, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 1388, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1310,12 +1489,14 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1431, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1440, "end": 0, "raw": ".020", "start": 0, @@ -1330,16 +1511,19 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1446, "end": 0, "name": "tags", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1453, "elements": [ { "arguments": [ { + "commentStart": 1470, "end": 0, "name": "filletEdge", "start": 0, @@ -1348,11 +1532,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 1454, "end": 0, "name": "getOppositeEdge", "start": 0, "type": "Identifier" }, + "commentStart": 1454, "end": 0, "start": 0, "type": "CallExpression", @@ -1367,11 +1553,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 1424, "end": 0, "name": "fillet", "start": 0, "type": "Identifier" }, + "commentStart": 1424, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1383,12 +1571,14 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1502, "end": 0, "name": "color", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1510, "end": 0, "raw": "\"#4dd043\"", "start": 0, @@ -1400,12 +1590,14 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1521, "end": 0, "name": "metalness", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1533, "end": 0, "raw": "90", "start": 0, @@ -1420,12 +1612,14 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1537, "end": 0, "name": "roughness", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1549, "end": 0, "raw": "90", "start": 0, @@ -1439,11 +1633,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 1491, "end": 0, "name": "appearance", "start": 0, "type": "Identifier" }, + "commentStart": 1491, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1451,6 +1647,7 @@ description: Result of parsing translate_after_fillet.kcl "unlabeled": null } ], + "commentStart": 1273, "end": 0, "start": 0, "type": "PipeExpression", @@ -1467,23 +1664,27 @@ description: Result of parsing translate_after_fillet.kcl }, { "argument": { + "commentStart": 1563, "end": 0, "name": "boltBody", "start": 0, "type": "Identifier", "type": "Identifier" }, + "commentStart": 1552, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], + "commentStart": 268, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 1258, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1494,6 +1695,7 @@ description: Result of parsing translate_after_fillet.kcl ], "2": [ { + "commentStart": 1552, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1503,21 +1705,11 @@ description: Result of parsing translate_after_fillet.kcl } ] }, - "startNodes": [ - { - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "blockComment", - "value": "Create the head of the cap screw", - "style": "line" - } - } - ] + "startNodes": [] }, "start": 0 }, + "commentStart": 264, "end": 0, "params": [], "start": 0, @@ -1535,17 +1727,20 @@ description: Result of parsing translate_after_fillet.kcl "visibility": "export" }, { + "commentStart": 1573, "end": 0, "expression": { "body": [ { "arguments": [], "callee": { + "commentStart": 1575, "end": 0, "name": "bolt", "start": 0, "type": "Identifier" }, + "commentStart": 1575, "end": 0, "start": 0, "type": "CallExpression", @@ -1556,14 +1751,17 @@ description: Result of parsing translate_after_fillet.kcl { "type": "LabeledArg", "label": { + "commentStart": 1597, "end": 0, "name": "translate", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 1609, "elements": [ { + "commentStart": 1610, "end": 0, "raw": "10", "start": 0, @@ -1575,6 +1773,7 @@ description: Result of parsing translate_after_fillet.kcl } }, { + "commentStart": 1614, "end": 0, "raw": "0", "start": 0, @@ -1586,6 +1785,7 @@ description: Result of parsing translate_after_fillet.kcl } }, { + "commentStart": 1617, "end": 0, "raw": "0", "start": 0, @@ -1605,11 +1805,13 @@ description: Result of parsing translate_after_fillet.kcl } ], "callee": { + "commentStart": 1587, "end": 0, "name": "translate", "start": 0, "type": "Identifier" }, + "commentStart": 1587, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1617,11 +1819,13 @@ description: Result of parsing translate_after_fillet.kcl "unlabeled": null } ], + "commentStart": 1575, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { + "commentStart": 1620, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1644,11 +1848,13 @@ description: Result of parsing translate_after_fillet.kcl "type": "ExpressionStatement" } ], + "commentStart": 0, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "6": [ { + "commentStart": 248, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1659,6 +1865,7 @@ description: Result of parsing translate_after_fillet.kcl ], "7": [ { + "commentStart": 1573, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/xz_plane/ast.snap b/rust/kcl-lib/tests/xz_plane/ast.snap index a31531c1b..e164a7f1c 100644 --- a/rust/kcl-lib/tests/xz_plane/ast.snap +++ b/rust/kcl-lib/tests/xz_plane/ast.snap @@ -6,9 +6,12 @@ description: Result of parsing xz_plane.kcl "Ok": { "body": [ { + "commentStart": 0, "declaration": { + "commentStart": 0, "end": 0, "id": { + "commentStart": 0, "end": 0, "name": "part001", "start": 0, @@ -19,6 +22,7 @@ description: Result of parsing xz_plane.kcl { "arguments": [ { + "commentStart": 24, "end": 0, "raw": "'XZ'", "start": 0, @@ -28,11 +32,13 @@ description: Result of parsing xz_plane.kcl } ], "callee": { + "commentStart": 10, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, + "commentStart": 10, "end": 0, "start": 0, "type": "CallExpression", @@ -41,8 +47,10 @@ description: Result of parsing xz_plane.kcl { "arguments": [ { + "commentStart": 50, "elements": [ { + "commentStart": 51, "end": 0, "raw": "0", "start": 0, @@ -54,6 +62,7 @@ description: Result of parsing xz_plane.kcl } }, { + "commentStart": 54, "end": 0, "raw": "0", "start": 0, @@ -71,6 +80,7 @@ description: Result of parsing xz_plane.kcl "type": "ArrayExpression" }, { + "commentStart": 58, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -78,11 +88,13 @@ description: Result of parsing xz_plane.kcl } ], "callee": { + "commentStart": 35, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, + "commentStart": 35, "end": 0, "start": 0, "type": "CallExpression", @@ -93,14 +105,17 @@ description: Result of parsing xz_plane.kcl { "type": "LabeledArg", "label": { + "commentStart": 71, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 85, "elements": [ { + "commentStart": 86, "end": 0, "raw": "100", "start": 0, @@ -112,6 +127,7 @@ description: Result of parsing xz_plane.kcl } }, { + "commentStart": 91, "end": 0, "raw": "100", "start": 0, @@ -131,11 +147,13 @@ description: Result of parsing xz_plane.kcl } ], "callee": { + "commentStart": 66, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 66, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -147,14 +165,17 @@ description: Result of parsing xz_plane.kcl { "type": "LabeledArg", "label": { + "commentStart": 107, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 121, "elements": [ { + "commentStart": 122, "end": 0, "raw": "100", "start": 0, @@ -166,6 +187,7 @@ description: Result of parsing xz_plane.kcl } }, { + "commentStart": 127, "end": 0, "raw": "0", "start": 0, @@ -185,11 +207,13 @@ description: Result of parsing xz_plane.kcl } ], "callee": { + "commentStart": 102, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, + "commentStart": 102, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -199,6 +223,7 @@ description: Result of parsing xz_plane.kcl { "arguments": [ { + "commentStart": 142, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -206,11 +231,13 @@ description: Result of parsing xz_plane.kcl } ], "callee": { + "commentStart": 136, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, + "commentStart": 136, "end": 0, "start": 0, "type": "CallExpression", @@ -221,14 +248,17 @@ description: Result of parsing xz_plane.kcl { "type": "LabeledArg", "label": { + "commentStart": 158, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { + "commentStart": 167, "end": 0, "left": { + "commentStart": 167, "end": 0, "raw": "5", "start": 0, @@ -241,6 +271,7 @@ description: Result of parsing xz_plane.kcl }, "operator": "+", "right": { + "commentStart": 171, "end": 0, "raw": "7", "start": 0, @@ -258,11 +289,13 @@ description: Result of parsing xz_plane.kcl } ], "callee": { + "commentStart": 150, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, + "commentStart": 150, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -270,6 +303,7 @@ description: Result of parsing xz_plane.kcl "unlabeled": null } ], + "commentStart": 10, "end": 0, "start": 0, "type": "PipeExpression", @@ -285,6 +319,7 @@ description: Result of parsing xz_plane.kcl "type": "VariableDeclaration" } ], + "commentStart": 0, "end": 0, "start": 0 } diff --git a/src/lang/KclSingleton.ts b/src/lang/KclSingleton.ts index 09ee197b8..1f4d91ff3 100644 --- a/src/lang/KclSingleton.ts +++ b/src/lang/KclSingleton.ts @@ -65,6 +65,8 @@ export class KclManager { }, innerAttrs: [], outerAttrs: [], + preComments: [], + commentStart: 0, } private _execState: ExecState = emptyExecState() private _variables: VariableMap = {} @@ -261,6 +263,8 @@ export class KclManager { }, innerAttrs: [], outerAttrs: [], + preComments: [], + commentStart: 0, } } diff --git a/src/lang/artifact.test.ts b/src/lang/artifact.test.ts index eead34364..868bc983f 100644 --- a/src/lang/artifact.test.ts +++ b/src/lang/artifact.test.ts @@ -189,6 +189,7 @@ const sk2 = startSketchOn('XY') tag: { end: 140, start: 138, + commentStart: expect.any(Number), type: 'TagDeclarator', value: 'p', }, @@ -239,6 +240,7 @@ const sk2 = startSketchOn('XY') tag: { end: expect.any(Number), start: expect.any(Number), + commentStart: expect.any(Number), type: 'TagDeclarator', value: 'p', }, @@ -288,6 +290,7 @@ const sk2 = startSketchOn('XY') tag: { end: expect.any(Number), start: expect.any(Number), + commentStart: expect.any(Number), type: 'TagDeclarator', value: 'o', }, @@ -338,6 +341,7 @@ const sk2 = startSketchOn('XY') tag: { end: expect.any(Number), start: expect.any(Number), + commentStart: expect.any(Number), type: 'TagDeclarator', value: 'o', }, diff --git a/src/lang/executor.test.ts b/src/lang/executor.test.ts index 8bc4cc6de..b1283c5a7 100644 --- a/src/lang/executor.test.ts +++ b/src/lang/executor.test.ts @@ -79,6 +79,7 @@ const newVar = myVar + 1` tag: { end: 111, start: 104, + commentStart: expect.any(Number), type: 'TagDeclarator', value: 'myPath', }, @@ -106,6 +107,7 @@ const newVar = myVar + 1` tag: { end: 192, start: 182, + commentStart: expect.any(Number), type: 'TagDeclarator', value: 'rightPath', }, @@ -204,6 +206,7 @@ const newVar = myVar + 1` tag: { end: 140, start: 133, + commentStart: expect.any(Number), type: 'TagDeclarator', value: 'myPath', }, diff --git a/src/lang/modifyAst.test.ts b/src/lang/modifyAst.test.ts index fbcd1808c..d302e2068 100644 --- a/src/lang/modifyAst.test.ts +++ b/src/lang/modifyAst.test.ts @@ -135,6 +135,8 @@ describe('Testing findUniqueName', () => { end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, }, { type: 'Identifier', @@ -143,6 +145,8 @@ describe('Testing findUniqueName', () => { end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, }, { type: 'Identifier', @@ -151,6 +155,8 @@ describe('Testing findUniqueName', () => { end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, }, { type: 'Identifier', @@ -159,6 +165,8 @@ describe('Testing findUniqueName', () => { end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, }, { type: 'Identifier', @@ -167,6 +175,8 @@ describe('Testing findUniqueName', () => { end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, }, { type: 'Identifier', @@ -175,6 +185,8 @@ describe('Testing findUniqueName', () => { end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, }, { type: 'Identifier', @@ -183,6 +195,8 @@ describe('Testing findUniqueName', () => { end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, }, { type: 'Identifier', @@ -191,6 +205,8 @@ describe('Testing findUniqueName', () => { end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, }, { type: 'Identifier', @@ -199,6 +215,8 @@ describe('Testing findUniqueName', () => { end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, }, ] satisfies Node[]), 'yo', @@ -219,6 +237,8 @@ describe('Testing addSketchTo', () => { nonCodeMeta: { nonCodeNodes: {}, startNodes: [] }, innerAttrs: [], outerAttrs: [], + preComments: [], + commentStart: 0, }, 'yz' ) diff --git a/src/lang/modifyAst.ts b/src/lang/modifyAst.ts index 53818526b..b2bfe06b1 100644 --- a/src/lang/modifyAst.ts +++ b/src/lang/modifyAst.ts @@ -334,6 +334,8 @@ export function mutateObjExpProp( end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, }) } } @@ -995,6 +997,8 @@ export function createLiteral(value: LiteralValue | number): Node { value, raw, outerAttrs: [], + preComments: [], + commentStart: 0, } } @@ -1005,6 +1009,8 @@ export function createTagDeclarator(value: string): Node { end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, value, } @@ -1017,6 +1023,8 @@ export function createIdentifier(name: string): Node { end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, name, } @@ -1029,6 +1037,8 @@ export function createPipeSubstitution(): Node { end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, } } @@ -1042,12 +1052,16 @@ export function createCallExpressionStdLib( end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, callee: { type: 'Identifier', start: 0, end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, name, }, @@ -1066,6 +1080,8 @@ export function createCallExpressionStdLibKw( end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, nonCodeMeta: nonCodeMetaEmpty(), callee: { type: 'Identifier', @@ -1073,6 +1089,8 @@ export function createCallExpressionStdLibKw( end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, name, }, @@ -1091,12 +1109,16 @@ export function createCallExpression( end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, callee: { type: 'Identifier', start: 0, end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, name, }, @@ -1113,6 +1135,8 @@ export function createArrayExpression( end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, nonCodeMeta: nonCodeMetaEmpty(), elements, @@ -1128,6 +1152,8 @@ export function createPipeExpression( end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, body, nonCodeMeta: nonCodeMetaEmpty(), @@ -1146,6 +1172,8 @@ export function createVariableDeclaration( end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, declaration: { type: 'VariableDeclarator', @@ -1153,6 +1181,8 @@ export function createVariableDeclaration( end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, id: createIdentifier(varName), init, @@ -1171,6 +1201,8 @@ export function createObjectExpression(properties: { end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, nonCodeMeta: nonCodeMetaEmpty(), properties: Object.entries(properties).map(([key, value]) => ({ @@ -1179,6 +1211,8 @@ export function createObjectExpression(properties: { end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, key: createIdentifier(key), value, @@ -1196,6 +1230,8 @@ export function createUnaryExpression( end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, operator, argument, @@ -1213,6 +1249,8 @@ export function createBinaryExpression([left, operator, right]: [ end: 0, moduleId: 0, outerAttrs: [], + preComments: [], + commentStart: 0, operator, left, diff --git a/src/lang/queryAst/getIdentifiersInProgram.test.ts b/src/lang/queryAst/getIdentifiersInProgram.test.ts index fef514d3e..5bf2f87dc 100644 --- a/src/lang/queryAst/getIdentifiersInProgram.test.ts +++ b/src/lang/queryAst/getIdentifiersInProgram.test.ts @@ -7,6 +7,7 @@ function identifier(name: string, start: number, end: number) { name, start, end, + commentStart: start, } } diff --git a/src/lang/queryAst/getTagDeclaratorsInProgram.test.ts b/src/lang/queryAst/getTagDeclaratorsInProgram.test.ts index 8e93f178b..936df9742 100644 --- a/src/lang/queryAst/getTagDeclaratorsInProgram.test.ts +++ b/src/lang/queryAst/getTagDeclaratorsInProgram.test.ts @@ -13,6 +13,7 @@ function tagDeclaratorWithIndex( value, start, end, + commentStart: start, }, bodyIndex, } diff --git a/src/lang/recast.test.ts b/src/lang/recast.test.ts index bf0955f1c..1cbb56766 100644 --- a/src/lang/recast.test.ts +++ b/src/lang/recast.test.ts @@ -221,41 +221,12 @@ key = 'c' expect(recasted).toBe(code) }) - it('code with comment and extra lines', () => { - const code = `yo = 'c' - -/* this is -a -comment */ -yo = 'bing' -` - const { ast } = code2ast(code) - const recasted = recast(ast) - if (err(recasted)) throw recasted - expect(recasted).toBe(code) - }) it('comments at the start and end', () => { const code = `// this is a comment yo = { a = { b = { c = '123' } } } key = 'c' // this is also a comment -` - const { ast } = code2ast(code) - const recasted = recast(ast) - if (err(recasted)) throw recasted - expect(recasted).toBe(code) - }) - it('comments in a fn block', () => { - const code = `fn myFn() { - // this is a comment - yo = { a = { b = { c = '123' } } } - - /* block - comment */ - key = 'c' - // this is also a comment -} ` const { ast } = code2ast(code) const recasted = recast(ast) diff --git a/src/lang/std/sketch.ts b/src/lang/std/sketch.ts index 0ab4671c7..86864879f 100644 --- a/src/lang/std/sketch.ts +++ b/src/lang/std/sketch.ts @@ -2898,6 +2898,8 @@ export const updateStartProfileAtArgs: SketchLineHelper['updateArgs'] = ({ }, innerAttrs: [], outerAttrs: [], + preComments: [], + commentStart: 0, }, pathToNode, } @@ -3547,6 +3549,7 @@ function addTagKw(): addTagFn { end: callExpr.node.end, moduleId: callExpr.node.moduleId, outerAttrs: callExpr.node.outerAttrs, + commentStart: callExpr.node.start, }) } diff --git a/src/lib/rustContext.ts b/src/lib/rustContext.ts index ff0a58c23..765090d1c 100644 --- a/src/lib/rustContext.ts +++ b/src/lib/rustContext.ts @@ -168,6 +168,8 @@ export default class RustContext { }, innerAttrs: [], outerAttrs: [], + preComments: [], + commentStart: 0, } await this.execute(ast, settings, path) From 2d4339970331539a939d44bfe7479f7cf8a7ee7f Mon Sep 17 00:00:00 2001 From: Jonathan Tran Date: Wed, 19 Mar 2025 23:49:06 -0400 Subject: [PATCH 07/20] Update pipe flange assembly (#5893) * update pipe flange assy and small change to walkie talkie * update header in globals.kcl * Update kcl-samples simulation test output * Update kcl-samples simulation test output * Update output after merge --------- Co-authored-by: jgomez720 <114548659+jgomez720@users.noreply.github.com> Co-authored-by: github-actions[bot] --- public/kcl-samples/manifest.json | 2 +- .../pipe-flange-assembly/1120t74-pipe.kcl | 25 + .../pipe-flange-assembly/68095k348-flange.kcl | 46 + .../pipe-flange-assembly/91251a404-bolt.kcl | 56 + .../pipe-flange-assembly/9472k188-gasket.kcl | 26 + .../95479a127-hex-nut.kcl | 49 + .../pipe-flange-assembly/98017a257-washer.kcl | 26 + .../pipe-flange-assembly/globals.kcl | 48 + .../kcl-samples/pipe-flange-assembly/main.kcl | 336 +- .../mcmaster-parts/1120t74-pipe.step | 269 + .../mcmaster-parts/68095k348-flange.step | 935 + .../mcmaster-parts/91251a404-bolt.step | 20112 ++++++++++++++++ .../mcmaster-parts/9472k188-gasket.step | 269 + .../mcmaster-parts/95479a127-hex-nut.step | 4009 +++ .../mcmaster-parts/98017a257-washer.step | 373 + .../screenshots/pipe-flange-assembly.png | Bin 89783 -> 79966 bytes .../kcl-samples/screenshots/walkie-talkie.png | Bin 59676 -> 68295 bytes public/kcl-samples/walkie-talkie/antenna.kcl | 2 +- .../artifact_commands.snap | 6626 ++--- .../artifact_graph_flowchart.snap.md | 1019 +- .../kcl_samples/pipe-flange-assembly/ast.snap | 11366 ++------- .../kcl_samples/pipe-flange-assembly/ops.snap | 2816 +-- .../pipe-flange-assembly/program_memory.snap | 2984 +-- .../pipe-flange-assembly/rendered_model.png | Bin 89783 -> 79966 bytes .../walkie-talkie/artifact_commands.snap | 2 +- .../tests/kcl_samples/walkie-talkie/ops.snap | 2 +- .../walkie-talkie/rendered_model.png | Bin 59676 -> 68295 bytes 27 files changed, 33721 insertions(+), 17677 deletions(-) create mode 100644 public/kcl-samples/pipe-flange-assembly/1120t74-pipe.kcl create mode 100644 public/kcl-samples/pipe-flange-assembly/68095k348-flange.kcl create mode 100644 public/kcl-samples/pipe-flange-assembly/91251a404-bolt.kcl create mode 100644 public/kcl-samples/pipe-flange-assembly/9472k188-gasket.kcl create mode 100644 public/kcl-samples/pipe-flange-assembly/95479a127-hex-nut.kcl create mode 100644 public/kcl-samples/pipe-flange-assembly/98017a257-washer.kcl create mode 100644 public/kcl-samples/pipe-flange-assembly/globals.kcl create mode 100644 public/kcl-samples/pipe-flange-assembly/mcmaster-parts/1120t74-pipe.step create mode 100644 public/kcl-samples/pipe-flange-assembly/mcmaster-parts/68095k348-flange.step create mode 100644 public/kcl-samples/pipe-flange-assembly/mcmaster-parts/91251a404-bolt.step create mode 100644 public/kcl-samples/pipe-flange-assembly/mcmaster-parts/9472k188-gasket.step create mode 100644 public/kcl-samples/pipe-flange-assembly/mcmaster-parts/95479a127-hex-nut.step create mode 100644 public/kcl-samples/pipe-flange-assembly/mcmaster-parts/98017a257-washer.step diff --git a/public/kcl-samples/manifest.json b/public/kcl-samples/manifest.json index d1962dae3..b6ce2c1e3 100644 --- a/public/kcl-samples/manifest.json +++ b/public/kcl-samples/manifest.json @@ -198,7 +198,7 @@ { "file": "main.kcl", "pathFromProjectDirectoryToFirstFile": "pipe-flange-assembly/main.kcl", - "multipleFiles": false, + "multipleFiles": true, "title": "Pipe and Flange Assembly", "description": "A crucial component in various piping systems, designed to facilitate the connection, disconnection, and access to piping for inspection, cleaning, and modifications. This assembly combines pipes (long cylindrical conduits) with flanges (plate-like fittings) to create a secure yet detachable joint." }, diff --git a/public/kcl-samples/pipe-flange-assembly/1120t74-pipe.kcl b/public/kcl-samples/pipe-flange-assembly/1120t74-pipe.kcl new file mode 100644 index 000000000..8b1f6d650 --- /dev/null +++ b/public/kcl-samples/pipe-flange-assembly/1120t74-pipe.kcl @@ -0,0 +1,25 @@ +// 1120t74 Pipe + +// import constants +import pipeInnerDiameter, pipeOuterDiameter, pipeLength from "globals.kcl" + +// set units +@settings(defaultLengthUnit = in) + +// create a function to make the pipe +export fn pipe() { + + // create the pipe base + pipeBase = startSketchOn('XZ') + |> circle(%, center = [0, 0], radius = pipeOuterDiameter / 2) + |> extrude(%, length = pipeLength) + + // extrude a hole through the length of the pipe + pipe = startSketchOn(pipeBase, 'end') + |> circle(center = [0, 0], radius = pipeInnerDiameter / 2) + |> extrude(%, length = -pipeLength) + |> appearance(color = "#a24ed0") + return pipe +} + +// https://www.mcmaster.com/1120T74/ diff --git a/public/kcl-samples/pipe-flange-assembly/68095k348-flange.kcl b/public/kcl-samples/pipe-flange-assembly/68095k348-flange.kcl new file mode 100644 index 000000000..a4164dce1 --- /dev/null +++ b/public/kcl-samples/pipe-flange-assembly/68095k348-flange.kcl @@ -0,0 +1,46 @@ +// 68095k348 flange + +// import constants +import pipeDiameter, mountingHoleDiameter, mountingHolePlacementDiameter, flangeDiameter, flangeTotalThickness, flangeBackHeight, flangeFrontHeight, flangeBaseThickness, flangeBackDiameter, flangeFrontDiameter from "globals.kcl" + +// set units +@settings(defaultLengthUnit = in) + +// create a function to create the flange +export fn flange() { + + // sketch the mounting hole pattern + mountingHoles = startSketchOn("XY") + |> circle(%, center = [0, mountingHolePlacementDiameter / 2], radius = mountingHoleDiameter / 2) + |> patternCircular2d( + %, + instances = 4, + center = [0, 0], + arcDegrees = 360, + rotateDuplicates = false, + ) + + // create the flange base + flangeBase = startSketchOn("XY") + |> circle(%, center = [0, 0], radius = flangeDiameter / 2) + |> hole(mountingHoles, %) + |> extrude(%, length = flangeBaseThickness) + + // create both the raised portions on the front and back of the flange base + flangeBack = startSketchOn(flangeBase, 'start') + |> circle(%, center = [0, 0], radius = flangeBackDiameter / 2) + |> extrude(%, length = flangeBackHeight) + flangeFront = startSketchOn(flangeBase, 'end') + |> circle(%, center = [0, 0], radius = flangeFrontDiameter / 2) + |> extrude(%, length = flangeFrontHeight) + + // create the circular cut in the center for the pipe + pipeCut = startSketchOn(flangeFront, 'end') + |> circle(%, center = [0, 0], radius = pipeDiameter / 2) + |> extrude(%, length = -flangeTotalThickness) + |> appearance(%, color = "#bab0b0") + + return pipeCut +} + +// https://www.mcmaster.com/68095K348/ diff --git a/public/kcl-samples/pipe-flange-assembly/91251a404-bolt.kcl b/public/kcl-samples/pipe-flange-assembly/91251a404-bolt.kcl new file mode 100644 index 000000000..9c4c6c4cd --- /dev/null +++ b/public/kcl-samples/pipe-flange-assembly/91251a404-bolt.kcl @@ -0,0 +1,56 @@ +// 91251A404 Socket Head Cap Screw + +// import constants +import boltDiameter, boltLength, boltHeadLength, boltHeadDiameter, boltHexDrive, boltHexFlatLength, boltThreadLength from "globals.kcl" + +// set units +@settings(defaultLengthUnit = in) + +// create a function to make a the bolt +export fn bolt() { + + // Create the head of the cap screw + boltHead = startSketchOn('XZ') + |> circle(center = [0, 0], radius = boltHeadDiameter / 2, tag = $topEdge) + |> extrude(length = -boltHeadLength) + |> fillet(radius = 0.020, tags = [topEdge, getOppositeEdge(topEdge)]) + + // Define the sketch of the hex pattern on the screw head and extrude into the head + hexPatternSketch = startSketchOn(boltHead, 'start') + |> startProfileAt([ + boltHexDrive / 2, + boltHexFlatLength / 2 + ], %) + |> angledLine({ + angle = 270, + length = boltHexFlatLength + }, %) + |> angledLine({ + angle = 210, + length = boltHexFlatLength + }, %) + |> angledLine({ + angle = 150, + length = boltHexFlatLength + }, %) + |> angledLine({ + angle = 90, + length = boltHexFlatLength + }, %) + |> angledLine({ + angle = 30, + length = boltHexFlatLength + }, %) + |> close() + |> extrude(length = -boltHeadLength * 0.75) + + // create the body of the bolt + boltBody = startSketchOn(boltHead, 'end') + |> circle(center = [0, 0], radius = boltDiameter / 2, tag = $filletEdge) + |> extrude(length = boltLength) + |> appearance(color = "#4dd043", metalness = 90, roughness = 90) + + return boltBody +} + +// https://www.mcmaster.com/91251a404/ diff --git a/public/kcl-samples/pipe-flange-assembly/9472k188-gasket.kcl b/public/kcl-samples/pipe-flange-assembly/9472k188-gasket.kcl new file mode 100644 index 000000000..ecc985fee --- /dev/null +++ b/public/kcl-samples/pipe-flange-assembly/9472k188-gasket.kcl @@ -0,0 +1,26 @@ +// 9472K188 Gasket + +// import constants +import gasketOutsideDiameter, gasketInnerDiameter, gasketThickness from "globals.kcl" + +// set units +@settings(defaultLengthUnit = in) + +// create a function to make the gasket +export fn gasket() { + + // create the base of the gasket + gasketBase = startSketchOn("XY") + |> circle(%, center = [0, 0], radius = gasketOutsideDiameter / 2) + |> extrude(%, length = gasketThickness) + + // extrude a circular hole through the gasket base + gasket = startSketchOn(gasketBase, 'end') + |> circle(%, center = [0, 0], radius = gasketInnerDiameter / 2) + |> extrude(%, length = -gasketThickness) + |> appearance(%, color = "#d0cb3e") + + return gasket +} + +// https://www.mcmaster.com/9472K616/ diff --git a/public/kcl-samples/pipe-flange-assembly/95479a127-hex-nut.kcl b/public/kcl-samples/pipe-flange-assembly/95479a127-hex-nut.kcl new file mode 100644 index 000000000..35567af49 --- /dev/null +++ b/public/kcl-samples/pipe-flange-assembly/95479a127-hex-nut.kcl @@ -0,0 +1,49 @@ +// 95479A127 Hex Nut + +// import constants +import hexNutDiameter, hexNutFlatToFlat, hexNutThickness, hexNutFlatLength from "globals.kcl" + +// set units +@settings(defaultLengthUnit = in) + +// create a function to make the hex nut +export fn hexNut() { + + // create the base of the hex nut + hexNutBase = startSketchOn('XY') + |> startProfileAt([ + hexNutFlatToFlat / 2, + hexNutFlatLength / 2 + ], %) + |> angledLine({ + angle = 270, + length = hexNutFlatLength + }, %) + |> angledLine({ + angle = 210, + length = hexNutFlatLength + }, %) + |> angledLine({ + angle = 150, + length = hexNutFlatLength + }, %) + |> angledLine({ + angle = 90, + length = hexNutFlatLength + }, %) + |> angledLine({ + angle = 30, + length = hexNutFlatLength + }, %) + |> close() + |> extrude(length = hexNutThickness) + + // create the hole in the center of the hex nut + hexNut = startSketchOn(hexNutBase, 'end') + |> circle(center = [0, 0], radius = hexNutDiameter / 2) + |> extrude(%, length = -hexNutThickness) + |> appearance(%, color = "#4edfd5") + + return hexNut +} +// https://www.mcmaster.com/95479A127/ diff --git a/public/kcl-samples/pipe-flange-assembly/98017a257-washer.kcl b/public/kcl-samples/pipe-flange-assembly/98017a257-washer.kcl new file mode 100644 index 000000000..20d40a4bd --- /dev/null +++ b/public/kcl-samples/pipe-flange-assembly/98017a257-washer.kcl @@ -0,0 +1,26 @@ +// 98017A257 Washer + +// import constants +import washerInnerDia, washerOuterDia, washerThickness from "globals.kcl" + +// set units +@settings(defaultLengthUnit = in) + +// create a function to make the washer +export fn washer() { + + // create the base of the washer + washerBase = startSketchOn('XY') + |> circle(center = [0, 0], radius = washerOuterDia / 2) + |> extrude(length = washerThickness) + + // extrude a hole through the washer + washer = startSketchOn(washerBase, 'end') + |> circle(center = [0, 0], radius = washerInnerDia / 2) + |> extrude(%, length = -washerThickness) + |> appearance(%, color = "#ee4f4f") + + return washer +} + +// https://www.mcmaster.com/98017A257/ diff --git a/public/kcl-samples/pipe-flange-assembly/globals.kcl b/public/kcl-samples/pipe-flange-assembly/globals.kcl new file mode 100644 index 000000000..6e2a29bc9 --- /dev/null +++ b/public/kcl-samples/pipe-flange-assembly/globals.kcl @@ -0,0 +1,48 @@ +// Globals + +// set units +@settings(defaultLengthUnit = in) + +// flange (68095K348) +export pipeDiameter = 2.440 +export mountingHoleDiameter = 0.750 +export mountingHolePlacementDiameter = 4.750 + +export flangeDiameter = 6.0 +export flangeTotalThickness = 1.0 +export flangeBackHeight = 0.060 +export flangeFrontHeight = 0.250 +export flangeBaseThickness = flangeTotalThickness - flangeBackHeight - flangeFrontHeight + +export flangeBackDiameter = 3.620 +export flangeFrontDiameter = 3.060 + +// washer (98017A257) +export washerInnerDia = 0.640 +export washerOuterDia = 1.188 +export washerThickness = 0.032 + +// bolt (91251A404) +export boltDiameter = 0.625 +export boltLength = 2.500 +export boltHeadLength = boltDiameter +export boltHeadDiameter = 0.938 +export boltHexDrive = 1 / 2 +export boltHexFlatLength = boltHexDrive / (2 * cos(toRadians(30))) +export boltThreadLength = 1.750 + +// hex nut (95479A127) +export hexNutDiameter = 5 / 8 +export hexNutFlatToFlat = 15 / 16 +export hexNutThickness = 35 / 64 +export hexNutFlatLength = hexNutFlatToFlat / (2 * cos(toRadians(30))) + +// gasket (9472K188) +export gasketOutsideDiameter = 4.125 +export gasketInnerDiameter = 2.375 +export gasketThickness = 0.031 + +// pipe (1120T74) +export pipeInnerDiameter = 2.0 +export pipeOuterDiameter = 2.375 +export pipeLength = 6 diff --git a/public/kcl-samples/pipe-flange-assembly/main.kcl b/public/kcl-samples/pipe-flange-assembly/main.kcl index 327bebd5f..18e759c9e 100644 --- a/public/kcl-samples/pipe-flange-assembly/main.kcl +++ b/public/kcl-samples/pipe-flange-assembly/main.kcl @@ -1,304 +1,58 @@ // Pipe and Flange Assembly // A crucial component in various piping systems, designed to facilitate the connection, disconnection, and access to piping for inspection, cleaning, and modifications. This assembly combines pipes (long cylindrical conduits) with flanges (plate-like fittings) to create a secure yet detachable joint. - -// Set units +// set units @settings(defaultLengthUnit = in) +// import constants +import * from 'globals.kcl' -// Define constants -flangeThickness = .125 -flangeBaseDia = 2 -boreHeight = 1 -flangePipeDia = 1 -mountingHoleDia = 0.425 -screwDia = 0.375 -tol = 0.010 -hexNutScale = 0.90 -wallThickness = 0.5 -screwLength = 1.125 -washerThickness = 0.0625 -screwStart = [ - 0, - flangeThickness + washerThickness, - 1.375 -] -capRatio = .190 / .313 // Ratio grabbed from another screw -hexRatio = 5 / 32 / .190 // Ratio grabbed from another screw -hexStartingAngle = 210 // first angle of hex pattern (degrees) -hexInteriorAngle = 120 // degrees -hexChangeAngle = 180 - hexInteriorAngle // degrees +// import parts +import flange from '68095k348-flange.kcl' +import gasket from '9472k188-gasket.kcl' +import washer from '98017a257-washer.kcl' +import bolt from '91251a404-bolt.kcl' +import hexNut from '95479a127-hex-nut.kcl' +import pipe from '1120t74-pipe.kcl' +// place flanges +flange() +flange() + |> rotate(axis = [0, 1, 0], angle = 180) + |> translate(translate = [0, 0, flangeBackHeight*2 + gasketThickness]) -screwPlane = { - plane = { - origin = { - x = screwStart[0], - y = screwStart[1], - z = screwStart[2] - }, - xAxis = { x = 1, y = 0, z = 0 }, - yAxis = { x = 0, y = 0, z = 1 }, - zAxis = { x = 0, y = 1, z = 0 } - } -} +// place gasket between the flanges +gasket() + |> translate(translate = [0, 0, -flangeBackHeight - gasketThickness]) -fn capScrew(start, length, dia) { - headLength = dia // inch - wallToWallLength = hexRatio * dia - headDia = dia / capRatio - hexWallLength = wallToWallLength / 2 * 1 / cos(toRadians(30)) // inch +// place eight washers (four front, four back) +washer() + |> translate(translate = [ + mountingHolePlacementDiameter/2, + 0, + flangeBaseThickness + ]) + |> patternCircular3d(%, instances = 4, axis = [0, 0, 1], center = [0, 0, 0], arcDegrees = 360, rotateDuplicates = false) + |> patternLinear3d(%, instances = 2, distance = -(flangeBaseThickness*2 + flangeBackHeight * 2 + gasketThickness + washerThickness), axis = [0, 0, 1]) +// place four bolts +bolt() + |> translate(translate = [ + mountingHolePlacementDiameter/2, 0, flangeBaseThickness + washerThickness + ]) + |> rotate(roll = 90, pitch = 0, yaw = 0) + |> patternCircular3d(%, instances = 4, axis = [0, 0, 1], center = [0, 0, 0], arcDegrees = 360, rotateDuplicates = false) - // Length of Cap Head is always equal to diameter - capHeadLength = dia +// place four hex nuts +hexNut() + |> translate(translate = [mountingHolePlacementDiameter/2, 0, -(flangeBackHeight * 2 + gasketThickness + flangeBaseThickness + washerThickness + hexNutThickness)]) + |> patternCircular3d(%, instances = 4, axis = [0, 0, 1], center = [0, 0, 0], arcDegrees = 360, rotateDuplicates = false) - // Create the head of the cap screw - screwHeadSketch = startSketchOn(screwPlane) - |> circle( - center = [0, 0], - radius = headDia / 2 - ) +// place both pieces of pipe +pipe() + |> rotate(%, roll = -90, pitch = 0, yaw = 0) + |> translate(%, translate = [0, 0, flangeBaseThickness + flangeFrontHeight - 0.5], global = true) - // Extrude the screw head sketch - screwHead = extrude(screwHeadSketch, length = dia) - - // Define the sketch of the hex pattern on the screw head - hexPatternSketch = startSketchOn(screwHead, 'end') - |> startProfileAt([ - -start[0] + wallToWallLength / 2, - start[2] - ], %) - |> yLine(length = -hexWallLength / 2) - |> angledLine({ - angle = hexStartingAngle, - length = hexWallLength - }, %) - |> angledLine({ - angle = hexStartingAngle - hexChangeAngle, - length = hexWallLength - }, %) - |> angledLine({ - angle = hexStartingAngle - (2 * hexChangeAngle), - length = hexWallLength - }, %) - |> angledLine({ - angle = hexStartingAngle - (3 * hexChangeAngle), - length = hexWallLength - }, %) - |> angledLine({ - angle = hexStartingAngle - (4 * hexChangeAngle), - length = hexWallLength - }, %) - |> close() - hexPattern = extrude(hexPatternSketch, length = -headLength * 0.75) - - return hexPattern -} - -workingPlane = { - plane = { - origin = { x = 0, y = flangeThickness, z = 0 }, - xAxis = { x = 0, y = 0, z = 1 }, - yAxis = { x = 1, y = 0, z = 0 }, - zAxis = { x = 0, y = 1, z = 0 } - } -} - -// Washer function -fn washer(plane, start, thk, innerDia, outerDia) { - washerSketch = startSketchOn(plane) - |> circle( - center = [start[0], start[1]], - radius = outerDia / 2 - ) - |> hole(circle( - center = [start[0], start[1]], - radius = innerDia / 2 - ), %) - |> extrude(length = thk) - return washerSketch -} - -// Hex nut function -fn hexNut(start, thk, innerDia) { - hexNutSketch = startSketchOn({ - plane = { - origin = { - x = start[0], - y = -wallThickness - washerThickness, - z = start[2] - }, - xAxis = { x = 1, y = 0, z = 0 }, - yAxis = { x = 0, y = 0, z = 1 }, - zAxis = { x = 0, y = 1, z = 0 } - } - }) - |> startProfileAt([0 + innerDia * hexNutScale, 0], %) - |> angledLine({ - angle = 240, - length = innerDia * hexNutScale - }, %) - |> angledLine({ - angle = 180, - length = innerDia * hexNutScale - }, %) - |> angledLine({ - angle = 120, - length = innerDia * hexNutScale - }, %) - |> angledLine({ - angle = 60, - length = innerDia * hexNutScale - }, %) - |> angledLine({ angle = 0, length = innerDia * .90 }, %) - |> close() - |> hole(circle( - center = [0, 0], - radius = innerDia / 2 - ), %) - |> extrude(length = -thk) - return hexNutSketch -} - -// Mounting holes pattern -mountingHolePattern = startSketchOn('XZ') - |> circle( - center = [screwStart[0], screwStart[2]], - radius = screwDia / 2 + tol - ) - |> patternCircular2d( - arcDegrees = 360, - center = [0, 0], - instances = 7, - rotateDuplicates = true - ) - -// Sketch and revolve the pipe -pipe = startSketchOn('XY') - |> startProfileAt([flangePipeDia / 2 - tol, 0], %) - |> line(end = [0, -2]) - |> angledLine({ angle = -60, length = .5 }, %) - |> line(end = [0, -1]) - |> line(end = [-flangeThickness, 0]) - |> line(end = [0, 1]) - |> angledLine({ angle = -240, length = .5 }, %) - |> line(end = [0, 5]) - |> angledLine({ angle = 60, length = .5 }, %) - |> line(end = [0, 1]) - |> line(end = [flangeThickness, 0]) - |> line(end = [0, -1]) - |> angledLine({ angle = 240, length = .5 }, %) - |> close() - |> revolve(axis = 'y') - |> appearance(color = "#7b79d7") - -// Sketch and extrude the wall -wall = startSketchOn('XZ') - |> startProfileAt([-4, -4], %) - |> line(end = [0, 8]) - |> line(end = [8, 0]) - |> line(end = [0, -8]) - |> close() - |> hole(mountingHolePattern, %) - |> hole(circle( - center = [0, 0], - radius = flangePipeDia / 2 - ), %) - |> extrude(length = wallThickness) - |> appearance(color = "#c7aa8f") - -// Sketch and revolve the flange -flangeBase = startSketchOn('XZ') - |> circle( - center = [0, 0], - radius = flangeBaseDia - ) - |> hole(mountingHolePattern, %) - |> hole(circle( - center = [0, 0], - radius = flangePipeDia / 2 - ), %) - |> extrude(length = -flangeThickness) - |> appearance(color = "#9b9797") - -// Create the washer and pattern around the flange -washer(workingPlane, [screwStart[2], screwStart[0]], 0.0625, screwDia + tol, 0.625) - |> patternCircular3d( - axis = [0, 1, 0], - center = [0, 0, 0], - instances = 7, - arcDegrees = 360, - rotateDuplicates = true - ) - |> appearance(color = "#d8da5d") - -// Create the cap screw and pattern around the flange -capScrew([ - 0, - flangeThickness + washerThickness, - 1.375 - ], screwLength, screwDia) - |> patternCircular3d( - axis = [0, 1, 0], - center = [0, 0, 0], - instances = 7, - arcDegrees = 360, - rotateDuplicates = true - ) - |> appearance(color = "#4cd411") - -screwBodySketch = startSketchOn(screwPlane) - |> circle( - center = [0, 0], - radius = screwDia / 2 - ) -screwBody = extrude(screwBodySketch, length = -screwLength) - |> patternCircular3d( - axis = [0, 1, 0], - center = [0, 0, 0], - instances = 7, - arcDegrees = 360, - rotateDuplicates = true - ) - |> appearance(color = "#4cd411") - -// Create a plane for the washers on the back side of the wall -backSideWasherPlane = { - plane = { - origin = { - x = 0, - y = -wallThickness - washerThickness, - z = 0 - }, - xAxis = { x = 0, y = 0, z = 1 }, - yAxis = { x = 1, y = 0, z = 0 }, - zAxis = { x = 0, y = 1, z = 0 } - } -} - -// Create the washers on the backside of the wall -washer(backSideWasherPlane, [screwStart[2], screwStart[0]], 0.0625, screwDia + tol, 0.625) - |> patternCircular3d( - axis = [0, 1, 0], - center = [0, 0, 0], - instances = 7, - arcDegrees = 360, - rotateDuplicates = true - ) - |> appearance(color = "#e8ec09") - -// Create the hex nut and pattern around the flange -hexNut([ - screwStart[0], - screwStart[1], - screwStart[2] - ], .25, screwDia + tol) - |> patternCircular3d( - axis = [0, 1, 0], - center = [0, 0, 0], - instances = 7, - arcDegrees = 360, - rotateDuplicates = true - ) - |> appearance(color = "#bc3434") +pipe() + |> rotate(%, roll = 90, pitch = 0, yaw = 0) + |> translate(%, translate = [0, 0, -(flangeBackHeight * 2 + gasketThickness + flangeBaseThickness + flangeFrontHeight - 0.5)], global = true) \ No newline at end of file diff --git a/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/1120t74-pipe.step b/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/1120t74-pipe.step new file mode 100644 index 000000000..f3e18a3ca --- /dev/null +++ b/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/1120t74-pipe.step @@ -0,0 +1,269 @@ +ISO-10303-21; +HEADER; +FILE_DESCRIPTION (( 'STEP AP203' ), + '1' ); +FILE_NAME ('1120T74_Standard-Wall Steel Unthreaded Pipe Nipple.STEP', + '2021-07-09T13:29:34', + ( 'Administrator' ), + ( 'Managed by Terraform' ), + 'SwSTEP 2.0', + 'SolidWorks 2017', + '' ); +FILE_SCHEMA (( 'CONFIG_CONTROL_DESIGN' )); +ENDSEC; + +DATA; +#1 = EDGE_LOOP ( 'NONE', ( #200, #99 ) ) ; +#2 = CALENDAR_DATE ( 2021, 9, 7 ) ; +#3 = AXIS2_PLACEMENT_3D ( 'NONE', #146, #228, #22 ) ; +#4 = CALENDAR_DATE ( 2021, 9, 7 ) ; +#5 = VECTOR ( 'NONE', #122, 39.37007874015748100 ) ; +#6 = APPROVAL_PERSON_ORGANIZATION ( #191, #189, #47 ) ; +#7 = MANIFOLD_SOLID_BREP ( 'Extrude1', #114 ) ; +#8 = CALENDAR_DATE ( 2021, 9, 7 ) ; +#9 = ORIENTED_EDGE ( 'NONE', *, *, #48, .F. ) ; +#10 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -3.000000000000000400 ) ) ; +#11 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#12 = AXIS2_PLACEMENT_3D ( 'NONE', #162, #203, #157 ) ; +#13 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 3.000000000000000400 ) ) ; +#14 = ADVANCED_FACE ( 'NONE', ( #107, #218 ), #177, .T. ) ; +#15 = CIRCLE ( 'NONE', #193, 1.187500000000000000 ) ; +#16 = PERSON_AND_ORGANIZATION_ROLE ( 'classification_officer' ) ; +#17 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#18 = AXIS2_PLACEMENT_3D ( 'NONE', #10, #245, #31 ) ; +#19 = LINE ( 'NONE', #137, #80 ) ; +#20 = CC_DESIGN_APPROVAL ( #189, ( #105 ) ) ; +#21 = ADVANCED_FACE ( 'NONE', ( #142, #60 ), #74, .F. ) ; +#22 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#23 = ORIENTED_EDGE ( 'NONE', *, *, #185, .T. ) ; +#24 = CC_DESIGN_DATE_AND_TIME_ASSIGNMENT ( #241, #211, ( #198 ) ) ; +#25 = APPROVAL_DATE_TIME ( #135, #90 ) ; +#26 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 3.000000000000000400 ) ) ; +#27 = ORIENTED_EDGE ( 'NONE', *, *, #28, .T. ) ; +#28 = EDGE_CURVE ( 'NONE', #237, #240, #110, .T. ) ; +#29 = EDGE_LOOP ( 'NONE', ( #9, #222 ) ) ; +#30 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#31 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#32 = CARTESIAN_POINT ( 'NONE', ( -1.187500000000000000, 0.0000000000000000000, -3.000000000000000400 ) ) ; +#33 = PERSON_AND_ORGANIZATION ( #83, #100 ) ; +#34 = VERTEX_POINT ( 'NONE', #201 ) ; +#35 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#36 = APPLICATION_CONTEXT ( 'configuration controlled 3d designs of mechanical parts and assemblies' ) ; +#37 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#38 = PERSON_AND_ORGANIZATION ( #83, #100 ) ; +#39 = EDGE_CURVE ( 'NONE', #112, #34, #43, .T. ) ; +#40 = EDGE_CURVE ( 'NONE', #72, #121, #187, .T. ) ; +#41 = LENGTH_MEASURE_WITH_UNIT ( LENGTH_MEASURE( 0.02539999999999999900 ), #165 ); +#42 = APPROVAL_DATE_TIME ( #87, #235 ) ; +#43 = CIRCLE ( 'NONE', #156, 1.187500000000000000 ) ; +#44 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#45 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#46 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 3.000000000000000400 ) ) ; +#47 = APPROVAL_ROLE ( '' ) ; +#48 = EDGE_CURVE ( 'NONE', #202, #71, #15, .T. ) ; +#49 = LOCAL_TIME ( 8, 29, 34.00000000000000000, #173 ) ; +#50 = EDGE_LOOP ( 'NONE', ( #54, #247, #232, #126 ) ) ; +#51 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -3.000000000000000400 ) ) ; +#52 = APPROVAL_ROLE ( '' ) ; +#53 = CALENDAR_DATE ( 2021, 9, 7 ) ; +#54 = ORIENTED_EDGE ( 'NONE', *, *, #229, .F. ) ; +#55 = PERSON_AND_ORGANIZATION ( #83, #100 ) ; +#56 = ORIENTED_EDGE ( 'NONE', *, *, #152, .T. ) ; +#57 = FACE_OUTER_BOUND ( 'NONE', #220, .T. ) ; +#58 = PERSON_AND_ORGANIZATION ( #83, #100 ) ; +#59 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 3.000000000000000400 ) ) ; +#60 = FACE_BOUND ( 'NONE', #153, .T. ) ; +#61 = AXIS2_PLACEMENT_3D ( 'NONE', #13, #183, #35 ) ; +#62 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#63 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#64 = LOCAL_TIME ( 8, 29, 34.00000000000000000, #115 ) ; +#65 = ORIENTED_EDGE ( 'NONE', *, *, #48, .T. ) ; +#66 = SECURITY_CLASSIFICATION_LEVEL ( 'unclassified' ) ; +#67 = PERSON_AND_ORGANIZATION_ROLE ( 'creator' ) ; +#68 = DIMENSIONAL_EXPONENTS ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ; +#69 = LOCAL_TIME ( 8, 29, 34.00000000000000000, #120 ) ; +#70 = ORIENTED_EDGE ( 'NONE', *, *, #88, .T. ) ; +#71 = VERTEX_POINT ( 'NONE', #117 ) ; +#72 = VERTEX_POINT ( 'NONE', #160 ) ; +#73 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#74 = PLANE ( 'NONE', #119 ) ; +#75 = CYLINDRICAL_SURFACE ( 'NONE', #86, 1.033499999999999900 ) ; +#76 = CC_DESIGN_APPROVAL ( #235, ( #198 ) ) ; +#77 = CARTESIAN_POINT ( 'NONE', ( -1.187500000000000000, 0.0000000000000000000, 3.000000000000000400 ) ) ; +#78 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#79 = AXIS2_PLACEMENT_3D ( 'NONE', #252, #37, #124 ) ; +#80 = VECTOR ( 'NONE', #44, 39.37007874015748100 ) ; +#81 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 3.000000000000000400 ) ) ; +#82 = PERSON_AND_ORGANIZATION ( #83, #100 ) ; +#83 = PERSON ( 'UNSPECIFIED', 'UNSPECIFIED', 'UNSPECIFIED', ('UNSPECIFIED'), ('UNSPECIFIED'), ('UNSPECIFIED') ) ; +#84 = ORIENTED_EDGE ( 'NONE', *, *, #215, .T. ) ; +#85 = PERSON_AND_ORGANIZATION_ROLE ( 'design_supplier' ) ; +#86 = AXIS2_PLACEMENT_3D ( 'NONE', #46, #63, #78 ) ; +#87 = DATE_AND_TIME ( #140, #64 ) ; +#88 = EDGE_CURVE ( 'NONE', #72, #240, #158, .T. ) ; +#89 = VECTOR ( 'NONE', #138, 39.37007874015748100 ) ; +#90 = APPROVAL ( #171, 'UNSPECIFIED' ) ; +#91 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#92 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -3.000000000000000400 ) ) ; +#93 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#94 = CIRCLE ( 'NONE', #18, 1.187500000000000000 ) ; +#95 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#96 = PRODUCT_DEFINITION ( 'UNKNOWN', '', #105, #154 ) ; +#97 = CARTESIAN_POINT ( 'NONE', ( -1.033499999999999900, 0.0000000000000000000, 3.000000000000000400 ) ) ; +#98 = AXIS2_PLACEMENT_3D ( 'NONE', #141, #30, #181 ) ; +#99 = ORIENTED_EDGE ( 'NONE', *, *, #229, .T. ) ; +#100 = ORGANIZATION ( 'UNSPECIFIED', 'UNSPECIFIED', '' ) ; +#101 = CARTESIAN_POINT ( 'NONE', ( 1.033499999999999900, 1.265672466918789100E-016, 3.000000000000000400 ) ) ; +#102 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -3.000000000000000400 ) ) ; +#103 = CC_DESIGN_SECURITY_CLASSIFICATION ( #198, ( #105 ) ) ; +#104 = CYLINDRICAL_SURFACE ( 'NONE', #3, 1.033499999999999900 ) ; +#105 = PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE ( 'ANY', '', #230, .NOT_KNOWN. ) ; +#106 = DATE_TIME_ROLE ( 'creation_date' ) ; +#107 = FACE_OUTER_BOUND ( 'NONE', #1, .T. ) ; +#108 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #207, #67, ( #105 ) ) ; +#109 = LINE ( 'NONE', #101, #155 ) ; +#110 = CIRCLE ( 'NONE', #217, 1.033499999999999900 ) ; +#111 = EDGE_CURVE ( 'NONE', #34, #71, #19, .T. ) ; +#112 = VERTEX_POINT ( 'NONE', #77 ) ; +#113 = AXIS2_PLACEMENT_3D ( 'NONE', #81, #17, #233 ) ; +#114 = CLOSED_SHELL ( 'NONE', ( #248, #148, #14, #21, #167, #170 ) ) ; +#115 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#116 = ORIENTED_EDGE ( 'NONE', *, *, #185, .F. ) ; +#117 = CARTESIAN_POINT ( 'NONE', ( 1.187500000000000000, 1.454268073987481900E-016, -3.000000000000000400 ) ) ; +#118 = CYLINDRICAL_SURFACE ( 'NONE', #98, 1.187500000000000000 ) ; +#119 = AXIS2_PLACEMENT_3D ( 'NONE', #92, #246, #62 ) ; +#120 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#121 = VERTEX_POINT ( 'NONE', #179 ) ; +#122 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#123 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#124 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#125 = FACE_OUTER_BOUND ( 'NONE', #163, .T. ) ; +#126 = ORIENTED_EDGE ( 'NONE', *, *, #152, .F. ) ; +#127 = PRODUCT_RELATED_PRODUCT_CATEGORY ( 'detail', '', ( #230 ) ) ; +#128 = CYLINDRICAL_SURFACE ( 'NONE', #150, 1.187500000000000000 ) ; +#129 = ORIENTED_EDGE ( 'NONE', *, *, #28, .F. ) ; +#130 = APPROVAL_PERSON_ORGANIZATION ( #82, #235, #234 ) ; +#131 = CIRCLE ( 'NONE', #161, 1.033499999999999900 ) ; +#132 = CC_DESIGN_APPROVAL ( #90, ( #96 ) ) ; +#133 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #147, #231, ( #230 ) ) ; +#134 = EDGE_CURVE ( 'NONE', #71, #202, #94, .T. ) ; +#135 = DATE_AND_TIME ( #8, #69 ) ; +#136 = ORIENTED_EDGE ( 'NONE', *, *, #88, .F. ) ; +#137 = CARTESIAN_POINT ( 'NONE', ( 1.187500000000000000, 1.454268073987481900E-016, 3.000000000000000400 ) ) ; +#138 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#139 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#140 = CALENDAR_DATE ( 2021, 9, 7 ) ; +#141 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 3.000000000000000400 ) ) ; +#142 = FACE_OUTER_BOUND ( 'NONE', #29, .T. ) ; +#143 = PERSON_AND_ORGANIZATION_ROLE ( 'creator' ) ; +#144 = APPLICATION_PROTOCOL_DEFINITION ( 'international standard', 'config_control_design', 1994, #169 ) ; +#145 =( NAMED_UNIT ( * ) PLANE_ANGLE_UNIT ( ) SI_UNIT ( $, .RADIAN. ) ); +#146 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 3.000000000000000400 ) ) ; +#147 = PERSON_AND_ORGANIZATION ( #83, #100 ) ; +#148 = ADVANCED_FACE ( 'NONE', ( #174 ), #118, .T. ) ; +#149 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #55, #143, ( #96 ) ) ; +#150 = AXIS2_PLACEMENT_3D ( 'NONE', #59, #159, #45 ) ; +#151 = ORIENTED_EDGE ( 'NONE', *, *, #199, .T. ) ; +#152 = EDGE_CURVE ( 'NONE', #112, #202, #208, .T. ) ; +#153 = EDGE_LOOP ( 'NONE', ( #151, #27 ) ) ; +#154 = DESIGN_CONTEXT ( 'detailed design', #36, 'design' ) ; +#155 = VECTOR ( 'NONE', #188, 39.37007874015748100 ) ; +#156 = AXIS2_PLACEMENT_3D ( 'NONE', #225, #139, #223 ) ; +#157 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#158 = LINE ( 'NONE', #97, #5 ) ; +#159 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#160 = CARTESIAN_POINT ( 'NONE', ( -1.033499999999999900, 0.0000000000000000000, 3.000000000000000400 ) ) ; +#161 = AXIS2_PLACEMENT_3D ( 'NONE', #51, #186, #190 ) ; +#162 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 3.000000000000000400 ) ) ; +#163 = EDGE_LOOP ( 'NONE', ( #176, #23, #70, #129 ) ) ; +#164 =( CONVERSION_BASED_UNIT ( 'INCH', #41 ) LENGTH_UNIT ( ) NAMED_UNIT ( #68 ) ); +#165 =( LENGTH_UNIT ( ) NAMED_UNIT ( * ) SI_UNIT ( $, .METRE. ) ); +#166 = APPLICATION_PROTOCOL_DEFINITION ( 'international standard', 'config_control_design', 1994, #36 ) ; +#167 = ADVANCED_FACE ( 'NONE', ( #251 ), #128, .T. ) ; +#168 = CIRCLE ( 'NONE', #61, 1.033499999999999900 ) ; +#169 = APPLICATION_CONTEXT ( 'configuration controlled 3d designs of mechanical parts and assemblies' ) ; +#170 = ADVANCED_FACE ( 'NONE', ( #125 ), #75, .F. ) ; +#171 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#172 = AXIS2_PLACEMENT_3D ( 'NONE', #26, #73, #93 ) ; +#173 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#174 = FACE_OUTER_BOUND ( 'NONE', #50, .T. ) ; +#175 = LOCAL_TIME ( 8, 29, 34.00000000000000000, #204 ) ; +#176 = ORIENTED_EDGE ( 'NONE', *, *, #215, .F. ) ; +#177 = PLANE ( 'NONE', #172 ) ; +#178 = ORIENTED_EDGE ( 'NONE', *, *, #40, .T. ) ; +#179 = CARTESIAN_POINT ( 'NONE', ( 1.033499999999999900, 1.265672466918789100E-016, 3.000000000000000400 ) ) ; +#180 =( GEOMETRIC_REPRESENTATION_CONTEXT ( 3 ) GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT ( ( #192 ) ) GLOBAL_UNIT_ASSIGNED_CONTEXT ( ( #164, #145, #212 ) ) REPRESENTATION_CONTEXT ( 'NONE', 'WORKASPACE' ) ); +#181 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#182 = EDGE_LOOP ( 'NONE', ( #227, #116 ) ) ; +#183 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#184 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#185 = EDGE_CURVE ( 'NONE', #121, #72, #168, .T. ) ; +#186 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#187 = CIRCLE ( 'NONE', #12, 1.033499999999999900 ) ; +#188 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#189 = APPROVAL ( #123, 'UNSPECIFIED' ) ; +#190 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#191 = PERSON_AND_ORGANIZATION ( #83, #100 ) ; +#192 = UNCERTAINTY_MEASURE_WITH_UNIT (LENGTH_MEASURE( 1.000000000000000100E-005 ), #164, 'distance_accuracy_value', 'NONE'); +#193 = AXIS2_PLACEMENT_3D ( 'NONE', #224, #184, #244 ) ; +#194 = ORIENTED_EDGE ( 'NONE', *, *, #111, .F. ) ; +#195 = EDGE_LOOP ( 'NONE', ( #194, #243, #56, #65 ) ) ; +#196 = APPROVAL_DATE_TIME ( #236, #189 ) ; +#197 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #33, #85, ( #105 ) ) ; +#198 = SECURITY_CLASSIFICATION ( '', '', #66 ) ; +#199 = EDGE_CURVE ( 'NONE', #240, #237, #131, .T. ) ; +#200 = ORIENTED_EDGE ( 'NONE', *, *, #39, .T. ) ; +#201 = CARTESIAN_POINT ( 'NONE', ( 1.187500000000000000, 1.454268073987481900E-016, 3.000000000000000400 ) ) ; +#202 = VERTEX_POINT ( 'NONE', #32 ) ; +#203 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#204 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#205 = CARTESIAN_POINT ( 'NONE', ( -1.033499999999999900, 0.0000000000000000000, -3.000000000000000400 ) ) ; +#206 = CARTESIAN_POINT ( 'NONE', ( 1.033499999999999900, 1.265672466918789100E-016, -3.000000000000000400 ) ) ; +#207 = PERSON_AND_ORGANIZATION ( #83, #100 ) ; +#208 = LINE ( 'NONE', #221, #89 ) ; +#209 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#210 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #38, #16, ( #198 ) ) ; +#211 = DATE_TIME_ROLE ( 'classification_date' ) ; +#212 =( NAMED_UNIT ( * ) SI_UNIT ( $, .STERADIAN. ) SOLID_ANGLE_UNIT ( ) ); +#213 = CIRCLE ( 'NONE', #113, 1.187500000000000000 ) ; +#214 = PRODUCT_DEFINITION_SHAPE ( 'NONE', 'NONE', #96 ) ; +#215 = EDGE_CURVE ( 'NONE', #121, #237, #109, .T. ) ; +#216 = DATE_AND_TIME ( #53, #175 ) ; +#217 = AXIS2_PLACEMENT_3D ( 'NONE', #102, #11, #95 ) ; +#218 = FACE_BOUND ( 'NONE', #182, .T. ) ; +#219 = APPROVAL_PERSON_ORGANIZATION ( #58, #90, #52 ) ; +#220 = EDGE_LOOP ( 'NONE', ( #178, #84, #242, #136 ) ) ; +#221 = CARTESIAN_POINT ( 'NONE', ( -1.187500000000000000, 0.0000000000000000000, 3.000000000000000400 ) ) ; +#222 = ORIENTED_EDGE ( 'NONE', *, *, #134, .F. ) ; +#223 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#224 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -3.000000000000000400 ) ) ; +#225 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 3.000000000000000400 ) ) ; +#226 = LOCAL_TIME ( 8, 29, 34.00000000000000000, #91 ) ; +#227 = ORIENTED_EDGE ( 'NONE', *, *, #40, .F. ) ; +#228 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#229 = EDGE_CURVE ( 'NONE', #34, #112, #213, .T. ) ; +#230 = PRODUCT ( '1120T74_Standard-Wall Steel Unthreaded Pipe Nipple', '1120T74_Standard-Wall Steel Unthreaded Pipe Nipple', '', ( #249 ) ) ; +#231 = PERSON_AND_ORGANIZATION_ROLE ( 'design_owner' ) ; +#232 = ORIENTED_EDGE ( 'NONE', *, *, #134, .T. ) ; +#233 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#234 = APPROVAL_ROLE ( '' ) ; +#235 = APPROVAL ( #209, 'UNSPECIFIED' ) ; +#236 = DATE_AND_TIME ( #2, #226 ) ; +#237 = VERTEX_POINT ( 'NONE', #206 ) ; +#238 = CC_DESIGN_DATE_AND_TIME_ASSIGNMENT ( #216, #106, ( #96 ) ) ; +#239 = ADVANCED_BREP_SHAPE_REPRESENTATION ( '1120T74_Standard-Wall Steel Unthreaded Pipe Nipple', ( #7, #79 ), #180 ) ; +#240 = VERTEX_POINT ( 'NONE', #205 ) ; +#241 = DATE_AND_TIME ( #4, #49 ) ; +#242 = ORIENTED_EDGE ( 'NONE', *, *, #199, .F. ) ; +#243 = ORIENTED_EDGE ( 'NONE', *, *, #39, .F. ) ; +#244 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#245 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#246 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#247 = ORIENTED_EDGE ( 'NONE', *, *, #111, .T. ) ; +#248 = ADVANCED_FACE ( 'NONE', ( #57 ), #104, .F. ) ; +#249 = MECHANICAL_CONTEXT ( 'NONE', #169, 'mechanical' ) ; +#250 = SHAPE_DEFINITION_REPRESENTATION ( #214, #239 ) ; +#251 = FACE_OUTER_BOUND ( 'NONE', #195, .T. ) ; +#252 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +ENDSEC; +END-ISO-10303-21; diff --git a/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/68095k348-flange.step b/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/68095k348-flange.step new file mode 100644 index 000000000..af2d7bad8 --- /dev/null +++ b/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/68095k348-flange.step @@ -0,0 +1,935 @@ +ISO-10303-21; +HEADER; +FILE_DESCRIPTION (( 'STEP AP203' ), + '1' ); +FILE_NAME ('68095K348_Low-Pressure Steel Unthreaded Pipe Flange.STEP', + '2023-02-07T16:53:08', + ( 'Administrator' ), + ( 'Managed by Terraform' ), + 'SwSTEP 2.0', + 'SolidWorks 2017', + '' ); +FILE_SCHEMA (( 'CONFIG_CONTROL_DESIGN' )); +ENDSEC; + +DATA; +#1 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2 = PLANE ( 'NONE', #478 ) ; +#3 = DIRECTION ( 'NONE', ( 1.224646799147353200E-016, 1.000000000000000000, 0.0000000000000000000 ) ) ; +#4 = PERSON_AND_ORGANIZATION_ROLE ( 'design_owner' ) ; +#5 = ADVANCED_FACE ( 'NONE', ( #454 ), #796, .F. ) ; +#6 = EDGE_LOOP ( 'NONE', ( #731, #231, #839, #562 ) ) ; +#7 = EDGE_LOOP ( 'NONE', ( #351, #304, #227, #362 ) ) ; +#8 = FACE_OUTER_BOUND ( 'NONE', #275, .T. ) ; +#9 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#10 = EDGE_CURVE ( 'NONE', #561, #199, #238, .T. ) ; +#11 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#12 = ORIENTED_EDGE ( 'NONE', *, *, #105, .F. ) ; +#13 = ORIENTED_EDGE ( 'NONE', *, *, #197, .F. ) ; +#14 = CIRCLE ( 'NONE', #559, 0.05999999999999990800 ) ; +#15 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#16 = DATE_AND_TIME ( #483, #678 ) ; +#17 = CIRCLE ( 'NONE', #51, 3.000000000000000400 ) ; +#18 = AXIS2_PLACEMENT_3D ( 'NONE', #250, #616, #825 ) ; +#19 = EDGE_CURVE ( 'NONE', #574, #144, #56, .T. ) ; +#20 = AXIS2_PLACEMENT_3D ( 'NONE', #1, #845, #205 ) ; +#21 = ORIENTED_EDGE ( 'NONE', *, *, #764, .F. ) ; +#22 = CARTESIAN_POINT ( 'NONE', ( 1.583083515873356900, 0.0000000000000000000, -0.4350000000000001600 ) ) ; +#23 = ORIENTED_EDGE ( 'NONE', *, *, #682, .T. ) ; +#24 = FACE_OUTER_BOUND ( 'NONE', #7, .T. ) ; +#25 = EDGE_CURVE ( 'NONE', #691, #614, #607, .T. ) ; +#26 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#27 = VERTEX_POINT ( 'NONE', #760 ) ; +#28 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#29 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#30 = AXIS2_PLACEMENT_3D ( 'NONE', #797, #584, #660 ) ; +#31 = VERTEX_POINT ( 'NONE', #809 ) ; +#32 = EDGE_LOOP ( 'NONE', ( #13, #696, #367, #300 ) ) ; +#33 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#34 = VECTOR ( 'NONE', #158, 39.37007874015748100 ) ; +#35 = VECTOR ( 'NONE', #541, 39.37007874015748100 ) ; +#36 = EDGE_CURVE ( 'NONE', #768, #849, #78, .T. ) ; +#37 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 2.375000000000000000, -0.6250000000000003300 ) ) ; +#38 = CARTESIAN_POINT ( 'NONE', ( 2.000000000000000000, 7.730582919617667100E-016, 0.3150000000000000600 ) ) ; +#39 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.3750000000000000600 ) ) ; +#40 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#41 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#42 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.3150000000000002800 ) ) ; +#43 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.6250000000000003300 ) ) ; +#44 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#45 = ORIENTED_EDGE ( 'NONE', *, *, #898, .T. ) ; +#46 = ORIENTED_EDGE ( 'NONE', *, *, #558, .T. ) ; +#47 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#48 = VECTOR ( 'NONE', #826, 39.37007874015748100 ) ; +#49 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#50 = ORIENTED_EDGE ( 'NONE', *, *, #223, .T. ) ; +#51 = AXIS2_PLACEMENT_3D ( 'NONE', #42, #404, #40 ) ; +#52 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#53 = ORIENTED_EDGE ( 'NONE', *, *, #605, .T. ) ; +#54 = CARTESIAN_POINT ( 'NONE', ( -2.940000000000000400, 3.637200993467639100E-016, -0.3750000000000001700 ) ) ; +#55 = EDGE_CURVE ( 'NONE', #199, #777, #245, .T. ) ; +#56 = CIRCLE ( 'NONE', #431, 1.505773112999396800 ) ; +#57 = ORIENTED_EDGE ( 'NONE', *, *, #487, .T. ) ; +#58 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#59 = VECTOR ( 'NONE', #97, 39.37007874015748100 ) ; +#60 = APPROVAL_DATE_TIME ( #310, #139 ) ; +#61 = TOROIDAL_SURFACE ( 'NONE', #253, 2.940000000000000400, 0.05999999999999999800 ) ; +#62 = ORIENTED_EDGE ( 'NONE', *, *, #537, .T. ) ; +#63 =( NAMED_UNIT ( * ) PLANE_ANGLE_UNIT ( ) SI_UNIT ( $, .RADIAN. ) ); +#64 = AXIS2_PLACEMENT_3D ( 'NONE', #549, #184, #557 ) ; +#65 = APPLICATION_PROTOCOL_DEFINITION ( 'international standard', 'config_control_design', 1994, #279 ) ; +#66 = APPLICATION_PROTOCOL_DEFINITION ( 'international standard', 'config_control_design', 1994, #569 ) ; +#67 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#68 = EDGE_CURVE ( 'NONE', #786, #90, #518, .T. ) ; +#69 = VERTEX_POINT ( 'NONE', #672 ) ; +#70 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.3750000000000000600 ) ) ; +#71 = ORIENTED_EDGE ( 'NONE', *, *, #682, .F. ) ; +#72 = CC_DESIGN_SECURITY_CLASSIFICATION ( #899, ( #508 ) ) ; +#73 = FACE_OUTER_BOUND ( 'NONE', #379, .T. ) ; +#74 = ORIENTED_EDGE ( 'NONE', *, *, #260, .T. ) ; +#75 = DIRECTION ( 'NONE', ( 0.1218693434051478800, 0.0000000000000000000, 0.9925461516413219800 ) ) ; +#76 = EDGE_CURVE ( 'NONE', #398, #578, #896, .T. ) ; +#77 = CARTESIAN_POINT ( 'NONE', ( -0.3749999999999996700, -2.375000000000000000, -0.6250000000000003300 ) ) ; +#78 = CIRCLE ( 'NONE', #774, 0.3749999999999999400 ) ; +#79 = CARTESIAN_POINT ( 'NONE', ( 0.3749999999999999400, 2.375000000000000000, -0.3750000000000001700 ) ) ; +#80 = ORIENTED_EDGE ( 'NONE', *, *, #700, .F. ) ; +#81 = AXIS2_PLACEMENT_3D ( 'NONE', #396, #256, #900 ) ; +#82 = FACE_OUTER_BOUND ( 'NONE', #192, .T. ) ; +#83 = PERSON_AND_ORGANIZATION ( #164, #907 ) ; +#84 = FACE_OUTER_BOUND ( 'NONE', #251, .T. ) ; +#85 = ADVANCED_FACE ( 'NONE', ( #679 ), #221, .F. ) ; +#86 = CARTESIAN_POINT ( 'NONE', ( -2.000000000000000000, -4.362804221962446100E-016, -0.3750000000000001700 ) ) ; +#87 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.4350000000000001600 ) ) ; +#88 = EDGE_CURVE ( 'NONE', #407, #263, #917, .T. ) ; +#89 = CARTESIAN_POINT ( 'NONE', ( -2.375000000000000000, -4.362804221962446100E-016, 0.3150000000000000600 ) ) ; +#90 = VERTEX_POINT ( 'NONE', #464 ) ; +#91 = VERTEX_POINT ( 'NONE', #765 ) ; +#92 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#93 = LINE ( 'NONE', #220, #543 ) ; +#94 = AXIS2_PLACEMENT_3D ( 'NONE', #70, #882, #335 ) ; +#95 = CARTESIAN_POINT ( 'NONE', ( -1.220000000000000000, 1.494069094959770800E-016, -0.6250000000000000000 ) ) ; +#96 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#97 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#98 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#99 = CARTESIAN_POINT ( 'NONE', ( -0.3749999999999996700, -2.375000000000000000, -0.3750000000000001700 ) ) ; +#100 = AXIS2_PLACEMENT_3D ( 'NONE', #662, #875, #597 ) ; +#101 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#102 = ORIENTED_EDGE ( 'NONE', *, *, #823, .T. ) ; +#103 = ORIENTED_EDGE ( 'NONE', *, *, #105, .T. ) ; +#104 = TOROIDAL_SURFACE ( 'NONE', #162, 1.583083515873356900, 0.05999999999999999800 ) ; +#105 = EDGE_CURVE ( 'NONE', #31, #506, #17, .T. ) ; +#106 = PERSON_AND_ORGANIZATION ( #164, #907 ) ; +#107 = CIRCLE ( 'NONE', #425, 0.05999999999999997700 ) ; +#108 = CARTESIAN_POINT ( 'NONE', ( 2.000000000000000000, 7.730582919617667100E-016, -0.3750000000000001700 ) ) ; +#109 = CARTESIAN_POINT ( 'NONE', ( 2.375000000000000000, 7.271340369937410300E-016, -0.6250000000000003300 ) ) ; +#110 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.000000000000000000, 0.0000000000000000000 ) ) ; +#111 = AXIS2_PLACEMENT_3D ( 'NONE', #273, #783, #631 ) ; +#112 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#113 = ORIENTED_EDGE ( 'NONE', *, *, #749, .T. ) ; +#114 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.3750000000000001700 ) ) ; +#115 = ORIENTED_EDGE ( 'NONE', *, *, #516, .F. ) ; +#116 = DATE_AND_TIME ( #883, #295 ) ; +#117 = FACE_BOUND ( 'NONE', #210, .T. ) ; +#118 = EDGE_CURVE ( 'NONE', #768, #91, #172, .T. ) ; +#119 = ORIENTED_EDGE ( 'NONE', *, *, #338, .F. ) ; +#120 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#121 = AXIS2_PLACEMENT_3D ( 'NONE', #773, #633, #264 ) ; +#122 = EDGE_LOOP ( 'NONE', ( #538, #46, #315, #481 ) ) ; +#123 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#124 = EDGE_CURVE ( 'NONE', #427, #674, #266, .T. ) ; +#125 = EDGE_LOOP ( 'NONE', ( #442, #525, #634, #134 ) ) ; +#126 = EDGE_LOOP ( 'NONE', ( #102, #816 ) ) ; +#127 = DIRECTION ( 'NONE', ( -1.000000000000000000, -1.224646799147359900E-016, 0.0000000000000000000 ) ) ; +#128 = CIRCLE ( 'NONE', #261, 0.3749999999999999400 ) ; +#129 = LINE ( 'NONE', #503, #638 ) ; +#130 = ORIENTED_EDGE ( 'NONE', *, *, #664, .F. ) ; +#131 = AXIS2_PLACEMENT_3D ( 'NONE', #880, #174, #762 ) ; +#132 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#133 = EDGE_CURVE ( 'NONE', #506, #31, #343, .T. ) ; +#134 = ORIENTED_EDGE ( 'NONE', *, *, #605, .F. ) ; +#135 = ORIENTED_EDGE ( 'NONE', *, *, #19, .T. ) ; +#136 = LINE ( 'NONE', #843, #148 ) ; +#137 = FACE_OUTER_BOUND ( 'NONE', #738, .T. ) ; +#138 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#139 = APPROVAL ( #350, 'UNSPECIFIED' ) ; +#140 = APPROVAL_ROLE ( '' ) ; +#141 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#142 = AXIS2_PLACEMENT_3D ( 'NONE', #222, #868, #746 ) ; +#143 = ORIENTED_EDGE ( 'NONE', *, *, #305, .T. ) ; +#144 = VERTEX_POINT ( 'NONE', #393 ) ; +#145 = CYLINDRICAL_SURFACE ( 'NONE', #601, 1.220000000000000000 ) ; +#146 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#147 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.3150000000000000600 ) ) ; +#148 = VECTOR ( 'NONE', #594, 39.37007874015748100 ) ; +#149 = CIRCLE ( 'NONE', #142, 0.05999999999999990800 ) ; +#150 = EDGE_CURVE ( 'NONE', #437, #27, #567, .T. ) ; +#151 = ADVANCED_FACE ( 'NONE', ( #736 ), #61, .T. ) ; +#152 = CARTESIAN_POINT ( 'NONE', ( 2.940000000000000400, 0.0000000000000000000, -0.3750000000000001700 ) ) ; +#153 = ORIENTED_EDGE ( 'NONE', *, *, #68, .T. ) ; +#154 = AXIS2_PLACEMENT_3D ( 'NONE', #37, #461, #324 ) ; +#155 = ORIENTED_EDGE ( 'NONE', *, *, #36, .F. ) ; +#156 = CIRCLE ( 'NONE', #492, 3.000000000000000400 ) ; +#157 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#158 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#159 = ADVANCED_FACE ( 'NONE', ( #668 ), #276, .F. ) ; +#160 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#161 = EDGE_CURVE ( 'NONE', #578, #398, #761, .T. ) ; +#162 = AXIS2_PLACEMENT_3D ( 'NONE', #547, #734, #289 ) ; +#163 = CARTESIAN_POINT ( 'NONE', ( -2.375000000000000000, -4.362804221962446100E-016, -0.3750000000000001700 ) ) ; +#164 = PERSON ( 'UNSPECIFIED', 'UNSPECIFIED', 'UNSPECIFIED', ('UNSPECIFIED'), ('UNSPECIFIED'), ('UNSPECIFIED') ) ; +#165 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.6250000000000001100 ) ) ; +#166 = EDGE_LOOP ( 'NONE', ( #645, #168 ) ) ; +#167 = EDGE_CURVE ( 'NONE', #262, #772, #851, .T. ) ; +#168 = ORIENTED_EDGE ( 'NONE', *, *, #779, .T. ) ; +#169 = FACE_BOUND ( 'NONE', #126, .T. ) ; +#170 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#171 = SHAPE_DEFINITION_REPRESENTATION ( #445, #236 ) ; +#172 = LINE ( 'NONE', #694, #35 ) ; +#173 = AXIS2_PLACEMENT_3D ( 'NONE', #895, #886, #539 ) ; +#174 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#175 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#176 = ORIENTED_EDGE ( 'NONE', *, *, #450, .T. ) ; +#177 = CONICAL_SURFACE ( 'NONE', #364, 1.499303859774273800, 0.1221730476396034700 ) ; +#178 = EDGE_CURVE ( 'NONE', #614, #574, #460, .T. ) ; +#179 = DIRECTION ( 'NONE', ( -1.224646799147353200E-016, 1.000000000000000000, 0.0000000000000000000 ) ) ; +#180 = FACE_OUTER_BOUND ( 'NONE', #586, .T. ) ; +#181 = EDGE_LOOP ( 'NONE', ( #377, #252, #787, #115 ) ) ; +#182 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#183 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#184 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#185 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.3150000000000000600 ) ) ; +#186 = EDGE_LOOP ( 'NONE', ( #359, #595, #365, #353 ) ) ; +#187 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#188 = EDGE_LOOP ( 'NONE', ( #176, #771 ) ) ; +#189 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.3750000000000000600 ) ) ; +#190 = FACE_BOUND ( 'NONE', #685, .T. ) ; +#191 = AXIS2_PLACEMENT_3D ( 'NONE', #189, #194, #891 ) ; +#192 = EDGE_LOOP ( 'NONE', ( #292, #573, #626, #417 ) ) ; +#193 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#194 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#195 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.3750000000000001700 ) ) ; +#196 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#197 = EDGE_CURVE ( 'NONE', #485, #540, #780, .T. ) ; +#198 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#199 = VERTEX_POINT ( 'NONE', #474 ) ; +#200 = ORIENTED_EDGE ( 'NONE', *, *, #55, .F. ) ; +#201 = CIRCLE ( 'NONE', #397, 1.583083515873356900 ) ; +#202 = PERSON_AND_ORGANIZATION ( #164, #907 ) ; +#203 = CIRCLE ( 'NONE', #726, 1.870000000000000100 ) ; +#204 = AXIS2_PLACEMENT_3D ( 'NONE', #466, #41, #888 ) ; +#205 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#206 = SECURITY_CLASSIFICATION_LEVEL ( 'unclassified' ) ; +#207 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#208 = EDGE_CURVE ( 'NONE', #376, #777, #156, .T. ) ; +#209 = VERTEX_POINT ( 'NONE', #401 ) ; +#210 = EDGE_LOOP ( 'NONE', ( #847, #53 ) ) ; +#211 = CIRCLE ( 'NONE', #173, 0.3749999999999999400 ) ; +#212 = EDGE_CURVE ( 'NONE', #540, #554, #327, .T. ) ; +#213 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#214 = ORIENTED_EDGE ( 'NONE', *, *, #208, .F. ) ; +#215 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#216 = AXIS2_PLACEMENT_3D ( 'NONE', #456, #29, #813 ) ; +#217 = ORIENTED_EDGE ( 'NONE', *, *, #850, .T. ) ; +#218 = EDGE_LOOP ( 'NONE', ( #712, #135, #306, #698 ) ) ; +#219 = FACE_BOUND ( 'NONE', #544, .T. ) ; +#220 = CARTESIAN_POINT ( 'NONE', ( -1.220000000000000000, 1.494069094959770800E-016, 0.3750000000000000600 ) ) ; +#221 = CYLINDRICAL_SURFACE ( 'NONE', #676, 0.3749999999999999400 ) ; +#222 = CARTESIAN_POINT ( 'NONE', ( -2.940000000000000400, 3.600461589493218800E-016, -0.3150000000000002800 ) ) ; +#223 = EDGE_CURVE ( 'NONE', #674, #427, #531, .T. ) ; +#224 = ADVANCED_FACE ( 'NONE', ( #84, #842 ), #2, .F. ) ; +#225 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#226 = EDGE_LOOP ( 'NONE', ( #513, #534 ) ) ; +#227 = ORIENTED_EDGE ( 'NONE', *, *, #167, .F. ) ; +#228 = CIRCLE ( 'NONE', #204, 0.3749999999999999400 ) ; +#229 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#230 = CARTESIAN_POINT ( 'NONE', ( -1.583083515873356900, 1.938718160497244600E-016, -0.3750000000000001700 ) ) ; +#231 = ORIENTED_EDGE ( 'NONE', *, *, #794, .F. ) ; +#232 = CARTESIAN_POINT ( 'NONE', ( 1.870000000000000100, 2.290089514405550600E-016, 0.3750000000000000600 ) ) ; +#233 = AXIS2_PLACEMENT_3D ( 'NONE', #766, #52, #329 ) ; +#234 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.6250000000000000000 ) ) ; +#235 = CARTESIAN_POINT ( 'NONE', ( 3.000000000000000400, 0.0000000000000000000, 0.3750000000000000600 ) ) ; +#236 = ADVANCED_BREP_SHAPE_REPRESENTATION ( '68095K348_Low-Pressure Steel Unthreaded Pipe Flange', ( #866, #20 ), #904 ) ; +#237 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#238 = CIRCLE ( 'NONE', #383, 2.940000000000000400 ) ; +#239 = EDGE_CURVE ( 'NONE', #348, #767, #872, .T. ) ; +#240 = EDGE_LOOP ( 'NONE', ( #818, #74 ) ) ; +#241 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#242 = LINE ( 'NONE', #604, #59 ) ; +#243 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#244 = VECTOR ( 'NONE', #96, 39.37007874015748100 ) ; +#245 = CIRCLE ( 'NONE', #890, 0.06000000000000001200 ) ; +#246 = ORIENTED_EDGE ( 'NONE', *, *, #717, .F. ) ; +#247 = CARTESIAN_POINT ( 'NONE', ( 1.446220343900916900, 0.0000000000000000000, -0.5650000000000001700 ) ) ; +#248 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#249 = AXIS2_PLACEMENT_3D ( 'NONE', #89, #366, #865 ) ; +#250 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.3150000000000002800 ) ) ; +#251 = EDGE_LOOP ( 'NONE', ( #806, #455 ) ) ; +#252 = ORIENTED_EDGE ( 'NONE', *, *, #178, .T. ) ; +#253 = AXIS2_PLACEMENT_3D ( 'NONE', #331, #44, #684 ) ; +#254 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#255 = FACE_OUTER_BOUND ( 'NONE', #125, .T. ) ; +#256 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#257 = CC_DESIGN_DATE_AND_TIME_ASSIGNMENT ( #509, #346, ( #473 ) ) ; +#258 = CARTESIAN_POINT ( 'NONE', ( -1.499303859774273800, 1.836117672821836400E-016, -0.6250000000000003300 ) ) ; +#259 = EDGE_LOOP ( 'NONE', ( #666, #130, #153, #71 ) ) ; +#260 = EDGE_CURVE ( 'NONE', #743, #348, #370, .T. ) ; +#261 = AXIS2_PLACEMENT_3D ( 'NONE', #612, #175, #532 ) ; +#262 = VERTEX_POINT ( 'NONE', #472 ) ; +#263 = VERTEX_POINT ( 'NONE', #490 ) ; +#264 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#265 = FACE_OUTER_BOUND ( 'NONE', #6, .T. ) ; +#266 = CIRCLE ( 'NONE', #334, 2.940000000000000400 ) ; +#267 = AXIS2_PLACEMENT_3D ( 'NONE', #480, #546, #254 ) ; +#268 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#269 = ADVANCED_FACE ( 'NONE', ( #180 ), #412, .T. ) ; +#270 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#271 = EDGE_CURVE ( 'NONE', #91, #856, #471, .T. ) ; +#272 = PERSON_AND_ORGANIZATION_ROLE ( 'design_supplier' ) ; +#273 = CARTESIAN_POINT ( 'NONE', ( -2.375000000000000000, -4.362804221962446100E-016, -0.3750000000000001700 ) ) ; +#274 = ORIENTED_EDGE ( 'NONE', *, *, #823, .F. ) ; +#275 = EDGE_LOOP ( 'NONE', ( #323, #143, #689, #655 ) ) ; +#276 = TOROIDAL_SURFACE ( 'NONE', #318, 1.870000000000000100, 0.05999999999999999800 ) ; +#277 = CARTESIAN_POINT ( 'NONE', ( -2.750000000000000000, -3.903561672282188800E-016, -0.3750000000000001700 ) ) ; +#278 = AXIS2_PLACEMENT_3D ( 'NONE', #147, #213, #858 ) ; +#279 = APPLICATION_CONTEXT ( 'configuration controlled 3d designs of mechanical parts and assemblies' ) ; +#280 = AXIS2_PLACEMENT_3D ( 'NONE', #406, #572, #579 ) ; +#281 = ORIENTED_EDGE ( 'NONE', *, *, #516, .T. ) ; +#282 = ORIENTED_EDGE ( 'NONE', *, *, #414, .F. ) ; +#283 = ADVANCED_FACE ( 'NONE', ( #821 ), #391, .F. ) ; +#284 = CIRCLE ( 'NONE', #357, 0.3749999999999999400 ) ; +#285 = APPROVAL_DATE_TIME ( #116, #654 ) ; +#286 = TOROIDAL_SURFACE ( 'NONE', #381, 1.583083515873356900, 0.05999999999999999800 ) ; +#287 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#288 = EDGE_CURVE ( 'NONE', #209, #757, #860, .T. ) ; +#289 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#290 = AXIS2_PLACEMENT_3D ( 'NONE', #416, #706, #707 ) ; +#291 = ADVANCED_FACE ( 'NONE', ( #337 ), #611, .F. ) ; +#292 = ORIENTED_EDGE ( 'NONE', *, *, #867, .F. ) ; +#293 = EDGE_LOOP ( 'NONE', ( #807, #441 ) ) ; +#294 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#295 = LOCAL_TIME ( 10, 53, 8.000000000000000000, #637 ) ; +#296 = CYLINDRICAL_SURFACE ( 'NONE', #100, 3.000000000000000400 ) ; +#297 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#298 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 2.375000000000000000, 0.3150000000000000600 ) ) ; +#299 = AXIS2_PLACEMENT_3D ( 'NONE', #185, #67, #132 ) ; +#300 = ORIENTED_EDGE ( 'NONE', *, *, #212, .F. ) ; +#301 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #517, #785, ( #508 ) ) ; +#302 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#303 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#304 = ORIENTED_EDGE ( 'NONE', *, *, #764, .T. ) ; +#305 = EDGE_CURVE ( 'NONE', #398, #263, #93, .T. ) ; +#306 = ORIENTED_EDGE ( 'NONE', *, *, #322, .T. ) ; +#307 = AXIS2_PLACEMENT_3D ( 'NONE', #352, #486, #58 ) ; +#308 = ORIENTED_EDGE ( 'NONE', *, *, #664, .T. ) ; +#309 = LINE ( 'NONE', #727, #915 ) ; +#310 = DATE_AND_TIME ( #841, #389 ) ; +#311 = CARTESIAN_POINT ( 'NONE', ( 1.220000000000000000, 0.0000000000000000000, 0.3750000000000000600 ) ) ; +#312 = DESIGN_CONTEXT ( 'detailed design', #569, 'design' ) ; +#313 = TOROIDAL_SURFACE ( 'NONE', #661, 1.446220343900916900, 0.05999999999999999800 ) ; +#314 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#315 = ORIENTED_EDGE ( 'NONE', *, *, #271, .F. ) ; +#316 = EDGE_LOOP ( 'NONE', ( #113, #468 ) ) ; +#317 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#318 = AXIS2_PLACEMENT_3D ( 'NONE', #624, #182, #477 ) ; +#319 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#320 = EDGE_LOOP ( 'NONE', ( #339, #217, #491, #408 ) ) ; +#321 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.3750000000000000600 ) ) ; +#322 = EDGE_CURVE ( 'NONE', #144, #90, #129, .T. ) ; +#323 = ORIENTED_EDGE ( 'NONE', *, *, #76, .F. ) ; +#324 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#325 = EDGE_LOOP ( 'NONE', ( #527, #914 ) ) ; +#326 = DATE_AND_TIME ( #566, #529 ) ; +#327 = CIRCLE ( 'NONE', #290, 0.05999999999999997700 ) ; +#328 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.4276878393956912200 ) ) ; +#329 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#330 = CARTESIAN_POINT ( 'NONE', ( 1.446220343900916900, 0.0000000000000000000, -0.6250000000000001100 ) ) ; +#331 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2550000000000000600 ) ) ; +#332 = VERTEX_POINT ( 'NONE', #79 ) ; +#333 = EDGE_LOOP ( 'NONE', ( #21, #274, #621, #596 ) ) ; +#334 = AXIS2_PLACEMENT_3D ( 'NONE', #628, #112, #897 ) ; +#335 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#336 = LINE ( 'NONE', #77, #34 ) ; +#337 = FACE_OUTER_BOUND ( 'NONE', #186, .T. ) ; +#338 = EDGE_CURVE ( 'NONE', #856, #91, #714, .T. ) ; +#339 = ORIENTED_EDGE ( 'NONE', *, *, #260, .F. ) ; +#340 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#341 = ORIENTED_EDGE ( 'NONE', *, *, #133, .F. ) ; +#342 = LINE ( 'NONE', #235, #244 ) ; +#343 = CIRCLE ( 'NONE', #18, 3.000000000000000400 ) ; +#344 = AXIS2_PLACEMENT_3D ( 'NONE', #399, #909, #127 ) ; +#345 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.3750000000000001700 ) ) ; +#346 = DATE_TIME_ROLE ( 'creation_date' ) ; +#347 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#348 = VERTEX_POINT ( 'NONE', #86 ) ; +#349 = AXIS2_PLACEMENT_3D ( 'NONE', #22, #522, #600 ) ; +#350 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#351 = ORIENTED_EDGE ( 'NONE', *, *, #150, .F. ) ; +#352 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.6250000000000001100 ) ) ; +#353 = ORIENTED_EDGE ( 'NONE', *, *, #88, .T. ) ; +#354 = FACE_BOUND ( 'NONE', #226, .T. ) ; +#355 = EDGE_CURVE ( 'NONE', #348, #743, #433, .T. ) ; +#356 = LENGTH_MEASURE_WITH_UNIT ( LENGTH_MEASURE( 0.02539999999999999900 ), #709 ); +#357 = AXIS2_PLACEMENT_3D ( 'NONE', #392, #241, #317 ) ; +#358 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#359 = ORIENTED_EDGE ( 'NONE', *, *, #305, .F. ) ; +#360 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 3.000000000000000400, 0.3150000000000000600 ) ) ; +#361 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#362 = ORIENTED_EDGE ( 'NONE', *, *, #652, .F. ) ; +#363 = CARTESIAN_POINT ( 'NONE', ( -2.375000000000000000, -4.362804221962446100E-016, -0.6250000000000003300 ) ) ; +#364 = AXIS2_PLACEMENT_3D ( 'NONE', #43, #193, #835 ) ; +#365 = ORIENTED_EDGE ( 'NONE', *, *, #570, .T. ) ; +#366 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#367 = ORIENTED_EDGE ( 'NONE', *, *, #805, .F. ) ; +#368 = TOROIDAL_SURFACE ( 'NONE', #216, 2.940000000000000400, 0.05999999999999999800 ) ; +#369 = PERSON_AND_ORGANIZATION ( #164, #907 ) ; +#370 = CIRCLE ( 'NONE', #111, 0.3749999999999999400 ) ; +#371 = CARTESIAN_POINT ( 'NONE', ( 1.583083515873356900, 0.0000000000000000000, -0.3750000000000001700 ) ) ; +#372 = EDGE_CURVE ( 'NONE', #777, #376, #801, .T. ) ; +#373 = ORIENTED_EDGE ( 'NONE', *, *, #161, .T. ) ; +#374 = PLANE ( 'NONE', #815 ) ; +#375 = ADVANCED_FACE ( 'NONE', ( #589 ), #484, .F. ) ; +#376 = VERTEX_POINT ( 'NONE', #444 ) ; +#377 = ORIENTED_EDGE ( 'NONE', *, *, #901, .F. ) ; +#378 = CIRCLE ( 'NONE', #803, 1.220000000000000000 ) ; +#379 = EDGE_LOOP ( 'NONE', ( #421, #57, #12, #828 ) ) ; +#380 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#381 = AXIS2_PLACEMENT_3D ( 'NONE', #87, #877, #593 ) ; +#382 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.3150000000000002800 ) ) ; +#383 = AXIS2_PLACEMENT_3D ( 'NONE', #817, #319, #887 ) ; +#384 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#385 = ORIENTED_EDGE ( 'NONE', *, *, #715, .T. ) ; +#386 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#387 = EDGE_LOOP ( 'NONE', ( #373, #711 ) ) ; +#388 = FACE_BOUND ( 'NONE', #325, .T. ) ; +#389 = LOCAL_TIME ( 10, 53, 8.000000000000000000, #735 ) ; +#390 = DIRECTION ( 'NONE', ( -1.000000000000000000, -1.224646799147354900E-016, 0.0000000000000000000 ) ) ; +#391 = CYLINDRICAL_SURFACE ( 'NONE', #280, 0.3749999999999999400 ) ; +#392 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 2.375000000000000000, -0.3750000000000001700 ) ) ; +#393 = CARTESIAN_POINT ( 'NONE', ( 1.505773112999396800, 0.0000000000000000000, -0.5723121606043081200 ) ) ; +#394 = CARTESIAN_POINT ( 'NONE', ( 2.940000000000000400, 3.637200993467639100E-016, 0.3150000000000000600 ) ) ; +#395 = AXIS2_PLACEMENT_3D ( 'NONE', #345, #268, #207 ) ; +#396 = CARTESIAN_POINT ( 'NONE', ( 2.908536147974963700E-016, -2.375000000000000000, 0.3150000000000000600 ) ) ; +#397 = AXIS2_PLACEMENT_3D ( 'NONE', #114, #463, #384 ) ; +#398 = VERTEX_POINT ( 'NONE', #95 ) ; +#399 = CARTESIAN_POINT ( 'NONE', ( 2.940000000000000400, 3.600461589493218800E-016, 0.2550000000000000600 ) ) ; +#400 = ORIENTED_EDGE ( 'NONE', *, *, #913, .F. ) ; +#401 = CARTESIAN_POINT ( 'NONE', ( -0.3749999999999999400, 2.375000000000000000, 0.3150000000000000600 ) ) ; +#402 = CIRCLE ( 'NONE', #278, 2.940000000000000400 ) ; +#403 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#404 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#405 = EDGE_CURVE ( 'NONE', #427, #31, #831, .T. ) ; +#406 = CARTESIAN_POINT ( 'NONE', ( 2.375000000000000000, 7.271340369937410300E-016, -0.6250000000000003300 ) ) ; +#407 = VERTEX_POINT ( 'NONE', #669 ) ; +#408 = ORIENTED_EDGE ( 'NONE', *, *, #239, .F. ) ; +#409 = ADVANCED_FACE ( 'NONE', ( #137 ), #296, .T. ) ; +#410 = AXIS2_PLACEMENT_3D ( 'NONE', #195, #403, #47 ) ; +#411 = CIRCLE ( 'NONE', #533, 1.810000000000000100 ) ; +#412 = CONICAL_SURFACE ( 'NONE', #613, 1.499303859774273800, 0.1221730476396034700 ) ; +#413 = CARTESIAN_POINT ( 'NONE', ( -2.000000000000000000, -4.362804221962446100E-016, -0.6250000000000003300 ) ) ; +#414 = EDGE_CURVE ( 'NONE', #90, #69, #688, .T. ) ; +#415 = PERSON_AND_ORGANIZATION_ROLE ( 'classification_officer' ) ; +#416 = CARTESIAN_POINT ( 'NONE', ( -1.870000000000000100, 0.0000000000000000000, 0.3750000000000000600 ) ) ; +#417 = ORIENTED_EDGE ( 'NONE', *, *, #208, .T. ) ; +#418 = VERTEX_POINT ( 'NONE', #524 ) ; +#419 = CYLINDRICAL_SURFACE ( 'NONE', #592, 0.3749999999999999400 ) ; +#420 = ADVANCED_FACE ( 'NONE', ( #908, #495 ), #374, .F. ) ; +#421 = ORIENTED_EDGE ( 'NONE', *, *, #223, .F. ) ; +#422 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.3750000000000000600 ) ) ; +#423 =( CONVERSION_BASED_UNIT ( 'INCH', #356 ) LENGTH_UNIT ( ) NAMED_UNIT ( #581 ) ); +#424 = DIRECTION ( 'NONE', ( -1.000000000000000000, 1.224646799147354900E-016, 0.0000000000000000000 ) ) ; +#425 = AXIS2_PLACEMENT_3D ( 'NONE', #247, #110, #615 ) ; +#426 = ADVANCED_FACE ( 'NONE', ( #724 ), #702, .T. ) ; +#427 = VERTEX_POINT ( 'NONE', #152 ) ; +#428 = ORIENTED_EDGE ( 'NONE', *, *, #794, .T. ) ; +#429 = LINE ( 'NONE', #258, #555 ) ; +#430 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.3750000000000000600 ) ) ; +#431 = AXIS2_PLACEMENT_3D ( 'NONE', #751, #671, #98 ) ; +#432 = CALENDAR_DATE ( 2023, 7, 2 ) ; +#433 = CIRCLE ( 'NONE', #550, 0.3749999999999999400 ) ; +#434 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.5650000000000001700 ) ) ; +#435 = ADVANCED_FACE ( 'NONE', ( #747 ), #286, .F. ) ; +#436 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 2.375000000000000000, -0.6250000000000003300 ) ) ; +#437 = VERTEX_POINT ( 'NONE', #99 ) ; +#438 = CARTESIAN_POINT ( 'NONE', ( -3.000000000000000400, 3.673940397442060400E-016, 0.2550000000000000600 ) ) ; +#439 = AXIS2_PLACEMENT_3D ( 'NONE', #430, #854, #852 ) ; +#440 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#441 = ORIENTED_EDGE ( 'NONE', *, *, #520, .T. ) ; +#442 = ORIENTED_EDGE ( 'NONE', *, *, #850, .F. ) ; +#443 = CYLINDRICAL_SURFACE ( 'NONE', #94, 3.000000000000000400 ) ; +#444 = CARTESIAN_POINT ( 'NONE', ( 3.000000000000000400, 0.0000000000000000000, 0.2550000000000000600 ) ) ; +#445 = PRODUCT_DEFINITION_SHAPE ( 'NONE', 'NONE', #473 ) ; +#446 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#447 = AXIS2_PLACEMENT_3D ( 'NONE', #832, #916, #781 ) ; +#448 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 1.810000000000000100, 0.3750000000000000600 ) ) ; +#449 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#450 = EDGE_CURVE ( 'NONE', #540, #485, #203, .T. ) ; +#451 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#452 = CARTESIAN_POINT ( 'NONE', ( -2.940000000000000400, 0.0000000000000000000, 0.2550000000000000600 ) ) ; +#453 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #106, #4, ( #548 ) ) ; +#454 = FACE_OUTER_BOUND ( 'NONE', #122, .T. ) ; +#455 = ORIENTED_EDGE ( 'NONE', *, *, #901, .T. ) ; +#456 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2550000000000000600 ) ) ; +#457 = LINE ( 'NONE', #703, #646 ) ; +#458 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#459 = PERSON_AND_ORGANIZATION ( #164, #907 ) ; +#460 = CIRCLE ( 'NONE', #499, 0.05999999999999990800 ) ; +#461 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#462 = AXIS2_PLACEMENT_3D ( 'NONE', #651, #11, #146 ) ; +#463 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#464 = CARTESIAN_POINT ( 'NONE', ( 1.523530746774877300, 0.0000000000000000000, -0.4276878393956912200 ) ) ; +#465 = EDGE_CURVE ( 'NONE', #767, #418, #510, .T. ) ; +#466 = CARTESIAN_POINT ( 'NONE', ( -2.375000000000000000, -4.362804221962446100E-016, 0.3150000000000000600 ) ) ; +#467 = ORIENTED_EDGE ( 'NONE', *, *, #450, .F. ) ; +#468 = ORIENTED_EDGE ( 'NONE', *, *, #10, .T. ) ; +#469 = APPROVAL_DATE_TIME ( #326, #650 ) ; +#470 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#471 = CIRCLE ( 'NONE', #693, 0.3749999999999999400 ) ; +#472 = CARTESIAN_POINT ( 'NONE', ( 0.3750000000000002200, -2.375000000000000000, 0.3150000000000000600 ) ) ; +#473 = PRODUCT_DEFINITION ( 'UNKNOWN', '', #508, #312 ) ; +#474 = CARTESIAN_POINT ( 'NONE', ( -2.940000000000000400, 0.0000000000000000000, 0.3150000000000000600 ) ) ; +#475 = EDGE_LOOP ( 'NONE', ( #608, #155, #793, #119 ) ) ; +#476 = ORIENTED_EDGE ( 'NONE', *, *, #838, .T. ) ; +#477 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#478 = AXIS2_PLACEMENT_3D ( 'NONE', #710, #270, #198 ) ; +#479 = ORIENTED_EDGE ( 'NONE', *, *, #124, .T. ) ; +#480 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.5723121606043081200 ) ) ; +#481 = ORIENTED_EDGE ( 'NONE', *, *, #118, .F. ) ; +#482 = LINE ( 'NONE', #903, #732 ) ; +#483 = CALENDAR_DATE ( 2023, 7, 2 ) ; +#484 = CYLINDRICAL_SURFACE ( 'NONE', #648, 0.3749999999999999400 ) ; +#485 = VERTEX_POINT ( 'NONE', #602 ) ; +#486 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#487 = EDGE_CURVE ( 'NONE', #674, #506, #149, .T. ) ; +#488 =( NAMED_UNIT ( * ) SI_UNIT ( $, .STERADIAN. ) SOLID_ANGLE_UNIT ( ) ); +#489 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.6250000000000003300 ) ) ; +#490 = CARTESIAN_POINT ( 'NONE', ( -1.220000000000000000, 1.494069094959770800E-016, 0.3750000000000000600 ) ) ; +#491 = ORIENTED_EDGE ( 'NONE', *, *, #465, .F. ) ; +#492 = AXIS2_PLACEMENT_3D ( 'NONE', #564, #340, #846 ) ; +#493 = ORIENTED_EDGE ( 'NONE', *, *, #487, .F. ) ; +#494 = APPROVAL_PERSON_ORGANIZATION ( #723, #650, #788 ) ; +#495 = FACE_OUTER_BOUND ( 'NONE', #293, .T. ) ; +#496 = DATE_TIME_ROLE ( 'classification_date' ) ; +#497 = CARTESIAN_POINT ( 'NONE', ( -1.583083515873356900, 1.938718160497244600E-016, -0.4350000000000001600 ) ) ; +#498 = ORIENTED_EDGE ( 'NONE', *, *, #700, .T. ) ; +#499 = AXIS2_PLACEMENT_3D ( 'NONE', #690, #833, #551 ) ; +#500 = AXIS2_PLACEMENT_3D ( 'NONE', #298, #303, #449 ) ; +#501 = CARTESIAN_POINT ( 'NONE', ( -2.000000000000000000, -4.362804221962446100E-016, 0.3150000000000000600 ) ) ; +#502 = ORIENTED_EDGE ( 'NONE', *, *, #505, .F. ) ; +#503 = CARTESIAN_POINT ( 'NONE', ( 1.499303859774273800, 0.0000000000000000000, -0.6250000000000003300 ) ) ; +#504 = CARTESIAN_POINT ( 'NONE', ( 0.3749999999999999400, 2.375000000000000000, 0.3150000000000000600 ) ) ; +#505 = EDGE_CURVE ( 'NONE', #485, #665, #556, .T. ) ; +#506 = VERTEX_POINT ( 'NONE', #802 ) ; +#507 = CIRCLE ( 'NONE', #267, 1.505773112999396800 ) ; +#508 = PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE ( 'ANY', '', #548, .NOT_KNOWN. ) ; +#509 = DATE_AND_TIME ( #432, #701 ) ; +#510 = CIRCLE ( 'NONE', #249, 0.3749999999999999400 ) ; +#511 = AXIS2_PLACEMENT_3D ( 'NONE', #836, #187, #120 ) ; +#512 = ADVANCED_FACE ( 'NONE', ( #658 ), #313, .T. ) ; +#513 = ORIENTED_EDGE ( 'NONE', *, *, #36, .T. ) ; +#514 = EDGE_LOOP ( 'NONE', ( #705, #498, #879, #200 ) ) ; +#515 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#516 = EDGE_CURVE ( 'NONE', #691, #144, #107, .T. ) ; +#517 = PERSON_AND_ORGANIZATION ( #164, #907 ) ; +#518 = CIRCLE ( 'NONE', #349, 0.05999999999999997700 ) ; +#519 = DIRECTION ( 'NONE', ( -0.1218693434051478800, 1.492469013153039400E-017, 0.9925461516413219800 ) ) ; +#520 = EDGE_CURVE ( 'NONE', #665, #554, #411, .T. ) ; +#521 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.4276878393956912200 ) ) ; +#522 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.000000000000000000, 0.0000000000000000000 ) ) ; +#523 = CC_DESIGN_DATE_AND_TIME_ASSIGNMENT ( #16, #496, ( #899 ) ) ; +#524 = CARTESIAN_POINT ( 'NONE', ( -2.750000000000000000, -3.903561672282188800E-016, 0.3150000000000000600 ) ) ; +#525 = ORIENTED_EDGE ( 'NONE', *, *, #355, .F. ) ; +#526 = CARTESIAN_POINT ( 'NONE', ( 2.375000000000000000, 7.271340369937410300E-016, -0.3750000000000001700 ) ) ; +#527 = ORIENTED_EDGE ( 'NONE', *, *, #271, .T. ) ; +#528 = CIRCLE ( 'NONE', #410, 1.583083515873356900 ) ; +#529 = LOCAL_TIME ( 10, 53, 8.000000000000000000, #542 ) ; +#530 = CARTESIAN_POINT ( 'NONE', ( -1.810000000000000100, 0.0000000000000000000, 0.3750000000000000600 ) ) ; +#531 = CIRCLE ( 'NONE', #395, 2.940000000000000400 ) ; +#532 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#533 = AXIS2_PLACEMENT_3D ( 'NONE', #321, #535, #754 ) ; +#534 = ORIENTED_EDGE ( 'NONE', *, *, #585, .T. ) ; +#535 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#536 = CARTESIAN_POINT ( 'NONE', ( -0.3749999999999999400, 2.375000000000000000, -0.3750000000000001700 ) ) ; +#537 = EDGE_CURVE ( 'NONE', #830, #332, #789, .T. ) ; +#538 = ORIENTED_EDGE ( 'NONE', *, *, #585, .F. ) ; +#539 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#540 = VERTEX_POINT ( 'NONE', #729 ) ; +#541 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#542 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#543 = VECTOR ( 'NONE', #215, 39.37007874015748100 ) ; +#544 = EDGE_LOOP ( 'NONE', ( #45, #869 ) ) ; +#545 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#546 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#547 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.4350000000000001600 ) ) ; +#548 = PRODUCT ( '68095K348_Low-Pressure Steel Unthreaded Pipe Flange', '68095K348_Low-Pressure Steel Unthreaded Pipe Flange', '', ( #571 ) ) ; +#549 = CARTESIAN_POINT ( 'NONE', ( 2.908536147974963700E-016, -2.375000000000000000, -0.3750000000000001700 ) ) ; +#550 = AXIS2_PLACEMENT_3D ( 'NONE', #163, #670, #92 ) ; +#551 = DIRECTION ( 'NONE', ( -1.000000000000000000, 1.224646799147354900E-016, 0.0000000000000000000 ) ) ; +#552 = EDGE_LOOP ( 'NONE', ( #902, #910, #281, #798 ) ) ; +#553 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #459, #782, ( #473 ) ) ; +#554 = VERTEX_POINT ( 'NONE', #530 ) ; +#555 = VECTOR ( 'NONE', #519, 39.37007874015748100 ) ; +#556 = CIRCLE ( 'NONE', #912, 0.05999999999999990800 ) ; +#557 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#558 = EDGE_CURVE ( 'NONE', #849, #856, #778, .T. ) ; +#559 = AXIS2_PLACEMENT_3D ( 'NONE', #497, #3, #424 ) ; +#560 = AXIS2_PLACEMENT_3D ( 'NONE', #328, #697, #623 ) ; +#561 = VERTEX_POINT ( 'NONE', #394 ) ; +#562 = ORIENTED_EDGE ( 'NONE', *, *, #288, .F. ) ; +#563 = ADVANCED_FACE ( 'NONE', ( #73 ), #575, .T. ) ; +#564 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2550000000000000600 ) ) ; +#565 = CYLINDRICAL_SURFACE ( 'NONE', #154, 0.3749999999999999400 ) ; +#566 = CALENDAR_DATE ( 2023, 7, 2 ) ; +#567 = CIRCLE ( 'NONE', #64, 0.3749999999999999400 ) ; +#568 = ORIENTED_EDGE ( 'NONE', *, *, #124, .F. ) ; +#569 = APPLICATION_CONTEXT ( 'configuration controlled 3d designs of mechanical parts and assemblies' ) ; +#570 = EDGE_CURVE ( 'NONE', #578, #407, #840, .T. ) ; +#571 = MECHANICAL_CONTEXT ( 'NONE', #279, 'mechanical' ) ; +#572 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#573 = ORIENTED_EDGE ( 'NONE', *, *, #133, .T. ) ; +#574 = VERTEX_POINT ( 'NONE', #750 ) ; +#575 = TOROIDAL_SURFACE ( 'NONE', #758, 2.940000000000000400, 0.05999999999999999800 ) ; +#576 = PLANE ( 'NONE', #643 ) ; +#577 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.5650000000000001700 ) ) ; +#578 = VERTEX_POINT ( 'NONE', #889 ) ; +#579 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#580 = AXIS2_PLACEMENT_3D ( 'NONE', #739, #741, #294 ) ; +#581 = DIMENSIONAL_EXPONENTS ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ; +#582 = CARTESIAN_POINT ( 'NONE', ( -0.3749999999999996700, -2.375000000000000000, 0.3150000000000000600 ) ) ; +#583 = ORIENTED_EDGE ( 'NONE', *, *, #717, .T. ) ; +#584 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#585 = EDGE_CURVE ( 'NONE', #849, #768, #211, .T. ) ; +#586 = EDGE_LOOP ( 'NONE', ( #673, #476, #23, #625 ) ) ; +#587 = ADVANCED_FACE ( 'NONE', ( #265 ), #565, .F. ) ; +#588 = FACE_OUTER_BOUND ( 'NONE', #316, .T. ) ; +#589 = FACE_OUTER_BOUND ( 'NONE', #878, .T. ) ; +#590 = ADVANCED_FACE ( 'NONE', ( #609 ), #368, .T. ) ; +#591 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.3150000000000000600 ) ) ; +#592 = AXIS2_PLACEMENT_3D ( 'NONE', #363, #716, #791 ) ; +#593 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#594 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#595 = ORIENTED_EDGE ( 'NONE', *, *, #161, .F. ) ; +#596 = ORIENTED_EDGE ( 'NONE', *, *, #779, .F. ) ; +#597 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#598 = AXIS2_PLACEMENT_3D ( 'NONE', #577, #141, #361 ) ; +#599 = VECTOR ( 'NONE', #451, 39.37007874015748100 ) ; +#600 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#601 = AXIS2_PLACEMENT_3D ( 'NONE', #675, #314, #827 ) ; +#602 = CARTESIAN_POINT ( 'NONE', ( 1.870000000000000100, 2.290089514405550600E-016, 0.3150000000000000600 ) ) ; +#603 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#604 = CARTESIAN_POINT ( 'NONE', ( -2.750000000000000000, -3.903561672282188800E-016, -0.6250000000000003300 ) ) ; +#605 = EDGE_CURVE ( 'NONE', #418, #767, #228, .T. ) ; +#606 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #687, #415, ( #899 ) ) ; +#607 = CIRCLE ( 'NONE', #834, 1.446220343900916900 ) ; +#608 = ORIENTED_EDGE ( 'NONE', *, *, #558, .F. ) ; +#609 = FACE_OUTER_BOUND ( 'NONE', #792, .T. ) ; +#610 = FACE_OUTER_BOUND ( 'NONE', #753, .T. ) ; +#611 = CYLINDRICAL_SURFACE ( 'NONE', #439, 1.220000000000000000 ) ; +#612 = CARTESIAN_POINT ( 'NONE', ( 2.908536147974963700E-016, -2.375000000000000000, 0.3150000000000000600 ) ) ; +#613 = AXIS2_PLACEMENT_3D ( 'NONE', #489, #918, #911 ) ; +#614 = VERTEX_POINT ( 'NONE', #680 ) ; +#615 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#616 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#617 = ORIENTED_EDGE ( 'NONE', *, *, #885, .F. ) ; +#618 = EDGE_CURVE ( 'NONE', #263, #407, #378, .T. ) ; +#619 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.3750000000000000600 ) ) ; +#620 = ORIENTED_EDGE ( 'NONE', *, *, #749, .F. ) ; +#621 = ORIENTED_EDGE ( 'NONE', *, *, #652, .T. ) ; +#622 = CYLINDRICAL_SURFACE ( 'NONE', #844, 0.3749999999999999400 ) ; +#623 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#624 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.3750000000000000600 ) ) ; +#625 = ORIENTED_EDGE ( 'NONE', *, *, #322, .F. ) ; +#626 = ORIENTED_EDGE ( 'NONE', *, *, #885, .T. ) ; +#627 = CARTESIAN_POINT ( 'NONE', ( 2.908536147974963700E-016, -2.375000000000000000, -0.6250000000000003300 ) ) ; +#628 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.3750000000000001700 ) ) ; +#629 = AXIS2_PLACEMENT_3D ( 'NONE', #873, #225, #740 ) ; +#630 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#631 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#632 = FACE_BOUND ( 'NONE', #166, .T. ) ; +#633 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#634 = ORIENTED_EDGE ( 'NONE', *, *, #239, .T. ) ; +#635 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#636 = FACE_BOUND ( 'NONE', #871, .T. ) ; +#637 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#638 = VECTOR ( 'NONE', #75, 39.37007874015748100 ) ; +#639 = EDGE_CURVE ( 'NONE', #144, #574, #507, .T. ) ; +#640 = ADVANCED_FACE ( 'NONE', ( #759 ), #881, .F. ) ; +#641 = UNCERTAINTY_MEASURE_WITH_UNIT (LENGTH_MEASURE( 1.000000000000000100E-005 ), #423, 'distance_accuracy_value', 'NONE'); +#642 = ADVANCED_FACE ( 'NONE', ( #24 ), #622, .F. ) ; +#643 = AXIS2_PLACEMENT_3D ( 'NONE', #360, #287, #440 ) ; +#644 = EDGE_LOOP ( 'NONE', ( #653, #837 ) ) ; +#645 = ORIENTED_EDGE ( 'NONE', *, *, #167, .T. ) ; +#646 = VECTOR ( 'NONE', #123, 39.37007874015748100 ) ; +#647 = APPROVAL_ROLE ( '' ) ; +#648 = AXIS2_PLACEMENT_3D ( 'NONE', #436, #297, #733 ) ; +#649 = ADVANCED_FACE ( 'NONE', ( #677 ), #177, .T. ) ; +#650 = APPROVAL ( #853, 'UNSPECIFIED' ) ; +#651 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 2.375000000000000000, 0.3150000000000000600 ) ) ; +#652 = EDGE_CURVE ( 'NONE', #27, #262, #457, .T. ) ; +#653 = ORIENTED_EDGE ( 'NONE', *, *, #88, .F. ) ; +#654 = APPROVAL ( #138, 'UNSPECIFIED' ) ; +#655 = ORIENTED_EDGE ( 'NONE', *, *, #570, .F. ) ; +#656 = FACE_OUTER_BOUND ( 'NONE', #686, .T. ) ; +#657 = APPROVAL_PERSON_ORGANIZATION ( #369, #139, #140 ) ; +#658 = FACE_OUTER_BOUND ( 'NONE', #181, .T. ) ; +#659 = ORIENTED_EDGE ( 'NONE', *, *, #867, .T. ) ; +#660 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#661 = AXIS2_PLACEMENT_3D ( 'NONE', #434, #33, #248 ) ; +#662 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.3750000000000000600 ) ) ; +#663 = CARTESIAN_POINT ( 'NONE', ( 2.750000000000000000, 7.271340369937410300E-016, -0.3750000000000001700 ) ) ; +#664 = EDGE_CURVE ( 'NONE', #786, #893, #528, .T. ) ; +#665 = VERTEX_POINT ( 'NONE', #769 ) ; +#666 = ORIENTED_EDGE ( 'NONE', *, *, #730, .F. ) ; +#667 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#668 = FACE_OUTER_BOUND ( 'NONE', #32, .T. ) ; +#669 = CARTESIAN_POINT ( 'NONE', ( 1.220000000000000000, 0.0000000000000000000, 0.3750000000000000600 ) ) ; +#670 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#671 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#672 = CARTESIAN_POINT ( 'NONE', ( -1.523530746774877300, 1.865787052440430200E-016, -0.4276878393956912200 ) ) ; +#673 = ORIENTED_EDGE ( 'NONE', *, *, #639, .T. ) ; +#674 = VERTEX_POINT ( 'NONE', #54 ) ; +#675 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.3750000000000000600 ) ) ; +#676 = AXIS2_PLACEMENT_3D ( 'NONE', #755, #386, #170 ) ; +#677 = FACE_OUTER_BOUND ( 'NONE', #218, .T. ) ; +#678 = LOCAL_TIME ( 10, 53, 8.000000000000000000, #859 ) ; +#679 = FACE_OUTER_BOUND ( 'NONE', #320, .T. ) ; +#680 = CARTESIAN_POINT ( 'NONE', ( -1.446220343900916900, 1.807574669048449600E-016, -0.6250000000000001100 ) ) ; +#681 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#682 = EDGE_CURVE ( 'NONE', #69, #90, #699, .T. ) ; +#683 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#684 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#685 = EDGE_LOOP ( 'NONE', ( #308, #583 ) ) ; +#686 = EDGE_LOOP ( 'NONE', ( #479, #50 ) ) ; +#687 = PERSON_AND_ORGANIZATION ( #164, #907 ) ; +#688 = CIRCLE ( 'NONE', #790, 1.523530746774877300 ) ; +#689 = ORIENTED_EDGE ( 'NONE', *, *, #618, .T. ) ; +#690 = CARTESIAN_POINT ( 'NONE', ( -1.446220343900916900, 1.771109115020042200E-016, -0.5650000000000001700 ) ) ; +#691 = VERTEX_POINT ( 'NONE', #330 ) ; +#692 = ORIENTED_EDGE ( 'NONE', *, *, #537, .F. ) ; +#693 = AXIS2_PLACEMENT_3D ( 'NONE', #863, #358, #347 ) ; +#694 = CARTESIAN_POINT ( 'NONE', ( 2.750000000000000000, 7.271340369937410300E-016, -0.6250000000000003300 ) ) ; +#695 = AXIS2_PLACEMENT_3D ( 'NONE', #39, #814, #763 ) ; +#696 = ORIENTED_EDGE ( 'NONE', *, *, #505, .T. ) ; +#697 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#698 = ORIENTED_EDGE ( 'NONE', *, *, #414, .T. ) ; +#699 = CIRCLE ( 'NONE', #560, 1.523530746774877300 ) ; +#700 = EDGE_CURVE ( 'NONE', #561, #376, #808, .T. ) ; +#701 = LOCAL_TIME ( 10, 53, 8.000000000000000000, #667 ) ; +#702 = TOROIDAL_SURFACE ( 'NONE', #629, 2.940000000000000400, 0.05999999999999999800 ) ; +#703 = CARTESIAN_POINT ( 'NONE', ( 0.3750000000000002200, -2.375000000000000000, -0.6250000000000003300 ) ) ; +#704 = AXIS2_PLACEMENT_3D ( 'NONE', #422, #876, #446 ) ; +#705 = ORIENTED_EDGE ( 'NONE', *, *, #10, .F. ) ; +#706 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -1.000000000000000000, -0.0000000000000000000 ) ) ; +#707 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#708 = AXIS2_PLACEMENT_3D ( 'NONE', #109, #683, #681 ) ; +#709 =( LENGTH_UNIT ( ) NAMED_UNIT ( * ) SI_UNIT ( $, .METRE. ) ); +#710 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 1.499303859774273800, -0.6250000000000001100 ) ) ; +#711 = ORIENTED_EDGE ( 'NONE', *, *, #76, .T. ) ; +#712 = ORIENTED_EDGE ( 'NONE', *, *, #838, .F. ) ; +#713 = CIRCLE ( 'NONE', #307, 1.446220343900916900 ) ; +#714 = CIRCLE ( 'NONE', #30, 0.3749999999999999400 ) ; +#715 = EDGE_CURVE ( 'NONE', #830, #209, #482, .T. ) ; +#716 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#717 = EDGE_CURVE ( 'NONE', #893, #786, #201, .T. ) ; +#718 = ADVANCED_FACE ( 'NONE', ( #82 ), #443, .T. ) ; +#719 = CC_DESIGN_APPROVAL ( #650, ( #899 ) ) ; +#720 = ORIENTED_EDGE ( 'NONE', *, *, #68, .F. ) ; +#721 = ORIENTED_EDGE ( 'NONE', *, *, #730, .T. ) ; +#722 = FACE_OUTER_BOUND ( 'NONE', #776, .T. ) ; +#723 = PERSON_AND_ORGANIZATION ( #164, #907 ) ; +#724 = FACE_OUTER_BOUND ( 'NONE', #744, .T. ) ; +#725 = ADVANCED_FACE ( 'NONE', ( #857 ), #819, .T. ) ; +#726 = AXIS2_PLACEMENT_3D ( 'NONE', #591, #160, #157 ) ; +#727 = CARTESIAN_POINT ( 'NONE', ( -3.000000000000000400, 3.673940397442060400E-016, 0.3750000000000000600 ) ) ; +#728 = ADVANCED_FACE ( 'NONE', ( #255 ), #419, .F. ) ; +#729 = CARTESIAN_POINT ( 'NONE', ( -1.870000000000000100, 0.0000000000000000000, 0.3150000000000000600 ) ) ; +#730 = EDGE_CURVE ( 'NONE', #893, #69, #14, .T. ) ; +#731 = ORIENTED_EDGE ( 'NONE', *, *, #715, .F. ) ; +#732 = VECTOR ( 'NONE', #635, 39.37007874015748100 ) ; +#733 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#734 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#735 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#736 = FACE_OUTER_BOUND ( 'NONE', #514, .T. ) ; +#737 = ORIENTED_EDGE ( 'NONE', *, *, #55, .T. ) ; +#738 = EDGE_LOOP ( 'NONE', ( #103, #659, #862, #617 ) ) ; +#739 = CARTESIAN_POINT ( 'NONE', ( 2.940000000000000400, 0.0000000000000000000, -0.3150000000000002800 ) ) ; +#740 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#741 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.000000000000000000, 0.0000000000000000000 ) ) ; +#742 = AXIS2_PLACEMENT_3D ( 'NONE', #234, #49, #545 ) ; +#743 = VERTEX_POINT ( 'NONE', #277 ) ; +#744 = EDGE_LOOP ( 'NONE', ( #493, #568, #905, #341 ) ) ; +#745 = CIRCLE ( 'NONE', #447, 0.3749999999999999400 ) ; +#746 = DIRECTION ( 'NONE', ( -1.000000000000000000, 1.224646799147359900E-016, 0.0000000000000000000 ) ) ; +#747 = FACE_OUTER_BOUND ( 'NONE', #259, .T. ) ; +#748 = PLANE ( 'NONE', #121 ) ; +#749 = EDGE_CURVE ( 'NONE', #199, #561, #402, .T. ) ; +#750 = CARTESIAN_POINT ( 'NONE', ( -1.505773112999396800, 1.854913637758643400E-016, -0.5723121606043081200 ) ) ; +#751 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.5723121606043081200 ) ) ; +#752 = PRODUCT_RELATED_PRODUCT_CATEGORY ( 'detail', '', ( #548 ) ) ; +#753 = EDGE_LOOP ( 'NONE', ( #502, #467, #892, #756 ) ) ; +#754 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#755 = CARTESIAN_POINT ( 'NONE', ( -2.375000000000000000, -4.362804221962446100E-016, -0.6250000000000003300 ) ) ; +#756 = ORIENTED_EDGE ( 'NONE', *, *, #520, .F. ) ; +#757 = VERTEX_POINT ( 'NONE', #504 ) ; +#758 = AXIS2_PLACEMENT_3D ( 'NONE', #382, #380, #28 ) ; +#759 = FACE_OUTER_BOUND ( 'NONE', #333, .T. ) ; +#760 = CARTESIAN_POINT ( 'NONE', ( 0.3750000000000002200, -2.375000000000000000, -0.3750000000000001700 ) ) ; +#761 = CIRCLE ( 'NONE', #233, 1.220000000000000000 ) ; +#762 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#763 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#764 = EDGE_CURVE ( 'NONE', #437, #772, #336, .T. ) ; +#765 = CARTESIAN_POINT ( 'NONE', ( 2.750000000000000000, 7.271340369937410300E-016, 0.3150000000000000600 ) ) ; +#766 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.6250000000000000000 ) ) ; +#767 = VERTEX_POINT ( 'NONE', #501 ) ; +#768 = VERTEX_POINT ( 'NONE', #663 ) ; +#769 = CARTESIAN_POINT ( 'NONE', ( 1.810000000000000100, 2.253350110431129800E-016, 0.3750000000000000600 ) ) ; +#770 = CIRCLE ( 'NONE', #695, 1.810000000000000100 ) ; +#771 = ORIENTED_EDGE ( 'NONE', *, *, #197, .T. ) ; +#772 = VERTEX_POINT ( 'NONE', #582 ) ; +#773 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 1.530000000000000000, -0.3750000000000001700 ) ) ; +#774 = AXIS2_PLACEMENT_3D ( 'NONE', #526, #101, #243 ) ; +#775 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#776 = EDGE_LOOP ( 'NONE', ( #246, #721, #282, #720 ) ) ; +#777 = VERTEX_POINT ( 'NONE', #438 ) ; +#778 = LINE ( 'NONE', #824, #599 ) ; +#779 = EDGE_CURVE ( 'NONE', #772, #262, #128, .T. ) ; +#780 = CIRCLE ( 'NONE', #299, 1.870000000000000100 ) ; +#781 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#782 = PERSON_AND_ORGANIZATION_ROLE ( 'creator' ) ; +#783 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#784 = CC_DESIGN_APPROVAL ( #139, ( #508 ) ) ; +#785 = PERSON_AND_ORGANIZATION_ROLE ( 'creator' ) ; +#786 = VERTEX_POINT ( 'NONE', #371 ) ; +#787 = ORIENTED_EDGE ( 'NONE', *, *, #639, .F. ) ; +#788 = APPROVAL_ROLE ( '' ) ; +#789 = CIRCLE ( 'NONE', #131, 0.3749999999999999400 ) ; +#790 = AXIS2_PLACEMENT_3D ( 'NONE', #521, #229, #515 ) ; +#791 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#792 = EDGE_LOOP ( 'NONE', ( #80, #620, #737, #214 ) ) ; +#793 = ORIENTED_EDGE ( 'NONE', *, *, #118, .T. ) ; +#794 = EDGE_CURVE ( 'NONE', #332, #830, #284, .T. ) ; +#795 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #202, #272, ( #508 ) ) ; +#796 = CYLINDRICAL_SURFACE ( 'NONE', #708, 0.3749999999999999400 ) ; +#797 = CARTESIAN_POINT ( 'NONE', ( 2.375000000000000000, 7.271340369937410300E-016, 0.3150000000000000600 ) ) ; +#798 = ORIENTED_EDGE ( 'NONE', *, *, #19, .F. ) ; +#799 = FACE_BOUND ( 'NONE', #188, .T. ) ; +#800 = TOROIDAL_SURFACE ( 'NONE', #704, 1.870000000000000100, 0.05999999999999999800 ) ; +#801 = CIRCLE ( 'NONE', #861, 3.000000000000000400 ) ; +#802 = CARTESIAN_POINT ( 'NONE', ( -3.000000000000000400, 3.673940397442060400E-016, -0.3150000000000002800 ) ) ; +#803 = AXIS2_PLACEMENT_3D ( 'NONE', #619, #183, #470 ) ; +#804 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2550000000000000600 ) ) ; +#805 = EDGE_CURVE ( 'NONE', #554, #665, #770, .T. ) ; +#806 = ORIENTED_EDGE ( 'NONE', *, *, #25, .T. ) ; +#807 = ORIENTED_EDGE ( 'NONE', *, *, #805, .T. ) ; +#808 = CIRCLE ( 'NONE', #344, 0.05999999999999990800 ) ; +#809 = CARTESIAN_POINT ( 'NONE', ( 3.000000000000000400, 0.0000000000000000000, -0.3150000000000002800 ) ) ; +#810 = ADVANCED_FACE ( 'NONE', ( #8 ), #145, .F. ) ; +#811 = CLOSED_SHELL ( 'NONE', ( #159, #151, #563, #864, #512, #375, #5, #642, #85, #269, #810, #409, #718, #870, #420, #291, #224, #649, #848, #728, #640, #283, #587, #725, #435, #426, #590, #874 ) ) ; +#812 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#813 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#814 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#815 = AXIS2_PLACEMENT_3D ( 'NONE', #448, #26, #15 ) ; +#816 = ORIENTED_EDGE ( 'NONE', *, *, #150, .T. ) ; +#817 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.3150000000000000600 ) ) ; +#818 = ORIENTED_EDGE ( 'NONE', *, *, #355, .T. ) ; +#819 = TOROIDAL_SURFACE ( 'NONE', #598, 1.446220343900916900, 0.05999999999999999800 ) ; +#820 = CIRCLE ( 'NONE', #500, 0.3749999999999999400 ) ; +#821 = FACE_OUTER_BOUND ( 'NONE', #475, .T. ) ; +#822 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -1.000000000000000000, -0.0000000000000000000 ) ) ; +#823 = EDGE_CURVE ( 'NONE', #27, #437, #745, .T. ) ; +#824 = CARTESIAN_POINT ( 'NONE', ( 2.000000000000000000, 7.730582919617667100E-016, -0.6250000000000003300 ) ) ; +#825 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#826 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#827 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#828 = ORIENTED_EDGE ( 'NONE', *, *, #405, .F. ) ; +#829 = CC_DESIGN_APPROVAL ( #654, ( #473 ) ) ; +#830 = VERTEX_POINT ( 'NONE', #536 ) ; +#831 = CIRCLE ( 'NONE', #580, 0.05999999999999997700 ) ; +#832 = CARTESIAN_POINT ( 'NONE', ( 2.908536147974963700E-016, -2.375000000000000000, -0.3750000000000001700 ) ) ; +#833 = DIRECTION ( 'NONE', ( 1.224646799147353200E-016, 1.000000000000000000, 0.0000000000000000000 ) ) ; +#834 = AXIS2_PLACEMENT_3D ( 'NONE', #165, #237, #458 ) ; +#835 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#836 = CARTESIAN_POINT ( 'NONE', ( 2.908536147974963700E-016, -2.375000000000000000, -0.6250000000000003300 ) ) ; +#837 = ORIENTED_EDGE ( 'NONE', *, *, #618, .F. ) ; +#838 = EDGE_CURVE ( 'NONE', #574, #69, #429, .T. ) ; +#839 = ORIENTED_EDGE ( 'NONE', *, *, #913, .T. ) ; +#840 = LINE ( 'NONE', #311, #48 ) ; +#841 = CALENDAR_DATE ( 2023, 7, 2 ) ; +#842 = FACE_BOUND ( 'NONE', #387, .T. ) ; +#843 = CARTESIAN_POINT ( 'NONE', ( 0.3749999999999999400, 2.375000000000000000, -0.6250000000000003300 ) ) ; +#844 = AXIS2_PLACEMENT_3D ( 'NONE', #627, #630, #775 ) ; +#845 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#846 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#847 = ORIENTED_EDGE ( 'NONE', *, *, #465, .T. ) ; +#848 = ADVANCED_FACE ( 'NONE', ( #190, #656, #636, #354, #169, #906 ), #748, .F. ) ; +#849 = VERTEX_POINT ( 'NONE', #108 ) ; +#850 = EDGE_CURVE ( 'NONE', #743, #418, #242, .T. ) ; +#851 = CIRCLE ( 'NONE', #81, 0.3749999999999999400 ) ; +#852 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#853 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#854 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#855 = ORIENTED_EDGE ( 'NONE', *, *, #898, .F. ) ; +#856 = VERTEX_POINT ( 'NONE', #38 ) ; +#857 = FACE_OUTER_BOUND ( 'NONE', #552, .T. ) ; +#858 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#859 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#860 = CIRCLE ( 'NONE', #462, 0.3749999999999999400 ) ; +#861 = AXIS2_PLACEMENT_3D ( 'NONE', #804, #302, #812 ) ; +#862 = ORIENTED_EDGE ( 'NONE', *, *, #372, .T. ) ; +#863 = CARTESIAN_POINT ( 'NONE', ( 2.375000000000000000, 7.271340369937410300E-016, 0.3150000000000000600 ) ) ; +#864 = ADVANCED_FACE ( 'NONE', ( #722 ), #104, .F. ) ; +#865 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#866 = MANIFOLD_SOLID_BREP ( 'Fillet1', #811 ) ; +#867 = EDGE_CURVE ( 'NONE', #506, #777, #309, .T. ) ; +#868 = DIRECTION ( 'NONE', ( 1.224646799147353200E-016, 1.000000000000000000, 0.0000000000000000000 ) ) ; +#869 = ORIENTED_EDGE ( 'NONE', *, *, #288, .T. ) ; +#870 = ADVANCED_FACE ( 'NONE', ( #588, #799, #219, #388, #632, #117 ), #576, .F. ) ; +#871 = EDGE_LOOP ( 'NONE', ( #428, #62 ) ) ; +#872 = LINE ( 'NONE', #413, #884 ) ; +#873 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.3150000000000002800 ) ) ; +#874 = ADVANCED_FACE ( 'NONE', ( #610 ), #800, .F. ) ; +#875 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#876 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#877 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#878 = EDGE_LOOP ( 'NONE', ( #692, #385, #855, #400 ) ) ; +#879 = ORIENTED_EDGE ( 'NONE', *, *, #372, .F. ) ; +#880 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 2.375000000000000000, -0.3750000000000001700 ) ) ; +#881 = CYLINDRICAL_SURFACE ( 'NONE', #511, 0.3749999999999999400 ) ; +#882 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#883 = CALENDAR_DATE ( 2023, 7, 2 ) ; +#884 = VECTOR ( 'NONE', #196, 39.37007874015748100 ) ; +#885 = EDGE_CURVE ( 'NONE', #31, #376, #342, .T. ) ; +#886 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#887 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#888 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#889 = CARTESIAN_POINT ( 'NONE', ( 1.220000000000000000, 0.0000000000000000000, -0.6250000000000000000 ) ) ; +#890 = AXIS2_PLACEMENT_3D ( 'NONE', #452, #822, #603 ) ; +#891 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#892 = ORIENTED_EDGE ( 'NONE', *, *, #212, .T. ) ; +#893 = VERTEX_POINT ( 'NONE', #230 ) ; +#894 = APPROVAL_PERSON_ORGANIZATION ( #83, #654, #647 ) ; +#895 = CARTESIAN_POINT ( 'NONE', ( 2.375000000000000000, 7.271340369937410300E-016, -0.3750000000000001700 ) ) ; +#896 = CIRCLE ( 'NONE', #742, 1.220000000000000000 ) ; +#897 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#898 = EDGE_CURVE ( 'NONE', #757, #209, #820, .T. ) ; +#899 = SECURITY_CLASSIFICATION ( '', '', #206 ) ; +#900 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#901 = EDGE_CURVE ( 'NONE', #614, #691, #713, .T. ) ; +#902 = ORIENTED_EDGE ( 'NONE', *, *, #178, .F. ) ; +#903 = CARTESIAN_POINT ( 'NONE', ( -0.3749999999999999400, 2.375000000000000000, -0.6250000000000003300 ) ) ; +#904 =( GEOMETRIC_REPRESENTATION_CONTEXT ( 3 ) GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT ( ( #641 ) ) GLOBAL_UNIT_ASSIGNED_CONTEXT ( ( #423, #63, #488 ) ) REPRESENTATION_CONTEXT ( 'NONE', 'WORKASPACE' ) ); +#905 = ORIENTED_EDGE ( 'NONE', *, *, #405, .T. ) ; +#906 = FACE_BOUND ( 'NONE', #240, .T. ) ; +#907 = ORGANIZATION ( 'UNSPECIFIED', 'UNSPECIFIED', '' ) ; +#908 = FACE_BOUND ( 'NONE', #644, .T. ) ; +#909 = DIRECTION ( 'NONE', ( -1.224646799147353200E-016, 1.000000000000000000, 0.0000000000000000000 ) ) ; +#910 = ORIENTED_EDGE ( 'NONE', *, *, #25, .F. ) ; +#911 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#912 = AXIS2_PLACEMENT_3D ( 'NONE', #232, #179, #390 ) ; +#913 = EDGE_CURVE ( 'NONE', #332, #757, #136, .T. ) ; +#914 = ORIENTED_EDGE ( 'NONE', *, *, #338, .T. ) ; +#915 = VECTOR ( 'NONE', #9, 39.37007874015748100 ) ; +#916 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#917 = CIRCLE ( 'NONE', #191, 1.220000000000000000 ) ; +#918 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +ENDSEC; +END-ISO-10303-21; diff --git a/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/91251a404-bolt.step b/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/91251a404-bolt.step new file mode 100644 index 000000000..f89c6edd7 --- /dev/null +++ b/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/91251a404-bolt.step @@ -0,0 +1,20112 @@ +ISO-10303-21; +HEADER; +FILE_DESCRIPTION (( 'STEP AP203' ), + '1' ); +FILE_NAME ('91251A404_Black-Oxide Alloy Steel Socket Head Screw.STEP', + '2024-06-16T18:36:41', + ( 'Administrator' ), + ( 'Managed by Terraform' ), + 'SwSTEP 2.0', + 'SolidWorks 2017', + '' ); +FILE_SCHEMA (( 'CONFIG_CONTROL_DESIGN' )); +ENDSEC; + +DATA; +#1 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.3715277777777691300 ) ) ; +#2 = AXIS2_PLACEMENT_3D ( 'NONE', #16841, #13687, #6331 ) ; +#3 = CARTESIAN_POINT ( 'NONE', ( -0.06919666627598536300, -0.4557905201830946300, 1.187613820323616000 ) ) ; +#4 = ORIENTED_EDGE ( 'NONE', *, *, #17965, .F. ) ; +#5 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323601700 ) ) ; +#6 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.4062499999999914000 ) ) ; +#7 = VERTEX_POINT ( 'NONE', #1155 ) ; +#8 = ADVANCED_FACE ( 'NONE', ( #5703 ), #5262, .T. ) ; +#9 = ORIENTED_EDGE ( 'NONE', *, *, #17638, .F. ) ; +#10 = FACE_OUTER_BOUND ( 'NONE', #14701, .T. ) ; +#11 = CIRCLE ( 'NONE', #3571, 0.4687499999999995600 ) ; +#12 = VERTEX_POINT ( 'NONE', #18779 ) ; +#13 = CARTESIAN_POINT ( 'NONE', ( -0.2541391512403111700, 0.1785041188452025600, 0.1763037900983533100 ) ) ; +#14 = ORIENTED_EDGE ( 'NONE', *, *, #3396, .T. ) ; +#15 = VECTOR ( 'NONE', #9670, 39.37007874015748900 ) ; +#16 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.09374999999998884200 ) ) ; +#17 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.06597222222223482500 ) ) ; +#18 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.06944444444445710400 ) ) ; +#19 = CARTESIAN_POINT ( 'NONE', ( -0.2746041645030236600, -0.07531994286363508100, 0.1040035189227973300 ) ) ; +#20 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#21 = EDGE_CURVE ( 'NONE', #5219, #4423, #14036, .T. ) ; +#22 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.5173611111111033900 ) ) ; +#23 = PLANE ( 'NONE', #8263 ) ; +#24 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.444444444444444000 ) ) ; +#25 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.215277777777775700 ) ) ; +#26 = PLANE ( 'NONE', #6018 ) ; +#27 = VERTEX_POINT ( 'NONE', #18918 ) ; +#28 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.07986111111110022500 ) ) ; +#29 = CARTESIAN_POINT ( 'NONE', ( -0.1589412568245201800, -0.4327480257511615600, 1.440511179676383200 ) ) ; +#30 = VERTEX_POINT ( 'NONE', #4106 ) ; +#31 = LINE ( 'NONE', #4122, #15231 ) ; +#32 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.8402777777777724600 ) ) ; +#33 = VERTEX_POINT ( 'NONE', #17497 ) ; +#34 = AXIS2_PLACEMENT_3D ( 'NONE', #110, #17561, #15994 ) ; +#35 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#36 = ADVANCED_FACE ( 'NONE', ( #17030 ), #1359, .T. ) ; +#37 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#38 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.8871527777777730200 ) ) ; +#39 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, 0.1597222222222354200 ) ) ; +#40 = ORIENTED_EDGE ( 'NONE', *, *, #218, .T. ) ; +#41 = EDGE_LOOP ( 'NONE', ( #9555, #9659, #12331, #10710 ) ) ; +#42 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.6527777777777712400 ) ) ; +#43 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#44 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.100694444444441800 ) ) ; +#45 = EDGE_CURVE ( 'NONE', #18786, #18514, #6194, .T. ) ; +#46 = ORIENTED_EDGE ( 'NONE', *, *, #13788, .F. ) ; +#47 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.322916666666665600 ) ) ; +#48 = CONICAL_SURFACE ( 'NONE', #6909, 0.4610132068742565100, 0.1745329251994294800 ) ; +#49 = ADVANCED_FACE ( 'NONE', ( #11967 ), #7210, .F. ) ; +#50 = ORIENTED_EDGE ( 'NONE', *, *, #6129, .F. ) ; +#51 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, 0.003472222222234050200 ) ) ; +#52 = CARTESIAN_POINT ( 'NONE', ( 0.3293237658787620000, -0.3335752085024152900, 1.484375000000000200 ) ) ; +#53 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.539930555555556000 ) ) ; +#54 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#55 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.7760416666666608600 ) ) ; +#56 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.256944444444442400 ) ) ; +#57 = CARTESIAN_POINT ( 'NONE', ( -0.3624522803384120900, -0.2848886122504218900, 1.440511179676396700 ) ) ; +#58 = CARTESIAN_POINT ( 'NONE', ( 0.3122385636735652800, 0.3496192812976258700, 1.484375000000000200 ) ) ; +#59 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#60 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.079861111111107800 ) ) ; +#61 = AXIS2_PLACEMENT_3D ( 'NONE', #7445, #5551, #12010 ) ; +#62 = CARTESIAN_POINT ( 'NONE', ( 0.2469420660606247700, -0.1742408655876037700, 0.1533337553397163800 ) ) ; +#63 = ORIENTED_EDGE ( 'NONE', *, *, #81, .T. ) ; +#64 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.4687499999999923400 ) ) ; +#65 = ORIENTED_EDGE ( 'NONE', *, *, #15785, .F. ) ; +#66 = LINE ( 'NONE', #5040, #9056 ) ; +#67 = VERTEX_POINT ( 'NONE', #14460 ) ; +#68 = CARTESIAN_POINT ( 'NONE', ( 0.4548654901190608600, 0.07503707624389872900, 1.440511179676401600 ) ) ; +#69 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #18201, #3120, #10460, #3187, #14890, #8919, #4653, #7559, #10861 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.9166666666666667400, 0.9204545454545454100, 0.9242424242424243100, 0.9280303030303030900, 0.9318181818181818800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#70 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.416666666666666100 ) ) ; +#71 = VERTEX_POINT ( 'NONE', #10164 ) ; +#72 = CARTESIAN_POINT ( 'NONE', ( -0.3121939859787784000, -0.02107982794689761100, 0.1812985267254997600 ) ) ; +#73 = CARTESIAN_POINT ( 'NONE', ( -0.2992201147819390500, 0.08646975015635376100, 0.1787717874710125200 ) ) ; +#74 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.1874999999999894500 ) ) ; +#75 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.083333333333330400 ) ) ; +#76 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, 0.07986111111112370600 ) ) ; +#77 = CARTESIAN_POINT ( 'NONE', ( 0.1333213170475791900, -0.2597694421004897400, 0.1239596418268905000 ) ) ; +#78 = EDGE_LOOP ( 'NONE', ( #7591, #2010, #3687, #9051 ) ) ; +#79 = EDGE_CURVE ( 'NONE', #6683, #16408, #13800, .T. ) ; +#80 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.312499999999998400 ) ) ; +#81 = EDGE_CURVE ( 'NONE', #13982, #554, #17239, .T. ) ; +#82 = ORIENTED_EDGE ( 'NONE', *, *, #17140, .F. ) ; +#83 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#84 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.04861111111109956600 ) ) ; +#85 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.482638888888889300 ) ) ; +#86 = EDGE_LOOP ( 'NONE', ( #3025, #6243, #3586, #9402 ) ) ; +#87 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.2013888888888789300 ) ) ; +#88 = CARTESIAN_POINT ( 'NONE', ( -0.1278868739221132900, 0.4509647912990477100, 1.484375000000000200 ) ) ; +#89 = FACE_OUTER_BOUND ( 'NONE', #6437, .T. ) ; +#90 = EDGE_LOOP ( 'NONE', ( #13395, #10179, #13914, #16984 ) ) ; +#91 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.6145833333333261500 ) ) ; +#92 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#93 = ORIENTED_EDGE ( 'NONE', *, *, #17270, .F. ) ; +#94 = CARTESIAN_POINT ( 'NONE', ( 0.1589412568245264500, -0.4327480257511592800, 1.591590229135180700 ) ) ; +#95 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.06944444444445682700 ) ) ; +#96 = PERSON_AND_ORGANIZATION_ROLE ( 'creator' ) ; +#97 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.6822916666666603000 ) ) ; +#98 = VERTEX_POINT ( 'NONE', #10091 ) ; +#99 = EDGE_CURVE ( 'NONE', #4095, #14959, #9876, .T. ) ; +#100 = CARTESIAN_POINT ( 'NONE', ( 0.1625098045696009900, -0.2435884378124269800, -1.541286830664022200 ) ) ; +#101 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, 0.02438709000970364100, 1.525850221280107700 ) ) ; +#102 = EDGE_CURVE ( 'NONE', #3250, #14714, #8484, .T. ) ; +#103 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, 0.1388888888889016300 ) ) ; +#104 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#105 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.177083333333331300 ) ) ; +#107 = EDGE_CURVE ( 'NONE', #17502, #14798, #1576, .T. ) ; +#106 = VECTOR ( 'NONE', #2380, 39.37007874015748900 ) ; +#108 = AXIS2_PLACEMENT_3D ( 'NONE', #11482, #4139, #18636 ) ; +#109 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.274305555555554000 ) ) ; +#110 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323618200 ) ) ; +#111 = AXIS2_PLACEMENT_3D ( 'NONE', #13836, #10735, #12150 ) ; +#112 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#113 = DIRECTION ( 'NONE', ( 0.1735239426960720200, -0.006567413361072674600, -0.9848077530122085800 ) ) ; +#114 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.4826388888888809600 ) ) ; +#115 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.6041666666666597500 ) ) ; +#116 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.7586805555555498100 ) ) ; +#117 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.09374999999998914800 ) ) ; +#118 = FACE_OUTER_BOUND ( 'NONE', #18639, .T. ) ; +#119 = VERTEX_POINT ( 'NONE', #5433 ) ; +#120 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#121 = DIRECTION ( 'NONE', ( 1.000000000000000000, -6.217248937900876600E-014, 0.0000000000000000000 ) ) ; +#122 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.9652777777777734600 ) ) ; +#123 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, 0.9687499999999998900 ) ) ; +#124 = CYLINDRICAL_SURFACE ( 'NONE', #17537, 0.3125000000000008300 ) ; +#125 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.4895833333333257100 ) ) ; +#126 = ADVANCED_FACE ( 'NONE', ( #9643 ), #17237, .F. ) ; +#127 = EDGE_CURVE ( 'NONE', #18157, #5335, #14246, .T. ) ; +#128 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.4149305555555472000 ) ) ; +#129 = AXIS2_PLACEMENT_3D ( 'NONE', #11773, #6030, #14791 ) ; +#130 = CARTESIAN_POINT ( 'NONE', ( -0.4190155160288329100, 0.2101251051804387300, 1.592116737595687900 ) ) ; +#131 = AXIS2_PLACEMENT_3D ( 'NONE', #9720, #11142, #15439 ) ; +#132 = VERTEX_POINT ( 'NONE', #12860 ) ; +#133 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.02777777777776606700 ) ) ; +#134 = FACE_BOUND ( 'NONE', #17524, .T. ) ; +#135 = CARTESIAN_POINT ( 'NONE', ( 0.4669405755743658000, 0.04111927036375174300, 1.143750000000000000 ) ) ; +#136 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.01041666666667863400 ) ) ; +#137 = CARTESIAN_POINT ( 'NONE', ( -0.1834002693415842100, -0.4313825491433722100, 1.143750000000000000 ) ) ; +#138 = VERTEX_POINT ( 'NONE', #5503 ) ; +#139 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.6319444444444376500 ) ) ; +#140 = DIRECTION ( 'NONE', ( 0.08743372756788550500, -0.1500301066140673200, -0.9848077530122091300 ) ) ; +#141 = CARTESIAN_POINT ( 'NONE', ( 0.4492873804855417300, -0.1336605598125403800, 1.143750000000000000 ) ) ; +#142 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.315972222222220800 ) ) ; +#143 = VECTOR ( 'NONE', #2347, 39.37007874015748100 ) ; +#144 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.593375490995827300 ) ) ; +#145 = CARTESIAN_POINT ( 'NONE', ( 0.3953002468276911000, -0.2372148641431489300, 1.592921120922338200 ) ) ; +#146 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.399305555555555100 ) ) ; +#147 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.1874999999999900100 ) ) ; +#148 = CARTESIAN_POINT ( 'NONE', ( 0.01456803378535447700, 0.3018558758341785000, 0.1532795344890126600 ) ) ; +#149 = CIRCLE ( 'NONE', #7027, 0.4610132068742565100 ) ; +#150 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.5173611111111032800 ) ) ; +#151 = EDGE_CURVE ( 'NONE', #11193, #8730, #9274, .T. ) ; +#152 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#153 = CONICAL_SURFACE ( 'NONE', #4441, 0.4610132068742565100, 0.1745329251994302600 ) ; +#154 = ORIENTED_EDGE ( 'NONE', *, *, #9153, .F. ) ; +#155 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#156 = DIRECTION ( 'NONE', ( 0.7025573672080259700, -0.7116271114718203400, 0.0000000000000000000 ) ) ; +#157 = CIRCLE ( 'NONE', #5342, 0.4687499999999995600 ) ; +#158 = APPLICATION_CONTEXT ( 'configuration controlled 3d designs of mechanical parts and assemblies' ) ; +#159 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.7621527777777721300 ) ) ; +#160 = CARTESIAN_POINT ( 'NONE', ( -0.4375000000000001100, -5.463695987328526400E-016, 0.9375000000000000000 ) ) ; +#161 = CARTESIAN_POINT ( 'NONE', ( 0.3111413124076910000, -0.02140755311317447600, -1.522192020925643700 ) ) ; +#162 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#163 = DIRECTION ( 'NONE', ( -0.9949379478511789500, -0.1004911932742606100, 0.0000000000000000000 ) ) ; +#164 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.9166666666666624100 ) ) ; +#165 = AXIS2_PLACEMENT_3D ( 'NONE', #9062, #13369, #16506 ) ; +#166 = ORIENTED_EDGE ( 'NONE', *, *, #6967, .T. ) ; +#167 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.336805555555554500 ) ) ; +#168 = CARTESIAN_POINT ( 'NONE', ( 0.2849174203000312500, 0.3722181606565398400, 1.143750000000000000 ) ) ; +#169 = CIRCLE ( 'NONE', #12915, 0.4610132068742565100 ) ; +#170 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#171 = VECTOR ( 'NONE', #16037, 39.37007874015748100 ) ; +#172 = CIRCLE ( 'NONE', #3566, 0.4687475818742551400 ) ; +#173 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#174 = ORIENTED_EDGE ( 'NONE', *, *, #5576, .F. ) ; +#175 = CARTESIAN_POINT ( 'NONE', ( -0.4289947181748892100, 0.1889182211382662800, 1.484375000000000200 ) ) ; +#176 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.7274305555555494700 ) ) ; +#177 = FACE_OUTER_BOUND ( 'NONE', #11010, .T. ) ; +#178 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.07638888888887766800 ) ) ; +#179 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#180 = ORIENTED_EDGE ( 'NONE', *, *, #18626, .F. ) ; +#181 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#182 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.145833333333330600 ) ) ; +#183 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.069444444444440900 ) ) ; +#184 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#185 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#186 = ORIENTED_EDGE ( 'NONE', *, *, #10568, .T. ) ; +#187 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.5381944444444372000 ) ) ; +#188 = ORIENTED_EDGE ( 'NONE', *, *, #9722, .T. ) ; +#189 = CARTESIAN_POINT ( 'NONE', ( 0.3070850166377935800, -0.3438487595863217700, 1.593467001493433100 ) ) ; +#190 = EDGE_CURVE ( 'NONE', #12950, #17877, #12863, .T. ) ; +#191 = VERTEX_POINT ( 'NONE', #10227 ) ; +#192 = ORIENTED_EDGE ( 'NONE', *, *, #9357, .F. ) ; +#193 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.2586805555555458700 ) ) ; +#194 = LINE ( 'NONE', #4668, #8482 ) ; +#195 = LINE ( 'NONE', #15091, #3647 ) ; +#196 = ORIENTED_EDGE ( 'NONE', *, *, #10479, .F. ) ; +#197 = AXIS2_PLACEMENT_3D ( 'NONE', #931, #11171, #11043 ) ; +#198 = LINE ( 'NONE', #16668, #1580 ) ; +#199 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.2326388888888790700 ) ) ; +#200 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.1493055555555447800 ) ) ; +#201 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.01041666666665486600 ) ) ; +#202 = CARTESIAN_POINT ( 'NONE', ( 0.2188318054435814100, -0.1716932959261818500, -1.555402463361118100 ) ) ; +#203 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.6128472222222153300 ) ) ; +#204 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#205 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.239583333333331300 ) ) ; +#206 = VERTEX_POINT ( 'NONE', #52 ) ; +#207 = ORIENTED_EDGE ( 'NONE', *, *, #14279, .F. ) ; +#208 = CARTESIAN_POINT ( 'NONE', ( -0.1834002693415873500, 0.4313825491433709300, 1.143750000000000000 ) ) ; +#209 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.135416666666663900 ) ) ; +#210 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.302083333333331900 ) ) ; +#211 = ORIENTED_EDGE ( 'NONE', *, *, #14148, .T. ) ; +#212 = ORIENTED_EDGE ( 'NONE', *, *, #3364, .F. ) ; +#213 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.2326388888888792900 ) ) ; +#214 = VECTOR ( 'NONE', #3481, 39.37007874015748900 ) ; +#215 = VECTOR ( 'NONE', #9316, 39.37007874015748900 ) ; +#216 = EDGE_LOOP ( 'NONE', ( #10553, #17493, #11137, #5317 ) ) ; +#217 = ORIENTED_EDGE ( 'NONE', *, *, #4992, .F. ) ; +#218 = EDGE_CURVE ( 'NONE', #6211, #5807, #7566, .T. ) ; +#219 = CARTESIAN_POINT ( 'NONE', ( 0.2408199038677985600, 0.1765236421251828200, 0.1433364597028637100 ) ) ; +#220 = LINE ( 'NONE', #7486, #3218 ) ; +#221 = ORIENTED_EDGE ( 'NONE', *, *, #3325, .F. ) ; +#222 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.5902777777777704600 ) ) ; +#223 = EDGE_CURVE ( 'NONE', #13173, #5258, #10337, .T. ) ; +#224 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.1805555555555451400 ) ) ; +#225 = EDGE_CURVE ( 'NONE', #15003, #9537, #14936, .T. ) ; +#226 = ADVANCED_FACE ( 'NONE', ( #5021 ), #16187, .F. ) ; +#227 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#228 = AXIS2_PLACEMENT_3D ( 'NONE', #8392, #2600, #17278 ) ; +#229 = CARTESIAN_POINT ( 'NONE', ( 0.2321251145655920700, -0.3983103163368943400, 1.592561465728329600 ) ) ; +#230 = ORIENTED_EDGE ( 'NONE', *, *, #15820, .F. ) ; +#231 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.7899305555555501400 ) ) ; +#232 = CARTESIAN_POINT ( 'NONE', ( -1.757094322390995400E-017, 2.928061957034548200E-017, 3.802149639073308100 ) ) ; +#233 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#234 = ORIENTED_EDGE ( 'NONE', *, *, #5360, .F. ) ; +#235 = LINE ( 'NONE', #621, #19116 ) ; +#236 = FACE_OUTER_BOUND ( 'NONE', #5558, .T. ) ; +#237 = DIRECTION ( 'NONE', ( -0.9297764858882510100, -0.3681245526846787000, 0.0000000000000000000 ) ) ; +#238 = ORIENTED_EDGE ( 'NONE', *, *, #10399, .T. ) ; +#239 = VERTEX_POINT ( 'NONE', #17677 ) ; +#240 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.8749999999999954500 ) ) ; +#241 = LINE ( 'NONE', #6007, #3912 ) ; +#242 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.090277777777774800 ) ) ; +#243 = ADVANCED_FACE ( 'NONE', ( #5933 ), #17562, .F. ) ; +#244 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#245 = CARTESIAN_POINT ( 'NONE', ( 0.2321251145655920700, -0.3983103163368943400, 1.484375000000000200 ) ) ; +#246 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.557291666666667200 ) ) ; +#247 = CARTESIAN_POINT ( 'NONE', ( -0.1671865093978527100, -0.1921499583890883000, 1.252549403184165100 ) ) ; +#248 = EDGE_CURVE ( 'NONE', #17274, #12567, #5474, .T. ) ; +#249 = ORIENTED_EDGE ( 'NONE', *, *, #9704, .T. ) ; +#250 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.8107638888888835100 ) ) ; +#251 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.593467001493433100 ) ) ; +#252 = AXIS2_PLACEMENT_3D ( 'NONE', #8494, #17380, #10038 ) ; +#253 = DIRECTION ( 'NONE', ( -0.1004911932742605800, 0.9949379478511788400, -0.0000000000000000000 ) ) ; +#254 = PLANE ( 'NONE', #2204 ) ; +#255 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.9374999999999954500 ) ) ; +#256 = DIRECTION ( 'NONE', ( 0.8306683619109764800, 0.5567675210715282700, -0.0000000000000000000 ) ) ; +#257 = EDGE_LOOP ( 'NONE', ( #484, #2697, #2627, #9470 ) ) ; +#258 = ORIENTED_EDGE ( 'NONE', *, *, #9131, .F. ) ; +#259 = LINE ( 'NONE', #15951, #16851 ) ; +#260 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.2743055555555463100 ) ) ; +#261 = ORIENTED_EDGE ( 'NONE', *, *, #8930, .T. ) ; +#262 = ORIENTED_EDGE ( 'NONE', *, *, #15291, .T. ) ; +#263 = APPROVAL ( #10463, 'UNSPECIFIED' ) ; +#264 = DIRECTION ( 'NONE', ( -0.3326968243781375200, -0.9430338398216168100, 0.0000000000000000000 ) ) ; +#265 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.2968749999999905100 ) ) ; +#266 = CARTESIAN_POINT ( 'NONE', ( 0.4669429843783108900, -0.04111948248550997800, 1.143750000000000000 ) ) ; +#267 = ORIENTED_EDGE ( 'NONE', *, *, #11889, .F. ) ; +#268 = ORIENTED_EDGE ( 'NONE', *, *, #16453, .F. ) ; +#269 = DIRECTION ( 'NONE', ( -1.000000000000000000, 3.552713678800501600E-014, 0.0000000000000000000 ) ) ; +#270 = ORIENTED_EDGE ( 'NONE', *, *, #8002, .T. ) ; +#271 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.04861111111109956600 ) ) ; +#272 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.1562500000000131300 ) ) ; +#273 = CARTESIAN_POINT ( 'NONE', ( -0.03281304097403371600, -0.2872726258098327600, 0.1173951810684269000 ) ) ; +#274 = VECTOR ( 'NONE', #17260, 39.37007874015748900 ) ; +#275 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.6614583333333267100 ) ) ; +#276 = ORIENTED_EDGE ( 'NONE', *, *, #6845, .T. ) ; +#277 = CARTESIAN_POINT ( 'NONE', ( 0.2659575542964096000, -0.3859962976670525700, 1.484375000000000200 ) ) ; +#278 = EDGE_CURVE ( 'NONE', #4834, #14130, #10559, .T. ) ; +#279 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.2083333333333232400 ) ) ; +#280 = CARTESIAN_POINT ( 'NONE', ( -2.241780398015085000E-017, -2.575916910361625600E-017, 3.802149639073319600 ) ) ; +#281 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.222222222222219900 ) ) ; +#282 = AXIS2_PLACEMENT_3D ( 'NONE', #16859, #2292, #8283 ) ; +#283 = DIRECTION ( 'NONE', ( -0.8574597016599372300, 0.5145511247964108500, 0.0000000000000000000 ) ) ; +#284 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.409722222222221900 ) ) ; +#285 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.1249999999999895100 ) ) ; +#286 = CARTESIAN_POINT ( 'NONE', ( 0.3070850166377935800, -0.3438487595863217700, 1.484375000000000200 ) ) ; +#287 = ORIENTED_EDGE ( 'NONE', *, *, #15765, .T. ) ; +#288 = ORIENTED_EDGE ( 'NONE', *, *, #11175, .F. ) ; +#289 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.6423611111111042800 ) ) ; +#290 = PLANE ( 'NONE', #450 ) ; +#291 = EDGE_LOOP ( 'NONE', ( #18413, #14807, #8251, #10362 ) ) ; +#292 = CIRCLE ( 'NONE', #108, 0.4610132068742565100 ) ; +#293 = ORIENTED_EDGE ( 'NONE', *, *, #8646, .F. ) ; +#294 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#295 = VERTEX_POINT ( 'NONE', #5870 ) ; +#296 = CARTESIAN_POINT ( 'NONE', ( -0.1843364152068907600, 0.2059749365136105400, 0.08286399339095737400 ) ) ; +#297 = CARTESIAN_POINT ( 'NONE', ( 0.06234755045678566600, -0.2780553737161538000, -1.549157624472572700 ) ) ; +#298 = CARTESIAN_POINT ( 'NONE', ( -0.3685350091390578500, -0.2896696558821342800, 1.484375000000000200 ) ) ; +#299 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#300 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.7499999999999944500 ) ) ; +#301 = EDGE_CURVE ( 'NONE', #14256, #12990, #1123, .T. ) ; +#302 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.003472222222218800 ) ) ; +#303 = VERTEX_POINT ( 'NONE', #5752 ) ; +#304 = ORIENTED_EDGE ( 'NONE', *, *, #1845, .F. ) ; +#305 = DIRECTION ( 'NONE', ( -0.4596954355469866600, 0.8880766332571002900, 0.0000000000000000000 ) ) ; +#306 = VECTOR ( 'NONE', #10862, 39.37007874015748100 ) ; +#307 = CARTESIAN_POINT ( 'NONE', ( 2.246643514571254700E-018, 2.551234510058984200E-017, 3.802149639073280500 ) ) ; +#308 = CARTESIAN_POINT ( 'NONE', ( -0.1353884627379184400, -0.2105085691879055600, 1.249992272704497900 ) ) ; +#309 = ORIENTED_EDGE ( 'NONE', *, *, #16272, .F. ) ; +#310 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #10718, #18124, #15592, #489, #6328, #3439, #11179, #2349, #11241 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.8863636363636363500, 0.8901515151515151400, 0.8939393939393939200, 0.8977272727272727100, 0.9015151515151514900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#311 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.8906249999999952300 ) ) ; +#312 = EDGE_CURVE ( 'NONE', #11817, #4271, #13335, .T. ) ; +#313 = DIRECTION ( 'NONE', ( 1.000000000000000000, 2.042810365310288000E-014, 0.0000000000000000000 ) ) ; +#314 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.5694444444444373100 ) ) ; +#315 = EDGE_LOOP ( 'NONE', ( #3384, #3752, #10086, #18470 ) ) ; +#316 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#317 = CARTESIAN_POINT ( 'NONE', ( 0.2000236110100765700, 0.2323050234781664200, 0.1641112471368180200 ) ) ; +#318 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.7916666666666608600 ) ) ; +#319 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#320 = FACE_OUTER_BOUND ( 'NONE', #14981, .T. ) ; +#321 = ORIENTED_EDGE ( 'NONE', *, *, #14191, .F. ) ; +#322 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.3229166666666576400 ) ) ; +#323 = ADVANCED_FACE ( 'NONE', ( #2048 ), #1406, .F. ) ; +#324 = VERTEX_POINT ( 'NONE', #11632 ) ; +#325 = CARTESIAN_POINT ( 'NONE', ( 0.3070850166377861500, 0.3438487595863285500, 1.143750000000000000 ) ) ; +#326 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.2482638888888792100 ) ) ; +#327 = EDGE_LOOP ( 'NONE', ( #4136, #6417, #17231, #11363, #8021, #4181 ) ) ; +#328 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#329 = EDGE_LOOP ( 'NONE', ( #12037, #2317, #16662, #2396, #12143, #15476 ) ) ; +#330 = CARTESIAN_POINT ( 'NONE', ( 0.3070850166377861500, 0.3438487595863285500, 1.484375000000000200 ) ) ; +#331 = CYLINDRICAL_SURFACE ( 'NONE', #5143, 0.4610132068742565100 ) ; +#332 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.1493055555555688200 ) ) ; +#333 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#334 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.1215277777777907100 ) ) ; +#335 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#336 = ADVANCED_FACE ( 'NONE', ( #16310 ), #17622, .F. ) ; +#337 = EDGE_CURVE ( 'NONE', #16094, #15731, #12407, .T. ) ; +#338 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.6093749999999931200 ) ) ; +#339 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#340 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#341 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#342 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.069444444444440900 ) ) ; +#343 = EDGE_CURVE ( 'NONE', #2569, #7908, #8960, .T. ) ; +#344 = AXIS2_PLACEMENT_3D ( 'NONE', #14886, #11933, #16442 ) ; +#345 = CARTESIAN_POINT ( 'NONE', ( -0.1834002693415841500, -0.4313825491433722100, 1.484375000000000200 ) ) ; +#346 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.218749999999998200 ) ) ; +#347 = AXIS2_PLACEMENT_3D ( 'NONE', #9326, #1984, #16532 ) ; +#348 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, 0.1423611111111236500 ) ) ; +#349 = VECTOR ( 'NONE', #7683, 39.37007874015748100 ) ; +#350 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#351 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.4999999999999919500 ) ) ; +#352 = CARTESIAN_POINT ( 'NONE', ( -0.01152533017185641800, 0.4608691177296606000, 1.440511179676401600 ) ) ; +#353 = VECTOR ( 'NONE', #18732, 39.37007874015748900 ) ; +#354 = CARTESIAN_POINT ( 'NONE', ( 1.447059404449155500E-017, 6.674558278121623600E-017, 3.802149639073266300 ) ) ; +#355 = EDGE_CURVE ( 'NONE', #5469, #5493, #15838, .T. ) ; +#356 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#357 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#358 = VECTOR ( 'NONE', #10058, 39.37007874015748900 ) ; +#359 = ORIENTED_EDGE ( 'NONE', *, *, #1347, .F. ) ; +#360 = CARTESIAN_POINT ( 'NONE', ( -0.3238882248697046400, 0.3280694967582902200, 1.593467001493433100 ) ) ; +#361 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.8333333333333284900 ) ) ; +#362 = EDGE_CURVE ( 'NONE', #18542, #16176, #8033, .T. ) ; +#363 = FACE_OUTER_BOUND ( 'NONE', #8441, .T. ) ; +#364 = AXIS2_PLACEMENT_3D ( 'NONE', #11284, #2447, #5827 ) ; +#365 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.107638888888886200 ) ) ; +#366 = VERTEX_POINT ( 'NONE', #4609 ) ; +#367 = CARTESIAN_POINT ( 'NONE', ( 0.3238882248696998100, 0.3280694967582948900, 1.143750000000000000 ) ) ; +#368 = AXIS2_PLACEMENT_3D ( 'NONE', #3952, #8082, #5161 ) ; +#369 = VECTOR ( 'NONE', #15531, 39.37007874015748900 ) ; +#370 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#371 = CARTESIAN_POINT ( 'NONE', ( 0.3624522803384100900, 0.2848886122504243900, 1.484375000000000200 ) ) ; +#372 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.310763888888887700 ) ) ; +#373 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#374 = DIRECTION ( 'NONE', ( 0.01745011258365024600, -0.1727691615360287300, 0.9848077530122088000 ) ) ; +#375 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676380300 ) ) ; +#376 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.6354166666666600800 ) ) ; +#377 = CARTESIAN_POINT ( 'NONE', ( 0.1616086329535845700, -0.4400104683469168700, 1.143750000000000000 ) ) ; +#378 = CARTESIAN_POINT ( 'NONE', ( -0.1145672769004458800, 0.2538693350974439200, 0.08821319446768780000 ) ) ; +#379 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.8541666666666614100 ) ) ; +#380 = CARTESIAN_POINT ( 'NONE', ( 0.2321251145655920700, -0.3983103163368943400, 1.187613820323599100 ) ) ; +#381 = FACE_OUTER_BOUND ( 'NONE', #14290, .T. ) ; +#382 = ORIENTED_EDGE ( 'NONE', *, *, #6017, .T. ) ; +#383 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.1631944444444342100 ) ) ; +#384 = VECTOR ( 'NONE', #2199, 39.37007874015748100 ) ; +#385 = ORIENTED_EDGE ( 'NONE', *, *, #732, .T. ) ; +#386 = EDGE_CURVE ( 'NONE', #8850, #6951, #11942, .T. ) ; +#387 = VECTOR ( 'NONE', #13035, 39.37007874015748100 ) ; +#388 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.2690972222222127200 ) ) ; +#389 = AXIS2_PLACEMENT_3D ( 'NONE', #2120, #6602, #16924 ) ; +#390 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#391 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.8923611111111062800 ) ) ; +#392 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.1944444444444581000 ) ) ; +#393 = ORIENTED_EDGE ( 'NONE', *, *, #10145, .F. ) ; +#394 = DIRECTION ( 'NONE', ( -0.1156686028357419200, 0.1295162689590451700, 0.9848077530122088000 ) ) ; +#395 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, 0.1354166666666796200 ) ) ; +#396 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.5486111111111036100 ) ) ; +#397 = CONICAL_SURFACE ( 'NONE', #5857, 0.4687475818742553600, 0.1745329251994305300 ) ; +#398 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.5920138888888818500 ) ) ; +#399 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.9340277777777734600 ) ) ; +#400 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.3993055555555468600 ) ) ; +#401 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.190972222222219900 ) ) ; +#402 = LINE ( 'NONE', #1997, #7084 ) ; +#403 = CONICAL_SURFACE ( 'NONE', #538, 0.4687475818742552500, 0.1745329251994289800 ) ; +#404 = CARTESIAN_POINT ( 'NONE', ( 2.110222581992091100E-017, -2.684751000830857200E-017, -1.174024639073252700 ) ) ; +#405 = VERTEX_POINT ( 'NONE', #1842 ) ; +#406 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.388888888888888400 ) ) ; +#407 = ORIENTED_EDGE ( 'NONE', *, *, #16128, .T. ) ; +#408 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.1111111111111235500 ) ) ; +#409 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.4513888888888804600 ) ) ; +#410 = EDGE_CURVE ( 'NONE', #9694, #8074, #13088, .T. ) ; +#411 = ADVANCED_FACE ( 'NONE', ( #7110 ), #1775, .F. ) ; +#412 = ORIENTED_EDGE ( 'NONE', *, *, #11383, .T. ) ; +#413 = CONICAL_SURFACE ( 'NONE', #11201, 0.4610132068742565100, 0.1745329251994250700 ) ; +#414 = FACE_BOUND ( 'NONE', #4345, .T. ) ; +#415 = VECTOR ( 'NONE', #11038, 39.37007874015748900 ) ; +#416 = ORIENTED_EDGE ( 'NONE', *, *, #2117, .T. ) ; +#417 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#418 = CONICAL_SURFACE ( 'NONE', #16383, 0.4687475818742577500, 0.1745329251994279500 ) ; +#420 = EDGE_CURVE ( 'NONE', #5928, #132, #4108, .T. ) ; +#419 = CIRCLE ( 'NONE', #17078, 0.4610132068742565100 ) ; +#421 = ORIENTED_EDGE ( 'NONE', *, *, #3936, .F. ) ; +#422 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#423 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.9201388888888846200 ) ) ; +#424 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.149305555555553400 ) ) ; +#425 = ADVANCED_FACE ( 'NONE', ( #4563 ), #4780, .T. ) ; +#426 = EDGE_LOOP ( 'NONE', ( #2128, #9236, #5346, #4848, #18161 ) ) ; +#427 = CARTESIAN_POINT ( 'NONE', ( 0.4019342351530952900, -0.2411958397483170700, 1.484375000000000200 ) ) ; +#428 = ORIENTED_EDGE ( 'NONE', *, *, #5136, .F. ) ; +#429 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.265624999999998200 ) ) ; +#430 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#431 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#432 = EDGE_LOOP ( 'NONE', ( #7390, #18897, #17602, #839 ) ) ; +#433 = VERTEX_POINT ( 'NONE', #9184 ) ; +#434 = CYLINDRICAL_SURFACE ( 'NONE', #14417, 0.4610132068742565100 ) ; +#435 = DIRECTION ( 'NONE', ( -0.3912539079287132300, -0.9202827715058615700, 0.0000000000000000000 ) ) ; +#436 = VECTOR ( 'NONE', #18159, 39.37007874015748100 ) ; +#437 = VERTEX_POINT ( 'NONE', #17881 ) ; +#438 = CARTESIAN_POINT ( 'NONE', ( 0.3238882248697069200, -0.3280694967582878400, 1.440511179676400100 ) ) ; +#439 = ORIENTED_EDGE ( 'NONE', *, *, #1255, .T. ) ; +#440 = CARTESIAN_POINT ( 'NONE', ( 0.1703033727156345600, 0.2547738014362430100, 0.1649961278163574200 ) ) ; +#441 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.6423611111111042800 ) ) ; +#442 = CARTESIAN_POINT ( 'NONE', ( 0.1803732187963073800, -0.4242625117230433600, 1.484375000000000200 ) ) ; +#443 = CONICAL_SURFACE ( 'NONE', #14881, 0.4687475818742549700, 0.1745329251994250700 ) ; +#444 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.2083333333333235200 ) ) ; +#445 = EDGE_CURVE ( 'NONE', #13180, #4121, #2264, .T. ) ; +#446 = CARTESIAN_POINT ( 'NONE', ( 0.4684122207840599700, -0.01772813958390967400, 1.484375000000000200 ) ) ; +#447 = EDGE_LOOP ( 'NONE', ( #9633, #16567, #18192, #15485 ) ) ; +#448 = EDGE_CURVE ( 'NONE', #7132, #7343, #1334, .T. ) ; +#449 = ORIENTED_EDGE ( 'NONE', *, *, #17638, .T. ) ; +#450 = AXIS2_PLACEMENT_3D ( 'NONE', #4594, #17862, #13489 ) ; +#451 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.1927083333333230500 ) ) ; +#452 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#453 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#454 = ORIENTED_EDGE ( 'NONE', *, *, #958, .F. ) ; +#455 = CONICAL_SURFACE ( 'NONE', #18289, 0.4610132068742565100, 0.1745329251994265100 ) ; +#456 = VECTOR ( 'NONE', #3457, 39.37007874015748900 ) ; +#457 = ORIENTED_EDGE ( 'NONE', *, *, #10081, .F. ) ; +#458 = PLANE ( 'NONE', #12440 ) ; +#459 = ORIENTED_EDGE ( 'NONE', *, *, #2836, .T. ) ; +#460 = CIRCLE ( 'NONE', #9591, 0.4687499999999995000 ) ; +#461 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.1875000000000135200 ) ) ; +#462 = CARTESIAN_POINT ( 'NONE', ( -0.3953002468276895500, 0.2372148641431517400, 1.592921120922338200 ) ) ; +#463 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.1111111111111240900 ) ) ; +#464 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.587900241027141200 ) ) ; +#465 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.4878472222222143300 ) ) ; +#466 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.9374999999999956700 ) ) ; +#467 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.1979166666666563900 ) ) ; +#468 = DIRECTION ( 'NONE', ( 0.7543368200092318600, -0.6564875946873327500, 0.0000000000000000000 ) ) ; +#469 = CARTESIAN_POINT ( 'NONE', ( 0.2870000851537573000, -6.849717198154601200E-015, 0.1119446049230254100 ) ) ; +#470 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.086805555555552000 ) ) ; +#471 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323599700 ) ) ; +#472 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.152777777777775500 ) ) ; +#473 = ORIENTED_EDGE ( 'NONE', *, *, #14219, .F. ) ; +#474 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.02083333333332202500 ) ) ; +#475 = EDGE_CURVE ( 'NONE', #11143, #15563, #2494, .T. ) ; +#476 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#477 = VERTEX_POINT ( 'NONE', #18727 ) ; +#478 = ORIENTED_EDGE ( 'NONE', *, *, #15366, .T. ) ; +#479 = LINE ( 'NONE', #18538, #12450 ) ; +#480 = CIRCLE ( 'NONE', #15416, 0.4687475818742578600 ) ; +#481 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.4548611111111029400 ) ) ; +#482 = EDGE_CURVE ( 'NONE', #2964, #15497, #17290, .T. ) ; +#483 = VERTEX_POINT ( 'NONE', #18274 ) ; +#484 = ORIENTED_EDGE ( 'NONE', *, *, #11948, .F. ) ; +#485 = LINE ( 'NONE', #2258, #15 ) ; +#486 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 0.09735266674190143400, 1.535830116458029700 ) ) ; +#487 = EDGE_CURVE ( 'NONE', #8918, #10358, #12635, .T. ) ; +#488 = AXIS2_PLACEMENT_3D ( 'NONE', #7266, #4297, #14602 ) ; +#489 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -1.392361111111110300 ) ) ; +#490 = DIRECTION ( 'NONE', ( -0.2851439985633931200, 0.9584846895403597000, 0.0000000000000000000 ) ) ; +#491 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#492 = VERTEX_POINT ( 'NONE', #4787 ) ; +#493 = ORIENTED_EDGE ( 'NONE', *, *, #17146, .F. ) ; +#494 = CARTESIAN_POINT ( 'NONE', ( -0.04710500384696481000, 0.4663747571701739600, 1.143750000000000000 ) ) ; +#495 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.5659722222222151000 ) ) ; +#496 = ORIENTED_EDGE ( 'NONE', *, *, #12791, .T. ) ; +#497 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.013888888888885300 ) ) ; +#498 = VECTOR ( 'NONE', #2390, 39.37007874015748900 ) ; +#499 = EDGE_LOOP ( 'NONE', ( #12728, #2998, #17969, #11325 ) ) ; +#500 = CARTESIAN_POINT ( 'NONE', ( -0.4606833792705947700, -0.01743562377178980600, 1.440511179676384800 ) ) ; +#501 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.328124999999998700 ) ) ; +#502 = CARTESIAN_POINT ( 'NONE', ( -0.4581073617749774600, -0.09931871720662449600, 1.484375000000000200 ) ) ; +#503 = EDGE_CURVE ( 'NONE', #10773, #6951, #195, .T. ) ; +#504 = CARTESIAN_POINT ( 'NONE', ( 0.4019321617077162800, 0.2411945954990070700, 1.143750000000000000 ) ) ; +#505 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#506 = AXIS2_PLACEMENT_3D ( 'NONE', #17438, #19049, #14730 ) ; +#507 = CARTESIAN_POINT ( 'NONE', ( -0.04096905157690256700, 0.2650216416384440500, 1.535768732448054900 ) ) ; +#508 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.8437499999999945600 ) ) ; +#509 = ORIENTED_EDGE ( 'NONE', *, *, #17218, .F. ) ; +#510 = ORIENTED_EDGE ( 'NONE', *, *, #8204, .T. ) ; +#511 = ORIENTED_EDGE ( 'NONE', *, *, #18610, .F. ) ; +#512 = ADVANCED_FACE ( 'NONE', ( #17706 ), #2033, .F. ) ; +#513 = FACE_OUTER_BOUND ( 'NONE', #14511, .T. ) ; +#514 = VERTEX_POINT ( 'NONE', #7762 ) ; +#515 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.001736111111099537400 ) ) ; +#516 = CARTESIAN_POINT ( 'NONE', ( -0.3038748433919888900, 0.06843065780174555100, 0.1792153418691395100 ) ) ; +#517 = CARTESIAN_POINT ( 'NONE', ( 0.2836147216546550100, 0.04764204146320349200, 0.1131309473517707500 ) ) ; +#518 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.2048611111111247100 ) ) ; +#519 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#520 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#521 = DIRECTION ( 'NONE', ( -0.9772957051199544500, 0.2118799300407920000, 0.0000000000000000000 ) ) ; +#522 = ORIENTED_EDGE ( 'NONE', *, *, #1823, .T. ) ; +#523 = ADVANCED_FACE ( 'NONE', ( #17930 ), #14021, .T. ) ; +#524 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.2760416666666570300 ) ) ; +#525 = EDGE_CURVE ( 'NONE', #1846, #17529, #11028, .T. ) ; +#526 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #18910, #4160, #2740, #16121, #7202, #4096, #7060, #11505, #8542 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.8712121212121212200, 0.8750000000000000000, 0.8787878787878787800, 0.8825757575757575700, 0.8863636363636363500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#527 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.003472222222218100 ) ) ; +#528 = VERTEX_POINT ( 'NONE', #12332 ) ; +#529 = CARTESIAN_POINT ( 'NONE', ( 0.2295644402768617600, -0.1561360432046004500, 1.541367467408309800 ) ) ; +#530 = LINE ( 'NONE', #7041, #8582 ) ; +#531 = ADVANCED_FACE ( 'NONE', ( #5679 ), #10789, .F. ) ; +#532 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.062499999999996900 ) ) ; +#533 = ORIENTED_EDGE ( 'NONE', *, *, #15739, .T. ) ; +#534 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.04166666666665552000 ) ) ; +#535 = EDGE_LOOP ( 'NONE', ( #17213, #1147, #7434, #6940, #18007, #5068 ) ) ; +#536 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#537 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.2847222222222123800 ) ) ; +#538 = AXIS2_PLACEMENT_3D ( 'NONE', #9262, #6416, #431 ) ; +#539 = CARTESIAN_POINT ( 'NONE', ( -0.3070850166377885900, -0.3438487595863262100, 1.440511179676384800 ) ) ; +#540 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#541 = ORIENTED_EDGE ( 'NONE', *, *, #11745, .T. ) ; +#542 = ORIENTED_EDGE ( 'NONE', *, *, #9564, .F. ) ; +#543 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.6701388888888821800 ) ) ; +#544 = PLANE ( 'NONE', #8851 ) ; +#545 = DIRECTION ( 'NONE', ( 0.1004911932742537700, -0.9949379478511796200, -0.0000000000000000000 ) ) ; +#546 = VERTEX_POINT ( 'NONE', #13821 ) ; +#547 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#548 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#549 = CARTESIAN_POINT ( 'NONE', ( 0.04096905157690254600, 0.2650216416384439900, 1.259918511167947400 ) ) ; +#550 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.6423611111111047200 ) ) ; +#551 = VECTOR ( 'NONE', #11641, 39.37007874015748900 ) ; +#552 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.7673611111111056100 ) ) ; +#553 = VERTEX_POINT ( 'NONE', #9179 ) ; +#554 = VERTEX_POINT ( 'NONE', #12134 ) ; +#555 = CARTESIAN_POINT ( 'NONE', ( 0.3829490853735701400, -0.2566771803726077300, 1.143750000000000000 ) ) ; +#556 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.387152777777777000 ) ) ; +#557 = CARTESIAN_POINT ( 'NONE', ( 0.07792387699877020800, -0.2999119628511520100, -1.523829458503752200 ) ) ; +#558 = EDGE_CURVE ( 'NONE', #7008, #4384, #7086, .T. ) ; +#559 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#560 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#561 = DIRECTION ( 'NONE', ( 0.08772156263576842700, -0.9961450333403962800, -0.0000000000000000000 ) ) ; +#562 = CARTESIAN_POINT ( 'NONE', ( 0.1039342647883889800, 0.2286686588412101500, 1.526364414749281600 ) ) ; +#563 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #7291, #16030, #7425, #13344, #7235, #4501 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 0.02348160577409434700, 0.02533718066894524400, 0.02719275556379614100 ), + .UNSPECIFIED. ) ; +#564 = ORIENTED_EDGE ( 'NONE', *, *, #558, .F. ) ; +#565 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.8020833333333277100 ) ) ; +#566 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#567 = FACE_OUTER_BOUND ( 'NONE', #4654, .T. ) ; +#568 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.06770833333332206000 ) ) ; +#569 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, 0.1770833333333466900 ) ) ; +#570 = CARTESIAN_POINT ( 'NONE', ( 0.2870000851537573000, -6.849717198154601200E-015, 0.1119446049230254100 ) ) ; +#571 = CIRCLE ( 'NONE', #1973, 0.4687475818742550800 ) ; +#572 = ORIENTED_EDGE ( 'NONE', *, *, #5828, .F. ) ; +#573 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#574 = EDGE_CURVE ( 'NONE', #12070, #12364, #11922, .T. ) ; +#575 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.06597222222223482500 ) ) ; +#576 = VECTOR ( 'NONE', #7462, 39.37007874015747400 ) ; +#577 = DIRECTION ( 'NONE', ( 1.000000000000000000, -2.664535259100376000E-014, 0.0000000000000000000 ) ) ; +#578 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#579 = EDGE_CURVE ( 'NONE', #5957, #2164, #8459, .T. ) ; +#580 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.2934027777777682400 ) ) ; +#581 = CARTESIAN_POINT ( 'NONE', ( -0.2802162586133528100, 0.3660765293230648900, 1.143750000000000000 ) ) ; +#582 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#583 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.9166666666666618600 ) ) ; +#585 = EDGE_CURVE ( 'NONE', #4990, #4882, #3622, .T. ) ; +#584 = LINE ( 'NONE', #10185, #12097 ) ; +#586 = AXIS2_PLACEMENT_3D ( 'NONE', #2429, #2495, #13054 ) ; +#587 = CARTESIAN_POINT ( 'NONE', ( -0.3685331079892061900, -0.2896681615724768200, 1.484375000000000200 ) ) ; +#588 = AXIS2_PLACEMENT_3D ( 'NONE', #10565, #6246, #1803 ) ; +#589 = DIRECTION ( 'NONE', ( 0.01745011258364663800, 0.1727691615360281700, -0.9848077530122089100 ) ) ; +#590 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.9999999999999964500 ) ) ; +#591 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, 0.003472222222233768800 ) ) ; +#592 = CARTESIAN_POINT ( 'NONE', ( -2.624314698447061100E-016, -6.562837953529235000E-018, 3.802149639073292500 ) ) ; +#593 = LINE ( 'NONE', #9820, #9579 ) ; +#594 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.2499999999999899500 ) ) ; +#595 = ORIENTED_EDGE ( 'NONE', *, *, #5500, .T. ) ; +#596 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#597 = ADVANCED_FACE ( 'NONE', ( #1552 ), #8010, .T. ) ; +#598 = VECTOR ( 'NONE', #8686, 39.37007874015748900 ) ; +#599 = DIRECTION ( 'NONE', ( 1.000000000000000000, 4.263256414560601100E-014, 0.0000000000000000000 ) ) ; +#600 = ORIENTED_EDGE ( 'NONE', *, *, #5717, .T. ) ; +#601 = LINE ( 'NONE', #2597, #15332 ) ; +#602 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.6215277777777708000 ) ) ; +#603 = DIRECTION ( 'NONE', ( 0.4257792915650641100, 0.9048270524660234600, 0.0000000000000000000 ) ) ; +#604 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#605 = EDGE_CURVE ( 'NONE', #10882, #12726, #6616, .T. ) ; +#606 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#607 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#608 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#609 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#610 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.5347222222222148800 ) ) ; +#611 = AXIS2_PLACEMENT_3D ( 'NONE', #6090, #13383, #12083 ) ; +#612 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.8854166666666621900 ) ) ; +#613 = CIRCLE ( 'NONE', #17007, 0.4687475818742575800 ) ; +#614 = ADVANCED_FACE ( 'NONE', ( #3174 ), #12466, .F. ) ; +#615 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#616 = FACE_OUTER_BOUND ( 'NONE', #2063, .T. ) ; +#617 = ADVANCED_FACE ( 'NONE', ( #16058 ), #18380, .T. ) ; +#618 = VERTEX_POINT ( 'NONE', #16846 ) ; +#619 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.331597222222221200 ) ) ; +#620 = ORIENTED_EDGE ( 'NONE', *, *, #18188, .F. ) ; +#621 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 3.802149639073309800 ) ) ; +#622 = CARTESIAN_POINT ( 'NONE', ( 0.1991779886065795900, -0.2420349198675508000, -1.521348693804242000 ) ) ; +#623 = CIRCLE ( 'NONE', #15946, 0.3144999999999991100 ) ; +#624 = CARTESIAN_POINT ( 'NONE', ( -9.737125754760135900E-018, 3.273043095098432000E-017, 3.802149639073348500 ) ) ; +#625 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#626 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#627 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.1527777777777673500 ) ) ; +#628 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.4236111111111025600 ) ) ; +#629 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#630 = ORIENTED_EDGE ( 'NONE', *, *, #6385, .F. ) ; +#631 = EDGE_CURVE ( 'NONE', #2278, #5958, #4997, .T. ) ; +#632 = LINE ( 'NONE', #3878, #19073 ) ; +#633 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.03993055555554423500 ) ) ; +#634 = CIRCLE ( 'NONE', #15454, 0.4687499999999995600 ) ; +#635 = FACE_OUTER_BOUND ( 'NONE', #8828, .T. ) ; +#636 = ORIENTED_EDGE ( 'NONE', *, *, #16375, .F. ) ; +#637 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#638 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#639 = LINE ( 'NONE', #16574, #15362 ) ; +#640 = CONICAL_SURFACE ( 'NONE', #13988, 0.4687475818742551400, 0.1745329251994280900 ) ; +#641 = VERTEX_POINT ( 'NONE', #6588 ) ; +#642 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#643 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.553819444444445100 ) ) ; +#644 = CARTESIAN_POINT ( 'NONE', ( 0.1803732187963073800, -0.4242625117230433600, 1.591590229135180700 ) ) ; +#645 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.1180555555555446700 ) ) ; +#646 = ORIENTED_EDGE ( 'NONE', *, *, #12013, .F. ) ; +#647 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.3871527777777690200 ) ) ; +#648 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#649 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.527777777777777900 ) ) ; +#650 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#651 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676396300 ) ) ; +#652 = AXIS2_PLACEMENT_3D ( 'NONE', #16590, #18076, #13381 ) ; +#653 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.8229166666666613000 ) ) ; +#654 = ORIENTED_EDGE ( 'NONE', *, *, #18365, .F. ) ; +#655 = CARTESIAN_POINT ( 'NONE', ( -2.633081135512135400E-016, 2.659477064544373300E-017, 3.802149639073302700 ) ) ; +#656 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.166666666666664500 ) ) ; +#657 = ORIENTED_EDGE ( 'NONE', *, *, #12528, .F. ) ; +#658 = ORIENTED_EDGE ( 'NONE', *, *, #14516, .F. ) ; +#659 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.1840277777777906400 ) ) ; +#660 = LINE ( 'NONE', #9321, #1572 ) ; +#661 = CIRCLE ( 'NONE', #652, 0.4687475818742548600 ) ; +#662 = VECTOR ( 'NONE', #8867, 39.37007874015748100 ) ; +#663 = VERTEX_POINT ( 'NONE', #805 ) ; +#664 = CYLINDRICAL_SURFACE ( 'NONE', #5993, 0.3125000000000008300 ) ; +#665 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.4097222222222134900 ) ) ; +#666 = EDGE_CURVE ( 'NONE', #477, #15866, #14226, .T. ) ; +#667 = ORIENTED_EDGE ( 'NONE', *, *, #13650, .T. ) ; +#668 = EDGE_LOOP ( 'NONE', ( #12488, #11594, #2488, #2758 ) ) ; +#669 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.6909722222222157700 ) ) ; +#670 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#671 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -3.585550491684345600E-016, 0.1874999999999998300 ) ) ; +#672 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#673 = EDGE_CURVE ( 'NONE', #12473, #7548, #17915, .T. ) ; +#674 = EDGE_LOOP ( 'NONE', ( #1558, #4346, #6252, #8083 ) ) ; +#675 = VERTEX_POINT ( 'NONE', #12388 ) ; +#676 = CYLINDRICAL_SURFACE ( 'NONE', #4580, 0.4610132068742565100 ) ; +#677 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.3437499999999911700 ) ) ; +#678 = LINE ( 'NONE', #16277, #16582 ) ; +#679 = CARTESIAN_POINT ( 'NONE', ( -0.2360206732261748700, 0.4049948201025079200, 1.592561465728329600 ) ) ; +#680 = ORIENTED_EDGE ( 'NONE', *, *, #2276, .T. ) ; +#681 = ORIENTED_EDGE ( 'NONE', *, *, #5608, .F. ) ; +#682 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.5451388888888817300 ) ) ; +#683 = AXIS2_PLACEMENT_3D ( 'NONE', #4150, #10074, #14698 ) ; +#684 = VECTOR ( 'NONE', #18996, 39.37007874015748100 ) ; +#685 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.8159722222222172100 ) ) ; +#686 = CARTESIAN_POINT ( 'NONE', ( 0.4418741004648765700, 0.1314551491986613300, 1.590985962198545400 ) ) ; +#687 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.123263888888886200 ) ) ; +#688 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.4340277777777694600 ) ) ; +#689 = ORIENTED_EDGE ( 'NONE', *, *, #1910, .F. ) ; +#690 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#691 = CARTESIAN_POINT ( 'NONE', ( 0.4505462270817866500, 0.09767944602040519500, 1.589564174286821800 ) ) ; +#692 = PLANE ( 'NONE', #1736 ) ; +#693 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323599700 ) ) ; +#694 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #16627, #13791, #10902, #4830, #10767, #1944, #1882, #13668, #7810, #3606, #529, #3548 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 4 ), + ( 2.380733176182433900E-007, 0.001851555320830850800, 0.003702872568344082100, 0.004628531192100699000, 0.005554189815857316800, 0.007405507063370555700 ), + .UNSPECIFIED. ) ; +#695 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.6284722222222153300 ) ) ; +#696 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.8159722222222167700 ) ) ; +#697 = ORIENTED_EDGE ( 'NONE', *, *, #16612, .T. ) ; +#698 = CIRCLE ( 'NONE', #5312, 0.4375000000000001100 ) ; +#699 = LINE ( 'NONE', #2748, #3004 ) ; +#700 = VERTEX_POINT ( 'NONE', #751 ) ; +#701 = ORIENTED_EDGE ( 'NONE', *, *, #7539, .T. ) ; +#702 = CONICAL_SURFACE ( 'NONE', #13279, 0.4610132068742565100, 0.1745329251994302300 ) ; +#703 = ADVANCED_FACE ( 'NONE', ( #15816 ), #16965, .F. ) ; +#704 = EDGE_CURVE ( 'NONE', #10008, #2056, #18615, .T. ) ; +#705 = EDGE_CURVE ( 'NONE', #11961, #3219, #13770, .T. ) ; +#706 = AXIS2_PLACEMENT_3D ( 'NONE', #15823, #6969, #7167 ) ; +#707 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.09895833333332243500 ) ) ; +#708 = CARTESIAN_POINT ( 'NONE', ( -2.241780398015085000E-017, -2.575916910361625600E-017, -1.174024639073303100 ) ) ; +#709 = CARTESIAN_POINT ( 'NONE', ( -0.2953547369971147900, -6.966329251790343400E-015, 0.1348988222100558100 ) ) ; +#710 = AXIS2_PLACEMENT_3D ( 'NONE', #19069, #13269, #5904 ) ; +#711 = ORIENTED_EDGE ( 'NONE', *, *, #15596, .T. ) ; +#712 = CARTESIAN_POINT ( 'NONE', ( 0.3829490853735647600, 0.2566771803726157200, 1.592921120922338200 ) ) ; +#713 = ORIENTED_EDGE ( 'NONE', *, *, #13402, .F. ) ; +#714 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.463541666666666300 ) ) ; +#715 = ORIENTED_EDGE ( 'NONE', *, *, #12814, .F. ) ; +#716 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#717 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.5972222222222152200 ) ) ; +#718 = CARTESIAN_POINT ( 'NONE', ( 0.3293237658787548400, 0.3335752085024224500, 1.484375000000000200 ) ) ; +#719 = FACE_OUTER_BOUND ( 'NONE', #15261, .T. ) ; +#720 = ADVANCED_FACE ( 'NONE', ( #635 ), #14776, .F. ) ; +#721 = ORIENTED_EDGE ( 'NONE', *, *, #8531, .T. ) ; +#722 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.3385416666666575300 ) ) ; +#723 = ORIENTED_EDGE ( 'NONE', *, *, #17514, .F. ) ; +#724 = CARTESIAN_POINT ( 'NONE', ( 0.3114846310392944700, -3.967009148070212000E-016, 0.1792153418691395400 ) ) ; +#725 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.552083333333333700 ) ) ; +#726 = DIRECTION ( 'NONE', ( -0.5145511247964222900, 0.8574597016599302400, 0.0000000000000000000 ) ) ; +#727 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#728 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.034722222222218300 ) ) ; +#729 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#730 = ADVANCED_FACE ( 'NONE', ( #14445 ), #12843, .T. ) ; +#731 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.013888888888885300 ) ) ; +#732 = EDGE_CURVE ( 'NONE', #6859, #8803, #11252, .T. ) ; +#733 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#734 = ORIENTED_EDGE ( 'NONE', *, *, #4414, .T. ) ; +#735 = VERTEX_POINT ( 'NONE', #17938 ) ; +#736 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.1284722222222112700 ) ) ; +#737 = CARTESIAN_POINT ( 'NONE', ( -0.3535935602980392300, -0.3077269725401389200, 1.484375000000000200 ) ) ; +#738 = ORIENTED_EDGE ( 'NONE', *, *, #14541, .F. ) ; +#739 = EDGE_CURVE ( 'NONE', #17529, #18786, #9396, .T. ) ; +#740 = AXIS2_PLACEMENT_3D ( 'NONE', #10044, #984, #4059 ) ; +#741 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, 0.1041666666666792600 ) ) ; +#742 = VECTOR ( 'NONE', #10959, 39.37007874015748100 ) ; +#743 = ORIENTED_EDGE ( 'NONE', *, *, #15126, .T. ) ; +#744 = AXIS2_PLACEMENT_3D ( 'NONE', #4704, #1939, #6185 ) ; +#745 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.7291666666666604100 ) ) ; +#746 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#747 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.486111111111111200 ) ) ; +#748 = CARTESIAN_POINT ( 'NONE', ( -0.2432763397221111300, 0.1686620322880729400, -1.537461824957161000 ) ) ; +#749 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.03472222222223415200 ) ) ; +#750 = DIRECTION ( 'NONE', ( -0.7025573672080162000, -0.7116271114718301100, 0.0000000000000000000 ) ) ; +#751 = CARTESIAN_POINT ( 'NONE', ( 0.2659561823096092700, 0.3859943064402119300, 1.143750000000000000 ) ) ; +#752 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.3819444444444359300 ) ) ; +#753 = EDGE_LOOP ( 'NONE', ( #7959, #6403, #18098, #5744, #4128, #11779 ) ) ; +#754 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.9097222222222178800 ) ) ; +#755 = ORIENTED_EDGE ( 'NONE', *, *, #3294, .T. ) ; +#756 = ORIENTED_EDGE ( 'NONE', *, *, #14998, .F. ) ; +#757 = VECTOR ( 'NONE', #6209, 39.37007874015748100 ) ; +#758 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.161458333333331000 ) ) ; +#759 = CARTESIAN_POINT ( 'NONE', ( 0.3293237658787548400, 0.3335752085024224500, 1.143750000000000000 ) ) ; +#760 = ORIENTED_EDGE ( 'NONE', *, *, #15891, .F. ) ; +#761 = EDGE_CURVE ( 'NONE', #9249, #8825, #4085, .T. ) ; +#762 = DIRECTION ( 'NONE', ( 1.000000000000000000, 3.197442310920450800E-014, 0.0000000000000000000 ) ) ; +#763 = AXIS2_PLACEMENT_3D ( 'NONE', #17306, #8475, #8412 ) ; +#764 = EDGE_LOOP ( 'NONE', ( #4266, #8695, #3338, #12577 ) ) ; +#765 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.5555555555555482500 ) ) ; +#766 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.4756944444444362600 ) ) ; +#767 = DIRECTION ( 'NONE', ( 0.06794052811688183800, 0.1598054262102582600, 0.9848077530122094600 ) ) ; +#768 = ORIENTED_EDGE ( 'NONE', *, *, #2813, .T. ) ; +#769 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #9225, #4760, #12115, #18048, #15201, #15073, #7737, #3297, #6255 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3560606060606060800, 0.3598484848484848600, 0.3636363636363636500, 0.3674242424242424300, 0.3712121212121212200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#770 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, 0.03298611111112314400 ) ) ; +#771 = FACE_OUTER_BOUND ( 'NONE', #12410, .T. ) ; +#772 = VERTEX_POINT ( 'NONE', #8928 ) ; +#773 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.534722222222222800 ) ) ; +#774 = CARTESIAN_POINT ( 'NONE', ( -0.2947193593338541300, 0.01919746282508714600, 0.1344438258162102000 ) ) ; +#775 = ORIENTED_EDGE ( 'NONE', *, *, #4883, .F. ) ; +#776 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.8090277777777722400 ) ) ; +#777 = CONICAL_SURFACE ( 'NONE', #7878, 0.4687475818742550800, 0.1745329251994287300 ) ; +#778 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.439236111111110700 ) ) ; +#779 = DIRECTION ( 'NONE', ( 0.4596954355469745600, 0.8880766332571064000, 0.0000000000000000000 ) ) ; +#780 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#781 = ORIENTED_EDGE ( 'NONE', *, *, #10761, .F. ) ; +#782 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.03993055555554396500 ) ) ; +#783 = EDGE_CURVE ( 'NONE', #18868, #10612, #13307, .T. ) ; +#784 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#785 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#786 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.9687499999999957800 ) ) ; +#787 = EDGE_LOOP ( 'NONE', ( #15847, #1793, #5579, #991, #15550, #4341 ) ) ; +#788 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.8194444444444394200 ) ) ; +#789 = ORIENTED_EDGE ( 'NONE', *, *, #14518, .T. ) ; +#790 = VERTEX_POINT ( 'NONE', #11877 ) ; +#791 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, 0.9687499999999998900 ) ) ; +#792 = EDGE_CURVE ( 'NONE', #7601, #8893, #17222, .T. ) ; +#793 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.1701388888888782600 ) ) ; +#794 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.593467001493433100 ) ) ; +#795 = VECTOR ( 'NONE', #13584, 39.37007874015748100 ) ; +#796 = ADVANCED_FACE ( 'NONE', ( #8937 ), #1581, .F. ) ; +#797 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.7465277777777717900 ) ) ; +#798 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.059027777777774600 ) ) ; +#799 = DIRECTION ( 'NONE', ( -0.1156686028357408300, -0.1295162689590476400, -0.9848077530122085800 ) ) ; +#800 = DIRECTION ( 'NONE', ( -0.9685831611286345200, 0.2486898871648415800, 0.0000000000000000000 ) ) ; +#801 = CARTESIAN_POINT ( 'NONE', ( 0.2820393565767399500, 0.01895221938936876900, -1.551293976756593900 ) ) ; +#802 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.006944444444456064100 ) ) ; +#803 = LINE ( 'NONE', #13609, #9777 ) ; +#804 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#805 = CARTESIAN_POINT ( 'NONE', ( -0.04710524684730319600, -0.4663771630552413500, 1.143750000000000000 ) ) ; +#806 = PLANE ( 'NONE', #6134 ) ; +#807 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.4583333333333254900 ) ) ; +#808 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.8437499999999952300 ) ) ; +#809 = ADVANCED_FACE ( 'NONE', ( #12160 ), #9004, .F. ) ; +#810 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#811 = VECTOR ( 'NONE', #1935, 39.37007874015748900 ) ; +#812 = ADVANCED_BREP_SHAPE_REPRESENTATION ( '91251A404_Black-Oxide Alloy Steel Socket Head Screw', ( #12705, #5777 ), #4669 ) ; +#813 = ADVANCED_FACE ( 'NONE', ( #15359 ), #6084, .F. ) ; +#814 = EDGE_CURVE ( 'NONE', #33, #2371, #7320, .T. ) ; +#815 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.157986111111108500 ) ) ; +#816 = DIRECTION ( 'NONE', ( -1.000000000000000000, -1.776356839400250500E-015, 0.0000000000000000000 ) ) ; +#817 = EDGE_CURVE ( 'NONE', #13712, #17357, #172, .T. ) ; +#818 = CARTESIAN_POINT ( 'NONE', ( -0.2508932887307748800, -0.1254116774659278000, 0.09239181284538498800 ) ) ; +#819 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, 1.531249999999999800 ) ) ; +#820 = DIRECTION ( 'NONE', ( -0.3912539079287195600, 0.9202827715058589100, 0.0000000000000000000 ) ) ; +#821 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.4895833333333253200 ) ) ; +#822 = AXIS2_PLACEMENT_3D ( 'NONE', #5013, #18114, #3490 ) ; +#823 = VECTOR ( 'NONE', #9939, 39.37007874015748900 ) ; +#824 = ORIENTED_EDGE ( 'NONE', *, *, #17355, .T. ) ; +#825 = VECTOR ( 'NONE', #253, 39.37007874015748100 ) ; +#826 = ORIENTED_EDGE ( 'NONE', *, *, #12063, .T. ) ; +#827 = CYLINDRICAL_SURFACE ( 'NONE', #9200, 0.3125000000000008300 ) ; +#828 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, 0.2274305555555692100 ) ) ; +#829 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.503472222222222800 ) ) ; +#830 = CARTESIAN_POINT ( 'NONE', ( -0.09704437734532003800, 0.2761337821290166800, 0.1258801787510217500 ) ) ; +#831 = DIRECTION ( 'NONE', ( 0.9584846895403635900, -0.2851439985633803000, 0.0000000000000000000 ) ) ; +#832 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#833 = EDGE_CURVE ( 'NONE', #16144, #15707, #11693, .T. ) ; +#834 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.477430555555555800 ) ) ; +#835 = CARTESIAN_POINT ( 'NONE', ( 0.4190133544667894400, 0.2101240212147350800, 1.143750000000000000 ) ) ; +#836 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#837 = LINE ( 'NONE', #8751, #2225 ) ; +#838 = EDGE_CURVE ( 'NONE', #15821, #14335, #11459, .T. ) ; +#839 = ORIENTED_EDGE ( 'NONE', *, *, #8146, .F. ) ; +#840 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.2100694444444342300 ) ) ; +#841 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#842 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.326388888888887500 ) ) ; +#843 = CARTESIAN_POINT ( 'NONE', ( 1.136096440219880200E-017, 3.220281379092729600E-017, 3.802149639073329400 ) ) ; +#844 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.01388888888887717000 ) ) ; +#845 = EDGE_CURVE ( 'NONE', #4172, #13616, #2939, .T. ) ; +#846 = VECTOR ( 'NONE', #12957, 39.37007874015748100 ) ; +#847 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, -0.1443375672974061300, 1.272329099369260000 ) ) ; +#848 = ORIENTED_EDGE ( 'NONE', *, *, #13238, .T. ) ; +#849 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.8159722222222172100 ) ) ; +#850 = CIRCLE ( 'NONE', #6848, 0.03125000000000004200 ) ; +#851 = DIRECTION ( 'NONE', ( 0.9866647708492405400, -0.1627655675043581400, 0.0000000000000000000 ) ) ; +#852 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.2048611111111006700 ) ) ; +#853 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, 0.04166666666667874500 ) ) ; +#854 = VERTEX_POINT ( 'NONE', #12375 ) ; +#855 = FACE_OUTER_BOUND ( 'NONE', #8145, .T. ) ; +#856 = CYLINDRICAL_SURFACE ( 'NONE', #7501, 0.4610132068742565100 ) ; +#857 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.3749999999999909500 ) ) ; +#858 = FACE_OUTER_BOUND ( 'NONE', #18039, .T. ) ; +#859 = EDGE_LOOP ( 'NONE', ( #16881, #18435, #3721, #3736, #3807, #1739 ) ) ; +#860 = VERTEX_POINT ( 'NONE', #10912 ) ; +#861 = EDGE_CURVE ( 'NONE', #3649, #3293, #14911, .T. ) ; +#862 = CARTESIAN_POINT ( 'NONE', ( -0.2253594483177021900, 0.1911160246822813900, -1.538001656685323800 ) ) ; +#863 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.07986111111112316500 ) ) ; +#864 = LINE ( 'NONE', #6254, #11902 ) ; +#865 = DIRECTION ( 'NONE', ( -0.1004911932742605900, 0.9949379478511788400, 0.0000000000000000000 ) ) ; +#866 = AXIS2_PLACEMENT_3D ( 'NONE', #13236, #4416, #9778 ) ; +#867 = CARTESIAN_POINT ( 'NONE', ( -2.532093440179764400E-017, 3.844143680069225700E-018, 3.802149639073312900 ) ) ; +#868 = DIRECTION ( 'NONE', ( 0.9921147013144786500, -0.1253332335642974900, 0.0000000000000000000 ) ) ; +#869 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.3437499999999911200 ) ) ; +#870 = AXIS2_PLACEMENT_3D ( 'NONE', #7010, #3986, #17309 ) ; +#871 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.5208333333333259300 ) ) ; +#872 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#873 = VERTEX_POINT ( 'NONE', #9433 ) ; +#874 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#875 = VECTOR ( 'NONE', #17269, 39.37007874015748100 ) ; +#876 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#877 = CYLINDRICAL_SURFACE ( 'NONE', #6048, 0.4610132068742565100 ) ; +#878 = CARTESIAN_POINT ( 'NONE', ( 0.3293220670067057400, -0.3335734876985768600, 1.143750000000000000 ) ) ; +#879 = VECTOR ( 'NONE', #8675, 39.37007874015748100 ) ; +#880 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.090277777777774800 ) ) ; +#881 = ORIENTED_EDGE ( 'NONE', *, *, #10568, .F. ) ; +#882 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.4305555555555469800 ) ) ; +#883 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#884 = VECTOR ( 'NONE', #156, 39.37007874015748900 ) ; +#885 = FACE_OUTER_BOUND ( 'NONE', #2173, .T. ) ; +#886 = ADVANCED_FACE ( 'NONE', ( #11005 ), #2474, .T. ) ; +#887 = ORIENTED_EDGE ( 'NONE', *, *, #11249, .F. ) ; +#888 = EDGE_CURVE ( 'NONE', #17024, #15115, #16761, .T. ) ; +#889 = EDGE_LOOP ( 'NONE', ( #16848, #11954, #454, #1902 ) ) ; +#890 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, 0.1163194444444571500 ) ) ; +#891 = AXIS2_PLACEMENT_3D ( 'NONE', #5133, #2136, #14101 ) ; +#892 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #4900, #13730, #16497, #9166, #17989, #6383, #15143, #3180, #13487 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5833333333333333700, 0.5871212121212121500, 0.5909090909090909400, 0.5946969696969697200, 0.5984848484848485100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#893 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.548611111111112000 ) ) ; +#894 = CARTESIAN_POINT ( 'NONE', ( -0.2157931066983169400, 0.1989717294828013700, 0.1294420229335019900 ) ) ; +#895 = ORIENTED_EDGE ( 'NONE', *, *, #4541, .T. ) ; +#896 = VERTEX_POINT ( 'NONE', #8078 ) ; +#897 = LINE ( 'NONE', #4649, #4323 ) ; +#898 = LINE ( 'NONE', #16320, #16081 ) ; +#899 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#900 = VERTEX_POINT ( 'NONE', #2098 ) ; +#901 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.4461805555555474800 ) ) ; +#902 = VERTEX_POINT ( 'NONE', #3693 ) ; +#903 = LINE ( 'NONE', #13961, #9879 ) ; +#904 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.220486111111109200 ) ) ; +#905 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.510416666666667000 ) ) ; +#906 = ORIENTED_EDGE ( 'NONE', *, *, #3364, .T. ) ; +#907 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.5208333333333257100 ) ) ; +#908 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#909 = ADVANCED_FACE ( 'NONE', ( #4328 ), #3865, .T. ) ; +#910 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.03645833333332167100 ) ) ; +#911 = DIRECTION ( 'NONE', ( 0.7862080194966573100, 0.6179619325485540300, -0.0000000000000000000 ) ) ; +#912 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.524305555555555400 ) ) ; +#913 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#914 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#915 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#916 = ADVANCED_FACE ( 'NONE', ( #19076 ), #4903, .F. ) ; +#917 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.9131944444444400900 ) ) ; +#918 = ORIENTED_EDGE ( 'NONE', *, *, #9350, .T. ) ; +#919 = ORIENTED_EDGE ( 'NONE', *, *, #1683, .F. ) ; +#920 = EDGE_LOOP ( 'NONE', ( #10821, #8107, #3766, #6440 ) ) ; +#921 = LINE ( 'NONE', #15979, #5908 ) ; +#922 = VECTOR ( 'NONE', #13894, 39.37007874015748100 ) ; +#923 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.1215277777777666900 ) ) ; +#924 = VERTEX_POINT ( 'NONE', #5031 ) ; +#925 = ORIENTED_EDGE ( 'NONE', *, *, #12910, .T. ) ; +#926 = EDGE_CURVE ( 'NONE', #12394, #10882, #12379, .T. ) ; +#927 = LINE ( 'NONE', #2400, #18441 ) ; +#928 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, 0.05208333333334564500 ) ) ; +#929 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.3645833333333242100 ) ) ; +#930 = DIRECTION ( 'NONE', ( -0.8938997675281747900, -0.4482668910516087200, 0.0000000000000000000 ) ) ; +#931 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#932 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#933 = CARTESIAN_POINT ( 'NONE', ( -0.2884768724045939100, 0.07489294078512849500, -1.535446678109694900 ) ) ; +#934 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.02083333333334497200 ) ) ; +#935 = ORIENTED_EDGE ( 'NONE', *, *, #9636, .T. ) ; +#936 = EDGE_CURVE ( 'NONE', #7348, #18596, #5912, .T. ) ; +#937 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#938 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#939 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.4340277777777697400 ) ) ; +#940 = ORIENTED_EDGE ( 'NONE', *, *, #7160, .F. ) ; +#941 = ORIENTED_EDGE ( 'NONE', *, *, #6575, .T. ) ; +#942 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.6423611111111047200 ) ) ; +#943 = LINE ( 'NONE', #14151, #4380 ) ; +#944 = CIRCLE ( 'NONE', #9757, 0.03125000000000011100 ) ; +#945 = ORIENTED_EDGE ( 'NONE', *, *, #11839, .T. ) ; +#946 = ORIENTED_EDGE ( 'NONE', *, *, #16402, .T. ) ; +#947 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#948 = VECTOR ( 'NONE', #18176, 39.37007874015748900 ) ; +#949 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.006944444444440400 ) ) ; +#950 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.2013888888888789300 ) ) ; +#951 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.8923611111111066100 ) ) ; +#952 = CARTESIAN_POINT ( 'NONE', ( 4.029647775533519700E-017, 2.442722720788988100E-016, 3.802149639073263600 ) ) ; +#953 = CARTESIAN_POINT ( 'NONE', ( -0.3070850166377911400, 0.3438487595863240500, 1.187613820323614800 ) ) ; +#954 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.3298611111111016100 ) ) ; +#955 = CARTESIAN_POINT ( 'NONE', ( 0.04710524684730958000, -0.4663771630552396300, 1.588758826628429600 ) ) ; +#956 = ORIENTED_EDGE ( 'NONE', *, *, #410, .F. ) ; +#957 = ORIENTED_EDGE ( 'NONE', *, *, #14046, .T. ) ; +#958 = EDGE_CURVE ( 'NONE', #7555, #7046, #18827, .T. ) ; +#959 = ORIENTED_EDGE ( 'NONE', *, *, #3262, .T. ) ; +#960 = LINE ( 'NONE', #9855, #12714 ) ; +#961 = EDGE_CURVE ( 'NONE', #17455, #5998, #15602, .T. ) ; +#962 = ORIENTED_EDGE ( 'NONE', *, *, #926, .T. ) ; +#963 = EDGE_CURVE ( 'NONE', #11110, #3352, #12216, .T. ) ; +#964 = AXIS2_PLACEMENT_3D ( 'NONE', #13058, #7020, #9980 ) ; +#965 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, 0.1649305555555684600 ) ) ; +#966 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.520833333333333900 ) ) ; +#967 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#968 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.3124999999999907300 ) ) ; +#969 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.203124999999997800 ) ) ; +#970 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#971 = VERTEX_POINT ( 'NONE', #4961 ) ; +#972 = DIRECTION ( 'NONE', ( 0.1442440472914147400, -0.09668166541820048800, 0.9848077530122085800 ) ) ; +#973 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#974 = ORIENTED_EDGE ( 'NONE', *, *, #4958, .T. ) ; +#975 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.01562499999998817100 ) ) ; +#976 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#977 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.409722222222221400 ) ) ; +#978 = PLANE ( 'NONE', #11715 ) ; +#979 = VERTEX_POINT ( 'NONE', #6709 ) ; +#980 = VECTOR ( 'NONE', #13418, 39.37007874015748900 ) ; +#981 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.9340277777777736800 ) ) ; +#982 = VERTEX_POINT ( 'NONE', #8261 ) ; +#983 = EDGE_CURVE ( 'NONE', #8262, #3219, #10319, .T. ) ; +#984 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#985 = AXIS2_PLACEMENT_3D ( 'NONE', #10981, #9629, #14005 ) ; +#986 = DIRECTION ( 'NONE', ( -0.7543368200092318600, 0.6564875946873327500, 0.0000000000000000000 ) ) ; +#987 = EDGE_CURVE ( 'NONE', #2557, #3832, #6635, .T. ) ; +#988 = ADVANCED_FACE ( 'NONE', ( #18848 ), #17147, .F. ) ; +#989 = AXIS2_PLACEMENT_3D ( 'NONE', #6103, #5967, #16415 ) ; +#990 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, 0.09027777777779030800 ) ) ; +#991 = ORIENTED_EDGE ( 'NONE', *, *, #14279, .T. ) ; +#992 = VERTEX_POINT ( 'NONE', #5456 ) ; +#993 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.4340277777777693000 ) ) ; +#994 = DIRECTION ( 'NONE', ( -0.5358267949790065400, 0.8443279255020087500, 0.0000000000000000000 ) ) ; +#995 = FACE_OUTER_BOUND ( 'NONE', #6744, .T. ) ; +#996 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.7534722222222163300 ) ) ; +#997 = ORIENTED_EDGE ( 'NONE', *, *, #838, .T. ) ; +#998 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.1180555555555446400 ) ) ; +#999 = CARTESIAN_POINT ( 'NONE', ( -0.2592167381127979400, 0.1450192157944427100, -1.536916981344917100 ) ) ; +#1000 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.05902777777776673000 ) ) ; +#1001 = CARTESIAN_POINT ( 'NONE', ( 2.548143034366579100E-017, 2.573687481817479900E-018, -1.174024639073294900 ) ) ; +#1002 = ORIENTED_EDGE ( 'NONE', *, *, #6325, .F. ) ; +#1003 = CARTESIAN_POINT ( 'NONE', ( -0.3953002468276878300, -0.2372148641431544900, 1.187613820323638600 ) ) ; +#1004 = CARTESIAN_POINT ( 'NONE', ( -0.2615678826637244400, 0.3796253675287022400, 1.593193105402742800 ) ) ; +#1005 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.3576388888888801800 ) ) ; +#1006 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.6388888888888824000 ) ) ; +#1007 = ADVANCED_FACE ( 'NONE', ( #3402 ), #12595, .T. ) ; +#1008 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1009 = ORIENTED_EDGE ( 'NONE', *, *, #12319, .T. ) ; +#1010 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.059027777777774100 ) ) ; +#1011 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.1701388888888788200 ) ) ; +#1012 = EDGE_CURVE ( 'NONE', #7863, #2038, #4742, .T. ) ; +#1013 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, 0.1527777777777908400 ) ) ; +#1014 = CARTESIAN_POINT ( 'NONE', ( 0.2870000851537573000, -6.849717198154601200E-015, 0.1119446049230254100 ) ) ; +#1015 = VERTEX_POINT ( 'NONE', #18621 ) ; +#1016 = AXIS2_PLACEMENT_3D ( 'NONE', #15875, #2750, #13183 ) ; +#1017 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -1.336805555555554900 ) ) ; +#1018 = ORIENTED_EDGE ( 'NONE', *, *, #4020, .T. ) ; +#1019 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.2499999999999899500 ) ) ; +#1020 = LINE ( 'NONE', #1916, #8845 ) ; +#1021 = ORIENTED_EDGE ( 'NONE', *, *, #1623, .T. ) ; +#1022 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.413194444444444200 ) ) ; +#1023 = AXIS2_PLACEMENT_3D ( 'NONE', #11572, #2745, #2563 ) ; +#1024 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, 0.1024305555555679600 ) ) ; +#1025 = EDGE_LOOP ( 'NONE', ( #1894, #18206, #11428, #15717 ) ) ; +#1026 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.472222222222222300 ) ) ; +#1027 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#1028 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.7256944444444385400 ) ) ; +#1029 = ORIENTED_EDGE ( 'NONE', *, *, #8025, .F. ) ; +#1030 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.171874999999997300 ) ) ; +#1031 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.545138888888889100 ) ) ; +#1032 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1033 = CARTESIAN_POINT ( 'NONE', ( 0.1278875336514661600, 0.4509671176888007100, 1.590308733529502500 ) ) ; +#1034 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.08506944444443326200 ) ) ; +#1035 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#1036 = EDGE_CURVE ( 'NONE', #17817, #8354, #16501, .T. ) ; +#1037 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.513888888888889100 ) ) ; +#1038 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.7430555555555495900 ) ) ; +#1039 = FACE_OUTER_BOUND ( 'NONE', #15215, .T. ) ; +#1040 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.9826388888888851800 ) ) ; +#1041 = CARTESIAN_POINT ( 'NONE', ( 0.3535953843793207000, 0.3077285600096943400, 1.484375000000000200 ) ) ; +#1042 = FACE_OUTER_BOUND ( 'NONE', #16802, .T. ) ; +#1043 = ORIENTED_EDGE ( 'NONE', *, *, #445, .T. ) ; +#1044 = VECTOR ( 'NONE', #1809, 39.37007874015748100 ) ; +#1045 = DIRECTION ( 'NONE', ( -0.07982527466453448500, -0.1542128889936753800, -0.9848077530122089100 ) ) ; +#1046 = LINE ( 'NONE', #18938, #11411 ) ; +#1047 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.4548611111111028300 ) ) ; +#1048 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#1049 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.592116737595687900 ) ) ; +#1050 = CARTESIAN_POINT ( 'NONE', ( -0.2119256669269715400, 0.4094150566479503000, 1.592561465728329600 ) ) ; +#1051 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.1527777777777905600 ) ) ; +#1052 = CARTESIAN_POINT ( 'NONE', ( 0.3122385636735728900, -0.3496192812976191600, 1.484375000000000200 ) ) ; +#1053 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#1054 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.3020833333333241000 ) ) ; +#1055 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.6736111111111049400 ) ) ; +#1056 = FACE_OUTER_BOUND ( 'NONE', #13200, .T. ) ; +#1057 = ORIENTED_EDGE ( 'NONE', *, *, #1459, .T. ) ; +#1058 = VECTOR ( 'NONE', #8819, 39.37007874015748900 ) ; +#1059 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.9444444444444399800 ) ) ; +#1060 = EDGE_CURVE ( 'NONE', #1696, #18062, #3946, .T. ) ; +#1061 = VERTEX_POINT ( 'NONE', #11294 ) ; +#1062 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.1527777777777673300 ) ) ; +#1063 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, 0.1493055555555685700 ) ) ; +#1065 = EDGE_CURVE ( 'NONE', #6983, #17023, #10519, .T. ) ; +#1064 = CIRCLE ( 'NONE', #13136, 0.4687475818742554100 ) ; +#1066 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1067 = AXIS2_PLACEMENT_3D ( 'NONE', #16699, #1953, #6462 ) ; +#1068 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.2187499999999898400 ) ) ; +#1069 = AXIS2_PLACEMENT_3D ( 'NONE', #14062, #14125, #3624 ) ; +#1070 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -1.013888888888885100 ) ) ; +#1071 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1072 = ADVANCED_FACE ( 'NONE', ( #11655 ), #15569, .T. ) ; +#1073 = CYLINDRICAL_SURFACE ( 'NONE', #18268, 0.3125000000000008300 ) ; +#1074 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.229166666666665000 ) ) ; +#1075 = VECTOR ( 'NONE', #650, 39.37007874015748100 ) ; +#1076 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.534722222222222800 ) ) ; +#1077 = VECTOR ( 'NONE', #11430, 39.37007874015748900 ) ; +#1078 = EDGE_LOOP ( 'NONE', ( #14071, #18578, #1140, #4031 ) ) ; +#1079 = ORIENTED_EDGE ( 'NONE', *, *, #3205, .F. ) ; +#1080 = PLANE ( 'NONE', #4692 ) ; +#1081 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.05208333333332214300 ) ) ; +#1082 = LINE ( 'NONE', #15316, #16047 ) ; +#1083 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.208333333333331000 ) ) ; +#1084 = CARTESIAN_POINT ( 'NONE', ( -0.2321251145655865700, -0.3983103163368976200, 1.143750000000000000 ) ) ; +#1085 = EDGE_CURVE ( 'NONE', #3183, #8304, #6183, .T. ) ; +#1086 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.255208333333331500 ) ) ; +#1087 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.413194444444443800 ) ) ; +#1088 = DIRECTION ( 'NONE', ( -0.3912539079287067900, -0.9202827715058643500, 0.0000000000000000000 ) ) ; +#1089 = CARTESIAN_POINT ( 'NONE', ( -0.01152533017185643900, -0.4608691177296606000, 1.587227003692501100 ) ) ; +#1090 = ADVANCED_FACE ( 'NONE', ( #5203 ), #2339, .F. ) ; +#1091 = EDGE_CURVE ( 'NONE', #10140, #10200, #8670, .T. ) ; +#1092 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, 0.1371527777777906400 ) ) ; +#1093 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.381944444444443500 ) ) ; +#1094 = EDGE_CURVE ( 'NONE', #16176, #17489, #5645, .T. ) ; +#1095 = ORIENTED_EDGE ( 'NONE', *, *, #17448, .T. ) ; +#1096 = AXIS2_PLACEMENT_3D ( 'NONE', #14315, #937, #6846 ) ; +#1097 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.7187499999999942300 ) ) ; +#1098 = AXIS2_PLACEMENT_3D ( 'NONE', #4983, #9320, #15105 ) ; +#1099 = CONICAL_SURFACE ( 'NONE', #6615, 0.4687475818742579100, 0.1745329251994282600 ) ; +#1100 = VECTOR ( 'NONE', #15268, 39.37007874015748100 ) ; +#1101 = VECTOR ( 'NONE', #18191, 39.37007874015748100 ) ; +#1102 = ORIENTED_EDGE ( 'NONE', *, *, #4775, .T. ) ; +#1103 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, 0.03125000000001185200 ) ) ; +#1104 = FACE_OUTER_BOUND ( 'NONE', #2721, .T. ) ; +#1105 = FACE_OUTER_BOUND ( 'NONE', #6838, .T. ) ; +#1106 = ORIENTED_EDGE ( 'NONE', *, *, #7836, .F. ) ; +#1107 = ORIENTED_EDGE ( 'NONE', *, *, #17845, .T. ) ; +#1108 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.5364583333333259300 ) ) ; +#1109 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #6618, #12495, #15361, #569, #11007 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 3 ), + ( 0.03310307919197086300, 0.03409090909090906100, 0.03787878787878784500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9706514210710284200, 0.9801487645414829200, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1110 = EDGE_LOOP ( 'NONE', ( #11932, #16750, #6039, #15884, #2351, #9242, #2726, #14, #13900, #10748, #17834, #15167, #8041, #3005, #12221, #10111, #3662, #1180, #14584, #6734, #11732, #14813, #15656, #10458, #11374, #10096, #1876, #14102, #2777, #10555, #16570, #12854, #18668, #9324, #14512, #2332, #701, #1816, #13119, #2480, #9248, #12695, #17138, #14248, #4603, #9081, #16916, #14023, #2510, #7631, #11223, #7689, #12740, #15466, #3280, #16150, #11997, #449, #13997, #14557, #14067, #15929, #13613, #5813, #2618, #5476, #2385, #9190, #7359, #7411, #17201, #65, #881, #4 ) ) ; +#1111 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.2881944444444347100 ) ) ; +#1112 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1113 = EDGE_CURVE ( 'NONE', #5493, #3923, #12128, .T. ) ; +#1114 = PLANE ( 'NONE', #17316 ) ; +#1115 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.1458333333333459700 ) ) ; +#1116 = ORIENTED_EDGE ( 'NONE', *, *, #15759, .T. ) ; +#1117 = ORIENTED_EDGE ( 'NONE', *, *, #2634, .T. ) ; +#1118 = VECTOR ( 'NONE', #7461, 39.37007874015748100 ) ; +#1119 = CARTESIAN_POINT ( 'NONE', ( 0.1834002693415811600, 0.4313825491433734800, 1.143750000000000000 ) ) ; +#1120 = LINE ( 'NONE', #367, #5241 ) ; +#1121 = AXIS2_PLACEMENT_3D ( 'NONE', #3083, #16260, #7066 ) ; +#1122 = DIRECTION ( 'NONE', ( 0.1309892141416693900, 0.1139978744784039700, -0.9848077530122080200 ) ) ; +#1123 = LINE ( 'NONE', #19108, #1797 ) ; +#1124 = CARTESIAN_POINT ( 'NONE', ( -3.138074643635356000E-017, 0.2886751345948123700, -1.562539370078740200 ) ) ; +#1125 = ORIENTED_EDGE ( 'NONE', *, *, #17613, .T. ) ; +#1126 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.2777777777777683000 ) ) ; +#1127 = FACE_OUTER_BOUND ( 'NONE', #14077, .T. ) ; +#1128 = AXIS2_PLACEMENT_3D ( 'NONE', #16210, #16474, #1799 ) ; +#1129 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.5659722222222151000 ) ) ; +#1130 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1131 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.121527777777774600 ) ) ; +#1132 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.1388888888888784300 ) ) ; +#1133 = EDGE_LOOP ( 'NONE', ( #1607, #10329, #7637, #16082, #4598, #1570 ) ) ; +#1134 = DIRECTION ( 'NONE', ( 0.9297764858882485700, 0.3681245526846854100, 0.0000000000000000000 ) ) ; +#1135 = ORIENTED_EDGE ( 'NONE', *, *, #10430, .F. ) ; +#1136 = CARTESIAN_POINT ( 'NONE', ( -0.005823518195823259300, -0.2828621562939366800, 0.1003239742072448100 ) ) ; +#1137 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.2118055555555452600 ) ) ; +#1138 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #16222, #3050, #12441, #7740, #12362, #2079, #13925, #13868, #9230 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4924242424242424300, 0.4962121212121212200, 0.5000000000000000000, 0.5037878787878787800, 0.5075757575757575700 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1139 = CARTESIAN_POINT ( 'NONE', ( 0.4684122207840658600, 0.01772813958392011400, 1.143750000000000000 ) ) ; +#1140 = ORIENTED_EDGE ( 'NONE', *, *, #7723, .F. ) ; +#1141 = ORIENTED_EDGE ( 'NONE', *, *, #7902, .T. ) ; +#1142 = LINE ( 'NONE', #17130, #14484 ) ; +#1143 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.04513888888887754300 ) ) ; +#1145 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.130208333333330600 ) ) ; +#1144 = LINE ( 'NONE', #12396, #1381 ) ; +#1146 = ORIENTED_EDGE ( 'NONE', *, *, #17700, .T. ) ; +#1147 = ORIENTED_EDGE ( 'NONE', *, *, #9296, .T. ) ; +#1148 = FACE_OUTER_BOUND ( 'NONE', #12065, .T. ) ; +#1149 = ORIENTED_EDGE ( 'NONE', *, *, #12719, .F. ) ; +#1150 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.204861111111109200 ) ) ; +#1151 = EDGE_CURVE ( 'NONE', #9477, #3029, #19035, .T. ) ; +#1152 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.447916666666666700 ) ) ; +#1153 = DIRECTION ( 'NONE', ( -0.1055480449047642600, 0.1378887226129352500, -0.9848077530122083500 ) ) ; +#1154 = ORIENTED_EDGE ( 'NONE', *, *, #6042, .F. ) ; +#1155 = CARTESIAN_POINT ( 'NONE', ( 0.4120995984523190800, -0.2066569569792496000, 1.187613820323598600 ) ) ; +#1156 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.3159722222222130000 ) ) ; +#1157 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.335069444444443100 ) ) ; +#1158 = ORIENTED_EDGE ( 'NONE', *, *, #14816, .F. ) ; +#1159 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.312499999999998400 ) ) ; +#1160 = PLANE ( 'NONE', #2242 ) ; +#1161 = VECTOR ( 'NONE', #1656, 39.37007874015748100 ) ; +#1162 = EDGE_LOOP ( 'NONE', ( #17446, #13807, #2359, #17103, #5033, #2043 ) ) ; +#1163 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, 0.04340277777779003000 ) ) ; +#1164 = ORIENTED_EDGE ( 'NONE', *, *, #11441, .T. ) ; +#1165 = CARTESIAN_POINT ( 'NONE', ( -0.04710524684730309200, -0.4663771630552402400, 1.588758826628429600 ) ) ; +#1166 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.236111111111108900 ) ) ; +#1167 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1168 = AXIS2_PLACEMENT_3D ( 'NONE', #12894, #14573, #15831 ) ; +#1169 = VECTOR ( 'NONE', #2026, 39.37007874015748900 ) ; +#1170 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.7256944444444386500 ) ) ; +#1171 = CARTESIAN_POINT ( 'NONE', ( -0.3624522803384139800, 0.2848886122504193900, 1.593375490995827300 ) ) ; +#1172 = VERTEX_POINT ( 'NONE', #2644 ) ; +#1173 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323599700 ) ) ; +#1174 = ORIENTED_EDGE ( 'NONE', *, *, #14665, .T. ) ; +#1175 = ADVANCED_FACE ( 'NONE', ( #18366 ), #1761, .T. ) ; +#1176 = ORIENTED_EDGE ( 'NONE', *, *, #2483, .T. ) ; +#1177 = LINE ( 'NONE', #9990, #8089 ) ; +#1178 = EDGE_LOOP ( 'NONE', ( #17690, #3382, #15488, #8584 ) ) ; +#1179 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.6649305555555491400 ) ) ; +#1180 = ORIENTED_EDGE ( 'NONE', *, *, #17114, .T. ) ; +#1181 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.3229166666666573600 ) ) ; +#1182 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.475694444444444600 ) ) ; +#1183 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.9861111111111072700 ) ) ; +#1184 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1185 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.1250000000000124600 ) ) ; +#1186 = EDGE_CURVE ( 'NONE', #18582, #5258, #9141, .T. ) ; +#1187 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.8194444444444393100 ) ) ; +#1188 = VERTEX_POINT ( 'NONE', #10122 ) ; +#1189 = ORIENTED_EDGE ( 'NONE', *, *, #2917, .F. ) ; +#1190 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.4861111111111034400 ) ) ; +#1191 = ORIENTED_EDGE ( 'NONE', *, *, #11663, .F. ) ; +#1192 = LINE ( 'NONE', #8572, #5782 ) ; +#1193 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.020833333333329500 ) ) ; +#1194 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.05208333333332212900 ) ) ; +#1195 = EDGE_LOOP ( 'NONE', ( #50, #6580, #4998, #6617 ) ) ; +#1196 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1197 = CARTESIAN_POINT ( 'NONE', ( -0.1902446754468737100, -0.2067943897618121400, 0.09501858096624922500 ) ) ; +#1198 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1199 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.168402777777775500 ) ) ; +#1200 = EDGE_CURVE ( 'NONE', #13616, #11586, #11899, .T. ) ; +#1201 = ORIENTED_EDGE ( 'NONE', *, *, #6503, .T. ) ; +#1202 = ORIENTED_EDGE ( 'NONE', *, *, #5951, .T. ) ; +#1203 = EDGE_CURVE ( 'NONE', #10186, #11445, #8916, .T. ) ; +#1204 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.020833333333329700 ) ) ; +#1205 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.288194444444443100 ) ) ; +#1206 = VERTEX_POINT ( 'NONE', #4194 ) ; +#1207 = EDGE_CURVE ( 'NONE', #437, #6237, #16970, .T. ) ; +#1208 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.552083333333333900 ) ) ; +#1209 = FACE_OUTER_BOUND ( 'NONE', #8302, .T. ) ; +#1210 = ADVANCED_FACE ( 'NONE', ( #1297 ), #13498, .F. ) ; +#1211 = ORIENTED_EDGE ( 'NONE', *, *, #10966, .F. ) ; +#1212 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.1006944444444334400 ) ) ; +#1213 = ORIENTED_EDGE ( 'NONE', *, *, #16631, .F. ) ; +#1214 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#1215 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1216 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.123263888888886400 ) ) ; +#1217 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.479166666666666300 ) ) ; +#1218 = CARTESIAN_POINT ( 'NONE', ( 0.4418741004648792400, -0.1314551491986520900, 1.440511179676401600 ) ) ; +#1219 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.6597222222222155500 ) ) ; +#1220 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, 0.1753472222222355900 ) ) ; +#1221 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.298611111111109400 ) ) ; +#1222 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.260416666666665400 ) ) ; +#1223 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1224 = ORIENTED_EDGE ( 'NONE', *, *, #18952, .T. ) ; +#1225 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.6631944444444380900 ) ) ; +#1226 = CIRCLE ( 'NONE', #8130, 0.4687475818742555300 ) ; +#1227 = EDGE_LOOP ( 'NONE', ( #3655, #5007, #657, #16102 ) ) ; +#1228 = EDGE_CURVE ( 'NONE', #4838, #4587, #3366, .T. ) ; +#1229 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676385400 ) ) ; +#1230 = DIRECTION ( 'NONE', ( 1.000000000000000000, 2.042810365310288000E-014, 0.0000000000000000000 ) ) ; +#1231 = ORIENTED_EDGE ( 'NONE', *, *, #15120, .T. ) ; +#1232 = CARTESIAN_POINT ( 'NONE', ( 0.4347510546871043400, 0.1533776299234556600, 1.590985962198545400 ) ) ; +#1233 = CYLINDRICAL_SURFACE ( 'NONE', #586, 0.3125000000000008300 ) ; +#1234 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.336805555555554500 ) ) ; +#1235 = AXIS2_PLACEMENT_3D ( 'NONE', #7092, #4443, #13205 ) ; +#1236 = EDGE_LOOP ( 'NONE', ( #7793, #10189, #12945, #18391 ) ) ; +#1237 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.5295138888888815100 ) ) ; +#1238 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.06249999999998847400 ) ) ; +#1239 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.3090277777777681900 ) ) ; +#1240 = ORIENTED_EDGE ( 'NONE', *, *, #190, .T. ) ; +#1241 = CARTESIAN_POINT ( 'NONE', ( -0.4420471124163802800, -0.1559516364272580100, 1.484375000000000200 ) ) ; +#1242 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, 0.06597222222223454700 ) ) ; +#1243 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1244 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.1562500000000128800 ) ) ; +#1245 = ORIENTED_EDGE ( 'NONE', *, *, #19083, .F. ) ; +#1246 = CARTESIAN_POINT ( 'NONE', ( -8.435865690748578500E-017, -5.812444888836014700E-017, 3.802149639073315200 ) ) ; +#1247 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#1248 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.04166666666665525700 ) ) ; +#1249 = ORIENTED_EDGE ( 'NONE', *, *, #1288, .F. ) ; +#1250 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.3333333333333244900 ) ) ; +#1251 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1252 = VECTOR ( 'NONE', #11582, 39.37007874015748100 ) ; +#1253 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.8819444444444395300 ) ) ; +#1254 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.006944444444456064100 ) ) ; +#1255 = EDGE_CURVE ( 'NONE', #3978, #18888, #4285, .T. ) ; +#1256 = CARTESIAN_POINT ( 'NONE', ( 0.1902356091522027200, -0.2127064679143948800, 0.1058182616641624200 ) ) ; +#1257 = CARTESIAN_POINT ( 'NONE', ( 0.4219140922835721300, -0.1858000959230524700, 1.592116737595687700 ) ) ; +#1258 = DIRECTION ( 'NONE', ( -0.6661089358369403100, -0.7458544667682689400, 0.0000000000000000000 ) ) ; +#1259 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#1260 = VECTOR ( 'NONE', #10507, 39.37007874015748900 ) ; +#1261 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.9496527777777735700 ) ) ; +#1262 = CARTESIAN_POINT ( 'NONE', ( -0.3238882248697022000, -0.3280694967582925000, 1.593467001493433100 ) ) ; +#1263 = ADVANCED_FACE ( 'NONE', ( #8211 ), #12361, .T. ) ; +#1264 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.249999999999998400 ) ) ; +#1265 = AXIS2_PLACEMENT_3D ( 'NONE', #2872, #14910, #16917 ) ; +#1266 = LINE ( 'NONE', #9927, #10023 ) ; +#1267 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.583333333333334400 ) ) ; +#1268 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#1269 = CARTESIAN_POINT ( 'NONE', ( 0.4347510546871075600, -0.1533776299234465600, 1.143750000000000000 ) ) ; +#1270 = DIRECTION ( 'NONE', ( -0.03782022621435544200, 0.9992845593168620000, 0.0000000000000000000 ) ) ; +#1271 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.130208333333330600 ) ) ; +#1272 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.402777777777777000 ) ) ; +#1273 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1274 = DIRECTION ( 'NONE', ( -0.7289686274214204300, 0.6845471059286792900, 0.0000000000000000000 ) ) ; +#1275 = VECTOR ( 'NONE', #12585, 39.37007874015748900 ) ; +#1276 = ORIENTED_EDGE ( 'NONE', *, *, #5737, .T. ) ; +#1277 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, 0.1163194444444571300 ) ) ; +#1278 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#1279 = EDGE_CURVE ( 'NONE', #4406, #18596, #7754, .T. ) ; +#1280 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.086805555555552000 ) ) ; +#1281 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1282 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#1283 = FACE_OUTER_BOUND ( 'NONE', #11782, .T. ) ; +#1284 = ORIENTED_EDGE ( 'NONE', *, *, #6213, .F. ) ; +#1285 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.6666666666666604100 ) ) ; +#1286 = FACE_OUTER_BOUND ( 'NONE', #14706, .T. ) ; +#1287 = DIRECTION ( 'NONE', ( -0.7543368200092270800, 0.6564875946873380800, 0.0000000000000000000 ) ) ; +#1288 = EDGE_CURVE ( 'NONE', #7787, #924, #14888, .T. ) ; +#1289 = DIRECTION ( 'NONE', ( -0.8660254037844384900, 0.5000000000000002200, 0.0000000000000000000 ) ) ; +#1290 = AXIS2_PLACEMENT_3D ( 'NONE', #11747, #10214, #1198 ) ; +#1291 = DIRECTION ( 'NONE', ( 0.2728267384564680400, 0.9620631844027740500, -0.0000000000000000000 ) ) ; +#1292 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -1.340277777777776800 ) ) ; +#1293 = DIRECTION ( 'NONE', ( 0.8938997675281747900, 0.4482668910516087200, 0.0000000000000000000 ) ) ; +#1294 = VECTOR ( 'NONE', #1848, 39.37007874015748900 ) ; +#1295 = EDGE_LOOP ( 'NONE', ( #1158, #13031, #1612, #11181 ) ) ; +#1296 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.5850694444444373100 ) ) ; +#1297 = FACE_OUTER_BOUND ( 'NONE', #9527, .T. ) ; +#1298 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.05555555555556792500 ) ) ; +#1299 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.3333333333333239300 ) ) ; +#1300 = CARTESIAN_POINT ( 'NONE', ( 0.2935294462636828200, -0.03766954131514976100, 0.1348302185411321400 ) ) ; +#1301 = ADVANCED_FACE ( 'NONE', ( #11215 ), #9668, .F. ) ; +#1302 = ORIENTED_EDGE ( 'NONE', *, *, #18408, .F. ) ; +#1303 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#1304 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.2118055555555687400 ) ) ; +#1305 = FACE_OUTER_BOUND ( 'NONE', #18525, .T. ) ; +#1306 = CARTESIAN_POINT ( 'NONE', ( -0.2779656958432172300, 0.01934962074860523800, 0.08850395853013498500 ) ) ; +#1307 = CARTESIAN_POINT ( 'NONE', ( 0.4289925051334564900, -0.1889172465718332300, 1.143750000000000000 ) ) ; +#1308 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.493055555555555800 ) ) ; +#1309 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.4618055555555476400 ) ) ; +#1310 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1311 = ORIENTED_EDGE ( 'NONE', *, *, #9666, .T. ) ; +#1312 = FACE_OUTER_BOUND ( 'NONE', #4750, .T. ) ; +#1313 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.8854166666666616300 ) ) ; +#1314 = EDGE_CURVE ( 'NONE', #1856, #4557, #7063, .T. ) ; +#1315 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.02777777777778956200 ) ) ; +#1316 = EDGE_CURVE ( 'NONE', #854, #3024, #4977, .T. ) ; +#1317 = VECTOR ( 'NONE', #7534, 39.37007874015748100 ) ; +#1318 = CIRCLE ( 'NONE', #4471, 0.4610132068742565100 ) ; +#1319 = VERTEX_POINT ( 'NONE', #5271 ) ; +#1320 = DIRECTION ( 'NONE', ( -0.4482668910515967800, -0.8938997675281809000, 0.0000000000000000000 ) ) ; +#1321 = VERTEX_POINT ( 'NONE', #17000 ) ; +#1322 = CYLINDRICAL_SURFACE ( 'NONE', #5692, 0.3125000000000008300 ) ; +#1323 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.8732638888888841800 ) ) ; +#1324 = CARTESIAN_POINT ( 'NONE', ( -0.4581049985510740100, 0.09931820485430771500, 1.143750000000000000 ) ) ; +#1325 = CARTESIAN_POINT ( 'NONE', ( -0.3535935602980426200, 0.3077269725401377600, 1.143750000000000000 ) ) ; +#1326 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.006944444444440900 ) ) ; +#1327 = ORIENTED_EDGE ( 'NONE', *, *, #9533, .F. ) ; +#1328 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.454861111111111200 ) ) ; +#1329 = CARTESIAN_POINT ( 'NONE', ( 0.1278875336514661300, 0.4509671176888007100, 1.484375000000000200 ) ) ; +#1330 = LINE ( 'NONE', #9708, #11690 ) ; +#1331 = CARTESIAN_POINT ( 'NONE', ( 0.4606833792705947200, 0.01743562377179322000, 1.143750000000000000 ) ) ; +#1332 = CYLINDRICAL_SURFACE ( 'NONE', #1638, 0.4610132068742565100 ) ; +#1333 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.590308733529502700 ) ) ; +#1334 = LINE ( 'NONE', #13505, #18404 ) ; +#1335 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1336 = ORIENTED_EDGE ( 'NONE', *, *, #10910, .F. ) ; +#1337 = EDGE_CURVE ( 'NONE', #4197, #7662, #15114, .T. ) ; +#1338 = VECTOR ( 'NONE', #11133, 39.37007874015748100 ) ; +#1339 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.9600694444444402000 ) ) ; +#1340 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.482638888888888600 ) ) ; +#1341 = CARTESIAN_POINT ( 'NONE', ( -0.04349090697847207000, -0.2729727632078031200, -1.556917725157686000 ) ) ; +#1342 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, 0.03645833333334543700 ) ) ; +#1343 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#1344 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.288194444444442900 ) ) ; +#1345 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#1346 = CARTESIAN_POINT ( 'NONE', ( -0.04544730410608890900, -0.2958259049868948700, 0.1452918252306424900 ) ) ; +#1347 = EDGE_CURVE ( 'NONE', #6983, #5219, #7285, .T. ) ; +#1348 = AXIS2_PLACEMENT_3D ( 'NONE', #4058, #8377, #851 ) ; +#1349 = ORIENTED_EDGE ( 'NONE', *, *, #3179, .T. ) ; +#1350 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.5798611111111042800 ) ) ; +#1351 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #16465, #10737, #9194, #13702, #765, #12482, #9386, #9528, #15296 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5681818181818182300, 0.5719696969696970200, 0.5757575757575758000, 0.5795454545454545900, 0.5833333333333333700 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1352 = ORIENTED_EDGE ( 'NONE', *, *, #5576, .T. ) ; +#1353 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, -0.1443375672974061300, 1.272329099369260000 ) ) ; +#1354 = VERTEX_POINT ( 'NONE', #6628 ) ; +#1355 = EDGE_LOOP ( 'NONE', ( #13176, #7562, #15918, #16796 ) ) ; +#1356 = FACE_OUTER_BOUND ( 'NONE', #4228, .T. ) ; +#1357 = CARTESIAN_POINT ( 'NONE', ( -0.2615678826637217700, -0.3796253675287039600, 1.143750000000000000 ) ) ; +#1358 = FACE_OUTER_BOUND ( 'NONE', #4579, .T. ) ; +#1359 = CYLINDRICAL_SURFACE ( 'NONE', #1711, 0.4610132068742565100 ) ; +#1360 = ORIENTED_EDGE ( 'NONE', *, *, #9354, .T. ) ; +#1361 = FACE_OUTER_BOUND ( 'NONE', #19090, .T. ) ; +#1362 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.7847222222222165500 ) ) ; +#1363 = ADVANCED_FACE ( 'NONE', ( #18804 ), #11214, .F. ) ; +#1364 = ORIENTED_EDGE ( 'NONE', *, *, #4023, .F. ) ; +#1365 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.4913194444444365900 ) ) ; +#1366 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1367 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.1909722222222117700 ) ) ; +#1368 = DIRECTION ( 'NONE', ( 0.3447650836343141300, -0.9386889991400901900, 0.0000000000000000000 ) ) ; +#1369 = EDGE_CURVE ( 'NONE', #12963, #9539, #11442, .T. ) ; +#1370 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#1371 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#1372 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.447916666666666100 ) ) ; +#1373 = ORIENTED_EDGE ( 'NONE', *, *, #13039, .F. ) ; +#1374 = EDGE_LOOP ( 'NONE', ( #12865, #16439, #14565, #12453 ) ) ; +#1375 = CARTESIAN_POINT ( 'NONE', ( -0.2122061761185479700, 0.1787384452178667200, 0.08384792914097122200 ) ) ; +#1376 = CARTESIAN_POINT ( 'NONE', ( -1.701049959622476300E-016, -1.679369942286119200E-016, -1.174024639073296000 ) ) ; +#1377 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.506944444444445100 ) ) ; +#1378 = ORIENTED_EDGE ( 'NONE', *, *, #14368, .T. ) ; +#1379 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.4826388888888810700 ) ) ; +#1380 = LINE ( 'NONE', #5710, #4364 ) ; +#1381 = VECTOR ( 'NONE', #7711, 39.37007874015748100 ) ; +#1382 = ORIENTED_EDGE ( 'NONE', *, *, #3653, .F. ) ; +#1383 = ORIENTED_EDGE ( 'NONE', *, *, #2086, .T. ) ; +#1384 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1385 = LINE ( 'NONE', #12131, #19126 ) ; +#1386 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.7256944444444382000 ) ) ; +#1387 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1388 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#1389 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#1390 = ORIENTED_EDGE ( 'NONE', *, *, #10279, .T. ) ; +#1391 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.019097222222218500 ) ) ; +#1392 = CARTESIAN_POINT ( 'NONE', ( -0.2802162586133528100, 0.3660765293230648900, 1.593193105402742800 ) ) ; +#1393 = VERTEX_POINT ( 'NONE', #3858 ) ; +#1394 = ORIENTED_EDGE ( 'NONE', *, *, #15624, .F. ) ; +#1395 = VECTOR ( 'NONE', #3718, 39.37007874015748100 ) ; +#1396 = VECTOR ( 'NONE', #11783, 39.37007874015748100 ) ; +#1397 = CARTESIAN_POINT ( 'NONE', ( 0.3122385636735653400, 0.3496192812976260400, 1.143750000000000000 ) ) ; +#1398 = VERTEX_POINT ( 'NONE', #17077 ) ; +#1399 = ORIENTED_EDGE ( 'NONE', *, *, #11195, .T. ) ; +#1400 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.111111111111108300 ) ) ; +#1401 = EDGE_CURVE ( 'NONE', #7555, #546, #9602, .T. ) ; +#1402 = CIRCLE ( 'NONE', #10693, 0.4687475818742555300 ) ; +#1403 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.211805555555553800 ) ) ; +#1404 = ADVANCED_FACE ( 'NONE', ( #12823 ), #153, .T. ) ; +#1405 = CARTESIAN_POINT ( 'NONE', ( -0.3829490853735665900, -0.2566771803726130600, 1.592921120922338200 ) ) ; +#1406 = PLANE ( 'NONE', #5525 ) ; +#1407 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#1408 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.4722222222222141100 ) ) ; +#1409 = VERTEX_POINT ( 'NONE', #13978 ) ; +#1410 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.9322916666666621900 ) ) ; +#1411 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.184027777777775500 ) ) ; +#1412 = ORIENTED_EDGE ( 'NONE', *, *, #7194, .F. ) ; +#1413 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1414 = CARTESIAN_POINT ( 'NONE', ( 0.4581049985510747800, -0.09931820485430474500, 1.143750000000000000 ) ) ; +#1415 = CARTESIAN_POINT ( 'NONE', ( -6.330667745976217100E-017, 8.054253002492614200E-017, 3.802149639073289000 ) ) ; +#1416 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.246527777777775700 ) ) ; +#1417 = CARTESIAN_POINT ( 'NONE', ( -0.2992921959121974100, -1.191649978057174000E-012, -1.534041137421136900 ) ) ; +#1418 = AXIS2_PLACEMENT_3D ( 'NONE', #9303, #13742, #10918 ) ; +#1419 = ORIENTED_EDGE ( 'NONE', *, *, #10939, .F. ) ; +#1420 = FACE_OUTER_BOUND ( 'NONE', #2538, .T. ) ; +#1421 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.3611111111111024500 ) ) ; +#1422 = ORIENTED_EDGE ( 'NONE', *, *, #19112, .F. ) ; +#1423 = PLANE ( 'NONE', #14174 ) ; +#1424 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995600, 0.1443375672974061000, -1.562539370078740200 ) ) ; +#1425 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1426 = ORIENTED_EDGE ( 'NONE', *, *, #3993, .T. ) ; +#1427 = ORIENTED_EDGE ( 'NONE', *, *, #7387, .T. ) ; +#1428 = CARTESIAN_POINT ( 'NONE', ( -0.2697123247204267800, 0.1552930547717329700, 0.1769666091382028900 ) ) ; +#1429 = ORIENTED_EDGE ( 'NONE', *, *, #17500, .T. ) ; +#1430 = DIRECTION ( 'NONE', ( 0.9744976787610163400, -0.2243975804000369900, -0.0000000000000000000 ) ) ; +#1431 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.05902777777779021800 ) ) ; +#1432 = FACE_OUTER_BOUND ( 'NONE', #315, .T. ) ; +#1433 = EDGE_CURVE ( 'NONE', #6068, #8502, #1530, .T. ) ; +#1434 = VERTEX_POINT ( 'NONE', #15378 ) ; +#1435 = DIRECTION ( 'NONE', ( -0.1873813145857356200, 0.9822872507286866100, 0.0000000000000000000 ) ) ; +#1436 = DIRECTION ( 'NONE', ( 0.1729787697315211000, 0.01523268949379647300, -0.9848077530122083500 ) ) ; +#1437 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.361111111111110100 ) ) ; +#1438 = EDGE_CURVE ( 'NONE', #6878, #4820, #14422, .T. ) ; +#1439 = CARTESIAN_POINT ( 'NONE', ( -0.2295515505518932200, 0.1554274364885450100, 0.08461243106133177500 ) ) ; +#1440 = ORIENTED_EDGE ( 'NONE', *, *, #16110, .F. ) ; +#1441 = CARTESIAN_POINT ( 'NONE', ( 0.1834002693415811600, 0.4313825491433734800, 1.591590229135180200 ) ) ; +#1442 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.524305555555556000 ) ) ; +#1443 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.4374999999999920100 ) ) ; +#1444 = CARTESIAN_POINT ( 'NONE', ( 0.2870060261404283100, 0.07854998081675163000, 0.1391650802716855000 ) ) ; +#1445 = ORIENTED_EDGE ( 'NONE', *, *, #12739, .T. ) ; +#1446 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.8993055555555509200 ) ) ; +#1447 = CARTESIAN_POINT ( 'NONE', ( -1.569246278610595900E-016, 1.803141837253106300E-016, -1.174024639073252700 ) ) ; +#1448 = VERTEX_POINT ( 'NONE', #13922 ) ; +#1449 = CARTESIAN_POINT ( 'NONE', ( -0.04104193570986981700, -0.2649795619646557200, 1.535746377707105900 ) ) ; +#1450 = ORIENTED_EDGE ( 'NONE', *, *, #4154, .F. ) ; +#1451 = CARTESIAN_POINT ( 'NONE', ( 0.3070850166377861500, 0.3438487595863285500, 1.593467001493433100 ) ) ; +#1452 = APPROVAL_ROLE ( '' ) ; +#1453 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.9045138888888844000 ) ) ; +#1454 = ORIENTED_EDGE ( 'NONE', *, *, #7749, .F. ) ; +#1455 = EDGE_CURVE ( 'NONE', #9361, #9233, #16025, .T. ) ; +#1456 = ADVANCED_FACE ( 'NONE', ( #616 ), #4516, .T. ) ; +#1457 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.7083333333333271500 ) ) ; +#1458 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.163194444444442200 ) ) ; +#1459 = EDGE_CURVE ( 'NONE', #12666, #3630, #14800, .T. ) ; +#1460 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.329861111111110100 ) ) ; +#1461 = ORIENTED_EDGE ( 'NONE', *, *, #12237, .T. ) ; +#1462 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.2847222222222126600 ) ) ; +#1463 = AXIS2_PLACEMENT_3D ( 'NONE', #9595, #578, #14044 ) ; +#1464 = VERTEX_POINT ( 'NONE', #2440 ) ; +#1465 = CARTESIAN_POINT ( 'NONE', ( 0.4505462270817887600, -0.09767944602039578500, 1.589564174286821600 ) ) ; +#1466 = CARTESIAN_POINT ( 'NONE', ( -0.2295644402768617900, -0.1561360432046004800, 1.265517246128202500 ) ) ; +#1467 = ORIENTED_EDGE ( 'NONE', *, *, #7515, .F. ) ; +#1468 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.9704861111111069400 ) ) ; +#1469 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.131944444444441500 ) ) ; +#1470 = PLANE ( 'NONE', #17853 ) ; +#1471 = DIRECTION ( 'NONE', ( 0.09852382856602051600, 0.1429921145089370600, -0.9848077530122091300 ) ) ; +#1472 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.8680555555555504700 ) ) ; +#1473 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#1474 = VECTOR ( 'NONE', #18162, 39.37007874015748900 ) ; +#1475 = ORIENTED_EDGE ( 'NONE', *, *, #9328, .T. ) ; +#1476 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.3576388888888801800 ) ) ; +#1477 = ADVANCED_FACE ( 'NONE', ( #3150 ), #13004, .F. ) ; +#1478 = ORIENTED_EDGE ( 'NONE', *, *, #7752, .F. ) ; +#1479 = EDGE_CURVE ( 'NONE', #16576, #3485, #17422, .T. ) ; +#1480 = DIRECTION ( 'NONE', ( 0.3420201433256694300, -4.188538737677000400E-017, 0.9396926207859080900 ) ) ; +#1481 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #5106, #9313, #2172, #3637, #16776, #12393, #9518, #8092, #6410 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5227272727272727100, 0.5265151515151514900, 0.5303030303030302800, 0.5340909090909090600, 0.5378787878787878500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1482 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#1483 = LINE ( 'NONE', #4576, #2865 ) ; +#1484 = ORIENTED_EDGE ( 'NONE', *, *, #18914, .T. ) ; +#1485 = AXIS2_PLACEMENT_3D ( 'NONE', #1791, #10628, #16934 ) ; +#1486 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.2465277777777679600 ) ) ; +#1487 = VECTOR ( 'NONE', #9341, 39.37007874015748100 ) ; +#1488 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.1145833333333223500 ) ) ; +#1489 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.07638888888890142700 ) ) ; +#1490 = CARTESIAN_POINT ( 'NONE', ( -0.04217778839514731800, -0.2859113794460144700, 0.1170318447466513100 ) ) ; +#1491 = PLANE ( 'NONE', #710 ) ; +#1492 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#1493 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.267361111111109200 ) ) ; +#1494 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.309027777777776600 ) ) ; +#1495 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.2499999999999905100 ) ) ; +#1496 = FACE_OUTER_BOUND ( 'NONE', #11381, .T. ) ; +#1497 = ORIENTED_EDGE ( 'NONE', *, *, #3048, .T. ) ; +#1498 = CARTESIAN_POINT ( 'NONE', ( 0.004713337776626155500, 0.3022947356910770700, 0.1536268073636479200 ) ) ; +#1499 = LINE ( 'NONE', #14340, #14173 ) ; +#1500 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.8784722222222171000 ) ) ; +#1501 = EDGE_CURVE ( 'NONE', #3923, #18346, #17645, .T. ) ; +#1502 = LINE ( 'NONE', #6830, #10492 ) ; +#1503 = CARTESIAN_POINT ( 'NONE', ( -5.138489171004225700E-018, 0.2886751345948123700, 1.272329099369260400 ) ) ; +#1504 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.159722222222219700 ) ) ; +#1505 = DATE_TIME_ROLE ( 'classification_date' ) ; +#1506 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.7795138888888834000 ) ) ; +#1507 = DIRECTION ( 'NONE', ( 0.9992845593168618900, 0.03782022621435543500, -0.0000000000000000000 ) ) ; +#1508 = CIRCLE ( 'NONE', #12071, 0.4687499999999995600 ) ; +#1509 = ORIENTED_EDGE ( 'NONE', *, *, #5874, .F. ) ; +#1510 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1511 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.020833333333329900 ) ) ; +#1512 = VECTOR ( 'NONE', #9044, 39.37007874015748100 ) ; +#1513 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.260416666666665000 ) ) ; +#1514 = ORIENTED_EDGE ( 'NONE', *, *, #18626, .T. ) ; +#1515 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.3784722222222133800 ) ) ; +#1516 = LINE ( 'NONE', #6159, #6136 ) ; +#1517 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1518 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.121527777777774600 ) ) ; +#1519 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.3680555555555466400 ) ) ; +#1520 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.7725694444444386500 ) ) ; +#1521 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.222222222222219900 ) ) ; +#1522 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676402700 ) ) ; +#1523 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#1524 = CARTESIAN_POINT ( 'NONE', ( -0.2708333333333339300, -5.132020812559451100E-016, -1.562500000000000000 ) ) ; +#1525 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1526 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.072916666666663200 ) ) ; +#1527 = CARTESIAN_POINT ( 'NONE', ( 0.3014999136726728700, -0.03899650972942719800, 0.1569451320681308200 ) ) ; +#1528 = CYLINDRICAL_SURFACE ( 'NONE', #9362, 0.3125000000000008300 ) ; +#1529 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.3958333333333249900 ) ) ; +#1530 = LINE ( 'NONE', #18428, #1075 ) ; +#1531 = CIRCLE ( 'NONE', #12506, 0.4687499999999995600 ) ; +#1532 = VERTEX_POINT ( 'NONE', #6892 ) ; +#1533 = ORIENTED_EDGE ( 'NONE', *, *, #7978, .T. ) ; +#1534 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#1536 = EDGE_CURVE ( 'NONE', #4630, #3723, #14865, .T. ) ; +#1535 = CIRCLE ( 'NONE', #12274, 0.4687499999999995600 ) ; +#1537 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#1538 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.3263888888888796200 ) ) ; +#1539 = AXIS2_PLACEMENT_3D ( 'NONE', #12057, #6122, #9158 ) ; +#1540 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.1458333333333224600 ) ) ; +#1541 = EDGE_LOOP ( 'NONE', ( #3059, #14138, #636, #13330 ) ) ; +#1542 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.03472222222223442900 ) ) ; +#1543 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.08333333333334601300 ) ) ; +#1544 = CARTESIAN_POINT ( 'NONE', ( 0.1499591338225064200, -0.2508588978987486600, 0.1246985157584728400 ) ) ; +#1545 = DIRECTION ( 'NONE', ( -0.9386889991400903000, -0.3447650836343141800, 0.0000000000000000000 ) ) ; +#1546 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.3263888888888796200 ) ) ; +#1547 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#1548 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.479166666666666300 ) ) ; +#1549 = VECTOR ( 'NONE', #11147, 39.37007874015748100 ) ; +#1550 = CARTESIAN_POINT ( 'NONE', ( 0.2321251145655920700, -0.3983103163368943400, 1.143750000000000000 ) ) ; +#1551 = VECTOR ( 'NONE', #3896, 39.37007874015747400 ) ; +#1552 = FACE_OUTER_BOUND ( 'NONE', #2799, .T. ) ; +#1553 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.458333333333333500 ) ) ; +#1554 = VERTEX_POINT ( 'NONE', #4179 ) ; +#1555 = FACE_OUTER_BOUND ( 'NONE', #12204, .T. ) ; +#1556 = CYLINDRICAL_SURFACE ( 'NONE', #9680, 0.4610132068742565100 ) ; +#1557 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.1527777777777673300 ) ) ; +#1558 = ORIENTED_EDGE ( 'NONE', *, *, #17216, .F. ) ; +#1559 = EDGE_CURVE ( 'NONE', #5892, #5457, #10280, .T. ) ; +#1560 = CARTESIAN_POINT ( 'NONE', ( 0.1034502481550510900, -0.4492562999771337900, 1.187613820323596900 ) ) ; +#1561 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.4791666666666584100 ) ) ; +#1562 = EDGE_CURVE ( 'NONE', #11882, #16372, #18793, .T. ) ; +#1563 = VERTEX_POINT ( 'NONE', #15696 ) ; +#1564 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.4930555555555476400 ) ) ; +#1565 = EDGE_CURVE ( 'NONE', #18485, #14728, #3130, .T. ) ; +#1566 = ADVANCED_FACE ( 'NONE', ( #12810 ), #14645, .T. ) ; +#1567 = ORIENTED_EDGE ( 'NONE', *, *, #14764, .T. ) ; +#1568 = AXIS2_PLACEMENT_3D ( 'NONE', #4462, #11867, #13164 ) ; +#1569 = CARTESIAN_POINT ( 'NONE', ( 0.2659575542964012200, 0.3859962976670584500, 1.484375000000000200 ) ) ; +#1570 = ORIENTED_EDGE ( 'NONE', *, *, #5029, .F. ) ; +#1571 = ORIENTED_EDGE ( 'NONE', *, *, #475, .F. ) ; +#1572 = VECTOR ( 'NONE', #6421, 39.37007874015748100 ) ; +#1573 =( NAMED_UNIT ( * ) SI_UNIT ( $, .STERADIAN. ) SOLID_ANGLE_UNIT ( ) ); +#1575 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.7760416666666610800 ) ) ; +#1574 = CYLINDRICAL_SURFACE ( 'NONE', #4075, 0.4687500000000000000 ) ; +#1576 = LINE ( 'NONE', #2491, #3192 ) ; +#1577 = EDGE_LOOP ( 'NONE', ( #13552, #3032, #2018, #10187 ) ) ; +#1578 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323600600 ) ) ; +#1579 = CARTESIAN_POINT ( 'NONE', ( 0.2683187228942912100, -0.1409531751920535800, -1.530996882309827200 ) ) ; +#1580 = VECTOR ( 'NONE', #6348, 39.37007874015748100 ) ; +#1581 = PLANE ( 'NONE', #18742 ) ; +#1582 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.8680555555555508100 ) ) ; +#1583 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.354166666666665900 ) ) ; +#1584 = ADVANCED_FACE ( 'NONE', ( #1283 ), #978, .F. ) ; +#1585 = ORIENTED_EDGE ( 'NONE', *, *, #16663, .T. ) ; +#1586 = EDGE_LOOP ( 'NONE', ( #1373, #3866 ) ) ; +#1587 = DIRECTION ( 'NONE', ( 0.9386889991400927400, 0.3447650836343075200, 0.0000000000000000000 ) ) ; +#1588 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#1589 = CARTESIAN_POINT ( 'NONE', ( 0.2321251145655835700, 0.3983103163368992800, 1.187613820323601700 ) ) ; +#1590 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#1591 = EDGE_CURVE ( 'NONE', #17719, #4452, #5182, .T. ) ; +#1592 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.9184027777777731300 ) ) ; +#1593 = VERTEX_POINT ( 'NONE', #4302 ) ; +#1594 = ORIENTED_EDGE ( 'NONE', *, *, #1012, .F. ) ; +#1595 = FACE_OUTER_BOUND ( 'NONE', #2862, .T. ) ; +#1596 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1597 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.8611111111111062800 ) ) ; +#1598 = CIRCLE ( 'NONE', #16021, 0.4610132068742565100 ) ; +#1599 = DIRECTION ( 'NONE', ( -0.4596954355469803900, 0.8880766332571035100, 0.0000000000000000000 ) ) ; +#1600 = ORIENTED_EDGE ( 'NONE', *, *, #5184, .T. ) ; +#1601 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#1602 = ORIENTED_EDGE ( 'NONE', *, *, #10857, .F. ) ; +#1603 = CARTESIAN_POINT ( 'NONE', ( -0.4592360163321193000, -0.04044079890273683000, 1.143750000000000000 ) ) ; +#1604 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.9201388888888841800 ) ) ; +#1605 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#1606 = AXIS2_PLACEMENT_3D ( 'NONE', #14784, #1517, #16459 ) ; +#1607 = ORIENTED_EDGE ( 'NONE', *, *, #7018, .F. ) ; +#1608 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.3923611111111027200 ) ) ; +#1609 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#1610 = VERTEX_POINT ( 'NONE', #9846 ) ; +#1611 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.4114583333333248800 ) ) ; +#1612 = ORIENTED_EDGE ( 'NONE', *, *, #6277, .F. ) ; +#1613 = LINE ( 'NONE', #13850, #16119 ) ; +#1614 = LINE ( 'NONE', #17498, #18896 ) ; +#1615 = VERTEX_POINT ( 'NONE', #11643 ) ; +#1616 = CARTESIAN_POINT ( 'NONE', ( -0.2786814634324647500, 0.1389438100503686800, 0.1774142797044196100 ) ) ; +#1617 = ORIENTED_EDGE ( 'NONE', *, *, #7635, .T. ) ; +#1618 = LINE ( 'NONE', #11624, #5307 ) ; +#1619 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.02430555555554378100 ) ) ; +#1620 = CARTESIAN_POINT ( 'NONE', ( -0.1257767296168636200, 0.4435238338571811400, 1.484375000000000200 ) ) ; +#1621 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.05902777777776618100 ) ) ; +#1622 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.4843749999999920100 ) ) ; +#1623 = EDGE_CURVE ( 'NONE', #18087, #11519, #7048, .T. ) ; +#1624 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#1625 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.413194444444443800 ) ) ; +#1626 = PLANE ( 'NONE', #18957 ) ; +#1627 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.159722222222219700 ) ) ; +#1628 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.263888888888887300 ) ) ; +#1629 = ORIENTED_EDGE ( 'NONE', *, *, #5987, .F. ) ; +#1630 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.1493055555555453100 ) ) ; +#1631 = CARTESIAN_POINT ( 'NONE', ( 0.2955938782698850900, 0.01987303402773475300, 0.1369299496509682700 ) ) ; +#1632 = ORIENTED_EDGE ( 'NONE', *, *, #792, .T. ) ; +#1633 = ORIENTED_EDGE ( 'NONE', *, *, #16245, .F. ) ; +#1634 = LINE ( 'NONE', #325, #2774 ) ; +#1635 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.5034722222222142200 ) ) ; +#1636 = ORIENTED_EDGE ( 'NONE', *, *, #10990, .T. ) ; +#1637 = VERTEX_POINT ( 'NONE', #7332 ) ; +#1638 = AXIS2_PLACEMENT_3D ( 'NONE', #1841, #3267, #615 ) ; +#1639 = CARTESIAN_POINT ( 'NONE', ( -0.006237958729457821400, 0.3084380793583573200, 0.1694660156314370700 ) ) ; +#1640 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1641 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#1642 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.7447916666666608600 ) ) ; +#1643 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1644 = CARTESIAN_POINT ( 'NONE', ( 0.3074925690534308600, -0.04264762282066872400, -1.523616654887541600 ) ) ; +#1645 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995800, 0.1210017406316850600, 1.541442847745758900 ) ) ; +#1646 = VERTEX_POINT ( 'NONE', #13322 ) ; +#1647 = ORIENTED_EDGE ( 'NONE', *, *, #9586, .F. ) ; +#1648 = DIRECTION ( 'NONE', ( 0.3090169943749382900, 0.9510565162951565300, 0.0000000000000000000 ) ) ; +#1649 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.8923611111111066100 ) ) ; +#1650 = EDGE_CURVE ( 'NONE', #1172, #8134, #8896, .T. ) ; +#1651 = VERTEX_POINT ( 'NONE', #14795 ) ; +#1652 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.288194444444443100 ) ) ; +#1653 = FACE_OUTER_BOUND ( 'NONE', #15640, .T. ) ; +#1654 = ORIENTED_EDGE ( 'NONE', *, *, #16773, .F. ) ; +#1655 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.1666666666666562500 ) ) ; +#1656 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1657 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.529513888888889100 ) ) ; +#1658 = CARTESIAN_POINT ( 'NONE', ( 0.4347510546871043400, 0.1533776299234556600, 1.187613820323601700 ) ) ; +#1659 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.7204861111111049400 ) ) ; +#1660 = EDGE_CURVE ( 'NONE', #13815, #15306, #8428, .T. ) ; +#1661 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1662 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.6319444444444376500 ) ) ; +#1663 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.149305555555552900 ) ) ; +#1664 = CARTESIAN_POINT ( 'NONE', ( -0.2417012139895454200, 0.1442255120894150300, 0.09497993030332792200 ) ) ; +#1665 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.9340277777777732400 ) ) ; +#1666 = CARTESIAN_POINT ( 'NONE', ( -0.4219140922835708000, 0.1858000959230553800, 1.440511179676388500 ) ) ; +#1667 = ORIENTED_EDGE ( 'NONE', *, *, #7635, .F. ) ; +#1668 = VERTEX_POINT ( 'NONE', #5691 ) ; +#1669 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.2916666666666575300 ) ) ; +#1670 = ORIENTED_EDGE ( 'NONE', *, *, #4883, .T. ) ; +#1671 = ADVANCED_FACE ( 'NONE', ( #6352 ), #16007, .F. ) ; +#1672 = VECTOR ( 'NONE', #17029, 39.37007874015748900 ) ; +#1673 = ORIENTED_EDGE ( 'NONE', *, *, #14736, .T. ) ; +#1674 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.2170138888888788500 ) ) ; +#1675 = ORIENTED_EDGE ( 'NONE', *, *, #7194, .T. ) ; +#1676 = DIRECTION ( 'NONE', ( -1.224646799147353200E-016, 1.000000000000000000, 0.0000000000000000000 ) ) ; +#1677 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.1736111111111005600 ) ) ; +#1678 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.097222222222219000 ) ) ; +#1679 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.1111111111111000600 ) ) ; +#1680 = CARTESIAN_POINT ( 'NONE', ( 0.1813922812661237500, -0.2292437040816550400, 0.1261619304557817500 ) ) ; +#1681 = VERTEX_POINT ( 'NONE', #1417 ) ; +#1682 = ADVANCED_FACE ( 'NONE', ( #4960 ), #2213, .T. ) ; +#1683 = EDGE_CURVE ( 'NONE', #2594, #6656, #4053, .T. ) ; +#1684 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.6545138888888822900 ) ) ; +#1685 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1686 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.7638888888888834000 ) ) ; +#1687 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.184027777777775500 ) ) ; +#1688 = EDGE_CURVE ( 'NONE', #14318, #8105, #13029, .T. ) ; +#1689 = DIRECTION ( 'NONE', ( -1.000000000000000000, -6.306066779870889100E-014, 0.0000000000000000000 ) ) ; +#1690 = LINE ( 'NONE', #15034, #7225 ) ; +#1691 = AXIS2_PLACEMENT_3D ( 'NONE', #18625, #9936, #5397 ) ; +#1692 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.260416666666665000 ) ) ; +#1693 = ORIENTED_EDGE ( 'NONE', *, *, #8366, .F. ) ; +#1694 = AXIS2_PLACEMENT_3D ( 'NONE', #5822, #18862, #1223 ) ; +#1695 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.1631944444444342100 ) ) ; +#1696 = VERTEX_POINT ( 'NONE', #10294 ) ; +#1697 = CARTESIAN_POINT ( 'NONE', ( -0.3953002468276895500, 0.2372148641431517400, 1.592921120922338200 ) ) ; +#1698 = LINE ( 'NONE', #9403, #14589 ) ; +#1699 = EDGE_LOOP ( 'NONE', ( #18590, #4620 ) ) ; +#1700 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.6354166666666596400 ) ) ; +#1701 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2841, #17522, #15764, #9994, #1362, #7093, #8434, #2701, #2642 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5530303030303029800, 0.5568181818181818800, 0.5606060606060605500, 0.5643939393939394500, 0.5681818181818181200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1702 = ORIENTED_EDGE ( 'NONE', *, *, #6070, .F. ) ; +#1703 = CARTESIAN_POINT ( 'NONE', ( 0.08251570163513420600, 0.2410346720433967600, 1.252150695770649200 ) ) ; +#1704 = ORIENTED_EDGE ( 'NONE', *, *, #13267, .T. ) ; +#1705 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.7725694444444388700 ) ) ; +#1706 = CARTESIAN_POINT ( 'NONE', ( 0.4019321617077157800, 0.2411945954990067600, 1.484375000000000200 ) ) ; +#1707 = ORIENTED_EDGE ( 'NONE', *, *, #18047, .T. ) ; +#1708 = EDGE_CURVE ( 'NONE', #18596, #3266, #6822, .T. ) ; +#1709 = CARTESIAN_POINT ( 'NONE', ( -0.3535953843793234700, -0.3077285600096923400, 1.143750000000000000 ) ) ; +#1710 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#1711 = AXIS2_PLACEMENT_3D ( 'NONE', #4038, #15873, #2677 ) ; +#1712 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, 0.1458333333333462200 ) ) ; +#1713 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1714 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.8229166666666617400 ) ) ; +#1716 = EDGE_CURVE ( 'NONE', #5998, #14299, #14187, .T. ) ; +#1715 = CONICAL_SURFACE ( 'NONE', #4275, 0.4610132068742565100, 0.1745329251994302300 ) ; +#1717 = AXIS2_PLACEMENT_3D ( 'NONE', #5, #14806, #17704 ) ; +#1718 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.9652777777777739000 ) ) ; +#1719 = AXIS2_PLACEMENT_3D ( 'NONE', #17416, #13037, #3974 ) ; +#1720 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#1721 = CARTESIAN_POINT ( 'NONE', ( -0.08251570163513423400, -0.2410346720433967100, 1.252150695770648300 ) ) ; +#1722 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #12072, #3060, #10462, #16235, #11869, #7698, #18003, #3254, #95 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.9015151515151514900, 0.9053030303030302800, 0.9090909090909090600, 0.9128787878787878500, 0.9166666666666666300 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1723 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.8177083333333280400 ) ) ; +#1724 = CARTESIAN_POINT ( 'NONE', ( 0.4190133544667961100, -0.2101240212147274000, 1.484375000000000200 ) ) ; +#1725 = CARTESIAN_POINT ( 'NONE', ( 0.3953002468276911000, -0.2372148641431489300, 1.143750000000000000 ) ) ; +#1726 = LINE ( 'NONE', #13786, #5377 ) ; +#1727 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#1728 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#1729 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.8749999999999948900 ) ) ; +#1730 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.1180555555555684200 ) ) ; +#1731 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.2986111111111018300 ) ) ; +#1732 = LINE ( 'NONE', #4130, #15320 ) ; +#1733 = EDGE_CURVE ( 'NONE', #3761, #5122, #10500, .T. ) ; +#1734 = ORIENTED_EDGE ( 'NONE', *, *, #13826, .F. ) ; +#1735 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.3281249999999909500 ) ) ; +#1736 = AXIS2_PLACEMENT_3D ( 'NONE', #14020, #5176, #6548 ) ; +#1737 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.9305555555555512500 ) ) ; +#1738 = VECTOR ( 'NONE', #357, 39.37007874015748100 ) ; +#1739 = ORIENTED_EDGE ( 'NONE', *, *, #10655, .F. ) ; +#1740 = CARTESIAN_POINT ( 'NONE', ( -0.3477592364557826600, 0.3026494512999768900, 1.143750000000000000 ) ) ; +#1741 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.06944444444445710400 ) ) ; +#1742 = LINE ( 'NONE', #7466, #17407 ) ; +#1743 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.1284722222222353100 ) ) ; +#1744 = CARTESIAN_POINT ( 'NONE', ( 0.1737021135106992000, -0.2349615926002780700, 0.1257978351929184300 ) ) ; +#1745 = ORIENTED_EDGE ( 'NONE', *, *, #11810, .T. ) ; +#1746 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.4809027777777697400 ) ) ; +#1747 = CARTESIAN_POINT ( 'NONE', ( 0.2500000000000001100, -5.463695987328526400E-016, 1.250000000000000000 ) ) ; +#1748 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.1805555555555451400 ) ) ; +#1749 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.135416666666663900 ) ) ; +#1750 = VECTOR ( 'NONE', #11734, 39.37007874015748100 ) ; +#1751 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1752 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#1753 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.357638888888888000 ) ) ; +#1754 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.2291666666666570000 ) ) ; +#1755 = LINE ( 'NONE', #3462, #12591 ) ; +#1756 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.5555555555555480300 ) ) ; +#1757 = ORIENTED_EDGE ( 'NONE', *, *, #14572, .F. ) ; +#1758 = EDGE_CURVE ( 'NONE', #5774, #1015, #5345, .T. ) ; +#1759 = DIRECTION ( 'NONE', ( -0.8880766332571002900, -0.4596954355469866600, 0.0000000000000000000 ) ) ; +#1760 = ADVANCED_FACE ( 'NONE', ( #9814 ), #11894, .F. ) ; +#1761 = CONICAL_SURFACE ( 'NONE', #7165, 0.4610132068742565100, 0.1745329251994312500 ) ; +#1762 = ORIENTED_EDGE ( 'NONE', *, *, #11461, .F. ) ; +#1763 = CARTESIAN_POINT ( 'NONE', ( 0.3238882248697069200, -0.3280694967582878400, 1.143750000000000000 ) ) ; +#1764 = FACE_OUTER_BOUND ( 'NONE', #5117, .T. ) ; +#1765 = CARTESIAN_POINT ( 'NONE', ( 0.2564711831089312400, -0.1586543221016230000, -1.532497471022611100 ) ) ; +#1766 = EDGE_CURVE ( 'NONE', #10973, #3224, #17874, .T. ) ; +#1767 = CARTESIAN_POINT ( 'NONE', ( 0.1257767296168573200, 0.4435238338571829100, 1.143750000000000000 ) ) ; +#1768 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.9062499999999956700 ) ) ; +#1769 = AXIS2_PLACEMENT_3D ( 'NONE', #2650, #12965, #2712 ) ; +#1770 = ORIENTED_EDGE ( 'NONE', *, *, #9978, .F. ) ; +#1771 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.086805555555552900 ) ) ; +#1772 = LINE ( 'NONE', #3351, #12139 ) ; +#1773 = ADVANCED_FACE ( 'NONE', ( #2442 ), #5411, .T. ) ; +#1774 = LINE ( 'NONE', #9218, #13065 ) ; +#1775 = PLANE ( 'NONE', #9610 ) ; +#1776 = LINE ( 'NONE', #10392, #13305 ) ; +#1777 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1778 = EDGE_LOOP ( 'NONE', ( #18302, #5017, #5699, #12729, #3641, #2244 ) ) ; +#1779 = DIRECTION ( 'NONE', ( -0.6564875946873480700, 0.7543368200092185300, 0.0000000000000000000 ) ) ; +#1780 = ORIENTED_EDGE ( 'NONE', *, *, #9009, .F. ) ; +#1781 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1782 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.8836805555555508100 ) ) ; +#1783 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1784 = CARTESIAN_POINT ( 'NONE', ( -0.08251570163513420600, 0.2410346720433967900, 1.528000917050756500 ) ) ; +#1785 = CARTESIAN_POINT ( 'NONE', ( 0.01530074392670666700, 0.2759918036435183900, 0.08286399342893259500 ) ) ; +#1786 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.6805555555555489200 ) ) ; +#1787 = CARTESIAN_POINT ( 'NONE', ( -0.3088589881691090600, -0.01813186147154795600, 0.1720014473717533000 ) ) ; +#1788 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.2812499999999906200 ) ) ; +#1789 = EDGE_LOOP ( 'NONE', ( #9580, #7979, #760, #7632 ) ) ; +#1790 = EDGE_CURVE ( 'NONE', #17769, #3183, #6578, .T. ) ; +#1791 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#1792 = EDGE_CURVE ( 'NONE', #17529, #18542, #1742, .T. ) ; +#1793 = ORIENTED_EDGE ( 'NONE', *, *, #958, .T. ) ; +#1794 = VECTOR ( 'NONE', #11130, 39.37007874015748900 ) ; +#1795 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.2795138888888793500 ) ) ; +#1796 = CIRCLE ( 'NONE', #18294, 0.4687499999999995600 ) ; +#1797 = VECTOR ( 'NONE', #4476, 39.37007874015748100 ) ; +#1798 = ORIENTED_EDGE ( 'NONE', *, *, #4743, .F. ) ; +#1799 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1800 = AXIS2_PLACEMENT_3D ( 'NONE', #12201, #18125, #7955 ) ; +#1801 = VECTOR ( 'NONE', #4277, 39.37007874015748100 ) ; +#1802 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, 0.1979166666666804000 ) ) ; +#1803 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#1804 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.1944444444444581000 ) ) ; +#1805 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1806 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.4600694444444362000 ) ) ; +#1807 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1808 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#1809 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#1810 = DIRECTION ( 'NONE', ( -0.8090169943749466700, -0.5877852522924742500, 0.0000000000000000000 ) ) ; +#1811 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.062499999999996400 ) ) ; +#1812 = ORIENTED_EDGE ( 'NONE', *, *, #5874, .T. ) ; +#1813 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1814 = CARTESIAN_POINT ( 'NONE', ( -0.1257767296168636200, 0.4435238338571811400, 1.143750000000000000 ) ) ; +#1815 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.378472222222221900 ) ) ; +#1816 = ORIENTED_EDGE ( 'NONE', *, *, #11084, .T. ) ; +#1817 = ORIENTED_EDGE ( 'NONE', *, *, #2579, .T. ) ; +#1818 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.03472222222221093400 ) ) ; +#1819 = CIRCLE ( 'NONE', #891, 0.4687475818742560300 ) ; +#1820 = CIRCLE ( 'NONE', #8914, 0.4687499999999995000 ) ; +#1821 = VERTEX_POINT ( 'NONE', #141 ) ; +#1822 = ORIENTED_EDGE ( 'NONE', *, *, #5382, .T. ) ; +#1823 = EDGE_CURVE ( 'NONE', #15511, #12305, #13964, .T. ) ; +#1824 = CIRCLE ( 'NONE', #17856, 0.4687499999999995600 ) ; +#1825 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.4895833333333252700 ) ) ; +#1826 = EDGE_CURVE ( 'NONE', #9026, #16144, #10970, .T. ) ; +#1827 = EDGE_CURVE ( 'NONE', #15863, #18433, #16816, .T. ) ; +#1828 = CARTESIAN_POINT ( 'NONE', ( 0.1803732187962982800, 0.4242625117230472400, 1.591590229135180200 ) ) ; +#1829 = ORIENTED_EDGE ( 'NONE', *, *, #14050, .F. ) ; +#1830 = EDGE_LOOP ( 'NONE', ( #4399, #15639, #9858, #5810 ) ) ; +#1831 = ORIENTED_EDGE ( 'NONE', *, *, #5795, .T. ) ; +#1832 = FACE_OUTER_BOUND ( 'NONE', #2985, .T. ) ; +#1833 = CYLINDRICAL_SURFACE ( 'NONE', #5168, 0.4610132068742565100 ) ; +#1834 = CARTESIAN_POINT ( 'NONE', ( 3.032612960979414900E-017, 1.569772566619547600E-017, 3.802149639073269400 ) ) ; +#1835 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.6180555555555485900 ) ) ; +#1836 = ORIENTED_EDGE ( 'NONE', *, *, #5331, .F. ) ; +#1837 = ORIENTED_EDGE ( 'NONE', *, *, #8409, .T. ) ; +#1838 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.8020833333333283700 ) ) ; +#1839 = FACE_OUTER_BOUND ( 'NONE', #4455, .T. ) ; +#1840 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.083333333333330400 ) ) ; +#1841 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.587900241027141400 ) ) ; +#1842 = CARTESIAN_POINT ( 'NONE', ( -0.4120995984523162500, -0.2066569569792553700, 1.440511179676384800 ) ) ; +#1843 = DIRECTION ( 'NONE', ( -0.1219978065221480100, 0.1235727510854609200, -0.9848077530122085800 ) ) ; +#1844 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.394097222222221700 ) ) ; +#1845 = EDGE_CURVE ( 'NONE', #17489, #12656, #5866, .T. ) ; +#1846 = VERTEX_POINT ( 'NONE', #15013 ) ; +#1847 = CARTESIAN_POINT ( 'NONE', ( -0.2947418818941971400, -0.05989388338047106600, -1.532939851804676600 ) ) ; +#1848 = DIRECTION ( 'NONE', ( -0.1735239426960724100, 0.006567413361072688500, -0.9848077530122083500 ) ) ; +#1849 = CARTESIAN_POINT ( 'NONE', ( -0.4492873804855396800, -0.1336605598125465100, 1.143750000000000000 ) ) ; +#1850 = AXIS2_PLACEMENT_3D ( 'NONE', #5764, #1281, #17574 ) ; +#1851 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#1852 = CARTESIAN_POINT ( 'NONE', ( 0.3038647086018120300, 0.01870987463180007900, 0.1582797770341596300 ) ) ; +#1853 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.7152777777777714600 ) ) ; +#1854 = CARTESIAN_POINT ( 'NONE', ( -0.2601487639143318900, -0.1706865173261708800, 0.1779214294657598700 ) ) ; +#1855 = EDGE_LOOP ( 'NONE', ( #6895, #6747, #11051, #18142, #5788, #16831 ) ) ; +#1856 = VERTEX_POINT ( 'NONE', #4191 ) ; +#1857 = LINE ( 'NONE', #12605, #16827 ) ; +#1858 = LINE ( 'NONE', #13085, #18671 ) ; +#1859 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.2881944444444352600 ) ) ; +#1860 = VERTEX_POINT ( 'NONE', #4575 ) ; +#1861 = ORIENTED_EDGE ( 'NONE', *, *, #705, .F. ) ; +#1862 = PRODUCT_DEFINITION ( 'UNKNOWN', '', #13461, #5641 ) ; +#1863 = ADVANCED_FACE ( 'NONE', ( #2656 ), #3238, .F. ) ; +#1864 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.592561465728329600 ) ) ; +#1865 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.3420138888888799600 ) ) ; +#1866 = CARTESIAN_POINT ( 'NONE', ( 0.1254869472613564800, 0.2616019606607462600, 0.1201433679233864400 ) ) ; +#1867 = ORIENTED_EDGE ( 'NONE', *, *, #7354, .T. ) ; +#1868 = ORIENTED_EDGE ( 'NONE', *, *, #9983, .F. ) ; +#1869 = ORIENTED_EDGE ( 'NONE', *, *, #10232, .T. ) ; +#1870 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.2152777777777915800 ) ) ; +#1871 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1872 = CARTESIAN_POINT ( 'NONE', ( -0.4219140922835708000, 0.1858000959230553800, 1.143750000000000000 ) ) ; +#1873 = FACE_OUTER_BOUND ( 'NONE', #15763, .T. ) ; +#1874 = ADVANCED_FACE ( 'NONE', ( #16726, #2898, #11880, #14410, #9582, #9123, #16246, #7977, #6111, #18122, #5635, #13262, #16954, #12346, #13737, #15781, #134, #15329, #11425, #3585, #6337, #4941, #10947, #14631, #7729, #5394 ), #2422, .T. ) ; +#1875 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.5295138888888812900 ) ) ; +#1876 = ORIENTED_EDGE ( 'NONE', *, *, #1933, .T. ) ; +#1877 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#1878 = EDGE_CURVE ( 'NONE', #1188, #1821, #12334, .T. ) ; +#1879 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.2048611111111009500 ) ) ; +#1880 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1881 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.260416666666664700 ) ) ; +#1882 = CARTESIAN_POINT ( 'NONE', ( 0.1460657352116105400, -0.2043440430510083700, 1.526364414749281900 ) ) ; +#1883 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1884 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.427083333333333000 ) ) ; +#1885 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.01736111111112267600 ) ) ; +#1886 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676369000 ) ) ; +#1887 = EDGE_LOOP ( 'NONE', ( #16159, #2615, #6939, #5283 ) ) ; +#1888 = ORIENTED_EDGE ( 'NONE', *, *, #5905, .T. ) ; +#1889 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.3506944444444352000 ) ) ; +#1890 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#1891 = VERTEX_POINT ( 'NONE', #1686 ) ; +#1892 = VECTOR ( 'NONE', #11992, 39.37007874015748100 ) ; +#1893 = ORIENTED_EDGE ( 'NONE', *, *, #5742, .F. ) ; +#1894 = ORIENTED_EDGE ( 'NONE', *, *, #8594, .T. ) ; +#1895 = CARTESIAN_POINT ( 'NONE', ( 0.4418741004648765700, 0.1314551491986613600, 1.590985962198545400 ) ) ; +#1896 = PLANE ( 'NONE', #2 ) ; +#1897 = CARTESIAN_POINT ( 'NONE', ( -0.4420448320419758100, 0.1559508319244988500, 1.143750000000000000 ) ) ; +#1898 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#1899 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.6319444444444378700 ) ) ; +#1900 = EDGE_CURVE ( 'NONE', #3485, #15610, #14441, .T. ) ; +#1901 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.118055555555552900 ) ) ; +#1902 = ORIENTED_EDGE ( 'NONE', *, *, #3436, .F. ) ; +#1903 = DIRECTION ( 'NONE', ( -0.7862080194966530900, -0.6179619325485594700, -0.0000000000000000000 ) ) ; +#1904 = ORIENTED_EDGE ( 'NONE', *, *, #13531, .T. ) ; +#1905 = FACE_OUTER_BOUND ( 'NONE', #17240, .T. ) ; +#1906 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.317708333333332100 ) ) ; +#1907 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1908 = ORIENTED_EDGE ( 'NONE', *, *, #12212, .T. ) ; +#1909 = CARTESIAN_POINT ( 'NONE', ( -0.04142906912694217800, -0.3049269944298747000, -1.525969475837647200 ) ) ; +#1910 = EDGE_CURVE ( 'NONE', #8501, #18067, #12575, .T. ) ; +#1911 = DIRECTION ( 'NONE', ( -1.000000000000000000, -6.661338147750939200E-014, 0.0000000000000000000 ) ) ; +#1912 = CARTESIAN_POINT ( 'NONE', ( -0.4190155160288321400, -0.2101251051804419700, 1.143750000000000000 ) ) ; +#1913 = ORIENTED_EDGE ( 'NONE', *, *, #10342, .T. ) ; +#1914 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.434027777777777700 ) ) ; +#1915 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 0.1443375672974061000, 1.548179320649367500 ) ) ; +#1916 = CARTESIAN_POINT ( 'NONE', ( -0.2119256669269715100, 0.4094150566479503000, 1.484375000000000200 ) ) ; +#1917 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.7499999999999938900 ) ) ; +#1918 = AXIS2_PLACEMENT_3D ( 'NONE', #59, #4549, #9018 ) ; +#1919 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1920 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.2118055555555458700 ) ) ; +#1921 = ORIENTED_EDGE ( 'NONE', *, *, #12460, .T. ) ; +#1922 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.1059027777777670300 ) ) ; +#1923 = ORIENTED_EDGE ( 'NONE', *, *, #525, .T. ) ; +#1924 = ORIENTED_EDGE ( 'NONE', *, *, #17729, .F. ) ; +#1925 = DIRECTION ( 'NONE', ( -0.4596954355469747300, -0.8880766332571065100, 0.0000000000000000000 ) ) ; +#1926 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1927 = DIRECTION ( 'NONE', ( -0.04737586595177956100, 0.1670605187719827200, -0.9848077530122083500 ) ) ; +#1928 = EDGE_CURVE ( 'NONE', #12535, #13414, #3113, .T. ) ; +#1929 = FACE_OUTER_BOUND ( 'NONE', #7814, .T. ) ; +#1930 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.1840277777777912200 ) ) ; +#1931 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.1666666666666800100 ) ) ; +#1932 = ORIENTED_EDGE ( 'NONE', *, *, #10061, .T. ) ; +#1933 = EDGE_CURVE ( 'NONE', #14458, #10407, #769, .T. ) ; +#1934 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.3072916666666571400 ) ) ; +#1935 = DIRECTION ( 'NONE', ( -0.09852382856602047400, -0.1429921145089369800, -0.9848077530122091300 ) ) ; +#1936 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.2152777777777675500 ) ) ; +#1937 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #18857, #6955, #8560, #12939, #8307, #4115, #12870, #6887, #17181 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4469696969696969600, 0.4507575757575757500, 0.4545454545454545300, 0.4583333333333333100, 0.4621212121212121000 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1938 = DIRECTION ( 'NONE', ( 0.1637561077632659100, 0.05777219726883878900, -0.9848077530122089100 ) ) ; +#1939 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#1940 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.072916666666663200 ) ) ; +#1941 = EDGE_CURVE ( 'NONE', #14542, #7561, #2885, .T. ) ; +#1942 = AXIS2_PLACEMENT_3D ( 'NONE', #15307, #3593, #15502 ) ; +#1943 = EDGE_LOOP ( 'NONE', ( #8994, #10800, #9649, #848 ) ) ; +#1944 = CARTESIAN_POINT ( 'NONE', ( 0.1353884627379183800, -0.2105085691879054800, 1.525842493984606700 ) ) ; +#1945 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#1946 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.163194444444442400 ) ) ; +#1947 = AXIS2_PLACEMENT_3D ( 'NONE', #16620, #18042, #10698 ) ; +#1948 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.01388888888890065500 ) ) ; +#1949 = CONICAL_SURFACE ( 'NONE', #744, 0.4687475818742645700, 0.1745329251994298700 ) ; +#1950 = ORIENTED_EDGE ( 'NONE', *, *, #5712, .T. ) ; +#1951 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1952 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.3958333333333244300 ) ) ; +#1953 = DIRECTION ( 'NONE', ( -0.8639889495520179900, -0.5035107695491730700, 0.0000000000000000000 ) ) ; +#1954 = VECTOR ( 'NONE', #14472, 39.37007874015748900 ) ; +#1955 = ADVANCED_FACE ( 'NONE', ( #17634 ), #11409, .T. ) ; +#1956 = CARTESIAN_POINT ( 'NONE', ( 0.3293237658787548400, 0.3335752085024224500, 1.593467001493433100 ) ) ; +#1957 = CARTESIAN_POINT ( 'NONE', ( 2.548143034366579100E-017, 2.573687481817479900E-018, 3.802149639073295200 ) ) ; +#1958 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.7326388888888827300 ) ) ; +#1959 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.027777777777774300 ) ) ; +#1960 = EDGE_CURVE ( 'NONE', #16417, #5326, #6537, .T. ) ; +#1961 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1962 = LINE ( 'NONE', #12203, #9333 ) ; +#1963 = AXIS2_PLACEMENT_3D ( 'NONE', #8005, #12519, #599 ) ; +#1964 = ORIENTED_EDGE ( 'NONE', *, *, #17384, .T. ) ; +#1965 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999994700, -0.1443375672974061300, 1.548179320649367500 ) ) ; +#1966 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1967 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.5555555555555483600 ) ) ; +#1968 = EDGE_CURVE ( 'NONE', #14479, #5793, #12105, .T. ) ; +#1969 = LINE ( 'NONE', #14396, #7496 ) ; +#1970 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.010416666666663200 ) ) ; +#1971 = ADVANCED_FACE ( 'NONE', ( #8407 ), #6313, .F. ) ; +#1972 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1973 = AXIS2_PLACEMENT_3D ( 'NONE', #15966, #18808, #17333 ) ; +#1974 = ADVANCED_FACE ( 'NONE', ( #9336 ), #124, .T. ) ; +#1975 = CARTESIAN_POINT ( 'NONE', ( 0.2360194556738148000, 0.4049927308685897200, 1.484375000000000200 ) ) ; +#1976 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.463541666666666700 ) ) ; +#1977 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.409722222222221900 ) ) ; +#1978 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#1979 = CARTESIAN_POINT ( 'NONE', ( -0.2321251145655892600, 0.3983103163368959500, 1.440511179676401200 ) ) ; +#1980 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1981 = CARTESIAN_POINT ( 'NONE', ( -0.4624967254560994300, -0.07629596618006218000, 1.484375000000000200 ) ) ; +#1982 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1983 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.7708333333333273800 ) ) ; +#1984 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1985 = FACE_OUTER_BOUND ( 'NONE', #1855, .T. ) ; +#1986 = ORIENTED_EDGE ( 'NONE', *, *, #9748, .F. ) ; +#1987 = VECTOR ( 'NONE', #18791, 39.37007874015748900 ) ; +#1988 = VERTEX_POINT ( 'NONE', #16686 ) ; +#1989 = EDGE_CURVE ( 'NONE', #7256, #16152, #13715, .T. ) ; +#1990 = LINE ( 'NONE', #12289, #5416 ) ; +#1991 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.008680555555543855200 ) ) ; +#1992 = AXIS2_PLACEMENT_3D ( 'NONE', #15237, #9460, #16789 ) ; +#1993 = CARTESIAN_POINT ( 'NONE', ( 0.2493384031178261500, 0.1462068484395769600, 0.1158451765114920100 ) ) ; +#1994 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.9062499999999954500 ) ) ; +#1995 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, 0.02430555555556781300 ) ) ; +#1996 = EDGE_LOOP ( 'NONE', ( #6705, #12486, #12615, #234 ) ) ; +#1997 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 3.802149639073250300 ) ) ; +#1998 = CARTESIAN_POINT ( 'NONE', ( 0.4289925051334548800, 0.1889172465718432500, 1.484375000000000200 ) ) ; +#1999 = VECTOR ( 'NONE', #9281, 39.37007874015748900 ) ; +#2000 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.4010416666666580300 ) ) ; +#2001 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.520833333333333700 ) ) ; +#2002 = CARTESIAN_POINT ( 'NONE', ( -0.1803732187963012500, -0.4242625117230460200, 1.440511179676383200 ) ) ; +#2003 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2004 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2005 = AXIS2_PLACEMENT_3D ( 'NONE', #18778, #8476, #12930 ) ; +#2006 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.9791666666666624100 ) ) ; +#2007 = FACE_OUTER_BOUND ( 'NONE', #16304, .T. ) ; +#2008 = VECTOR ( 'NONE', #3171, 39.37007874015748900 ) ; +#2009 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2010 = ORIENTED_EDGE ( 'NONE', *, *, #5209, .F. ) ; +#2011 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.170138888888886800 ) ) ; +#2012 = ORIENTED_EDGE ( 'NONE', *, *, #10022, .T. ) ; +#2013 = CIRCLE ( 'NONE', #3129, 0.4610132068742565100 ) ; +#2014 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.03472222222223415200 ) ) ; +#2015 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.2673611111111011700 ) ) ; +#2016 = EDGE_CURVE ( 'NONE', #9836, #6116, #16712, .T. ) ; +#2017 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.072916666666663400 ) ) ; +#2018 = ORIENTED_EDGE ( 'NONE', *, *, #4606, .F. ) ; +#2019 = CARTESIAN_POINT ( 'NONE', ( 9.427772411032813500E-017, -4.008173262706276100E-017, 3.802149639073269400 ) ) ; +#2020 = CIRCLE ( 'NONE', #2922, 0.4687475818742548600 ) ; +#2021 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.7673611111111051700 ) ) ; +#2022 = CARTESIAN_POINT ( 'NONE', ( 5.900716195954485100E-017, -3.438787213953062300E-017, 3.802149639073283600 ) ) ; +#2023 = CYLINDRICAL_SURFACE ( 'NONE', #11507, 0.3125000000000008300 ) ; +#2024 = VECTOR ( 'NONE', #15035, 39.37007874015748100 ) ; +#2025 = ORIENTED_EDGE ( 'NONE', *, *, #1094, .T. ) ; +#2026 = DIRECTION ( 'NONE', ( 0.1309892141416655900, -0.1139978744783991900, 0.9848077530122089100 ) ) ; +#2027 = DIRECTION ( 'NONE', ( -0.4257792915650831500, 0.9048270524660144700, 0.0000000000000000000 ) ) ; +#2028 = PLANE ( 'NONE', #8741 ) ; +#2029 = LINE ( 'NONE', #5858, #12163 ) ; +#2030 = LINE ( 'NONE', #2401, #17227 ) ; +#2031 = ORIENTED_EDGE ( 'NONE', *, *, #16110, .T. ) ; +#2032 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#2033 = PLANE ( 'NONE', #5878 ) ; +#2034 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.7187499999999942300 ) ) ; +#2035 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.9305555555555513600 ) ) ; +#2036 = ORIENTED_EDGE ( 'NONE', *, *, #4508, .F. ) ; +#2037 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.1180555555555684200 ) ) ; +#2038 = VERTEX_POINT ( 'NONE', #4887 ) ; +#2039 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.348958333333332100 ) ) ; +#2040 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.402777777777777200 ) ) ; +#2041 = CARTESIAN_POINT ( 'NONE', ( -0.4684146371797784900, -0.01772823103797906100, 1.143750000000000000 ) ) ; +#2042 = ORIENTED_EDGE ( 'NONE', *, *, #18764, .F. ) ; +#2043 = ORIENTED_EDGE ( 'NONE', *, *, #13298, .T. ) ; +#2044 = FACE_OUTER_BOUND ( 'NONE', #10754, .T. ) ; +#2045 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#2046 = FACE_OUTER_BOUND ( 'NONE', #6636, .T. ) ; +#2047 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#2048 = FACE_OUTER_BOUND ( 'NONE', #12018, .T. ) ; +#2049 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #13291, #5935, #14894, #12009, #3194, #13492, #4657, #6137, #16447, #17932, #9117, #296 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 4 ), + ( 0.0000000000000000000, 0.001386135987701884200, 0.002079203981552826400, 0.002772271975403768400, 0.004158407963105652800, 0.005544543950807535900 ), + .UNSPECIFIED. ) ; +#2050 = ORIENTED_EDGE ( 'NONE', *, *, #4098, .F. ) ; +#2051 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.8194444444444389800 ) ) ; +#2052 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.592921120922338200 ) ) ; +#2053 = LINE ( 'NONE', #11455, #10811 ) ; +#2054 = ADVANCED_FACE ( 'NONE', ( #11194 ), #18334, .T. ) ; +#2055 = EDGE_CURVE ( 'NONE', #10872, #11135, #7274, .T. ) ; +#2056 = VERTEX_POINT ( 'NONE', #10120 ) ; +#2057 = EDGE_CURVE ( 'NONE', #16202, #2752, #4489, .T. ) ; +#2058 = ORIENTED_EDGE ( 'NONE', *, *, #4712, .F. ) ; +#2059 = AXIS2_PLACEMENT_3D ( 'NONE', #4946, #9599, #15755 ) ; +#2060 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.1128472222222113600 ) ) ; +#2061 = CARTESIAN_POINT ( 'NONE', ( -0.1718992724831313300, -0.2609729681782593800, 0.1823163490354290700 ) ) ; +#2062 = AXIS2_PLACEMENT_3D ( 'NONE', #16284, #5982, #4392 ) ; +#2063 = EDGE_LOOP ( 'NONE', ( #15002, #18739, #63, #6333 ) ) ; +#2064 = ORIENTED_EDGE ( 'NONE', *, *, #18073, .F. ) ; +#2065 = VECTOR ( 'NONE', #15007, 39.37007874015748900 ) ; +#2066 = CIRCLE ( 'NONE', #8509, 0.4610132068742565100 ) ; +#2067 = ORIENTED_EDGE ( 'NONE', *, *, #3882, .F. ) ; +#2068 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.8159722222222169900 ) ) ; +#2069 = ORIENTED_EDGE ( 'NONE', *, *, #3691, .T. ) ; +#2070 = VECTOR ( 'NONE', #3797, 39.37007874015748100 ) ; +#2071 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.567708333333334100 ) ) ; +#2072 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.194444444444442200 ) ) ; +#2073 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#2074 = ADVANCED_FACE ( 'NONE', ( #15309 ), #11835, .F. ) ; +#2075 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.2690972222222124400 ) ) ; +#2076 = CARTESIAN_POINT ( 'NONE', ( -0.3144999999999991100, -3.585550491684345600E-016, 0.9375000000000000000 ) ) ; +#2077 = CARTESIAN_POINT ( 'NONE', ( -0.3122385636735678400, -0.3496192812976236500, 1.593467001493433100 ) ) ; +#2078 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.017361111111107200 ) ) ; +#2079 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.6909722222222161000 ) ) ; +#2080 = ADVANCED_FACE ( 'NONE', ( #5850 ), #14849, .F. ) ; +#2081 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.475694444444444600 ) ) ; +#2082 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.107638888888886200 ) ) ; +#2083 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #16568, #6126, #18185, #3310, #7886, #12260, #12193, #16696, #3245 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1893939393939393900, 0.1931818181818181800, 0.1969696969696969600, 0.2007575757575757500, 0.2045454545454545600 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2084 = ORIENTED_EDGE ( 'NONE', *, *, #3301, .T. ) ; +#2085 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.01041666666665513900 ) ) ; +#2086 = EDGE_CURVE ( 'NONE', #17510, #15360, #1969, .T. ) ; +#2087 = VERTEX_POINT ( 'NONE', #11446 ) ; +#2088 = FACE_OUTER_BOUND ( 'NONE', #5863, .T. ) ; +#2089 = FACE_OUTER_BOUND ( 'NONE', #13645, .T. ) ; +#2090 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.2361111111111010600 ) ) ; +#2091 = EDGE_CURVE ( 'NONE', #13132, #14299, #10726, .T. ) ; +#2092 = EDGE_LOOP ( 'NONE', ( #8285, #16808, #8256, #6922 ) ) ; +#2093 = VERTEX_POINT ( 'NONE', #8815 ) ; +#2094 = CIRCLE ( 'NONE', #6738, 0.4687475818742580800 ) ; +#2095 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.9374999999999956700 ) ) ; +#2096 = EDGE_CURVE ( 'NONE', #6322, #1681, #16479, .T. ) ; +#2097 = AXIS2_PLACEMENT_3D ( 'NONE', #17157, #11301, #8334 ) ; +#2098 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.7361111111111052800 ) ) ; +#2099 = AXIS2_PLACEMENT_3D ( 'NONE', #251, #10359, #1596 ) ; +#2100 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.7534722222222164400 ) ) ; +#2101 = DIRECTION ( 'NONE', ( -0.8938997675281809000, 0.4482668910515967800, 0.0000000000000000000 ) ) ; +#2102 = DIRECTION ( 'NONE', ( -0.1713325394261276900, 0.02826394418405513800, -0.9848077530122083500 ) ) ; +#2103 = DIRECTION ( 'NONE', ( 0.8090169943749506700, -0.5877852522924684700, 0.0000000000000000000 ) ) ; +#2104 = VERTEX_POINT ( 'NONE', #58 ) ; +#2105 = CARTESIAN_POINT ( 'NONE', ( 0.4420448320419735900, 0.1559508319245051000, 1.143750000000000000 ) ) ; +#2106 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#2107 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.6076388888888821800 ) ) ; +#2108 = VERTEX_POINT ( 'NONE', #11891 ) ; +#2109 = ORIENTED_EDGE ( 'NONE', *, *, #10627, .T. ) ; +#2110 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.7743055555555500300 ) ) ; +#2111 = FACE_OUTER_BOUND ( 'NONE', #6190, .T. ) ; +#2112 = ORIENTED_EDGE ( 'NONE', *, *, #18974, .F. ) ; +#2113 = ORIENTED_EDGE ( 'NONE', *, *, #8312, .F. ) ; +#2114 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#2115 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#2116 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.119791666666663600 ) ) ; +#2117 = EDGE_CURVE ( 'NONE', #3033, #16925, #6802, .T. ) ; +#2118 = CARTESIAN_POINT ( 'NONE', ( -0.05641813419276683900, -0.3022339261173385100, -1.526246834040218200 ) ) ; +#2119 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.121527777777775200 ) ) ; +#2120 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#2121 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2122 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.6111111111111040600 ) ) ; +#2123 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#2124 = ORIENTED_EDGE ( 'NONE', *, *, #9829, .T. ) ; +#2125 = ORIENTED_EDGE ( 'NONE', *, *, #9110, .F. ) ; +#2126 = ORIENTED_EDGE ( 'NONE', *, *, #6415, .F. ) ; +#2127 = LINE ( 'NONE', #9347, #9040 ) ; +#2128 = ORIENTED_EDGE ( 'NONE', *, *, #15785, .T. ) ; +#2129 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.1545138888888783500 ) ) ; +#2130 = CARTESIAN_POINT ( 'NONE', ( 0.2782368439369315400, 0.07558941809021917100, 0.1138592619979516400 ) ) ; +#2131 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.4374999999999917300 ) ) ; +#2132 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.574652777777778600 ) ) ; +#2133 = DIRECTION ( 'NONE', ( -1.000000000000000000, 2.486899575160351000E-014, 0.0000000000000000000 ) ) ; +#2134 = ORIENTED_EDGE ( 'NONE', *, *, #13936, .F. ) ; +#2135 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.187499999999997600 ) ) ; +#2136 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#2137 = VERTEX_POINT ( 'NONE', #13248 ) ; +#2138 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.3281249999999906200 ) ) ; +#2139 = EDGE_CURVE ( 'NONE', #6904, #16271, #12790, .T. ) ; +#2140 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000000000, -4.889642800228204400E-016, 1.531249999999999800 ) ) ; +#2141 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2142 = DIRECTION ( 'NONE', ( -0.1589208555515887200, 0.06998465030130746100, -0.9848077530122082400 ) ) ; +#2143 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.010416666666662700 ) ) ; +#2144 = ORIENTED_EDGE ( 'NONE', *, *, #5387, .F. ) ; +#2145 = LINE ( 'NONE', #18128, #757 ) ; +#2146 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.7499999999999942300 ) ) ; +#2147 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.111111111111108300 ) ) ; +#2148 = ORIENTED_EDGE ( 'NONE', *, *, #16379, .T. ) ; +#2149 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, 0.1979166666666798400 ) ) ; +#2150 = ORIENTED_EDGE ( 'NONE', *, *, #10370, .T. ) ; +#2151 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#2152 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.3993055555555467500 ) ) ; +#2153 = AXIS2_PLACEMENT_3D ( 'NONE', #1808, #13607, #15072 ) ; +#2154 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -1.163194444444442200 ) ) ; +#2155 = ADVANCED_FACE ( 'NONE', ( #3570 ), #18721, .F. ) ; +#2156 = ORIENTED_EDGE ( 'NONE', *, *, #16745, .F. ) ; +#2157 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.7777777777777720200 ) ) ; +#2158 = LINE ( 'NONE', #10027, #11139 ) ; +#2159 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.4618055555555475300 ) ) ; +#2160 = VERTEX_POINT ( 'NONE', #4101 ) ; +#2161 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676388100 ) ) ; +#2162 = DIRECTION ( 'NONE', ( 0.9772957051199530100, 0.2118799300407986100, 0.0000000000000000000 ) ) ; +#2163 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.3402777777777688000 ) ) ; +#2164 = VERTEX_POINT ( 'NONE', #10291 ) ; +#2165 = CARTESIAN_POINT ( 'NONE', ( 0.2659575542964096000, -0.3859962976670525700, 1.143750000000000000 ) ) ; +#2166 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#2167 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.7430555555555499200 ) ) ; +#2168 = VECTOR ( 'NONE', #11391, 39.37007874015748900 ) ; +#2169 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.9062499999999956700 ) ) ; +#2170 = ORIENTED_EDGE ( 'NONE', *, *, #8531, .F. ) ; +#2171 = ADVANCED_FACE ( 'NONE', ( #15766 ), #1080, .F. ) ; +#2172 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.6458333333333267100 ) ) ; +#2173 = EDGE_LOOP ( 'NONE', ( #6979, #11568, #8765, #15057, #1932, #211 ) ) ; +#2174 = ADVANCED_FACE ( 'NONE', ( #3809 ), #11646, .T. ) ; +#2175 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.180555555555553100 ) ) ; +#2176 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.071180555555552700 ) ) ; +#2177 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#2178 = EDGE_CURVE ( 'NONE', #16372, #303, #19019, .T. ) ; +#2179 = DIRECTION ( 'NONE', ( 0.1713325394261280600, -0.02826394418405404500, -0.9848077530122083500 ) ) ; +#2180 = DIRECTION ( 'NONE', ( -0.2243975804000505100, 0.9744976787610132300, -0.0000000000000000000 ) ) ; +#2181 = VERTEX_POINT ( 'NONE', #4036 ) ; +#2182 = CARTESIAN_POINT ( 'NONE', ( 0.1674842983648652300, 0.1919780298488216700, 1.528000917050756500 ) ) ; +#2183 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #9119, #101, #12011, #10470, #1645, #17811 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 0.01009444001459206900, 0.01194902013091610700, 0.01380360024724014600 ), + .UNSPECIFIED. ) ; +#2184 = ORIENTED_EDGE ( 'NONE', *, *, #3043, .F. ) ; +#2185 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.6145833333333261500 ) ) ; +#2186 = CARTESIAN_POINT ( 'NONE', ( 0.2360206732261691000, 0.4049948201025113700, 1.143750000000000000 ) ) ; +#2187 = FACE_OUTER_BOUND ( 'NONE', #9441, .T. ) ; +#2188 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.05034722222221086500 ) ) ; +#2189 = CARTESIAN_POINT ( 'NONE', ( 0.1051863658125137700, 0.4567957869192266800, 1.590308733529502500 ) ) ; +#2190 = CIRCLE ( 'NONE', #9259, 0.4610132068742565100 ) ; +#2191 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2192 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2193 = EDGE_CURVE ( 'NONE', #12040, #7764, #18102, .T. ) ; +#2194 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.404513888888888200 ) ) ; +#2195 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.1006944444444334600 ) ) ; +#2196 = EDGE_CURVE ( 'NONE', #12145, #10792, #1499, .T. ) ; +#2197 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.4079861111111024500 ) ) ; +#2198 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#2199 = DIRECTION ( 'NONE', ( -0.8306683619109804800, -0.5567675210715225000, 0.0000000000000000000 ) ) ; +#2200 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2201 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.9930555555555514700 ) ) ; +#2203 = EDGE_CURVE ( 'NONE', #6904, #1354, #8656, .T. ) ; +#2202 = LINE ( 'NONE', #4713, #5395 ) ; +#2204 = AXIS2_PLACEMENT_3D ( 'NONE', #8880, #16262, #3084 ) ; +#2205 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.9861111111111072700 ) ) ; +#2206 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.024305555555552200 ) ) ; +#2207 = AXIS2_PLACEMENT_3D ( 'NONE', #18697, #11419, #4014 ) ; +#2208 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2209 = LINE ( 'NONE', #11432, #14639 ) ; +#2210 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.04861111111109956600 ) ) ; +#2211 = ORIENTED_EDGE ( 'NONE', *, *, #7104, .F. ) ; +#2212 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -1.159722222222219700 ) ) ; +#2213 = CYLINDRICAL_SURFACE ( 'NONE', #1850, 0.3125000000000008300 ) ; +#2214 = ORIENTED_EDGE ( 'NONE', *, *, #5399, .T. ) ; +#2215 = VECTOR ( 'NONE', #11664, 39.37007874015748100 ) ; +#2216 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.6354166666666597500 ) ) ; +#2217 = EDGE_CURVE ( 'NONE', #5219, #7256, #4725, .T. ) ; +#2218 = CARTESIAN_POINT ( 'NONE', ( -0.08233842721007216000, 0.2803882110092404400, -1.541259966502786600 ) ) ; +#2219 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, 0.05902777777778966900 ) ) ; +#2220 = CARTESIAN_POINT ( 'NONE', ( 0.2119256669269656800, 0.4094150566479534100, 1.143750000000000000 ) ) ; +#2221 = AXIS2_PLACEMENT_3D ( 'NONE', #14221, #7022, #11454 ) ; +#2222 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.3611111111111024500 ) ) ; +#2223 = AXIS2_PLACEMENT_3D ( 'NONE', #7319, #4357, #13053 ) ; +#2224 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.9270833333333292600 ) ) ; +#2225 = VECTOR ( 'NONE', #13122, 39.37007874015748900 ) ; +#2226 = CARTESIAN_POINT ( 'NONE', ( -2.199813562574310200E-016, -9.352404279648282100E-017, 3.802149639073280500 ) ) ; +#2227 = VERTEX_POINT ( 'NONE', #11387 ) ; +#2228 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.237847222222220300 ) ) ; +#2229 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#2230 = CARTESIAN_POINT ( 'NONE', ( 2.495793308019154000E-016, -5.747063248115215000E-017, 3.802149639073322300 ) ) ; +#2231 = CIRCLE ( 'NONE', #15822, 0.4687499999999995600 ) ; +#2232 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#2233 = DIRECTION ( 'NONE', ( -0.9961450333403966100, 0.08772156263576201500, 0.0000000000000000000 ) ) ; +#2234 = CARTESIAN_POINT ( 'NONE', ( 0.08281349060214698900, 0.2408627435031303900, 1.528399624464273000 ) ) ; +#2235 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.4999999999999919500 ) ) ; +#2236 = ADVANCED_FACE ( 'NONE', ( #4268 ), #11966, .F. ) ; +#2237 = VERTEX_POINT ( 'NONE', #12224 ) ; +#2238 = LINE ( 'NONE', #11364, #5885 ) ; +#2239 = EDGE_CURVE ( 'NONE', #3215, #5595, #4032, .T. ) ; +#2240 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, 0.05034722222223434600 ) ) ; +#2241 = LINE ( 'NONE', #4509, #13996 ) ; +#2242 = AXIS2_PLACEMENT_3D ( 'NONE', #8420, #973, #5511 ) ; +#2243 = EDGE_LOOP ( 'NONE', ( #457, #1617, #10205, #17113, #10411, #19037 ) ) ; +#2244 = ORIENTED_EDGE ( 'NONE', *, *, #17095, .F. ) ; +#2245 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.437500000000000000 ) ) ; +#2246 = CARTESIAN_POINT ( 'NONE', ( -0.4289925051334578800, 0.1889172465718373900, 1.143750000000000000 ) ) ; +#2247 = VECTOR ( 'NONE', #8329, 39.37007874015748100 ) ; +#2248 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.8194444444444390900 ) ) ; +#2249 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.376736111111110100 ) ) ; +#2250 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.506944444444444400 ) ) ; +#2251 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.1215277777777669500 ) ) ; +#2252 = ADVANCED_FACE ( 'NONE', ( #10265 ), #3275, .F. ) ; +#2253 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.1822916666666561700 ) ) ; +#2254 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#2255 = AXIS2_PLACEMENT_3D ( 'NONE', #8788, #2913, #14759 ) ; +#2256 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.8819444444444395300 ) ) ; +#2257 = VERTEX_POINT ( 'NONE', #6295 ) ; +#2258 = CARTESIAN_POINT ( 'NONE', ( -0.1589412568245201800, -0.4327480257511615600, 1.143750000000000000 ) ) ; +#2259 = ADVANCED_FACE ( 'NONE', ( #363 ), #7780, .F. ) ; +#2260 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.8055555555555503600 ) ) ; +#2261 = VERTEX_POINT ( 'NONE', #12152 ) ; +#2262 = VECTOR ( 'NONE', #4176, 39.37007874015748100 ) ; +#2263 = FACE_BOUND ( 'NONE', #1355, .T. ) ; +#2264 = LINE ( 'NONE', #3202, #2719 ) ; +#2265 = VERTEX_POINT ( 'NONE', #7519 ) ; +#2266 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -1.166666666666664100 ) ) ; +#2267 = VECTOR ( 'NONE', #3189, 39.37007874015748900 ) ; +#2268 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.1493055555555447800 ) ) ; +#2269 = EDGE_CURVE ( 'NONE', #13107, #3250, #13948, .T. ) ; +#2270 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, 0.1006944444444569400 ) ) ; +#2271 = CARTESIAN_POINT ( 'NONE', ( 1.291488863795447300E-018, -3.412366898086807500E-017, -1.174024639073328200 ) ) ; +#2272 = ORIENTED_EDGE ( 'NONE', *, *, #18151, .T. ) ; +#2273 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.3854166666666578000 ) ) ; +#2274 = CARTESIAN_POINT ( 'NONE', ( 0.2816817904617434100, -4.105198628045699100E-016, -1.551651542871590500 ) ) ; +#2275 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.08680555555554481100 ) ) ; +#2276 = EDGE_CURVE ( 'NONE', #2991, #7833, #10490, .T. ) ; +#2277 = EDGE_LOOP ( 'NONE', ( #4919, #5770, #17723, #19106 ) ) ; +#2278 = VERTEX_POINT ( 'NONE', #3143 ) ; +#2279 = FACE_OUTER_BOUND ( 'NONE', #5304, .T. ) ; +#2280 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2281 = LINE ( 'NONE', #8807, #17486 ) ; +#2282 = CARTESIAN_POINT ( 'NONE', ( -0.3293237658787597800, 0.3335752085024177300, 1.143750000000000000 ) ) ; +#2283 = VECTOR ( 'NONE', #8481, 39.37007874015748100 ) ; +#2284 = EDGE_LOOP ( 'NONE', ( #14693, #10601, #7592, #6267 ) ) ; +#2285 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.4548611111111031700 ) ) ; +#2286 = AXIS2_PLACEMENT_3D ( 'NONE', #11935, #12006, #17863 ) ; +#2287 = VECTOR ( 'NONE', #14427, 39.37007874015748900 ) ; +#2288 = ORIENTED_EDGE ( 'NONE', *, *, #19047, .F. ) ; +#2289 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.8819444444444398700 ) ) ; +#2290 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2291 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.064236111111108100 ) ) ; +#2292 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#2293 = VERTEX_POINT ( 'NONE', #4679 ) ; +#2294 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.8749999999999952300 ) ) ; +#2295 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -1.107638888888886200 ) ) ; +#2296 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2297 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.048611111111107600 ) ) ; +#2298 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995600, 0.1443375672974060700, 1.548179320649367500 ) ) ; +#2299 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.5277777777777700200 ) ) ; +#2300 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#2301 = VERTEX_POINT ( 'NONE', #18026 ) ; +#2302 = CIRCLE ( 'NONE', #16432, 0.4610132068742565100 ) ; +#2303 = LINE ( 'NONE', #245, #3926 ) ; +#2304 = VERTEX_POINT ( 'NONE', #14984 ) ; +#2305 = ORIENTED_EDGE ( 'NONE', *, *, #4508, .T. ) ; +#2306 = LINE ( 'NONE', #354, #5285 ) ; +#2307 = EDGE_CURVE ( 'NONE', #15497, #8373, #13635, .T. ) ; +#2308 = EDGE_CURVE ( 'NONE', #3761, #8501, #1351, .T. ) ; +#2309 = AXIS2_PLACEMENT_3D ( 'NONE', #2761, #14348, #5630 ) ; +#2310 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, 0.06076388888890095500 ) ) ; +#2311 = AXIS2_PLACEMENT_3D ( 'NONE', #16213, #1430, #13341 ) ; +#2312 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #4846, #6276, #9366, #12328, #7758, #10856, #6329, #2159, #8012 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6136363636363636500, 0.6174242424242424300, 0.6212121212121212200, 0.6250000000000000000, 0.6287878787878787800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2313 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.531250000000000700 ) ) ; +#2314 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.8541666666666616300 ) ) ; +#2315 = EDGE_LOOP ( 'NONE', ( #18518, #1327, #17990, #3811 ) ) ; +#2316 = CARTESIAN_POINT ( 'NONE', ( 0.01152533017185643900, 0.4608691177296606000, 1.587227003692501100 ) ) ; +#2317 = ORIENTED_EDGE ( 'NONE', *, *, #18022, .T. ) ; +#2318 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.414930555555554900 ) ) ; +#2319 = EDGE_LOOP ( 'NONE', ( #4378, #8075, #7892, #3318 ) ) ; +#2320 = LINE ( 'NONE', #17625, #2535 ) ; +#2321 = CARTESIAN_POINT ( 'NONE', ( -0.3535935602980411200, 0.3077269725401364800, 1.484375000000000200 ) ) ; +#2322 = VECTOR ( 'NONE', #8177, 39.37007874015748900 ) ; +#2323 = EDGE_LOOP ( 'NONE', ( #5831, #16525, #697, #13406 ) ) ; +#2324 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.1440972222222114700 ) ) ; +#2325 = ORIENTED_EDGE ( 'NONE', *, *, #6554, .T. ) ; +#2326 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.312499999999998400 ) ) ; +#2327 = CYLINDRICAL_SURFACE ( 'NONE', #6488, 0.4610132068742565100 ) ; +#2328 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.8020833333333283700 ) ) ; +#2329 = EDGE_CURVE ( 'NONE', #2578, #896, #17860, .T. ) ; +#2330 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2331 = ORIENTED_EDGE ( 'NONE', *, *, #11945, .F. ) ; +#2332 = ORIENTED_EDGE ( 'NONE', *, *, #14385, .T. ) ; +#2333 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.2152777777777675500 ) ) ; +#2334 = AXIS2_PLACEMENT_3D ( 'NONE', #12207, #6335, #4722 ) ; +#2335 = ORIENTED_EDGE ( 'NONE', *, *, #1900, .T. ) ; +#2336 = EDGE_CURVE ( 'NONE', #17405, #12164, #11755, .T. ) ; +#2337 = ADVANCED_FACE ( 'NONE', ( #5302 ), #692, .F. ) ; +#2338 = AXIS2_PLACEMENT_3D ( 'NONE', #17580, #11710, #5696 ) ; +#2339 = PLANE ( 'NONE', #3212 ) ; +#2340 = VECTOR ( 'NONE', #11287, 39.37007874015748100 ) ; +#2341 = ORIENTED_EDGE ( 'NONE', *, *, #12433, .F. ) ; +#2342 = AXIS2_PLACEMENT_3D ( 'NONE', #12055, #11990, #3356 ) ; +#2343 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.3680555555555464800 ) ) ; +#2344 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2345 = CARTESIAN_POINT ( 'NONE', ( 0.04042922210599820400, 0.2870478073045404400, -1.543608155948552400 ) ) ; +#2346 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, 0.003472222222233768800 ) ) ; +#2347 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#2348 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.562500000000000000 ) ) ; +#2349 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.406249999999999300 ) ) ; +#2350 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.4444444444444364300 ) ) ; +#2351 = ORIENTED_EDGE ( 'NONE', *, *, #11839, .F. ) ; +#2352 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.6909722222222161000 ) ) ; +#2353 = VERTEX_POINT ( 'NONE', #8099 ) ; +#2354 = ADVANCED_FACE ( 'NONE', ( #4599 ), #16863, .F. ) ; +#2355 = ORIENTED_EDGE ( 'NONE', *, *, #7752, .T. ) ; +#2356 = CIRCLE ( 'NONE', #2959, 0.4687475818742555300 ) ; +#2357 = ADVANCED_FACE ( 'NONE', ( #5971 ), #11068, .F. ) ; +#2358 = CARTESIAN_POINT ( 'NONE', ( -0.4019342351530919600, -0.2411958397483227300, 1.143750000000000000 ) ) ; +#2359 = ORIENTED_EDGE ( 'NONE', *, *, #6497, .F. ) ; +#2360 = EDGE_CURVE ( 'NONE', #18514, #16558, #13842, .T. ) ; +#2361 = DIRECTION ( 'NONE', ( -0.07982527466453677400, 0.1542128889936746100, 0.9848077530122089100 ) ) ; +#2362 = CARTESIAN_POINT ( 'NONE', ( -0.2154811238112768200, -0.4162837743582987200, 1.143750000000000000 ) ) ; +#2363 = AXIS2_PLACEMENT_3D ( 'NONE', #4430, #15800, #9971 ) ; +#2364 = VERTEX_POINT ( 'NONE', #1981 ) ; +#2365 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.083333333333330200 ) ) ; +#2366 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.4201388888888803500 ) ) ; +#2367 = DIRECTION ( 'NONE', ( 0.8938997675281718000, 0.4482668910516150500, 0.0000000000000000000 ) ) ; +#2368 = EDGE_LOOP ( 'NONE', ( #2830, #288, #16046, #18321 ) ) ; +#2369 = ORIENTED_EDGE ( 'NONE', *, *, #7539, .F. ) ; +#2370 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, 0.02604166666667855100 ) ) ; +#2371 = VERTEX_POINT ( 'NONE', #4985 ) ; +#2372 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676384800 ) ) ; +#2373 = ORIENTED_EDGE ( 'NONE', *, *, #2411, .T. ) ; +#2374 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#2375 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.217013888888886800 ) ) ; +#2376 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.531250000000000400 ) ) ; +#2377 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2378 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.6701388888888821800 ) ) ; +#2379 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.02604166666665505900 ) ) ; +#2380 = DIRECTION ( 'NONE', ( 0.1156686028357426400, -0.1295162689590459700, 0.9848077530122085800 ) ) ; +#2381 = EDGE_CURVE ( 'NONE', #1319, #67, #12231, .T. ) ; +#2382 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.517361111111111200 ) ) ; +#2383 = CARTESIAN_POINT ( 'NONE', ( -0.01152533017185641800, 0.4608691177296606000, 1.484375000000000200 ) ) ; +#2384 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, 0.003472222222234034200 ) ) ; +#2385 = ORIENTED_EDGE ( 'NONE', *, *, #10183, .T. ) ; +#2386 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2387 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.8402777777777729100 ) ) ; +#2388 = ORIENTED_EDGE ( 'NONE', *, *, #18977, .F. ) ; +#2389 = ORIENTED_EDGE ( 'NONE', *, *, #14147, .T. ) ; +#2390 = DIRECTION ( 'NONE', ( 0.8938997675281776800, -0.4482668910516028300, 0.0000000000000000000 ) ) ; +#2391 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.1041666666666554700 ) ) ; +#2392 = AXIS2_PLACEMENT_3D ( 'NONE', #547, #10858, #2027 ) ; +#2393 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, 0.1041666666666792200 ) ) ; +#2394 = LINE ( 'NONE', #18929, #6770 ) ; +#2395 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.1423611111111004700 ) ) ; +#2396 = ORIENTED_EDGE ( 'NONE', *, *, #7862, .T. ) ; +#2397 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.3611111111111020600 ) ) ; +#2398 = DIRECTION ( 'NONE', ( -0.05986782849627939100, -0.1630016340966653800, -0.9848077530122094600 ) ) ; +#2399 = ORIENTED_EDGE ( 'NONE', *, *, #13133, .F. ) ; +#2400 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.174024639073339100 ) ) ; +#2401 = CARTESIAN_POINT ( 'NONE', ( -0.4120995984523176900, 0.2066569569792524900, 1.143750000000000000 ) ) ; +#2402 = CARTESIAN_POINT ( 'NONE', ( 0.2398265047872370800, 0.1540886961467168900, -1.548428864420184000 ) ) ; +#2403 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, 0.03819444444445617400 ) ) ; +#2404 = CIRCLE ( 'NONE', #3329, 0.4687475818742552500 ) ; +#2405 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.4756944444444367000 ) ) ; +#2406 = ORIENTED_EDGE ( 'NONE', *, *, #14764, .F. ) ; +#2407 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.5937499999999932300 ) ) ; +#2408 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#2409 = VECTOR ( 'NONE', #5516, 39.37007874015748100 ) ; +#2410 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.9930555555555514700 ) ) ; +#2411 = EDGE_CURVE ( 'NONE', #14143, #4157, #12689, .T. ) ; +#2412 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.09027777777776684100 ) ) ; +#2413 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#2414 = EDGE_CURVE ( 'NONE', #14120, #3224, #8306, .T. ) ; +#2415 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -1.104166666666663600 ) ) ; +#2416 = AXIS2_PLACEMENT_3D ( 'NONE', #15070, #16086, #339 ) ; +#2417 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.2534722222222122700 ) ) ; +#2418 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.017361111111107400 ) ) ; +#2419 = VECTOR ( 'NONE', #16907, 39.37007874015748100 ) ; +#2420 = ORIENTED_EDGE ( 'NONE', *, *, #14787, .F. ) ; +#2421 = ADVANCED_FACE ( 'NONE', ( #3925 ), #9238, .T. ) ; +#2422 = CYLINDRICAL_SURFACE ( 'NONE', #2838, 0.4687500000000000000 ) ; +#2423 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.409722222222221900 ) ) ; +#2424 = LINE ( 'NONE', #6576, #10957 ) ; +#2425 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, 0.08506944444445675700 ) ) ; +#2426 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.447916666666666700 ) ) ; +#2427 = CARTESIAN_POINT ( 'NONE', ( 3.285262975111219200E-017, -9.316514725878106300E-018, 3.802149639073309800 ) ) ; +#2428 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2429 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#2430 = EDGE_CURVE ( 'NONE', #11021, #3985, #17525, .T. ) ; +#2431 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.362847222222221200 ) ) ; +#2432 = PLANE ( 'NONE', #12550 ) ; +#2433 = DIRECTION ( 'NONE', ( 1.224646799147353200E-016, 1.000000000000000000, 0.0000000000000000000 ) ) ; +#2434 = CYLINDRICAL_SURFACE ( 'NONE', #14297, 0.3125000000000008300 ) ; +#2435 = ADVANCED_FACE ( 'NONE', ( #2088 ), #14283, .T. ) ; +#2436 = EDGE_CURVE ( 'NONE', #10425, #14364, #1857, .T. ) ; +#2437 = EDGE_LOOP ( 'NONE', ( #9503, #1831, #18673, #3709, #4905, #12979 ) ) ; +#2438 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.1302083333333225500 ) ) ; +#2439 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.364583333333332100 ) ) ; +#2440 = CARTESIAN_POINT ( 'NONE', ( 0.1257767296168573200, 0.4435238338571829100, 1.187613820323600600 ) ) ; +#2441 = EDGE_CURVE ( 'NONE', #7201, #1563, #17068, .T. ) ; +#2442 = FACE_OUTER_BOUND ( 'NONE', #5929, .T. ) ; +#2443 = AXIS2_PLACEMENT_3D ( 'NONE', #1247, #7296, #13087 ) ; +#2444 = ORIENTED_EDGE ( 'NONE', *, *, #14334, .T. ) ; +#2445 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.8368055555555505800 ) ) ; +#2446 = LINE ( 'NONE', #18027, #16976 ) ; +#2447 = DIRECTION ( 'NONE', ( 0.7940695057417690400, -0.6078269655510708500, 0.0000000000000000000 ) ) ; +#2448 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.06250000000001225400 ) ) ; +#2449 = ORIENTED_EDGE ( 'NONE', *, *, #10798, .T. ) ; +#2450 = LINE ( 'NONE', #15691, #13748 ) ; +#2451 = CONICAL_SURFACE ( 'NONE', #14768, 0.4687475818742580800, 0.1745329251994312500 ) ; +#2452 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.5034722222222142200 ) ) ; +#2453 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#2454 = CIRCLE ( 'NONE', #6820, 0.4610132068742565100 ) ; +#2455 = EDGE_LOOP ( 'NONE', ( #15798, #4464, #14833, #2589 ) ) ; +#2456 = ORIENTED_EDGE ( 'NONE', *, *, #12568, .T. ) ; +#2457 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2458 = EDGE_CURVE ( 'NONE', #8859, #6683, #4839, .T. ) ; +#2459 = CARTESIAN_POINT ( 'NONE', ( -0.1988606315909610100, 0.2182347608261019100, -1.538692604456316700 ) ) ; +#2460 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.05208333333332212900 ) ) ; +#2461 = CIRCLE ( 'NONE', #14608, 0.4687475818742581300 ) ; +#2462 = AXIS2_PLACEMENT_3D ( 'NONE', #7171, #18877, #13479 ) ; +#2463 = CARTESIAN_POINT ( 'NONE', ( 0.2321251145655835700, 0.3983103163368992800, 1.592561465728329600 ) ) ; +#2464 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.590308733529502500 ) ) ; +#2465 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.3229166666666576400 ) ) ; +#2466 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.5972222222222153300 ) ) ; +#2467 = ORIENTED_EDGE ( 'NONE', *, *, #3769, .T. ) ; +#2468 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.114583333333330400 ) ) ; +#2469 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.07638888888887793200 ) ) ; +#2470 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2471 = VECTOR ( 'NONE', #8143, 39.37007874015748100 ) ; +#2472 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#2473 = VECTOR ( 'NONE', #10712, 39.37007874015748100 ) ; +#2474 = CONICAL_SURFACE ( 'NONE', #14547, 0.4610132068742565100, 0.1745329251994289800 ) ; +#2475 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -1.333333333333332100 ) ) ; +#2476 = ORIENTED_EDGE ( 'NONE', *, *, #17758, .T. ) ; +#2477 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.2708333333333234300 ) ) ; +#2478 = LINE ( 'NONE', #1828, #5451 ) ; +#2479 = LINE ( 'NONE', #6330, #16527 ) ; +#2480 = ORIENTED_EDGE ( 'NONE', *, *, #4047, .T. ) ; +#2481 = EDGE_LOOP ( 'NONE', ( #5489, #17327, #10432, #15422 ) ) ; +#2482 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.225694444444442900 ) ) ; +#2483 = EDGE_CURVE ( 'NONE', #14542, #15387, #13140, .T. ) ; +#2484 = ORIENTED_EDGE ( 'NONE', *, *, #17823, .T. ) ; +#2485 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, 0.1510416666666795400 ) ) ; +#2486 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.444444444444444400 ) ) ; +#2487 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, 1.562500000000000000 ) ) ; +#2488 = ORIENTED_EDGE ( 'NONE', *, *, #16108, .F. ) ; +#2489 = ORIENTED_EDGE ( 'NONE', *, *, #14895, .T. ) ; +#2490 = LINE ( 'NONE', #11701, #6879 ) ; +#2491 = CARTESIAN_POINT ( 'NONE', ( -1.521004235376680000E-016, 2.269259697886881300E-016, -1.174024639073293100 ) ) ; +#2492 = VECTOR ( 'NONE', #14595, 39.37007874015748900 ) ; +#2493 = CARTESIAN_POINT ( 'NONE', ( -0.01171874999999998800, 0.4686034927296605600, 1.484375000000000200 ) ) ; +#2494 = LINE ( 'NONE', #11227, #15392 ) ; +#2495 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2496 = ORIENTED_EDGE ( 'NONE', *, *, #2239, .T. ) ; +#2497 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.164930555555552900 ) ) ; +#2498 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#2499 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#2500 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2501 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.1788194444444341200 ) ) ; +#2502 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2503 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.378472222222221200 ) ) ; +#2504 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2505 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#2506 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.5624999999999930100 ) ) ; +#2507 = VERTEX_POINT ( 'NONE', #18531 ) ; +#2508 = ORIENTED_EDGE ( 'NONE', *, *, #13430, .T. ) ; +#2509 = DIRECTION ( 'NONE', ( 0.1735239426960689900, 0.006567413361073677300, 0.9848077530122091300 ) ) ; +#2510 = ORIENTED_EDGE ( 'NONE', *, *, #13956, .T. ) ; +#2511 = ORIENTED_EDGE ( 'NONE', *, *, #16492, .F. ) ; +#2512 = VECTOR ( 'NONE', #1907, 39.37007874015748100 ) ; +#2513 = CARTESIAN_POINT ( 'NONE', ( -0.1278868739221093500, -0.4509647912990460400, 1.143750000000000000 ) ) ; +#2514 = LINE ( 'NONE', #371, #9212 ) ; +#2515 = ORIENTED_EDGE ( 'NONE', *, *, #4991, .F. ) ; +#2516 = ORIENTED_EDGE ( 'NONE', *, *, #10836, .T. ) ; +#2517 = LINE ( 'NONE', #5783, #5496 ) ; +#2518 = ADVANCED_FACE ( 'NONE', ( #15665 ), #15542, .F. ) ; +#2519 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.591590229135180400 ) ) ; +#2520 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #16989, #9837, #6946, #5322, #893, #5254, #9651, #9589, #773, #2313, #6874, #18479, #966, #11141, #15553, #8298, #17059, #829, #8231, #5188, #14209, #9719, #11202, #8358, #11080, #15614, #1026, #6807, #17122, #3728, #18598, #9776, #11263, #2426, #2486, #14274, #2245, #1914, #3388, #13709, #9154, #13723, #17981, #1022, #2423, #11326, #12738, #17359, #17230, #9965, #11506, #15740, #12927, #17421, #12792, #17303, #7135, #9902, #12852, #15931, #8609, #18913, #12987, #8353, #4163, #4097, #6944, #8408, #5423, #15794, #3977, #10021, #6868, #4033, #18714, #17173, #11440, #2620, #10084, #1205, #11382, #14333, #14454, #5374, #18659, #8470, #3914, #5499, #2671, #5618, #1264, #14202, #15682, #18840, #14390, #9828, #1074, #2482, #8545, #7006, #14272, #2558, #18774, #1150, #5560, #15867, #7061, #2931, #14591, #11761, #8863, #105, #19033, #17555, #15989, #1458, #5746, #14711, #4351, #2868, #8736, #16050, #14533, #14777, #17751, #10222, #7258, #16244, #13175, #17615, #1400, #11684, #5670, #44, #14643, #7203, #10345, #17494, #5804, #11820, #16124, #8668, #17671, #2741, #18976, #8802, #4417, #5865, #13111, #7311, #13237, #10160, #16181, #7391, #13297, #10409, #1511, #8929, #3007, #4470, #1326, #5940, #11626, #13045, #7449, #2811, #11567, #19103, #4225, #4284, #10278, #10603, #16393, #4723, #15036, #13499, #11878, #13377, #18072, #9252, #6015, #9065, #12017, #15092, #6281, #423, #164, #16586, #3261, #1768, #14974, #10665, #16511, #1649, #11950, #16317, #3128, #6212, #240, #7707, #1582, #12079, #7763, #9180, #10526, #7574, #18011, #4663, #6140, #4788, #361, #13439, #13564, #1714, #4605, #3071, #4529, #16452, #14840, #1838, #13630, #7508, #12135, #7641, #17814, #9007, #3198, #3323, #10473, #17939, #9122, #17872, #14898, #6085, #300, #15156, #2167, #15281, #10982, #6533, #16912, #13888, #3510, #2034, #16711, #3569, #13745, #13690, #13947, #8085, #7901, #6406, #15414, #12333, #16772, #18207, #10864, #4852, #18333, #4914, #6336, #15227, #10922, #9370, #10790, #550, #16651, #16847, #1899, #7835, #7961, #5043, #15339, #12273, #4972, #2107, #18130, #12389, #8019, #12467, #9569, #9307, #13824, #3633, #18275, #9448, #9512, #495, #12210, #6589, #1967, #18387, #6471, #682, #5101, #10725, #610, #3373, #3454, #3891, #12659, #11242, #15720, #11120, #15593, #5405, #8207, #11180, #14249, #6921, #17209, #18454, #8393, #2405, #9756, #14133, #9808, #15660, #807, #2285, #5167, #15474, #2350, #5228, #6658, #939, #12724, #18698, #8335, #9692, #15533, #17159, #3824, #5298, #3957, #6847, #12589, #14182, #18521, #3763, #752, #11053, #18640, #5356, #12773, #6719, #2222, #1005, #6786, #12532, #3703, #869, #11303, #16966, #17097, #8278, #17032, #2465, #14070, #14006, #8154, #18574, #9631, #1054, #8449, #4015, #9944, #6985, #15776, #14317, #1126, #5477, #11365, #12900, #4074, #17279, #18758, #14371, #11420, #2601, #9878, #2532, #12832, #6931, #17217, #4149, #11488, #3965, #9817, #18706, #15674, #15846, #950, #14190, #15784, #2605, #12911, #11314, #4021, #9953, #17165, #1011, #17289, #8345, #18645, #5361, #1062, #2660, #6992, #8454, #1132, #12732, #11248, #5607, #6853, #15921, #5482, #4080, #14377, #11429, #18763, #5548, #7051, #2542, #2412, #3898, #7118, #17410, #2469, #8398, #12782, #8530, #14255, #14326, #8595, #1194, #5414, #12975, #17345, #15726, #9884, #11371, #12837, #18819, #10013, #14439, #9763, #10144, #4272, #2725, #18902, #10069, #1254, #13095, #17475, #11555, #4212, #14517, #1315, #13032, #2798, #11618, #18961, #5659, #15978, #7192, #8659, #8746, #4359, #14650, #17566, #5623, #5754, #14598, #5570 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3 ), + ( 0.01438009650835268800, 0.01515151515151515200, 0.01893939393939394000, 0.02272727272727272800, 0.02651515151515151600, 0.03030303030303030400, 0.03409090909090908800, 0.03787878787878788000, 0.04166666666666666400, 0.04545454545454545600, 0.04924242424242424000, 0.05303030303030303200, 0.05681818181818181600, 0.06060606060606060800, 0.06439393939393939200, 0.06818181818181817700, 0.07196969696969697500, 0.07575757575757576000, 0.07954545454545454400, 0.08333333333333332900, 0.08712121212121214100, 0.09090909090909091200, 0.09469696969696969600, 0.09848484848484848100, 0.1022727272727272800, 0.1060606060606060500, 0.1098484848484848500, 0.1136363636363636300, 0.1174242424242424300, 0.1212121212121212200, 0.1250000000000000000, 0.1287878787878787800, 0.1325757575757575700, 0.1363636363636363500, 0.1401515151515151400, 0.1439393939393939800, 0.1477272727272727600, 0.1515151515151515500, 0.1553030303030303300, 0.1590909090909090600, 0.1628787878787879000, 0.1666666666666666900, 0.1704545454545454700, 0.1742424242424242500, 0.1780303030303030400, 0.1818181818181818200, 0.1856060606060606100, 0.1893939393939393900, 0.1931818181818181800, 0.1969696969696969600, 0.2007575757575757500, 0.2045454545454545300, 0.2083333333333333700, 0.2121212121212121500, 0.2159090909090909400, 0.2196969696969697200, 0.2234848484848485100, 0.2272727272727272900, 0.2310606060606060800, 0.2348484848484848600, 0.2386363636363636500, 0.2424242424242424300, 0.2462121212121212200, 0.2500000000000000000, 0.2537878787878787800, 0.2575757575757575700, 0.2613636363636363500, 0.2651515151515151400, 0.2689393939393939200, 0.2727272727272727100, 0.2765151515151514900, 0.2803030303030302800, 0.2840909090909091200, 0.2878787878787879000, 0.2916666666666666900, 0.2954545454545454700, 0.2992424242424242500, 0.3030303030303030400, 0.3068181818181818800, 0.3106060606060606100, 0.3143939393939393900, 0.3181818181818181800, 0.3219696969696969600, 0.3257575757575757500, 0.3295454545454545300, 0.3333333333333333100, 0.3371212121212121000, 0.3409090909090909400, 0.3446969696969697200, 0.3484848484848485600, 0.3522727272727272900, 0.3560606060606060800, 0.3598484848484848600, 0.3636363636363636500, 0.3674242424242424300, 0.3712121212121212200, 0.3750000000000000000, 0.3787878787878787800, 0.3825757575757575100, 0.3863636363636363500, 0.3901515151515151400, 0.3939393939393939200, 0.3977272727272727100, 0.4015151515151514900, 0.4053030303030302800, 0.4090909090909091200, 0.4128787878787879000, 0.4166666666666666900, 0.4204545454545454700, 0.4242424242424242500, 0.4280303030303030400, 0.4318181818181818800, 0.4356060606060606100, 0.4393939393939393900, 0.4431818181818181800, 0.4469696969696969600, 0.4507575757575757500, 0.4545454545454545300, 0.4583333333333333100, 0.4621212121212121000, 0.4659090909090909400, 0.4696969696969697200, 0.4734848484848485600, 0.4772727272727272900, 0.4810606060606060800, 0.4848484848484848600, 0.4886363636363636500, 0.4924242424242424300, 0.4962121212121212200, 0.5000000000000000000, 0.5037878787878787800, 0.5075757575757574600, 0.5113636363636363500, 0.5151515151515151400, 0.5189393939393939200, 0.5227272727272727100, 0.5265151515151514900, 0.5303030303030302800, 0.5340909090909090600, 0.5378787878787878500, 0.5416666666666666300, 0.5454545454545454100, 0.5492424242424242000, 0.5530303030303029800, 0.5568181818181817700, 0.5606060606060605500, 0.5643939393939394500, 0.5681818181818182300, 0.5719696969696970200, 0.5757575757575758000, 0.5795454545454545900, 0.5833333333333333700, 0.5871212121212121500, 0.5909090909090909400, 0.5946969696969697200, 0.5984848484848485100, 0.6022727272727274000, 0.6060606060606060800, 0.6098484848484848600, 0.6136363636363636500, 0.6174242424242424300, 0.6212121212121212200, 0.6250000000000000000, 0.6287878787878787800, 0.6325757575757575700, 0.6363636363636364600, 0.6401515151515151400, 0.6439393939393939200, 0.6477272727272727100, 0.6515151515151514900, 0.6553030303030302800, 0.6590909090909090600, 0.6628787878787878500, 0.6666666666666666300, 0.6704545454545453000, 0.6742424242424242000, 0.6780303030303029800, 0.6818181818181817700, 0.6856060606060605500, 0.6893939393939394500, 0.6931818181818182300, 0.6969696969696970200, 0.7007575757575758000, 0.7045454545454545900, 0.7083333333333333700, 0.7121212121212121500, 0.7159090909090909400, 0.7196969696969696100, 0.7234848484848485100, 0.7272727272727272900, 0.7310606060606060800, 0.7348484848484848600, 0.7386363636363636500, 0.7424242424242424300, 0.7462121212121212200, 0.7500000000000000000, 0.7537878787878786700, 0.7575757575757575700, 0.7613636363636363500, 0.7651515151515151400, 0.7689393939393939200, 0.7727272727272727100, 0.7765151515151514900, 0.7803030303030302800, 0.7840909090909090600, 0.7878787878787878500, 0.7916666666666666300, 0.7954545454545454100, 0.7992424242424242000, 0.8030303030303030900, 0.8068181818181817700, 0.8106060606060605500, 0.8143939393939394500, 0.8181818181818183400, 0.8219696969696970200, 0.8257575757575758000, 0.8295454545454545900, 0.8333333333333333700, 0.8371212121212121500, 0.8409090909090909400, 0.8446969696969697200, 0.8484848484848485100, 0.8522727272727274000, 0.8560606060606060800, 0.8598484848484848600, 0.8636363636363636500, 0.8674242424242424300, 0.8712121212121212200, 0.8750000000000000000, 0.8787878787878787800, 0.8825757575757575700, 0.8863636363636364600, 0.8901515151515151400, 0.8939393939393939200, 0.8977272727272727100, 0.9015151515151514900, 0.9053030303030302800, 0.9088182479361106600 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9753096629729478600, 0.9844977225947826300, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9293588774775731800, 0.9898301444571796500 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2521 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.5555555555555480300 ) ) ; +#2522 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.2743055555555460300 ) ) ; +#2523 = CARTESIAN_POINT ( 'NONE', ( -0.1051858231909508600, -0.4567934304613013300, 1.143750000000000000 ) ) ; +#2524 = CARTESIAN_POINT ( 'NONE', ( 0.4347510546871075600, -0.1533776299234465600, 1.440511179676401600 ) ) ; +#2525 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#2526 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.486111111111110900 ) ) ; +#2527 = VERTEX_POINT ( 'NONE', #2297 ) ; +#2528 = EDGE_CURVE ( 'NONE', #2594, #8280, #1109, .T. ) ; +#2529 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2530 = CARTESIAN_POINT ( 'NONE', ( -2.548143034366577300E-017, -2.573687481817654700E-018, 3.802149639073269400 ) ) ; +#2531 = CARTESIAN_POINT ( 'NONE', ( 0.3535953843793270800, -0.3077285600096869600, 1.143750000000000000 ) ) ; +#2532 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.2395833333333235700 ) ) ; +#2533 = VERTEX_POINT ( 'NONE', #3777 ) ; +#2534 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.6041666666666599700 ) ) ; +#2535 = VECTOR ( 'NONE', #8810, 39.37007874015748100 ) ; +#2536 = FACE_OUTER_BOUND ( 'NONE', #16646, .T. ) ; +#2537 = ADVANCED_FACE ( 'NONE', ( #3469 ), #9642, .F. ) ; +#2538 = EDGE_LOOP ( 'NONE', ( #11104, #12001, #13626, #4530, #14765, #620 ) ) ; +#2539 = EDGE_LOOP ( 'NONE', ( #1757, #941, #18420, #5002 ) ) ; +#2540 = CIRCLE ( 'NONE', #5722, 0.4610132068742565100 ) ; +#2541 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.9652777777777734600 ) ) ; +#2542 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.09374999999998913400 ) ) ; +#2543 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.6996527777777715700 ) ) ; +#2544 = CARTESIAN_POINT ( 'NONE', ( 0.06751612073809898400, -0.2754500608760927500, 0.1021985448949557200 ) ) ; +#2545 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.093749999999997100 ) ) ; +#2546 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.2569444444444345400 ) ) ; +#2547 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #9923, #18741, #12707, #14356, #12637, #1103, #11403, #2580, #6898 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.8863636363636363500, 0.8901515151515151400, 0.8939393939393939200, 0.8977272727272727100, 0.9015151515151514900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2548 = CARTESIAN_POINT ( 'NONE', ( 0.1034502481550510600, -0.4492562999771337900, 1.590308733529502700 ) ) ; +#2549 = ORIENTED_EDGE ( 'NONE', *, *, #7998, .F. ) ; +#2550 = CARTESIAN_POINT ( 'NONE', ( -0.1257767296168604300, -0.4435238338571820300, 1.484375000000000200 ) ) ; +#2551 = EDGE_CURVE ( 'NONE', #5022, #14594, #4513, .T. ) ; +#2552 = VERTEX_POINT ( 'NONE', #15184 ) ; +#2553 = ORIENTED_EDGE ( 'NONE', *, *, #9181, .T. ) ; +#2554 = VECTOR ( 'NONE', #10373, 39.37007874015748100 ) ; +#2555 = EDGE_CURVE ( 'NONE', #1434, #17578, #5768, .T. ) ; +#2556 = ORIENTED_EDGE ( 'NONE', *, *, #10455, .F. ) ; +#2557 = VERTEX_POINT ( 'NONE', #8043 ) ; +#2558 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.211805555555553800 ) ) ; +#2559 = EDGE_CURVE ( 'NONE', #13674, #10226, #17283, .T. ) ; +#2560 = AXIS2_PLACEMENT_3D ( 'NONE', #6361, #10822, #3288 ) ; +#2561 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.423611111111110900 ) ) ; +#2562 = CARTESIAN_POINT ( 'NONE', ( -2.360286478381774800E-016, -1.375514885581257700E-016, 3.802149639073269400 ) ) ; +#2563 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2564 = CARTESIAN_POINT ( 'NONE', ( 5.271282967173048500E-017, -8.784185871103603900E-017, -1.174024639073293100 ) ) ; +#2565 = PLANE ( 'NONE', #15663 ) ; +#2566 = VERTEX_POINT ( 'NONE', #878 ) ; +#2567 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.262152777777776100 ) ) ; +#2568 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.416666666666665900 ) ) ; +#2569 = VERTEX_POINT ( 'NONE', #4936 ) ; +#2570 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2571 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, 0.1579861111111241200 ) ) ; +#2572 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.319444444444442900 ) ) ; +#2573 = DIRECTION ( 'NONE', ( 0.3447650836342945300, 0.9386889991400974000, 0.0000000000000000000 ) ) ; +#2574 = CARTESIAN_POINT ( 'NONE', ( -0.1616086329535782200, -0.4400104683469192000, 1.484375000000000200 ) ) ; +#2575 = ORIENTED_EDGE ( 'NONE', *, *, #7013, .F. ) ; +#2576 = VECTOR ( 'NONE', #13670, 39.37007874015748900 ) ; +#2577 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.6493055555555491400 ) ) ; +#2578 = VERTEX_POINT ( 'NONE', #9399 ) ; +#2579 = EDGE_CURVE ( 'NONE', #11586, #5656, #5509, .T. ) ; +#2580 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, 0.03819444444445643800 ) ) ; +#2581 = CARTESIAN_POINT ( 'NONE', ( 0.3953002468276861100, 0.2372148641431572100, 1.592921120922338200 ) ) ; +#2582 = AXIS2_PLACEMENT_3D ( 'NONE', #1898, #1966, #16710 ) ; +#2583 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2584 = AXIS2_PLACEMENT_3D ( 'NONE', #3269, #1588, #11827 ) ; +#2585 = DIRECTION ( 'NONE', ( -0.1219978065221426300, -0.1235727510854589400, 0.9848077530122094600 ) ) ; +#2586 = ORIENTED_EDGE ( 'NONE', *, *, #6755, .F. ) ; +#2587 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.5815972222222152200 ) ) ; +#2588 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #12993, #16307, ( #2844 ) ) ; +#2589 = ORIENTED_EDGE ( 'NONE', *, *, #1928, .T. ) ; +#2590 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.3159722222222127700 ) ) ; +#2591 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#2592 = VECTOR ( 'NONE', #12531, 39.37007874015748100 ) ; +#2593 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#2594 = VERTEX_POINT ( 'NONE', #2061 ) ; +#2595 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#2596 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.555555555555556000 ) ) ; +#2597 = CARTESIAN_POINT ( 'NONE', ( 0.3893757946457697700, 0.2609847755022788900, 1.592921120922338200 ) ) ; +#2598 = VERTEX_POINT ( 'NONE', #18351 ) ; +#2599 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#2600 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#2601 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.2465277777777682100 ) ) ; +#2602 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.6701388888888828400 ) ) ; +#2603 = ORIENTED_EDGE ( 'NONE', *, *, #14553, .F. ) ; +#2604 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.9861111111111069400 ) ) ; +#2605 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.1909722222222123000 ) ) ; +#2606 = EDGE_CURVE ( 'NONE', #9207, #10560, #7385, .T. ) ; +#2607 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2608 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.5486111111111036100 ) ) ; +#2609 = LINE ( 'NONE', #5803, #14354 ) ; +#2610 = ORIENTED_EDGE ( 'NONE', *, *, #963, .F. ) ; +#2611 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.3402777777777685200 ) ) ; +#2612 = CARTESIAN_POINT ( 'NONE', ( -0.4347510546871065100, 0.1533776299234495300, 1.590985962198545200 ) ) ; +#2613 = CARTESIAN_POINT ( 'NONE', ( 0.2360206732261777300, -0.4049948201025063100, 1.484375000000000200 ) ) ; +#2614 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.112847222222219200 ) ) ; +#2615 = ORIENTED_EDGE ( 'NONE', *, *, #19086, .T. ) ; +#2616 = CIRCLE ( 'NONE', #17117, 0.4687475818742578000 ) ; +#2617 = ADVANCED_FACE ( 'NONE', ( #14741 ), #9467, .T. ) ; +#2618 = ORIENTED_EDGE ( 'NONE', *, *, #5634, .T. ) ; +#2619 = CARTESIAN_POINT ( 'NONE', ( 2.495793308019154000E-016, -5.747063248115215000E-017, -1.174024639073296000 ) ) ; +#2620 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.295138888888887700 ) ) ; +#2621 = AXIS2_PLACEMENT_3D ( 'NONE', #2487, #9905, #18917 ) ; +#2622 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.531250000000000900 ) ) ; +#2623 = ORIENTED_EDGE ( 'NONE', *, *, #10605, .T. ) ; +#2624 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.05555555555554416600 ) ) ; +#2625 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.08333333333332224000 ) ) ; +#2626 = DIRECTION ( 'NONE', ( 0.9949379478511796200, 0.1004911932742537700, 0.0000000000000000000 ) ) ; +#2627 = ORIENTED_EDGE ( 'NONE', *, *, #15270, .F. ) ; +#2628 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.328124999999998900 ) ) ; +#2629 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.305555555555554000 ) ) ; +#2630 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2631 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#2632 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, 0.04687500000001232300 ) ) ; +#2633 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2634 = EDGE_CURVE ( 'NONE', #15915, #17064, #10846, .T. ) ; +#2635 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.124999999999996900 ) ) ; +#2636 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.243055555555553600 ) ) ; +#2637 = CARTESIAN_POINT ( 'NONE', ( -0.2937336577469680200, -0.03933409976603869500, 0.1358396184786997700 ) ) ; +#2638 = LINE ( 'NONE', #9844, #19007 ) ; +#2639 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.7673611111111056100 ) ) ; +#2640 = EDGE_CURVE ( 'NONE', #17922, #12229, #1613, .T. ) ; +#2641 = VECTOR ( 'NONE', #4152, 39.37007874015748900 ) ; +#2642 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.7986111111111056100 ) ) ; +#2643 = VECTOR ( 'NONE', #10484, 39.37007874015747400 ) ; +#2644 = CARTESIAN_POINT ( 'NONE', ( 0.1803732187963073800, -0.4242625117230433600, 1.187613820323613700 ) ) ; +#2645 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.5572916666666594100 ) ) ; +#2646 = FACE_OUTER_BOUND ( 'NONE', #11282, .T. ) ; +#2647 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.2499999999999899500 ) ) ; +#2648 = ADVANCED_FACE ( 'NONE', ( #17746 ), #12903, .T. ) ; +#2649 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2650 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#2651 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.2152777777777910600 ) ) ; +#2652 = DIRECTION ( 'NONE', ( -0.1873813145857214600, -0.9822872507286892800, 0.0000000000000000000 ) ) ; +#2653 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.4756944444444367600 ) ) ; +#2654 = LINE ( 'NONE', #9458, #10964 ) ; +#2655 = ORIENTED_EDGE ( 'NONE', *, *, #8122, .T. ) ; +#2656 = FACE_OUTER_BOUND ( 'NONE', #10451, .T. ) ; +#2657 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.031249999999996400 ) ) ; +#2658 = EDGE_CURVE ( 'NONE', #8134, #1354, #3003, .T. ) ; +#2659 = ORIENTED_EDGE ( 'NONE', *, *, #10605, .F. ) ; +#2660 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.1493055555555453100 ) ) ; +#2662 = EDGE_CURVE ( 'NONE', #4423, #16152, #9000, .T. ) ; +#2661 = CIRCLE ( 'NONE', #5229, 0.4687499999999995600 ) ; +#2663 = CARTESIAN_POINT ( 'NONE', ( 0.2576153600001044300, -0.1251118586305065800, 0.1086295488642383400 ) ) ; +#2664 = AXIS2_PLACEMENT_3D ( 'NONE', #14160, #9786, #17248 ) ; +#2665 = AXIS2_PLACEMENT_3D ( 'NONE', #16066, #17689, #7402 ) ; +#2666 = CARTESIAN_POINT ( 'NONE', ( 2.624314698447061100E-016, 6.562837953529235000E-018, -1.174024639073291600 ) ) ; +#2667 = AXIS2_PLACEMENT_3D ( 'NONE', #9201, #16470, #3392 ) ; +#2668 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.9079861111111066100 ) ) ; +#2669 = CYLINDRICAL_SURFACE ( 'NONE', #17621, 0.3125000000000008300 ) ; +#2670 = CARTESIAN_POINT ( 'NONE', ( -0.1051863658125169900, -0.4567957869192260100, 1.590308733529502500 ) ) ; +#2671 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.256944444444443100 ) ) ; +#2672 = VECTOR ( 'NONE', #9548, 39.37007874015748900 ) ; +#2673 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.486111111111111400 ) ) ; +#2674 = ORIENTED_EDGE ( 'NONE', *, *, #5399, .F. ) ; +#2675 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.04166666666665525700 ) ) ; +#2676 = FACE_OUTER_BOUND ( 'NONE', #11048, .T. ) ; +#2677 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2678 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.4513888888888806200 ) ) ; +#2679 = CARTESIAN_POINT ( 'NONE', ( 0.1051863658125235200, -0.4567957869192244600, 1.143750000000000000 ) ) ; +#2680 = EDGE_CURVE ( 'NONE', #16408, #12845, #943, .T. ) ; +#2681 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.008680555555551800 ) ) ; +#2682 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.291666666666665000 ) ) ; +#2683 = CARTESIAN_POINT ( 'NONE', ( -0.1803732187963012500, -0.4242625117230460200, 1.591590229135180400 ) ) ; +#2684 = AXIS2_PLACEMENT_3D ( 'NONE', #4168, #5676, #15938 ) ; +#2685 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, 0.01909722222223423500 ) ) ; +#2686 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.159722222222219400 ) ) ; +#2687 = CARTESIAN_POINT ( 'NONE', ( 0.1034502481550510900, -0.4492562999771337900, 1.590308733529502700 ) ) ; +#2688 = CARTESIAN_POINT ( 'NONE', ( -0.1834002693415873500, 0.4313825491433709300, 1.591590229135180400 ) ) ; +#2689 = EDGE_CURVE ( 'NONE', #3250, #17024, #479, .T. ) ; +#2690 = ORIENTED_EDGE ( 'NONE', *, *, #3521, .F. ) ; +#2691 = AXIS2_PLACEMENT_3D ( 'NONE', #13257, #7414, #8637 ) ; +#2692 = VECTOR ( 'NONE', #9943, 39.37007874015748100 ) ; +#2693 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.5486111111111039400 ) ) ; +#2694 = AXIS2_PLACEMENT_3D ( 'NONE', #9439, #9247, #607 ) ; +#2695 = FACE_OUTER_BOUND ( 'NONE', #17115, .T. ) ; +#2696 = VECTOR ( 'NONE', #13296, 39.37007874015748900 ) ; +#2697 = ORIENTED_EDGE ( 'NONE', *, *, #8002, .F. ) ; +#2698 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#2699 = CIRCLE ( 'NONE', #11035, 0.4687499999999995600 ) ; +#2700 = DIRECTION ( 'NONE', ( 0.5145511247964285100, -0.8574597016599265800, 0.0000000000000000000 ) ) ; +#2701 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.7951388888888832900 ) ) ; +#2702 = ADVANCED_FACE ( 'NONE', ( #10 ), #13617, .T. ) ; +#2703 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.343749999999999600 ) ) ; +#2704 = CARTESIAN_POINT ( 'NONE', ( 0.1257767296168573200, 0.4435238338571829100, 1.484375000000000200 ) ) ; +#2705 = ORIENTED_EDGE ( 'NONE', *, *, #783, .F. ) ; +#2706 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.6406249999999934500 ) ) ; +#2707 = EDGE_LOOP ( 'NONE', ( #421, #17798, #957, #3035 ) ) ; +#2708 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.03472222222221038600 ) ) ; +#2709 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.1666666666666559700 ) ) ; +#2710 = CARTESIAN_POINT ( 'NONE', ( 0.2958319850298574700, 6.101305999854492000E-013, 0.1362100504034947900 ) ) ; +#2711 = EDGE_CURVE ( 'NONE', #14956, #12462, #698, .T. ) ; +#2712 = DIRECTION ( 'NONE', ( 0.8090169943749422300, 0.5877852522924802400, 0.0000000000000000000 ) ) ; +#2713 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, 0.1493055555555682400 ) ) ; +#2714 = VERTEX_POINT ( 'NONE', #14093 ) ; +#2715 = VECTOR ( 'NONE', #14983, 39.37007874015748100 ) ; +#2716 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -1.222222222222220100 ) ) ; +#2717 = LINE ( 'NONE', #10873, #8030 ) ; +#2718 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#2719 = VECTOR ( 'NONE', #11956, 39.37007874015748100 ) ; +#2720 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.03124999999998864100 ) ) ; +#2721 = EDGE_LOOP ( 'NONE', ( #9206, #895, #1302, #17956, #7230, #6284 ) ) ; +#2722 = CIRCLE ( 'NONE', #18481, 0.4687475818742550800 ) ; +#2723 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.4236111111111029400 ) ) ; +#2724 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.8055555555555499200 ) ) ; +#2725 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.003472222222210821900 ) ) ; +#2726 = ORIENTED_EDGE ( 'NONE', *, *, #12548, .T. ) ; +#2727 = CARTESIAN_POINT ( 'NONE', ( -0.1221585286874820300, -0.2544403012775492400, 0.09718615641540299900 ) ) ; +#2728 = CARTESIAN_POINT ( 'NONE', ( 0.3122385636735728900, -0.3496192812976191600, 1.593467001493433100 ) ) ; +#2729 = CARTESIAN_POINT ( 'NONE', ( 0.4347510546871075600, -0.1533776299234465600, 1.187613820323599700 ) ) ; +#2730 = ORIENTED_EDGE ( 'NONE', *, *, #10733, .T. ) ; +#2731 = ORIENTED_EDGE ( 'NONE', *, *, #337, .F. ) ; +#2732 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.04166666666665525000 ) ) ; +#2734 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.8385416666666616300 ) ) ; +#2733 = CYLINDRICAL_SURFACE ( 'NONE', #16819, 0.3125000000000008300 ) ; +#2735 = ORIENTED_EDGE ( 'NONE', *, *, #12003, .F. ) ; +#2736 = EDGE_LOOP ( 'NONE', ( #9780, #11321, #4691, #15443, #9967, #2846 ) ) ; +#2737 = CARTESIAN_POINT ( 'NONE', ( -0.4606833792705947700, -0.01743562377178979600, 1.143750000000000000 ) ) ; +#2738 = VECTOR ( 'NONE', #14678, 39.37007874015748100 ) ; +#2739 = VERTEX_POINT ( 'NONE', #15498 ) ; +#2740 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.361111111111110300 ) ) ; +#2741 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.065972222222219200 ) ) ; +#2742 = EDGE_CURVE ( 'NONE', #7887, #1860, #2520, .T. ) ; +#2743 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.562500000000000900 ) ) ; +#2744 = ADVANCED_FACE ( 'NONE', ( #6924 ), #8524, .T. ) ; +#2745 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2746 = EDGE_LOOP ( 'NONE', ( #5454, #12424, #654, #15813, #9679, #18794 ) ) ; +#2747 = DIRECTION ( 'NONE', ( 0.1488963146160742200, 0.08935086513736796600, 0.9848077530122083500 ) ) ; +#2748 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.174024639073276300 ) ) ; +#2749 = DIRECTION ( 'NONE', ( 0.9772957051199558900, -0.2118799300407856500, 0.0000000000000000000 ) ) ; +#2750 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#2751 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.095486111111108100 ) ) ; +#2752 = VERTEX_POINT ( 'NONE', #5812 ) ; +#2753 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.357638888888888200 ) ) ; +#2754 = LINE ( 'NONE', #5173, #17050 ) ; +#2755 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#2756 = CARTESIAN_POINT ( 'NONE', ( 0.4505462270817887600, -0.09767944602039578500, 1.187613820323600600 ) ) ; +#2757 = VECTOR ( 'NONE', #16254, 39.37007874015748100 ) ; +#2758 = ORIENTED_EDGE ( 'NONE', *, *, #3628, .F. ) ; +#2759 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, 0.09201388888890133000 ) ) ; +#2760 = ORIENTED_EDGE ( 'NONE', *, *, #16104, .F. ) ; +#2761 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#2762 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.194444444444442000 ) ) ; +#2763 = AXIS2_PLACEMENT_3D ( 'NONE', #16742, #2198, #15376 ) ; +#2764 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2765 = CONICAL_SURFACE ( 'NONE', #15252, 0.4610132068742565100, 0.1745329251994272000 ) ; +#2766 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.6458333333333269300 ) ) ; +#2767 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #9594, #8179, #8305, #5132, #15558, #1031, #18605, #16937, #11088, #2376, #17067, #8238, #9724, #9782, #18544, #905, #2250, #12688, #3853, #6686, #5193, #16994, #5436, #1340, #1217, #5508, #15751, #2823, #8680, #11578, #15879, #7215, #17244, #13120, #9977, #14282, #16000, #13056, #4236, #14544, #6953, #15942, #2568, #1087, #17503, #18990, #1272, #8489, #8621, #17431, #8418, #18855, #10100, #15804, #18729, #5572, #5626, #17312, #14469, #2753, #9910, #10031, #5686, #10169, #7074, #4043, #11636, #11394, #18783, #12868, #14344, #7015, #1159, #11451, #2629, #11514, #12936, #4113, #2682, #14402, #17374, #8557, #12999, #4174, #7146, #18924, #13186, #7326, #56, #2875, #17627, #10357, #16064, #11699, #19044, #7401, #4296, #4363, #1521, #14652, #8749, #13243, #16192, #11831, #14601, #3017, #5757, #13314, #5876, #1411, #17687, #7265, #14789, #17569, #19115, #5815, #10234, #11771, #16131, #4427, #8812, #4481, #8873, #10288, #1469, #14720, #2947, #1131, #5605, #2468, #12974, #17288, #17344, #15920, #14325, #5412, #11370, #12836, #11427, #6930, #4019, #8343, #18644, #9815, #12731, #1010, #14253, #18580, #14438, #5481, #11312, #9762, #7117, #2657, #5547, #9883, #1193, #11247, #8282, #3964, #949, #7049, #8529, #18817, #2410, #15725, #2604, #15782, #18705, #12781, #3897, #4079, #2541, #14188, #4148, #17215, #12909, #8397, #1059, #6990, #8453, #18762, #9951, #15844, #5359, #14376, #10012, #15673, #11487, #6852, #17164, #1446, #8719, #4269, #10266, #1313, #1253, #1500, #4460, #14582, #11617, #8593, #13161, #10327, #18901, #2797, #5851, #5658, #32, #8847, #4211, #2994, #13094, #17473, #7246, #14515, #4405, #10068, #2724, #4335, #11744, #5730, #11806, #18960, #15977, #13030, #8657, #5794, #7191, #10143, #16040, #19020, #13282, #14632, #16107, #17603, #11553, #17546, #14763, #10206, #5920, #1386, #17408, #11671, #2859, #13226, #7302, #8791, #14692, #19085, #16230, #16169, #2916, #7371, #17660, #14960, #7497, #7435, #14885, #17993, #6128, #12000, #10590, #6069, #3181, #289, #10452, #1700, #8992, #15023, #13488, #10516, #17799, #91, #16440, #7630, #4648, #16374, #3114, #4711, #222, #15081, #13426, #6269, #9167, #6198, #16499, #7695, #10396, #4592, #1756, #17921, #17861, #11931, #4773, #3249, #9109, #13619, #12124, #7554, #12066, #150, #17732, #9053, #13548, #1635, #351, #10654, #8913, #1825, #3312, #11866, #1561, #3056, #5999, #13362, #4511, #14831, #16298, #481, #409, #18323, #5090, #12321, #3614, #7748, #3496, #9499, #18059, #10776, #5026, #4840, #665, #8000, #3362, #2152, #1952, #16635, #6384, #13676, #3555, #12263, #15144, #13874, #16571, #3433, #10965, #18119, #6324, #1889, #7823, #4956, #9295, #13732, #12196, #7889, #12452, #13804, #15269, #16756, #10713, #9240, #4901, #15213, #16829, #16697, #18187, #9353, #537, #12370, #10848, #6458, #15326, #2015, #13932, #6520, #7947, #15396, #594, #18259, #9430, #10909, #2090, #3749, #9677, #11163, #9741, #5208, #2333, #18559, #9609, #852, #8137, #14423, #12640, #3806, #16950, #18371, #3870, #14115, #6573, #793, #5592, #8191, #18881, #9558, #14496, #2268, #5646, #8579, #15903, #7098, #17396, #736, #12571, #923, #5281, #17014, #11105, #4198, #2391, #11220, #12710, #11034, #15575, #10051, #18437, #16895, #18502, #17085, #14057, #6768, #1238, #8073, #15519, #6706, #2210, #11541, #8257, #5152, #2708, #13015, #12516, #3685, #13987, #15459, #6640, #4497, #11724, #3038, #7178, #2899, #8897, #17456, #10190, #4445, #4254, #17712, #7421, #2779, #1542, #16026, #5779, #13079, #2974, #8642, #1298, #13209, #8832, #17, #17531, #10253, #16154, #14566, #7351 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3 ), + ( 0.01816797529623095900, 0.01893939393939394000, 0.02272727272727272800, 0.02651515151515151600, 0.03030303030303030400, 0.03409090909090908800, 0.03787878787878788000, 0.04166666666666666400, 0.04545454545454545600, 0.04924242424242424000, 0.05303030303030303200, 0.05681818181818181600, 0.06060606060606060800, 0.06439393939393939200, 0.06818181818181817700, 0.07196969696969697500, 0.07575757575757576000, 0.07954545454545454400, 0.08333333333333332900, 0.08712121212121212700, 0.09090909090909091200, 0.09469696969696969600, 0.09848484848484848100, 0.1022727272727272800, 0.1060606060606060600, 0.1098484848484848500, 0.1136363636363636300, 0.1174242424242424300, 0.1212121212121212000, 0.1250000000000000000, 0.1287878787878787800, 0.1325757575757575700, 0.1363636363636363500, 0.1401515151515151400, 0.1439393939393939500, 0.1477272727272727300, 0.1515151515151515200, 0.1553030303030303000, 0.1590909090909090900, 0.1628787878787878700, 0.1666666666666666600, 0.1704545454545454400, 0.1742424242424242500, 0.1780303030303030400, 0.1818181818181818200, 0.1856060606060606100, 0.1893939393939393900, 0.1931818181818181800, 0.1969696969696969600, 0.2007575757575757500, 0.2045454545454545600, 0.2083333333333333400, 0.2121212121212121300, 0.2159090909090908800, 0.2196969696969697000, 0.2234848484848484800, 0.2272727272727272700, 0.2310606060606060500, 0.2348484848484848600, 0.2386363636363636500, 0.2424242424242424300, 0.2462121212121212200, 0.2500000000000000000, 0.2537878787878787800, 0.2575757575757575700, 0.2613636363636363500, 0.2651515151515151400, 0.2689393939393939200, 0.2727272727272727100, 0.2765151515151514900, 0.2803030303030302800, 0.2840909090909090600, 0.2878787878787878500, 0.2916666666666666300, 0.2954545454545454100, 0.2992424242424242000, 0.3030303030303029800, 0.3068181818181817700, 0.3106060606060605500, 0.3143939393939393400, 0.3181818181818181200, 0.3219696969696969100, 0.3257575757575756900, 0.3295454545454544700, 0.3333333333333332600, 0.3371212121212120400, 0.3409090909090908300, 0.3446969696969697200, 0.3484848484848485100, 0.3522727272727274000, 0.3560606060606060800, 0.3598484848484848600, 0.3636363636363636500, 0.3674242424242424300, 0.3712121212121212200, 0.3750000000000000000, 0.3787878787878787800, 0.3825757575757575700, 0.3863636363636363500, 0.3901515151515151400, 0.3939393939393939200, 0.3977272727272727100, 0.4015151515151514900, 0.4053030303030302800, 0.4090909090909090600, 0.4128787878787878500, 0.4166666666666666300, 0.4204545454545454100, 0.4242424242424242000, 0.4280303030303029800, 0.4318181818181817700, 0.4356060606060605500, 0.4393939393939393400, 0.4431818181818181200, 0.4469696969696970200, 0.4507575757575758000, 0.4545454545454544700, 0.4583333333333332600, 0.4621212121212120400, 0.4659090909090908300, 0.4696969696969697200, 0.4734848484848485100, 0.4772727272727272900, 0.4810606060606060800, 0.4848484848484848600, 0.4886363636363636500, 0.4924242424242424300, 0.4962121212121212200, 0.5000000000000000000, 0.5037878787878787800, 0.5075757575757575700, 0.5113636363636363500, 0.5151515151515151400, 0.5189393939393939200, 0.5227272727272727100, 0.5265151515151514900, 0.5303030303030302800, 0.5340909090909090600, 0.5378787878787878500, 0.5416666666666666300, 0.5454545454545454100, 0.5492424242424242000, 0.5530303030303029800, 0.5568181818181817700, 0.5606060606060605500, 0.5643939393939394500, 0.5681818181818182300, 0.5719696969696970200, 0.5757575757575758000, 0.5795454545454545900, 0.5833333333333333700, 0.5871212121212121500, 0.5909090909090909400, 0.5946969696969697200, 0.5984848484848485100, 0.6022727272727272900, 0.6060606060606060800, 0.6098484848484848600, 0.6136363636363636500, 0.6174242424242424300, 0.6212121212121212200, 0.6250000000000000000, 0.6287878787878787800, 0.6325757575757575700, 0.6363636363636363500, 0.6401515151515151400, 0.6439393939393939200, 0.6477272727272728200, 0.6515151515151514900, 0.6553030303030301700, 0.6590909090909090600, 0.6628787878787878500, 0.6666666666666666300, 0.6704545454545454100, 0.6742424242424242000, 0.6780303030303029800, 0.6818181818181817700, 0.6856060606060605500, 0.6893939393939394500, 0.6931818181818182300, 0.6969696969696970200, 0.7007575757575758000, 0.7045454545454545900, 0.7083333333333333700, 0.7121212121212121500, 0.7159090909090909400, 0.7196969696969698300, 0.7234848484848485100, 0.7272727272727274000, 0.7310606060606060800, 0.7348484848484847500, 0.7386363636363636500, 0.7424242424242424300, 0.7462121212121212200, 0.7500000000000000000, 0.7537878787878787800, 0.7575757575757575700, 0.7613636363636363500, 0.7651515151515151400, 0.7689393939393939200, 0.7727272727272727100, 0.7765151515151514900, 0.7803030303030302800, 0.7840909090909090600, 0.7878787878787878500, 0.7916666666666666300, 0.7954545454545454100, 0.7992424242424242000, 0.8030303030303029800, 0.8068181818181817700, 0.8106060606060605500, 0.8143939393939393400, 0.8181818181818182300, 0.8219696969696970200, 0.8257575757575758000, 0.8295454545454545900, 0.8333333333333333700, 0.8371212121212121500, 0.8409090909090909400, 0.8446969696969697200, 0.8484848484848485100, 0.8522727272727272900, 0.8560606060606060800, 0.8598484848484848600, 0.8636363636363636500, 0.8674242424242424300, 0.8712121212121212200, 0.8750000000000000000, 0.8787878787878787800, 0.8825757575757575700, 0.8863636363636363500, 0.8901515151515151400, 0.8939393939393940300, 0.8977272727272727100, 0.9015151515151516000, 0.9053030303030302800, 0.9090909090909089500, 0.9126061267022616000 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9753096629729354200, 0.9844977225947722000, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9293588779142116800, 0.9898301437096240800 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2768 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#2769 = ORIENTED_EDGE ( 'NONE', *, *, #11441, .F. ) ; +#2770 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323600600 ) ) ; +#2771 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, 0.1597222222222351400 ) ) ; +#2772 = ORIENTED_EDGE ( 'NONE', *, *, #15845, .T. ) ; +#2773 = EDGE_LOOP ( 'NONE', ( #16535, #10589, #16580, #11998 ) ) ; +#2774 = VECTOR ( 'NONE', #4813, 39.37007874015748100 ) ; +#2775 = ORIENTED_EDGE ( 'NONE', *, *, #1036, .F. ) ; +#2776 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.6684027777777712400 ) ) ; +#2777 = ORIENTED_EDGE ( 'NONE', *, *, #11916, .T. ) ; +#2778 = VECTOR ( 'NONE', #2929, 39.37007874015748900 ) ; +#2779 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, 0.03125000000001212900 ) ) ; +#2780 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.2777777777777680200 ) ) ; +#2781 = CARTESIAN_POINT ( 'NONE', ( 0.2877284582589614300, -0.06548925183773678100, 0.1337462512313880000 ) ) ; +#2782 = EDGE_CURVE ( 'NONE', #9072, #7672, #15880, .T. ) ; +#2783 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, 0.07291666666667914700 ) ) ; +#2784 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#2785 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.1840277777777906400 ) ) ; +#2786 = EDGE_CURVE ( 'NONE', #8954, #14143, #11307, .T. ) ; +#2787 = CARTESIAN_POINT ( 'NONE', ( -1.901255294220791700E-017, -2.836574622358640500E-017, 3.802149639073320900 ) ) ; +#2788 = DIRECTION ( 'NONE', ( 0.5673761158323297200, 0.8234587683563876500, 0.0000000000000000000 ) ) ; +#2789 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.305555555555554200 ) ) ; +#2790 = AXIS2_PLACEMENT_3D ( 'NONE', #12897, #12772, #3954 ) ; +#2791 = ORIENTED_EDGE ( 'NONE', *, *, #13214, .T. ) ; +#2792 = VERTEX_POINT ( 'NONE', #2873 ) ; +#2793 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.4270833333333252100 ) ) ; +#2794 = CARTESIAN_POINT ( 'NONE', ( -0.2321251145655892600, 0.3983103163368959500, 1.143750000000000000 ) ) ; +#2795 = ORIENTED_EDGE ( 'NONE', *, *, #2680, .T. ) ; +#2796 = LINE ( 'NONE', #2619, #17545 ) ; +#2797 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.8506944444444392000 ) ) ; +#2798 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.03472222222223415200 ) ) ; +#2799 = EDGE_LOOP ( 'NONE', ( #14926, #14779, #11600, #7290 ) ) ; +#2800 = DIRECTION ( 'NONE', ( -0.2243975804000505100, 0.9744976787610132300, 0.0000000000000000000 ) ) ; +#2801 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2802 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.1250000000000127400 ) ) ; +#2803 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.032986111111107600 ) ) ; +#2804 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#2805 = EDGE_CURVE ( 'NONE', #2227, #12668, #2320, .T. ) ; +#2806 = ADVANCED_FACE ( 'NONE', ( #14075 ), #7143, .F. ) ; +#2807 = EDGE_LOOP ( 'NONE', ( #2812, #18944, #17808, #14719 ) ) ; +#2808 = ORIENTED_EDGE ( 'NONE', *, *, #4909, .T. ) ; +#2809 = EDGE_CURVE ( 'NONE', #17578, #5928, #15641, .T. ) ; +#2810 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#2811 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.9895833333333297100 ) ) ; +#2812 = ORIENTED_EDGE ( 'NONE', *, *, #7312, .F. ) ; +#2813 = EDGE_CURVE ( 'NONE', #16695, #12745, #12674, .T. ) ; +#2814 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.451388888888888800 ) ) ; +#2815 = VECTOR ( 'NONE', #18331, 39.37007874015748100 ) ; +#2816 = ORIENTED_EDGE ( 'NONE', *, *, #7354, .F. ) ; +#2817 = AXIS2_PLACEMENT_3D ( 'NONE', #6856, #8597, #11317 ) ; +#2818 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2819 = ORIENTED_EDGE ( 'NONE', *, *, #13930, .T. ) ; +#2820 = DIRECTION ( 'NONE', ( 0.9584846895403633700, -0.2851439985633802400, 0.0000000000000000000 ) ) ; +#2821 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#2822 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.074652777777774600 ) ) ; +#2823 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.468749999999999600 ) ) ; +#2824 = CARTESIAN_POINT ( 'NONE', ( -0.007726579567556546800, -0.2786708519778971500, -1.556917725157686400 ) ) ; +#2825 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, 0.03298611111112314400 ) ) ; +#2826 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2827 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.215277777777775500 ) ) ; +#2828 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#2829 = CARTESIAN_POINT ( 'NONE', ( 0.02318798865182184300, -0.2994749760777526400, 0.1469145070378381200 ) ) ; +#2830 = ORIENTED_EDGE ( 'NONE', *, *, #3769, .F. ) ; +#2831 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #3040, #9097, #10566, #7484, #14677, #5838, #16156, #10310, #202, #13343, #13265, #4447 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 4 ), + ( 0.04136160871895956000, 0.04302413093352368300, 0.04468665314808780600, 0.04551791425536987100, 0.04634917536265192900, 0.04801169757721605200 ), + .UNSPECIFIED. ) ; +#2832 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.3888888888888804000 ) ) ; +#2833 = ORIENTED_EDGE ( 'NONE', *, *, #11032, .F. ) ; +#2834 = LINE ( 'NONE', #3508, #15710 ) ; +#2835 = ORIENTED_EDGE ( 'NONE', *, *, #5309, .F. ) ; +#2836 = EDGE_CURVE ( 'NONE', #13288, #405, #14266, .T. ) ; +#2837 = PLANE ( 'NONE', #11224 ) ; +#2838 = AXIS2_PLACEMENT_3D ( 'NONE', #9100, #5984, #3105 ) ; +#2839 = ORIENTED_EDGE ( 'NONE', *, *, #7775, .T. ) ; +#2840 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323615500 ) ) ; +#2841 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.7708333333333277100 ) ) ; +#2842 = AXIS2_PLACEMENT_3D ( 'NONE', #7141, #1270, #8552 ) ; +#2843 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.5607638888888817300 ) ) ; +#2844 = SECURITY_CLASSIFICATION ( '', '', #4465 ) ; +#2845 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.1701388888888782400 ) ) ; +#2846 = ORIENTED_EDGE ( 'NONE', *, *, #12664, .F. ) ; +#2847 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.7916666666666611900 ) ) ; +#2848 = DIRECTION ( 'NONE', ( 0.7862080194966530900, 0.6179619325485594700, 0.0000000000000000000 ) ) ; +#2849 = DIRECTION ( 'NONE', ( 1.000000000000000000, 3.641531520770513500E-014, 0.0000000000000000000 ) ) ; +#2850 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.423611111111110500 ) ) ; +#2851 = VERTEX_POINT ( 'NONE', #17371 ) ; +#2852 = LOCAL_TIME ( 13, 36, 41.00000000000000000, #328 ) ; +#2853 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#2854 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.579861111111112000 ) ) ; +#2855 = ORIENTED_EDGE ( 'NONE', *, *, #13976, .T. ) ; +#2856 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.4062499999999917300 ) ) ; +#2857 = CARTESIAN_POINT ( 'NONE', ( -0.3083825982240720500, 0.01993136498562017600, 0.1706925767549089300 ) ) ; +#2858 = FACE_OUTER_BOUND ( 'NONE', #18032, .T. ) ; +#2859 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.7152777777777714600 ) ) ; +#2860 = EDGE_CURVE ( 'NONE', #3966, #16616, #7604, .T. ) ; +#2861 = CARTESIAN_POINT ( 'NONE', ( 0.2154822354126408900, 0.4162859218392699900, 1.484375000000000200 ) ) ; +#2862 = EDGE_LOOP ( 'NONE', ( #3929, #13090, #18807, #13897 ) ) ; +#2863 = AXIS2_PLACEMENT_3D ( 'NONE', #430, #18080, #1781 ) ; +#2864 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2865 = VECTOR ( 'NONE', #17849, 39.37007874015748900 ) ; +#2866 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.022569444444440900 ) ) ; +#2867 = ORIENTED_EDGE ( 'NONE', *, *, #79, .T. ) ; +#2868 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.149305555555552900 ) ) ; +#2869 = CYLINDRICAL_SURFACE ( 'NONE', #11918, 0.3125000000000008300 ) ; +#2870 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.374999999999999300 ) ) ; +#2871 = DIRECTION ( 'NONE', ( 0.9921147013144768800, 0.1253332335643113100, 0.0000000000000000000 ) ) ; +#2872 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.562500000000000000 ) ) ; +#2873 = CARTESIAN_POINT ( 'NONE', ( 0.3893757946457752600, -0.2609847755022707300, 1.484375000000000200 ) ) ; +#2874 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.137152777777775000 ) ) ; +#2875 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.253472222222220100 ) ) ; +#2876 = CARTESIAN_POINT ( 'NONE', ( 0.1616086329535751700, 0.4400104683469203700, 1.591590229135180200 ) ) ; +#2877 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.1874999999999897300 ) ) ; +#2878 = CIRCLE ( 'NONE', #15161, 0.4610132068742565100 ) ; +#2879 = ORIENTED_EDGE ( 'NONE', *, *, #14287, .F. ) ; +#2880 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.587227003692501100 ) ) ; +#2881 = EDGE_CURVE ( 'NONE', #11322, #553, #10599, .T. ) ; +#2882 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.263888888888887100 ) ) ; +#2883 = DIRECTION ( 'NONE', ( -1.000000000000000000, 1.953992523340275500E-014, 0.0000000000000000000 ) ) ; +#2884 = CARTESIAN_POINT ( 'NONE', ( -0.2953547369971147900, -6.966329251790343400E-015, 0.1348988222100558100 ) ) ; +#2885 = LINE ( 'NONE', #18248, #15094 ) ; +#2886 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.5347222222222148800 ) ) ; +#2887 = VECTOR ( 'NONE', #865, 39.37007874015748100 ) ; +#2888 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #627, #8100, #14022, #7972, #3580, #5056, #16791, #9461, #6549 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7954545454545454100, 0.7992424242424242000, 0.8030303030303029800, 0.8068181818181817700, 0.8106060606060605500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2889 = EDGE_CURVE ( 'NONE', #11979, #9361, #15430, .T. ) ; +#2890 = CARTESIAN_POINT ( 'NONE', ( -0.1278875336514692900, -0.4509671176887998200, 1.484375000000000200 ) ) ; +#2891 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, 0.1666666666666797300 ) ) ; +#2892 = AXIS2_PLACEMENT_3D ( 'NONE', #10545, #6226, #4867 ) ; +#2893 = ADVANCED_FACE ( 'NONE', ( #17504 ), #455, .T. ) ; +#2894 = FACE_OUTER_BOUND ( 'NONE', #17262, .T. ) ; +#2895 = VERTEX_POINT ( 'NONE', #8554 ) ; +#2896 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.2291666666666567200 ) ) ; +#2897 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.1284722222222112700 ) ) ; +#2898 = FACE_BOUND ( 'NONE', #5934, .T. ) ; +#2899 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.003472222222234315200 ) ) ; +#2900 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.1041666666666554700 ) ) ; +#2901 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.09027777777779035000 ) ) ; +#2902 = ORIENTED_EDGE ( 'NONE', *, *, #1501, .F. ) ; +#2903 = DIRECTION ( 'NONE', ( 0.5673761158323235000, 0.8234587683563917600, 0.0000000000000000000 ) ) ; +#2904 = DIRECTION ( 'NONE', ( 0.1500969283399706300, 0.9886712861729654000, -0.0000000000000000000 ) ) ; +#2905 = CARTESIAN_POINT ( 'NONE', ( 0.4606833792705947200, 0.01743562377179322000, 1.587900241027141400 ) ) ; +#2906 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.461805555555554900 ) ) ; +#2907 = CYLINDRICAL_SURFACE ( 'NONE', #1290, 0.4610132068742565100 ) ; +#2908 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.486111111111111200 ) ) ; +#2909 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2910 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.552083333333333900 ) ) ; +#2911 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.4513888888888809000 ) ) ; +#2912 = EDGE_CURVE ( 'NONE', #9072, #9899, #14659, .T. ) ; +#2913 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#2914 = ORIENTED_EDGE ( 'NONE', *, *, #8631, .T. ) ; +#2915 = VECTOR ( 'NONE', #10007, 39.37007874015748900 ) ; +#2916 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.6874999999999934500 ) ) ; +#2917 = EDGE_CURVE ( 'NONE', #4412, #6878, #2988, .T. ) ; +#2918 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2919 = EDGE_CURVE ( 'NONE', #12668, #3281, #18895, .T. ) ; +#2920 = VECTOR ( 'NONE', #7932, 39.37007874015748100 ) ; +#2921 = CIRCLE ( 'NONE', #9431, 0.4687475818742552500 ) ; +#2922 = AXIS2_PLACEMENT_3D ( 'NONE', #625, #3644, #16959 ) ; +#2923 = ORIENTED_EDGE ( 'NONE', *, *, #10145, .T. ) ; +#2924 = PLANE ( 'NONE', #6590 ) ; +#2925 = ORIENTED_EDGE ( 'NONE', *, *, #17999, .F. ) ; +#2926 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2927 = CIRCLE ( 'NONE', #11667, 0.4610132068742565100 ) ; +#2928 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.9670138888888848400 ) ) ; +#2929 = DIRECTION ( 'NONE', ( -0.1442440472914118500, 0.09668166541820005800, 0.9848077530122091300 ) ) ; +#2930 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2931 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.190972222222220300 ) ) ; +#2932 = ORIENTED_EDGE ( 'NONE', *, *, #10316, .F. ) ; +#2933 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.218749999999998200 ) ) ; +#2934 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.006944444444456345100 ) ) ; +#2935 = CIRCLE ( 'NONE', #1691, 0.4687499999999995600 ) ; +#2936 = DIRECTION ( 'NONE', ( 0.5673761158323411500, -0.8234587683563795400, 0.0000000000000000000 ) ) ; +#2937 = LINE ( 'NONE', #7188, #14909 ) ; +#2938 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.4548611111111029400 ) ) ; +#2939 = LINE ( 'NONE', #15397, #415 ) ; +#2940 = CARTESIAN_POINT ( 'NONE', ( -0.1051858231909547400, 0.4567934304613031100, 1.484375000000000200 ) ) ; +#2941 = ORIENTED_EDGE ( 'NONE', *, *, #13128, .T. ) ; +#2942 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -0.1443375672974062400, 1.272329099369260200 ) ) ; +#2943 = EDGE_CURVE ( 'NONE', #15863, #11934, #11515, .T. ) ; +#2944 = LINE ( 'NONE', #9712, #7795 ) ; +#2945 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.105902777777774600 ) ) ; +#2946 = CONICAL_SURFACE ( 'NONE', #9308, 0.3144999999999991100, 0.3490658503988666700 ) ; +#2947 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.124999999999996900 ) ) ; +#2948 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#2949 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2950 = ORIENTED_EDGE ( 'NONE', *, *, #18603, .F. ) ; +#2951 = AXIS2_PLACEMENT_3D ( 'NONE', #15578, #8435, #6910 ) ; +#2952 = CARTESIAN_POINT ( 'NONE', ( 0.1589412568245171800, 0.4327480257511626700, 1.591590229135180200 ) ) ; +#2953 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#2954 = CARTESIAN_POINT ( 'NONE', ( -0.2665657570536995000, 0.09294260748762611700, 0.09730526141310376400 ) ) ; +#2955 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.055555555555552000 ) ) ; +#2956 = CARTESIAN_POINT ( 'NONE', ( -0.4418741004648775200, -0.1314551491986582500, 1.590985962198545200 ) ) ; +#2957 = CARTESIAN_POINT ( 'NONE', ( 0.2956023356466857500, -0.06779953472401832600, 0.1562325597296304300 ) ) ; +#2958 = EDGE_CURVE ( 'NONE', #9899, #4197, #13063, .T. ) ; +#2959 = AXIS2_PLACEMENT_3D ( 'NONE', #10648, #13351, #14879 ) ; +#2960 = ORIENTED_EDGE ( 'NONE', *, *, #4391, .T. ) ; +#2961 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.3506944444444357000 ) ) ; +#2962 = ORIENTED_EDGE ( 'NONE', *, *, #579, .F. ) ; +#2963 = CARTESIAN_POINT ( 'NONE', ( -0.04632776727398118400, -0.4586795339797645200, 1.187613820323616000 ) ) ; +#2964 = VERTEX_POINT ( 'NONE', #115 ) ; +#2965 = VERTEX_POINT ( 'NONE', #5873 ) ; +#2966 = VECTOR ( 'NONE', #13245, 39.37007874015748900 ) ; +#2967 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.420138888888889100 ) ) ; +#2968 = CIRCLE ( 'NONE', #12853, 0.05000000000000001000 ) ; +#2969 = ORIENTED_EDGE ( 'NONE', *, *, #17962, .T. ) ; +#2970 = ORIENTED_EDGE ( 'NONE', *, *, #705, .T. ) ; +#2971 = LINE ( 'NONE', #1473, #17242 ) ; +#2972 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.2673611111111014500 ) ) ; +#2973 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.1354166666666558600 ) ) ; +#2974 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.04861111111112360900 ) ) ; +#2975 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.1006944444444331800 ) ) ; +#2976 = CARTESIAN_POINT ( 'NONE', ( 0.08004051183259097700, -0.2794777812186791700, 0.1217174510852138300 ) ) ; +#2977 = DIRECTION ( 'NONE', ( 0.7025573672080109900, 0.7116271114718353300, 0.0000000000000000000 ) ) ; +#2978 = EDGE_CURVE ( 'NONE', #10467, #6704, #7147, .T. ) ; +#2979 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2980 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.454861111111110900 ) ) ; +#2981 = ORIENTED_EDGE ( 'NONE', *, *, #4991, .T. ) ; +#2982 = ORIENTED_EDGE ( 'NONE', *, *, #7705, .F. ) ; +#2983 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -1.225694444444442400 ) ) ; +#2984 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.572916666666667600 ) ) ; +#2985 = EDGE_LOOP ( 'NONE', ( #8846, #18720, #16905, #15957 ) ) ; +#2986 = EDGE_LOOP ( 'NONE', ( #15398, #723, #10661, #3089 ) ) ; +#2987 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.07638888888887793200 ) ) ; +#2988 = CIRCLE ( 'NONE', #15183, 0.4687475818742574700 ) ; +#2989 = LINE ( 'NONE', #8709, #5677 ) ; +#2990 = ORIENTED_EDGE ( 'NONE', *, *, #5029, .T. ) ; +#2991 = VERTEX_POINT ( 'NONE', #1658 ) ; +#2992 = CARTESIAN_POINT ( 'NONE', ( -0.3001666188287173700, 0.06852850266599086500, 0.1689066641071196900 ) ) ; +#2993 = LINE ( 'NONE', #11728, #17731 ) ; +#2994 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.8298611111111057200 ) ) ; +#2995 = AXIS2_PLACEMENT_3D ( 'NONE', #3378, #6593, #15419 ) ; +#2996 = CARTESIAN_POINT ( 'NONE', ( 0.1460657352116105100, 0.2043440430510083100, 1.250514193469174100 ) ) ; +#2997 = DIRECTION ( 'NONE', ( 0.8660254037844397100, 0.0000000000000000000, 0.4999999999999979500 ) ) ; +#2998 = ORIENTED_EDGE ( 'NONE', *, *, #18557, .F. ) ; +#2999 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.8038194444444390900 ) ) ; +#3000 = PLANE ( 'NONE', #11071 ) ; +#3001 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#3002 = ORIENTED_EDGE ( 'NONE', *, *, #11557, .T. ) ; +#3003 = LINE ( 'NONE', #3404, #18669 ) ; +#3004 = VECTOR ( 'NONE', #7261, 39.37007874015748100 ) ; +#3005 = ORIENTED_EDGE ( 'NONE', *, *, #17002, .T. ) ; +#3006 = ORIENTED_EDGE ( 'NONE', *, *, #7613, .F. ) ; +#3007 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.013888888888885300 ) ) ; +#3008 = EDGE_CURVE ( 'NONE', #11841, #2227, #16100, .T. ) ; +#3009 = VECTOR ( 'NONE', #2804, 39.37007874015748100 ) ; +#3010 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.350694444444443500 ) ) ; +#3011 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.3819444444444356500 ) ) ; +#3012 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3013 = CARTESIAN_POINT ( 'NONE', ( -0.4624991113355813600, 0.07629635976766763200, 1.143750000000000000 ) ) ; +#3014 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.532986111111111600 ) ) ; +#3015 = ORIENTED_EDGE ( 'NONE', *, *, #5495, .F. ) ; +#3016 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.8038194444444389800 ) ) ; +#3017 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.197916666666664300 ) ) ; +#3018 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3019 = CARTESIAN_POINT ( 'NONE', ( 0.07035757220611181500, 0.4634372746620906700, 1.484375000000000200 ) ) ; +#3020 = CARTESIAN_POINT ( 'NONE', ( -0.1482845020785528700, 0.2368083099816252800, 0.08976463145334355500 ) ) ; +#3021 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.059027777777774100 ) ) ; +#3022 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.201388888888886600 ) ) ; +#3023 = AXIS2_PLACEMENT_3D ( 'NONE', #1049, #9938, #11474 ) ; +#3024 = VERTEX_POINT ( 'NONE', #7398 ) ; +#3025 = ORIENTED_EDGE ( 'NONE', *, *, #13165, .F. ) ; +#3026 = LINE ( 'NONE', #11785, #3944 ) ; +#3027 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.3819444444444359300 ) ) ; +#3028 = ORIENTED_EDGE ( 'NONE', *, *, #16512, .T. ) ; +#3029 = VERTEX_POINT ( 'NONE', #14844 ) ; +#3030 = ADVANCED_FACE ( 'NONE', ( #3448 ), #8870, .F. ) ; +#3031 = CARTESIAN_POINT ( 'NONE', ( -0.3120386438412785500, -7.339574685704749600E-015, 0.1808219196579992600 ) ) ; +#3032 = ORIENTED_EDGE ( 'NONE', *, *, #9108, .F. ) ; +#3033 = VERTEX_POINT ( 'NONE', #17683 ) ; +#3034 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.2152777777777675500 ) ) ; +#3035 = ORIENTED_EDGE ( 'NONE', *, *, #2786, .T. ) ; +#3036 = VERTEX_POINT ( 'NONE', #13310 ) ; +#3037 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.1562499999999893700 ) ) ; +#3038 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.003472222222210275000 ) ) ; +#3039 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.09027777777779059900 ) ) ; +#3040 = CARTESIAN_POINT ( 'NONE', ( 0.2816817904617434100, -4.105198628045699100E-016, -1.551651542871590500 ) ) ; +#3041 = LINE ( 'NONE', #3051, #14781 ) ; +#3042 = ADVANCED_FACE ( 'NONE', ( #15187 ), #3225, .T. ) ; +#3043 = EDGE_CURVE ( 'NONE', #11289, #6867, #8794, .T. ) ; +#3044 = EDGE_LOOP ( 'NONE', ( #5738, #17540, #5528, #11938 ) ) ; +#3045 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.5069444444444367600 ) ) ; +#3046 = DIRECTION ( 'NONE', ( 1.000000000000000000, 3.552713678800501600E-014, 0.0000000000000000000 ) ) ; +#3047 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.437499999999999300 ) ) ; +#3048 = EDGE_CURVE ( 'NONE', #15440, #6632, #14509, .T. ) ; +#3049 = AXIS2_PLACEMENT_3D ( 'NONE', #152, #6130, #10656 ) ; +#3050 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.7048611111111050500 ) ) ; +#3051 = CARTESIAN_POINT ( 'NONE', ( 0.06919666627598218500, 0.4557905201830951300, 1.484375000000000200 ) ) ; +#3052 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.468750000000000200 ) ) ; +#3053 = AXIS2_PLACEMENT_3D ( 'NONE', #14621, #11794, #8970 ) ; +#3054 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.1423611111111007200 ) ) ; +#3055 = VERTEX_POINT ( 'NONE', #502 ) ; +#3056 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.4756944444444362600 ) ) ; +#3057 = ORIENTED_EDGE ( 'NONE', *, *, #4635, .T. ) ; +#3058 = CIRCLE ( 'NONE', #17252, 0.4687499999999995600 ) ; +#3059 = ORIENTED_EDGE ( 'NONE', *, *, #2551, .F. ) ; +#3060 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, 0.04513888888890103100 ) ) ; +#3061 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#3062 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.7274305555555497000 ) ) ; +#3063 = VERTEX_POINT ( 'NONE', #175 ) ; +#3064 = CARTESIAN_POINT ( 'NONE', ( 0.1034502481550414700, 0.4492562999771360100, 1.590308733529502500 ) ) ; +#3065 = EDGE_CURVE ( 'NONE', #7338, #3309, #11619, .T. ) ; +#3066 = DIRECTION ( 'NONE', ( -0.5567675210715114000, -0.8306683619109880300, 0.0000000000000000000 ) ) ; +#3067 = PLANE ( 'NONE', #15637 ) ; +#3068 = EDGE_CURVE ( 'NONE', #10792, #18908, #6901, .T. ) ; +#3069 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, 0.1284722222222350300 ) ) ; +#3070 = CARTESIAN_POINT ( 'NONE', ( 0.3477592364557785500, 0.3026494512999817200, 1.484375000000000200 ) ) ; +#3071 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.8159722222222172100 ) ) ; +#3072 = EDGE_CURVE ( 'NONE', #15445, #12734, #9966, .T. ) ; +#3073 = AXIS2_PLACEMENT_3D ( 'NONE', #9567, #3567, #11178 ) ; +#3074 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.371527777777776800 ) ) ; +#3075 = VERTEX_POINT ( 'NONE', #9186 ) ; +#3076 = AXIS2_PLACEMENT_3D ( 'NONE', #3835, #15675, #8288 ) ; +#3077 = PLANE ( 'NONE', #8738 ) ; +#3078 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.3749999999999912300 ) ) ; +#3079 = VERTEX_POINT ( 'NONE', #13756 ) ; +#3080 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.8385416666666616300 ) ) ; +#3081 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3082 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.8576388888888839500 ) ) ; +#3083 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#3084 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#3085 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.9444444444444399800 ) ) ; +#3086 = LINE ( 'NONE', #5324, #2168 ) ; +#3087 = ORIENTED_EDGE ( 'NONE', *, *, #2096, .F. ) ; +#3088 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.4861111111111034400 ) ) ; +#3089 = ORIENTED_EDGE ( 'NONE', *, *, #7696, .F. ) ; +#3090 = EDGE_CURVE ( 'NONE', #2237, #10886, #6672, .T. ) ; +#3091 = CARTESIAN_POINT ( 'NONE', ( -0.4581073617749781800, 0.09931871720662120700, 1.143750000000000000 ) ) ; +#3092 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.3940972222222137200 ) ) ; +#3093 = DATE_AND_TIME ( #4012, #9089 ) ; +#3094 = ORIENTED_EDGE ( 'NONE', *, *, #3372, .T. ) ; +#3095 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3096 = AXIS2_PLACEMENT_3D ( 'NONE', #13851, #15064, #7859 ) ; +#3097 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#3098 = LINE ( 'NONE', #12752, #10474 ) ; +#3099 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.01041666666665486600 ) ) ; +#3100 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3101 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.02777777777779011000 ) ) ; +#3102 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#3103 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.6267361111111041700 ) ) ; +#3104 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3105 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3106 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.326388888888887500 ) ) ; +#3107 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3108 = DIRECTION ( 'NONE', ( 0.5145511247964108500, 0.8574597016599372300, -0.0000000000000000000 ) ) ; +#3109 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.249999999999998400 ) ) ; +#3110 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.08333333333332251800 ) ) ; +#3111 = FACE_OUTER_BOUND ( 'NONE', #18738, .T. ) ; +#3112 = CARTESIAN_POINT ( 'NONE', ( -0.2453852267898017600, 0.1838677393741163500, 0.1641307387787340800 ) ) ; +#3113 = CIRCLE ( 'NONE', #3821, 0.4687499999999995000 ) ; +#3114 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.5972222222222149900 ) ) ; +#3115 = EDGE_CURVE ( 'NONE', #5674, #553, #13816, .T. ) ; +#3116 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #13148, #4319, #15829, #1182, #14619, #4256, #16090, #8581, #11473 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.06818181818181817700, 0.07196969696969697500, 0.07575757575757576000, 0.07954545454545454400, 0.08333333333333332900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#3117 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#3118 = FACE_OUTER_BOUND ( 'NONE', #6671, .T. ) ; +#3119 = ADVANCED_FACE ( 'NONE', ( #17970 ), #11286, .T. ) ; +#3120 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.440972222222221900 ) ) ; +#3121 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.6996527777777715700 ) ) ; +#3122 = DIRECTION ( 'NONE', ( 0.8306683619109879200, -0.5567675210715112800, 0.0000000000000000000 ) ) ; +#3123 = DIRECTION ( 'NONE', ( 1.000000000000000000, -4.174438572590588600E-014, 0.0000000000000000000 ) ) ; +#3124 = VECTOR ( 'NONE', #15293, 39.37007874015748100 ) ; +#3125 = ORIENTED_EDGE ( 'NONE', *, *, #15267, .F. ) ; +#3126 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3127 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3128 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.8819444444444398700 ) ) ; +#3129 = AXIS2_PLACEMENT_3D ( 'NONE', #13215, #10386, #11796 ) ; +#3130 = CIRCLE ( 'NONE', #5164, 0.4687475818742591300 ) ; +#3131 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.326388888888887700 ) ) ; +#3132 = ADVANCED_FACE ( 'NONE', ( #13595 ), #7830, .T. ) ; +#3133 = ORIENTED_EDGE ( 'NONE', *, *, #7358, .T. ) ; +#3134 = CARTESIAN_POINT ( 'NONE', ( 0.3953002468276861100, 0.2372148641431572100, 1.592921120922338200 ) ) ; +#3135 = CONICAL_SURFACE ( 'NONE', #8574, 0.4687475818742561400, 0.1745329251994337000 ) ; +#3136 = CARTESIAN_POINT ( 'NONE', ( -0.4684146371797786600, 0.01772823103797581400, 1.484375000000000200 ) ) ; +#3137 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.508680555555556000 ) ) ; +#3138 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3139 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #844, #5334, #5443, #5272, #6893, #2384, #18492, #12875, #14163 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.8712121212121212200, 0.8750000000000000000, 0.8787878787878787800, 0.8825757575757575700, 0.8863636363636363500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#3140 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.8628472222222173200 ) ) ; +#3141 = CARTESIAN_POINT ( 'NONE', ( -0.4592360163321195800, 0.04044079890273364500, 1.484375000000000200 ) ) ; +#3142 = CARTESIAN_POINT ( 'NONE', ( -0.3893737859852254800, 0.2609834291683991200, 1.484375000000000200 ) ) ; +#3143 = CARTESIAN_POINT ( 'NONE', ( 0.3144999999999991100, -3.200399073352503800E-016, 0.9375000000000000000 ) ) ; +#3144 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.128472222222219700 ) ) ; +#3145 = CARTESIAN_POINT ( 'NONE', ( -0.2197318450003290000, 0.1750122109393549000, 0.09346630819354000100 ) ) ; +#3146 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.9722222222222179900 ) ) ; +#3147 = CARTESIAN_POINT ( 'NONE', ( 0.2839829582566599800, -0.1054354480061227000, 0.1552628245102400400 ) ) ; +#3148 = LINE ( 'NONE', #17375, #16737 ) ; +#3149 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.1597222222222119100 ) ) ; +#3150 = FACE_OUTER_BOUND ( 'NONE', #8961, .T. ) ; +#3151 = ORIENTED_EDGE ( 'NONE', *, *, #9952, .T. ) ; +#3152 = CARTESIAN_POINT ( 'NONE', ( -0.2802162586133502000, -0.3660765293230667200, 1.484375000000000200 ) ) ; +#3154 = EDGE_CURVE ( 'NONE', #15612, #1172, #7367, .T. ) ; +#3153 = VECTOR ( 'NONE', #1685, 39.37007874015748100 ) ; +#3155 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.3836805555555469800 ) ) ; +#3156 = CARTESIAN_POINT ( 'NONE', ( -0.3953002468276878300, -0.2372148641431544900, 1.143750000000000000 ) ) ; +#3157 = AXIS2_PLACEMENT_3D ( 'NONE', #16237, #17742, #7444 ) ; +#3158 = CARTESIAN_POINT ( 'NONE', ( -0.2933307685854835100, 0.1042350493214665400, 0.1783224269025547000 ) ) ; +#3159 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.01041666666667863400 ) ) ; +#3160 = VERTEX_POINT ( 'NONE', #3385 ) ; +#3161 = CARTESIAN_POINT ( 'NONE', ( 2.169277186090589500E-016, 1.660490876335776200E-016, -1.174024639073269100 ) ) ; +#3162 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.03819444444443267900 ) ) ; +#3163 = CARTESIAN_POINT ( 'NONE', ( 0.04292432333180430000, -0.2874482587691791200, 0.1202364969735485300 ) ) ; +#3164 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #5954, #117, #16528, #17688, #13452, #9016, #178, #10481, #9263 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.8257575757575758000, 0.8295454545454545900, 0.8333333333333333700, 0.8371212121212121500, 0.8409090909090909400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#3165 = LINE ( 'NONE', #12970, #2692 ) ; +#3166 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.5885416666666594100 ) ) ; +#3167 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.7187499999999937800 ) ) ; +#3168 = PLANE ( 'NONE', #7907 ) ; +#3169 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.166666666666663900 ) ) ; +#3170 = FACE_OUTER_BOUND ( 'NONE', #18663, .T. ) ; +#3171 = DIRECTION ( 'NONE', ( -0.07982527466453562300, -0.1542128889936748000, -0.9848077530122089100 ) ) ; +#3172 = LINE ( 'NONE', #15975, #171 ) ; +#3173 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.138888888888886000 ) ) ; +#3174 = FACE_OUTER_BOUND ( 'NONE', #5891, .T. ) ; +#3175 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.246527777777776100 ) ) ; +#3176 = EDGE_LOOP ( 'NONE', ( #1836, #16311, #12508 ) ) ; +#3177 = VECTOR ( 'NONE', #6399, 39.37007874015748900 ) ; +#3178 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.2395833333333236000 ) ) ; +#3179 = EDGE_CURVE ( 'NONE', #4317, #7829, #9676, .T. ) ; +#3180 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.5173611111111036100 ) ) ; +#3181 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.6458333333333263800 ) ) ; +#3182 = EDGE_CURVE ( 'NONE', #982, #12415, #12205, .T. ) ; +#3183 = VERTEX_POINT ( 'NONE', #9705 ) ; +#3184 = DIRECTION ( 'NONE', ( 0.3420201433256694300, -4.188538737677000400E-017, 0.9396926207859080900 ) ) ; +#3185 = EDGE_CURVE ( 'NONE', #4957, #10624, #14203, .T. ) ; +#3186 = EDGE_LOOP ( 'NONE', ( #11983, #13853, #1231, #15693 ) ) ; +#3187 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -1.447916666666666300 ) ) ; +#3188 = AXIS2_PLACEMENT_3D ( 'NONE', #6005, #1641, #13433 ) ; +#3189 = DIRECTION ( 'NONE', ( 0.03896623090933257900, 0.1692197460574994500, -0.9848077530122089100 ) ) ; +#3190 = ORIENTED_EDGE ( 'NONE', *, *, #5498, .F. ) ; +#3191 = FACE_OUTER_BOUND ( 'NONE', #7890, .T. ) ; +#3192 = VECTOR ( 'NONE', #10025, 39.37007874015748100 ) ; +#3193 = ORIENTED_EDGE ( 'NONE', *, *, #18228, .F. ) ; +#3194 = CARTESIAN_POINT ( 'NONE', ( -0.05692504324876821600, 0.2706415752104224200, 0.08286399342893278900 ) ) ; +#3195 = LINE ( 'NONE', #4931, #8963 ) ; +#3196 = DIRECTION ( 'NONE', ( 0.7543368200092230900, 0.6564875946873428600, 0.0000000000000000000 ) ) ; +#3197 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#3198 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.7777777777777724600 ) ) ; +#3199 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.135416666666664100 ) ) ; +#3200 = DIRECTION ( 'NONE', ( 0.05986782849628113900, 0.1630016340966701500, -0.9848077530122085800 ) ) ; +#3201 = VERTEX_POINT ( 'NONE', #6795 ) ; +#3202 = CARTESIAN_POINT ( 'NONE', ( 0.2802162586133474800, 0.3660765293230687800, 1.484375000000000200 ) ) ; +#3203 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -1.111111111111108100 ) ) ; +#3204 = CARTESIAN_POINT ( 'NONE', ( 0.2802162586133554700, -0.3660765293230626700, 1.143750000000000000 ) ) ; +#3205 = EDGE_CURVE ( 'NONE', #12858, #6651, #235, .T. ) ; +#3206 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.8142361111111057200 ) ) ; +#3207 = ORIENTED_EDGE ( 'NONE', *, *, #11945, .T. ) ; +#3208 = EDGE_LOOP ( 'NONE', ( #5104, #1390, #16367, #9416 ) ) ; +#3209 = CARTESIAN_POINT ( 'NONE', ( -0.3038748433919888900, 0.06843065780174555100, 0.1792153418691395100 ) ) ; +#3210 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.8472222222222172100 ) ) ; +#3211 = LINE ( 'NONE', #2427, #18182 ) ; +#3212 = AXIS2_PLACEMENT_3D ( 'NONE', #6832, #3943, #1293 ) ; +#3213 = ORIENTED_EDGE ( 'NONE', *, *, #9329, .T. ) ; +#3214 = DIRECTION ( 'NONE', ( -0.5673761158323235000, -0.8234587683563917600, 0.0000000000000000000 ) ) ; +#3215 = VERTEX_POINT ( 'NONE', #15345 ) ; +#3216 = CARTESIAN_POINT ( 'NONE', ( 0.3070850166377935800, -0.3438487595863217700, 1.187613820323600600 ) ) ; +#3217 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.8645833333333281500 ) ) ; +#3218 = VECTOR ( 'NONE', #8779, 39.37007874015748100 ) ; +#3219 = VERTEX_POINT ( 'NONE', #9523 ) ; +#3220 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.1979166666666566100 ) ) ; +#3221 = ADVANCED_FACE ( 'NONE', ( #14722 ), #17105, .F. ) ; +#3222 = ORIENTED_EDGE ( 'NONE', *, *, #704, .T. ) ; +#3223 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.4184027777777693500 ) ) ; +#3224 = VERTEX_POINT ( 'NONE', #16919 ) ; +#3225 = CYLINDRICAL_SURFACE ( 'NONE', #5553, 0.4610132068742565100 ) ; +#3226 = FACE_OUTER_BOUND ( 'NONE', #14583, .T. ) ; +#3227 = ORIENTED_EDGE ( 'NONE', *, *, #17768, .F. ) ; +#3228 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.9097222222222175500 ) ) ; +#3229 = ORIENTED_EDGE ( 'NONE', *, *, #14767, .T. ) ; +#3230 = CONICAL_SURFACE ( 'NONE', #4398, 0.3134792788290102800, 1.047197551196600100 ) ; +#3231 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.04166666666667901600 ) ) ; +#3232 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.1006944444444572200 ) ) ; +#3233 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#3234 = ADVANCED_FACE ( 'NONE', ( #14969 ), #5051, .F. ) ; +#3235 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.4704861111111030000 ) ) ; +#3236 = EDGE_CURVE ( 'NONE', #15154, #5674, #18653, .T. ) ; +#3237 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.1736111111111008400 ) ) ; +#3238 = PLANE ( 'NONE', #15410 ) ; +#3239 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.142361111111108300 ) ) ; +#3240 = CARTESIAN_POINT ( 'NONE', ( 1.224597006945454400E-016, -2.441998286458796200E-016, 3.802149639073345400 ) ) ; +#3241 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3242 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.284722222222220800 ) ) ; +#3243 = ORIENTED_EDGE ( 'NONE', *, *, #4352, .F. ) ; +#3244 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.1111111111111003400 ) ) ; +#3245 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.236111111111109200 ) ) ; +#3246 = ORIENTED_EDGE ( 'NONE', *, *, #12838, .F. ) ; +#3247 = ORIENTED_EDGE ( 'NONE', *, *, #7249, .T. ) ; +#3248 = LINE ( 'NONE', #12497, #18458 ) ; +#3249 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.5381944444444367600 ) ) ; +#3250 = VERTEX_POINT ( 'NONE', #13896 ) ; +#3251 = ORIENTED_EDGE ( 'NONE', *, *, #3686, .F. ) ; +#3252 = CIRCLE ( 'NONE', #14627, 0.4687475818742552500 ) ; +#3253 = CARTESIAN_POINT ( 'NONE', ( -0.04346614393614929600, 0.3057409655478161000, 0.1703305072677330800 ) ) ; +#3254 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, 0.06597222222223453300 ) ) ; +#3255 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#3256 = PLANE ( 'NONE', #16952 ) ; +#3257 = ORIENTED_EDGE ( 'NONE', *, *, #2057, .F. ) ; +#3258 = ORIENTED_EDGE ( 'NONE', *, *, #14644, .F. ) ; +#3259 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -0.1443375672974062400, 1.548179320649367500 ) ) ; +#3260 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#3261 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.9097222222222178800 ) ) ; +#3262 = EDGE_CURVE ( 'NONE', #10537, #13998, #2302, .T. ) ; +#3263 = ORIENTED_EDGE ( 'NONE', *, *, #15150, .F. ) ; +#3264 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.038194444444441100 ) ) ; +#3265 = FACE_OUTER_BOUND ( 'NONE', #10210, .T. ) ; +#3266 = VERTEX_POINT ( 'NONE', #2358 ) ; +#3267 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3268 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3269 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#3270 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.352430555555554700 ) ) ; +#3271 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.8489583333333282600 ) ) ; +#3272 = EDGE_CURVE ( 'NONE', #5326, #3876, #5725, .T. ) ; +#3273 = DIRECTION ( 'NONE', ( 0.9886712861729634000, 0.1500969283399838900, -0.0000000000000000000 ) ) ; +#3274 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.5729166666666594100 ) ) ; +#3275 = PLANE ( 'NONE', #14576 ) ; +#3276 = CARTESIAN_POINT ( 'NONE', ( -0.1353884627379184100, 0.2105085691879055600, 1.525842493984606900 ) ) ; +#3277 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.6736111111111045000 ) ) ; +#3278 = AXIS2_PLACEMENT_3D ( 'NONE', #14004, #7958, #608 ) ; +#3279 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3280 = ORIENTED_EDGE ( 'NONE', *, *, #12819, .T. ) ; +#3281 = VERTEX_POINT ( 'NONE', #8095 ) ; +#3282 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.2291666666666570000 ) ) ; +#3283 = ORIENTED_EDGE ( 'NONE', *, *, #7436, .T. ) ; +#3284 = LINE ( 'NONE', #2530, #18495 ) ; +#3285 = ORIENTED_EDGE ( 'NONE', *, *, #2689, .T. ) ; +#3286 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.3593749999999911700 ) ) ; +#3287 = ORIENTED_EDGE ( 'NONE', *, *, #4968, .F. ) ; +#3288 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3289 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.04861111111112360900 ) ) ; +#3290 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.100694444444441500 ) ) ; +#3291 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, 0.1909722222222358100 ) ) ; +#3292 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3293 = VERTEX_POINT ( 'NONE', #759 ) ; +#3294 = EDGE_CURVE ( 'NONE', #303, #6722, #2754, .T. ) ; +#3295 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.5746527777777705700 ) ) ; +#3296 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.1944444444444340700 ) ) ; +#3297 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.9340277777777734600 ) ) ; +#3298 = CARTESIAN_POINT ( 'NONE', ( 0.4420471124163823400, -0.1559516364272518500, 1.143750000000000000 ) ) ; +#3299 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.052083333333329700 ) ) ; +#3300 = EDGE_LOOP ( 'NONE', ( #7477, #14231, #11123, #17440 ) ) ; +#3301 = EDGE_CURVE ( 'NONE', #12415, #11460, #9211, .T. ) ; +#3302 = AXIS2_PLACEMENT_3D ( 'NONE', #1343, #19046, #2633 ) ; +#3303 = VECTOR ( 'NONE', #10165, 39.37007874015748900 ) ; +#3304 = AXIS2_PLACEMENT_3D ( 'NONE', #9867, #9745, #994 ) ; +#3305 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.281249999999998900 ) ) ; +#3306 = EDGE_LOOP ( 'NONE', ( #17649, #15872, #11900, #1908, #10657, #11982 ) ) ; +#3307 = AXIS2_PLACEMENT_3D ( 'NONE', #1124, #5475, #15775 ) ; +#3308 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, 0.1701388888889017700 ) ) ; +#3309 = VERTEX_POINT ( 'NONE', #4924 ) ; +#3310 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.253472222222220500 ) ) ; +#3311 = VECTOR ( 'NONE', #6682, 39.37007874015748100 ) ; +#3312 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.4861111111111030000 ) ) ; +#3313 = DIRECTION ( 'NONE', ( 0.04737586595177625800, 0.1670605187719798900, 0.9848077530122091300 ) ) ; +#3314 = ADVANCED_FACE ( 'NONE', ( #4143 ), #8293, .T. ) ; +#3315 = VERTEX_POINT ( 'NONE', #8513 ) ; +#3316 = ORIENTED_EDGE ( 'NONE', *, *, #6845, .F. ) ; +#3317 = CARTESIAN_POINT ( 'NONE', ( -0.4684146371797786600, 0.01772823103797581700, 1.587900241027141200 ) ) ; +#3318 = ORIENTED_EDGE ( 'NONE', *, *, #15565, .T. ) ; +#3319 = EDGE_CURVE ( 'NONE', #10503, #7201, #1380, .T. ) ; +#3320 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3321 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.267361111111109600 ) ) ; +#3322 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.6111111111111041700 ) ) ; +#3323 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.7743055555555501400 ) ) ; +#3325 = EDGE_CURVE ( 'NONE', #4495, #790, #16581, .T. ) ; +#3324 = CIRCLE ( 'NONE', #11443, 0.03124999999999990600 ) ; +#3326 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.041666666666663400 ) ) ; +#3327 = ADVANCED_FACE ( 'NONE', ( #13103 ), #14498, .F. ) ; +#3328 = CARTESIAN_POINT ( 'NONE', ( -0.01152533017185641800, 0.4608691177296606000, 1.143750000000000000 ) ) ; +#3329 = AXIS2_PLACEMENT_3D ( 'NONE', #9414, #3676, #13979 ) ; +#3330 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3331 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.282986111111109600 ) ) ; +#3332 = CARTESIAN_POINT ( 'NONE', ( 0.04833471273379993200, -0.3055203828412874600, -1.524379807292084400 ) ) ; +#3333 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3334 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3335 = CYLINDRICAL_SURFACE ( 'NONE', #3694, 0.3125000000000008300 ) ; +#3336 = DIRECTION ( 'NONE', ( -0.8234587683563918700, 0.5673761158323236100, 0.0000000000000000000 ) ) ; +#3337 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.4392361111111028900 ) ) ; +#3338 = ORIENTED_EDGE ( 'NONE', *, *, #12770, .F. ) ; +#3339 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.6666666666666599700 ) ) ; +#3340 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.2951388888888797900 ) ) ; +#3341 = FACE_OUTER_BOUND ( 'NONE', #5704, .T. ) ; +#3342 = EDGE_CURVE ( 'NONE', #1563, #8838, #17484, .T. ) ; +#3343 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#3344 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.2934027777777684600 ) ) ; +#3345 = AXIS2_PLACEMENT_3D ( 'NONE', #8111, #12616, #18662 ) ; +#3346 = CONICAL_SURFACE ( 'NONE', #16900, 0.4687475818742578600, 0.1745329251994331100 ) ; +#3347 = ORIENTED_EDGE ( 'NONE', *, *, #9029, .T. ) ; +#3348 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323613700 ) ) ; +#3349 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.609375000000000900 ) ) ; +#3350 = VECTOR ( 'NONE', #17233, 39.37007874015748100 ) ; +#3351 = CARTESIAN_POINT ( 'NONE', ( -0.4019342351530936800, 0.2411958397483199600, 1.592921120922338200 ) ) ; +#3352 = VERTEX_POINT ( 'NONE', #2901 ) ; +#3353 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.6232638888888819600 ) ) ; +#3354 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.1701388888888785400 ) ) ; +#3355 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #7916, #9385, #16787, #10878, #4984, #13837, #12481, #15487, #3774 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.08333333333333332900, 0.08712121212121212700, 0.09090909090909091200, 0.09469696969696969600, 0.09848484848484848100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#3356 = DIRECTION ( 'NONE', ( 1.000000000000000000, -2.486899575160351000E-014, 0.0000000000000000000 ) ) ; +#3357 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.256944444444442400 ) ) ; +#3358 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.472222222222222100 ) ) ; +#3359 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.006944444444440900 ) ) ; +#3360 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.02777777777778956200 ) ) ; +#3361 = VECTOR ( 'NONE', #5239, 39.37007874015748100 ) ; +#3362 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.4027777777777690200 ) ) ; +#3363 = EDGE_LOOP ( 'NONE', ( #8800, #15298, #9014, #9139 ) ) ; +#3364 = EDGE_CURVE ( 'NONE', #11266, #8304, #18870, .T. ) ; +#3365 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3366 = LINE ( 'NONE', #6565, #8438 ) ; +#3367 = EDGE_LOOP ( 'NONE', ( #9734, #12877, #18637, #11647 ) ) ; +#3368 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3369 = VECTOR ( 'NONE', #8219, 39.37007874015748900 ) ; +#3370 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.020833333333329700 ) ) ; +#3371 = DIRECTION ( 'NONE', ( 1.000000000000000000, 8.881784197001252300E-016, 0.0000000000000000000 ) ) ; +#3372 = EDGE_CURVE ( 'NONE', #5586, #6787, #10113, .T. ) ; +#3373 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.5312499999999927800 ) ) ; +#3374 = AXIS2_PLACEMENT_3D ( 'NONE', #1370, #2979, #4393 ) ; +#3375 = VERTEX_POINT ( 'NONE', #4065 ) ; +#3376 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.048611111111107800 ) ) ; +#3377 = VECTOR ( 'NONE', #6687, 39.37007874015748100 ) ; +#3378 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#3379 = CIRCLE ( 'NONE', #13541, 0.4687475818742549700 ) ; +#3380 = FACE_BOUND ( 'NONE', #3538, .T. ) ; +#3381 = PLANE ( 'NONE', #14419 ) ; +#3382 = ORIENTED_EDGE ( 'NONE', *, *, #14841, .T. ) ; +#3383 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.477430555555555600 ) ) ; +#3384 = ORIENTED_EDGE ( 'NONE', *, *, #9228, .T. ) ; +#3385 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.2916666666666572500 ) ) ; +#3386 = CARTESIAN_POINT ( 'NONE', ( -0.2995600242664221400, -0.01508331816628284000, -1.533773309066852200 ) ) ; +#3387 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3388 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.430555555555555400 ) ) ; +#3389 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3390 = CARTESIAN_POINT ( 'NONE', ( 0.2771060791424843600, 0.1274311549549855300, 0.1610098167335514100 ) ) ; +#3391 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.7222222222222159900 ) ) ; +#3392 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3393 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.2569444444444348200 ) ) ; +#3394 = ADVANCED_FACE ( 'NONE', ( #15407 ), #676, .T. ) ; +#3395 = ORIENTED_EDGE ( 'NONE', *, *, #1536, .F. ) ; +#3396 = EDGE_CURVE ( 'NONE', #14256, #16173, #3116, .T. ) ; +#3397 = EDGE_CURVE ( 'NONE', #4161, #17301, #15859, .T. ) ; +#3398 = LINE ( 'NONE', #17129, #12376 ) ; +#3399 = AXIS2_PLACEMENT_3D ( 'NONE', #13720, #648, #6369 ) ; +#3400 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.03645833333332194200 ) ) ; +#3401 = FACE_BOUND ( 'NONE', #17354, .T. ) ; +#3402 = FACE_OUTER_BOUND ( 'NONE', #3430, .T. ) ; +#3403 = ORIENTED_EDGE ( 'NONE', *, *, #487, .F. ) ; +#3404 = CARTESIAN_POINT ( 'NONE', ( 0.1803732187963073800, -0.4242625117230433600, 1.143750000000000000 ) ) ; +#3405 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#3406 = AXIS2_PLACEMENT_3D ( 'NONE', #12629, #914, #18735 ) ; +#3407 = FACE_OUTER_BOUND ( 'NONE', #12192, .T. ) ; +#3408 = CONICAL_SURFACE ( 'NONE', #10410, 0.4687475818742591300, 0.1745329251994298400 ) ; +#3409 = EDGE_LOOP ( 'NONE', ( #12757, #2069, #14185, #6501 ) ) ; +#3410 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.1770833333333466700 ) ) ; +#3411 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.5763888888888816200 ) ) ; +#3412 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.1701388888889023300 ) ) ; +#3413 = ADVANCED_FACE ( 'NONE', ( #1356 ), #15905, .F. ) ; +#3414 = VERTEX_POINT ( 'NONE', #17398 ) ; +#3415 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.2864583333333236600 ) ) ; +#3416 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3417 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3418 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.156249999999997300 ) ) ; +#3419 = ORIENTED_EDGE ( 'NONE', *, *, #963, .T. ) ; +#3420 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.9583333333333291500 ) ) ; +#3421 = ADVANCED_FACE ( 'NONE', ( #1595 ), #5700, .T. ) ; +#3422 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3423 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.093749999999997300 ) ) ; +#3424 = EDGE_LOOP ( 'NONE', ( #17917, #10917, #13163, #8536 ) ) ; +#3425 = ORIENTED_EDGE ( 'NONE', *, *, #4574, .F. ) ; +#3426 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, 0.1145833333333458500 ) ) ; +#3427 = CIRCLE ( 'NONE', #7881, 0.4687475818742551400 ) ; +#3428 = VECTOR ( 'NONE', #15185, 39.37007874015748100 ) ; +#3429 = ORIENTED_EDGE ( 'NONE', *, *, #6932, .F. ) ; +#3430 = EDGE_LOOP ( 'NONE', ( #16775, #12925, #207, #4375 ) ) ; +#3431 = EDGE_CURVE ( 'NONE', #8405, #7511, #10106, .T. ) ; +#3432 = CIRCLE ( 'NONE', #8981, 0.4610132068742565100 ) ; +#3433 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.3645833333333242100 ) ) ; +#3434 = EDGE_CURVE ( 'NONE', #2087, #8295, #2831, .T. ) ; +#3435 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -1.055555555555552000 ) ) ; +#3436 = EDGE_CURVE ( 'NONE', #3375, #7555, #14955, .T. ) ; +#3437 = AXIS2_PLACEMENT_3D ( 'NONE', #15225, #18009, #13820 ) ; +#3438 = DIRECTION ( 'NONE', ( -0.8306683619109767000, -0.5567675210715282700, 0.0000000000000000000 ) ) ; +#3439 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.399305555555555100 ) ) ; +#3440 = VERTEX_POINT ( 'NONE', #137 ) ; +#3441 = ORIENTED_EDGE ( 'NONE', *, *, #761, .F. ) ; +#3442 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.7604166666666607500 ) ) ; +#3443 = CARTESIAN_POINT ( 'NONE', ( -4.168601147103974200E-018, 2.526954538747222900E-017, -1.174024639073265800 ) ) ; +#3444 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3445 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.03181879871151568200, 0.1814090819487659800 ) ) ; +#3446 = EDGE_LOOP ( 'NONE', ( #4806, #2556, #14332, #4413 ) ) ; +#3447 = ORIENTED_EDGE ( 'NONE', *, *, #10207, .T. ) ; +#3448 = FACE_OUTER_BOUND ( 'NONE', #10414, .T. ) ; +#3449 = FACE_OUTER_BOUND ( 'NONE', #11477, .T. ) ; +#3450 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, -0.1208802155999174600, 1.541407766490855400 ) ) ; +#3451 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3452 = ORIENTED_EDGE ( 'NONE', *, *, #17768, .T. ) ; +#3453 = ORIENTED_EDGE ( 'NONE', *, *, #2096, .T. ) ; +#3454 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.5277777777777704600 ) ) ; +#3455 = LINE ( 'NONE', #3443, #5064 ) ; +#3456 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.114583333333330600 ) ) ; +#3457 = DIRECTION ( 'NONE', ( 0.08743372756788295200, 0.1500301066140701000, 0.9848077530122089100 ) ) ; +#3458 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.467013888888889100 ) ) ; +#3459 = EDGE_CURVE ( 'NONE', #17223, #12666, #5490, .T. ) ; +#3460 = ORIENTED_EDGE ( 'NONE', *, *, #18952, .F. ) ; +#3461 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.517361111111111400 ) ) ; +#3462 = CARTESIAN_POINT ( 'NONE', ( 3.285262975111219200E-017, -9.316514725878106300E-018, -1.174024639073348400 ) ) ; +#3463 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676399000 ) ) ; +#3464 = CARTESIAN_POINT ( 'NONE', ( -0.02041011989960538100, 0.2768913463765826900, 1.541375947349477000 ) ) ; +#3465 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.7951388888888831800 ) ) ; +#3466 = CARTESIAN_POINT ( 'NONE', ( -0.2943342776953267700, -0.09749075708805139700, 0.1749376347475428400 ) ) ; +#3467 = ORIENTED_EDGE ( 'NONE', *, *, #18974, .T. ) ; +#3468 = ORIENTED_EDGE ( 'NONE', *, *, #13936, .T. ) ; +#3469 = FACE_OUTER_BOUND ( 'NONE', #5695, .T. ) ; +#3470 = CONICAL_SURFACE ( 'NONE', #19005, 0.4687475818742580200, 0.1745329251994297600 ) ; +#3471 = EDGE_LOOP ( 'NONE', ( #1336, #14889, #6453, #2981, #17445, #6187 ) ) ; +#3472 = ORIENTED_EDGE ( 'NONE', *, *, #1591, .F. ) ; +#3473 = CIRCLE ( 'NONE', #9809, 0.4687499999999996700 ) ; +#3474 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.09201388888887784800 ) ) ; +#3475 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.003472222222218500 ) ) ; +#3476 = PLANE ( 'NONE', #12255 ) ; +#3477 = ORIENTED_EDGE ( 'NONE', *, *, #8996, .F. ) ; +#3478 = VERTEX_POINT ( 'NONE', #6178 ) ; +#3479 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.1111111111111240900 ) ) ; +#3480 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#3481 = DIRECTION ( 'NONE', ( -0.6078269655510819500, 0.7940695057417605000, 0.0000000000000000000 ) ) ; +#3482 = CIRCLE ( 'NONE', #12576, 0.4610132068742565100 ) ; +#3483 = ORIENTED_EDGE ( 'NONE', *, *, #12460, .F. ) ; +#3484 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.3975694444444357000 ) ) ; +#3485 = VERTEX_POINT ( 'NONE', #7732 ) ; +#3486 = EDGE_CURVE ( 'NONE', #8999, #2552, #8047, .T. ) ; +#3487 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3488 = PLANE ( 'NONE', #10874 ) ; +#3489 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.9409722222222176600 ) ) ; +#3490 = DIRECTION ( 'NONE', ( 0.9297764858882484600, 0.3681245526846853600, 0.0000000000000000000 ) ) ; +#3491 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.211805555555553800 ) ) ; +#3492 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #13838, #5118, #13902, #15543, #12606, #15426, #4986, #15297, #6485 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3712121212121212200, 0.3750000000000000000, 0.3787878787878787800, 0.3825757575757575700, 0.3863636363636363500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#3493 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.09027777777779005800 ) ) ; +#3494 = ORIENTED_EDGE ( 'NONE', *, *, #16191, .T. ) ; +#3495 = ORIENTED_EDGE ( 'NONE', *, *, #16896, .F. ) ; +#3496 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.4305555555555469800 ) ) ; +#3497 = AXIS2_PLACEMENT_3D ( 'NONE', #11424, #10141, #13028 ) ; +#3498 = VERTEX_POINT ( 'NONE', #18043 ) ; +#3499 = ADVANCED_FACE ( 'NONE', ( #11963 ), #4699, .F. ) ; +#3500 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3501 = CIRCLE ( 'NONE', #17875, 0.4687475818742551400 ) ; +#3502 = ORIENTED_EDGE ( 'NONE', *, *, #3397, .F. ) ; +#3503 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.6944444444444379800 ) ) ; +#3504 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -1.048611111111107800 ) ) ; +#3505 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.592561465728329600 ) ) ; +#3506 = DIRECTION ( 'NONE', ( -0.9151887321064310400, 0.4030255384283025200, 0.0000000000000000000 ) ) ; +#3507 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#3508 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#3509 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.6284722222222153300 ) ) ; +#3510 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.7222222222222163300 ) ) ; +#3511 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.9201388888888845100 ) ) ; +#3512 = VERTEX_POINT ( 'NONE', #11909 ) ; +#3513 = ADVANCED_FACE ( 'NONE', ( #4125 ), #9442, .T. ) ; +#3514 = ORIENTED_EDGE ( 'NONE', *, *, #14257, .T. ) ; +#3515 = LINE ( 'NONE', #15337, #3745 ) ; +#3516 = ADVANCED_FACE ( 'NONE', ( #15618 ), #13356, .T. ) ; +#3517 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.411458333333333000 ) ) ; +#3518 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -1.381944444444443800 ) ) ; +#3519 = ORIENTED_EDGE ( 'NONE', *, *, #11745, .F. ) ; +#3520 = CARTESIAN_POINT ( 'NONE', ( -0.2833503386206815400, -0.1033818309153579900, -1.532086292978326100 ) ) ; +#3521 = EDGE_CURVE ( 'NONE', #13855, #6691, #16804, .T. ) ; +#3522 = CARTESIAN_POINT ( 'NONE', ( -0.3070850166377885900, -0.3438487595863262100, 1.484375000000000200 ) ) ; +#3523 = VERTEX_POINT ( 'NONE', #13604 ) ; +#3524 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676402300 ) ) ; +#3525 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #2884, #14609, #2637, #7157, #4243, #5765, #16138, #8760, #17439, #4180, #16072, #7221, #15889, #19050, #17575, #7080, #13193, #17381, #17513, #1346, #14476, #11645, #14656, #2829, #12944, #17317, #11524, #5633, #10039, #18792, #4118, #8629, #18932, #10105, #14409, #5881, #62, #13517, #11895, #3147, #10295, #11778, #2957, #1527, #10366, #6162 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ), + ( 0.05151767354596500200, 0.05300588210822650800, 0.05449409067048801400, 0.05523819495161876700, 0.05598229923274952000, 0.05747050779501102600, 0.05821461207614177900, 0.05895871635727253200, 0.06044692491953403800, 0.06193513348179554400, 0.06267923776292630400, 0.06342334204405704300, 0.06491155060631854900, 0.06639975916858005500, 0.06788796773084157500, 0.06863207201197232800, 0.06937617629310308100, 0.07012028057423383400, 0.07086438485536458700, 0.07235259341762609300, 0.07309669769875684600, 0.07384080197988759900, 0.07532901054214910500 ), + .UNSPECIFIED. ) ; +#3526 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.4166666666666579700 ) ) ; +#3527 = CARTESIAN_POINT ( 'NONE', ( -0.2969477292493226700, -0.08878343889467327200, 0.1746019358432029100 ) ) ; +#3528 = ORIENTED_EDGE ( 'NONE', *, *, #223, .T. ) ; +#3529 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.08854166666665555500 ) ) ; +#3530 = EDGE_LOOP ( 'NONE', ( #8166, #6063 ) ) ; +#3531 = VERTEX_POINT ( 'NONE', #1998 ) ; +#3532 = CARTESIAN_POINT ( 'NONE', ( -0.07035793515936446300, 0.4634396653935765600, 1.143750000000000000 ) ) ; +#3533 = EDGE_CURVE ( 'NONE', #5012, #8859, #11713, .T. ) ; +#3534 = VECTOR ( 'NONE', #7011, 39.37007874015748100 ) ; +#3535 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.453124999999999800 ) ) ; +#3536 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#3537 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#3538 = EDGE_LOOP ( 'NONE', ( #11501, #10871 ) ) ; +#3539 = EDGE_CURVE ( 'NONE', #10635, #4006, #11497, .T. ) ; +#3540 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.4253472222222138300 ) ) ; +#3541 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.583333333333333900 ) ) ; +#3542 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#3543 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3544 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.9270833333333287100 ) ) ; +#3545 = EDGE_CURVE ( 'NONE', #1696, #3623, #12422, .T. ) ; +#3546 = AXIS2_PLACEMENT_3D ( 'NONE', #10563, #12244, #16477 ) ; +#3547 = EDGE_LOOP ( 'NONE', ( #2575, #13845, #13556, #4564 ) ) ; +#3548 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999994700, -0.1443375672974061300, 1.548179320649367500 ) ) ; +#3549 = AXIS2_PLACEMENT_3D ( 'NONE', #17842, #3100, #10437 ) ; +#3550 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.9930555555555518100 ) ) ; +#3551 = AXIS2_PLACEMENT_3D ( 'NONE', #10017, #5556, #5371 ) ; +#3552 = PERSON_AND_ORGANIZATION ( #18342, #15970 ) ; +#3553 = ORIENTED_EDGE ( 'NONE', *, *, #6181, .T. ) ; +#3554 = DIRECTION ( 'NONE', ( -0.004341204441673057100, 0.1735939041298396300, -0.9848077530122088000 ) ) ; +#3555 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.3819444444444355400 ) ) ; +#3556 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -1.173611111111108700 ) ) ; +#3557 = LINE ( 'NONE', #6312, #13935 ) ; +#3558 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3559 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.6111111111111040600 ) ) ; +#3560 = CARTESIAN_POINT ( 'NONE', ( -0.3893737859852264300, -0.2609834291684037200, 1.143750000000000000 ) ) ; +#3561 = CARTESIAN_POINT ( 'NONE', ( 0.4219140922835683000, 0.1858000959230613500, 1.592116737595687900 ) ) ; +#3562 = EDGE_CURVE ( 'NONE', #4611, #13454, #9191, .T. ) ; +#3563 = DIRECTION ( 'NONE', ( -0.1735239426960723500, -0.006567413361073803900, 0.9848077530122083500 ) ) ; +#3564 = CIRCLE ( 'NONE', #15525, 0.4610132068742565100 ) ; +#3565 = CARTESIAN_POINT ( 'NONE', ( 0.1589412568245171800, 0.4327480257511626700, 1.484375000000000200 ) ) ; +#3566 = AXIS2_PLACEMENT_3D ( 'NONE', #609, #4730, #4670 ) ; +#3567 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#3568 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3569 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.7118055555555495900 ) ) ; +#3570 = FACE_OUTER_BOUND ( 'NONE', #6432, .T. ) ; +#3571 = AXIS2_PLACEMENT_3D ( 'NONE', #10927, #7770, #7910 ) ; +#3572 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.8680555555555508100 ) ) ; +#3573 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3574 = PRODUCT_RELATED_PRODUCT_CATEGORY ( 'detail', '', ( #6486 ) ) ; +#3575 = LINE ( 'NONE', #9860, #13951 ) ; +#3576 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.095486111111108100 ) ) ; +#3577 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#3578 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -1.503472222222222300 ) ) ; +#3579 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#3580 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.1388888888888781500 ) ) ; +#3581 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.5624999999999924500 ) ) ; +#3582 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#3583 = ORIENTED_EDGE ( 'NONE', *, *, #10866, .T. ) ; +#3584 = ADVANCED_FACE ( 'NONE', ( #8985 ), #4342, .T. ) ; +#3585 = FACE_BOUND ( 'NONE', #2707, .T. ) ; +#3586 = ORIENTED_EDGE ( 'NONE', *, *, #1910, .T. ) ; +#3587 = EDGE_CURVE ( 'NONE', #18067, #5122, #18803, .T. ) ; +#3588 = FACE_OUTER_BOUND ( 'NONE', #3945, .T. ) ; +#3589 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.1440972222222117200 ) ) ; +#3590 = AXIS2_PLACEMENT_3D ( 'NONE', #7180, #10053, #5781 ) ; +#3591 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3592 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3593 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3594 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.539930555555555800 ) ) ; +#3595 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#3596 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.6180555555555487000 ) ) ; +#3597 = LINE ( 'NONE', #2876, #15561 ) ; +#3598 = ADVANCED_FACE ( 'NONE', ( #9896 ), #12189, .T. ) ; +#3599 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.3524305555555464200 ) ) ; +#3600 = CARTESIAN_POINT ( 'NONE', ( 0.1803732187962982800, 0.4242625117230472400, 1.187613820323598600 ) ) ; +#3601 = PLANE ( 'NONE', #2763 ) ; +#3602 = CARTESIAN_POINT ( 'NONE', ( 2.828331723309818400E-016, 1.202451978811941600E-016, -1.174024639073311800 ) ) ; +#3603 = CARTESIAN_POINT ( 'NONE', ( 0.2321251145655920700, -0.3983103163368943400, 1.592561465728329600 ) ) ; +#3604 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.9722222222222179900 ) ) ; +#3605 = VECTOR ( 'NONE', #5642, 39.37007874015748900 ) ; +#3606 = CARTESIAN_POINT ( 'NONE', ( 0.2089580642901297200, -0.1680331399275627500, 1.535746377707105900 ) ) ; +#3607 = ADVANCED_FACE ( 'NONE', ( #14033 ), #7586, .T. ) ; +#3608 = DIRECTION ( 'NONE', ( -1.000000000000000000, 3.641531520770513500E-014, 0.0000000000000000000 ) ) ; +#3609 = ORIENTED_EDGE ( 'NONE', *, *, #3654, .T. ) ; +#3610 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.090277777777774800 ) ) ; +#3611 = FACE_OUTER_BOUND ( 'NONE', #8725, .T. ) ; +#3612 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.1909722222222353100 ) ) ; +#3613 = CARTESIAN_POINT ( 'NONE', ( -0.3893757946457735400, 0.2609847755022735000, 1.143750000000000000 ) ) ; +#3614 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.4374999999999914500 ) ) ; +#3615 = EDGE_CURVE ( 'NONE', #6704, #2093, #17259, .T. ) ; +#3616 = VERTEX_POINT ( 'NONE', #3671 ) ; +#3617 = FACE_OUTER_BOUND ( 'NONE', #16607, .T. ) ; +#3618 = CONICAL_SURFACE ( 'NONE', #12442, 0.4687475818742609100, 0.1745329251994307600 ) ; +#3619 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.7222222222222159900 ) ) ; +#3620 = CARTESIAN_POINT ( 'NONE', ( -0.3829490853735665900, -0.2566771803726130600, 1.440511179676379900 ) ) ; +#3621 = CIRCLE ( 'NONE', #18429, 0.4687499999999995600 ) ; +#3622 = LINE ( 'NONE', #12272, #6858 ) ; +#3623 = VERTEX_POINT ( 'NONE', #3735 ) ; +#3624 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3625 = CARTESIAN_POINT ( 'NONE', ( -0.4219140922835708000, 0.1858000959230553800, 1.484375000000000200 ) ) ; +#3626 = DIRECTION ( 'NONE', ( 0.2118799300407986400, -0.9772957051199531200, -0.0000000000000000000 ) ) ; +#3628 = EDGE_CURVE ( 'NONE', #3642, #10503, #1819, .T. ) ; +#3627 = LINE ( 'NONE', #18195, #3177 ) ; +#3629 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.03472222222223443600 ) ) ; +#3630 = VERTEX_POINT ( 'NONE', #9543 ) ; +#3631 = DIRECTION ( 'NONE', ( 0.5673761158323350500, -0.8234587683563838700, -0.0000000000000000000 ) ) ; +#3632 = DIRECTION ( 'NONE', ( 0.5358267949790005400, -0.8443279255020126300, 0.0000000000000000000 ) ) ; +#3633 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.5798611111111042800 ) ) ; +#3634 = AXIS2_PLACEMENT_3D ( 'NONE', #4339, #5926, #9367 ) ; +#3635 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.8715277777777731300 ) ) ; +#3636 = ORIENTED_EDGE ( 'NONE', *, *, #9490, .T. ) ; +#3637 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.6423611111111047200 ) ) ; +#3638 = ORIENTED_EDGE ( 'NONE', *, *, #17923, .T. ) ; +#3639 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.144097222222219700 ) ) ; +#3640 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3641 = ORIENTED_EDGE ( 'NONE', *, *, #8848, .T. ) ; +#3642 = VERTEX_POINT ( 'NONE', #2321 ) ; +#3643 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.100694444444441800 ) ) ; +#3644 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#3645 = FACE_BOUND ( 'NONE', #10884, .T. ) ; +#3646 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3647 = VECTOR ( 'NONE', #6280, 39.37007874015748900 ) ; +#3648 = CARTESIAN_POINT ( 'NONE', ( 0.07232391368861323900, 0.2469189035578442100, 1.529910848479152400 ) ) ; +#3649 = VERTEX_POINT ( 'NONE', #718 ) ; +#3650 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.6041666666666594100 ) ) ; +#3651 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3652 = LINE ( 'NONE', #7467, #12194 ) ; +#3653 = EDGE_CURVE ( 'NONE', #13139, #7284, #5038, .T. ) ; +#3654 = EDGE_CURVE ( 'NONE', #13336, #12199, #16329, .T. ) ; +#3655 = ORIENTED_EDGE ( 'NONE', *, *, #3539, .F. ) ; +#3656 = AXIS2_PLACEMENT_3D ( 'NONE', #18245, #8060, #9546 ) ; +#3657 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.02951388888887735900 ) ) ; +#3658 = AXIS2_PLACEMENT_3D ( 'NONE', #10932, #15169, #1980 ) ; +#3659 = CARTESIAN_POINT ( 'NONE', ( -0.2952730950618026600, 0.009564079483609239100, 0.1346745128363043800 ) ) ; +#3660 = AXIS2_PLACEMENT_3D ( 'NONE', #17167, #915, #18367 ) ; +#3661 = EDGE_LOOP ( 'NONE', ( #11711, #8046, #15214, #11924 ) ) ; +#3662 = ORIENTED_EDGE ( 'NONE', *, *, #9559, .T. ) ; +#3663 = CIRCLE ( 'NONE', #15077, 0.4687475818742549700 ) ; +#3664 = CIRCLE ( 'NONE', #2005, 0.4610132068742565100 ) ; +#3665 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3666 = VERTEX_POINT ( 'NONE', #17070 ) ; +#3667 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#3668 = ORIENTED_EDGE ( 'NONE', *, *, #6932, .T. ) ; +#3669 = FACE_OUTER_BOUND ( 'NONE', #18904, .T. ) ; +#3670 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.519097222222222300 ) ) ; +#3671 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995600, 0.1443375672974060700, 1.548179320649367500 ) ) ; +#3672 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.4114583333333247700 ) ) ; +#3673 = CARTESIAN_POINT ( 'NONE', ( 0.4120995984523148600, 0.2066569569792582900, 1.440511179676386300 ) ) ; +#3674 = DIRECTION ( 'NONE', ( 0.1713325394261302200, -0.02826394418405555500, -0.9848077530122080200 ) ) ; +#3675 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#3676 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3677 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.9479166666666621900 ) ) ; +#3678 = CARTESIAN_POINT ( 'NONE', ( -0.4019321617077157300, -0.2411945954990029600, 1.484375000000000200 ) ) ; +#3679 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.8333333333333284900 ) ) ; +#3680 = ORIENTED_EDGE ( 'NONE', *, *, #14287, .T. ) ; +#3681 = EDGE_CURVE ( 'NONE', #16551, #12, #7276, .T. ) ; +#3682 = ORIENTED_EDGE ( 'NONE', *, *, #7620, .T. ) ; +#3683 = VECTOR ( 'NONE', #11768, 39.37007874015748900 ) ; +#3684 = VECTOR ( 'NONE', #19040, 39.37007874015748100 ) ; +#3685 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.02430555555554377700 ) ) ; +#3686 = EDGE_CURVE ( 'NONE', #17769, #13929, #9616, .T. ) ; +#3687 = ORIENTED_EDGE ( 'NONE', *, *, #7978, .F. ) ; +#3688 = ORIENTED_EDGE ( 'NONE', *, *, #9221, .T. ) ; +#3689 = VECTOR ( 'NONE', #2344, 39.37007874015748100 ) ; +#3690 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.076388888888885500 ) ) ; +#3691 = EDGE_CURVE ( 'NONE', #12668, #6011, #3663, .T. ) ; +#3692 = ADVANCED_FACE ( 'NONE', ( #4800 ), #6192, .T. ) ; +#3693 = CARTESIAN_POINT ( 'NONE', ( 0.4505462270817866500, 0.09767944602040519500, 1.440511179676401600 ) ) ; +#3694 = AXIS2_PLACEMENT_3D ( 'NONE', #7003, #18770, #10149 ) ; +#3695 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.6145833333333261500 ) ) ; +#3696 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.8020833333333279300 ) ) ; +#3697 = CARTESIAN_POINT ( 'NONE', ( 0.4219140922835721300, -0.1858000959230524700, 1.484375000000000200 ) ) ; +#3698 = CARTESIAN_POINT ( 'NONE', ( 0.1385359382105922100, 0.2522807215349701600, -1.545676357801595500 ) ) ; +#3699 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.02777777777778956200 ) ) ; +#3700 = EDGE_LOOP ( 'NONE', ( #4604, #13872, #14761, #7603 ) ) ; +#3701 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.09722222222221114900 ) ) ; +#3702 = CARTESIAN_POINT ( 'NONE', ( -0.3238882248697022000, -0.3280694967582925000, 1.593467001493433100 ) ) ; +#3703 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.3472222222222133800 ) ) ; +#3704 = ORIENTED_EDGE ( 'NONE', *, *, #3587, .T. ) ; +#3705 = ORIENTED_EDGE ( 'NONE', *, *, #4916, .F. ) ; +#3706 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.8506944444444396500 ) ) ; +#3707 = LINE ( 'NONE', #9205, #7629 ) ; +#3708 = ADVANCED_FACE ( 'NONE', ( #7124 ), #1160, .F. ) ; +#3709 = ORIENTED_EDGE ( 'NONE', *, *, #13042, .T. ) ; +#3710 = VERTEX_POINT ( 'NONE', #17245 ) ; +#3711 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.374999999999999100 ) ) ; +#3712 = ADVANCED_FACE ( 'NONE', ( #6653 ), #6813, .F. ) ; +#3713 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.140624999999997300 ) ) ; +#3714 = EDGE_CURVE ( 'NONE', #1448, #17301, #1142, .T. ) ; +#3715 = CARTESIAN_POINT ( 'NONE', ( 2.404083430289610100E-016, -8.829804393861164500E-017, -1.174024639073309600 ) ) ; +#3716 = CARTESIAN_POINT ( 'NONE', ( -0.4592360163321193000, -0.04044079890273683000, 1.440511179676384800 ) ) ; +#3717 = DIRECTION ( 'NONE', ( -0.7289686274214203200, 0.6845471059286792900, 0.0000000000000000000 ) ) ; +#3718 = DIRECTION ( 'NONE', ( -0.9866647708492382000, -0.1627655675043718200, -0.0000000000000000000 ) ) ; +#3719 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.4618055555555472000 ) ) ; +#3720 = CARTESIAN_POINT ( 'NONE', ( 0.4418741004648792400, -0.1314551491986520900, 1.590985962198545200 ) ) ; +#3721 = ORIENTED_EDGE ( 'NONE', *, *, #14961, .T. ) ; +#3722 = VERTEX_POINT ( 'NONE', #11275 ) ; +#3723 = VERTEX_POINT ( 'NONE', #4045 ) ; +#3724 = CIRCLE ( 'NONE', #1717, 0.4610132068742565100 ) ; +#3725 = ORIENTED_EDGE ( 'NONE', *, *, #18789, .F. ) ; +#3726 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, 0.06423611111112324800 ) ) ; +#3727 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #18532, #2545, #880, #9957, #2365, #12844, #14196, #3836, #14142 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2803030303030302800, 0.2840909090909091200, 0.2878787878787879000, 0.2916666666666666900, 0.2954545454545454700 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#3728 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.461805555555555600 ) ) ; +#3729 = DIRECTION ( 'NONE', ( 0.1627655675043517000, 0.9866647708492415300, -0.0000000000000000000 ) ) ; +#3730 = CARTESIAN_POINT ( 'NONE', ( 0.1834002693415904000, -0.4313825491433695400, 1.484375000000000200 ) ) ; +#3731 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.581597222222223200 ) ) ; +#3732 = CARTESIAN_POINT ( 'NONE', ( 0.4219140922835721300, -0.1858000959230524700, 1.187613820323598600 ) ) ; +#3733 = ORIENTED_EDGE ( 'NONE', *, *, #10919, .F. ) ; +#3734 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.204861111111108900 ) ) ; +#3735 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.06250000000001225400 ) ) ; +#3736 = ORIENTED_EDGE ( 'NONE', *, *, #16684, .T. ) ; +#3737 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.1059027777777667600 ) ) ; +#3738 = CARTESIAN_POINT ( 'NONE', ( 0.2802162586133554700, -0.3660765293230626700, 1.484375000000000200 ) ) ; +#3739 = EDGE_CURVE ( 'NONE', #15491, #1891, #1937, .T. ) ; +#3740 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.562500000000000400 ) ) ; +#3741 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -0.1443375672974062400, -1.562539370078740200 ) ) ; +#3742 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.8611111111111059400 ) ) ; +#3743 = ORIENTED_EDGE ( 'NONE', *, *, #15460, .T. ) ; +#3744 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, -0.1208479985968005900, 1.265548244963037300 ) ) ; +#3745 = VECTOR ( 'NONE', #17096, 39.37007874015748100 ) ; +#3746 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.9791666666666629700 ) ) ; +#3747 = EDGE_LOOP ( 'NONE', ( #3287, #13672, #935, #13155 ) ) ; +#3748 = ORIENTED_EDGE ( 'NONE', *, *, #10990, .F. ) ; +#3749 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.2326388888888787900 ) ) ; +#3750 = AXIS2_PLACEMENT_3D ( 'NONE', #18691, #17332, #13149 ) ; +#3751 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.295138888888887500 ) ) ; +#3752 = ORIENTED_EDGE ( 'NONE', *, *, #10030, .T. ) ; +#3753 = ORIENTED_EDGE ( 'NONE', *, *, #9978, .T. ) ; +#3754 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.5486111111111035000 ) ) ; +#3755 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.8090277777777723500 ) ) ; +#3756 = FACE_OUTER_BOUND ( 'NONE', #8157, .T. ) ; +#3757 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.8020833333333277100 ) ) ; +#3758 = ORIENTED_EDGE ( 'NONE', *, *, #2308, .F. ) ; +#3759 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.01041666666665513900 ) ) ; +#3760 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3761 = VERTEX_POINT ( 'NONE', #14403 ) ; +#3762 = DIRECTION ( 'NONE', ( 0.06279051952931694000, -0.9980267284282713400, 0.0000000000000000000 ) ) ; +#3763 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.3854166666666582500 ) ) ; +#3764 = LINE ( 'NONE', #5069, #7231 ) ; +#3765 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.8958333333333289300 ) ) ; +#3766 = ORIENTED_EDGE ( 'NONE', *, *, #6415, .T. ) ; +#3767 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.2916666666666572500 ) ) ; +#3768 = EDGE_LOOP ( 'NONE', ( #10660, #6065, #6354, #18393 ) ) ; +#3769 = EDGE_CURVE ( 'NONE', #3710, #992, #4585, .T. ) ; +#3770 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.092013888888886000 ) ) ; +#3771 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3772 = EDGE_CURVE ( 'NONE', #8373, #16987, #13400, .T. ) ; +#3773 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.111111111111108300 ) ) ; +#3774 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.430555555555555400 ) ) ; +#3775 = EDGE_LOOP ( 'NONE', ( #5089, #15242, #7145, #13963 ) ) ; +#3776 = APPROVAL_DATE_TIME ( #6547, #7786 ) ; +#3777 = CARTESIAN_POINT ( 'NONE', ( 0.4581049985510722800, 0.09931820485431422400, 1.484375000000000200 ) ) ; +#3778 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 0.02442125527538708400, 1.249999999999999800 ) ) ; +#3779 = ORIENTED_EDGE ( 'NONE', *, *, #9583, .F. ) ; +#3780 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.4826388888888807300 ) ) ; +#3781 = AXIS2_PLACEMENT_3D ( 'NONE', #8782, #10259, #15971 ) ; +#3782 = LINE ( 'NONE', #1165, #18997 ) ; +#3783 = ADVANCED_FACE ( 'NONE', ( #16564 ), #7075, .F. ) ; +#3784 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, 0.2135416666666800400 ) ) ; +#3785 = CARTESIAN_POINT ( 'NONE', ( -0.1955138724584385400, 0.2192249156010080100, 0.1287629011379753100 ) ) ; +#3786 = FACE_OUTER_BOUND ( 'NONE', #499, .T. ) ; +#3787 = EDGE_CURVE ( 'NONE', #10872, #18244, #12653, .T. ) ; +#3788 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.550347222222222800 ) ) ; +#3789 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3790 = CARTESIAN_POINT ( 'NONE', ( -0.02043555972313777100, 0.2768766586876181800, 1.265517246128202900 ) ) ; +#3791 = ADVANCED_FACE ( 'NONE', ( #2279 ), #434, .T. ) ; +#3792 = EDGE_CURVE ( 'NONE', #3063, #16189, #16079, .T. ) ; +#3793 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.05381944444443315100 ) ) ; +#3794 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.2152777777777675500 ) ) ; +#3795 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.499999999999999800 ) ) ; +#3796 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#3797 = DIRECTION ( 'NONE', ( 0.9430338398216099300, 0.3326968243781567900, -0.0000000000000000000 ) ) ; +#3799 = EDGE_CURVE ( 'NONE', #9825, #16585, #8273, .T. ) ; +#3798 = LINE ( 'NONE', #6957, #353 ) ; +#3800 = AXIS2_PLACEMENT_3D ( 'NONE', #2599, #5600, #14370 ) ; +#3801 = ADVANCED_FACE ( 'NONE', ( #5259 ), #18400, .T. ) ; +#3802 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.7951388888888837300 ) ) ; +#3803 = AXIS2_PLACEMENT_3D ( 'NONE', #17291, #15923, #1066 ) ; +#3804 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3805 = VECTOR ( 'NONE', #14429, 39.37007874015748100 ) ; +#3806 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.1909722222222117500 ) ) ; +#3807 = ORIENTED_EDGE ( 'NONE', *, *, #3882, .T. ) ; +#3808 = CARTESIAN_POINT ( 'NONE', ( 0.3477592364557848300, -0.3026494512999745000, 1.484375000000000200 ) ) ; +#3809 = FACE_OUTER_BOUND ( 'NONE', #16888, .T. ) ; +#3810 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, 0.08333333333334573500 ) ) ; +#3811 = ORIENTED_EDGE ( 'NONE', *, *, #15381, .F. ) ; +#3812 = CIRCLE ( 'NONE', #16469, 0.4610132068742565100 ) ; +#3813 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.5451388888888811800 ) ) ; +#3814 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.2812499999999906200 ) ) ; +#3815 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3816 = EDGE_CURVE ( 'NONE', #15729, #8838, #2490, .T. ) ; +#3817 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.489583333333333500 ) ) ; +#3818 = CARTESIAN_POINT ( 'NONE', ( 0.06841603993135766900, 0.2816045649588623200, -1.544160830397163200 ) ) ; +#3819 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.03124999999998863800 ) ) ; +#3820 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3821 = AXIS2_PLACEMENT_3D ( 'NONE', #9286, #7938, #16555 ) ; +#3822 = CARTESIAN_POINT ( 'NONE', ( 0.4606833792705951100, -0.01743562377178318300, 1.440511179676401200 ) ) ; +#3823 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3824 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.4097222222222138800 ) ) ; +#3825 = AXIS2_PLACEMENT_3D ( 'NONE', #12619, #14095, #9143 ) ; +#3826 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.5173611111111036100 ) ) ; +#3827 = FACE_OUTER_BOUND ( 'NONE', #7750, .T. ) ; +#3828 = EDGE_LOOP ( 'NONE', ( #1249, #8931, #14154, #13137 ) ) ; +#3829 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.350694444444444000 ) ) ; +#3830 = APPROVAL ( #10271, 'UNSPECIFIED' ) ; +#3831 = VECTOR ( 'NONE', #2585, 39.37007874015748900 ) ; +#3832 = VERTEX_POINT ( 'NONE', #17433 ) ; +#3833 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#3834 = LINE ( 'NONE', #6603, #7757 ) ; +#3835 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#3836 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.072916666666663600 ) ) ; +#3837 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.2847222222222123800 ) ) ; +#3838 = ORIENTED_EDGE ( 'NONE', *, *, #9586, .T. ) ; +#3839 = LINE ( 'NONE', #9755, #10757 ) ; +#3840 = EDGE_CURVE ( 'NONE', #15681, #8277, #5930, .T. ) ; +#3841 = FACE_OUTER_BOUND ( 'NONE', #13459, .T. ) ; +#3842 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, 0.08854166666667905000 ) ) ; +#3843 = VECTOR ( 'NONE', #690, 39.37007874015748100 ) ; +#3844 = AXIS2_PLACEMENT_3D ( 'NONE', #4733, #15235, #6220 ) ; +#3845 = VERTEX_POINT ( 'NONE', #8623 ) ; +#3846 = ORIENTED_EDGE ( 'NONE', *, *, #11358, .F. ) ; +#3847 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3848 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3849 = FACE_OUTER_BOUND ( 'NONE', #3530, .T. ) ; +#3850 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.5972222222222151000 ) ) ; +#3851 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.7118055555555494700 ) ) ; +#3852 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.248263888888887100 ) ) ; +#3853 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.499999999999999800 ) ) ; +#3854 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3855 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.592116737595687900 ) ) ; +#3856 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.1406249999999891500 ) ) ; +#3857 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.503472222222222300 ) ) ; +#3858 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.298611111111109800 ) ) ; +#3859 = AXIS2_PLACEMENT_3D ( 'NONE', #4022, #2470, #15727 ) ; +#3860 = CARTESIAN_POINT ( 'NONE', ( 0.1589412568245264500, -0.4327480257511592800, 1.187613820323613700 ) ) ; +#3861 = ORIENTED_EDGE ( 'NONE', *, *, #14961, .F. ) ; +#3862 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3863 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.8263888888888838400 ) ) ; +#3864 = FACE_BOUND ( 'NONE', #4578, .T. ) ; +#3865 = CYLINDRICAL_SURFACE ( 'NONE', #8258, 0.3125000000000008300 ) ; +#3866 = ORIENTED_EDGE ( 'NONE', *, *, #631, .F. ) ; +#3867 = FACE_OUTER_BOUND ( 'NONE', #5533, .T. ) ; +#3868 = LINE ( 'NONE', #5207, #19080 ) ; +#3869 = ORIENTED_EDGE ( 'NONE', *, *, #18527, .F. ) ; +#3870 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.1805555555555448700 ) ) ; +#3871 = EDGE_CURVE ( 'NONE', #12960, #16372, #5019, .T. ) ; +#3872 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.284722222222220500 ) ) ; +#3873 = ADVANCED_FACE ( 'NONE', ( #2044 ), #18845, .T. ) ; +#3874 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.1597222222222116400 ) ) ; +#3875 = ORIENTED_EDGE ( 'NONE', *, *, #16745, .T. ) ; +#3876 = VERTEX_POINT ( 'NONE', #2877 ) ; +#3877 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.3541666666666574700 ) ) ; +#3878 = CARTESIAN_POINT ( 'NONE', ( 0.4624991113355799700, 0.07629635976767419600, 1.589564174286821800 ) ) ; +#3879 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#3880 = CARTESIAN_POINT ( 'NONE', ( 0.002364888641513147600, 0.2905875646700882800, -1.542890604329535000 ) ) ; +#3881 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.01736111111112267600 ) ) ; +#3882 = EDGE_CURVE ( 'NONE', #12070, #9997, #8957, .T. ) ; +#3883 = ORIENTED_EDGE ( 'NONE', *, *, #4853, .F. ) ; +#3884 = ORIENTED_EDGE ( 'NONE', *, *, #1900, .F. ) ; +#3885 = VECTOR ( 'NONE', #7971, 39.37007874015748100 ) ; +#3886 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.520833333333333700 ) ) ; +#3887 = LINE ( 'NONE', #3328, #17238 ) ; +#3888 = ORIENTED_EDGE ( 'NONE', *, *, #2381, .F. ) ; +#3889 = PLANE ( 'NONE', #7139 ) ; +#3890 = VERTEX_POINT ( 'NONE', #18927 ) ; +#3891 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.5243055555555481400 ) ) ; +#3892 = AXIS2_PLACEMENT_3D ( 'NONE', #11621, #2801, #5732 ) ; +#3893 = CIRCLE ( 'NONE', #2667, 0.4687475818742555300 ) ; +#3894 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.5833333333333264900 ) ) ; +#3895 = ADVANCED_FACE ( 'NONE', ( #17236 ), #15390, .T. ) ; +#3896 = DIRECTION ( 'NONE', ( -0.1500969283399771200, 0.9886712861729645100, 0.0000000000000000000 ) ) ; +#3897 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.9722222222222179900 ) ) ; +#3898 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.08680555555554481100 ) ) ; +#3899 = EDGE_LOOP ( 'NONE', ( #5918, #7407, #9120, #17191, #13405, #5344 ) ) ; +#3900 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3901 = ORIENTED_EDGE ( 'NONE', *, *, #13622, .F. ) ; +#3902 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.8263888888888837300 ) ) ; +#3903 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.343749999999999600 ) ) ; +#3904 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.3958333333333244300 ) ) ; +#3905 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.03472222222223443600 ) ) ; +#3906 = EDGE_LOOP ( 'NONE', ( #18008, #7472, #13061, #7850 ) ) ; +#3907 = VECTOR ( 'NONE', #12995, 39.37007874015748100 ) ; +#3908 = LINE ( 'NONE', #16147, #14268 ) ; +#3909 = ORIENTED_EDGE ( 'NONE', *, *, #12998, .T. ) ; +#3910 = ORIENTED_EDGE ( 'NONE', *, *, #3090, .F. ) ; +#3911 = EDGE_CURVE ( 'NONE', #3063, #4006, #17928, .T. ) ; +#3912 = VECTOR ( 'NONE', #7701, 39.37007874015748100 ) ; +#3913 = EDGE_CURVE ( 'NONE', #7416, #3293, #7817, .T. ) ; +#3914 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.263888888888887300 ) ) ; +#3915 = EDGE_CURVE ( 'NONE', #14594, #14726, #7106, .T. ) ; +#3916 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, 0.06770833333334555500 ) ) ; +#3917 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323600600 ) ) ; +#3918 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3919 = AXIS2_PLACEMENT_3D ( 'NONE', #3480, #4943, #6562 ) ; +#3920 = EDGE_LOOP ( 'NONE', ( #18238, #11722, #18234, #13359 ) ) ; +#3921 = VERTEX_POINT ( 'NONE', #2756 ) ; +#3922 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.282986111111109600 ) ) ; +#3923 = VERTEX_POINT ( 'NONE', #17506 ) ; +#3924 = CARTESIAN_POINT ( 'NONE', ( -0.4548654901190614100, -0.07503707624389545400, 1.484375000000000200 ) ) ; +#3925 = FACE_OUTER_BOUND ( 'NONE', #18984, .T. ) ; +#3926 = VECTOR ( 'NONE', #8868, 39.37007874015748100 ) ; +#3927 = ORIENTED_EDGE ( 'NONE', *, *, #13956, .F. ) ; +#3928 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.008680555555543855200 ) ) ; +#3929 = ORIENTED_EDGE ( 'NONE', *, *, #16871, .F. ) ; +#3930 = CARTESIAN_POINT ( 'NONE', ( -0.2708333333333339300, -5.106507337577213600E-016, -1.562500000000000000 ) ) ; +#3931 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.388888888888888000 ) ) ; +#3932 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#3933 = CARTESIAN_POINT ( 'NONE', ( -3.032612960979403800E-017, -1.569772566619568900E-017, 3.802149639073325800 ) ) ; +#3934 = LINE ( 'NONE', #15512, #10851 ) ; +#3935 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.9305555555555513600 ) ) ; +#3936 = EDGE_CURVE ( 'NONE', #11670, #14143, #10801, .T. ) ; +#3937 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3938 = ORIENTED_EDGE ( 'NONE', *, *, #11136, .F. ) ; +#3939 = AXIS2_PLACEMENT_3D ( 'NONE', #6470, #12078, #10863 ) ; +#3940 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -3.585550491684345600E-016, 0.1963163490354230300 ) ) ; +#3941 = ORIENTED_EDGE ( 'NONE', *, *, #12357, .T. ) ; +#3942 = EDGE_CURVE ( 'NONE', #772, #9767, #11267, .T. ) ; +#3943 = DIRECTION ( 'NONE', ( 0.4482668910516087700, -0.8938997675281749000, -0.0000000000000000000 ) ) ; +#3944 = VECTOR ( 'NONE', #13332, 39.37007874015748900 ) ; +#3945 = EDGE_LOOP ( 'NONE', ( #14223, #17031, #9392, #9946 ) ) ; +#3946 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #8196, #11168, #9863, #12642, #3810, #4005, #990, #14119, #17089 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.9166666666666666300, 0.9204545454545454100, 0.9242424242424242000, 0.9280303030303029800, 0.9318181818181817700 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#3947 = AXIS2_PLACEMENT_3D ( 'NONE', #19071, #13415, #16219 ) ; +#3948 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.4166666666666579700 ) ) ; +#3949 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.2708333333333237100 ) ) ; +#3950 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.9722222222222181000 ) ) ; +#3951 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.326388888888887500 ) ) ; +#3952 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323615500 ) ) ; +#3953 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.01736111111109972500 ) ) ; +#3954 = DIRECTION ( 'NONE', ( 0.9151887321064310400, -0.4030255384283025200, 0.0000000000000000000 ) ) ; +#3955 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3956 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.02430555555554405800 ) ) ; +#3957 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.4027777777777694600 ) ) ; +#3958 = ORIENTED_EDGE ( 'NONE', *, *, #4023, .T. ) ; +#3959 = ORIENTED_EDGE ( 'NONE', *, *, #5671, .T. ) ; +#3960 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.5277777777777704600 ) ) ; +#3961 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#3962 = ORIENTED_EDGE ( 'NONE', *, *, #17111, .T. ) ; +#3963 = VECTOR ( 'NONE', #11348, 39.37007874015748900 ) ; +#3964 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.010416666666662700 ) ) ; +#3965 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.2187499999999901500 ) ) ; +#3966 = VERTEX_POINT ( 'NONE', #8752 ) ; +#3967 = EDGE_CURVE ( 'NONE', #18140, #8280, #19096, .T. ) ; +#3968 = DIRECTION ( 'NONE', ( 0.1713325394261260300, 0.02826394418405604000, 0.9848077530122088000 ) ) ; +#3969 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.09722222222223464400 ) ) ; +#3970 = AXIS2_PLACEMENT_3D ( 'NONE', #9473, #15250, #5127 ) ; +#3971 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3972 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.2291666666666564700 ) ) ; +#3973 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3974 = DIRECTION ( 'NONE', ( -0.5358267949789946600, -0.8443279255020163000, 0.0000000000000000000 ) ) ; +#3975 = ADVANCED_FACE ( 'NONE', ( #14933 ), #18181, .T. ) ; +#3976 = ORIENTED_EDGE ( 'NONE', *, *, #10939, .T. ) ; +#3977 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.319444444444443500 ) ) ; +#3978 = VERTEX_POINT ( 'NONE', #10290 ) ; +#3979 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, 0.1128472222222348400 ) ) ; +#3980 = CYLINDRICAL_SURFACE ( 'NONE', #10347, 0.3125000000000008300 ) ; +#3981 = ORIENTED_EDGE ( 'NONE', *, *, #6302, .F. ) ; +#3982 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, 0.9375000000000000000 ) ) ; +#3983 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.06944444444443334500 ) ) ; +#3984 = CARTESIAN_POINT ( 'NONE', ( 0.2615678826637272100, -0.3796253675287001900, 1.593193105402742800 ) ) ; +#3985 = VERTEX_POINT ( 'NONE', #11772 ) ; +#3986 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#3987 = CARTESIAN_POINT ( 'NONE', ( -0.2615678826637217700, -0.3796253675287039600, 1.484375000000000200 ) ) ; +#3988 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.307291666666665400 ) ) ; +#3989 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#3990 = ADVANCED_FACE ( 'NONE', ( #17464 ), #1470, .F. ) ; +#3991 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.2135416666666565300 ) ) ; +#3992 = DIRECTION ( 'NONE', ( 0.09852382856602506800, -0.1429921145089393900, 0.9848077530122083500 ) ) ; +#3993 = EDGE_CURVE ( 'NONE', #3055, #10973, #14243, .T. ) ; +#3994 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.416666666666665900 ) ) ; +#3995 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3996 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.2708333333333237100 ) ) ; +#3997 = ORIENTED_EDGE ( 'NONE', *, *, #482, .F. ) ; +#3998 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.6215277777777712400 ) ) ; +#3999 = ORIENTED_EDGE ( 'NONE', *, *, #2978, .F. ) ; +#4000 = ORIENTED_EDGE ( 'NONE', *, *, #525, .F. ) ; +#4001 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#4002 = AXIS2_PLACEMENT_3D ( 'NONE', #12225, #3389, #13703 ) ; +#4003 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.03472222222223443600 ) ) ; +#4004 = CIRCLE ( 'NONE', #12180, 0.4687475818742556900 ) ; +#4005 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, 0.08680555555556801500 ) ) ; +#4006 = VERTEX_POINT ( 'NONE', #10236 ) ; +#4007 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.4826388888888807300 ) ) ; +#4008 = ORIENTED_EDGE ( 'NONE', *, *, #13162, .F. ) ; +#4009 = CARTESIAN_POINT ( 'NONE', ( -0.2849188901020669500, -0.3722200808164516900, 1.143750000000000000 ) ) ; +#4010 = PLANE ( 'NONE', #12578 ) ; +#4011 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.1284722222222347600 ) ) ; +#4012 = CALENDAR_DATE ( 2024, 16, 6 ) ; +#4013 = DIRECTION ( 'NONE', ( -0.1552240656481553000, -0.07784072873953115600, -0.9848077530122089100 ) ) ; +#4014 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4015 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.2951388888888797900 ) ) ; +#4016 = ORIENTED_EDGE ( 'NONE', *, *, #9382, .F. ) ; +#4017 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.6805555555555493600 ) ) ; +#4018 = CIRCLE ( 'NONE', #2664, 0.4687475818742558600 ) ; +#4019 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.076388888888885500 ) ) ; +#4020 = EDGE_CURVE ( 'NONE', #7764, #1409, #3427, .T. ) ; +#4021 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.1805555555555454200 ) ) ; +#4022 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#4023 = EDGE_CURVE ( 'NONE', #8952, #17510, #13331, .T. ) ; +#4024 = AXIS2_PLACEMENT_3D ( 'NONE', #14653, #4237, #19045 ) ; +#4025 = PLANE ( 'NONE', #16084 ) ; +#4026 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.4131944444444358200 ) ) ; +#4027 = AXIS2_PLACEMENT_3D ( 'NONE', #123, #17830, #10489 ) ; +#4028 = CARTESIAN_POINT ( 'NONE', ( -0.4606833792705947700, -0.01743562377178980600, 1.587900241027141200 ) ) ; +#4029 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4030 = CIRCLE ( 'NONE', #6764, 0.4610132068742565100 ) ; +#4031 = ORIENTED_EDGE ( 'NONE', *, *, #13875, .F. ) ; +#4032 = LINE ( 'NONE', #13512, #825 ) ; +#4033 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.309027777777776600 ) ) ; +#4034 = VECTOR ( 'NONE', #4902, 39.37007874015748100 ) ; +#4035 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.579861111111112000 ) ) ; +#4036 = CARTESIAN_POINT ( 'NONE', ( 0.4019342351530959500, -0.2411958397483175100, 1.143750000000000000 ) ) ; +#4037 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4038 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.592561465728329600 ) ) ; +#4039 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.211805555555553400 ) ) ; +#4040 = CARTESIAN_POINT ( 'NONE', ( -2.199813562574310200E-016, -9.352404279648282100E-017, -1.174024639073328700 ) ) ; +#4041 = EDGE_CURVE ( 'NONE', #4518, #9233, #10556, .T. ) ; +#4042 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.258680555555553800 ) ) ; +#4043 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.336805555555554200 ) ) ; +#4044 = CARTESIAN_POINT ( 'NONE', ( 0.1329498210530421200, -0.2450336484156100900, -1.556917725157686700 ) ) ; +#4045 = CARTESIAN_POINT ( 'NONE', ( 0.1616086329535751900, 0.4400104683469203700, 1.143750000000000000 ) ) ; +#4046 = VECTOR ( 'NONE', #16450, 39.37007874015748100 ) ; +#4047 = EDGE_CURVE ( 'NONE', #4767, #3761, #4185, .T. ) ; +#4048 = VERTEX_POINT ( 'NONE', #13316 ) ; +#4049 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, 0.09895833333334593000 ) ) ; +#4050 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4051 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.309027777777775900 ) ) ; +#4052 = EDGE_CURVE ( 'NONE', #12697, #13739, #18632, .T. ) ; +#4053 = CIRCLE ( 'NONE', #506, 0.3125000000000011700 ) ; +#4054 = AXIS2_PLACEMENT_3D ( 'NONE', #11800, #5911, #15972 ) ; +#4055 = ORIENTED_EDGE ( 'NONE', *, *, #6864, .T. ) ; +#4056 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.6423611111111047200 ) ) ; +#4057 = FACE_OUTER_BOUND ( 'NONE', #11822, .T. ) ; +#4058 = CARTESIAN_POINT ( 'NONE', ( -0.4548654901190618500, 0.07503707624389219200, 1.589564174286821800 ) ) ; +#4059 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4060 = ADVANCED_FACE ( 'NONE', ( #7563 ), #15168, .T. ) ; +#4061 = VECTOR ( 'NONE', #14157, 39.37007874015748100 ) ; +#4062 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.4635416666666586400 ) ) ; +#4063 = VECTOR ( 'NONE', #18551, 39.37007874015748100 ) ; +#4064 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.3437499999999909000 ) ) ; +#4065 = CARTESIAN_POINT ( 'NONE', ( -0.2360194556738189100, -0.4049927308685898900, 1.484375000000000200 ) ) ; +#4066 = ORIENTED_EDGE ( 'NONE', *, *, #10207, .F. ) ; +#4067 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4068 = EDGE_CURVE ( 'NONE', #12956, #14318, #9424, .T. ) ; +#4069 = CARTESIAN_POINT ( 'NONE', ( 0.4190155160288301400, 0.2101251051804446400, 1.143750000000000000 ) ) ; +#4070 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.586805555555556000 ) ) ; +#4071 = AXIS2_PLACEMENT_3D ( 'NONE', #54, #10418, #1590 ) ; +#4072 = CARTESIAN_POINT ( 'NONE', ( -0.2360206732261721200, -0.4049948201025095900, 1.592561465728329600 ) ) ; +#4073 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.319444444444443300 ) ) ; +#4074 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.2638888888888794000 ) ) ; +#4075 = AXIS2_PLACEMENT_3D ( 'NONE', #13569, #4728, #7512 ) ; +#4076 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.5520833333333261500 ) ) ; +#4077 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#4078 = ORIENTED_EDGE ( 'NONE', *, *, #12568, .F. ) ; +#4079 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.9687499999999957800 ) ) ; +#4080 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.1145833333333226300 ) ) ; +#4081 = DIRECTION ( 'NONE', ( -0.9772957051199558900, 0.2118799300407856500, -0.0000000000000000000 ) ) ; +#4082 = LINE ( 'NONE', #18511, #18152 ) ; +#4083 = CARTESIAN_POINT ( 'NONE', ( 0.07659183501444781500, -0.2731600236108546200, 0.1024438031483157600 ) ) ; +#4084 = FACE_OUTER_BOUND ( 'NONE', #12652, .T. ) ; +#4085 = CIRCLE ( 'NONE', #13189, 0.4687499999999995600 ) ; +#4086 = CARTESIAN_POINT ( 'NONE', ( 0.4375000000000000600, -4.927913012701559200E-016, 1.531250000000000000 ) ) ; +#4087 = EDGE_LOOP ( 'NONE', ( #14870, #18699, #18507, #9964 ) ) ; +#4088 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.3229166666666573600 ) ) ; +#4089 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676401600 ) ) ; +#4090 = VECTOR ( 'NONE', #3823, 39.37007874015748100 ) ; +#4091 = FACE_OUTER_BOUND ( 'NONE', #17018, .T. ) ; +#4092 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#4093 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.154513888888886600 ) ) ; +#4094 = VERTEX_POINT ( 'NONE', #14847 ) ; +#4095 = VERTEX_POINT ( 'NONE', #7655 ) ; +#4096 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.371527777777776800 ) ) ; +#4097 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.336805555555554900 ) ) ; +#4098 = EDGE_CURVE ( 'NONE', #1646, #9864, #5922, .T. ) ; +#4099 = VERTEX_POINT ( 'NONE', #3142 ) ; +#4100 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.482638888888889300 ) ) ; +#4101 = CARTESIAN_POINT ( 'NONE', ( 0.4190133544667915000, 0.2101240212147360800, 1.484375000000000200 ) ) ; +#4102 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#4103 = ORIENTED_EDGE ( 'NONE', *, *, #1186, .F. ) ; +#4104 = ORIENTED_EDGE ( 'NONE', *, *, #10311, .F. ) ; +#4105 = FACE_OUTER_BOUND ( 'NONE', #15274, .T. ) ; +#4106 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.2430555555555456400 ) ) ; +#4107 = LINE ( 'NONE', #16855, #15391 ) ; +#4108 = CIRCLE ( 'NONE', #15155, 0.3114846310392944700 ) ; +#4109 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.2638888888888791300 ) ) ; +#4110 = EDGE_LOOP ( 'NONE', ( #11750, #9474, #9775, #16513, #1636, #14200 ) ) ; +#4111 = CIRCLE ( 'NONE', #14262, 0.03124999999999983700 ) ; +#4112 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.293402777777776100 ) ) ; +#4113 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.295138888888887100 ) ) ; +#4114 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#4115 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.7743055555555500300 ) ) ; +#4116 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.118055555555552500 ) ) ; +#4117 = AXIS2_PLACEMENT_3D ( 'NONE', #8443, #11415, #11607 ) ; +#4118 = CARTESIAN_POINT ( 'NONE', ( 0.1858538965889422500, -0.2373638314561583900, 0.1512576809051664500 ) ) ; +#4119 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.6736111111111049400 ) ) ; +#4120 = ORIENTED_EDGE ( 'NONE', *, *, #12319, .F. ) ; +#4121 = VERTEX_POINT ( 'NONE', #10420 ) ; +#4122 = CARTESIAN_POINT ( 'NONE', ( -0.4684146371797784900, -0.01772823103797906100, 1.587900241027141200 ) ) ; +#4123 = ORIENTED_EDGE ( 'NONE', *, *, #6385, .T. ) ; +#4124 = ORIENTED_EDGE ( 'NONE', *, *, #4213, .F. ) ; +#4125 = FACE_OUTER_BOUND ( 'NONE', #447, .T. ) ; +#4126 = VECTOR ( 'NONE', #9260, 39.37007874015748900 ) ; +#4127 = LINE ( 'NONE', #13428, #14387 ) ; +#4128 = ORIENTED_EDGE ( 'NONE', *, *, #17360, .T. ) ; +#4129 = LINE ( 'NONE', #9669, #14040 ) ; +#4130 = CARTESIAN_POINT ( 'NONE', ( -0.1257767296168604300, -0.4435238338571820300, 1.143750000000000000 ) ) ; +#4131 = CARTESIAN_POINT ( 'NONE', ( -0.4120995984523176900, 0.2066569569792524900, 1.592116737595687900 ) ) ; +#4132 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.4843749999999921700 ) ) ; +#4133 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.2534722222222122700 ) ) ; +#4134 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.9652777777777737900 ) ) ; +#4135 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.552083333333333700 ) ) ; +#4136 = ORIENTED_EDGE ( 'NONE', *, *, #2689, .F. ) ; +#4137 = EDGE_CURVE ( 'NONE', #4882, #7122, #4560, .T. ) ; +#4138 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.006944444444456345100 ) ) ; +#4139 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#4140 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#4141 = ORIENTED_EDGE ( 'NONE', *, *, #8571, .T. ) ; +#4142 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.2916666666666575300 ) ) ; +#4143 = FACE_OUTER_BOUND ( 'NONE', #4340, .T. ) ; +#4144 = LINE ( 'NONE', #12994, #3684 ) ; +#4145 = EDGE_LOOP ( 'NONE', ( #5459, #5766, #4333, #13766 ) ) ; +#4146 = ORIENTED_EDGE ( 'NONE', *, *, #10687, .F. ) ; +#4147 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.2951388888888795100 ) ) ; +#4148 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.9583333333333289300 ) ) ; +#4149 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.2256944444444347100 ) ) ; +#4150 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#4151 = ORIENTED_EDGE ( 'NONE', *, *, #3185, .F. ) ; +#4152 = DIRECTION ( 'NONE', ( -0.1697056182357959400, 0.03679256373577865400, 0.9848077530122083500 ) ) ; +#4153 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.9218749999999955600 ) ) ; +#4154 = EDGE_CURVE ( 'NONE', #13815, #2181, #16785, .T. ) ; +#4155 = EDGE_LOOP ( 'NONE', ( #13892, #19120, #13667, #6149 ) ) ; +#4156 = ADVANCED_FACE ( 'NONE', ( #4105 ), #11479, .T. ) ; +#4157 = VERTEX_POINT ( 'NONE', #1849 ) ; +#4158 = LINE ( 'NONE', #9592, #17300 ) ; +#4159 = EDGE_CURVE ( 'NONE', #15360, #16797, #12859, .T. ) ; +#4160 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.357638888888888200 ) ) ; +#4161 = VERTEX_POINT ( 'NONE', #9264 ) ; +#4162 = EDGE_LOOP ( 'NONE', ( #11484, #18623, #7226, #14265 ) ) ; +#4163 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.340277777777777000 ) ) ; +#4164 = EDGE_CURVE ( 'NONE', #17301, #4271, #14017, .T. ) ; +#4165 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, 0.2447916666666804200 ) ) ; +#4166 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.9861111111111072700 ) ) ; +#4167 = AXIS2_PLACEMENT_3D ( 'NONE', #16445, #7634, #17926 ) ; +#4168 = CARTESIAN_POINT ( 'NONE', ( -0.4606833792705949400, 0.01743562377178659700, 1.587900241027141200 ) ) ; +#4169 = PLANE ( 'NONE', #2223 ) ; +#4170 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.2499999999999902300 ) ) ; +#4171 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#4172 = VERTEX_POINT ( 'NONE', #6483 ) ; +#4173 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.133680555555552700 ) ) ; +#4174 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.274305555555553600 ) ) ; +#4175 = ORIENTED_EDGE ( 'NONE', *, *, #17962, .F. ) ; +#4176 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#4177 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, 0.01562500000001194200 ) ) ; +#4178 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.111111111111108100 ) ) ; +#4179 = CARTESIAN_POINT ( 'NONE', ( -0.01152533017185641800, 0.4608691177296606000, 1.187613820323598600 ) ) ; +#4180 = CARTESIAN_POINT ( 'NONE', ( -0.2347581656882391200, -0.1831884267740234700, 0.1397721288017193800 ) ) ; +#4181 = ORIENTED_EDGE ( 'NONE', *, *, #11521, .F. ) ; +#4182 = LINE ( 'NONE', #18871, #7190 ) ; +#4183 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.6284722222222156600 ) ) ; +#4184 = ORIENTED_EDGE ( 'NONE', *, *, #6958, .F. ) ; +#4185 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #7517, #7588, #9134, #11964, #7715, #6156, #17825, #3274, #314 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5530303030303029800, 0.5568181818181817700, 0.5606060606060605500, 0.5643939393939394500, 0.5681818181818182300 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#4186 = EDGE_CURVE ( 'NONE', #8074, #11548, #14702, .T. ) ; +#4187 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#4188 = AXIS2_PLACEMENT_3D ( 'NONE', #11536, #18879, #9996 ) ; +#4189 = DIRECTION ( 'NONE', ( -0.9430338398216099300, -0.3326968243781567900, 0.0000000000000000000 ) ) ; +#4190 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4191 = CARTESIAN_POINT ( 'NONE', ( -0.3122385636735703400, 0.3496192812976213800, 1.484375000000000200 ) ) ; +#4192 = AXIS2_PLACEMENT_3D ( 'NONE', #13010, #15954, #14560 ) ; +#4193 = EDGE_LOOP ( 'NONE', ( #14562, #5899, #16868, #12544 ) ) ; +#4194 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.006944444444456345100 ) ) ; +#4195 = VERTEX_POINT ( 'NONE', #15350 ) ; +#4196 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.5086805555555479200 ) ) ; +#4197 = VERTEX_POINT ( 'NONE', #5054 ) ; +#4198 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.1076388888888777700 ) ) ; +#4199 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.1597222222222113900 ) ) ; +#4200 = LINE ( 'NONE', #4072, #15028 ) ; +#4201 = ADVANCED_FACE ( 'NONE', ( #3191 ), #6546, .F. ) ; +#4202 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#4203 = VERTEX_POINT ( 'NONE', #9526 ) ; +#4204 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.09027777777779035000 ) ) ; +#4205 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.513888888888889100 ) ) ; +#4206 = EDGE_LOOP ( 'NONE', ( #5429, #2012, #4591, #10806, #6244, #734 ) ) ; +#4207 = CARTESIAN_POINT ( 'NONE', ( -0.3829490853735684200, 0.2566771803726104500, 1.592921120922338200 ) ) ; +#4208 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.451388888888888800 ) ) ; +#4209 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.4131944444444362000 ) ) ; +#4210 = ORIENTED_EDGE ( 'NONE', *, *, #7902, .F. ) ; +#4211 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.8333333333333279300 ) ) ; +#4212 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.02083333333334497200 ) ) ; +#4213 = EDGE_CURVE ( 'NONE', #18652, #12758, #13798, .T. ) ; +#4214 = ORIENTED_EDGE ( 'NONE', *, *, #1559, .T. ) ; +#4215 = FACE_OUTER_BOUND ( 'NONE', #17091, .T. ) ; +#4216 = AXIS2_PLACEMENT_3D ( 'NONE', #2177, #18463, #12478 ) ; +#4217 = EDGE_LOOP ( 'NONE', ( #7128, #2341, #1095, #7458 ) ) ; +#4218 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4219 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.8315972222222172100 ) ) ; +#4220 = ORIENTED_EDGE ( 'NONE', *, *, #12339, .T. ) ; +#4221 = CARTESIAN_POINT ( 'NONE', ( 0.04632776727397798500, 0.4586795339797648000, 1.440511179676384800 ) ) ; +#4222 = VECTOR ( 'NONE', #8907, 39.37007874015748100 ) ; +#4223 = EDGE_LOOP ( 'NONE', ( #6863, #13367, #276, #18474, #17728, #9268 ) ) ; +#4224 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#4225 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.9791666666666629700 ) ) ; +#4226 = AXIS2_PLACEMENT_3D ( 'NONE', #1697, #6196, #12122 ) ; +#4227 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.468750000000000200 ) ) ; +#4228 = EDGE_LOOP ( 'NONE', ( #4403, #6012, #6079, #12834, #10158, #6467 ) ) ; +#4229 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.3611111111111021700 ) ) ; +#4230 = VERTEX_POINT ( 'NONE', #1912 ) ; +#4231 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#4232 = DIRECTION ( 'NONE', ( -0.9430338398216168100, 0.3326968243781375200, -0.0000000000000000000 ) ) ; +#4233 = PLANE ( 'NONE', #18113 ) ; +#4234 = ORIENTED_EDGE ( 'NONE', *, *, #1826, .F. ) ; +#4235 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.036458333333329700 ) ) ; +#4236 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.430555555555555100 ) ) ; +#4237 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4238 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, 0.1927083333333468000 ) ) ; +#4239 = DIRECTION ( 'NONE', ( -0.6374239897486987400, 0.7705132427757815900, 0.0000000000000000000 ) ) ; +#4240 = EDGE_CURVE ( 'NONE', #9728, #14170, #5470, .T. ) ; +#4241 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.166666666666663900 ) ) ; +#4242 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.208333333333331000 ) ) ; +#4243 = CARTESIAN_POINT ( 'NONE', ( -0.2806433425409660100, -0.09682552627824365900, 0.1373142698835128900 ) ) ; +#4244 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.6562499999999936700 ) ) ; +#4245 = CARTESIAN_POINT ( 'NONE', ( -0.4684146371797791000, 0.01772823103797583100, 1.143750000000000000 ) ) ; +#4246 = EDGE_CURVE ( 'NONE', #19087, #9694, #10090, .T. ) ; +#4247 = DIRECTION ( 'NONE', ( -0.8574597016599334600, 0.5145511247964167400, 0.0000000000000000000 ) ) ; +#4248 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.4201388888888805700 ) ) ; +#4249 = AXIS2_PLACEMENT_3D ( 'NONE', #16768, #12529, #2280 ) ; +#4250 = CARTESIAN_POINT ( 'NONE', ( -0.1589412568245233400, 0.4327480257511604500, 1.440511179676385900 ) ) ; +#4251 = ADVANCED_FACE ( 'NONE', ( #12403 ), #14459, .T. ) ; +#4252 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.5711805555555483600 ) ) ; +#4253 = VECTOR ( 'NONE', #7936, 39.37007874015748900 ) ; +#4254 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.02083333333334551700 ) ) ; +#4255 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.2743055555555457000 ) ) ; +#4256 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.468750000000000000 ) ) ; +#4257 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4258 = CARTESIAN_POINT ( 'NONE', ( 0.1589412568245264500, -0.4327480257511592800, 1.440511179676388100 ) ) ; +#4259 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#4260 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.503472222222222300 ) ) ; +#4261 = CARTESIAN_POINT ( 'NONE', ( -0.2786454333104068600, -7.879427662528783000E-013, 0.08899038763601538300 ) ) ; +#4262 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4263 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.548611111111112000 ) ) ; +#4264 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.3298611111111021700 ) ) ; +#4265 = LINE ( 'NONE', #15713, #13711 ) ; +#4266 = ORIENTED_EDGE ( 'NONE', *, *, #15596, .F. ) ; +#4267 = DIRECTION ( 'NONE', ( 0.01745011258364800500, 0.1727691615360296700, -0.9848077530122085800 ) ) ; +#4268 = FACE_OUTER_BOUND ( 'NONE', #7578, .T. ) ; +#4269 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.8923611111111062800 ) ) ; +#4270 = EDGE_CURVE ( 'NONE', #9421, #13348, #660, .T. ) ; +#4271 = VERTEX_POINT ( 'NONE', #18219 ) ; +#4272 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.006944444444432843100 ) ) ; +#4274 = EDGE_CURVE ( 'NONE', #16173, #13570, #3355, .T. ) ; +#4273 = CYLINDRICAL_SURFACE ( 'NONE', #16348, 0.3125000000000008300 ) ; +#4275 = AXIS2_PLACEMENT_3D ( 'NONE', #18788, #17435, #7077 ) ; +#4276 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4277 = DIRECTION ( 'NONE', ( -0.02606405807963781100, -0.1716809671555510900, 0.9848077530122089100 ) ) ; +#4278 = MECHANICAL_CONTEXT ( 'NONE', #16174, 'mechanical' ) ; +#4279 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.9531249999999957800 ) ) ; +#4280 = CARTESIAN_POINT ( 'NONE', ( 0.4019321617077193900, -0.2411945954989975200, 1.484375000000000200 ) ) ; +#4281 = FACE_OUTER_BOUND ( 'NONE', #16972, .T. ) ; +#4282 = ORIENTED_EDGE ( 'NONE', *, *, #1758, .T. ) ; +#4283 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.045138888888885500 ) ) ; +#4284 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.9756944444444406500 ) ) ; +#4285 = CIRCLE ( 'NONE', #16276, 0.4687475818742580200 ) ; +#4286 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.559027777777778800 ) ) ; +#4287 = ADVANCED_FACE ( 'NONE', ( #11939 ), #9575, .F. ) ; +#4288 = VERTEX_POINT ( 'NONE', #12286 ) ; +#4289 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#4290 = CYLINDRICAL_SURFACE ( 'NONE', #1918, 0.3125000000000008300 ) ; +#4291 = CARTESIAN_POINT ( 'NONE', ( -0.4669429843783105000, 0.04111948248551343400, 1.587900241027141200 ) ) ; +#4292 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.2395833333333236600 ) ) ; +#4293 = DIRECTION ( 'NONE', ( 0.05986782849628325500, -0.1630016340966689300, 0.9848077530122085800 ) ) ; +#4294 = EDGE_CURVE ( 'NONE', #12985, #16484, #15836, .T. ) ; +#4295 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.9461805555555512500 ) ) ; +#4296 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.229166666666664300 ) ) ; +#4297 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4298 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323600200 ) ) ; +#4299 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, 0.05034722222223434600 ) ) ; +#4300 = CARTESIAN_POINT ( 'NONE', ( -0.07035793515936447600, 0.4634396653935766200, 1.588758826628429600 ) ) ; +#4301 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.239583333333331300 ) ) ; +#4302 = CARTESIAN_POINT ( 'NONE', ( -0.1257767296168604300, -0.4435238338571820300, 1.440511179676399000 ) ) ; +#4303 = EDGE_CURVE ( 'NONE', #8955, #12673, #7340, .T. ) ; +#4304 = ORIENTED_EDGE ( 'NONE', *, *, #13022, .T. ) ; +#4305 = AXIS2_PLACEMENT_3D ( 'NONE', #19058, #2698, #7088 ) ; +#4306 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.3784722222222136100 ) ) ; +#4307 = AXIS2_PLACEMENT_3D ( 'NONE', #4888, #6371, #16886 ) ; +#4308 = VECTOR ( 'NONE', #12106, 39.37007874015748900 ) ; +#4309 = LINE ( 'NONE', #5024, #7304 ) ; +#4310 = ORIENTED_EDGE ( 'NONE', *, *, #14967, .F. ) ; +#4311 = ORIENTED_EDGE ( 'NONE', *, *, #1479, .F. ) ; +#4312 = CARTESIAN_POINT ( 'NONE', ( 0.4375000000000000600, -4.908777906464881800E-016, 1.562500000000000000 ) ) ; +#4313 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #12352, #6625, #3596, #12431, #5074, #8119, #15505, #9542, #717 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5378787878787878500, 0.5416666666666666300, 0.5454545454545454100, 0.5492424242424242000, 0.5530303030303029800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#4314 = CIRCLE ( 'NONE', #6086, 0.4687499999999995600 ) ; +#4315 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#4316 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.4670138888888809000 ) ) ; +#4317 = VERTEX_POINT ( 'NONE', #18401 ) ; +#4318 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.1562499999999893700 ) ) ; +#4319 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.482638888888889300 ) ) ; +#4320 = EDGE_CURVE ( 'NONE', #553, #9289, #169, .T. ) ; +#4321 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.3298611111111019500 ) ) ; +#4322 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.385416666666665600 ) ) ; +#4323 = VECTOR ( 'NONE', #3184, 39.37007874015748100 ) ; +#4324 = CARTESIAN_POINT ( 'NONE', ( -0.4492896982220444500, 0.1336612493265872700, 1.143750000000000000 ) ) ; +#4325 = VECTOR ( 'NONE', #6538, 39.37007874015748100 ) ; +#4326 = AXIS2_PLACEMENT_3D ( 'NONE', #16980, #8168, #18465 ) ; +#4327 = PLANE ( 'NONE', #9115 ) ; +#4328 = FACE_OUTER_BOUND ( 'NONE', #12968, .T. ) ; +#4329 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.5416666666666591900 ) ) ; +#4330 = ORIENTED_EDGE ( 'NONE', *, *, #7263, .F. ) ; +#4331 = LINE ( 'NONE', #17481, #16061 ) ; +#4332 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.3541666666666579700 ) ) ; +#4333 = ORIENTED_EDGE ( 'NONE', *, *, #16182, .T. ) ; +#4334 = CARTESIAN_POINT ( 'NONE', ( 0.2959610597815864300, 0.009885267111188594500, 0.1365646803693487700 ) ) ; +#4335 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.8020833333333277100 ) ) ; +#4336 = ORIENTED_EDGE ( 'NONE', *, *, #10370, .F. ) ; +#4337 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676396700 ) ) ; +#4338 = ORIENTED_EDGE ( 'NONE', *, *, #3739, .F. ) ; +#4339 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#4340 = EDGE_LOOP ( 'NONE', ( #9945, #14774, #11795, #18381 ) ) ; +#4341 = ORIENTED_EDGE ( 'NONE', *, *, #15093, .F. ) ; +#4342 = CONICAL_SURFACE ( 'NONE', #11858, 0.4610132068742565100, 0.1745329251994265600 ) ; +#4344 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.9114583333333289300 ) ) ; +#4343 = FACE_OUTER_BOUND ( 'NONE', #11124, .T. ) ; +#4345 = EDGE_LOOP ( 'NONE', ( #9160, #9183, #7339, #4625 ) ) ; +#4346 = ORIENTED_EDGE ( 'NONE', *, *, #18884, .F. ) ; +#4347 = DIRECTION ( 'NONE', ( -1.000000000000000000, 2.131628207280300600E-014, 0.0000000000000000000 ) ) ; +#4348 = LINE ( 'NONE', #8171, #18853 ) ; +#4349 = ADVANCED_FACE ( 'NONE', ( #4778 ), #11067, .F. ) ; +#4350 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.7013888888888826200 ) ) ; +#4351 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.152777777777775500 ) ) ; +#4352 = EDGE_CURVE ( 'NONE', #3890, #1563, #8456, .T. ) ; +#4353 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.364583333333332800 ) ) ; +#4354 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.3680555555555466400 ) ) ; +#4355 = EDGE_LOOP ( 'NONE', ( #13353, #8785, #1149, #18620, #12677, #13398 ) ) ; +#4356 = ORIENTED_EDGE ( 'NONE', *, *, #14592, .T. ) ; +#4357 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#4358 = CARTESIAN_POINT ( 'NONE', ( -3.138074643635356000E-017, 0.2886751345948123700, -1.562539370078740200 ) ) ; +#4359 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.06250000000001196300 ) ) ; +#4360 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.9774305555555516900 ) ) ; +#4361 = EDGE_CURVE ( 'NONE', #7284, #16123, #1330, .T. ) ; +#4362 = ORIENTED_EDGE ( 'NONE', *, *, #11554, .F. ) ; +#4363 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.225694444444442200 ) ) ; +#4364 = VECTOR ( 'NONE', #14568, 39.37007874015748100 ) ; +#4365 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#4366 = CARTESIAN_POINT ( 'NONE', ( -0.4492896982220432900, -0.1336612493265903500, 1.590985962198545200 ) ) ; +#4367 = LINE ( 'NONE', #13469, #15409 ) ; +#4368 = ORIENTED_EDGE ( 'NONE', *, *, #12933, .F. ) ; +#4369 = ORIENTED_EDGE ( 'NONE', *, *, #9748, .T. ) ; +#4370 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676383200 ) ) ; +#4371 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.8611111111111059400 ) ) ; +#4372 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#4373 = VECTOR ( 'NONE', #6465, 39.37007874015748900 ) ; +#4374 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.5451388888888817300 ) ) ; +#4375 = ORIENTED_EDGE ( 'NONE', *, *, #11341, .F. ) ; +#4376 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4377 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.4166666666666581900 ) ) ; +#4378 = ORIENTED_EDGE ( 'NONE', *, *, #13537, .F. ) ; +#4379 = EDGE_LOOP ( 'NONE', ( #6839, #11469, #6522, #1893 ) ) ; +#4380 = VECTOR ( 'NONE', #5430, 39.37007874015748100 ) ; +#4381 = LINE ( 'NONE', #1171, #9239 ) ; +#4382 = ORIENTED_EDGE ( 'NONE', *, *, #15272, .T. ) ; +#4383 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.2430555555555456400 ) ) ; +#4384 = VERTEX_POINT ( 'NONE', #12603 ) ; +#4385 = VECTOR ( 'NONE', #729, 39.37007874015748100 ) ; +#4386 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.01388888888887688700 ) ) ; +#4387 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#4388 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.07638888888887737600 ) ) ; +#4389 = CARTESIAN_POINT ( 'NONE', ( -0.1930548476200286400, -0.2117819004778882500, 0.1103272422840155500 ) ) ; +#4390 = ADVANCED_FACE ( 'NONE', ( #6394 ), #6733, .F. ) ; +#4391 = EDGE_CURVE ( 'NONE', #433, #17594, #15356, .T. ) ; +#4392 = DIRECTION ( 'NONE', ( 0.6374239897486934100, -0.7705132427757860300, 0.0000000000000000000 ) ) ; +#4393 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4394 = DIRECTION ( 'NONE', ( 0.03782022621436287300, -0.9992845593168616600, 0.0000000000000000000 ) ) ; +#4395 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.371527777777776600 ) ) ; +#4396 = EDGE_CURVE ( 'NONE', #12950, #15491, #15039, .T. ) ; +#4397 = PLANE ( 'NONE', #12947 ) ; +#4398 = AXIS2_PLACEMENT_3D ( 'NONE', #16904, #3879, #5349 ) ; +#4399 = ORIENTED_EDGE ( 'NONE', *, *, #2360, .F. ) ; +#4400 = ORIENTED_EDGE ( 'NONE', *, *, #15104, .T. ) ; +#4401 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.1076388888888783200 ) ) ; +#4402 = CARTESIAN_POINT ( 'NONE', ( -0.1647619647064726400, 0.2563540156733045100, 0.1602312392924120900 ) ) ; +#4403 = ORIENTED_EDGE ( 'NONE', *, *, #15024, .F. ) ; +#4404 = VECTOR ( 'NONE', #10110, 39.37007874015748100 ) ; +#4405 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.8124999999999944500 ) ) ; +#4406 = VERTEX_POINT ( 'NONE', #3560 ) ; +#4407 = DIRECTION ( 'NONE', ( 1.000000000000000000, -2.131628207280300600E-014, 0.0000000000000000000 ) ) ; +#4408 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4409 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.9843749999999961100 ) ) ; +#4410 = EDGE_CURVE ( 'NONE', #5449, #7, #10779, .T. ) ; +#4411 = CARTESIAN_POINT ( 'NONE', ( 9.847602586434744600E-018, 2.601929759791192700E-016, 3.802149639073269900 ) ) ; +#4412 = VERTEX_POINT ( 'NONE', #15468 ) ; +#4413 = ORIENTED_EDGE ( 'NONE', *, *, #18197, .F. ) ; +#4414 = EDGE_CURVE ( 'NONE', #2164, #7344, #6855, .T. ) ; +#4415 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.6562499999999934500 ) ) ; +#4416 = DIRECTION ( 'NONE', ( -0.08772156263575464600, -0.9961450333403973900, 0.0000000000000000000 ) ) ; +#4417 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.055555555555552200 ) ) ; +#4418 = ORIENTED_EDGE ( 'NONE', *, *, #3911, .F. ) ; +#4419 = EDGE_CURVE ( 'NONE', #13982, #5457, #9850, .T. ) ; +#4420 = AXIS2_PLACEMENT_3D ( 'NONE', #5404, #17538, #16223 ) ; +#4421 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.312499999999998900 ) ) ; +#4422 = FACE_OUTER_BOUND ( 'NONE', #7208, .T. ) ; +#4423 = VERTEX_POINT ( 'NONE', #12522 ) ; +#4424 = CARTESIAN_POINT ( 'NONE', ( -0.1616086329535814400, 0.4400104683469180400, 1.591590229135180400 ) ) ; +#4425 = DIRECTION ( 'NONE', ( -0.9961450333403972800, 0.08772156263575463200, -0.0000000000000000000 ) ) ; +#4426 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.057291666666663200 ) ) ; +#4427 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.149305555555552700 ) ) ; +#4428 = PLANE ( 'NONE', #12706 ) ; +#4429 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4430 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#4431 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4432 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.006944444444440400 ) ) ; +#4433 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4434 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, 0.1354166666666796200 ) ) ; +#4435 = ORIENTED_EDGE ( 'NONE', *, *, #7643, .T. ) ; +#4436 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.4791666666666589700 ) ) ; +#4437 = ORIENTED_EDGE ( 'NONE', *, *, #17865, .T. ) ; +#4438 = LINE ( 'NONE', #10980, #9969 ) ; +#4439 = ORIENTED_EDGE ( 'NONE', *, *, #11916, .F. ) ; +#4440 = EDGE_CURVE ( 'NONE', #5204, #27, #5675, .T. ) ; +#4441 = AXIS2_PLACEMENT_3D ( 'NONE', #10954, #6697, #2141 ) ; +#4442 = ORIENTED_EDGE ( 'NONE', *, *, #13042, .F. ) ; +#4443 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4444 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.1006944444444331800 ) ) ; +#4445 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.01736111111112322400 ) ) ; +#4446 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.04166666666665497900 ) ) ; +#4447 = CARTESIAN_POINT ( 'NONE', ( 0.1622681766990122000, -0.2237736071879158100, -1.556917725157686700 ) ) ; +#4448 = ORIENTED_EDGE ( 'NONE', *, *, #15522, .T. ) ; +#4449 = DIRECTION ( 'NONE', ( -0.8574597016599334600, 0.5145511247964167400, 0.0000000000000000000 ) ) ; +#4450 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.5138888888888810700 ) ) ; +#4451 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.416666666666665900 ) ) ; +#4452 = VERTEX_POINT ( 'NONE', #13942 ) ; +#4453 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -1.236111111111109200 ) ) ; +#4454 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.541666666666667400 ) ) ; +#4455 = EDGE_LOOP ( 'NONE', ( #6824, #11675, #9584, #7608 ) ) ; +#4456 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.1944444444444343200 ) ) ; +#4457 = CARTESIAN_POINT ( 'NONE', ( 0.1794020164729399100, 0.2407646417206269800, 0.1465764065035337300 ) ) ; +#4458 = CIRCLE ( 'NONE', #19091, 0.4687499999999995600 ) ; +#4459 = ORIENTED_EDGE ( 'NONE', *, *, #7668, .T. ) ; +#4460 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.8749999999999948900 ) ) ; +#4461 = EDGE_CURVE ( 'NONE', #17817, #7306, #17636, .T. ) ; +#4462 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323621500 ) ) ; +#4463 = ADVANCED_FACE ( 'NONE', ( #16538 ), #544, .F. ) ; +#4464 = ORIENTED_EDGE ( 'NONE', *, *, #17241, .F. ) ; +#4465 = SECURITY_CLASSIFICATION_LEVEL ( 'unclassified' ) ; +#4466 = CALENDAR_DATE ( 2024, 16, 6 ) ; +#4467 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.7343749999999941200 ) ) ; +#4468 = ORIENTED_EDGE ( 'NONE', *, *, #3236, .T. ) ; +#4469 = CARTESIAN_POINT ( 'NONE', ( -0.3477592364557806600, -0.3026494512999792800, 1.593375490995827300 ) ) ; +#4470 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.010416666666663200 ) ) ; +#4471 = AXIS2_PLACEMENT_3D ( 'NONE', #1886, #18058, #14958 ) ; +#4472 = LINE ( 'NONE', #18490, #15757 ) ; +#4473 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.315972222222221200 ) ) ; +#4474 = ADVANCED_FACE ( 'NONE', ( #15147 ), #13303, .F. ) ; +#4475 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.3749999999999912300 ) ) ; +#4476 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4477 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676384800 ) ) ; +#4478 = CARTESIAN_POINT ( 'NONE', ( -0.3685350091390578500, -0.2896696558821343900, 1.143750000000000000 ) ) ; +#4479 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.3645833333333246000 ) ) ; +#4480 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.7864583333333277100 ) ) ; +#4481 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.142361111111108300 ) ) ; +#4482 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.4374999999999917300 ) ) ; +#4483 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4484 = LINE ( 'NONE', #1050, #7267 ) ; +#4485 = ORIENTED_EDGE ( 'NONE', *, *, #10714, .F. ) ; +#4486 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4487 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.048611111111107400 ) ) ; +#4488 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.197916666666664500 ) ) ; +#4489 = CIRCLE ( 'NONE', #763, 0.4687475818742549700 ) ; +#4490 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.3402777777777688000 ) ) ; +#4491 = VECTOR ( 'NONE', #12112, 39.37007874015748100 ) ; +#4492 = EDGE_CURVE ( 'NONE', #18062, #3352, #17219, .T. ) ; +#4493 = AXIS2_PLACEMENT_3D ( 'NONE', #1578, #4524, #1643 ) ; +#4494 = VECTOR ( 'NONE', #12480, 39.37007874015748100 ) ; +#4495 = VERTEX_POINT ( 'NONE', #3620 ) ; +#4496 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.09027777777776656300 ) ) ; +#4497 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.01041666666665486800 ) ) ; +#4498 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.1215277777777666600 ) ) ; +#4499 = CARTESIAN_POINT ( 'NONE', ( -0.2798938580437728100, -0.04726466983161612500, 0.1028693927755034400 ) ) ; +#4500 = ORIENTED_EDGE ( 'NONE', *, *, #18260, .F. ) ; +#4501 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -0.1443375672974062400, 1.548179320649367500 ) ) ; +#4502 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#4503 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#4504 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.392361111111110100 ) ) ; +#4505 = FACE_OUTER_BOUND ( 'NONE', #13615, .T. ) ; +#4506 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.277777777777776600 ) ) ; +#4507 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.04861111111109984300 ) ) ; +#4508 = EDGE_CURVE ( 'NONE', #7548, #13132, #12157, .T. ) ; +#4509 = CARTESIAN_POINT ( 'NONE', ( 0.4606833792705951100, -0.01743562377178318300, 1.143750000000000000 ) ) ; +#4510 = CIRCLE ( 'NONE', #5389, 0.4610132068742565100 ) ; +#4511 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.4652777777777695200 ) ) ; +#4512 = EDGE_CURVE ( 'NONE', #7727, #15240, #17009, .T. ) ; +#4513 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #6359, #10943, #12299, #3475, #18300, #13772, #18158, #7927, #4877 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3257575757575757500, 0.3295454545454545300, 0.3333333333333333100, 0.3371212121212121000, 0.3409090909090908800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#4514 = DIRECTION ( 'NONE', ( 0.9744976787610149000, 0.2243975804000434600, 0.0000000000000000000 ) ) ; +#4515 = EDGE_CURVE ( 'NONE', #12745, #14303, #16759, .T. ) ; +#4516 = CYLINDRICAL_SURFACE ( 'NONE', #14668, 0.4610132068742565100 ) ; +#4517 = AXIS2_PLACEMENT_3D ( 'NONE', #716, #7989, #577 ) ; +#4518 = VERTEX_POINT ( 'NONE', #5461 ) ; +#4519 = VERTEX_POINT ( 'NONE', #9685 ) ; +#4520 = AXIS2_PLACEMENT_3D ( 'NONE', #13036, #10076, #15982 ) ; +#4521 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#4522 = VECTOR ( 'NONE', #16487, 39.37007874015748100 ) ; +#4523 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.7586805555555499200 ) ) ; +#4524 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#4525 = CARTESIAN_POINT ( 'NONE', ( -1.521004235376680000E-016, 2.269259697886881300E-016, 3.802149639073307600 ) ) ; +#4526 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -1.270833333333331700 ) ) ; +#4527 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, 0.1493055555555685100 ) ) ; +#4528 = DIRECTION ( 'NONE', ( 0.7543368200092185300, 0.6564875946873480700, -0.0000000000000000000 ) ) ; +#4529 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.8124999999999950000 ) ) ; +#4530 = ORIENTED_EDGE ( 'NONE', *, *, #15071, .T. ) ; +#4531 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.295138888888887700 ) ) ; +#4532 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.1805555555555451400 ) ) ; +#4533 = VECTOR ( 'NONE', #2101, 39.37007874015748100 ) ; +#4534 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#4535 = CIRCLE ( 'NONE', #9464, 0.4687499999999995600 ) ; +#4536 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4537 = VECTOR ( 'NONE', #10344, 39.37007874015748900 ) ; +#4538 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -1.114583333333330400 ) ) ; +#4539 = ORIENTED_EDGE ( 'NONE', *, *, #10687, .T. ) ; +#4540 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.3715277777777689100 ) ) ; +#4541 = EDGE_CURVE ( 'NONE', #12905, #4815, #15599, .T. ) ; +#4542 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #6777, #5097, #12718, #996, #5292, #18445, #8328, #13943, #18568 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4621212121212121000, 0.4659090909090908800, 0.4696969696969697200, 0.4734848484848485100, 0.4772727272727272900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#4543 = LINE ( 'NONE', #18063, #4090 ) ; +#4544 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.8003472222222167700 ) ) ; +#4545 = LINE ( 'NONE', #11296, #2247 ) ; +#4546 = CARTESIAN_POINT ( 'NONE', ( -0.04710524684730307800, -0.4663771630552402400, 1.484375000000000200 ) ) ; +#4547 = ORIENTED_EDGE ( 'NONE', *, *, #12789, .F. ) ; +#4548 = AXIS2_PLACEMENT_3D ( 'NONE', #16392, #17871, #237 ) ; +#4549 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4550 = CARTESIAN_POINT ( 'NONE', ( -0.1159461186146524700, 0.2869320762825740000, 0.1721345235436619900 ) ) ; +#4551 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.9062499999999952300 ) ) ; +#4552 = CARTESIAN_POINT ( 'NONE', ( 0.4548654901190608600, 0.07503707624389872900, 1.589564174286821800 ) ) ; +#4553 = AXIS2_PLACEMENT_3D ( 'NONE', #4731, #11957, #6218 ) ; +#4554 = ORIENTED_EDGE ( 'NONE', *, *, #16718, .T. ) ; +#4555 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.4652777777777699600 ) ) ; +#4556 = ADVANCED_FACE ( 'NONE', ( #11250 ), #9393, .T. ) ; +#4557 = VERTEX_POINT ( 'NONE', #15651 ) ; +#4558 = ORIENTED_EDGE ( 'NONE', *, *, #14392, .F. ) ; +#4559 = EDGE_LOOP ( 'NONE', ( #9334, #10117, #18258, #600 ) ) ; +#4560 = CIRCLE ( 'NONE', #5609, 0.4687475818742577500 ) ; +#4561 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.3802083333333246600 ) ) ; +#4562 = VECTOR ( 'NONE', #3200, 39.37007874015748100 ) ; +#4563 = FACE_OUTER_BOUND ( 'NONE', #9900, .T. ) ; +#4564 = ORIENTED_EDGE ( 'NONE', *, *, #2559, .T. ) ; +#4565 = DIRECTION ( 'NONE', ( -0.9430338398216121500, -0.3326968243781501200, 0.0000000000000000000 ) ) ; +#4566 = FACE_OUTER_BOUND ( 'NONE', #11706, .T. ) ; +#4567 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.2187499999999898400 ) ) ; +#4568 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.1423611111111001700 ) ) ; +#4569 = CARTESIAN_POINT ( 'NONE', ( -9.184477552091034100E-017, 1.831498714844090100E-016, 3.802149639073266300 ) ) ; +#4570 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.04513888888890130900 ) ) ; +#4571 = CARTESIAN_POINT ( 'NONE', ( 0.2163499824481096300, -0.1975305400402670400, 0.1279028096740863500 ) ) ; +#4572 = ADVANCED_FACE ( 'NONE', ( #13767 ), #5216, .F. ) ; +#4573 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.5503472222222147700 ) ) ; +#4574 = EDGE_CURVE ( 'NONE', #546, #15388, #2935, .T. ) ; +#4575 = CARTESIAN_POINT ( 'NONE', ( 0.01530074392670666700, 0.2759918036435183900, 0.08286399342893259500 ) ) ; +#4576 = CARTESIAN_POINT ( 'NONE', ( 2.037561028606410900E-016, -1.819708359927997900E-016, -1.174024639073372000 ) ) ; +#4577 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.305555555555554000 ) ) ; +#4578 = EDGE_LOOP ( 'NONE', ( #13651, #18616, #11128, #13581 ) ) ; +#4579 = EDGE_LOOP ( 'NONE', ( #12661, #18150, #16603, #14988, #10394, #9765 ) ) ; +#4580 = AXIS2_PLACEMENT_3D ( 'NONE', #17458, #5594, #11657 ) ; +#4581 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.423611111111110900 ) ) ; +#4582 = EDGE_LOOP ( 'NONE', ( #18631, #18399, #667, #17012, #8479, #13376 ) ) ; +#4583 = EDGE_LOOP ( 'NONE', ( #4310, #2134, #5336, #17121 ) ) ; +#4584 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.2187499999999901700 ) ) ; +#4585 = LINE ( 'NONE', #8490, #17952 ) ; +#4586 = CIRCLE ( 'NONE', #4192, 0.4687475818742552500 ) ; +#4587 = VERTEX_POINT ( 'NONE', #15709 ) ; +#4588 = VERTEX_POINT ( 'NONE', #18751 ) ; +#4589 = CARTESIAN_POINT ( 'NONE', ( -0.2325949221157545500, 0.1994011291611308400, 0.1634050931788176300 ) ) ; +#4590 = VECTOR ( 'NONE', #2764, 39.37007874015748100 ) ; +#4591 = ORIENTED_EDGE ( 'NONE', *, *, #4796, .F. ) ; +#4592 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.5590277777777703500 ) ) ; +#4593 = AXIS2_PLACEMENT_3D ( 'NONE', #12475, #15286, #18136 ) ; +#4594 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#4595 = ORIENTED_EDGE ( 'NONE', *, *, #7723, .T. ) ; +#4596 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.7135416666666606300 ) ) ; +#4597 = CARTESIAN_POINT ( 'NONE', ( 0.4684122207840629700, -0.01772813958390978900, 1.143750000000000000 ) ) ; +#4598 = ORIENTED_EDGE ( 'NONE', *, *, #8764, .T. ) ; +#4599 = FACE_OUTER_BOUND ( 'NONE', #3775, .T. ) ; +#4600 = CIRCLE ( 'NONE', #13075, 0.4687499999999995600 ) ; +#4601 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.9097222222222175500 ) ) ; +#4602 = DIRECTION ( 'NONE', ( -0.4030255384283083500, 0.9151887321064284800, 0.0000000000000000000 ) ) ; +#4603 = ORIENTED_EDGE ( 'NONE', *, *, #3185, .T. ) ; +#4604 = ORIENTED_EDGE ( 'NONE', *, *, #10505, .T. ) ; +#4605 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.8194444444444394200 ) ) ; +#4606 = EDGE_CURVE ( 'NONE', #11548, #2265, #16287, .T. ) ; +#4607 = LINE ( 'NONE', #16647, #16588 ) ; +#4608 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.340277777777777000 ) ) ; +#4609 = CARTESIAN_POINT ( 'NONE', ( 0.3893757946457698800, 0.2609847755022789400, 1.143750000000000000 ) ) ; +#4610 = CARTESIAN_POINT ( 'NONE', ( 0.08281349060214691900, -0.2408627435031303100, 1.252549403184164400 ) ) ; +#4611 = VERTEX_POINT ( 'NONE', #17151 ) ; +#4612 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.7170138888888828400 ) ) ; +#4613 = EDGE_CURVE ( 'NONE', #6761, #1319, #632, .T. ) ; +#4614 = DIRECTION ( 'NONE', ( 0.7116271114718204500, 0.7025573672080262000, -0.0000000000000000000 ) ) ; +#4615 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.6423611111111045000 ) ) ; +#4616 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -3.585550491684345600E-016, 1.827040330732674400 ) ) ; +#4617 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.9270833333333287100 ) ) ; +#4618 = AXIS2_PLACEMENT_3D ( 'NONE', #693, #14380, #3971 ) ; +#4619 = PLANE ( 'NONE', #4999 ) ; +#4620 = ORIENTED_EDGE ( 'NONE', *, *, #10836, .F. ) ; +#4621 = ORIENTED_EDGE ( 'NONE', *, *, #4774, .T. ) ; +#4622 = CIRCLE ( 'NONE', #14901, 0.4687475818742581300 ) ; +#4623 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.3159722222222132700 ) ) ; +#4624 = ORIENTED_EDGE ( 'NONE', *, *, #7312, .T. ) ; +#4625 = ORIENTED_EDGE ( 'NONE', *, *, #11853, .T. ) ; +#4626 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.2309027777777680200 ) ) ; +#4627 = ORIENTED_EDGE ( 'NONE', *, *, #3048, .F. ) ; +#4628 = ORIENTED_EDGE ( 'NONE', *, *, #1085, .T. ) ; +#4629 = CARTESIAN_POINT ( 'NONE', ( 0.1803732187963073800, -0.4242625117230433600, 1.591590229135180700 ) ) ; +#4630 = VERTEX_POINT ( 'NONE', #6713 ) ; +#4631 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.1944444444444340700 ) ) ; +#4632 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.09722222222221088600 ) ) ; +#4633 = CARTESIAN_POINT ( 'NONE', ( 0.07076663771007170300, -0.2818258951479170600, 0.1213423933473295200 ) ) ; +#4634 = CIRCLE ( 'NONE', #4054, 0.4687475818742621900 ) ; +#4635 = EDGE_CURVE ( 'NONE', #4849, #4230, #4082, .T. ) ; +#4636 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.4982638888888811200 ) ) ; +#4637 = ORIENTED_EDGE ( 'NONE', *, *, #8001, .F. ) ; +#4638 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.1562499999999896500 ) ) ; +#4639 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.114583333333330400 ) ) ; +#4640 = EDGE_CURVE ( 'NONE', #7908, #11322, #8248, .T. ) ; +#4641 = AXIS2_PLACEMENT_3D ( 'NONE', #14561, #14358, #8698 ) ; +#4642 = AXIS2_PLACEMENT_3D ( 'NONE', #15582, #8327, #14236 ) ; +#4643 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.076388888888885500 ) ) ; +#4644 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.239583333333331700 ) ) ; +#4645 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.1840277777777676900 ) ) ; +#4646 = EDGE_LOOP ( 'NONE', ( #15180, #6926, #13144, #7820, #15287, #7827 ) ) ; +#4647 = ORIENTED_EDGE ( 'NONE', *, *, #2606, .F. ) ; +#4648 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.6041666666666594100 ) ) ; +#4649 = CARTESIAN_POINT ( 'NONE', ( 0.3144999999999991100, -3.970701910016187400E-016, 0.1874999999999998300 ) ) ; +#4650 = ORIENTED_EDGE ( 'NONE', *, *, #16379, .F. ) ; +#4651 = ADVANCED_FACE ( 'NONE', ( #5238 ), #1099, .T. ) ; +#4652 = VECTOR ( 'NONE', #3631, 39.37007874015748900 ) ; +#4653 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -1.458333333333333000 ) ) ; +#4654 = EDGE_LOOP ( 'NONE', ( #15894, #10777, #16752, #8988 ) ) ; +#4655 = CARTESIAN_POINT ( 'NONE', ( -0.01171875000000001400, -0.4686034927296605600, 1.587227003692501100 ) ) ; +#4656 = ORIENTED_EDGE ( 'NONE', *, *, #3562, .F. ) ; +#4657 = CARTESIAN_POINT ( 'NONE', ( -0.08311015428937838800, 0.2637779369508559400, 0.08286399342893267800 ) ) ; +#4658 = EDGE_CURVE ( 'NONE', #3160, #7905, #8198, .T. ) ; +#4659 = CARTESIAN_POINT ( 'NONE', ( -0.4418741004648784100, 0.1314551491986550900, 1.590985962198545200 ) ) ; +#4660 = EDGE_CURVE ( 'NONE', #528, #13232, #2020, .T. ) ; +#4661 = CARTESIAN_POINT ( 'NONE', ( -0.4347510546871054000, -0.1533776299234526100, 1.440511179676384800 ) ) ; +#4662 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#4663 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.8437499999999952300 ) ) ; +#4664 = EDGE_CURVE ( 'NONE', #11817, #4161, #7316, .T. ) ; +#4665 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.9618055555555514700 ) ) ; +#4666 = VERTEX_POINT ( 'NONE', #3732 ) ; +#4667 = ADVANCED_FACE ( 'NONE', ( #4993 ), #2432, .F. ) ; +#4668 = CARTESIAN_POINT ( 'NONE', ( 0.3624522803384100900, 0.2848886122504243900, 1.143750000000000000 ) ) ; +#4669 =( GEOMETRIC_REPRESENTATION_CONTEXT ( 3 ) GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT ( ( #9434 ) ) GLOBAL_UNIT_ASSIGNED_CONTEXT ( ( #14267, #5859, #1573 ) ) REPRESENTATION_CONTEXT ( 'NONE', 'WORKASPACE' ) ); +#4670 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4671 = CIRCLE ( 'NONE', #15635, 0.4610132068742565100 ) ; +#4672 = DIRECTION ( 'NONE', ( 0.1729787697315212100, -0.01523268949379536500, 0.9848077530122083500 ) ) ; +#4673 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.4895833333333254300 ) ) ; +#4674 = CARTESIAN_POINT ( 'NONE', ( 0.1674842983648652800, -0.1919780298488217300, 1.252150695770648700 ) ) ; +#4675 = ORIENTED_EDGE ( 'NONE', *, *, #5905, .F. ) ; +#4676 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.7065972222222159900 ) ) ; +#4677 = CARTESIAN_POINT ( 'NONE', ( 0.3477592364557848300, -0.3026494512999744500, 1.593375490995827300 ) ) ; +#4678 = ORIENTED_EDGE ( 'NONE', *, *, #13294, .T. ) ; +#4679 = CARTESIAN_POINT ( 'NONE', ( -0.4505462270817880400, 0.09767944602039871400, 1.187613820323599700 ) ) ; +#4680 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#4681 = CARTESIAN_POINT ( 'NONE', ( -0.1057194217318004200, 0.2575263881719744900, 0.08781809291627913600 ) ) ; +#4682 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.8055555555555499200 ) ) ; +#4683 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, 1.250000000000000000 ) ) ; +#4684 = CIRCLE ( 'NONE', #15383, 0.4687475818742580200 ) ; +#4685 = ORIENTED_EDGE ( 'NONE', *, *, #301, .F. ) ; +#4686 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.1423611111111007200 ) ) ; +#4687 = ORIENTED_EDGE ( 'NONE', *, *, #1433, .T. ) ; +#4688 = EDGE_CURVE ( 'NONE', #14120, #2364, #7544, .T. ) ; +#4689 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.8680555555555505800 ) ) ; +#4690 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.3559027777777689600 ) ) ; +#4691 = ORIENTED_EDGE ( 'NONE', *, *, #3008, .T. ) ; +#4692 = AXIS2_PLACEMENT_3D ( 'NONE', #17365, #14725, #1599 ) ; +#4693 = ORIENTED_EDGE ( 'NONE', *, *, #13558, .F. ) ; +#4694 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.3020833333333238200 ) ) ; +#4695 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4696 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, 0.1631944444444576900 ) ) ; +#4697 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4698 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.1805555555555689000 ) ) ; +#4699 = PLANE ( 'NONE', #7811 ) ; +#4700 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.5850694444444372000 ) ) ; +#4701 = PLANE ( 'NONE', #18587 ) ; +#4702 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.1597222222222116400 ) ) ; +#4703 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.7395833333333272600 ) ) ; +#4704 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#4705 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.121527777777774600 ) ) ; +#4706 = CARTESIAN_POINT ( 'NONE', ( 1.819567776587655000E-016, -9.418635399717167900E-017, 3.802149639073309800 ) ) ; +#4707 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4708 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.270833333333331900 ) ) ; +#4709 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.003472222222210821900 ) ) ; +#4710 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#4711 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.5937499999999928900 ) ) ; +#4712 = EDGE_CURVE ( 'NONE', #12164, #13527, #12633, .T. ) ; +#4713 = CARTESIAN_POINT ( 'NONE', ( -2.122829072685605500E-016, 1.098840796633654000E-016, 3.802149639073283600 ) ) ; +#4714 = FACE_OUTER_BOUND ( 'NONE', #6729, .T. ) ; +#4715 = DIRECTION ( 'NONE', ( 0.9961450333403966100, -0.08772156263576201500, -0.0000000000000000000 ) ) ; +#4716 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4717 = CARTESIAN_POINT ( 'NONE', ( 0.1335598658823848000, -0.2572997615157197600, -1.543630029802595100 ) ) ; +#4718 = CARTESIAN_POINT ( 'NONE', ( -0.1257767296168636200, 0.4435238338571811400, 1.590308733529502500 ) ) ; +#4719 = FACE_OUTER_BOUND ( 'NONE', #1227, .T. ) ; +#4720 = VERTEX_POINT ( 'NONE', #12803 ) ; +#4721 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995600, -0.02437472596252705100, 1.525850221280107700 ) ) ; +#4722 = DIRECTION ( 'NONE', ( 1.000000000000000000, 8.881784197001252300E-016, 0.0000000000000000000 ) ) ; +#4723 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.9618055555555514700 ) ) ; +#4724 = AXIS2_PLACEMENT_3D ( 'NONE', #10978, #490, #18328 ) ; +#4725 = CIRCLE ( 'NONE', #16541, 0.4687499999999995600 ) ; +#4726 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.027777777777774300 ) ) ; +#4727 = ORIENTED_EDGE ( 'NONE', *, *, #6755, .T. ) ; +#4728 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4729 = FACE_OUTER_BOUND ( 'NONE', #3661, .T. ) ; +#4730 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#4731 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#4732 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.366319444444443500 ) ) ; +#4733 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323601700 ) ) ; +#4734 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.8315972222222172100 ) ) ; +#4735 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.8715277777777729100 ) ) ; +#4736 = CARTESIAN_POINT ( 'NONE', ( 0.2360206732261777000, -0.4049948201025063100, 1.592561465728329600 ) ) ; +#4737 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.8159722222222167700 ) ) ; +#4738 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4739 = ORIENTED_EDGE ( 'NONE', *, *, #301, .T. ) ; +#4740 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.1284722222222118300 ) ) ; +#4741 = ADVANCED_FACE ( 'NONE', ( #15815 ), #413, .T. ) ; +#4742 = LINE ( 'NONE', #17017, #15796 ) ; +#4743 = EDGE_CURVE ( 'NONE', #6905, #14335, #8708, .T. ) ; +#4744 = VERTEX_POINT ( 'NONE', #835 ) ; +#4746 = EDGE_CURVE ( 'NONE', #6237, #11460, #16055, .T. ) ; +#4745 = VECTOR ( 'NONE', #13455, 39.37007874015748100 ) ; +#4747 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.3767361111111023900 ) ) ; +#4748 = AXIS2_PLACEMENT_3D ( 'NONE', #14707, #13109, #8665 ) ; +#4749 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.07638888888890142700 ) ) ; +#4750 = EDGE_LOOP ( 'NONE', ( #4214, #925, #12609, #3468 ) ) ; +#4751 = DIRECTION ( 'NONE', ( 0.3912539079287067900, 0.9202827715058643500, 0.0000000000000000000 ) ) ; +#4752 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.2083333333333470000 ) ) ; +#4753 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4754 = FACE_OUTER_BOUND ( 'NONE', #9027, .T. ) ; +#4755 = ADVANCED_FACE ( 'NONE', ( #7789 ), #8365, .F. ) ; +#4756 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.4531249999999917800 ) ) ; +#4757 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.2222222222222121300 ) ) ; +#4758 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4759 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #10125, #13263, #75, #15959, #14810, #11602, #1678, #3290, #17904 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7196969696969697200, 0.7234848484848485100, 0.7272727272727272900, 0.7310606060606060800, 0.7348484848484848600 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#4760 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.9548611111111071600 ) ) ; +#4761 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#4762 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.246527777777775700 ) ) ; +#4763 = VECTOR ( 'NONE', #13917, 39.37007874015748100 ) ; +#4764 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4765 = FACE_OUTER_BOUND ( 'NONE', #8141, .T. ) ; +#4766 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.156249999999997600 ) ) ; +#4767 = VERTEX_POINT ( 'NONE', #12622 ) ; +#4768 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.374999999999999300 ) ) ; +#4769 = VERTEX_POINT ( 'NONE', #15689 ) ; +#4770 = CIRCLE ( 'NONE', #16199, 0.4687499999999995600 ) ; +#4771 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.1770833333333463300 ) ) ; +#4772 = EDGE_CURVE ( 'NONE', #8295, #18973, #2767, .T. ) ; +#4773 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.5416666666666589700 ) ) ; +#4774 = EDGE_CURVE ( 'NONE', #4203, #12956, #3398, .T. ) ; +#4775 = EDGE_CURVE ( 'NONE', #11135, #12179, #3379, .T. ) ; +#4776 = ORIENTED_EDGE ( 'NONE', *, *, #10938, .T. ) ; +#4777 = AXIS2_PLACEMENT_3D ( 'NONE', #13024, #5843, #16096 ) ; +#4778 = FACE_OUTER_BOUND ( 'NONE', #11285, .T. ) ; +#4779 = FACE_BOUND ( 'NONE', #10116, .T. ) ; +#4780 = CONICAL_SURFACE ( 'NONE', #16770, 0.4687475818742575800, 0.1745329251994334500 ) ; +#4781 = ORIENTED_EDGE ( 'NONE', *, *, #5737, .F. ) ; +#4782 = CARTESIAN_POINT ( 'NONE', ( -0.2154811238112795700, 0.4162837743582970000, 1.484375000000000200 ) ) ; +#4783 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.4965277777777701300 ) ) ; +#4784 = CIRCLE ( 'NONE', #8853, 0.4687475818742614100 ) ; +#4785 = VECTOR ( 'NONE', #3968, 39.37007874015748100 ) ; +#4786 = PLANE ( 'NONE', #10971 ) ; +#4787 = CARTESIAN_POINT ( 'NONE', ( 0.1034502481550414700, 0.4492562999771360100, 1.187613820323600600 ) ) ; +#4788 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.8368055555555505800 ) ) ; +#4789 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.9722222222222183200 ) ) ; +#4790 = ORIENTED_EDGE ( 'NONE', *, *, #19083, .T. ) ; +#4791 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4792 = ORIENTED_EDGE ( 'NONE', *, *, #1733, .T. ) ; +#4793 = CARTESIAN_POINT ( 'NONE', ( 0.4289947181748912700, -0.1889182211382636800, 1.143750000000000000 ) ) ; +#4794 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.276041666666665200 ) ) ; +#4795 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.413194444444444200 ) ) ; +#4796 = EDGE_CURVE ( 'NONE', #7256, #10034, #18137, .T. ) ; +#4797 = DIRECTION ( 'NONE', ( -0.9297764858882563400, 0.3681245526846654300, 0.0000000000000000000 ) ) ; +#4798 = EDGE_LOOP ( 'NONE', ( #16615, #14436, #17553, #1923 ) ) ; +#4799 = VERTEX_POINT ( 'NONE', #14748 ) ; +#4800 = FACE_OUTER_BOUND ( 'NONE', #2315, .T. ) ; +#4801 = DIRECTION ( 'NONE', ( 0.04737586595177463400, 0.1670605187719785800, 0.9848077530122094600 ) ) ; +#4802 = CIRCLE ( 'NONE', #7417, 0.4375000000000000600 ) ; +#4803 = DIRECTION ( 'NONE', ( 0.4257792915650768200, -0.9048270524660175800, 0.0000000000000000000 ) ) ; +#4804 = ORIENTED_EDGE ( 'NONE', *, *, #15986, .T. ) ; +#4805 = CARTESIAN_POINT ( 'NONE', ( -0.3070850166377885900, -0.3438487595863262100, 1.593467001493433100 ) ) ; +#4806 = ORIENTED_EDGE ( 'NONE', *, *, #6008, .F. ) ; +#4807 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.4357638888888806800 ) ) ; +#4808 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.6562499999999931200 ) ) ; +#4809 = CARTESIAN_POINT ( 'NONE', ( -0.2780116527052536900, -0.1395134180916199900, 0.1766068792230361100 ) ) ; +#4810 = VECTOR ( 'NONE', #9578, 39.37007874015748100 ) ; +#4811 = AXIS2_PLACEMENT_3D ( 'NONE', #17126, #8300, #2428 ) ; +#4812 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.1458333333333230200 ) ) ; +#4813 = DIRECTION ( 'NONE', ( 0.6661089358369404200, 0.7458544667682689400, 0.0000000000000000000 ) ) ; +#4814 = VERTEX_POINT ( 'NONE', #5900 ) ; +#4815 = VERTEX_POINT ( 'NONE', #14675 ) ; +#4816 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.3315972222222132200 ) ) ; +#4817 = ORIENTED_EDGE ( 'NONE', *, *, #14877, .F. ) ; +#4818 = VECTOR ( 'NONE', #9146, 39.37007874015748900 ) ; +#4819 = EDGE_LOOP ( 'NONE', ( #18675, #5305, #7065, #428 ) ) ; +#4820 = VERTEX_POINT ( 'NONE', #13146 ) ; +#4821 = LINE ( 'NONE', #13684, #14060 ) ; +#4822 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.1319444444444576000 ) ) ; +#4823 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#4824 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.5763888888888816200 ) ) ; +#4825 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.6579861111111045000 ) ) ; +#4826 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.2326388888888790100 ) ) ; +#4827 = EDGE_CURVE ( 'NONE', #138, #2552, #14442, .T. ) ; +#4828 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4829 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.236111111111108900 ) ) ; +#4830 = CARTESIAN_POINT ( 'NONE', ( 0.08251570163513420600, -0.2410346720433967600, 1.528000917050756500 ) ) ; +#4831 = AXIS2_PLACEMENT_3D ( 'NONE', #12108, #4753, #9339 ) ; +#4832 = CARTESIAN_POINT ( 'NONE', ( 0.2958319850298574700, 6.101305999854492000E-013, 0.1362100504034947900 ) ) ; +#4833 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.065972222222219200 ) ) ; +#4834 = VERTEX_POINT ( 'NONE', #8777 ) ; +#4835 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, 0.03819444444445617400 ) ) ; +#4836 = PLANE ( 'NONE', #7450 ) ; +#4837 = ORIENTED_EDGE ( 'NONE', *, *, #8827, .T. ) ; +#4838 = VERTEX_POINT ( 'NONE', #18945 ) ; +#4839 = CIRCLE ( 'NONE', #13592, 0.4687499999999996100 ) ; +#4840 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.4131944444444357600 ) ) ; +#4841 = ORIENTED_EDGE ( 'NONE', *, *, #983, .F. ) ; +#4842 = ORIENTED_EDGE ( 'NONE', *, *, #9925, .F. ) ; +#4843 = AXIS2_PLACEMENT_3D ( 'NONE', #14328, #13233, #14378 ) ; +#4844 = ADVANCED_FACE ( 'NONE', ( #2007 ), #11849, .F. ) ; +#4845 = DIRECTION ( 'NONE', ( -0.3090169943749582200, 0.9510565162951500900, 0.0000000000000000000 ) ) ; +#4846 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.4861111111111032800 ) ) ; +#4847 = CARTESIAN_POINT ( 'NONE', ( 0.1278875336514661600, 0.4509671176888007100, 1.143750000000000000 ) ) ; +#4848 = ORIENTED_EDGE ( 'NONE', *, *, #15907, .T. ) ; +#4849 = VERTEX_POINT ( 'NONE', #17646 ) ; +#4850 = DIRECTION ( 'NONE', ( -0.1552240656481611900, 0.07784072873953147600, 0.9848077530122080200 ) ) ; +#4851 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.6249999999999932300 ) ) ; +#4852 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.6701388888888828400 ) ) ; +#4853 = EDGE_CURVE ( 'NONE', #8354, #295, #4759, .T. ) ; +#4854 = ORIENTED_EDGE ( 'NONE', *, *, #11065, .F. ) ; +#4855 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.124999999999997300 ) ) ; +#4856 = CIRCLE ( 'NONE', #9255, 0.4687475818742554100 ) ; +#4857 = ADVANCED_FACE ( 'NONE', ( #3170 ), #16547, .F. ) ; +#4858 = ORIENTED_EDGE ( 'NONE', *, *, #13678, .F. ) ; +#4859 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.593375490995827300 ) ) ; +#4860 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#4861 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.397569444444444200 ) ) ; +#4862 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.423611111111110700 ) ) ; +#4863 = CARTESIAN_POINT ( 'NONE', ( -0.2418612310230342500, -0.1830411534796596600, -1.530386039576668200 ) ) ; +#4864 = EDGE_CURVE ( 'NONE', #14320, #9728, #13538, .T. ) ; +#4865 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4866 = CARTESIAN_POINT ( 'NONE', ( -9.088771521759393300E-017, 2.576225103274171400E-016, 3.802149639073329400 ) ) ; +#4867 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4868 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.6770833333333267100 ) ) ; +#4869 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#4870 = ORIENTED_EDGE ( 'NONE', *, *, #5771, .T. ) ; +#4871 = ORIENTED_EDGE ( 'NONE', *, *, #12039, .T. ) ; +#4872 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.1527777777777673300 ) ) ; +#4873 = ORIENTED_EDGE ( 'NONE', *, *, #10887, .T. ) ; +#4874 = LINE ( 'NONE', #5991, #13412 ) ; +#4875 = ORIENTED_EDGE ( 'NONE', *, *, #4613, .T. ) ; +#4876 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.1406249999999894300 ) ) ; +#4877 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.9861111111111072700 ) ) ; +#4878 = EDGE_CURVE ( 'NONE', #12462, #14956, #6373, .T. ) ; +#4879 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.1805555555555689000 ) ) ; +#4880 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#4881 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4882 = VERTEX_POINT ( 'NONE', #7482 ) ; +#4883 = EDGE_CURVE ( 'NONE', #14830, #4744, #18592, .T. ) ; +#4884 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.3454861111111021700 ) ) ; +#4885 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4886 = CARTESIAN_POINT ( 'NONE', ( 0.1257767296168573200, 0.4435238338571829100, 1.590308733529502500 ) ) ; +#4887 = CARTESIAN_POINT ( 'NONE', ( 0.4606833792705951100, -0.01743562377178318300, 1.187613820323614800 ) ) ; +#4888 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -3.585550491684345600E-016, 0.1963163490354230300 ) ) ; +#4889 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.048611111111107400 ) ) ; +#4890 = VERTEX_POINT ( 'NONE', #12049 ) ; +#4891 = EDGE_CURVE ( 'NONE', #9742, #2301, #8225, .T. ) ; +#4892 = CARTESIAN_POINT ( 'NONE', ( 0.3535953843793208100, 0.3077285600096943400, 1.143750000000000000 ) ) ; +#4893 = CONICAL_SURFACE ( 'NONE', #9831, 0.3144999999999991100, 0.3490658503988666700 ) ; +#4894 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.086805555555552900 ) ) ; +#4895 = EDGE_LOOP ( 'NONE', ( #16624, #439, #6652, #7193 ) ) ; +#4896 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #17307, #14713, #4229, #8740, #4354, #18982, #4475, #1515, #3011 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3257575757575758000, 0.3295454545454545900, 0.3333333333333333700, 0.3371212121212121500, 0.3409090909090909400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#4897 = AXIS2_PLACEMENT_3D ( 'NONE', #15545, #10999, #6739 ) ; +#4898 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.03819444444443322000 ) ) ; +#4899 = ORIENTED_EDGE ( 'NONE', *, *, #16920, .T. ) ; +#4900 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.5416666666666591900 ) ) ; +#4901 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.3055555555555458700 ) ) ; +#4902 = DIRECTION ( 'NONE', ( -0.6661089358369458600, -0.7458544667682640600, 0.0000000000000000000 ) ) ; +#4903 = PLANE ( 'NONE', #10237 ) ; +#4904 = ORIENTED_EDGE ( 'NONE', *, *, #8930, .F. ) ; +#4905 = ORIENTED_EDGE ( 'NONE', *, *, #15538, .T. ) ; +#4906 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.7881944444444387600 ) ) ; +#4907 = CARTESIAN_POINT ( 'NONE', ( -0.3144999999999991100, -3.585550491684345600E-016, 0.1874999999999998300 ) ) ; +#4908 = ORIENTED_EDGE ( 'NONE', *, *, #17612, .F. ) ; +#4909 = EDGE_CURVE ( 'NONE', #13998, #15511, #14204, .T. ) ; +#4910 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#4911 = PLANE ( 'NONE', #9011 ) ; +#4912 = AXIS2_PLACEMENT_3D ( 'NONE', #11826, #7649, #7710 ) ; +#4913 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999994700, -0.04860932432761063500, 1.527944350456949700 ) ) ; +#4914 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.6631944444444382000 ) ) ; +#4916 = EDGE_CURVE ( 'NONE', #4890, #11841, #11002, .T. ) ; +#4915 = FACE_OUTER_BOUND ( 'NONE', #9022, .T. ) ; +#4917 = AXIS2_PLACEMENT_3D ( 'NONE', #471, #1945, #3608 ) ; +#4918 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.9965277777777741300 ) ) ; +#4919 = ORIENTED_EDGE ( 'NONE', *, *, #15765, .F. ) ; +#4920 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.593193105402742800 ) ) ; +#4921 = AXIS2_PLACEMENT_3D ( 'NONE', #7181, #11416, #1243 ) ; +#4922 = ORIENTED_EDGE ( 'NONE', *, *, #16345, .T. ) ; +#4923 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.355902777777777000 ) ) ; +#4924 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.437499999999999600 ) ) ; +#4925 = CARTESIAN_POINT ( 'NONE', ( -0.2017297354276852700, -0.2279403051890743200, -1.529312884862785900 ) ) ; +#4926 = FACE_OUTER_BOUND ( 'NONE', #5315, .T. ) ; +#4927 = CARTESIAN_POINT ( 'NONE', ( -0.4624991113355804700, -0.07629635976767085200, 1.589564174286821800 ) ) ; +#4928 = CARTESIAN_POINT ( 'NONE', ( -0.1460657352116105100, 0.2043440430510083900, 1.526364414749281900 ) ) ; +#4929 = ORIENTED_EDGE ( 'NONE', *, *, #18353, .T. ) ; +#4930 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.7673611111111051700 ) ) ; +#4931 = CARTESIAN_POINT ( 'NONE', ( -0.4548654901190614100, -0.07503707624389545400, 1.143750000000000000 ) ) ; +#4932 = CIRCLE ( 'NONE', #3399, 0.4687499999999995600 ) ; +#4933 = ADVANCED_FACE ( 'NONE', ( #13750 ), #13473, .F. ) ; +#4934 = EDGE_CURVE ( 'NONE', #11528, #17343, #5660, .T. ) ; +#4935 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.1163194444444336400 ) ) ; +#4936 = CARTESIAN_POINT ( 'NONE', ( -0.1616086329535814100, 0.4400104683469180400, 1.484375000000000200 ) ) ; +#4937 = CARTESIAN_POINT ( 'NONE', ( 0.1506589801445135100, 0.2476433360830562200, 0.1194028804894137200 ) ) ; +#4938 = FACE_OUTER_BOUND ( 'NONE', #8090, .T. ) ; +#4939 = ORIENTED_EDGE ( 'NONE', *, *, #9564, .T. ) ; +#4940 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, 0.1423611111111242300 ) ) ; +#4941 = FACE_BOUND ( 'NONE', #41, .T. ) ; +#4942 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.588758826628429600 ) ) ; +#4943 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#4944 = ADVANCED_FACE ( 'NONE', ( #7768 ), #10637, .F. ) ; +#4945 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.2378472222222123300 ) ) ; +#4946 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323604600 ) ) ; +#4947 = CARTESIAN_POINT ( 'NONE', ( -0.01171868954685638100, 0.4686010753596986400, 1.484375000000000200 ) ) ; +#4948 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.8888888888888839500 ) ) ; +#4949 = LINE ( 'NONE', #10119, #7499 ) ; +#4950 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#4951 = ADVANCED_FACE ( 'NONE', ( #11229 ), #7303, .T. ) ; +#4952 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#4953 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.118055555555552900 ) ) ; +#4954 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.1076388888889012900 ) ) ; +#4955 = LINE ( 'NONE', #16388, #14184 ) ; +#4956 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.3437499999999909000 ) ) ; +#4957 = VERTEX_POINT ( 'NONE', #16282 ) ; +#4958 = EDGE_CURVE ( 'NONE', #12164, #8694, #1774, .T. ) ; +#4959 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 0.02438709000970372400, 1.525850221280107900 ) ) ; +#4960 = FACE_OUTER_BOUND ( 'NONE', #7913, .T. ) ; +#4961 = CARTESIAN_POINT ( 'NONE', ( 0.2708333333333339300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#4962 = ORIENTED_EDGE ( 'NONE', *, *, #4213, .T. ) ; +#4963 = LINE ( 'NONE', #2666, #16033 ) ; +#4964 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.6979166666666600800 ) ) ; +#4965 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 0.1443375672974061300, -1.562539370078740200 ) ) ; +#4966 = CARTESIAN_POINT ( 'NONE', ( 0.4624967254561009300, -0.07629596618005592100, 1.484375000000000200 ) ) ; +#4967 = CARTESIAN_POINT ( 'NONE', ( -1.130052755820794300E-018, 2.985821035825957300E-017, -1.174024639073280000 ) ) ; +#4968 = EDGE_CURVE ( 'NONE', #15445, #7338, #6834, .T. ) ; +#4969 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#4970 = DIRECTION ( 'NONE', ( 0.1488963146160739700, -0.08935086513736366400, -0.9848077530122089100 ) ) ; +#4971 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.6041666666666597500 ) ) ; +#4972 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.6111111111111043900 ) ) ; +#4973 = AXIS2_PLACEMENT_3D ( 'NONE', #8401, #6797, #15853 ) ; +#4974 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.7152777777777719100 ) ) ; +#4975 = VECTOR ( 'NONE', #1088, 39.37007874015748900 ) ; +#4976 = CARTESIAN_POINT ( 'NONE', ( 0.2119256669269744300, -0.4094150566479489200, 1.592561465728329600 ) ) ; +#4977 = CIRCLE ( 'NONE', #15049, 0.4687499999999996100 ) ; +#4978 = CONICAL_SURFACE ( 'NONE', #11155, 0.3144999999999991100, 0.3490658503988666700 ) ; +#4979 = ORIENTED_EDGE ( 'NONE', *, *, #2943, .F. ) ; +#4980 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.428819444444444000 ) ) ; +#4981 = ORIENTED_EDGE ( 'NONE', *, *, #1113, .T. ) ; +#4982 = CARTESIAN_POINT ( 'NONE', ( -0.1406703560431462300, -0.2715023471935301100, -1.527927867266046300 ) ) ; +#4983 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#4984 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.444444444444444200 ) ) ; +#4985 = CARTESIAN_POINT ( 'NONE', ( 0.3070850166377861500, 0.3438487595863285500, 1.187613820323601300 ) ) ; +#4986 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.9097222222222177700 ) ) ; +#4987 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #11452, #4044, #16133, #8813, #2824, #1341 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 1.609511179979107400E-016, 0.002758742032787597500, 0.005517484065575034600 ), + .UNSPECIFIED. ) ; +#4988 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.5173611111111032800 ) ) ; +#4989 = CARTESIAN_POINT ( 'NONE', ( -0.1257767296168636200, 0.4435238338571811400, 1.590308733529502500 ) ) ; +#4990 = VERTEX_POINT ( 'NONE', #6051 ) ; +#4991 = EDGE_CURVE ( 'NONE', #15731, #12851, #9157, .T. ) ; +#4992 = EDGE_CURVE ( 'NONE', #2578, #1321, #5214, .T. ) ; +#4993 = FACE_OUTER_BOUND ( 'NONE', #5545, .T. ) ; +#4994 = AXIS2_PLACEMENT_3D ( 'NONE', #14670, #16553, #16625 ) ; +#4995 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.1996527777777676300 ) ) ; +#4996 = LINE ( 'NONE', #7999, #1100 ) ; +#4997 = CIRCLE ( 'NONE', #985, 0.3144999999999991100 ) ; +#4998 = ORIENTED_EDGE ( 'NONE', *, *, #8734, .F. ) ; +#4999 = AXIS2_PLACEMENT_3D ( 'NONE', #4552, #9079, #17633 ) ; +#5000 = LINE ( 'NONE', #5733, #10562 ) ; +#5001 = CONICAL_SURFACE ( 'NONE', #18208, 0.4610132068742565100, 0.1745329251994309800 ) ; +#5002 = ORIENTED_EDGE ( 'NONE', *, *, #2178, .T. ) ; +#5003 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.8229166666666614100 ) ) ; +#5004 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.578125000000000900 ) ) ; +#5005 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.180555555555553100 ) ) ; +#5006 = CARTESIAN_POINT ( 'NONE', ( -5.138489171004225700E-018, 0.2886751345948123700, 1.272329099369260400 ) ) ; +#5007 = ORIENTED_EDGE ( 'NONE', *, *, #14620, .T. ) ; +#5008 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.4288194444444359800 ) ) ; +#5009 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5010 = DIRECTION ( 'NONE', ( 1.000000000000000000, 3.819167204710538500E-014, 0.0000000000000000000 ) ) ; +#5011 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.8645833333333281500 ) ) ; +#5012 = VERTEX_POINT ( 'NONE', #135 ) ; +#5013 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#5014 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.5416666666666591900 ) ) ; +#5015 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.072916666666663600 ) ) ; +#5016 = ORIENTED_EDGE ( 'NONE', *, *, #13650, .F. ) ; +#5017 = ORIENTED_EDGE ( 'NONE', *, *, #6277, .T. ) ; +#5018 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.1944444444444575500 ) ) ; +#5019 = LINE ( 'NONE', #2683, #2262 ) ; +#5020 = FACE_BOUND ( 'NONE', #8230, .T. ) ; +#5021 = FACE_OUTER_BOUND ( 'NONE', #6509, .T. ) ; +#5022 = VERTEX_POINT ( 'NONE', #14866 ) ; +#5023 = EDGE_CURVE ( 'NONE', #12697, #3666, #12611, .T. ) ; +#5024 = CARTESIAN_POINT ( 'NONE', ( 0.3624522803384160900, -0.2848886122504168400, 1.593375490995827300 ) ) ; +#5025 = VECTOR ( 'NONE', #10681, 39.37007874015748100 ) ; +#5026 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.4166666666666579700 ) ) ; +#5027 = EDGE_CURVE ( 'NONE', #3055, #14120, #11673, .T. ) ; +#5028 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 0.1210017406316850300, 1.541442847745759100 ) ) ; +#5029 = EDGE_CURVE ( 'NONE', #9836, #17727, #8692, .T. ) ; +#5030 = ADVANCED_FACE ( 'NONE', ( #15580 ), #856, .T. ) ; +#5031 = CARTESIAN_POINT ( 'NONE', ( -0.4347510546871065100, 0.1533776299234495300, 1.187613820323601700 ) ) ; +#5032 = AXIS2_PLACEMENT_3D ( 'NONE', #10597, #12133, #10979 ) ; +#5033 = ORIENTED_EDGE ( 'NONE', *, *, #13675, .T. ) ; +#5034 = EDGE_LOOP ( 'NONE', ( #12345, #3257, #17870, #11538 ) ) ; +#5035 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.6041666666666594100 ) ) ; +#5036 = VERTEX_POINT ( 'NONE', #13716 ) ; +#5037 = ORIENTED_EDGE ( 'NONE', *, *, #2441, .F. ) ; +#5038 = CIRCLE ( 'NONE', #9890, 0.4687499999999995000 ) ; +#5039 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 0.1443375672974061300, -1.562539370078740200 ) ) ; +#5040 = CARTESIAN_POINT ( 'NONE', ( 0.1589412568245264500, -0.4327480257511592800, 1.143750000000000000 ) ) ; +#5041 = ORIENTED_EDGE ( 'NONE', *, *, #8446, .T. ) ; +#5042 = ORIENTED_EDGE ( 'NONE', *, *, #6908, .F. ) ; +#5043 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.6215277777777712400 ) ) ; +#5044 = LINE ( 'NONE', #3933, #8052 ) ; +#5045 = ORIENTED_EDGE ( 'NONE', *, *, #14334, .F. ) ; +#5046 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.8576388888888840700 ) ) ; +#5047 = ADVANCED_FACE ( 'NONE', ( #12140 ), #2451, .T. ) ; +#5048 = ADVANCED_FACE ( 'NONE', ( #9830 ), #15310, .F. ) ; +#5049 = DIRECTION ( 'NONE', ( -0.8306683619109879200, 0.5567675210715112800, -0.0000000000000000000 ) ) ; +#5050 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.248263888888887100 ) ) ; +#5051 = PLANE ( 'NONE', #4216 ) ; +#5052 = EDGE_CURVE ( 'NONE', #16558, #1188, #14661, .T. ) ; +#5053 = ORIENTED_EDGE ( 'NONE', *, *, #15093, .T. ) ; +#5054 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -0.1443375672974062400, 1.272329099369260200 ) ) ; +#5055 = AXIS2_PLACEMENT_3D ( 'NONE', #10421, #13389, #9904 ) ; +#5056 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.1354166666666561400 ) ) ; +#5057 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.5694444444444369800 ) ) ; +#5058 = DIRECTION ( 'NONE', ( -0.03896623090933672200, 0.1692197460575013100, 0.9848077530122083500 ) ) ; +#5059 = ORIENTED_EDGE ( 'NONE', *, *, #9084, .T. ) ; +#5060 = VECTOR ( 'NONE', #13901, 39.37007874015748900 ) ; +#5061 = CONICAL_SURFACE ( 'NONE', #2584, 0.4687475818742575800, 0.1745329251994313400 ) ; +#5062 = VERTEX_POINT ( 'NONE', #13856 ) ; +#5063 = ORIENTED_EDGE ( 'NONE', *, *, #1228, .T. ) ; +#5064 = VECTOR ( 'NONE', #12381, 39.37007874015748900 ) ; +#5065 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.1232638888888782400 ) ) ; +#5066 = CARTESIAN_POINT ( 'NONE', ( -0.3118702630972887700, 0.02284915844472058100, 0.1803053086861909100 ) ) ; +#5067 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5068 = ORIENTED_EDGE ( 'NONE', *, *, #2881, .T. ) ; +#5069 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#5070 = ORIENTED_EDGE ( 'NONE', *, *, #13812, .F. ) ; +#5071 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.480902777777777700 ) ) ; +#5072 = ORIENTED_EDGE ( 'NONE', *, *, #4541, .F. ) ; +#5073 = CARTESIAN_POINT ( 'NONE', ( 0.4347510546871043400, 0.1533776299234556600, 1.143750000000000000 ) ) ; +#5074 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.6111111111111042800 ) ) ; +#5075 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5076 = FACE_OUTER_BOUND ( 'NONE', #4895, .T. ) ; +#5077 = ORIENTED_EDGE ( 'NONE', *, *, #7292, .F. ) ; +#5078 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.2517361111111012200 ) ) ; +#5079 = ORIENTED_EDGE ( 'NONE', *, *, #13274, .F. ) ; +#5080 = CARTESIAN_POINT ( 'NONE', ( 0.2154811238112738500, 0.4162837743583005500, 1.143750000000000000 ) ) ; +#5081 = EDGE_CURVE ( 'NONE', #17106, #8786, #402, .T. ) ; +#5082 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.590277777777778300 ) ) ; +#5083 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5084 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.9340277777777732400 ) ) ; +#5085 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.100694444444441800 ) ) ; +#5086 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.2118055555555687400 ) ) ; +#5087 = ORIENTED_EDGE ( 'NONE', *, *, #15735, .T. ) ; +#5088 = EDGE_CURVE ( 'NONE', #12156, #8792, #17663, .T. ) ; +#5089 = ORIENTED_EDGE ( 'NONE', *, *, #3533, .F. ) ; +#5090 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.4444444444444360400 ) ) ; +#5091 = AXIS2_PLACEMENT_3D ( 'NONE', #12436, #18170, #10898 ) ; +#5092 = ORIENTED_EDGE ( 'NONE', *, *, #2336, .F. ) ; +#5093 = LINE ( 'NONE', #17386, #3963 ) ; +#5094 = EDGE_LOOP ( 'NONE', ( #16444, #4437, #5134, #5488 ) ) ; +#5095 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.7187499999999935600 ) ) ; +#5096 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#5097 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.7604166666666609700 ) ) ; +#5098 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.3368055555555464800 ) ) ; +#5099 = CARTESIAN_POINT ( 'NONE', ( 5.788237617796800800E-017, -2.669823311248645000E-016, 3.802149639073289000 ) ) ; +#5100 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5101 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.5416666666666595200 ) ) ; +#5102 = ORIENTED_EDGE ( 'NONE', *, *, #5624, .T. ) ; +#5103 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.7499999999999944500 ) ) ; +#5104 = ORIENTED_EDGE ( 'NONE', *, *, #127, .T. ) ; +#5105 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #6253, #17582, #10249, #10570, #17979, #7735, #18046, #399, #466 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6287878787878787800, 0.6325757575757575700, 0.6363636363636363500, 0.6401515151515151400, 0.6439393939393940300 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#5106 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.6527777777777712400 ) ) ; +#5107 = ORIENTED_EDGE ( 'NONE', *, *, #17592, .T. ) ; +#5108 = FACE_OUTER_BOUND ( 'NONE', #859, .T. ) ; +#5109 = DIRECTION ( 'NONE', ( 0.9584846895403575900, 0.2851439985633997800, 0.0000000000000000000 ) ) ; +#5110 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.098958333333330400 ) ) ; +#5111 = DIRECTION ( 'NONE', ( -0.1156686028357422500, 0.1295162689590436700, 0.9848077530122089100 ) ) ; +#5112 = ORIENTED_EDGE ( 'NONE', *, *, #14996, .T. ) ; +#5113 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#5114 = EDGE_CURVE ( 'NONE', #15440, #12145, #13284, .T. ) ; +#5115 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#5116 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5117 = EDGE_LOOP ( 'NONE', ( #5378, #12806, #18405, #15138 ) ) ; +#5118 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.9270833333333288200 ) ) ; +#5119 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.5520833333333257100 ) ) ; +#5120 = PLANE ( 'NONE', #4897 ) ; +#5121 = ADVANCED_FACE ( 'NONE', ( #3841 ), #3618, .T. ) ; +#5122 = VERTEX_POINT ( 'NONE', #3411 ) ; +#5123 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.1197916666666559600 ) ) ; +#5124 = VECTOR ( 'NONE', #18203, 39.37007874015748100 ) ; +#5125 = ORIENTED_EDGE ( 'NONE', *, *, #8996, .T. ) ; +#5126 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #11494, #6799, #17110, #8403, #18710, #11255, #1070, #2418, #8723 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6742424242424243100, 0.6780303030303029800, 0.6818181818181818800, 0.6856060606060605500, 0.6893939393939394500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#5127 = DIRECTION ( 'NONE', ( -0.6078269655510767400, -0.7940695057417643800, 0.0000000000000000000 ) ) ; +#5128 = EDGE_LOOP ( 'NONE', ( #3733, #13746, #9440, #5299 ) ) ; +#5129 = EDGE_CURVE ( 'NONE', #4799, #17782, #15134, .T. ) ; +#5130 = FACE_OUTER_BOUND ( 'NONE', #10148, .T. ) ; +#5131 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.390624999999999300 ) ) ; +#5132 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.552083333333333700 ) ) ; +#5133 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#5134 = ORIENTED_EDGE ( 'NONE', *, *, #6750, .F. ) ; +#5135 = ADVANCED_FACE ( 'NONE', ( #19054 ), #13778, .F. ) ; +#5136 = EDGE_CURVE ( 'NONE', #5958, #17274, #10531, .T. ) ; +#5137 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.3940972222222136600 ) ) ; +#5138 = CARTESIAN_POINT ( 'NONE', ( 2.246643514571254700E-018, 2.551234510058984200E-017, -1.174024639073269100 ) ) ; +#5139 = DIRECTION ( 'NONE', ( 1.000000000000000000, 3.730349362740526000E-014, 0.0000000000000000000 ) ) ; +#5140 = DIRECTION ( 'NONE', ( -0.4596954355469745600, -0.8880766332571064000, 0.0000000000000000000 ) ) ; +#5141 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.9097222222222174400 ) ) ; +#5142 = EDGE_CURVE ( 'NONE', #7833, #6632, #18376, .T. ) ; +#5143 = AXIS2_PLACEMENT_3D ( 'NONE', #17973, #9278, #4695 ) ; +#5144 = ORIENTED_EDGE ( 'NONE', *, *, #1337, .F. ) ; +#5145 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995600, -0.02440487719284428800, 1.250000000000000200 ) ) ; +#5146 = ADVANCED_FACE ( 'NONE', ( #17443 ), #17895, .F. ) ; +#5147 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.8229166666666616300 ) ) ; +#5148 = ORIENTED_EDGE ( 'NONE', *, *, #9533, .T. ) ; +#5149 = PERSON_AND_ORGANIZATION ( #18342, #15970 ) ; +#5150 = ORIENTED_EDGE ( 'NONE', *, *, #15968, .F. ) ; +#5151 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5152 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.03819444444443267900 ) ) ; +#5153 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.274305555555554000 ) ) ; +#5154 = CONICAL_SURFACE ( 'NONE', #15742, 0.4687475818742548600, 0.1745329251994284800 ) ; +#5155 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#5156 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.6006944444444373100 ) ) ; +#5157 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.7951388888888835100 ) ) ; +#5158 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#5159 = EDGE_CURVE ( 'NONE', #8105, #7787, #5425, .T. ) ; +#5160 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#5161 = DIRECTION ( 'NONE', ( -1.000000000000000000, 1.776356839400250500E-015, 0.0000000000000000000 ) ) ; +#5162 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.1111111111111003400 ) ) ; +#5163 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5164 = AXIS2_PLACEMENT_3D ( 'NONE', #18734, #17250, #12874 ) ; +#5165 = DIRECTION ( 'NONE', ( 0.9772957051199515600, 0.2118799300408056000, -0.0000000000000000000 ) ) ; +#5166 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#5167 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.4513888888888809000 ) ) ; +#5168 = AXIS2_PLACEMENT_3D ( 'NONE', #5832, #11786, #1425 ) ; +#5169 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.7951388888888837300 ) ) ; +#5170 = CC_DESIGN_APPROVAL ( #263, ( #13461 ) ) ; +#5171 = TOROIDAL_SURFACE ( 'NONE', #18824, 0.2644999999999991200, 0.05000000000000000300 ) ; +#5172 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.213541666666664500 ) ) ; +#5173 = CARTESIAN_POINT ( 'NONE', ( 2.404083430289610100E-016, -8.829804393861164500E-017, 3.802149639073315200 ) ) ; +#5174 = CARTESIAN_POINT ( 'NONE', ( -0.2786454333104068600, -7.879427662528783000E-013, 0.08899038763601538300 ) ) ; +#5175 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#5176 = DIRECTION ( 'NONE', ( 0.9620631844027759400, -0.2728267384564613800, 0.0000000000000000000 ) ) ; +#5177 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#5178 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.4652777777777695200 ) ) ; +#5179 = PLANE ( 'NONE', #5370 ) ; +#5180 = LINE ( 'NONE', #12841, #16949 ) ; +#5181 = ORIENTED_EDGE ( 'NONE', *, *, #7412, .T. ) ; +#5182 = LINE ( 'NONE', #2956, #17190 ) ; +#5183 = ORIENTED_EDGE ( 'NONE', *, *, #2307, .F. ) ; +#5184 = EDGE_CURVE ( 'NONE', #12614, #9026, #9375, .T. ) ; +#5185 = FACE_OUTER_BOUND ( 'NONE', #7802, .T. ) ; +#5186 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, 0.01909722222223396400 ) ) ; +#5187 = AXIS2_PLACEMENT_3D ( 'NONE', #12805, #2631, #15692 ) ; +#5188 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.496527777777777900 ) ) ; +#5189 = PLANE ( 'NONE', #17800 ) ; +#5190 = DIRECTION ( 'NONE', ( 0.9996874511566102800, -0.02499999999999999100, 0.0000000000000000000 ) ) ; +#5191 = DIRECTION ( 'NONE', ( -0.1664391196603305100, -0.04951473572319437000, 0.9848077530122091300 ) ) ; +#5192 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.421874999999999300 ) ) ; +#5193 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.493055555555555600 ) ) ; +#5194 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -0.1208479985968007500, 1.265548244963037500 ) ) ; +#5195 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.1145833333333226300 ) ) ; +#5196 = CONICAL_SURFACE ( 'NONE', #111, 0.4610132068742565100, 0.1745329251994287300 ) ; +#5197 = ORIENTED_EDGE ( 'NONE', *, *, #8446, .F. ) ; +#5198 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.08854166666665555500 ) ) ; +#5199 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5200 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.305555555555554000 ) ) ; +#5201 = AXIS2_PLACEMENT_3D ( 'NONE', #16825, #9557, #2208 ) ; +#5202 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.9652777777777734600 ) ) ; +#5203 = FACE_OUTER_BOUND ( 'NONE', #18655, .T. ) ; +#5204 = VERTEX_POINT ( 'NONE', #7437 ) ; +#5205 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.9895833333333297100 ) ) ; +#5206 = FACE_OUTER_BOUND ( 'NONE', #920, .T. ) ; +#5207 = CARTESIAN_POINT ( 'NONE', ( -1.355798241306626200E-016, -1.037806797709850500E-016, -1.174024639073328700 ) ) ; +#5208 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.2187499999999898400 ) ) ; +#5209 = EDGE_CURVE ( 'NONE', #3512, #17544, #17913, .T. ) ; +#5210 = ADVANCED_FACE ( 'NONE', ( #2695 ), #10400, .F. ) ; +#5211 = VERTEX_POINT ( 'NONE', #17662 ) ; +#5212 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #7433, #2857, #9050, #2992, #17859, #17797, #11864, #14883, #13223, #3112, #4589, #7553, #7299, #4402, #17657, #16297, #8989, #7495, #14691, #8911, #10326, #1498, #148, #5849, #5792, #19084, #7370, #16370, #10450, #4457, #17730, #13158, #6066, #11804, #219, #10264, #10514, #16167, #1444, #11669, #11742, #1631, #4334, #14630 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ), + ( 0.007499165241875617100, 0.009003172053021322000, 0.009755175458594174400, 0.01050717886416702900, 0.01201118567531273300, 0.01351519248645843800, 0.01501919929760414300, 0.01577120270317699400, 0.01652320610874984500, 0.01802721291989554900, 0.01953121973104125100, 0.02028322313661410200, 0.02103522654218695600, 0.02253923335333266100, 0.02404324016447836200, 0.02554724697562406300, 0.02629925038119691700, 0.02705125378676976500, 0.02855526059791546600, 0.03005926740906116800, 0.03081127081463402200, 0.03156327422020686900 ), + .UNSPECIFIED. ) ; +#5213 = FACE_OUTER_BOUND ( 'NONE', #14126, .T. ) ; +#5214 = LINE ( 'NONE', #17784, #1317 ) ; +#5215 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.5208333333333254900 ) ) ; +#5216 = PLANE ( 'NONE', #3304 ) ; +#5217 = FACE_OUTER_BOUND ( 'NONE', #14355, .T. ) ; +#5218 = ORIENTED_EDGE ( 'NONE', *, *, #5795, .F. ) ; +#5219 = VERTEX_POINT ( 'NONE', #2861 ) ; +#5220 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#5221 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.503472222222222300 ) ) ; +#5222 = CARTESIAN_POINT ( 'NONE', ( 0.1616077992682610200, -0.4400081984788846200, 1.143750000000000000 ) ) ; +#5223 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.006944444444432843100 ) ) ; +#5225 = EDGE_CURVE ( 'NONE', #7601, #17541, #6145, .T. ) ; +#5224 = CYLINDRICAL_SURFACE ( 'NONE', #3750, 0.4610132068742565100 ) ; +#5226 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#5227 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#5228 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.4409722222222141600 ) ) ; +#5229 = AXIS2_PLACEMENT_3D ( 'NONE', #11177, #6717, #16844 ) ; +#5230 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.5486111111111039400 ) ) ; +#5231 = ADVANCED_FACE ( 'NONE', ( #8885 ), #6233, .T. ) ; +#5232 = CARTESIAN_POINT ( 'NONE', ( -0.1616077992682571600, 0.4400081984788838900, 1.143750000000000000 ) ) ; +#5233 = VERTEX_POINT ( 'NONE', #1564 ) ; +#5234 = ADVANCED_FACE ( 'NONE', ( #1832 ), #14832, .F. ) ; +#5235 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.164930555555553100 ) ) ; +#5236 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676385900 ) ) ; +#5237 = CARTESIAN_POINT ( 'NONE', ( 0.01152533017185643000, 0.4608691177296606000, 1.440511179676401600 ) ) ; +#5238 = FACE_OUTER_BOUND ( 'NONE', #1195, .T. ) ; +#5239 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5240 = CARTESIAN_POINT ( 'NONE', ( -0.4592360163321195800, 0.04044079890273364500, 1.587900241027141200 ) ) ; +#5241 = VECTOR ( 'NONE', #10670, 39.37007874015748900 ) ; +#5242 = VECTOR ( 'NONE', #2747, 39.37007874015748100 ) ; +#5243 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5244 = ORIENTED_EDGE ( 'NONE', *, *, #3262, .F. ) ; +#5245 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.5138888888888809600 ) ) ; +#5246 = CARTESIAN_POINT ( 'NONE', ( 0.4492873804855414500, -0.1336605598125402700, 1.484375000000000200 ) ) ; +#5247 = LINE ( 'NONE', #955, #10322 ) ; +#5248 = EDGE_CURVE ( 'NONE', #618, #3523, #6561, .T. ) ; +#5249 = ORIENTED_EDGE ( 'NONE', *, *, #13294, .F. ) ; +#5250 = EDGE_CURVE ( 'NONE', #6286, #7343, #13121, .T. ) ; +#5251 = ORIENTED_EDGE ( 'NONE', *, *, #15472, .F. ) ; +#5252 = AXIS2_PLACEMENT_3D ( 'NONE', #11520, #8626, #13127 ) ; +#5253 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, 0.1267361111111237300 ) ) ; +#5254 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.545138888888889900 ) ) ; +#5255 = CARTESIAN_POINT ( 'NONE', ( -0.01276789372708023700, 0.2911629129391791700, 0.1237266434956743700 ) ) ; +#5256 = AXIS2_PLACEMENT_3D ( 'NONE', #15146, #16645, #18573 ) ; +#5257 = ORIENTED_EDGE ( 'NONE', *, *, #5608, .T. ) ; +#5258 = VERTEX_POINT ( 'NONE', #5853 ) ; +#5259 = FACE_OUTER_BOUND ( 'NONE', #17927, .T. ) ; +#5260 = FACE_OUTER_BOUND ( 'NONE', #7322, .T. ) ; +#5261 = CARTESIAN_POINT ( 'NONE', ( -0.4375000000000000600, -5.463695987328526400E-016, 1.531250000000000000 ) ) ; +#5262 = CONICAL_SURFACE ( 'NONE', #18858, 0.4610132068742565100, 0.1745329251994289800 ) ; +#5263 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.7187499999999937800 ) ) ; +#5264 = EDGE_LOOP ( 'NONE', ( #15406, #16113, #2833, #212 ) ) ; +#5265 = CIRCLE ( 'NONE', #17480, 0.4687475818742560300 ) ; +#5266 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.501736111111111200 ) ) ; +#5267 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676397900 ) ) ; +#5268 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.197916666666664500 ) ) ; +#5269 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.1336805555555448400 ) ) ; +#5270 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.451388888888888600 ) ) ; +#5271 = CARTESIAN_POINT ( 'NONE', ( 0.4624991113355799700, 0.07629635976767419600, 1.143750000000000000 ) ) ; +#5272 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.003472222222210555600 ) ) ; +#5273 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.9236111111111069400 ) ) ; +#5274 = ORIENTED_EDGE ( 'NONE', *, *, #7387, .F. ) ; +#5275 = VERTEX_POINT ( 'NONE', #13283 ) ; +#5276 = EDGE_CURVE ( 'NONE', #514, #11969, #921, .T. ) ; +#5277 = PLANE ( 'NONE', #1265 ) ; +#5278 = ORIENTED_EDGE ( 'NONE', *, *, #6869, .T. ) ; +#5279 = VECTOR ( 'NONE', #8163, 39.37007874015748900 ) ; +#5280 = FACE_OUTER_BOUND ( 'NONE', #7552, .T. ) ; +#5281 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.1180555555555443800 ) ) ; +#5282 = AXIS2_PLACEMENT_3D ( 'NONE', #14783, #1587, #8934 ) ; +#5283 = ORIENTED_EDGE ( 'NONE', *, *, #12795, .T. ) ; +#5284 = ORIENTED_EDGE ( 'NONE', *, *, #14758, .F. ) ; +#5285 = VECTOR ( 'NONE', #10466, 39.37007874015748900 ) ; +#5286 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.09722222222223464400 ) ) ; +#5287 = EDGE_CURVE ( 'NONE', #1393, #12491, #12793, .T. ) ; +#5288 = AXIS2_PLACEMENT_3D ( 'NONE', #14298, #15702, #8432 ) ; +#5289 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5290 = AXIS2_PLACEMENT_3D ( 'NONE', #6507, #6450, #16818 ) ; +#5291 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.4861111111111030000 ) ) ; +#5292 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.7499999999999942300 ) ) ; +#5293 = DIRECTION ( 'NONE', ( 1.000000000000000000, -1.182924880895404000E-016, 0.0000000000000000000 ) ) ; +#5294 = CARTESIAN_POINT ( 'NONE', ( -0.02605985045064851100, 0.2904169199783699900, -1.542365780531975500 ) ) ; +#5295 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.07291666666665562500 ) ) ; +#5296 = EDGE_LOOP ( 'NONE', ( #2369, #16969, #16205, #16098 ) ) ; +#5297 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#5298 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.4062499999999917300 ) ) ; +#5299 = ORIENTED_EDGE ( 'NONE', *, *, #16920, .F. ) ; +#5300 = VERTEX_POINT ( 'NONE', #7751 ) ; +#5301 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.6354166666666601900 ) ) ; +#5302 = FACE_OUTER_BOUND ( 'NONE', #11423, .T. ) ; +#5303 = FACE_OUTER_BOUND ( 'NONE', #11540, .T. ) ; +#5304 = EDGE_LOOP ( 'NONE', ( #16823, #1445, #9886, #946 ) ) ; +#5305 = ORIENTED_EDGE ( 'NONE', *, *, #11879, .T. ) ; +#5306 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5307 = VECTOR ( 'NONE', #19029, 39.37007874015748100 ) ; +#5308 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.4548611111111030600 ) ) ; +#5309 = EDGE_CURVE ( 'NONE', #8720, #14545, #11587, .T. ) ; +#5310 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5311 = DIRECTION ( 'NONE', ( 0.8090169943749422300, 0.5877852522924802400, 0.0000000000000000000 ) ) ; +#5312 = AXIS2_PLACEMENT_3D ( 'NONE', #3982, #6745, #12744 ) ; +#5313 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.2812499999999903400 ) ) ; +#5314 = CARTESIAN_POINT ( 'NONE', ( 0.1051858231909573300, -0.4567934304612993900, 1.143750000000000000 ) ) ; +#5315 = EDGE_LOOP ( 'NONE', ( #10652, #13108, #16724, #13068, #10066 ) ) ; +#5316 = EDGE_LOOP ( 'NONE', ( #8975, #6442, #14078, #6210 ) ) ; +#5317 = ORIENTED_EDGE ( 'NONE', *, *, #3342, .T. ) ; +#5318 = ADVANCED_FACE ( 'NONE', ( #9911 ), #15082, .F. ) ; +#5319 = CIRCLE ( 'NONE', #18864, 0.4687499999999995600 ) ; +#5320 = EDGE_LOOP ( 'NONE', ( #4647, #4727, #16129, #4875, #18656, #5997 ) ) ; +#5321 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, 0.1232638888889014500 ) ) ; +#5322 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.552083333333333900 ) ) ; +#5323 = CARTESIAN_POINT ( 'NONE', ( -0.2798788020031893200, 0.09363657754768531200, 0.1325542011406154700 ) ) ; +#5324 = CARTESIAN_POINT ( 'NONE', ( -0.3829490853735684200, 0.2566771803726104500, 1.143750000000000000 ) ) ; +#5325 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.230902777777775700 ) ) ; +#5326 = VERTEX_POINT ( 'NONE', #224 ) ; +#5327 = ORIENTED_EDGE ( 'NONE', *, *, #7474, .F. ) ; +#5328 = ADVANCED_FACE ( 'NONE', ( #16306 ), #10454, .F. ) ; +#5329 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.1371527777777671600 ) ) ; +#5330 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5331 = EDGE_CURVE ( 'NONE', #9397, #5928, #897, .T. ) ; +#5332 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.493055555555555600 ) ) ; +#5333 = CARTESIAN_POINT ( 'NONE', ( -0.3829490853735665900, -0.2566771803726130600, 1.143750000000000000 ) ) ; +#5334 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.01041666666665514600 ) ) ; +#5335 = VERTEX_POINT ( 'NONE', #10518 ) ; +#5336 = ORIENTED_EDGE ( 'NONE', *, *, #12664, .T. ) ; +#5337 = CARTESIAN_POINT ( 'NONE', ( 0.4505462270817866500, 0.09767944602040519500, 1.143750000000000000 ) ) ; +#5338 = CIRCLE ( 'NONE', #2097, 0.4687475818742554100 ) ; +#5339 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.7847222222222168800 ) ) ; +#5340 = ORIENTED_EDGE ( 'NONE', *, *, #13214, .F. ) ; +#5341 = ORIENTED_EDGE ( 'NONE', *, *, #11335, .F. ) ; +#5342 = AXIS2_PLACEMENT_3D ( 'NONE', #12253, #7806, #11989 ) ; +#5343 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, 0.1145833333333458500 ) ) ; +#5344 = ORIENTED_EDGE ( 'NONE', *, *, #14897, .T. ) ; +#5345 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #8628, #17694, #18931, #4488, #3022, #8882, #4242, #9021, #16264 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7803030303030302800, 0.7840909090909091700, 0.7878787878787878500, 0.7916666666666667400, 0.7954545454545454100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#5346 = ORIENTED_EDGE ( 'NONE', *, *, #420, .T. ) ; +#5347 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.5659722222222147700 ) ) ; +#5348 = LINE ( 'NONE', #9305, #15042 ) ; +#5349 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5350 = ORIENTED_EDGE ( 'NONE', *, *, #8122, .F. ) ; +#5351 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.1284722222222115200 ) ) ; +#5352 = CARTESIAN_POINT ( 'NONE', ( -0.2793991136576934900, 0.1021461953347781700, -1.535999517394095900 ) ) ; +#5353 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.09722222222223464400 ) ) ; +#5354 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, 0.02777777777778984300 ) ) ; +#5355 = ORIENTED_EDGE ( 'NONE', *, *, #17535, .T. ) ; +#5356 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.3715277777777691900 ) ) ; +#5357 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.4895833333333257100 ) ) ; +#5358 = VERTEX_POINT ( 'NONE', #352 ) ; +#5359 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.9236111111111065000 ) ) ; +#5360 = EDGE_CURVE ( 'NONE', #13527, #18912, #10781, .T. ) ; +#5361 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.1562499999999896200 ) ) ; +#5362 = DIRECTION ( 'NONE', ( 1.000000000000000000, 1.953992523340275200E-014, 0.0000000000000000000 ) ) ; +#5363 = EDGE_CURVE ( 'NONE', #10901, #2792, #16542, .T. ) ; +#5364 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#5365 = AXIS2_PLACEMENT_3D ( 'NONE', #794, #15520, #12711 ) ; +#5366 = ORIENTED_EDGE ( 'NONE', *, *, #12701, .T. ) ; +#5367 = CARTESIAN_POINT ( 'NONE', ( -0.4581073617749781800, 0.09931871720662120700, 1.589564174286821800 ) ) ; +#5368 = EDGE_LOOP ( 'NONE', ( #16132, #6305, #12502, #13126 ) ) ; +#5369 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.3680555555555464800 ) ) ; +#5370 = AXIS2_PLACEMENT_3D ( 'NONE', #11191, #3582, #2123 ) ; +#5371 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5372 = FACE_OUTER_BOUND ( 'NONE', #13385, .T. ) ; +#5373 = ORIENTED_EDGE ( 'NONE', *, *, #13069, .F. ) ; +#5374 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.274305555555554000 ) ) ; +#5375 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, 0.1440972222222349500 ) ) ; +#5376 = VERTEX_POINT ( 'NONE', #12127 ) ; +#5377 = VECTOR ( 'NONE', #2200, 39.37007874015748100 ) ; +#5378 = ORIENTED_EDGE ( 'NONE', *, *, #19060, .F. ) ; +#5379 = EDGE_CURVE ( 'NONE', #8592, #9477, #18773, .T. ) ; +#5380 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.244791666666664700 ) ) ; +#5381 = CARTESIAN_POINT ( 'NONE', ( -0.1278875336514725400, 0.4509671176887989400, 1.484375000000000200 ) ) ; +#5382 = EDGE_CURVE ( 'NONE', #15382, #854, #4127, .T. ) ; +#5383 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.005208333333321558600 ) ) ; +#5384 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.350694444444443100 ) ) ; +#5385 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5387 = EDGE_CURVE ( 'NONE', #10560, #6801, #18424, .T. ) ; +#5386 = VECTOR ( 'NONE', #12505, 39.37007874015748100 ) ; +#5388 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.9097222222222178800 ) ) ; +#5389 = AXIS2_PLACEMENT_3D ( 'NONE', #18145, #6292, #1911 ) ; +#5390 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#5391 = FACE_OUTER_BOUND ( 'NONE', #11283, .T. ) ; +#5392 = ORIENTED_EDGE ( 'NONE', *, *, #3942, .T. ) ; +#5393 = ADVANCED_FACE ( 'NONE', ( #4714 ), #7556, .F. ) ; +#5394 = FACE_BOUND ( 'NONE', #8544, .T. ) ; +#5395 = VECTOR ( 'NONE', #6002, 39.37007874015748900 ) ; +#5396 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.3993055555555467000 ) ) ; +#5397 = DIRECTION ( 'NONE', ( 1.000000000000000000, 1.865174681370263000E-014, 0.0000000000000000000 ) ) ; +#5398 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#5399 = EDGE_CURVE ( 'NONE', #4720, #5957, #2202, .T. ) ; +#5400 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.500000000000000200 ) ) ; +#5401 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5402 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.06944444444443333100 ) ) ; +#5403 = CARTESIAN_POINT ( 'NONE', ( -0.4420471124163802800, -0.1559516364272580100, 1.590985962198545200 ) ) ; +#5404 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#5405 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.5034722222222146600 ) ) ; +#5406 = AXIS2_PLACEMENT_3D ( 'NONE', #13694, #18392, #9451 ) ; +#5407 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.6597222222222158800 ) ) ; +#5408 = LINE ( 'NONE', #10405, #18785 ) ; +#5409 = ADVANCED_FACE ( 'NONE', ( #17174 ), #290, .F. ) ; +#5410 = ORIENTED_EDGE ( 'NONE', *, *, #12933, .T. ) ; +#5411 = CONICAL_SURFACE ( 'NONE', #13453, 0.4687475818742549700, 0.1745329251994250700 ) ; +#5412 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.093749999999996700 ) ) ; +#5413 = VERTEX_POINT ( 'NONE', #15025 ) ; +#5414 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.04861111111109984300 ) ) ; +#5415 = CARTESIAN_POINT ( 'NONE', ( -0.07035793515936118700, -0.4634396653935770600, 1.143750000000000000 ) ) ; +#5416 = VECTOR ( 'NONE', #13513, 39.37007874015748900 ) ; +#5417 = CARTESIAN_POINT ( 'NONE', ( 0.1286358344222430200, -0.2539521526905798000, 0.1039087830660084300 ) ) ; +#5418 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -1.347222222222221000 ) ) ; +#5419 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.3159722222222127700 ) ) ; +#5420 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#5421 = DIRECTION ( 'NONE', ( 0.2728267384564680400, 0.9620631844027740500, -0.0000000000000000000 ) ) ; +#5422 = LINE ( 'NONE', #9726, #7991 ) ; +#5423 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.326388888888887700 ) ) ; +#5424 = EDGE_CURVE ( 'NONE', #12733, #8689, #17056, .T. ) ; +#5425 = CIRCLE ( 'NONE', #16381, 0.4687475818742555300 ) ; +#5426 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, 0.09895833333334593000 ) ) ; +#5427 = LINE ( 'NONE', #15165, #15136 ) ; +#5428 = ORIENTED_EDGE ( 'NONE', *, *, #5309, .T. ) ; +#5429 = ORIENTED_EDGE ( 'NONE', *, *, #8115, .F. ) ; +#5430 = DIRECTION ( 'NONE', ( -0.1735239426960702400, -0.006567413361075016500, 0.9848077530122088000 ) ) ; +#5431 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.9618055555555514700 ) ) ; +#5432 = VECTOR ( 'NONE', #10576, 39.37007874015748900 ) ; +#5433 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.3194444444444353200 ) ) ; +#5434 = CARTESIAN_POINT ( 'NONE', ( 0.01171875000000001400, 0.4686034927296605600, 1.143750000000000000 ) ) ; +#5435 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.161458333333330600 ) ) ; +#5436 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.486111111111110900 ) ) ; +#5437 = DIRECTION ( 'NONE', ( -0.4482668910516151000, 0.8938997675281718000, 0.0000000000000000000 ) ) ; +#5438 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.1961805555555453400 ) ) ; +#5439 = DIRECTION ( 'NONE', ( 0.3447650836343074700, -0.9386889991400926300, 0.0000000000000000000 ) ) ; +#5440 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.371527777777776600 ) ) ; +#5441 = DIRECTION ( 'NONE', ( 0.06794052811688380800, 0.1598054262102597300, 0.9848077530122091300 ) ) ; +#5442 = AXIS2_PLACEMENT_3D ( 'NONE', #16105, #13360, #11930 ) ; +#5443 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.006944444444432851800 ) ) ; +#5444 = ORIENTED_EDGE ( 'NONE', *, *, #833, .F. ) ; +#5445 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.6944444444444384200 ) ) ; +#5446 = VECTOR ( 'NONE', #1112, 39.37007874015748100 ) ; +#5447 = VECTOR ( 'NONE', #18899, 39.37007874015748100 ) ; +#5448 = VECTOR ( 'NONE', #4528, 39.37007874015748100 ) ; +#5449 = VERTEX_POINT ( 'NONE', #16637 ) ; +#5450 = CARTESIAN_POINT ( 'NONE', ( -0.2802162586133528100, 0.3660765293230648900, 1.440511179676402300 ) ) ; +#5451 = VECTOR ( 'NONE', #16303, 39.37007874015748100 ) ; +#5452 = FACE_OUTER_BOUND ( 'NONE', #257, .T. ) ; +#5453 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5454 = ORIENTED_EDGE ( 'NONE', *, *, #16977, .F. ) ; +#5455 = CARTESIAN_POINT ( 'NONE', ( 0.3535935602980447800, -0.3077269725401352600, 1.484375000000000200 ) ) ; +#5456 = CARTESIAN_POINT ( 'NONE', ( -0.2154822354126468300, 0.4162859218392669400, 1.143750000000000000 ) ) ; +#5457 = VERTEX_POINT ( 'NONE', #12068 ) ; +#5458 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.4600694444444364300 ) ) ; +#5459 = ORIENTED_EDGE ( 'NONE', *, *, #17865, .F. ) ; +#5460 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.5416666666666589700 ) ) ; +#5461 = CARTESIAN_POINT ( 'NONE', ( -0.04632776727398118400, -0.4586795339797645200, 1.440511179676385400 ) ) ; +#5462 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#5463 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5464 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #9801, #15469, #6779, #6648, #998, #14178, #8147, #5351, #18446 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1893939393939394500, 0.1931818181818182300, 0.1969696969696970200, 0.2007575757575758000, 0.2045454545454545900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#5465 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.319444444444443300 ) ) ; +#5466 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.559027777777778100 ) ) ; +#5467 = EDGE_CURVE ( 'NONE', #10108, #9825, #11384, .T. ) ; +#5468 = EDGE_LOOP ( 'NONE', ( #3193, #13844, #4123, #8526 ) ) ; +#5469 = VERTEX_POINT ( 'NONE', #539 ) ; +#5470 = CIRCLE ( 'NONE', #7984, 0.4687475818742581300 ) ; +#5471 = DIRECTION ( 'NONE', ( 1.000000000000000000, 2.309263891220325300E-014, 0.0000000000000000000 ) ) ; +#5472 = VECTOR ( 'NONE', #453, 39.37007874015748100 ) ; +#5473 = CARTESIAN_POINT ( 'NONE', ( -3.142590803677595000E-017, 1.336057754235447300E-017, -1.174024639073309600 ) ) ; +#5474 = CIRCLE ( 'NONE', #7518, 0.3144999999999991100 ) ; +#5475 = DIRECTION ( 'NONE', ( -0.5000000000000003300, 0.8660254037844386000, 0.0000000000000000000 ) ) ; +#5476 = ORIENTED_EDGE ( 'NONE', *, *, #7498, .T. ) ; +#5477 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.2743055555555463100 ) ) ; +#5478 = CYLINDRICAL_SURFACE ( 'NONE', #5611, 0.4610132068742565100 ) ; +#5479 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.6249999999999934500 ) ) ; +#5480 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#5481 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.045138888888885300 ) ) ; +#5482 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.1180555555555449200 ) ) ; +#5483 = ORIENTED_EDGE ( 'NONE', *, *, #4159, .F. ) ; +#5484 = ORIENTED_EDGE ( 'NONE', *, *, #8097, .F. ) ; +#5485 = CARTESIAN_POINT ( 'NONE', ( -0.03369937530959580400, -0.2806522192144130200, 0.09962236527146854600 ) ) ; +#5486 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.2604166666666568600 ) ) ; +#5487 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.2083333333333232400 ) ) ; +#5488 = ORIENTED_EDGE ( 'NONE', *, *, #15845, .F. ) ; +#5489 = ORIENTED_EDGE ( 'NONE', *, *, #12295, .F. ) ; +#5490 = LINE ( 'NONE', #18883, #12883 ) ; +#5491 = CARTESIAN_POINT ( 'NONE', ( -7.235297022245558800E-018, -3.337279139060816100E-017, 3.802149639073263600 ) ) ; +#5492 = CONICAL_SURFACE ( 'NONE', #15056, 0.4610132068742565100, 0.1745329251994306200 ) ; +#5493 = VERTEX_POINT ( 'NONE', #13989 ) ; +#5494 = ORIENTED_EDGE ( 'NONE', *, *, #17436, .F. ) ; +#5495 = EDGE_CURVE ( 'NONE', #8311, #6075, #8762, .T. ) ; +#5496 = VECTOR ( 'NONE', #4257, 39.37007874015748100 ) ; +#5497 = ADVANCED_FACE ( 'NONE', ( #6101 ), #10968, .F. ) ; +#5498 = EDGE_CURVE ( 'NONE', #3201, #5793, #9112, .T. ) ; +#5499 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.260416666666665000 ) ) ; +#5500 = EDGE_CURVE ( 'NONE', #2527, #8354, #15377, .T. ) ; +#5501 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.409722222222221900 ) ) ; +#5502 = ORIENTED_EDGE ( 'NONE', *, *, #16739, .T. ) ; +#5503 = CARTESIAN_POINT ( 'NONE', ( 0.2154822354126497400, -0.4162859218392654400, 1.143750000000000000 ) ) ; +#5504 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.5833333333333261500 ) ) ; +#5505 = CARTESIAN_POINT ( 'NONE', ( -0.2119256669269687600, -0.4094150566479519100, 1.440511179676387400 ) ) ; +#5506 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.151041666666663900 ) ) ; +#5507 = ORIENTED_EDGE ( 'NONE', *, *, #5184, .F. ) ; +#5508 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.475694444444444000 ) ) ; +#5509 = LINE ( 'NONE', #708, #13372 ) ; +#5510 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#5511 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#5512 = LINE ( 'NONE', #13446, #17971 ) ; +#5513 = EDGE_LOOP ( 'NONE', ( #6472, #2125, #3846, #18179 ) ) ; +#5514 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, 0.1857638888889022200 ) ) ; +#5515 = EDGE_LOOP ( 'NONE', ( #9043, #2050, #5662, #8799 ) ) ; +#5516 = DIRECTION ( 'NONE', ( 0.8938997675281718000, 0.4482668910516151000, -0.0000000000000000000 ) ) ; +#5517 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.249999999999997800 ) ) ; +#5518 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.593193105402742800 ) ) ; +#5519 = DIRECTION ( 'NONE', ( -0.07982527466453717700, 0.1542128889936727200, 0.9848077530122091300 ) ) ; +#5520 = VECTOR ( 'NONE', #1507, 39.37007874015748900 ) ; +#5521 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.5868055555555485900 ) ) ; +#5522 = EDGE_CURVE ( 'NONE', #7829, #4157, #9571, .T. ) ; +#5523 = ORIENTED_EDGE ( 'NONE', *, *, #12357, .F. ) ; +#5524 = CARTESIAN_POINT ( 'NONE', ( 0.3685331079892036300, 0.2896681615724789300, 1.143750000000000000 ) ) ; +#5525 = AXIS2_PLACEMENT_3D ( 'NONE', #11691, #8808, #2871 ) ; +#5526 = DIRECTION ( 'NONE', ( -0.1637561077632677900, -0.05777219726884074600, -0.9848077530122085800 ) ) ; +#5527 = ORIENTED_EDGE ( 'NONE', *, *, #5852, .T. ) ; +#5528 = ORIENTED_EDGE ( 'NONE', *, *, #1347, .T. ) ; +#5529 = DIRECTION ( 'NONE', ( -0.2728267384564613300, -0.9620631844027758300, 0.0000000000000000000 ) ) ; +#5530 = VECTOR ( 'NONE', #7473, 39.37007874015748900 ) ; +#5531 = EDGE_LOOP ( 'NONE', ( #11977, #3452, #14697, #13597 ) ) ; +#5532 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.6267361111111043900 ) ) ; +#5533 = EDGE_LOOP ( 'NONE', ( #9237, #1429, #8341, #18348 ) ) ; +#5534 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.2638888888888788500 ) ) ; +#5535 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#5536 = DIRECTION ( 'NONE', ( 0.5358267949789887700, 0.8443279255020201800, 0.0000000000000000000 ) ) ; +#5537 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#5538 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5539 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.1736111111111240400 ) ) ; +#5540 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#5541 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.01736111111109946500 ) ) ; +#5542 = ORIENTED_EDGE ( 'NONE', *, *, #1060, .F. ) ; +#5543 = ORIENTED_EDGE ( 'NONE', *, *, #6356, .F. ) ; +#5544 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.4444444444444364300 ) ) ; +#5545 = EDGE_LOOP ( 'NONE', ( #12937, #12298, #8600, #8264 ) ) ; +#5546 = VECTOR ( 'NONE', #5585, 39.37007874015748900 ) ; +#5547 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.027777777777773900 ) ) ; +#5548 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.1006944444444337200 ) ) ; +#5549 = VERTEX_POINT ( 'NONE', #737 ) ; +#5550 = EDGE_CURVE ( 'NONE', #2104, #7416, #2424, .T. ) ; +#5551 = DIRECTION ( 'NONE', ( 0.7940695057417560500, 0.6078269655510877300, -0.0000000000000000000 ) ) ; +#5552 = DIRECTION ( 'NONE', ( 0.9772957051199544500, -0.2118799300407920600, -0.0000000000000000000 ) ) ; +#5553 = AXIS2_PLACEMENT_3D ( 'NONE', #11959, #11887, #3138 ) ; +#5554 = CARTESIAN_POINT ( 'NONE', ( -2.624314698447061100E-016, -6.562837953529235000E-018, -1.174024639073291600 ) ) ; +#5555 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.2986111111111015600 ) ) ; +#5556 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#5557 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.227430555555553600 ) ) ; +#5558 = EDGE_LOOP ( 'NONE', ( #11047, #17696, #11157, #15834 ) ) ; +#5559 = ORIENTED_EDGE ( 'NONE', *, *, #18285, .F. ) ; +#5560 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.201388888888886800 ) ) ; +#5561 = VERTEX_POINT ( 'NONE', #15271 ) ; +#5562 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.472222222222222300 ) ) ; +#5563 = LINE ( 'NONE', #867, #1672 ) ; +#5564 = VERTEX_POINT ( 'NONE', #11106 ) ; +#5565 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.06249999999998875900 ) ) ; +#5566 = DIRECTION ( 'NONE', ( -0.2118799300408056000, 0.9772957051199515600, 0.0000000000000000000 ) ) ; +#5567 = ORIENTED_EDGE ( 'NONE', *, *, #16832, .T. ) ; +#5568 = CARTESIAN_POINT ( 'NONE', ( -0.04632776727398443100, 0.4586795339797642400, 1.588758826628429600 ) ) ; +#5569 = PLANE ( 'NONE', #9359 ) ; +#5570 = CARTESIAN_POINT ( 'NONE', ( 0.01530074392670666700, 0.2759918036435183900, 0.08286399342893259500 ) ) ; +#5571 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.276041666666664700 ) ) ; +#5572 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.371527777777776800 ) ) ; +#5573 = CARTESIAN_POINT ( 'NONE', ( 0.4120995984523148600, 0.2066569569792582900, 1.592116737595687900 ) ) ; +#5574 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.6666666666666601900 ) ) ; +#5575 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, 0.02604166666667882500 ) ) ; +#5576 = EDGE_CURVE ( 'NONE', #17072, #5656, #5854, .T. ) ; +#5577 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.260416666666664700 ) ) ; +#5578 = CARTESIAN_POINT ( 'NONE', ( 0.3685350091390558500, 0.2896696558821369400, 1.143750000000000000 ) ) ; +#5579 = ORIENTED_EDGE ( 'NONE', *, *, #16221, .T. ) ; +#5580 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.6388888888888824000 ) ) ; +#5581 = VECTOR ( 'NONE', #13688, 39.37007874015748900 ) ; +#5582 = EDGE_LOOP ( 'NONE', ( #15930, #10352, #12849, #10398, #12826, #9380 ) ) ; +#5583 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5584 = EDGE_CURVE ( 'NONE', #8721, #2257, #13726, .T. ) ; +#5585 = DIRECTION ( 'NONE', ( 0.9772957051199544500, -0.2118799300407920000, 0.0000000000000000000 ) ) ; +#5586 = VERTEX_POINT ( 'NONE', #15576 ) ; +#5587 = LINE ( 'NONE', #11204, #9080 ) ; +#5588 = ADVANCED_FACE ( 'NONE', ( #13014 ), #9345, .T. ) ; +#5589 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#5590 = ORIENTED_EDGE ( 'NONE', *, *, #11018, .T. ) ; +#5591 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.4531249999999919000 ) ) ; +#5592 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.1666666666666559700 ) ) ; +#5593 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.2361111111111010600 ) ) ; +#5594 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#5595 = VERTEX_POINT ( 'NONE', #12818 ) ; +#5596 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5597 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#5598 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.590277777777778300 ) ) ; +#5599 = ORIENTED_EDGE ( 'NONE', *, *, #11437, .T. ) ; +#5600 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#5601 = CARTESIAN_POINT ( 'NONE', ( 0.3293220670067057400, -0.3335734876985769200, 1.484375000000000200 ) ) ; +#5602 = ORIENTED_EDGE ( 'NONE', *, *, #410, .T. ) ; +#5603 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.2743055555555463100 ) ) ; +#5604 = LINE ( 'NONE', #16068, #17382 ) ; +#5605 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.118055555555552500 ) ) ; +#5606 = EDGE_CURVE ( 'NONE', #16103, #4195, #1502, .T. ) ; +#5607 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.1284722222222118600 ) ) ; +#5608 = EDGE_CURVE ( 'NONE', #11006, #2566, #3575, .T. ) ; +#5609 = AXIS2_PLACEMENT_3D ( 'NONE', #13761, #12223, #3334 ) ; +#5610 = CARTESIAN_POINT ( 'NONE', ( -0.3070850166377910900, 0.3438487595863241000, 1.593467001493433100 ) ) ; +#5611 = AXIS2_PLACEMENT_3D ( 'NONE', #2052, #3279, #4738 ) ; +#5612 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#5613 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5614 = LINE ( 'NONE', #15074, #1260 ) ; +#5615 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.9809027777777739000 ) ) ; +#5616 = CARTESIAN_POINT ( 'NONE', ( 3.802510588441624200E-017, 5.673149244717255100E-017, -1.174024639073336900 ) ) ; +#5617 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5618 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.253472222222220800 ) ) ; +#5619 = VECTOR ( 'NONE', #986, 39.37007874015748100 ) ; +#5620 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.413194444444444200 ) ) ; +#5621 = ADVANCED_FACE ( 'NONE', ( #2646 ), #5171, .T. ) ; +#5622 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.4583333333333252700 ) ) ; +#5623 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.07291666666667885600 ) ) ; +#5624 = EDGE_CURVE ( 'NONE', #3623, #16352, #18475, .T. ) ; +#5625 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.9878472222222182100 ) ) ; +#5626 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.368055555555554500 ) ) ; +#5627 = CARTESIAN_POINT ( 'NONE', ( -2.950358097977229600E-017, 1.719393606976553000E-017, 3.802149639073309800 ) ) ; +#5628 = EDGE_CURVE ( 'NONE', #3630, #1393, #7964, .T. ) ; +#5629 = ORIENTED_EDGE ( 'NONE', *, *, #14869, .T. ) ; +#5630 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#5631 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.100694444444441500 ) ) ; +#5632 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.246527777777775700 ) ) ; +#5633 = CARTESIAN_POINT ( 'NONE', ( 0.1361413290464364400, -0.2689211137047004500, 0.1498155003282367100 ) ) ; +#5634 = EDGE_CURVE ( 'NONE', #18062, #16446, #11974, .T. ) ; +#5635 = FACE_BOUND ( 'NONE', #5468, .T. ) ; +#5636 = AXIS2_PLACEMENT_3D ( 'NONE', #12363, #8318, #3422 ) ; +#5637 = ORIENTED_EDGE ( 'NONE', *, *, #10211, .F. ) ; +#5638 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.7569444444444388700 ) ) ; +#5639 = LINE ( 'NONE', #1001, #10729 ) ; +#5640 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995600, 0.1443375672974061300, 1.272329099369260400 ) ) ; +#5641 = DESIGN_CONTEXT ( 'detailed design', #158, 'design' ) ; +#5642 = DIRECTION ( 'NONE', ( -0.1664391196603335900, 0.04951473572319159400, -0.9848077530122088000 ) ) ; +#5643 = CIRCLE ( 'NONE', #11346, 0.4610132068742565100 ) ; +#5644 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.5503472222222149900 ) ) ; +#5645 = LINE ( 'NONE', #10047, #3605 ) ; +#5646 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.1458333333333224600 ) ) ; +#5647 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.2152777777777675500 ) ) ; +#5648 = ORIENTED_EDGE ( 'NONE', *, *, #18359, .T. ) ; +#5649 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#5650 = EDGE_CURVE ( 'NONE', #9899, #11076, #17395, .T. ) ; +#5651 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.572916666666667400 ) ) ; +#5652 = CIRCLE ( 'NONE', #4002, 0.4687499999999995600 ) ; +#5653 = CARTESIAN_POINT ( 'NONE', ( -0.4581073617749781800, 0.09931871720662120700, 1.484375000000000200 ) ) ; +#5654 = DIRECTION ( 'NONE', ( -0.8306683619109839200, 0.5567675210715170600, 0.0000000000000000000 ) ) ; +#5655 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.4027777777777694600 ) ) ; +#5656 = VERTEX_POINT ( 'NONE', #5455 ) ; +#5657 = CIRCLE ( 'NONE', #16111, 0.4687499999999995600 ) ; +#5658 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.8437499999999946700 ) ) ; +#5659 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.04513888888890076800 ) ) ; +#5660 = LINE ( 'NONE', #1620, #4308 ) ; +#5661 = LINE ( 'NONE', #286, #2473 ) ; +#5662 = ORIENTED_EDGE ( 'NONE', *, *, #16140, .T. ) ; +#5663 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5664 = ORIENTED_EDGE ( 'NONE', *, *, #18527, .T. ) ; +#5665 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, -2.451990884535389300E-025, 1.525850221280107700 ) ) ; +#5666 = FACE_OUTER_BOUND ( 'NONE', #6072, .T. ) ; +#5667 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.8940972222222176600 ) ) ; +#5668 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#5669 = ADVANCED_FACE ( 'NONE', ( #16472 ), #17637, .T. ) ; +#5670 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.104166666666663900 ) ) ; +#5671 = EDGE_CURVE ( 'NONE', #6720, #71, #1701, .T. ) ; +#5672 = ORIENTED_EDGE ( 'NONE', *, *, #14541, .T. ) ; +#5673 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.569444444444445500 ) ) ; +#5674 = VERTEX_POINT ( 'NONE', #4250 ) ; +#5675 = LINE ( 'NONE', #4907, #2471 ) ; +#5676 = DIRECTION ( 'NONE', ( -0.03782022621434901600, -0.9992845593168622200, 0.0000000000000000000 ) ) ; +#5677 = VECTOR ( 'NONE', #13481, 39.37007874015748100 ) ; +#5678 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.124999999999997100 ) ) ; +#5679 = FACE_OUTER_BOUND ( 'NONE', #3367, .T. ) ; +#5680 = DIRECTION ( 'NONE', ( -0.9992845593168624400, 0.03782022621434159200, 0.0000000000000000000 ) ) ; +#5681 = EDGE_LOOP ( 'NONE', ( #12044, #14745, #10705, #9853 ) ) ; +#5682 = CARTESIAN_POINT ( 'NONE', ( 3.205444573719471800E-017, 1.177307252514843400E-017, 3.802149639073280500 ) ) ; +#5683 = CONICAL_SURFACE ( 'NONE', #3551, 0.4687475818742556400, 0.1745329251994259000 ) ; +#5684 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.116319444444441800 ) ) ; +#5685 = EDGE_CURVE ( 'NONE', #6651, #11006, #16714, .T. ) ; +#5686 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.347222222222221000 ) ) ; +#5687 = DIRECTION ( 'NONE', ( 0.9996874511566102800, 0.02499999999999943900, -0.0000000000000000000 ) ) ; +#5688 = CARTESIAN_POINT ( 'NONE', ( 1.447059404449155500E-017, 6.674558278121623600E-017, -1.174024639073239600 ) ) ; +#5689 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, 0.1545138888889018300 ) ) ; +#5690 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.121527777777774600 ) ) ; +#5691 = CARTESIAN_POINT ( 'NONE', ( -0.4669405755743601900, 0.04111927036374448500, 1.484375000000000200 ) ) ; +#5692 = AXIS2_PLACEMENT_3D ( 'NONE', #12329, #16764, #14127 ) ; +#5693 = CARTESIAN_POINT ( 'NONE', ( -0.1051863658125202500, 0.4567957869192252300, 1.590308733529502500 ) ) ; +#5694 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.7013888888888828400 ) ) ; +#5695 = EDGE_LOOP ( 'NONE', ( #3502, #14008, #17991, #15140, #4678, #14528 ) ) ; +#5696 = DIRECTION ( 'NONE', ( -0.9584846895403633700, 0.2851439985633802400, 0.0000000000000000000 ) ) ; +#5697 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #16365, #209, #3173, #10444, #13483, #9104, #17984, #4766, #1627 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7500000000000000000, 0.7537878787878787800, 0.7575757575757575700, 0.7613636363636363500, 0.7651515151515151400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#5698 = ORIENTED_EDGE ( 'NONE', *, *, #4660, .T. ) ; +#5699 = ORIENTED_EDGE ( 'NONE', *, *, #5023, .T. ) ; +#5700 = CONICAL_SURFACE ( 'NONE', #7925, 0.4610132068742565100, 0.1745329251994300600 ) ; +#5701 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.427083333333333000 ) ) ; +#5702 = FACE_OUTER_BOUND ( 'NONE', #9552, .T. ) ; +#5703 = FACE_OUTER_BOUND ( 'NONE', #16656, .T. ) ; +#5704 = EDGE_LOOP ( 'NONE', ( #14611, #14563, #9924, #4485 ) ) ; +#5705 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.2708333333333237100 ) ) ; +#5706 = LINE ( 'NONE', #10195, #13361 ) ; +#5707 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.5156249999999924500 ) ) ; +#5708 = DIRECTION ( 'NONE', ( -0.5035107695491609600, -0.8639889495520248800, 0.0000000000000000000 ) ) ; +#5709 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.2013888888888783800 ) ) ; +#5710 = CARTESIAN_POINT ( 'NONE', ( -0.3624522803384139800, 0.2848886122504193900, 1.484375000000000200 ) ) ; +#5711 = ADVANCED_FACE ( 'NONE', ( #6567 ), #8888, .T. ) ; +#5712 = EDGE_CURVE ( 'NONE', #6691, #5275, #4949, .T. ) ; +#5713 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#5714 = PLANE ( 'NONE', #11228 ) ; +#5715 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.496527777777777900 ) ) ; +#5716 = EDGE_LOOP ( 'NONE', ( #2960, #10795, #15191, #11471 ) ) ; +#5717 = EDGE_CURVE ( 'NONE', #14108, #15897, #16232, .T. ) ; +#5718 = ORIENTED_EDGE ( 'NONE', *, *, #6760, .T. ) ; +#5719 = CARTESIAN_POINT ( 'NONE', ( -0.4669405755743629700, -0.04111927036374798900, 1.484375000000000200 ) ) ; +#5720 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#5721 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.538194444444445100 ) ) ; +#5722 = AXIS2_PLACEMENT_3D ( 'NONE', #7545, #7490, #1689 ) ; +#5723 = ORIENTED_EDGE ( 'NONE', *, *, #362, .F. ) ; +#5724 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.4791666666666589700 ) ) ; +#5725 = LINE ( 'NONE', #12665, #11074 ) ; +#5726 = LINE ( 'NONE', #3156, #4818 ) ; +#5727 = ORIENTED_EDGE ( 'NONE', *, *, #16894, .T. ) ; +#5728 = ORIENTED_EDGE ( 'NONE', *, *, #7845, .F. ) ; +#5729 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.3784722222222134900 ) ) ; +#5730 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.7951388888888831800 ) ) ; +#5731 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.305555555555554000 ) ) ; +#5732 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5733 = CARTESIAN_POINT ( 'NONE', ( 0.4120995984523190800, -0.2066569569792496000, 1.143750000000000000 ) ) ; +#5734 = VERTEX_POINT ( 'NONE', #18800 ) ; +#5735 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.9982638888888851800 ) ) ; +#5736 = DIRECTION ( 'NONE', ( 0.6078269655510819500, -0.7940695057417603800, 0.0000000000000000000 ) ) ; +#5737 = EDGE_CURVE ( 'NONE', #7122, #1061, #584, .T. ) ; +#5738 = ORIENTED_EDGE ( 'NONE', *, *, #4796, .T. ) ; +#5739 = ORIENTED_EDGE ( 'NONE', *, *, #14414, .F. ) ; +#5740 = VECTOR ( 'NONE', #452, 39.37007874015748100 ) ; +#5741 = FACE_OUTER_BOUND ( 'NONE', #15506, .T. ) ; +#5742 = EDGE_CURVE ( 'NONE', #16951, #3630, #8641, .T. ) ; +#5743 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5744 = ORIENTED_EDGE ( 'NONE', *, *, #14967, .T. ) ; +#5745 = ORIENTED_EDGE ( 'NONE', *, *, #14191, .T. ) ; +#5746 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.159722222222219900 ) ) ; +#5747 = CYLINDRICAL_SURFACE ( 'NONE', #8103, 0.4610132068742565100 ) ; +#5748 = EDGE_CURVE ( 'NONE', #772, #2293, #1266, .T. ) ; +#5749 = AXIS2_PLACEMENT_3D ( 'NONE', #8840, #2909, #4262 ) ; +#5750 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.437500000000000000 ) ) ; +#5751 = CARTESIAN_POINT ( 'NONE', ( -0.1833993232404380900, -0.4313803237839132800, 1.484375000000000200 ) ) ; +#5752 = CARTESIAN_POINT ( 'NONE', ( -0.1589412568245201800, -0.4327480257511615600, 1.187613820323598600 ) ) ; +#5753 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5754 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.07638888888890114900 ) ) ; +#5755 = ORIENTED_EDGE ( 'NONE', *, *, #16636, .T. ) ; +#5756 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.071180555555552200 ) ) ; +#5757 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.194444444444442000 ) ) ; +#5758 = ORIENTED_EDGE ( 'NONE', *, *, #15634, .T. ) ; +#5759 = DIRECTION ( 'NONE', ( 0.08743372756788406200, 0.1500301066140694600, 0.9848077530122089100 ) ) ; +#5760 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5761 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, 0.1093750000000128200 ) ) ; +#5762 = CARTESIAN_POINT ( 'NONE', ( 0.2615678826637189400, 0.3796253675287058500, 1.484375000000000200 ) ) ; +#5763 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.211805555555553100 ) ) ; +#5764 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#5765 = CARTESIAN_POINT ( 'NONE', ( -0.2695375572674101300, -0.1239322755760034100, 0.1380552090563349800 ) ) ; +#5766 = ORIENTED_EDGE ( 'NONE', *, *, #7218, .F. ) ; +#5767 = CIRCLE ( 'NONE', #6643, 0.4687475818742578600 ) ; +#5768 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #16729, #5066, #16931, #516 ), + .UNSPECIFIED., .F., .F., + ( 4, 4 ), + ( 0.001604976197543656300, 0.003344665702130048300 ), + .UNSPECIFIED. ) ; +#5769 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.5069444444444369800 ) ) ; +#5770 = ORIENTED_EDGE ( 'NONE', *, *, #4246, .F. ) ; +#5771 = EDGE_CURVE ( 'NONE', #3024, #8592, #1732, .T. ) ; +#5772 = ADVANCED_FACE ( 'NONE', ( #12794 ), #11868, .T. ) ; +#5773 = AXIS2_PLACEMENT_3D ( 'NONE', #17679, #7650, #12024 ) ; +#5774 = VERTEX_POINT ( 'NONE', #17452 ) ; +#5775 = EDGE_LOOP ( 'NONE', ( #6167, #14112, #8429, #9023 ) ) ; +#5776 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5777 = AXIS2_PLACEMENT_3D ( 'NONE', #11562, #12981, #17607 ) ; +#5778 = ORIENTED_EDGE ( 'NONE', *, *, #4461, .F. ) ; +#5779 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.04166666666667901600 ) ) ; +#5780 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.1493055555555447800 ) ) ; +#5781 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#5782 = VECTOR ( 'NONE', #9992, 39.37007874015748100 ) ; +#5783 = CARTESIAN_POINT ( 'NONE', ( 0.3535953843793270800, -0.3077285600096869600, 1.593375490995827300 ) ) ; +#5784 = ORIENTED_EDGE ( 'NONE', *, *, #9188, .T. ) ; +#5785 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#5786 = CARTESIAN_POINT ( 'NONE', ( 2.246643514571418600E-017, -2.551234510058983000E-016, -1.174024639073280000 ) ) ; +#5787 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.333333333333331900 ) ) ; +#5788 = ORIENTED_EDGE ( 'NONE', *, *, #8344, .T. ) ; +#5789 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#5790 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.444444444444444400 ) ) ; +#5791 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.3368055555555467500 ) ) ; +#5792 = CARTESIAN_POINT ( 'NONE', ( 0.04422016122815657100, 0.2985554741263436500, 0.1521932907915281000 ) ) ; +#5793 = VERTEX_POINT ( 'NONE', #14491 ) ; +#5794 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.7743055555555497000 ) ) ; +#5795 = EDGE_CURVE ( 'NONE', #5211, #2578, #8410, .T. ) ; +#5796 = DIRECTION ( 'NONE', ( -0.1309892141416668700, -0.1139978744784033400, -0.9848077530122082400 ) ) ; +#5797 = ORIENTED_EDGE ( 'NONE', *, *, #6585, .T. ) ; +#5798 = AXIS2_PLACEMENT_3D ( 'NONE', #14285, #17376, #15944 ) ; +#5799 = ORIENTED_EDGE ( 'NONE', *, *, #14167, .T. ) ; +#5800 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.029513888888885300 ) ) ; +#5801 = VERTEX_POINT ( 'NONE', #9223 ) ; +#5802 = DIRECTION ( 'NONE', ( -0.1873813145857356200, 0.9822872507286865000, 0.0000000000000000000 ) ) ; +#5803 = CARTESIAN_POINT ( 'NONE', ( 1.376255635688564000E-017, -3.125195627036349700E-017, -1.174024639073318900 ) ) ; +#5804 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.083333333333330400 ) ) ; +#5805 = AXIS2_PLACEMENT_3D ( 'NONE', #1978, #15236, #4797 ) ; +#5806 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.159722222222219900 ) ) ; +#5807 = VERTEX_POINT ( 'NONE', #13074 ) ; +#5808 = ADVANCED_FACE ( 'NONE', ( #16944 ), #10701, .F. ) ; +#5809 = DIRECTION ( 'NONE', ( 0.5567675210715226100, -0.8306683619109805900, -0.0000000000000000000 ) ) ; +#5810 = ORIENTED_EDGE ( 'NONE', *, *, #5052, .F. ) ; +#5811 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.4444444444444361500 ) ) ; +#5812 = CARTESIAN_POINT ( 'NONE', ( -0.4684122207840595300, -0.01772813958391639100, 1.143750000000000000 ) ) ; +#5813 = ORIENTED_EDGE ( 'NONE', *, *, #1060, .T. ) ; +#5814 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.001736111111107200 ) ) ; +#5815 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.163194444444441800 ) ) ; +#5816 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5817 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#5818 = CARTESIAN_POINT ( 'NONE', ( -0.4190133544667947700, 0.2101240212147303900, 1.143750000000000000 ) ) ; +#5819 = DIRECTION ( 'NONE', ( -0.9961450333403962800, -0.08772156263576844100, 0.0000000000000000000 ) ) ; +#5820 = EDGE_CURVE ( 'NONE', #10817, #12651, #15990, .T. ) ; +#5821 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.9618055555555513600 ) ) ; +#5822 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#5823 = LINE ( 'NONE', #330, #1474 ) ; +#5824 = ORIENTED_EDGE ( 'NONE', *, *, #17411, .F. ) ; +#5825 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.4513888888888809000 ) ) ; +#5826 = EDGE_LOOP ( 'NONE', ( #2288, #14234, #13647, #18487 ) ) ; +#5827 = DIRECTION ( 'NONE', ( 0.6078269655510708500, 0.7940695057417690400, 0.0000000000000000000 ) ) ; +#5828 = EDGE_CURVE ( 'NONE', #12487, #3923, #7966, .T. ) ; +#5829 = CARTESIAN_POINT ( 'NONE', ( 0.3238882248696998100, 0.3280694967582948900, 1.187613820323601300 ) ) ; +#5830 = CONICAL_SURFACE ( 'NONE', #18866, 0.4610132068742565100, 0.1745329251994302300 ) ; +#5831 = ORIENTED_EDGE ( 'NONE', *, *, #2091, .F. ) ; +#5832 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.592116737595687900 ) ) ; +#5833 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.2256944444444344800 ) ) ; +#5834 = CARTESIAN_POINT ( 'NONE', ( 0.4375000000000001100, -4.927913012701559200E-016, 0.9687499999999998900 ) ) ; +#5835 = LINE ( 'NONE', #1415, #1954 ) ; +#5836 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.1388888888888778800 ) ) ; +#5837 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.04513888888887728600 ) ) ; +#5838 = CARTESIAN_POINT ( 'NONE', ( 0.2439275027966778300, -0.1355041680315011400, -1.554509589999276000 ) ) ; +#5839 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#5840 = DIRECTION ( 'NONE', ( 0.9992845593168616600, 0.03782022621436287300, 0.0000000000000000000 ) ) ; +#5841 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.309027777777775900 ) ) ; +#5842 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5843 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#5844 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.517361111111111600 ) ) ; +#5845 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.2152777777777678300 ) ) ; +#5846 = VECTOR ( 'NONE', #14312, 39.37007874015748100 ) ; +#5847 = ORIENTED_EDGE ( 'NONE', *, *, #9735, .F. ) ; +#5848 = EDGE_CURVE ( 'NONE', #9653, #675, #1046, .T. ) ; +#5849 = CARTESIAN_POINT ( 'NONE', ( 0.03429653258783221800, 0.2999920627948110500, 0.1525619501304111600 ) ) ; +#5850 = FACE_OUTER_BOUND ( 'NONE', #11736, .T. ) ; +#5851 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.8472222222222169900 ) ) ; +#5852 = EDGE_CURVE ( 'NONE', #9742, #14545, #18776, .T. ) ; +#5853 = CARTESIAN_POINT ( 'NONE', ( -0.4120995984523176900, 0.2066569569792524900, 1.187613820323614800 ) ) ; +#5855 = EDGE_CURVE ( 'NONE', #17805, #16417, #8546, .T. ) ; +#5854 = LINE ( 'NONE', #3808, #5619 ) ; +#5856 = AXIS2_PLACEMENT_3D ( 'NONE', #17370, #8616, #5753 ) ; +#5857 = AXIS2_PLACEMENT_3D ( 'NONE', #4140, #11302, #15719 ) ; +#5858 = CARTESIAN_POINT ( 'NONE', ( 0.2802162586133474800, 0.3660765293230687800, 1.593193105402742800 ) ) ; +#5859 =( NAMED_UNIT ( * ) PLANE_ANGLE_UNIT ( ) SI_UNIT ( $, .RADIAN. ) ); +#5860 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.9010416666666620800 ) ) ; +#5861 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#5862 = FACE_OUTER_BOUND ( 'NONE', #6741, .T. ) ; +#5863 = EDGE_LOOP ( 'NONE', ( #715, #9, #19017, #17083 ) ) ; +#5864 = CARTESIAN_POINT ( 'NONE', ( 0.04632776727398757500, -0.4586795339797638500, 1.588758826628429600 ) ) ; +#5865 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.052083333333330200 ) ) ; +#5866 = CIRCLE ( 'NONE', #2462, 0.4610132068742565100 ) ; +#5867 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.302083333333331900 ) ) ; +#5868 = ORIENTED_EDGE ( 'NONE', *, *, #8223, .F. ) ; +#5869 = LINE ( 'NONE', #4805, #17427 ) ; +#5870 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.104166666666663900 ) ) ; +#5871 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#5872 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.128472222222219400 ) ) ; +#5873 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.6249999999999932300 ) ) ; +#5874 = EDGE_CURVE ( 'NONE', #5801, #13139, #6340, .T. ) ; +#5875 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.043402777777774100 ) ) ; +#5876 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.187499999999997300 ) ) ; +#5877 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#5878 = AXIS2_PLACEMENT_3D ( 'NONE', #7832, #18010, #16583 ) ; +#5879 = CARTESIAN_POINT ( 'NONE', ( -0.2823022464210591700, 0.01884344689942157900, 0.1003277997876553400 ) ) ; +#5880 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.013888888888884800 ) ) ; +#5881 = CARTESIAN_POINT ( 'NONE', ( 0.2410360452891905100, -0.1821758377001450000, 0.1530951400956382100 ) ) ; +#5882 = EDGE_CURVE ( 'NONE', #15962, #437, #14391, .T. ) ; +#5883 = ORIENTED_EDGE ( 'NONE', *, *, #11685, .F. ) ; +#5884 = AXIS2_PLACEMENT_3D ( 'NONE', #9493, #15322, #7812 ) ; +#5885 = VECTOR ( 'NONE', #18757, 39.37007874015748100 ) ; +#5886 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.4826388888888810700 ) ) ; +#5887 = AXIS2_PLACEMENT_3D ( 'NONE', #14753, #3417, #341 ) ; +#5888 = ADVANCED_FACE ( 'NONE', ( #3118 ), #4701, .F. ) ; +#5889 = VECTOR ( 'NONE', #12304, 39.37007874015748900 ) ; +#5890 = CYLINDRICAL_SURFACE ( 'NONE', #4843, 0.4610132068742565100 ) ; +#5891 = EDGE_LOOP ( 'NONE', ( #7926, #2655, #17372, #11077 ) ) ; +#5892 = VERTEX_POINT ( 'NONE', #277 ) ; +#5893 = DIRECTION ( 'NONE', ( -0.8763066800438631400, -0.4817536741017162100, 0.0000000000000000000 ) ) ; +#5894 = VECTOR ( 'NONE', #16335, 39.37007874015748100 ) ; +#5895 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#5896 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.3159722222222130000 ) ) ; +#5897 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#5898 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.05902777777776618100 ) ) ; +#5899 = ORIENTED_EDGE ( 'NONE', *, *, #12237, .F. ) ; +#5900 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.4861111111111032800 ) ) ; +#5901 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.02083333333334551700 ) ) ; +#5902 = CARTESIAN_POINT ( 'NONE', ( -0.1712512428405791900, -0.2302676692833297000, 0.1114228135335038800 ) ) ; +#5903 = ADVANCED_FACE ( 'NONE', ( #10715 ), #18553, .T. ) ; +#5904 = DIRECTION ( 'NONE', ( -0.2728267384564813700, 0.9620631844027702800, 0.0000000000000000000 ) ) ; +#5905 = EDGE_CURVE ( 'NONE', #7606, #12733, #5105, .T. ) ; +#5906 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.3472222222222131100 ) ) ; +#5907 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.378472222222221200 ) ) ; +#5908 = VECTOR ( 'NONE', #5924, 39.37007874015748100 ) ; +#5909 = CARTESIAN_POINT ( 'NONE', ( -0.4684146371797784900, -0.01772823103797906500, 1.484375000000000200 ) ) ; +#5910 = AXIS2_PLACEMENT_3D ( 'NONE', #5236, #3771, #11127 ) ; +#5911 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#5912 = LINE ( 'NONE', #13991, #14684 ) ; +#5913 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.312499999999998700 ) ) ; +#5914 = EDGE_LOOP ( 'NONE', ( #11491, #6517, #16681, #7934 ) ) ; +#5915 = LINE ( 'NONE', #7252, #8254 ) ; +#5916 = LINE ( 'NONE', #1895, #9401 ) ; +#5917 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.06944444444443333100 ) ) ; +#5918 = ORIENTED_EDGE ( 'NONE', *, *, #9861, .F. ) ; +#5919 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.2986111111111015600 ) ) ; +#5920 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.7291666666666604100 ) ) ; +#5921 = VERTEX_POINT ( 'NONE', #3673 ) ; +#5922 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #16463, #4735, #8945, #15048, #1597, #3082, #10543, #13388, #3210 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4015151515151514900, 0.4053030303030302800, 0.4090909090909091200, 0.4128787878787879000, 0.4166666666666666900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#5923 = AXIS2_PLACEMENT_3D ( 'NONE', #9972, #4102, #8359 ) ; +#5924 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5925 = EDGE_LOOP ( 'NONE', ( #18942, #14836, #10967, #2467, #8466, #3682 ) ) ; +#5926 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5927 = CARTESIAN_POINT ( 'NONE', ( -0.4592360163321193000, -0.04044079890273683000, 1.484375000000000200 ) ) ; +#5928 = VERTEX_POINT ( 'NONE', #724 ) ; +#5929 = EDGE_LOOP ( 'NONE', ( #1440, #10224, #2036, #11510 ) ) ; +#5930 = LINE ( 'NONE', #7217, #8480 ) ; +#5932 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.8107638888888836200 ) ) ; +#5931 = LINE ( 'NONE', #10415, #8274 ) ; +#5933 = FACE_OUTER_BOUND ( 'NONE', #535, .T. ) ; +#5934 = EDGE_LOOP ( 'NONE', ( #8977, #9871, #6275, #4382 ) ) ; +#5935 = CARTESIAN_POINT ( 'NONE', ( -0.002867865037773680700, 0.2769990554154914700, 0.08286399342893262200 ) ) ; +#5936 = DIRECTION ( 'NONE', ( 0.02606405807964163500, -0.1716809671555526400, -0.9848077530122085800 ) ) ; +#5937 = LINE ( 'NONE', #3720, #1338 ) ; +#5938 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.6805555555555492500 ) ) ; +#5939 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5940 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.003472222222218800 ) ) ; +#5941 = EDGE_CURVE ( 'NONE', #8105, #14108, #3557, .T. ) ; +#5942 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.194444444444442400 ) ) ; +#5943 = CARTESIAN_POINT ( 'NONE', ( 0.4492896982220422300, 0.1336612493265935100, 1.143750000000000000 ) ) ; +#5944 = VERTEX_POINT ( 'NONE', #11017 ) ; +#5945 = VERTEX_POINT ( 'NONE', #15375 ) ; +#5946 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5947 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#5948 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.526041666666667200 ) ) ; +#5949 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #12217, #6144, #1655, #11953, #16458, #7647, #4532, #10608, #17943 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2196969696969697200, 0.2234848484848485100, 0.2272727272727272900, 0.2310606060606060800, 0.2348484848484848600 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#5950 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.8975694444444396500 ) ) ; +#5951 = EDGE_CURVE ( 'NONE', #4230, #1532, #4932, .T. ) ; +#5952 = VERTEX_POINT ( 'NONE', #10897 ) ; +#5953 = EDGE_LOOP ( 'NONE', ( #14928, #9713, #9253, #6473, #9162, #14016 ) ) ; +#5954 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.09722222222221114900 ) ) ; +#5955 = LINE ( 'NONE', #6541, #17726 ) ; +#5956 = CARTESIAN_POINT ( 'NONE', ( 0.1257767296168668100, -0.4435238338571802500, 1.484375000000000200 ) ) ; +#5957 = VERTEX_POINT ( 'NONE', #5080 ) ; +#5958 = VERTEX_POINT ( 'NONE', #2076 ) ; +#5959 = CARTESIAN_POINT ( 'NONE', ( -0.1316724577752441900, 0.2457552063176391700, 0.08899232807564561000 ) ) ; +#5960 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.9965277777777736800 ) ) ; +#5961 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#5962 = PRODUCT_DEFINITION_SHAPE ( 'NONE', 'NONE', #1862 ) ; +#5963 = AXIS2_PLACEMENT_3D ( 'NONE', #6346, #12030, #13582 ) ; +#5964 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, 0.1284722222222350600 ) ) ; +#5965 = CIRCLE ( 'NONE', #10579, 0.4610132068742565100 ) ; +#5966 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.3368055555555467500 ) ) ; +#5967 = DIRECTION ( 'NONE', ( -0.6179619325485540300, 0.7862080194966573100, 0.0000000000000000000 ) ) ; +#5968 = ORIENTED_EDGE ( 'NONE', *, *, #12202, .F. ) ; +#5969 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#5970 = ORIENTED_EDGE ( 'NONE', *, *, #1716, .F. ) ; +#5971 = FACE_OUTER_BOUND ( 'NONE', #9436, .T. ) ; +#5972 = LINE ( 'NONE', #10416, #13596 ) ; +#5973 = ORIENTED_EDGE ( 'NONE', *, *, #5248, .F. ) ; +#5974 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.2638888888888791300 ) ) ; +#5975 = ORIENTED_EDGE ( 'NONE', *, *, #14516, .T. ) ; +#5976 = VECTOR ( 'NONE', #13350, 39.37007874015748900 ) ; +#5977 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.06597222222221077500 ) ) ; +#5978 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.06597222222221077500 ) ) ; +#5979 = CARTESIAN_POINT ( 'NONE', ( -0.1401119715425641900, -0.2515832449954685200, 0.1129047914280167400 ) ) ; +#5980 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #17485, #17352, #15860, #6938, #8602, #18968, #2732, #1143, #11379 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1439393939393939200, 0.1477272727272727100, 0.1515151515151514900, 0.1553030303030302800, 0.1590909090909090600 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#5981 = EDGE_CURVE ( 'NONE', #1891, #6720, #16700, .T. ) ; +#5982 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5983 = CARTESIAN_POINT ( 'NONE', ( 0.4581073617749789600, -0.09931871720661822300, 1.143750000000000000 ) ) ; +#5984 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5985 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#5986 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.354166666666665400 ) ) ; +#5987 = EDGE_CURVE ( 'NONE', #6867, #9148, #11401, .T. ) ; +#5988 = AXIS2_PLACEMENT_3D ( 'NONE', #1278, #15887, #4050 ) ; +#5989 = DIRECTION ( 'NONE', ( 0.02499999999999943600, -0.9996874511566102800, 0.0000000000000000000 ) ) ; +#5990 = AXIS2_PLACEMENT_3D ( 'NONE', #12151, #6344, #6293 ) ; +#5991 = CARTESIAN_POINT ( 'NONE', ( -0.3293237658787596700, 0.3335752085024176700, 1.593467001493433100 ) ) ; +#5992 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.267361111111109600 ) ) ; +#5993 = AXIS2_PLACEMENT_3D ( 'NONE', #8951, #15110, #1919 ) ; +#5994 = VERTEX_POINT ( 'NONE', #12435 ) ; +#5995 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.2118055555555458700 ) ) ; +#5996 = PLANE ( 'NONE', #4226 ) ; +#5997 = ORIENTED_EDGE ( 'NONE', *, *, #19112, .T. ) ; +#5998 = VERTEX_POINT ( 'NONE', #3600 ) ; +#5999 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.4722222222222139900 ) ) ; +#6000 = EDGE_LOOP ( 'NONE', ( #5778, #10154, #13795, #1284 ) ) ; +#6001 = EDGE_LOOP ( 'NONE', ( #13212, #3425, #5053, #18167 ) ) ; +#6002 = DIRECTION ( 'NONE', ( 0.07982527466453530300, 0.1542128889936769700, -0.9848077530122085800 ) ) ; +#6003 = ADVANCED_FACE ( 'NONE', ( #18761 ), #12561, .F. ) ; +#6004 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#6005 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#6006 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.7690972222222166600 ) ) ; +#6007 = CARTESIAN_POINT ( 'NONE', ( 0.3624522803384160900, -0.2848886122504168400, 1.143750000000000000 ) ) ; +#6008 = EDGE_CURVE ( 'NONE', #7008, #1668, #16211, .T. ) ; +#6009 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#6010 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.4895833333333254300 ) ) ; +#6011 = VERTEX_POINT ( 'NONE', #13920 ) ; +#6012 = ORIENTED_EDGE ( 'NONE', *, *, #7062, .T. ) ; +#6013 = EDGE_CURVE ( 'NONE', #3075, #14303, #12779, .T. ) ; +#6014 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6015 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.9374999999999958900 ) ) ; +#6016 = ORIENTED_EDGE ( 'NONE', *, *, #17568, .T. ) ; +#6017 = EDGE_CURVE ( 'NONE', #15360, #5275, #8864, .T. ) ; +#6018 = AXIS2_PLACEMENT_3D ( 'NONE', #4207, #14505, #5654 ) ; +#6019 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.239583333333331700 ) ) ; +#6020 = FACE_OUTER_BOUND ( 'NONE', #1178, .T. ) ; +#6021 = ORIENTED_EDGE ( 'NONE', *, *, #6482, .T. ) ; +#6022 = DIRECTION ( 'NONE', ( 0.1309892141416637000, 0.1139978744784006100, -0.9848077530122091300 ) ) ; +#6023 = AXIS2_PLACEMENT_3D ( 'NONE', #6812, #3854, #15881 ) ; +#6024 = DIRECTION ( 'NONE', ( 0.1552240656481592400, -0.07784072873953050400, 0.9848077530122082400 ) ) ; +#6025 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.589564174286821800 ) ) ; +#6026 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -1.124999999999997100 ) ) ; +#6027 = CARTESIAN_POINT ( 'NONE', ( 0.04104193570986974800, -0.2649795619646558300, 1.259896156426997900 ) ) ; +#6028 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.7413194444444384200 ) ) ; +#6029 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6030 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#6031 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#6032 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#6033 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.9097222222222174400 ) ) ; +#6034 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6035 = DIRECTION ( 'NONE', ( -0.05986782849628430300, 0.1630016340966681800, 0.9848077530122085800 ) ) ; +#6036 = ORIENTED_EDGE ( 'NONE', *, *, #12517, .F. ) ; +#6037 = ORIENTED_EDGE ( 'NONE', *, *, #7393, .T. ) ; +#6038 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.4479166666666586900 ) ) ; +#6039 = ORIENTED_EDGE ( 'NONE', *, *, #3434, .F. ) ; +#6040 = LINE ( 'NONE', #15658, #16413 ) ; +#6041 = EDGE_LOOP ( 'NONE', ( #196, #14735, #9060, #4554, #2084, #15850 ) ) ; +#6042 = EDGE_CURVE ( 'NONE', #14055, #15623, #17393, .T. ) ; +#6043 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6044 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.4253472222222139900 ) ) ; +#6045 = AXIS2_PLACEMENT_3D ( 'NONE', #316, #16598, #15171 ) ; +#6046 = ORIENTED_EDGE ( 'NONE', *, *, #13133, .T. ) ; +#6047 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.4027777777777693000 ) ) ; +#6048 = AXIS2_PLACEMENT_3D ( 'NONE', #4920, #16655, #10794 ) ; +#6049 = CARTESIAN_POINT ( 'NONE', ( 0.4669405755743634700, -0.04111927036374128700, 1.143750000000000000 ) ) ; +#6050 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 1.202013117212275700E-014 ) ) ; +#6051 = CARTESIAN_POINT ( 'NONE', ( 0.4418741004648765700, 0.1314551491986613600, 1.440511179676387000 ) ) ; +#6052 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.02430555555554378100 ) ) ; +#6053 = CARTESIAN_POINT ( 'NONE', ( 0.2404623202564773500, -0.1682556576212606600, 0.1293303096102546000 ) ) ; +#6054 = EDGE_LOOP ( 'NONE', ( #2126, #6645, #17074, #10283, #14113, #11478 ) ) ; +#6055 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.5329861111111035000 ) ) ; +#6056 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6057 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.4062499999999914000 ) ) ; +#6058 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.409722222222221400 ) ) ; +#6059 = CARTESIAN_POINT ( 'NONE', ( 0.1589412568245171800, 0.4327480257511626700, 1.187613820323598600 ) ) ; +#6060 = CONICAL_SURFACE ( 'NONE', #18612, 0.4687475818742555300, 0.1745329251994286500 ) ; +#6061 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 0.1443375672974061000, 1.548179320649367500 ) ) ; +#6062 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.434027777777777700 ) ) ; +#6063 = ORIENTED_EDGE ( 'NONE', *, *, #12003, .T. ) ; +#6064 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.06597222222221131600 ) ) ; +#6065 = ORIENTED_EDGE ( 'NONE', *, *, #1845, .T. ) ; +#6066 = CARTESIAN_POINT ( 'NONE', ( 0.2224280182367595600, 0.1997987585028982700, 0.1444300040101766700 ) ) ; +#6067 = LINE ( 'NONE', #7929, #11380 ) ; +#6068 = VERTEX_POINT ( 'NONE', #18169 ) ; +#6069 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.6493055555555487000 ) ) ; +#6070 = EDGE_CURVE ( 'NONE', #9514, #7863, #14842, .T. ) ; +#6071 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, -5.463695987421893100E-016, 1.249999999999999800 ) ) ; +#6072 = EDGE_LOOP ( 'NONE', ( #3472, #1921, #8472, #13680, #2373, #1107 ) ) ; +#6073 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#6074 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6075 = VERTEX_POINT ( 'NONE', #13784 ) ; +#6076 = DATE_AND_TIME ( #10690, #16208 ) ; +#6077 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.6961805555555493600 ) ) ; +#6078 = CARTESIAN_POINT ( 'NONE', ( -0.4219140922835695200, -0.1858000959230583500, 1.440511179676384800 ) ) ; +#6079 = ORIENTED_EDGE ( 'NONE', *, *, #6250, .T. ) ; +#6080 = CARTESIAN_POINT ( 'NONE', ( 0.4581073617749789600, -0.09931871720661822300, 1.589564174286821600 ) ) ; +#6081 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -1.284722222222220800 ) ) ; +#6082 = EDGE_CURVE ( 'NONE', #6476, #14108, #10011, .T. ) ; +#6083 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#6084 = PLANE ( 'NONE', #4548 ) ; +#6085 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.7534722222222166600 ) ) ; +#6086 = AXIS2_PLACEMENT_3D ( 'NONE', #1601, #11703, #11774 ) ; +#6087 = CONICAL_SURFACE ( 'NONE', #2059, 0.4610132068742565100, 0.1745329251994264300 ) ; +#6088 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.9930555555555518100 ) ) ; +#6089 = CARTESIAN_POINT ( 'NONE', ( -1.569246278610595900E-016, 1.803141837253106300E-016, 3.802149639073319600 ) ) ; +#6090 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#6091 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.501736111111111400 ) ) ; +#6092 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.7100694444444382000 ) ) ; +#6093 = CARTESIAN_POINT ( 'NONE', ( -2.241780398015103200E-017, -2.575916910361609300E-017, -1.174024639073300200 ) ) ; +#6094 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#6095 = VECTOR ( 'NONE', #2142, 39.37007874015748900 ) ; +#6096 = DIRECTION ( 'NONE', ( 0.1500969283399770900, -0.9886712861729645100, 0.0000000000000000000 ) ) ; +#6097 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6098 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.9583333333333289300 ) ) ; +#6099 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.1458333333333462500 ) ) ; +#6100 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.2499999999999905100 ) ) ; +#6101 = FACE_OUTER_BOUND ( 'NONE', #17563, .T. ) ; +#6102 = ADVANCED_FACE ( 'NONE', ( #567 ), #15199, .F. ) ; +#6103 = CARTESIAN_POINT ( 'NONE', ( -0.3624522803384121500, -0.2848886122504218900, 1.593375490995827300 ) ) ; +#6104 = EDGE_CURVE ( 'NONE', #2569, #8543, #6793, .T. ) ; +#6105 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.3177083333333240400 ) ) ; +#6106 = AXIS2_PLACEMENT_3D ( 'NONE', #12257, #9346, #10706 ) ; +#6107 = LINE ( 'NONE', #7970, #17641 ) ; +#6108 = ORIENTED_EDGE ( 'NONE', *, *, #9188, .F. ) ; +#6109 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.8993055555555509200 ) ) ; +#6110 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.1111111111111000600 ) ) ; +#6111 = FACE_BOUND ( 'NONE', #17229, .T. ) ; +#6112 = CARTESIAN_POINT ( 'NONE', ( 0.1803732187962983300, 0.4242625117230472400, 1.591590229135180200 ) ) ; +#6113 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.04861111111112360900 ) ) ; +#6114 = CARTESIAN_POINT ( 'NONE', ( -0.2251343199966908100, -0.1770121018574487000, 0.1085495024566433400 ) ) ; +#6115 = ADVANCED_FACE ( 'NONE', ( #1039 ), #6087, .T. ) ; +#6116 = VERTEX_POINT ( 'NONE', #14291 ) ; +#6117 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.5781249999999927800 ) ) ; +#6118 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#6119 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#6120 = DIRECTION ( 'NONE', ( -0.9584846895403613700, 0.2851439985633866800, 0.0000000000000000000 ) ) ; +#6121 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.093749999999996900 ) ) ; +#6122 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#6123 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.368055555555554900 ) ) ; +#6124 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.1701388888888788200 ) ) ; +#6125 = EDGE_CURVE ( 'NONE', #860, #2304, #7720, .T. ) ; +#6126 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.260416666666665000 ) ) ; +#6127 = VECTOR ( 'NONE', #5759, 39.37007874015748900 ) ; +#6128 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.6597222222222154400 ) ) ; +#6129 = EDGE_CURVE ( 'NONE', #12745, #7313, #3798, .T. ) ; +#6130 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6131 = EDGE_CURVE ( 'NONE', #18888, #13527, #6553, .T. ) ; +#6132 = VECTOR ( 'NONE', #5140, 39.37007874015748900 ) ; +#6133 = ORIENTED_EDGE ( 'NONE', *, *, #13759, .F. ) ; +#6134 = AXIS2_PLACEMENT_3D ( 'NONE', #8276, #6274, #868 ) ; +#6135 = DIRECTION ( 'NONE', ( 0.06279051952931694000, -0.9980267284282713400, 0.0000000000000000000 ) ) ; +#6136 = VECTOR ( 'NONE', #15052, 39.37007874015748100 ) ; +#6137 = CARTESIAN_POINT ( 'NONE', ( -0.1085080763983222000, 0.2548600068649705700, 0.08286399342893272000 ) ) ; +#6138 = DIRECTION ( 'NONE', ( 0.9584846895403613700, -0.2851439985633866800, 0.0000000000000000000 ) ) ; +#6139 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6140 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.8402777777777729100 ) ) ; +#6141 = VERTEX_POINT ( 'NONE', #8241 ) ; +#6142 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.079861111111108100 ) ) ; +#6143 = LINE ( 'NONE', #18520, #2915 ) ; +#6144 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.1631944444444339600 ) ) ; +#6145 = LINE ( 'NONE', #1447, #10050 ) ; +#6146 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -3.585550491684345600E-016, 0.1792153418691395400 ) ) ; +#6147 = FACE_OUTER_BOUND ( 'NONE', #9378, .T. ) ; +#6148 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.152777777777775200 ) ) ; +#6149 = ORIENTED_EDGE ( 'NONE', *, *, #3681, .T. ) ; +#6150 = DIRECTION ( 'NONE', ( -0.7543368200092185300, -0.6564875946873480700, 0.0000000000000000000 ) ) ; +#6151 = ORIENTED_EDGE ( 'NONE', *, *, #1688, .T. ) ; +#6152 = CARTESIAN_POINT ( 'NONE', ( -0.2089580642901299200, -0.1680331399275628000, 1.259896156426997900 ) ) ; +#6153 = EDGE_CURVE ( 'NONE', #4890, #15089, #15536, .T. ) ; +#6154 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.7031249999999937800 ) ) ; +#6155 = VECTOR ( 'NONE', #7504, 39.37007874015748100 ) ; +#6156 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.5798611111111040600 ) ) ; +#6157 = AXIS2_PLACEMENT_3D ( 'NONE', #184, #10488, #5961 ) ; +#6158 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.6388888888888820700 ) ) ; +#6159 = CARTESIAN_POINT ( 'NONE', ( -0.3238882248697022000, -0.3280694967582925000, 1.143750000000000000 ) ) ; +#6160 = CARTESIAN_POINT ( 'NONE', ( 0.2388765923169405800, 0.1914009959218288500, 0.1628187964417833200 ) ) ; +#6161 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.6909722222222157700 ) ) ; +#6162 = CARTESIAN_POINT ( 'NONE', ( 0.3037093888404724900, -7.227623398736650200E-015, 0.1578530394970854300 ) ) ; +#6163 = AXIS2_PLACEMENT_3D ( 'NONE', #18601, #2374, #11269 ) ; +#6164 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.2256944444444347100 ) ) ; +#6165 = ORIENTED_EDGE ( 'NONE', *, *, #4515, .F. ) ; +#6166 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.8749999999999952300 ) ) ; +#6167 = ORIENTED_EDGE ( 'NONE', *, *, #13885, .F. ) ; +#6168 = VECTOR ( 'NONE', #16001, 39.37007874015748100 ) ; +#6169 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.3211805555555463700 ) ) ; +#6170 = FACE_BOUND ( 'NONE', #14189, .T. ) ; +#6171 = VECTOR ( 'NONE', #12799, 39.37007874015748900 ) ; +#6172 = EDGE_LOOP ( 'NONE', ( #221, #15749, #16390, #1964 ) ) ; +#6173 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#6174 = VECTOR ( 'NONE', #294, 39.37007874015748100 ) ; +#6175 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#6176 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, 0.05208333333334562400 ) ) ; +#6177 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6178 = CARTESIAN_POINT ( 'NONE', ( -0.4505462270817873200, -0.09767944602040194700, 1.187613820323599700 ) ) ; +#6179 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.5815972222222149900 ) ) ; +#6180 = CARTESIAN_POINT ( 'NONE', ( 0.1257767296168668100, -0.4435238338571802500, 1.143750000000000000 ) ) ; +#6181 = EDGE_CURVE ( 'NONE', #7357, #12530, #3098, .T. ) ; +#6182 = CARTESIAN_POINT ( 'NONE', ( 0.4606833792705947200, 0.01743562377179322700, 1.187613820323634800 ) ) ; +#6183 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #15649, #9930, #14304, #2395, #12713, #17266, #11108, #9797, #3874 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2045454545454545900, 0.2083333333333333700, 0.2121212121212121500, 0.2159090909090909400, 0.2196969696969697200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#6184 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.7222222222222161000 ) ) ; +#6185 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6186 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.107638888888886000 ) ) ; +#6187 = ORIENTED_EDGE ( 'NONE', *, *, #16871, .T. ) ; +#6188 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.229166666666665000 ) ) ; +#6189 = EDGE_LOOP ( 'NONE', ( #564, #6456, #8394, #40, #18455, #7277 ) ) ; +#6190 = EDGE_LOOP ( 'NONE', ( #14993, #5107, #10799, #10301, #5278, #6206 ) ) ; +#6191 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.04513888888890076100 ) ) ; +#6192 = CONICAL_SURFACE ( 'NONE', #16044, 0.4610132068742565100, 0.1745329251994276200 ) ; +#6193 = VECTOR ( 'NONE', #17879, 39.37007874015748100 ) ; +#6194 = LINE ( 'NONE', #1269, #9195 ) ; +#6195 = ORIENTED_EDGE ( 'NONE', *, *, #9729, .F. ) ; +#6196 = DIRECTION ( 'NONE', ( -0.5145511247964168500, -0.8574597016599335700, 0.0000000000000000000 ) ) ; +#6197 = FACE_OUTER_BOUND ( 'NONE', #12878, .T. ) ; +#6198 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.5729166666666591900 ) ) ; +#6199 = AXIS2_PLACEMENT_3D ( 'NONE', #5113, #15597, #5310 ) ; +#6200 = ADVANCED_FACE ( 'NONE', ( #8396 ), #16998, .F. ) ; +#6201 = DIRECTION ( 'NONE', ( 0.8639889495520145500, 0.5035107695491790600, -0.0000000000000000000 ) ) ; +#6202 = EDGE_LOOP ( 'NONE', ( #46, #7826, #16051, #12676 ) ) ; +#6203 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#6204 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#6205 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.281249999999998400 ) ) ; +#6206 = ORIENTED_EDGE ( 'NONE', *, *, #15027, .T. ) ; +#6207 = VECTOR ( 'NONE', #4293, 39.37007874015748900 ) ; +#6208 = VECTOR ( 'NONE', #4672, 39.37007874015748900 ) ; +#6209 = DIRECTION ( 'NONE', ( -0.5035107695491730700, 0.8639889495520179900, 0.0000000000000000000 ) ) ; +#6210 = ORIENTED_EDGE ( 'NONE', *, *, #18100, .F. ) ; +#6211 = VERTEX_POINT ( 'NONE', #11337 ) ; +#6212 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.8784722222222177700 ) ) ; +#6213 = EDGE_CURVE ( 'NONE', #7306, #2527, #4472, .T. ) ; +#6214 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.9340277777777736800 ) ) ; +#6215 = ADVANCED_FACE ( 'NONE', ( #7259 ), #2869, .T. ) ; +#6216 = CARTESIAN_POINT ( 'NONE', ( 0.04632776727397798500, 0.4586795339797648000, 1.588758826628429200 ) ) ; +#6217 = DIRECTION ( 'NONE', ( -0.9961450333403972800, 0.08772156263575463200, 0.0000000000000000000 ) ) ; +#6218 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#6219 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.425347222222221900 ) ) ; +#6220 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6221 = EDGE_LOOP ( 'NONE', ( #16437, #768, #12513, #13324 ) ) ; +#6222 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.8871527777777729100 ) ) ; +#6223 = EDGE_CURVE ( 'NONE', #10425, #11322, #4018, .T. ) ; +#6224 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.4166666666666581900 ) ) ; +#6225 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.6527777777777711300 ) ) ; +#6226 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#6227 = CARTESIAN_POINT ( 'NONE', ( 0.04971185826916206500, 0.3035656620137672800, 0.1681738284863236500 ) ) ; +#6228 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.8263888888888834000 ) ) ; +#6229 = AXIS2_PLACEMENT_3D ( 'NONE', #15336, #8017, #9508 ) ; +#6230 = CARTESIAN_POINT ( 'NONE', ( -0.3238882248697046400, 0.3280694967582902200, 1.593467001493433100 ) ) ; +#6231 = ORIENTED_EDGE ( 'NONE', *, *, #11092, .T. ) ; +#6232 = ORIENTED_EDGE ( 'NONE', *, *, #16483, .T. ) ; +#6233 = CONICAL_SURFACE ( 'NONE', #1568, 0.4610132068742565100, 0.1745329251994283700 ) ; +#6234 = CIRCLE ( 'NONE', #10243, 0.4610132068742565100 ) ; +#6235 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.1909722222222123000 ) ) ; +#6236 = ORIENTED_EDGE ( 'NONE', *, *, #4186, .T. ) ; +#6237 = VERTEX_POINT ( 'NONE', #12625 ) ; +#6238 = VECTOR ( 'NONE', #17809, 39.37007874015748100 ) ; +#6239 = PLANE ( 'NONE', #12725 ) ; +#6240 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.3003472222222128300 ) ) ; +#6241 = CARTESIAN_POINT ( 'NONE', ( -0.01152533017185643000, -0.4608691177296606000, 1.587227003692501100 ) ) ; +#6242 = VERTEX_POINT ( 'NONE', #3794 ) ; +#6243 = ORIENTED_EDGE ( 'NONE', *, *, #11529, .F. ) ; +#6244 = ORIENTED_EDGE ( 'NONE', *, *, #18585, .T. ) ; +#6245 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.1527777777777910900 ) ) ; +#6246 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#6247 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.2118055555555692900 ) ) ; +#6248 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6249 = LINE ( 'NONE', #13072, #2554 ) ; +#6250 = EDGE_CURVE ( 'NONE', #15154, #9289, #14617, .T. ) ; +#6251 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.4496527777777694600 ) ) ; +#6252 = ORIENTED_EDGE ( 'NONE', *, *, #9975, .F. ) ; +#6253 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.9097222222222175500 ) ) ; +#6254 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#6255 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.9305555555555512500 ) ) ; +#6256 = DIRECTION ( 'NONE', ( 0.06279051952930256300, 0.9980267284282722300, 0.0000000000000000000 ) ) ; +#6257 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.225694444444442200 ) ) ; +#6258 = EDGE_CURVE ( 'NONE', #8070, #3315, #11847, .T. ) ; +#6259 = AXIS2_PLACEMENT_3D ( 'NONE', #4370, #7404, #9077 ) ; +#6260 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.8298611111111060500 ) ) ; +#6261 = AXIS2_PLACEMENT_3D ( 'NONE', #4298, #7327, #13188 ) ; +#6262 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6263 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.354166666666665900 ) ) ; +#6264 = AXIS2_PLACEMENT_3D ( 'NONE', #1451, #7307, #1258 ) ; +#6265 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.1215277777777901600 ) ) ; +#6266 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6267 = ORIENTED_EDGE ( 'NONE', *, *, #12136, .F. ) ; +#6268 = ORIENTED_EDGE ( 'NONE', *, *, #7956, .F. ) ; +#6269 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.5798611111111037200 ) ) ; +#6270 = CARTESIAN_POINT ( 'NONE', ( -0.1589412568245201800, -0.4327480257511615600, 1.591590229135180400 ) ) ; +#6271 = ORIENTED_EDGE ( 'NONE', *, *, #6131, .T. ) ; +#6272 = FACE_OUTER_BOUND ( 'NONE', #1133, .T. ) ; +#6273 = ORIENTED_EDGE ( 'NONE', *, *, #6125, .F. ) ; +#6274 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6275 = ORIENTED_EDGE ( 'NONE', *, *, #13698, .T. ) ; +#6276 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.4826388888888810100 ) ) ; +#6277 = EDGE_CURVE ( 'NONE', #1637, #12697, #2638, .T. ) ; +#6278 = CARTESIAN_POINT ( 'NONE', ( -0.04349090697847207000, -0.2729727632078031200, -1.556917725157686000 ) ) ; +#6279 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#6280 = DIRECTION ( 'NONE', ( 0.1729787697315188200, -0.01523268949379386200, 0.9848077530122089100 ) ) ; +#6281 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.9236111111111069400 ) ) ; +#6282 = EDGE_CURVE ( 'NONE', #16797, #8136, #13707, .T. ) ; +#6283 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.104166666666663900 ) ) ; +#6284 = ORIENTED_EDGE ( 'NONE', *, *, #1288, .T. ) ; +#6285 = CARTESIAN_POINT ( 'NONE', ( -2.321531631723995200E-017, 2.636275660394280800E-016, -1.174024639073328200 ) ) ; +#6286 = VERTEX_POINT ( 'NONE', #6817 ) ; +#6287 = LINE ( 'NONE', #15940, #3303 ) ; +#6288 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.338541666666665600 ) ) ; +#6289 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.3576388888888800700 ) ) ; +#6290 = ORIENTED_EDGE ( 'NONE', *, *, #5495, .T. ) ; +#6291 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.520833333333333700 ) ) ; +#6292 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#6293 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6294 = ORIENTED_EDGE ( 'NONE', *, *, #8115, .T. ) ; +#6295 = CARTESIAN_POINT ( 'NONE', ( -0.01171875000000001400, -0.4686034927296605600, 1.484375000000000200 ) ) ; +#6296 = CARTESIAN_POINT ( 'NONE', ( 2.074017620600221800E-017, 0.2886751345948123700, 1.548179320649367700 ) ) ; +#6297 = CARTESIAN_POINT ( 'NONE', ( 0.2808550297895122700, 0.1187245254870546700, 0.1607767143148529100 ) ) ; +#6298 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.7604166666666607500 ) ) ; +#6299 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.1145833333333226300 ) ) ; +#6300 = ADVANCED_FACE ( 'NONE', ( #9791 ), #14164, .T. ) ; +#6301 = ORIENTED_EDGE ( 'NONE', *, *, #8871, .F. ) ; +#6302 = EDGE_CURVE ( 'NONE', #17325, #437, #18092, .T. ) ; +#6303 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6304 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.3454861111111021100 ) ) ; +#6305 = ORIENTED_EDGE ( 'NONE', *, *, #14620, .F. ) ; +#6306 = ORIENTED_EDGE ( 'NONE', *, *, #9827, .F. ) ; +#6307 = CARTESIAN_POINT ( 'NONE', ( 0.1890960617962300900, 0.2197456087196834300, 0.1182042143765144000 ) ) ; +#6308 = VECTOR ( 'NONE', #10546, 39.37007874015748100 ) ; +#6309 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.605902777777778600 ) ) ; +#6310 = ADVANCED_FACE ( 'NONE', ( #3341 ), #8368, .F. ) ; +#6311 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.6406249999999932300 ) ) ; +#6312 = CARTESIAN_POINT ( 'NONE', ( -0.4418741004648784100, 0.1314551491986550900, 1.143750000000000000 ) ) ; +#6313 = PLANE ( 'NONE', #12342 ) ; +#6314 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.180555555555552900 ) ) ; +#6315 = ORIENTED_EDGE ( 'NONE', *, *, #14996, .F. ) ; +#6316 = CARTESIAN_POINT ( 'NONE', ( -0.3122385636735678400, -0.3496192812976236500, 1.484375000000000200 ) ) ; +#6317 = CARTESIAN_POINT ( 'NONE', ( -0.4548654901190614100, -0.07503707624389545400, 1.187613820323599700 ) ) ; +#6318 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.138888888888886400 ) ) ; +#6319 =( BOUNDED_SURFACE ( ) B_SPLINE_SURFACE ( 1, 2, ( + ( #5082, #12358, #3541, #14048, #8062, #12562, #13864, #9547, #3740, #15200, #6370, #725, #16685, #6505, #16815, #18313, #7874, #9487, #649, #912, #12698, #2382, #1037, #11399, #14292, #3857, #3795, #8242, #5332, #15631, #9845, #12809, #14161, #17187, #18491, #15566, #8369, #15509, #6758, #11213, #5270, #14105, #17249, #6818, #8425, #17076, #9667, #12627, #17134, #9919, #3994, #8313, #977, #6696, #6959, #18609, #18733, #18550, #3931, #9731, #1093, #2503, #9787, #5440, #11279, #2439, #12753, #14220, #6891, #5384, #16999, #15695, #11338, #11153, #18677, #8184, #842, #15756, #2572, #12873, #2326, #4051, #5200, #7219, #1221, #10238, #15810, #1344, #15888, #18790, #9981, #8564, #7078, #13192, #2882, #5577, #17379, #11583, #5517, #1416, #11642, #4301, #1166, #8493, #14606, #11704, #16070, #11453, #2827, #5763, #8627, #7155, #17437, #10037, #2762, #7271, #17573, #12943, #18860, #11522, #8758, #19048, #4241, #14349, #2686, #16006, #17511, #14549, #13059, #17315, #13003, #7021, #8685, #13129, #2635, #5690, #4116, #14407, #4178, #18994, #14474, #5631, #15945, #18930, #10104, #1280, #10176, #60, #11836, #1526, #183, #10547, #13457, #3021, #2955, #7405, #4487, #14794, #9020, #11971, #13321, #16337, #17632, #14729, #7521, #14655, #5880, #10365, #4432, #13251, #16406, #5960, #7594, #16197, #8818, #11776, #16263, #9078, #3146, #7465, #122, #5821, #6098, #17765, #17891, #17693, #3085, #8881, #255, #1665, #8949, #4617, #10423, #1604, #11893, #13391, #6033, #4551, #16137, #14852, #10487, #10293, #17829, #7331, #19124, #14924, #1729, #12032, #1472, #3217, #4371, #6347, #379, #9388, #14986, #508, #15054, #17959, #9137, #7717, #6228, #12344, #2051, #4737, #16531, #10740, #4682, #565, #10809, #3465, #318, #7659, #13764, #10881, #15238, #10618, #1983, #4930, #7782, #6298, #16601, #9199, #1917, #6427, #16721, #12093, #18029, #10680, #7919, #18220, #3391, #13515, #1853, #15174, #16667, #13705, #12227, #16468, #12154, #6161, #7848, #12290, #1786, #4868, #3277, #13585, #3339, #18148, #13643, #4808, #15108, #18088, #9266, #441, #9325, #18343, #10998, #695, #18467, #9710, #12607, #2185, #2122, #6551, #3650, #13960, #8170, #11132, #12484, #15489, #16793, #13904, #6670, #13839, #5057, #9530, #3581, #12411, #15544, #5119, #6737, #15351, #7973, #10935, #15427, #8220, #2299, #6605, #18406, #4988, #5245, #16926, #17047, #16865, #2235, #8036, #18534, #821, #8102, #3780, #9577, #766, #11070, #12545, #5178, #3719, #15299, #14024, #9646, #9463, #16982, #6487, #18292, #14085, #882, #11190, #628, #2366, #3526, #4026, #8350, #15854, #14144, #7000, #3904, #17109, #8290, #15676, #14197, #18830, #8534, #12735, #5369, #8402, #12671, #7055, #8462, #11434, #18588, #9768, #2611, #17351, #12916, #954, #9958, #4088, #15732, #5419, #14261, #18649, #18709, #14381, #5555, #11254, #6860, #17168, #3837, #5313, #14330, #15604, #2477, #17293, #18769, #5486, #2546, #2417, #1019, #6798, #9822, #11319, #6935, #12785, #3972, #17224, #9892, #1068, #11377, #1137, #12846, #15790, #11723, #14940, #4631, #7420, #74, #8895, #7532, #17902, #1677, #10381, #10307, #14747, #11848, #3037, #16356, #200, #1540, #4568, #5836, #2973, #14864, #2897, #13261, #17711, #11790, #1488, #6110, #13340, #16420, #4444, #16153, #16, #4496, #7609, #10499, #14809, #7481, #13208, #13472, #5977, #9094, #5898, #10436, #16212, #271, #9037, #16280, #11985, #17783, #8965, #133, #1619, #13409, #11906, #4386, #3099, #17841, #17644, #6050, #14673, #7350, #3159, #10564, #8831, #13526, #1995, #9404, #13714, #7728, #16733, #3231, #7864, #3289, #6176, #16478, #15067, #13601, #575, #1741, #12104, #4749, #18101, #12048, #7931, #18163, #10826, #7674, #15004, #12303, #18237, #3479, #17976, #9335, #13777, #15121, #13659, #4822, #16546, #9279, #4940, #15254, #332, #6245, #18041, #6444, #4696, #10753, #9147, #9217, #3410, #4879, #1930, #461, #10636, #392, #1802, #15193, #518, #10696, #12246, #1870 ), + ( #12166, #3349, #6309, #16619, #7798, #6362, #16678, #18483, #8053, #3731, #5004, #2132, #14041, #2071, #12428, #6560, #10946, #643, #3788, #9541, #14097, #3594, #15308, #18305, #16877, #15557, #9661, #3670, #6623, #12351, #12621, #18354, #5266, #9478, #9593, #13916, #6751, #8178, #5071, #834, #15367, #13970, #15444, #714, #12557, #16936, #3535, #11012, #6684, #16810, #778, #13854, #6498, #11146, #17065, #5192, #7988, #2318, #18543, #15503, #2194, #8237, #12498, #16993, #5131, #8116, #18422, #11086, #2249, #9723, #10892, #11273, #2431, #17243, #11205, #15877, #17311, #9976, #6811, #14155, #1157, #7073, #2628, #17128, #8488, #11450, #14280, #12802, #3988, #15688, #8417, #12935, #4112, #18604, #12748, #3922, #14401, #5571, #9908, #17373, #17179, #2567, #4042, #1086, #18728, #3852, #5380, #18854, #12867, #18782, #5325, #11393, #8556, #904, #2375, #14343, #12686, #8303, #969, #18667, #15626, #9781, #14213, #6885, #8364, #9840, #15803, #1030, #11331, #2497, #5435, #15750, #6952, #5506, #7014, #17626, #7214, #2874, #4173, #1271, #13185, #1216, #11577, #5684, #10099, #18922, #2945, #8678, #13242, #2751, #14468, #17430, #15999, #14718, #8811, #2822, #5756, #11512, #11770, #17501, #4426, #8620, #8747, #13055, #5875, #7324, #4235, #19113, #14543, #13118, #14600, #18989, #11697, #16062, #2681, #10168, #5814, #15941, #19043, #12997, #5625, #10287, #16190, #4360, #7144, #1468, #17685, #14651, #1339, #7400, #11635, #16130, #4295, #7264, #17567, #10233, #1410, #8872, #10029, #10419, #1592, #16403, #10355, #15046, #16461, #9132, #5950, #13312, #311, #6222, #1782, #16257, #7653, #10613, #13451, #11960, #3140, #14845, #7582, #12086, #3271, #17760, #11888, #3080, #13575, #4734, #9073, #16526, #16326, #1723, #3206, #250, #17885, #3016, #4544, #18024, #12027, #17949, #4480, #10539, #7713, #55, #1520, #13509, #11830, #7459, #116, #17822, #14788, #8942, #13386, #6028, #7516, #9015, #14982, #176, #10480, #1659, #4612, #14916, #6092, #4676, #6154, #2543, #16449, #17810, #12525, #7236, #9224, #18395, #10561, #7514, #12172, #13664, #275, #4825, #1684, #14871, #9042, #16424, #6311, #9222, #13532, #16485, #3103, #3353, #17909, #15127, #203, #338, #10504, #16623, #18045, #11988, #398, #3166, #4700, #6179, #6117, #3295, #7679, #13413, #9098, #16552, #7538, #10641, #4573, #11911, #10700, #7803, #15069, #6055, #1875, #9284, #13605, #7614, #18106, #16360, #7734, #13477, #17846, #4636, #14944, #10569, #465, #1622, #1746, #12053, #17978, #3235, #15010, #9152, #1806, #12111, #4756, #6251, #16940, #12504, #16682, #18360, #11016, #5008, #3540, #13862, #6447, #7992, #3672, #2197, #9340, #2000, #3484, #5137, #15450, #647, #13974, #7935, #12434, #13919, #10952, #18310, #13719, #15259, #9598, #3599, #9545, #4884, #9485, #722, #6627, #8123, #2138, #18426, #7871, #10831, #9409, #10759, #1934, #12250, #16740, #18243, #580, #6563, #3415, #15198, #10896, #524, #13783, #2075, #12355, #15374, #6368, #15313, #5078, #18168, #12307, #16882, #4945, #6504, #16813, #8059, #11336, #12807, #18547, #3991, #840, #14047, #8182, #15564, #5438, #8367, #12696, #15629, #2253, #2501, #17073, #14289, #18489, #18608, #9664, #15754, #17184, #11151, #18674, #2324, #3856, #5329, #5269, #2438, #6816, #12560, #8240, #15694, #6692, #9785, #3737, #11094, #9843, #6956, #14218, #5198, #1034, #8424, #12751, #6756, #17247, #15507, #6889, #12624, #16997, #3793, #14103, #9730, #18731, #782, #910, #11211, #17132, #2379, #14159, #8310, #975, #11276, #3928, #5383, #16067, #11640, #15807, #17509, #10173, #4177, #2685, #13002, #5575, #7152, #2825, #1342, #8491, #1163, #2632, #4299, #14604, #18928, #13125, #7076, #11581, #13057, #10102, #17434, #12871, #14406, #8755, #2759, #8683, #4049, #8625, #18992, #5761, #7270, #1277, #17572, #7019, #9979, #8561, #9916, #1092, #11397, #15885, #17377, #18859, #5689, #2571, #14347, #10035, #18787, #12941, #1220, #11518, #14548, #5514, #14471, #4238 ) ), + .UNSPECIFIED., .F., .F., .F. ) + B_SPLINE_SURFACE_WITH_KNOTS ( ( 2, 2 ), + ( 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3 ), + ( 0.0000000000000000000, 1.000000000000000000 ), + ( 0.0000000000000000000, 0.003787878787878788000, 0.007575757575757576000, 0.01136363636363636400, 0.01515151515151515200, 0.01893939393939394000, 0.02272727272727272800, 0.02651515151515151600, 0.03030303030303030400, 0.03409090909090908800, 0.03787878787878788000, 0.04166666666666666400, 0.04545454545454545600, 0.04924242424242424000, 0.05303030303030303200, 0.05681818181818181600, 0.06060606060606060800, 0.06439393939393939200, 0.06818181818181817700, 0.07196969696969697500, 0.07575757575757576000, 0.07954545454545454400, 0.08333333333333332900, 0.08712121212121212700, 0.09090909090909091200, 0.09469696969696969600, 0.09848484848484848100, 0.1022727272727272800, 0.1060606060606060600, 0.1098484848484848500, 0.1136363636363636300, 0.1174242424242424300, 0.1212121212121212200, 0.1250000000000000000, 0.1287878787878787800, 0.1325757575757575700, 0.1363636363636363500, 0.1401515151515151400, 0.1439393939393939500, 0.1477272727272727300, 0.1515151515151515200, 0.1553030303030303000, 0.1590909090909090900, 0.1628787878787878700, 0.1666666666666666600, 0.1704545454545454400, 0.1742424242424242500, 0.1780303030303030400, 0.1818181818181818200, 0.1856060606060606100, 0.1893939393939393900, 0.1931818181818181800, 0.1969696969696969600, 0.2007575757575757500, 0.2045454545454545600, 0.2083333333333333400, 0.2121212121212121300, 0.2159090909090909100, 0.2196969696969697000, 0.2234848484848484800, 0.2272727272727272700, 0.2310606060606060500, 0.2348484848484848600, 0.2386363636363636500, 0.2424242424242424300, 0.2462121212121212200, 0.2500000000000000000, 0.2537878787878787800, 0.2575757575757575700, 0.2613636363636363500, 0.2651515151515151400, 0.2689393939393939200, 0.2727272727272727100, 0.2765151515151514900, 0.2803030303030302800, 0.2840909090909091200, 0.2878787878787879000, 0.2916666666666666900, 0.2954545454545454700, 0.2992424242424242500, 0.3030303030303030400, 0.3068181818181818200, 0.3106060606060606100, 0.3143939393939393900, 0.3181818181818181800, 0.3219696969696969600, 0.3257575757575757500, 0.3295454545454545300, 0.3333333333333333100, 0.3371212121212121000, 0.3409090909090908800, 0.3446969696969697200, 0.3484848484848485100, 0.3522727272727272900, 0.3560606060606060800, 0.3598484848484848600, 0.3636363636363636500, 0.3674242424242424300, 0.3712121212121212200, 0.3750000000000000000, 0.3787878787878787800, 0.3825757575757575700, 0.3863636363636363500, 0.3901515151515151400, 0.3939393939393939200, 0.3977272727272727100, 0.4015151515151514900, 0.4053030303030302800, 0.4090909090909091200, 0.4128787878787879000, 0.4166666666666666900, 0.4204545454545454700, 0.4242424242424242500, 0.4280303030303030400, 0.4318181818181818200, 0.4356060606060606100, 0.4393939393939393900, 0.4431818181818181800, 0.4469696969696969600, 0.4507575757575757500, 0.4545454545454545300, 0.4583333333333333100, 0.4621212121212121000, 0.4659090909090908800, 0.4696969696969697200, 0.4734848484848485100, 0.4772727272727272900, 0.4810606060606060800, 0.4848484848484848600, 0.4886363636363636500, 0.4924242424242424300, 0.4962121212121212200, 0.5000000000000000000, 0.5037878787878787800, 0.5075757575757575700, 0.5113636363636363500, 0.5151515151515151400, 0.5189393939393939200, 0.5227272727272727100, 0.5265151515151514900, 0.5303030303030302800, 0.5340909090909090600, 0.5378787878787878500, 0.5416666666666666300, 0.5454545454545454100, 0.5492424242424242000, 0.5530303030303029800, 0.5568181818181817700, 0.5606060606060605500, 0.5643939393939394500, 0.5681818181818182300, 0.5719696969696970200, 0.5757575757575758000, 0.5795454545454545900, 0.5833333333333333700, 0.5871212121212121500, 0.5909090909090909400, 0.5946969696969697200, 0.5984848484848485100, 0.6022727272727272900, 0.6060606060606060800, 0.6098484848484848600, 0.6136363636363636500, 0.6174242424242424300, 0.6212121212121212200, 0.6250000000000000000, 0.6287878787878787800, 0.6325757575757575700, 0.6363636363636363500, 0.6401515151515151400, 0.6439393939393939200, 0.6477272727272727100, 0.6515151515151514900, 0.6553030303030302800, 0.6590909090909090600, 0.6628787878787878500, 0.6666666666666666300, 0.6704545454545454100, 0.6742424242424242000, 0.6780303030303029800, 0.6818181818181817700, 0.6856060606060605500, 0.6893939393939394500, 0.6931818181818182300, 0.6969696969696970200, 0.7007575757575758000, 0.7045454545454545900, 0.7083333333333333700, 0.7121212121212121500, 0.7159090909090909400, 0.7196969696969697200, 0.7234848484848485100, 0.7272727272727272900, 0.7310606060606060800, 0.7348484848484848600, 0.7386363636363636500, 0.7424242424242424300, 0.7462121212121212200, 0.7500000000000000000, 0.7537878787878787800, 0.7575757575757575700, 0.7613636363636363500, 0.7651515151515151400, 0.7689393939393939200, 0.7727272727272727100, 0.7765151515151514900, 0.7803030303030302800, 0.7840909090909090600, 0.7878787878787878500, 0.7916666666666666300, 0.7954545454545454100, 0.7992424242424242000, 0.8030303030303029800, 0.8068181818181817700, 0.8106060606060605500, 0.8143939393939394500, 0.8181818181818182300, 0.8219696969696970200, 0.8257575757575758000, 0.8295454545454545900, 0.8333333333333333700, 0.8371212121212121500, 0.8409090909090909400, 0.8446969696969697200, 0.8484848484848485100, 0.8522727272727272900, 0.8560606060606060800, 0.8598484848484848600, 0.8636363636363636500, 0.8674242424242424300, 0.8712121212121212200, 0.8750000000000000000, 0.8787878787878787800, 0.8825757575757575700, 0.8863636363636363500, 0.8901515151515151400, 0.8939393939393939200, 0.8977272727272727100, 0.9015151515151514900, 0.9053030303030302800, 0.9090909090909090600, 0.9128787878787878500, 0.9166666666666666300, 0.9204545454545454100, 0.9242424242424242000, 0.9280303030303029800, 0.9318181818181817700, 0.9356060606060605500, 0.9393939393939394500, 0.9431818181818182300, 0.9469696969696970200, 0.9507575757575758000, 0.9545454545454545900, 0.9583333333333333700, 0.9621212121212121500, 0.9659090909090909400, 0.9696969696969697200, 0.9734848484848485100, 0.9772727272727272900, 0.9810606060606060800, 0.9848484848484848600 ), + .UNSPECIFIED. ) + GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_SURFACE ( ( + ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000), + ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000) ) ) + REPRESENTATION_ITEM ( '' ) SURFACE ( ) ); +#6320 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.03124999999998863800 ) ) ; +#6321 = LINE ( 'NONE', #9960, #15530 ) ; +#6322 = VERTEX_POINT ( 'NONE', #3930 ) ; +#6323 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#6324 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.3541666666666574700 ) ) ; +#6325 = EDGE_CURVE ( 'NONE', #12530, #10537, #5835, .T. ) ; +#6326 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.9444444444444403100 ) ) ; +#6327 = LINE ( 'NONE', #14624, #12064 ) ; +#6328 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.395833333333332600 ) ) ; +#6329 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.4652777777777698000 ) ) ; +#6330 = CARTESIAN_POINT ( 'NONE', ( 0.3953002468276861100, 0.2372148641431572100, 1.484375000000000200 ) ) ; +#6331 = DIRECTION ( 'NONE', ( -0.8938997675281776800, 0.4482668910516028300, 0.0000000000000000000 ) ) ; +#6332 = CIRCLE ( 'NONE', #13830, 0.4610132068742565100 ) ; +#6333 = ORIENTED_EDGE ( 'NONE', *, *, #16369, .T. ) ; +#6334 = CARTESIAN_POINT ( 'NONE', ( 0.4592360163321189100, 0.04044079890274024400, 1.484375000000000200 ) ) ; +#6335 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6336 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.6597222222222158800 ) ) ; +#6337 = FACE_BOUND ( 'NONE', #11456, .T. ) ; +#6338 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.069444444444441300 ) ) ; +#6339 = CARTESIAN_POINT ( 'NONE', ( -0.07035757220611506300, -0.4634372746620902300, 1.143750000000000000 ) ) ; +#6340 = LINE ( 'NONE', #6180, #14857 ) ; +#6341 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.442708333333333300 ) ) ; +#6342 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.374999999999999100 ) ) ; +#6343 = CARTESIAN_POINT ( 'NONE', ( -0.2654972647497354000, -0.1449339203213100600, -1.531224560366331000 ) ) ; +#6344 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#6345 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6346 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323599700 ) ) ; +#6347 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.8576388888888836200 ) ) ; +#6348 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6349 = LINE ( 'NONE', #691, #4494 ) ; +#6350 = EDGE_LOOP ( 'NONE', ( #8272, #918, #12293, #1224 ) ) ; +#6351 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.2673611111111017800 ) ) ; +#6352 = FACE_OUTER_BOUND ( 'NONE', #12200, .T. ) ; +#6353 = EDGE_CURVE ( 'NONE', #2160, #11716, #17163, .T. ) ; +#6354 = ORIENTED_EDGE ( 'NONE', *, *, #12988, .T. ) ; +#6356 = EDGE_CURVE ( 'NONE', #15947, #9928, #13239, .T. ) ; +#6355 = LINE ( 'NONE', #16466, #13273 ) ; +#6357 = AXIS2_PLACEMENT_3D ( 'NONE', #11466, #14418, #15896 ) ; +#6358 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.005208333333321559500 ) ) ; +#6359 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.013888888888885300 ) ) ; +#6360 = CARTESIAN_POINT ( 'NONE', ( -0.4492873804855425600, -0.1336605598125473700, 1.484375000000000200 ) ) ; +#6361 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#6362 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.595486111111112000 ) ) ; +#6363 = ORIENTED_EDGE ( 'NONE', *, *, #2307, .T. ) ; +#6364 = DIRECTION ( 'NONE', ( 0.1500969283399637100, 0.9886712861729665100, 0.0000000000000000000 ) ) ; +#6365 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.1527777777777910900 ) ) ; +#6366 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6367 = VECTOR ( 'NONE', #15447, 39.37007874015748100 ) ; +#6368 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.2586805555555458100 ) ) ; +#6369 = DIRECTION ( 'NONE', ( 0.4257792915650767100, -0.9048270524660175800, 0.0000000000000000000 ) ) ; +#6370 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.555555555555556000 ) ) ; +#6371 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#6372 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.253472222222220300 ) ) ; +#6373 = CIRCLE ( 'NONE', #3549, 0.4375000000000001100 ) ; +#6374 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.590985962198545200 ) ) ; +#6375 = CYLINDRICAL_SURFACE ( 'NONE', #3859, 0.3125000000000008300 ) ; +#6376 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.7430555555555495900 ) ) ; +#6377 = EDGE_LOOP ( 'NONE', ( #5847, #2025, #3494, #18646, #11015, #4368 ) ) ; +#6378 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.031249999999996700 ) ) ; +#6379 = ORIENTED_EDGE ( 'NONE', *, *, #16245, .T. ) ; +#6380 = LINE ( 'NONE', #10292, #10774 ) ; +#6381 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.1597222222222351400 ) ) ; +#6382 = EDGE_CURVE ( 'NONE', #9753, #5734, #5604, .T. ) ; +#6383 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.5243055555555480300 ) ) ; +#6384 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.3888888888888800100 ) ) ; +#6385 = EDGE_CURVE ( 'NONE', #17560, #663, #3782, .T. ) ; +#6386 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -1.069444444444441100 ) ) ; +#6387 = EDGE_CURVE ( 'NONE', #3832, #11844, #9560, .T. ) ; +#6388 = ADVANCED_FACE ( 'NONE', ( #7708 ), #7154, .F. ) ; +#6389 = ORIENTED_EDGE ( 'NONE', *, *, #15653, .F. ) ; +#6390 = AXIS2_PLACEMENT_3D ( 'NONE', #2810, #4224, #16179 ) ; +#6391 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6392 = AXIS2_PLACEMENT_3D ( 'NONE', #11579, #1273, #5816 ) ; +#6393 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#6394 = FACE_OUTER_BOUND ( 'NONE', #11573, .T. ) ; +#6395 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.7083333333333269300 ) ) ; +#6396 = VECTOR ( 'NONE', #9496, 39.37007874015748100 ) ; +#6397 = VECTOR ( 'NONE', #16898, 39.37007874015748100 ) ; +#6398 = VERTEX_POINT ( 'NONE', #17314 ) ; +#6399 = DIRECTION ( 'NONE', ( -0.1664391196603319200, -0.04951473572319352300, 0.9848077530122089100 ) ) ; +#6400 = LINE ( 'NONE', #7376, #1801 ) ; +#6401 = LINE ( 'NONE', #12382, #9856 ) ; +#6402 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6403 = ORIENTED_EDGE ( 'NONE', *, *, #4419, .T. ) ; +#6404 = CARTESIAN_POINT ( 'NONE', ( -0.2360194556738204300, 0.4049927308685861100, 1.143750000000000000 ) ) ; +#6405 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6406 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.6909722222222161000 ) ) ; +#6407 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.8888888888888844000 ) ) ; +#6408 = ADVANCED_FACE ( 'NONE', ( #2858 ), #15736, .T. ) ; +#6409 = ORIENTED_EDGE ( 'NONE', *, *, #17851, .F. ) ; +#6410 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.6249999999999932300 ) ) ; +#6411 = ORIENTED_EDGE ( 'NONE', *, *, #4878, .T. ) ; +#6412 = ADVANCED_FACE ( 'NONE', ( #13691 ), #11616, .T. ) ; +#6413 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6414 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.473958333333333700 ) ) ; +#6415 = EDGE_CURVE ( 'NONE', #16243, #10393, #11838, .T. ) ; +#6416 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#6417 = ORIENTED_EDGE ( 'NONE', *, *, #102, .T. ) ; +#6418 = ORIENTED_EDGE ( 'NONE', *, *, #16536, .F. ) ; +#6419 = VECTOR ( 'NONE', #14603, 39.37007874015748100 ) ; +#6420 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6421 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6422 = CIRCLE ( 'NONE', #17281, 0.4610132068742565100 ) ; +#6423 = AXIS2_PLACEMENT_3D ( 'NONE', #17391, #5589, #14360 ) ; +#6424 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#6425 = CARTESIAN_POINT ( 'NONE', ( -0.1671865093978524600, 0.1921499583890882200, 1.528399624464272400 ) ) ; +#6426 = ORIENTED_EDGE ( 'NONE', *, *, #16610, .F. ) ; +#6427 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.7465277777777717900 ) ) ; +#6428 = CARTESIAN_POINT ( 'NONE', ( -0.3031899818271354700, -0.06254891467536663500, 0.1736121395267565300 ) ) ; +#6429 = VECTOR ( 'NONE', #256, 39.37007874015748100 ) ; +#6430 = AXIS2_PLACEMENT_3D ( 'NONE', #11824, #16185, #13113 ) ; +#6431 = ORIENTED_EDGE ( 'NONE', *, *, #14796, .T. ) ; +#6432 = EDGE_LOOP ( 'NONE', ( #14937, #5355, #12446, #1798 ) ) ; +#6433 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.03298611111109964900 ) ) ; +#6434 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323634600 ) ) ; +#6435 = CARTESIAN_POINT ( 'NONE', ( 0.1168714754447762000, 0.2656574689817879900, 0.1203893485315353900 ) ) ; +#6436 = ORIENTED_EDGE ( 'NONE', *, *, #11784, .F. ) ; +#6437 = EDGE_LOOP ( 'NONE', ( #13704, #18712, #11085, #6231 ) ) ; +#6438 = VECTOR ( 'NONE', #10028, 39.37007874015748900 ) ; +#6439 = LINE ( 'NONE', #17967, #15861 ) ; +#6440 = ORIENTED_EDGE ( 'NONE', *, *, #18227, .T. ) ; +#6441 = DIRECTION ( 'NONE', ( -0.3420201433256694300, 0.0000000000000000000, 0.9396926207859080900 ) ) ; +#6442 = ORIENTED_EDGE ( 'NONE', *, *, #2943, .T. ) ; +#6443 = LINE ( 'NONE', #14499, #13825 ) ; +#6444 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.1597222222222354200 ) ) ; +#6445 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.1041666666666795100 ) ) ; +#6446 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323599700 ) ) ; +#6447 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.4184027777777692400 ) ) ; +#6448 = EDGE_CURVE ( 'NONE', #15258, #17106, #4004, .T. ) ; +#6449 = CARTESIAN_POINT ( 'NONE', ( -0.4418741004648784100, 0.1314551491986550900, 1.440511179676384300 ) ) ; +#6450 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#6451 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.8402777777777724600 ) ) ; +#6452 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.083333333333330400 ) ) ; +#6453 = ORIENTED_EDGE ( 'NONE', *, *, #12400, .F. ) ; +#6454 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.08333333333334547200 ) ) ; +#6455 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.184027777777775500 ) ) ; +#6456 = ORIENTED_EDGE ( 'NONE', *, *, #6008, .T. ) ; +#6457 = LINE ( 'NONE', #5871, #7852 ) ; +#6458 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.2743055555555457500 ) ) ; +#6459 = EDGE_LOOP ( 'NONE', ( #15457, #7185, #8820, #15706 ) ) ; +#6460 = EDGE_LOOP ( 'NONE', ( #3981, #2730, #7204, #7469 ) ) ; +#6461 = LINE ( 'NONE', #9176, #6238 ) ; +#6462 = DIRECTION ( 'NONE', ( 0.5035107695491730700, -0.8639889495520179900, 0.0000000000000000000 ) ) ; +#6463 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.6805555555555489200 ) ) ; +#6464 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#6465 = DIRECTION ( 'NONE', ( -0.3912539079287195600, 0.9202827715058589100, 0.0000000000000000000 ) ) ; +#6466 = CARTESIAN_POINT ( 'NONE', ( -0.3293237658787572800, -0.3335752085024200600, 1.484375000000000200 ) ) ; +#6467 = ORIENTED_EDGE ( 'NONE', *, *, #15741, .F. ) ; +#6468 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6469 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6470 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#6471 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.5486111111111039400 ) ) ; +#6472 = ORIENTED_EDGE ( 'NONE', *, *, #9955, .F. ) ; +#6473 = ORIENTED_EDGE ( 'NONE', *, *, #2196, .T. ) ; +#6474 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.7118055555555495900 ) ) ; +#6475 = CIRCLE ( 'NONE', #4305, 0.4610132068742565100 ) ; +#6476 = VERTEX_POINT ( 'NONE', #18993 ) ; +#6477 = ORIENTED_EDGE ( 'NONE', *, *, #6353, .F. ) ; +#6478 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.1527777777777908400 ) ) ; +#6479 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.345486111111110100 ) ) ; +#6480 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#6481 = CARTESIAN_POINT ( 'NONE', ( 0.4669405755743690200, 0.04111927036375202800, 1.484375000000000200 ) ) ; +#6482 = EDGE_CURVE ( 'NONE', #5211, #16653, #17601, .T. ) ; +#6483 = CARTESIAN_POINT ( 'NONE', ( 0.3685331079892117400, -0.2896681615724728300, 1.484375000000000200 ) ) ; +#6484 = CARTESIAN_POINT ( 'NONE', ( -0.3685350091390597900, 0.2896696558821318400, 1.593375490995827300 ) ) ; +#6485 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.9027777777777732400 ) ) ; +#6486 = PRODUCT ( '91251A404_Black-Oxide Alloy Steel Socket Head Screw', '91251A404_Black-Oxide Alloy Steel Socket Head Screw', '', ( #4278 ) ) ; +#6487 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.4409722222222137700 ) ) ; +#6488 = AXIS2_PLACEMENT_3D ( 'NONE', #144, #1813, #4764 ) ; +#6489 = ORIENTED_EDGE ( 'NONE', *, *, #17735, .T. ) ; +#6490 = ORIENTED_EDGE ( 'NONE', *, *, #12872, .T. ) ; +#6491 = ORIENTED_EDGE ( 'NONE', *, *, #10449, .T. ) ; +#6492 = ADVANCED_FACE ( 'NONE', ( #2187 ), #1715, .T. ) ; +#6493 = FACE_OUTER_BOUND ( 'NONE', #12644, .T. ) ; +#6494 = ORIENTED_EDGE ( 'NONE', *, *, #18126, .T. ) ; +#6495 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.04687499999998855800 ) ) ; +#6496 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.2743055555555460900 ) ) ; +#6497 = EDGE_CURVE ( 'NONE', #7224, #13154, #9770, .T. ) ; +#6498 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.432291666666666300 ) ) ; +#6499 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6500 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.1111111111111003500 ) ) ; +#6501 = ORIENTED_EDGE ( 'NONE', *, *, #12600, .F. ) ; +#6502 = ADVANCED_FACE ( 'NONE', ( #9309 ), #10036, .F. ) ; +#6503 = EDGE_CURVE ( 'NONE', #16925, #618, #4458, .T. ) ; +#6504 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.2343749999999900400 ) ) ; +#6505 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.545138888888889300 ) ) ; +#6506 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6507 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323599100 ) ) ; +#6508 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.9131944444444397600 ) ) ; +#6509 = EDGE_LOOP ( 'NONE', ( #11809, #11589, #10926, #16327 ) ) ; +#6510 = EDGE_CURVE ( 'NONE', #5358, #11961, #13471, .T. ) ; +#6511 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.8263888888888837300 ) ) ; +#6512 = CYLINDRICAL_SURFACE ( 'NONE', #15992, 0.4610132068742565100 ) ; +#6513 = ADVANCED_FACE ( 'NONE', ( #8380 ), #254, .F. ) ; +#6514 = AXIS2_PLACEMENT_3D ( 'NONE', #9095, #4697, #333 ) ; +#6515 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.493055555555555600 ) ) ; +#6516 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.201388888888886800 ) ) ; +#6517 = ORIENTED_EDGE ( 'NONE', *, *, #16014, .T. ) ; +#6518 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.6874999999999936700 ) ) ; +#6519 = ORIENTED_EDGE ( 'NONE', *, *, #8679, .T. ) ; +#6520 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.2604166666666568600 ) ) ; +#6521 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.9409722222222179900 ) ) ; +#6522 = ORIENTED_EDGE ( 'NONE', *, *, #5628, .F. ) ; +#6523 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.6597222222222154400 ) ) ; +#6524 = FACE_OUTER_BOUND ( 'NONE', #16665, .T. ) ; +#6525 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.024305555555552000 ) ) ; +#6526 = VERTEX_POINT ( 'NONE', #7330 ) ; +#6527 = EDGE_CURVE ( 'NONE', #3649, #14802, #2394, .T. ) ; +#6528 = CARTESIAN_POINT ( 'NONE', ( -0.4289925051334573800, 0.1889172465718372000, 1.484375000000000200 ) ) ; +#6529 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#6530 = AXIS2_PLACEMENT_3D ( 'NONE', #10477, #112, #14649 ) ; +#6531 = ORIENTED_EDGE ( 'NONE', *, *, #4688, .F. ) ; +#6532 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#6533 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.7326388888888829600 ) ) ; +#6534 = AXIS2_PLACEMENT_3D ( 'NONE', #10673, #2115, #6413 ) ; +#6535 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.8472222222222173200 ) ) ; +#6536 = ORIENTED_EDGE ( 'NONE', *, *, #5742, .T. ) ; +#6537 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #10703, #1879, #10899, #13865, #18108, #18171, #12175, #9343, #16743 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7651515151515151400, 0.7689393939393939200, 0.7727272727272727100, 0.7765151515151514900, 0.7803030303030302800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#6538 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6539 = CC_DESIGN_APPROVAL ( #7786, ( #2844 ) ) ; +#6540 = ORIENTED_EDGE ( 'NONE', *, *, #7247, .T. ) ; +#6541 = CARTESIAN_POINT ( 'NONE', ( 1.458042822533541000E-016, 1.439459950530970000E-016, -1.174024639073276300 ) ) ; +#6542 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.102430555555552700 ) ) ; +#6543 = DIRECTION ( 'NONE', ( -0.05986782849628127800, -0.1630016340966669600, -0.9848077530122091300 ) ) ; +#6544 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -1.500000000000000200 ) ) ; +#6545 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#6546 = PLANE ( 'NONE', #6997 ) ; +#6547 = DATE_AND_TIME ( #4466, #18320 ) ; +#6548 = DIRECTION ( 'NONE', ( 0.2728267384564613300, 0.9620631844027758300, 0.0000000000000000000 ) ) ; +#6549 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.1249999999999892400 ) ) ; +#6550 = ORIENTED_EDGE ( 'NONE', *, *, #12880, .F. ) ; +#6551 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.6076388888888816200 ) ) ; +#6552 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.208333333333331000 ) ) ; +#6553 = LINE ( 'NONE', #17075, #106 ) ; +#6554 = EDGE_CURVE ( 'NONE', #2507, #6905, #13006, .T. ) ; +#6555 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.1302083333333225500 ) ) ; +#6556 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #11968, #1663, #182, #16405, #16261, #7329, #10485, #3144, #8816 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2500000000000000000, 0.2537878787878787800, 0.2575757575757575700, 0.2613636363636363500, 0.2651515151515151400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#6557 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.2812499999999904000 ) ) ; +#6558 = CIRCLE ( 'NONE', #18749, 0.4610132068742565100 ) ; +#6559 = CARTESIAN_POINT ( 'NONE', ( 0.4669405755743604700, -0.04111927036374103000, 1.484375000000000200 ) ) ; +#6560 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.560763888888889700 ) ) ; +#6561 = LINE ( 'NONE', #7195, #15211 ) ; +#6562 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6563 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.2899305555555459200 ) ) ; +#6564 = CARTESIAN_POINT ( 'NONE', ( -0.4492896982220442300, 0.1336612493265871600, 1.590985962198545200 ) ) ; +#6565 = CARTESIAN_POINT ( 'NONE', ( 0.07035793515936764100, -0.4634396653935760600, 1.588758826628429600 ) ) ; +#6566 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.013888888888884800 ) ) ; +#6567 = FACE_OUTER_BOUND ( 'NONE', #6172, .T. ) ; +#6568 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995600, -0.04863749728649593300, 1.252098685671725100 ) ) ; +#6569 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.145833333333330800 ) ) ; +#6570 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.2152777777777910600 ) ) ; +#6571 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.173611111111108500 ) ) ; +#6572 = VECTOR ( 'NONE', #8998, 39.37007874015748100 ) ; +#6573 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.1736111111111005600 ) ) ; +#6574 = ORIENTED_EDGE ( 'NONE', *, *, #2269, .F. ) ; +#6575 = EDGE_CURVE ( 'NONE', #11495, #12960, #12302, .T. ) ; +#6576 = CARTESIAN_POINT ( 'NONE', ( 0.3122385636735652800, 0.3496192812976258700, 1.593467001493433100 ) ) ; +#6577 = ADVANCED_FACE ( 'NONE', ( #9093 ), #7245, .T. ) ; +#6578 = LINE ( 'NONE', #16338, #10747 ) ; +#6579 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6580 = ORIENTED_EDGE ( 'NONE', *, *, #2813, .F. ) ; +#6581 = LINE ( 'NONE', #5039, #143 ) ; +#6582 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.6458333333333263800 ) ) ; +#6583 = DIRECTION ( 'NONE', ( 0.09852382856602573400, -0.1429921145089380600, 0.9848077530122085800 ) ) ; +#6584 = CARTESIAN_POINT ( 'NONE', ( 0.4624967254560984900, -0.07629596618005551900, 1.143750000000000000 ) ) ; +#6585 = EDGE_CURVE ( 'NONE', #16202, #18752, #16928, .T. ) ; +#6586 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.3333333333333242100 ) ) ; +#6587 = CARTESIAN_POINT ( 'NONE', ( 0.2849188901020641700, 0.3722200808164538000, 1.593193105402742800 ) ) ; +#6588 = CARTESIAN_POINT ( 'NONE', ( 0.3685350091390624500, -0.2896696558821297300, 1.143750000000000000 ) ) ; +#6589 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.5590277777777706800 ) ) ; +#6590 = AXIS2_PLACEMENT_3D ( 'NONE', #13099, #1320, #13167 ) ; +#6591 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.9236111111111069400 ) ) ; +#6592 = ADVANCED_FACE ( 'NONE', ( #10695 ), #14923, .F. ) ; +#6593 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6594 = VECTOR ( 'NONE', #11339, 39.37007874015748900 ) ; +#6595 = ADVANCED_FACE ( 'NONE', ( #12546 ), #5154, .T. ) ; +#6596 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6597 = EDGE_LOOP ( 'NONE', ( #15878, #8321, #15172, #10302 ) ) ; +#6598 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.220486111111108900 ) ) ; +#6599 = DIRECTION ( 'NONE', ( -0.06279051952930997400, -0.9980267284282716700, 0.0000000000000000000 ) ) ; +#6600 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6601 = CIRCLE ( 'NONE', #3892, 0.2708333333333339300 ) ; +#6602 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#6603 = CARTESIAN_POINT ( 'NONE', ( 0.3953002468276861100, 0.2372148641431572100, 1.143750000000000000 ) ) ; +#6604 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #5174, #6666, #16978, #8164, #18464, #8216, #9640, #818, #11129, #15540, #6732, #1197, #6933, #11492, #14773, #10015, #2727, #8532, #18823, #17220, #5485, #7120, #1136, #18766, #9956, #2544, #4083, #18903, #17413, #5417, #8400, #18707, #1256, #11558, #8457, #9889, #10071, #11373, #2663, #7054, #14379, #12976, #17347, #1014 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ), + ( 0.005901144843577050800, 0.006603544478729013300, 0.007305944113880975800, 0.008710743384184900900, 0.01011554265448882600, 0.01152034192479274900, 0.01222274155994471100, 0.01292514119509667300, 0.01432994046540059600, 0.01573473973570451600, 0.01643713937085648100, 0.01713953900600843900, 0.01854433827631236200, 0.01924673791146432400, 0.01994913754661628600, 0.02135393681692020900, 0.02275873608722413200, 0.02346113572237609100, 0.02416353535752805600, 0.02556833462783197900, 0.02697313389813590900, 0.02837793316843983300 ), + .UNSPECIFIED. ) ; +#6605 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.5243055555555478100 ) ) ; +#6606 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#6607 = VERTEX_POINT ( 'NONE', #7520 ) ; +#6608 = CIRCLE ( 'NONE', #2207, 0.4687475818742577500 ) ; +#6609 = EDGE_CURVE ( 'NONE', #4288, #18184, #8630, .T. ) ; +#6610 = EDGE_CURVE ( 'NONE', #7511, #1860, #13197, .T. ) ; +#6611 = VECTOR ( 'NONE', #18166, 39.37007874015748900 ) ; +#6612 = AXIS2_PLACEMENT_3D ( 'NONE', #17924, #16378, #3365 ) ; +#6613 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.01562499999998844700 ) ) ; +#6614 = CIRCLE ( 'NONE', #16441, 0.4687499999999995600 ) ; +#6615 = AXIS2_PLACEMENT_3D ( 'NONE', #2453, #6775, #12646 ) ; +#6616 = CIRCLE ( 'NONE', #8877, 0.4687499999999996100 ) ; +#6617 = ORIENTED_EDGE ( 'NONE', *, *, #19086, .F. ) ; +#6618 = CARTESIAN_POINT ( 'NONE', ( -0.1718992724831313300, -0.2609729681782593800, 0.1823163490354290700 ) ) ; +#6619 = CARTESIAN_POINT ( 'NONE', ( -0.1808466198644875200, 0.2312528162804566300, 0.1283025271693742400 ) ) ; +#6620 = LINE ( 'NONE', #17793, #5432 ) ; +#6621 = CARTESIAN_POINT ( 'NONE', ( 0.06919666627599171900, -0.4557905201830936300, 1.440511179676400500 ) ) ; +#6622 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#6623 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.515625000000000200 ) ) ; +#6624 = DIRECTION ( 'NONE', ( 0.1664391196603330900, -0.04951473572319266300, -0.9848077530122088000 ) ) ; +#6625 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.6215277777777710200 ) ) ; +#6626 = ORIENTED_EDGE ( 'NONE', *, *, #17116, .F. ) ; +#6627 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.3350694444444352600 ) ) ; +#6628 = CARTESIAN_POINT ( 'NONE', ( 0.1834002693415908200, -0.4313825491433704900, 1.143750000000000000 ) ) ; +#6629 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.9062499999999952300 ) ) ; +#6630 = ORIENTED_EDGE ( 'NONE', *, *, #11554, .T. ) ; +#6631 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.9513888888888848400 ) ) ; +#6632 = VERTEX_POINT ( 'NONE', #16196 ) ; +#6633 = VECTOR ( 'NONE', #10172, 39.37007874015748900 ) ; +#6634 = VECTOR ( 'NONE', #13829, 39.37007874015748900 ) ; +#6635 = LINE ( 'NONE', #2271, #13555 ) ; +#6636 = EDGE_LOOP ( 'NONE', ( #8956, #17496, #5041, #2444 ) ) ; +#6637 = EDGE_CURVE ( 'NONE', #19087, #8091, #12760, .T. ) ; +#6638 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.163194444444442200 ) ) ; +#6639 = LINE ( 'NONE', #12007, #6174 ) ; +#6640 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.01388888888887688700 ) ) ; +#6641 = AXIS2_PLACEMENT_3D ( 'NONE', #3260, #13563, #5100 ) ; +#6642 = EDGE_CURVE ( 'NONE', #3710, #12243, #1020, .T. ) ; +#6643 = AXIS2_PLACEMENT_3D ( 'NONE', #1537, #1482, #4376 ) ; +#6644 = AXIS2_PLACEMENT_3D ( 'NONE', #7039, #2784, #13082 ) ; +#6645 = ORIENTED_EDGE ( 'NONE', *, *, #18312, .T. ) ; +#6646 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.5937499999999926700 ) ) ; +#6647 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.8055555555555502500 ) ) ; +#6648 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.1145833333333223500 ) ) ; +#6649 = CARTESIAN_POINT ( 'NONE', ( 0.2804597423182754700, 0.03824302797053076600, -1.550916134398988300 ) ) ; +#6650 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.06597222222221131600 ) ) ; +#6651 = VERTEX_POINT ( 'NONE', #3216 ) ; +#6652 = ORIENTED_EDGE ( 'NONE', *, *, #16992, .F. ) ; +#6653 = FACE_OUTER_BOUND ( 'NONE', #18736, .T. ) ; +#6654 = LINE ( 'NONE', #18722, #11268 ) ; +#6655 = PLANE ( 'NONE', #17004 ) ; +#6656 = VERTEX_POINT ( 'NONE', #13642 ) ; +#6657 = ORIENTED_EDGE ( 'NONE', *, *, #5748, .T. ) ; +#6658 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.4374999999999920100 ) ) ; +#6659 = CONICAL_SURFACE ( 'NONE', #7001, 0.4687475818742575200, 0.1745329251994298100 ) ; +#6660 = ORIENTED_EDGE ( 'NONE', *, *, #9706, .F. ) ; +#6661 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.7777777777777724600 ) ) ; +#6662 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.151041666666664100 ) ) ; +#6663 = EDGE_CURVE ( 'NONE', #9397, #17578, #10244, .T. ) ; +#6664 = ORIENTED_EDGE ( 'NONE', *, *, #16739, .F. ) ; +#6665 = DIRECTION ( 'NONE', ( 0.05986782849628180500, 0.1630016340966684000, -0.9848077530122088000 ) ) ; +#6666 = CARTESIAN_POINT ( 'NONE', ( -0.2787288083661284000, -0.009214547481343760000, 0.08921945871902821300 ) ) ; +#6667 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#6668 = DIRECTION ( 'NONE', ( -0.06279051952932436500, 0.9980267284282707800, 0.0000000000000000000 ) ) ; +#6669 = CARTESIAN_POINT ( 'NONE', ( 0.2119256669269744300, -0.4094150566479489200, 1.187613820323599100 ) ) ; +#6670 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.5763888888888815100 ) ) ; +#6671 = EDGE_LOOP ( 'NONE', ( #6519, #6740, #1176, #9270 ) ) ; +#6672 = CIRCLE ( 'NONE', #6806, 0.4687475818742552500 ) ; +#6673 = LINE ( 'NONE', #1407, #2757 ) ; +#6674 = ORIENTED_EDGE ( 'NONE', *, *, #15964, .T. ) ; +#6675 = ORIENTED_EDGE ( 'NONE', *, *, #6181, .F. ) ; +#6676 = LINE ( 'NONE', #16838, #4373 ) ; +#6677 = ADVANCED_FACE ( 'NONE', ( #15066 ), #13260, .F. ) ; +#6678 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, 0.07465277777779012700 ) ) ; +#6679 = DIRECTION ( 'NONE', ( -0.9866647708492415300, 0.1627655675043517000, 0.0000000000000000000 ) ) ; +#6680 = EDGE_LOOP ( 'NONE', ( #1419, #16209, #17228, #7642 ) ) ; +#6681 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -3.585550491684345600E-016, 0.1874999999999998300 ) ) ; +#6682 = DIRECTION ( 'NONE', ( 0.7543368200092271900, -0.6564875946873380800, -0.0000000000000000000 ) ) ; +#6683 = VERTEX_POINT ( 'NONE', #14616 ) ; +#6684 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.446180555555555100 ) ) ; +#6685 = ORIENTED_EDGE ( 'NONE', *, *, #13069, .T. ) ; +#6686 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.496527777777777900 ) ) ; +#6687 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6688 = DIRECTION ( 'NONE', ( 1.000000000000000000, 1.776356839400250500E-015, 0.0000000000000000000 ) ) ; +#6689 = FACE_OUTER_BOUND ( 'NONE', #10689, .T. ) ; +#6690 = ADVANCED_FACE ( 'NONE', ( #5372 ), #11905, .F. ) ; +#6691 = VERTEX_POINT ( 'NONE', #8964 ) ; +#6692 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.1128472222222113400 ) ) ; +#6693 = ORIENTED_EDGE ( 'NONE', *, *, #9918, .F. ) ; +#6694 = CARTESIAN_POINT ( 'NONE', ( 5.623910460499082300E-017, 3.874963259223968700E-017, 3.802149639073273400 ) ) ; +#6695 = EDGE_CURVE ( 'NONE', #4611, #12462, #3324, .T. ) ; +#6696 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.406249999999999300 ) ) ; +#6697 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#6698 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.8854166666666616300 ) ) ; +#6699 = VECTOR ( 'NONE', #16177, 39.37007874015748100 ) ; +#6700 = DIRECTION ( 'NONE', ( -1.000000000000000000, -4.440892098500626800E-014, 0.0000000000000000000 ) ) ; +#6701 = ADVANCED_FACE ( 'NONE', ( #4915 ), #11166, .T. ) ; +#6702 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.8958333333333289300 ) ) ; +#6703 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6704 = VERTEX_POINT ( 'NONE', #6049 ) ; +#6705 = ORIENTED_EDGE ( 'NONE', *, *, #6131, .F. ) ; +#6706 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.05208333333332185900 ) ) ; +#6707 = ORIENTED_EDGE ( 'NONE', *, *, #8884, .T. ) ; +#6708 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #6291, #622, #18286, #9187, #13758, #13835, #557, #3332, #12222, #12284, #12147, #1909, #2118, #13699, #10734, #16664, #4982, #15292, #15346, #4925, #9456, #12399, #4863, #7844, #6343, #13898, #3520, #10676, #1847, #7776, #3386, #9319 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ), + ( 1.097460437179652300E-015, 0.002281422825548524000, 0.003422134238322237700, 0.004562845651095950000, 0.005703557063869661900, 0.006844268476643373800, 0.007984979889417088300, 0.009125691302190800200, 0.01026640271496451200, 0.01140711412773822600, 0.01254782554051193900, 0.01368853695328565100, 0.01482924836605936700, 0.01596995977883307700, 0.01711067119160679000, 0.01825138260438050400 ), + .UNSPECIFIED. ) ; +#6709 = CARTESIAN_POINT ( 'NONE', ( -0.4669429843783102200, -0.04111948248551667400, 1.484375000000000200 ) ) ; +#6710 = CIRCLE ( 'NONE', #11840, 0.3134792788290102800 ) ; +#6711 = EDGE_LOOP ( 'NONE', ( #18560, #8756, #4369, #4908 ) ) ; +#6712 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.4895833333333253200 ) ) ; +#6713 = CARTESIAN_POINT ( 'NONE', ( 0.1616077992682507200, 0.4400081984788855600, 1.143750000000000000 ) ) ; +#6714 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#6715 = DIRECTION ( 'NONE', ( 0.9151887321064339200, -0.4030255384282960300, 0.0000000000000000000 ) ) ; +#6716 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.01388888888890065500 ) ) ; +#6717 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6718 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#6719 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.3645833333333248800 ) ) ; +#6720 = VERTEX_POINT ( 'NONE', #17584 ) ; +#6721 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.6562499999999936700 ) ) ; +#6722 = VERTEX_POINT ( 'NONE', #8774 ) ; +#6723 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.368055555555554900 ) ) ; +#6724 = ORIENTED_EDGE ( 'NONE', *, *, #4270, .F. ) ; +#6725 = FACE_OUTER_BOUND ( 'NONE', #16893, .T. ) ; +#6726 = EDGE_CURVE ( 'NONE', #30, #15661, #7616, .T. ) ; +#6727 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.244791666666664700 ) ) ; +#6728 = DIRECTION ( 'NONE', ( -0.1637561077632635800, -0.05777219726883796300, -0.9848077530122094600 ) ) ; +#6729 = EDGE_LOOP ( 'NONE', ( #16575, #2623, #416, #1201 ) ) ; +#6730 = CARTESIAN_POINT ( 'NONE', ( -0.3477592364557826600, 0.3026494512999768900, 1.593375490995827300 ) ) ; +#6731 = EDGE_CURVE ( 'NONE', #9514, #9929, #16201, .T. ) ; +#6732 = CARTESIAN_POINT ( 'NONE', ( -0.2099241813222133500, -0.1870997059339802000, 0.09432924452367400000 ) ) ; +#6733 = PLANE ( 'NONE', #9231 ) ; +#6734 = ORIENTED_EDGE ( 'NONE', *, *, #13162, .T. ) ; +#6735 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#6736 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -5.157534287635060100E-016, 1.249999999999999800 ) ) ; +#6737 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.5486111111111035000 ) ) ; +#6738 = AXIS2_PLACEMENT_3D ( 'NONE', #18431, #8131, #18494 ) ; +#6739 = DIRECTION ( 'NONE', ( -0.1500969283399706300, -0.9886712861729654000, 0.0000000000000000000 ) ) ; +#6740 = ORIENTED_EDGE ( 'NONE', *, *, #17246, .T. ) ; +#6741 = EDGE_LOOP ( 'NONE', ( #3758, #4792, #18940, #689 ) ) ; +#6742 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, 0.01215277777778964300 ) ) ; +#6743 = FACE_OUTER_BOUND ( 'NONE', #2986, .T. ) ; +#6744 = EDGE_LOOP ( 'NONE', ( #5637, #1533, #2553, #2808, #522, #19021 ) ) ; +#6745 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6746 = CARTESIAN_POINT ( 'NONE', ( -0.02225641576241594800, 0.2906778686050315300, 0.1239577441838314600 ) ) ; +#6747 = ORIENTED_EDGE ( 'NONE', *, *, #8734, .T. ) ; +#6748 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#6749 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.3020833333333241000 ) ) ; +#6750 = EDGE_CURVE ( 'NONE', #6242, #30, #11039, .T. ) ; +#6751 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.487847222222222300 ) ) ; +#6752 = CARTESIAN_POINT ( 'NONE', ( 0.2321251145655835700, 0.3983103163368992800, 1.484375000000000200 ) ) ; +#6753 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6754 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6755 = EDGE_CURVE ( 'NONE', #9207, #12681, #13224, .T. ) ; +#6756 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.07465277777776664600 ) ) ; +#6757 = DIRECTION ( 'NONE', ( 0.6078269655510877300, -0.7940695057417560500, 0.0000000000000000000 ) ) ; +#6758 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.458333333333332800 ) ) ; +#6759 = CARTESIAN_POINT ( 'NONE', ( -0.04632776727398118400, -0.4586795339797645200, 1.588758826628429600 ) ) ; +#6760 = EDGE_CURVE ( 'NONE', #8900, #7606, #10208, .T. ) ; +#6761 = VERTEX_POINT ( 'NONE', #12301 ) ; +#6762 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#6763 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.9270833333333292600 ) ) ; +#6764 = AXIS2_PLACEMENT_3D ( 'NONE', #15223, #10785, #13884 ) ; +#6765 = ORIENTED_EDGE ( 'NONE', *, *, #3533, .T. ) ; +#6766 = ORIENTED_EDGE ( 'NONE', *, *, #936, .T. ) ; +#6767 = CARTESIAN_POINT ( 'NONE', ( 0.3535935602980446200, -0.3077269725401350400, 1.143750000000000000 ) ) ; +#6768 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.06597222222221077500 ) ) ; +#6769 = CARTESIAN_POINT ( 'NONE', ( -2.197565968990157300E-017, -0.2886751345948123700, -1.562539370078740200 ) ) ; +#6770 = VECTOR ( 'NONE', #10174, 39.37007874015748900 ) ; +#6771 = ADVANCED_FACE ( 'NONE', ( #16454 ), #331, .T. ) ; +#6772 = DIRECTION ( 'NONE', ( 0.1735239426960715200, 0.006567413361075065900, 0.9848077530122085800 ) ) ; +#6773 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #4109, #10095, #14539, #15997, #4170, #18849, #14464, #4292, #18920 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7348484848484848600, 0.7386363636363636500, 0.7424242424242424300, 0.7462121212121212200, 0.7500000000000000000 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#6774 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.4236111111111025600 ) ) ; +#6775 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#6776 = ORIENTED_EDGE ( 'NONE', *, *, #13046, .F. ) ; +#6777 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.7638888888888834000 ) ) ; +#6778 = EDGE_CURVE ( 'NONE', #1988, #2104, #5823, .T. ) ; +#6779 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.1111111111111000600 ) ) ; +#6780 = CARTESIAN_POINT ( 'NONE', ( -0.1005079758644666100, 0.2747969592287016800, -1.540886914040751100 ) ) ; +#6781 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.07638888888887793200 ) ) ; +#6782 = CIRCLE ( 'NONE', #16777, 0.4687499999999996100 ) ; +#6783 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, 0.01736111111112296000 ) ) ; +#6784 = AXIS2_PLACEMENT_3D ( 'NONE', #10644, #13608, #3416 ) ; +#6785 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6786 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.3541666666666579700 ) ) ; +#6787 = VERTEX_POINT ( 'NONE', #16676 ) ; +#6788 = AXIS2_PLACEMENT_3D ( 'NONE', #4860, #16659, #9452 ) ; +#6789 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.5104166666666593000 ) ) ; +#6790 = ADVANCED_FACE ( 'NONE', ( #1929 ), #15521, .T. ) ; +#6791 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6792 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #8614, #10217, ( #6486 ) ) ; +#6793 = LINE ( 'NONE', #15314, #17616 ) ; +#6794 = ADVANCED_FACE ( 'NONE', ( #15976 ), #458, .F. ) ; +#6795 = CARTESIAN_POINT ( 'NONE', ( -0.3122369529384035900, -0.3496174777277382100, 1.143750000000000000 ) ) ; +#6796 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.8888888888888841800 ) ) ; +#6797 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6798 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.2465277777777676600 ) ) ; +#6799 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.9965277777777740200 ) ) ; +#6800 = FACE_OUTER_BOUND ( 'NONE', #10427, .T. ) ; +#6801 = VERTEX_POINT ( 'NONE', #9092 ) ; +#6802 = LINE ( 'NONE', #5956, #576 ) ; +#6803 = EDGE_CURVE ( 'NONE', #3033, #17052, #17145, .T. ) ; +#6804 = LINE ( 'NONE', #2220, #369 ) ; +#6805 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, 0.1788194444444576600 ) ) ; +#6806 = AXIS2_PLACEMENT_3D ( 'NONE', #12220, #6480, #9318 ) ; +#6807 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.468750000000000000 ) ) ; +#6808 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.2777777777777680200 ) ) ; +#6809 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.5902777777777706800 ) ) ; +#6810 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.7222222222222162100 ) ) ; +#6811 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.342013888888887700 ) ) ; +#6812 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#6813 = PLANE ( 'NONE', #5187 ) ; +#6814 = CIRCLE ( 'NONE', #11689, 0.4610132068742565100 ) ; +#6815 = ORIENTED_EDGE ( 'NONE', *, *, #15883, .T. ) ; +#6816 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.1267361111111002500 ) ) ; +#6817 = CARTESIAN_POINT ( 'NONE', ( -0.01171868954685638100, 0.4686010753596986400, 1.143750000000000000 ) ) ; +#6818 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.440972222222221700 ) ) ; +#6819 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.256944444444442600 ) ) ; +#6820 = AXIS2_PLACEMENT_3D ( 'NONE', #11315, #5861, #9887 ) ; +#6821 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6822 = CIRCLE ( 'NONE', #18025, 0.4687499999999996100 ) ; +#6823 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#6824 = ORIENTED_EDGE ( 'NONE', *, *, #7620, .F. ) ; +#6825 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.7812499999999947800 ) ) ; +#6826 = FACE_OUTER_BOUND ( 'NONE', #15638, .T. ) ; +#6827 = CARTESIAN_POINT ( 'NONE', ( 0.3624522803384100900, 0.2848886122504243900, 1.187613820323601300 ) ) ; +#6828 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.479166666666666500 ) ) ; +#6829 = EDGE_CURVE ( 'NONE', #4587, #3215, #17831, .T. ) ; +#6830 = CARTESIAN_POINT ( 'NONE', ( 0.04632776727397798500, 0.4586795339797648000, 1.143750000000000000 ) ) ; +#6831 = ORIENTED_EDGE ( 'NONE', *, *, #19127, .F. ) ; +#6832 = CARTESIAN_POINT ( 'NONE', ( -0.4120995984523162500, -0.2066569569792553700, 1.592116737595687900 ) ) ; +#6833 = FACE_OUTER_BOUND ( 'NONE', #4155, .T. ) ; +#6834 = LINE ( 'NONE', #7730, #16042 ) ; +#6835 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.5104166666666586400 ) ) ; +#6836 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.2881944444444349300 ) ) ; +#6837 = FACE_OUTER_BOUND ( 'NONE', #11929, .T. ) ; +#6838 = EDGE_LOOP ( 'NONE', ( #4210, #2109, #407, #1116 ) ) ; +#6839 = ORIENTED_EDGE ( 'NONE', *, *, #18131, .F. ) ; +#6840 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6841 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, -0.1443375672974061000, -1.562539370078740200 ) ) ; +#6842 = CARTESIAN_POINT ( 'NONE', ( -0.2189622872633789100, 0.1981475778151241500, -1.538177026931944800 ) ) ; +#6843 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.1041666666666789700 ) ) ; +#6845 = EDGE_CURVE ( 'NONE', #4820, #1172, #13915, .T. ) ; +#6844 = VECTOR ( 'NONE', #11892, 39.37007874015748100 ) ; +#6846 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6847 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.3993055555555471400 ) ) ; +#6848 = AXIS2_PLACEMENT_3D ( 'NONE', #4086, #9709, #15789 ) ; +#6849 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.6527777777777714600 ) ) ; +#6850 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.1527777777777673500 ) ) ; +#6851 = ORIENTED_EDGE ( 'NONE', *, *, #1968, .F. ) ; +#6852 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.9062499999999953400 ) ) ; +#6853 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.1249999999999895100 ) ) ; +#6854 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -3.585550491684345600E-016, 0.1874999999999998300 ) ) ; +#6855 = LINE ( 'NONE', #2022, #12840 ) ; +#6856 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#6857 = LINE ( 'NONE', #9235, #10318 ) ; +#6858 = VECTOR ( 'NONE', #16510, 39.37007874015748100 ) ; +#6859 = VERTEX_POINT ( 'NONE', #12103 ) ; +#6860 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.2916666666666569700 ) ) ; +#6861 = LINE ( 'NONE', #4655, #7549 ) ; +#6862 = FACE_OUTER_BOUND ( 'NONE', #3700, .T. ) ; +#6863 = ORIENTED_EDGE ( 'NONE', *, *, #15932, .F. ) ; +#6864 = EDGE_CURVE ( 'NONE', #8136, #17510, #11597, .T. ) ; +#6865 = ADVANCED_FACE ( 'NONE', ( #14359 ), #16617, .F. ) ; +#6866 = EDGE_CURVE ( 'NONE', #18908, #483, #1698, .T. ) ; +#6867 = VERTEX_POINT ( 'NONE', #13598 ) ; +#6868 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.312499999999998900 ) ) ; +#6869 = EDGE_CURVE ( 'NONE', #8838, #7452, #15282, .T. ) ; +#6870 = ORIENTED_EDGE ( 'NONE', *, *, #3301, .F. ) ; +#6871 = AXIS2_PLACEMENT_3D ( 'NONE', #11212, #15630, #976 ) ; +#6872 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, 0.1545138888889018300 ) ) ; +#6873 = AXIS2_PLACEMENT_3D ( 'NONE', #18991, #14470, #1274 ) ; +#6874 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.527777777777778600 ) ) ; +#6875 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6876 = AXIS2_PLACEMENT_3D ( 'NONE', #4089, #8535, #9893 ) ; +#6877 = VERTEX_POINT ( 'NONE', #15253 ) ; +#6878 = VERTEX_POINT ( 'NONE', #12556 ) ; +#6879 = VECTOR ( 'NONE', #7149, 39.37007874015748100 ) ; +#6880 = LINE ( 'NONE', #2189, #17027 ) ; +#6881 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#6882 = ORIENTED_EDGE ( 'NONE', *, *, #9925, .T. ) ; +#6883 = ORIENTED_EDGE ( 'NONE', *, *, #5712, .F. ) ; +#6884 = LINE ( 'NONE', #13060, #6429 ) ; +#6885 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.185763888888886800 ) ) ; +#6886 = CARTESIAN_POINT ( 'NONE', ( 0.01152533017185641800, -0.4608691177296606000, 1.440511179676401600 ) ) ; +#6887 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.7673611111111056100 ) ) ; +#6888 = ADVANCED_FACE ( 'NONE', ( #18304 ), #777, .T. ) ; +#6889 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.06423611111109975300 ) ) ; +#6890 = CARTESIAN_POINT ( 'NONE', ( -0.1803732187963043300, 0.4242625117230446300, 1.591590229135180400 ) ) ; +#6891 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.354166666666665400 ) ) ; +#6892 = CARTESIAN_POINT ( 'NONE', ( -0.4289947181748879900, -0.1889182211382693400, 1.143750000000000000 ) ) ; +#6893 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, 1.173920969386802400E-014 ) ) ; +#6894 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.8923611111111066100 ) ) ; +#6895 = ORIENTED_EDGE ( 'NONE', *, *, #4934, .F. ) ; +#6896 = ORIENTED_EDGE ( 'NONE', *, *, #13165, .T. ) ; +#6897 = EDGE_CURVE ( 'NONE', #13929, #8730, #3764, .T. ) ; +#6898 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.04166666666667873800 ) ) ; +#6899 = EDGE_LOOP ( 'NONE', ( #18242, #14507, #11564, #13861 ) ) ; +#6900 = EDGE_LOOP ( 'NONE', ( #8991, #11000, #15224, #11565 ) ) ; +#6901 = LINE ( 'NONE', #16593, #17725 ) ; +#6902 = CYLINDRICAL_SURFACE ( 'NONE', #10267, 0.3125000000000008300 ) ; +#6903 = AXIS2_PLACEMENT_3D ( 'NONE', #8323, #11350, #18565 ) ; +#6904 = VERTEX_POINT ( 'NONE', #3730 ) ; +#6905 = VERTEX_POINT ( 'NONE', #3532 ) ; +#6906 = VECTOR ( 'NONE', #20, 39.37007874015748100 ) ; +#6907 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, 0.03819444444445645200 ) ) ; +#6908 = EDGE_CURVE ( 'NONE', #6141, #7511, #7468, .T. ) ; +#6909 = AXIS2_PLACEMENT_3D ( 'NONE', #15137, #16628, #18799 ) ; +#6910 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6911 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.4687499999999916700 ) ) ; +#6912 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.2673611111111014500 ) ) ; +#6913 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.9895833333333296000 ) ) ; +#6914 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1748, #13534, #3237, #3354, #13722, #15129, #4702, #4638, #9099 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7803030303030302800, 0.7840909090909090600, 0.7878787878787878500, 0.7916666666666666300, 0.7954545454545454100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#6915 = PLANE ( 'NONE', #14558 ) ; +#6916 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.05555555555554442900 ) ) ; +#6917 = ORIENTED_EDGE ( 'NONE', *, *, #14091, .T. ) ; +#6918 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, 0.01388888888890093600 ) ) ; +#6919 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6920 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6921 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.4895833333333257100 ) ) ; +#6922 = ORIENTED_EDGE ( 'NONE', *, *, #8793, .T. ) ; +#6923 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.5243055555555481400 ) ) ; +#6924 = FACE_OUTER_BOUND ( 'NONE', #7364, .T. ) ; +#6925 = VECTOR ( 'NONE', #12682, 39.37007874015748900 ) ; +#6926 = ORIENTED_EDGE ( 'NONE', *, *, #9706, .T. ) ; +#6927 = ORIENTED_EDGE ( 'NONE', *, *, #15245, .T. ) ; +#6928 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6929 = FACE_OUTER_BOUND ( 'NONE', #5515, .T. ) ; +#6930 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.079861111111107800 ) ) ; +#6931 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.2326388888888792600 ) ) ; +#6932 = EDGE_CURVE ( 'NONE', #8658, #8918, #9995, .T. ) ; +#6933 = CARTESIAN_POINT ( 'NONE', ( -0.1832910159265211900, -0.2130954649537681600, 0.09525519642217479500 ) ) ; +#6934 = AXIS2_PLACEMENT_3D ( 'NONE', #17329, #5535, #10255 ) ; +#6935 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.2361111111111010600 ) ) ; +#6936 = DIRECTION ( 'NONE', ( -1.000000000000000000, -1.953992523340275500E-014, 0.0000000000000000000 ) ) ; +#6937 = ORIENTED_EDGE ( 'NONE', *, *, #5382, .F. ) ; +#6938 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.03124999999998836000 ) ) ; +#6939 = ORIENTED_EDGE ( 'NONE', *, *, #4934, .T. ) ; +#6940 = ORIENTED_EDGE ( 'NONE', *, *, #343, .T. ) ; +#6941 = FACE_OUTER_BOUND ( 'NONE', #6377, .T. ) ; +#6942 = VERTEX_POINT ( 'NONE', #2131 ) ; +#6943 = ORIENTED_EDGE ( 'NONE', *, *, #16160, .T. ) ; +#6944 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.333333333333332400 ) ) ; +#6945 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.434027777777777700 ) ) ; +#6946 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.555555555555556200 ) ) ; +#6947 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.9756944444444405300 ) ) ; +#6948 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6949 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.225694444444442400 ) ) ; +#6950 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#6951 = VERTEX_POINT ( 'NONE', #6559 ) ; +#6952 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.154513888888886200 ) ) ; +#6953 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.423611111111110500 ) ) ; +#6954 = ORIENTED_EDGE ( 'NONE', *, *, #12940, .F. ) ; +#6955 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.7881944444444389800 ) ) ; +#6956 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.09548611111110016900 ) ) ; +#6957 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.174024639073316200 ) ) ; +#6958 = EDGE_CURVE ( 'NONE', #8850, #10467, #6067, .T. ) ; +#6959 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.402777777777777000 ) ) ; +#6960 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#6961 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#6962 = ORIENTED_EDGE ( 'NONE', *, *, #7024, .F. ) ; +#6963 = CONICAL_SURFACE ( 'NONE', #5884, 0.4610132068742565100, 0.1745329251994272000 ) ; +#6964 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.7465277777777720200 ) ) ; +#6965 = ORIENTED_EDGE ( 'NONE', *, *, #9773, .T. ) ; +#6966 = CARTESIAN_POINT ( 'NONE', ( -1.130052755820794300E-018, 2.985821035825957300E-017, 3.802149639073315200 ) ) ; +#6967 = EDGE_CURVE ( 'NONE', #71, #17877, #10793, .T. ) ; +#6968 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6969 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#6970 = ADVANCED_FACE ( 'NONE', ( #5130 ), #9540, .T. ) ; +#6971 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#6972 = VERTEX_POINT ( 'NONE', #9658 ) ; +#6973 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.6510416666666601900 ) ) ; +#6974 = ORIENTED_EDGE ( 'NONE', *, *, #12069, .T. ) ; +#6975 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.3958333333333244300 ) ) ; +#6976 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6977 = FACE_OUTER_BOUND ( 'NONE', #3920, .T. ) ; +#6978 = PLANE ( 'NONE', #15855 ) ; +#6979 = ORIENTED_EDGE ( 'NONE', *, *, #5276, .F. ) ; +#6980 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, 0.08333333333334573500 ) ) ; +#6981 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.1805555555555686500 ) ) ; +#6982 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#6983 = VERTEX_POINT ( 'NONE', #9475 ) ; +#6984 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6985 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.2881944444444352000 ) ) ; +#6986 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.6111111111111043900 ) ) ; +#6987 = ADVANCED_FACE ( 'NONE', ( #8605 ), #13775, .F. ) ; +#6988 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#6989 = ORIENTED_EDGE ( 'NONE', *, *, #13327, .F. ) ; +#6990 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.9409722222222176600 ) ) ; +#6991 = EDGE_CURVE ( 'NONE', #7561, #4317, #18522, .T. ) ; +#6992 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.1458333333333230200 ) ) ; +#6993 = CARTESIAN_POINT ( 'NONE', ( 0.4492896982220422300, 0.1336612493265934800, 1.484375000000000200 ) ) ; +#6994 = EDGE_CURVE ( 'NONE', #13154, #13288, #4684, .T. ) ; +#6995 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#6996 = AXIS2_PLACEMENT_3D ( 'NONE', #17548, #13097, #11620 ) ; +#6997 = AXIS2_PLACEMENT_3D ( 'NONE', #16862, #12341, #435 ) ; +#6998 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.326388888888887500 ) ) ; +#6999 = ORIENTED_EDGE ( 'NONE', *, *, #17988, .T. ) ; +#7000 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.3993055555555467000 ) ) ; +#7001 = AXIS2_PLACEMENT_3D ( 'NONE', #8645, #4202, #4067 ) ; +#7002 = CARTESIAN_POINT ( 'NONE', ( 0.1616086329535845700, -0.4400104683469168700, 1.484375000000000200 ) ) ; +#7003 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#7004 = VECTOR ( 'NONE', #832, 39.37007874015748100 ) ; +#7005 = EDGE_LOOP ( 'NONE', ( #15186, #8376, #19100, #8210 ) ) ; +#7006 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.218749999999998200 ) ) ; +#7007 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.524305555555556000 ) ) ; +#7008 = VERTEX_POINT ( 'NONE', #16935 ) ; +#7009 = CARTESIAN_POINT ( 'NONE', ( 0.4505462270817887600, -0.09767944602039578500, 1.484375000000000200 ) ) ; +#7010 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#7011 = DIRECTION ( 'NONE', ( -0.5673761158323297200, -0.8234587683563876500, 0.0000000000000000000 ) ) ; +#7012 = ORIENTED_EDGE ( 'NONE', *, *, #1091, .T. ) ; +#7013 = EDGE_CURVE ( 'NONE', #14798, #10226, #16438, .T. ) ; +#7014 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.147569444444441800 ) ) ; +#7015 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.315972222222220800 ) ) ; +#7016 = PLANE ( 'NONE', #16251 ) ; +#7017 = DIRECTION ( 'NONE', ( 0.1055480449047611100, 0.1378887226129330000, 0.9848077530122091300 ) ) ; +#7018 = EDGE_CURVE ( 'NONE', #2261, #9836, #10682, .T. ) ; +#7019 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, 0.1232638888889017200 ) ) ; +#7020 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7021 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.135416666666663900 ) ) ; +#7022 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#7023 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#7024 = EDGE_CURVE ( 'NONE', #790, #4406, #7693, .T. ) ; +#7025 = AXIS2_PLACEMENT_3D ( 'NONE', #18955, #5789, #14625 ) ; +#7026 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.6701388888888828400 ) ) ; +#7027 = AXIS2_PLACEMENT_3D ( 'NONE', #7148, #8622, #10171 ) ; +#7028 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#7029 = CARTESIAN_POINT ( 'NONE', ( -0.4418741004648775200, -0.1314551491986582500, 1.484375000000000200 ) ) ; +#7030 = CONICAL_SURFACE ( 'NONE', #2694, 0.4610132068742565100, 0.1745329251994321400 ) ; +#7031 = VECTOR ( 'NONE', #14493, 39.37007874015748100 ) ; +#7032 = CARTESIAN_POINT ( 'NONE', ( 2.624314698447061100E-016, 6.562837953529235000E-018, 3.802149639073292500 ) ) ; +#7033 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.6545138888888825100 ) ) ; +#7034 = VECTOR ( 'NONE', #15647, 39.37007874015748100 ) ; +#7035 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.2083333333333229600 ) ) ; +#7036 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#7037 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#7038 = EDGE_CURVE ( 'NONE', #900, #16576, #17878, .T. ) ; +#7039 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323615500 ) ) ; +#7040 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.565972222222222800 ) ) ; +#7041 = CARTESIAN_POINT ( 'NONE', ( -0.3624522803384120900, -0.2848886122504218900, 1.593375490995827300 ) ) ; +#7042 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.03819444444443295700 ) ) ; +#7043 = AXIS2_PLACEMENT_3D ( 'NONE', #4289, #14536, #16250 ) ; +#7044 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.3993055555555472000 ) ) ; +#7045 = LINE ( 'NONE', #15600, #3361 ) ; +#7046 = VERTEX_POINT ( 'NONE', #5505 ) ; +#7047 = PLANE ( 'NONE', #12126 ) ; +#7048 = LINE ( 'NONE', #2687, #10040 ) ; +#7049 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.003472222222218100 ) ) ; +#7050 = ORIENTED_EDGE ( 'NONE', *, *, #4746, .F. ) ; +#7051 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.09722222222221142700 ) ) ; +#7052 = CARTESIAN_POINT ( 'NONE', ( -0.4548654901190618500, 0.07503707624389219200, 1.440511179676387000 ) ) ; +#7053 = LINE ( 'NONE', #17666, #19024 ) ; +#7054 = CARTESIAN_POINT ( 'NONE', ( 0.2718953454919571500, -0.09106625332270117100, 0.1095974673895891300 ) ) ; +#7055 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.3576388888888797400 ) ) ; +#7056 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#7057 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.178819444444442000 ) ) ; +#7058 = ADVANCED_FACE ( 'NONE', ( #14829 ), #8155, .T. ) ; +#7059 = VECTOR ( 'NONE', #17886, 39.37007874015748900 ) ; +#7060 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.374999999999999100 ) ) ; +#7061 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.194444444444442400 ) ) ; +#7062 = EDGE_CURVE ( 'NONE', #10691, #15154, #18972, .T. ) ; +#7063 = LINE ( 'NONE', #15567, #4063 ) ; +#7064 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.381944444444444000 ) ) ; +#7065 = ORIENTED_EDGE ( 'NONE', *, *, #18923, .T. ) ; +#7066 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7067 = CARTESIAN_POINT ( 'NONE', ( -0.1833993232404410300, 0.4313803237839114500, 1.484375000000000200 ) ) ; +#7068 = CONICAL_SURFACE ( 'NONE', #10666, 0.4687475818742581300, 0.1745329251994306200 ) ; +#7069 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.08680555555554454700 ) ) ; +#7070 = DIRECTION ( 'NONE', ( -0.06279051952930997400, -0.9980267284282717800, 0.0000000000000000000 ) ) ; +#7071 = CARTESIAN_POINT ( 'NONE', ( -0.3685350091390597900, 0.2896696558821318900, 1.484375000000000200 ) ) ; +#7072 = CARTESIAN_POINT ( 'NONE', ( -0.3238882248697046400, 0.3280694967582902200, 1.484375000000000200 ) ) ; +#7073 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.331597222222220800 ) ) ; +#7074 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.340277777777776300 ) ) ; +#7075 = PLANE ( 'NONE', #17058 ) ; +#7076 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, 0.06423611111112352600 ) ) ; +#7077 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7078 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.270833333333331300 ) ) ; +#7079 = AXIS2_PLACEMENT_3D ( 'NONE', #4659, #14966, #6138 ) ; +#7080 = CARTESIAN_POINT ( 'NONE', ( -0.1467474614781969200, -0.2602785162336899200, 0.1426023340966103800 ) ) ; +#7081 = ORIENTED_EDGE ( 'NONE', *, *, #12770, .T. ) ; +#7082 = LINE ( 'NONE', #5227, #13062 ) ; +#7083 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.6874999999999940000 ) ) ; +#7084 = VECTOR ( 'NONE', #7865, 39.37007874015748100 ) ; +#7085 = FACE_OUTER_BOUND ( 'NONE', #18262, .T. ) ; +#7086 = LINE ( 'NONE', #13744, #2024 ) ; +#7087 = ORIENTED_EDGE ( 'NONE', *, *, #11100, .F. ) ; +#7088 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7089 = VECTOR ( 'NONE', #4715, 39.37007874015748900 ) ; +#7090 = CIRCLE ( 'NONE', #11644, 0.4610132068742565100 ) ; +#7091 = ORIENTED_EDGE ( 'NONE', *, *, #2196, .F. ) ; +#7092 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#7093 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.7881944444444388700 ) ) ; +#7094 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#7095 = ORIENTED_EDGE ( 'NONE', *, *, #18798, .T. ) ; +#7096 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.5434027777777702400 ) ) ; +#7097 = ORIENTED_EDGE ( 'NONE', *, *, #4440, .T. ) ; +#7098 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.1354166666666558600 ) ) ; +#7099 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.2326388888888787900 ) ) ; +#7100 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#7101 = ADVANCED_FACE ( 'NONE', ( #89 ), #8236, .F. ) ; +#7102 = CARTESIAN_POINT ( 'NONE', ( -0.04632776727398443100, 0.4586795339797642400, 1.484375000000000200 ) ) ; +#7103 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.538194444444444900 ) ) ; +#7104 = EDGE_CURVE ( 'NONE', #13027, #8309, #12984, .T. ) ; +#7105 = ORIENTED_EDGE ( 'NONE', *, *, #14039, .F. ) ; +#7106 = LINE ( 'NONE', #5877, #11026 ) ; +#7107 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#7108 = FACE_OUTER_BOUND ( 'NONE', #14487, .T. ) ; +#7109 = CARTESIAN_POINT ( 'NONE', ( 0.2154811238112834000, -0.4162837743582973300, 1.484375000000000200 ) ) ; +#7110 = FACE_OUTER_BOUND ( 'NONE', #12311, .T. ) ; +#7111 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.5208333333333257100 ) ) ; +#7112 = ORIENTED_EDGE ( 'NONE', *, *, #18549, .T. ) ; +#7113 = AXIS2_PLACEMENT_3D ( 'NONE', #3561, #10977, #15278 ) ; +#7114 = LINE ( 'NONE', #883, #18407 ) ; +#7115 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.3229166666666576400 ) ) ; +#7116 = DIRECTION ( 'NONE', ( -0.9996874511566102800, -0.02499999999999943900, 0.0000000000000000000 ) ) ; +#7117 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.034722222222218300 ) ) ; +#7118 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.08333333333332251800 ) ) ; +#7119 = ORIENTED_EDGE ( 'NONE', *, *, #3792, .T. ) ; +#7120 = CARTESIAN_POINT ( 'NONE', ( -0.01518256551005792300, -0.2824316044598566600, 0.1000929421147193600 ) ) ; +#7121 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#7122 = VERTEX_POINT ( 'NONE', #12864 ) ; +#7123 = ORIENTED_EDGE ( 'NONE', *, *, #8619, .T. ) ; +#7124 = FACE_OUTER_BOUND ( 'NONE', #14690, .T. ) ; +#7125 = DIRECTION ( 'NONE', ( -0.1713325394261255000, -0.02826394418405722700, 0.9848077530122088000 ) ) ; +#7126 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.8524305555555507000 ) ) ; +#7127 = ORIENTED_EDGE ( 'NONE', *, *, #5088, .F. ) ; +#7128 = ORIENTED_EDGE ( 'NONE', *, *, #12294, .F. ) ; +#7129 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#7130 = EDGE_CURVE ( 'NONE', #11653, #2056, #3086, .T. ) ; +#7131 = VECTOR ( 'NONE', #14222, 39.37007874015748100 ) ; +#7132 = VERTEX_POINT ( 'NONE', #5434 ) ; +#7133 = EDGE_CURVE ( 'NONE', #119, #3160, #7372, .T. ) ; +#7134 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#7135 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.368055555555554900 ) ) ; +#7136 = EDGE_CURVE ( 'NONE', #8287, #3440, #5587, .T. ) ; +#7137 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.548611111111112000 ) ) ; +#7138 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676401600 ) ) ; +#7139 = AXIS2_PLACEMENT_3D ( 'NONE', #9630, #5297, #4845 ) ; +#7140 = ORIENTED_EDGE ( 'NONE', *, *, #18660, .T. ) ; +#7141 = CARTESIAN_POINT ( 'NONE', ( -0.4606833792705947700, -0.01743562377178979600, 1.587900241027141200 ) ) ; +#7142 = CARTESIAN_POINT ( 'NONE', ( 0.1616086329535845700, -0.4400104683469168700, 1.591590229135180700 ) ) ; +#7143 = PLANE ( 'NONE', #16165 ) ; +#7144 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.9739583333333292600 ) ) ; +#7145 = ORIENTED_EDGE ( 'NONE', *, *, #79, .F. ) ; +#7146 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.270833333333331300 ) ) ; +#7147 = LINE ( 'NONE', #17820, #11738 ) ; +#7148 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676399000 ) ) ; +#7149 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7150 = LINE ( 'NONE', #18540, #6925 ) ; +#7151 = EDGE_LOOP ( 'NONE', ( #17547, #2516, #13159, #14775 ) ) ; +#7152 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, 0.02951388888890085100 ) ) ; +#7153 = ORIENTED_EDGE ( 'NONE', *, *, #8471, .F. ) ; +#7154 = PLANE ( 'NONE', #2309 ) ; +#7155 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.204861111111108700 ) ) ; +#7156 = DIRECTION ( 'NONE', ( -0.9386889991400975100, 0.3447650836342945300, 0.0000000000000000000 ) ) ; +#7157 = CARTESIAN_POINT ( 'NONE', ( -0.2862470699969432700, -0.07810744365076700800, 0.1368217185197635200 ) ) ; +#7158 = LINE ( 'NONE', #11234, #9681 ) ; +#7159 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.5763888888888818500 ) ) ; +#7160 = EDGE_CURVE ( 'NONE', #5036, #433, #15955, .T. ) ; +#7161 = DIRECTION ( 'NONE', ( -0.7289686274214103300, -0.6845471059286898400, 0.0000000000000000000 ) ) ; +#7162 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #17342, #18814, #13093, #14580, #14374, #17543, #9948, #5729, #10010 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6590909090909090600, 0.6628787878787878500, 0.6666666666666666300, 0.6704545454545454100, 0.6742424242424242000 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#7163 = VERTEX_POINT ( 'NONE', #18541 ) ; +#7164 = CARTESIAN_POINT ( 'NONE', ( 0.04632776727398758100, -0.4586795339797638500, 1.440511179676400500 ) ) ; +#7165 = AXIS2_PLACEMENT_3D ( 'NONE', #14494, #18941, #12889 ) ; +#7166 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.1527777777777908400 ) ) ; +#7167 = DIRECTION ( 'NONE', ( -1.000000000000000000, -2.042810365310288000E-014, 0.0000000000000000000 ) ) ; +#7168 = VERTEX_POINT ( 'NONE', #9721 ) ; +#7169 = ADVANCED_FACE ( 'NONE', ( #320 ), #1233, .T. ) ; +#7170 = ORIENTED_EDGE ( 'NONE', *, *, #8594, .F. ) ; +#7171 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676401600 ) ) ; +#7172 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#7173 = FACE_OUTER_BOUND ( 'NONE', #10215, .T. ) ; +#7174 = ORIENTED_EDGE ( 'NONE', *, *, #11439, .F. ) ; +#7175 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.5781249999999928900 ) ) ; +#7176 = ORIENTED_EDGE ( 'NONE', *, *, #8731, .F. ) ; +#7177 = FACE_OUTER_BOUND ( 'NONE', #13399, .T. ) ; +#7178 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 1.202013117212275700E-014 ) ) ; +#7179 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.1423611111111001700 ) ) ; +#7180 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#7181 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -3.585550491684345600E-016, 0.1874999999999998300 ) ) ; +#7182 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.1666666666666794500 ) ) ; +#7183 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.218749999999998000 ) ) ; +#7184 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.583333333333334400 ) ) ; +#7185 = ORIENTED_EDGE ( 'NONE', *, *, #3691, .F. ) ; +#7186 = ORIENTED_EDGE ( 'NONE', *, *, #4640, .F. ) ; +#7187 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.4722222222222143800 ) ) ; +#7188 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#7189 = ORIENTED_EDGE ( 'NONE', *, *, #4512, .F. ) ; +#7190 = VECTOR ( 'NONE', #15761, 39.37007874015748100 ) ; +#7191 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.7708333333333273800 ) ) ; +#7192 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.05208333333334535400 ) ) ; +#7193 = ORIENTED_EDGE ( 'NONE', *, *, #10824, .F. ) ; +#7194 = EDGE_CURVE ( 'NONE', #132, #2594, #11705, .T. ) ; +#7195 = CARTESIAN_POINT ( 'NONE', ( 0.1034502481550510600, -0.4492562999771337900, 1.484375000000000200 ) ) ; +#7196 = AXIS2_PLACEMENT_3D ( 'NONE', #3537, #908, #6754 ) ; +#7197 = DIRECTION ( 'NONE', ( 0.3912539079287132300, 0.9202827715058615700, -0.0000000000000000000 ) ) ; +#7198 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.9774305555555516900 ) ) ; +#7199 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#7200 = ORIENTED_EDGE ( 'NONE', *, *, #9827, .T. ) ; +#7201 = VERTEX_POINT ( 'NONE', #7071 ) ; +#7202 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.368055555555554900 ) ) ; +#7203 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.093749999999997600 ) ) ; +#7204 = ORIENTED_EDGE ( 'NONE', *, *, #10479, .T. ) ; +#7205 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.513888888888889300 ) ) ; +#7206 = VECTOR ( 'NONE', #9875, 39.37007874015748900 ) ; +#7207 = ADVANCED_FACE ( 'NONE', ( #13458 ), #4233, .F. ) ; +#7208 = EDGE_LOOP ( 'NONE', ( #18057, #18035, #11271, #14663 ) ) ; +#7209 = CARTESIAN_POINT ( 'NONE', ( 0.4624991113355821900, -0.07629635976766463400, 1.143750000000000000 ) ) ; +#7210 = PLANE ( 'NONE', #2684 ) ; +#7211 = EDGE_LOOP ( 'NONE', ( #17996, #1461, #7426, #17409 ) ) ; +#7212 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7213 = CARTESIAN_POINT ( 'NONE', ( -0.2195524838606170700, -0.2235952672981245100, 0.1802893735891336300 ) ) ; +#7214 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.140624999999997100 ) ) ; +#7215 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.454861111111110700 ) ) ; +#7216 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7217 = CARTESIAN_POINT ( 'NONE', ( -0.1616086329535782200, -0.4400104683469192000, 1.591590229135180400 ) ) ; +#7218 = EDGE_CURVE ( 'NONE', #7905, #17805, #6773, .T. ) ; +#7219 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.302083333333331700 ) ) ; +#7220 = CARTESIAN_POINT ( 'NONE', ( -6.815988028331943500E-017, -2.291130166568907500E-016, 3.802149639073329400 ) ) ; +#7221 = CARTESIAN_POINT ( 'NONE', ( -0.2015810829820533500, -0.2190808706491811100, 0.1409264401747008500 ) ) ; +#7222 = ORIENTED_EDGE ( 'NONE', *, *, #16041, .T. ) ; +#7223 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.5833333333333264900 ) ) ; +#7224 = VERTEX_POINT ( 'NONE', #7262 ) ; +#7225 = VECTOR ( 'NONE', #16649, 39.37007874015748100 ) ; +#7226 = ORIENTED_EDGE ( 'NONE', *, *, #15876, .T. ) ; +#7227 = DIRECTION ( 'NONE', ( 0.6564875946873381900, 0.7543368200092271900, 0.0000000000000000000 ) ) ; +#7228 = EDGE_CURVE ( 'NONE', #8134, #18368, #2616, .T. ) ; +#7229 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#7230 = ORIENTED_EDGE ( 'NONE', *, *, #13184, .T. ) ; +#7231 = VECTOR ( 'NONE', #16807, 39.37007874015748100 ) ; +#7232 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.5017361111111033900 ) ) ; +#7233 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.2916666666666569700 ) ) ; +#7234 = EDGE_LOOP ( 'NONE', ( #7661, #14641, #12421, #17605 ) ) ; +#7235 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -0.1208802155999175300, 1.541407766490856100 ) ) ; +#7236 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.6857638888888825100 ) ) ; +#7237 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#7238 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.548611111111111400 ) ) ; +#7239 = ORIENTED_EDGE ( 'NONE', *, *, #16300, .F. ) ; +#7240 = DIRECTION ( 'NONE', ( 0.1500969283399838900, -0.9886712861729634000, 0.0000000000000000000 ) ) ; +#7241 = DIRECTION ( 'NONE', ( 0.1219978065221462700, -0.1235727510854609900, -0.9848077530122088000 ) ) ; +#7242 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.5381944444444368700 ) ) ; +#7243 = ORIENTED_EDGE ( 'NONE', *, *, #1012, .T. ) ; +#7244 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.2847222222222128800 ) ) ; +#7245 = CYLINDRICAL_SURFACE ( 'NONE', #16380, 0.4610132068742565100 ) ; +#7246 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.8194444444444389800 ) ) ; +#7247 = EDGE_CURVE ( 'NONE', #15240, #4099, #6287, .T. ) ; +#7248 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.319444444444443300 ) ) ; +#7249 = EDGE_CURVE ( 'NONE', #17560, #7168, #13201, .T. ) ; +#7250 = AXIS2_PLACEMENT_3D ( 'NONE', #3348, #13658, #269 ) ; +#7251 = AXIS2_PLACEMENT_3D ( 'NONE', #3579, #2045, #4865 ) ; +#7252 = CARTESIAN_POINT ( 'NONE', ( 0.3134792788290102800, 0.0000000000000000000, 1.562500000000000000 ) ) ; +#7253 = CIRCLE ( 'NONE', #4307, 0.3144999999999991100 ) ; +#7254 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.9635416666666626300 ) ) ; +#7255 = DIRECTION ( 'NONE', ( 0.8763066800438663600, -0.4817536741017101100, 0.0000000000000000000 ) ) ; +#7256 = VERTEX_POINT ( 'NONE', #18986 ) ; +#7257 = ADVANCED_FACE ( 'NONE', ( #6524 ), #4893, .T. ) ; +#7258 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.124999999999997300 ) ) ; +#7259 = FACE_OUTER_BOUND ( 'NONE', #14233, .T. ) ; +#7260 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.333333333333332400 ) ) ; +#7261 = DIRECTION ( 'NONE', ( 0.1156686028357436500, -0.1295162689590452500, 0.9848077530122085800 ) ) ; +#7262 = CARTESIAN_POINT ( 'NONE', ( -0.4289947181748879900, -0.1889182211382693700, 1.484375000000000200 ) ) ; +#7263 = EDGE_CURVE ( 'NONE', #12, #2714, #13669, .T. ) ; +#7264 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.9427083333333290400 ) ) ; +#7265 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.177083333333330800 ) ) ; +#7266 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#7267 = VECTOR ( 'NONE', #5401, 39.37007874015748100 ) ; +#7268 = AXIS2_PLACEMENT_3D ( 'NONE', #5166, #9511, #3632 ) ; +#7269 = ORIENTED_EDGE ( 'NONE', *, *, #13622, .T. ) ; +#7270 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, 0.1128472222222348400 ) ) ; +#7271 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.190972222222219900 ) ) ; +#7272 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7273 = EDGE_CURVE ( 'NONE', #15115, #12156, #2158, .T. ) ; +#7274 = LINE ( 'NONE', #2704, #17172 ) ; +#7275 = AXIS2_PLACEMENT_3D ( 'NONE', #1424, #7341, #1289 ) ; +#7276 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #11208, #12353, #18357, #8057, #13858, #13973, #18425, #11014, #12501, #15312, #3790, #5006 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 4 ), + ( 2.380733176189871200E-007, 0.001851555320830851900, 0.003702872568344084700, 0.004628531192100702500, 0.005554189815857319400, 0.007405507063370557500 ), + .UNSPECIFIED. ) ; +#7277 = ORIENTED_EDGE ( 'NONE', *, *, #9854, .T. ) ; +#7278 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.3645833333333248800 ) ) ; +#7279 = AXIS2_PLACEMENT_3D ( 'NONE', #7237, #1547, #16092 ) ; +#7280 = PLANE ( 'NONE', #2338 ) ; +#7281 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.423611111111110700 ) ) ; +#7282 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.4236111111111028900 ) ) ; +#7283 = LINE ( 'NONE', #6093, #14420 ) ; +#7284 = VERTEX_POINT ( 'NONE', #2679 ) ; +#7285 = LINE ( 'NONE', #16817, #15342 ) ; +#7286 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#7287 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.3402777777777685200 ) ) ; +#7288 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#7289 = ADVANCED_FACE ( 'NONE', ( #771 ), #5569, .F. ) ; +#7290 = ORIENTED_EDGE ( 'NONE', *, *, #18500, .F. ) ; +#7291 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 3.061616973349193300E-017, 1.525850221280107700 ) ) ; +#7292 = EDGE_CURVE ( 'NONE', #12075, #5233, #16457, .T. ) ; +#7293 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.284722222222220500 ) ) ; +#7294 = FACE_OUTER_BOUND ( 'NONE', #18529, .T. ) ; +#7295 = CARTESIAN_POINT ( 'NONE', ( -0.2349403677381914100, 0.1473385372873777800, 0.08487091399955684600 ) ) ; +#7296 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#7297 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.295138888888887500 ) ) ; +#7298 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.3611111111111024500 ) ) ; +#7299 = CARTESIAN_POINT ( 'NONE', ( -0.1894325789121061000, 0.2398247808482164800, 0.1613258267798078300 ) ) ; +#7300 = ORIENTED_EDGE ( 'NONE', *, *, #16238, .F. ) ; +#7301 = FACE_OUTER_BOUND ( 'NONE', #1996, .T. ) ; +#7302 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.7083333333333269300 ) ) ; +#7303 = TOROIDAL_SURFACE ( 'NONE', #6514, 0.4375000000000000600, 0.03125000000000004200 ) ; +#7304 = VECTOR ( 'NONE', #13802, 39.37007874015748100 ) ; +#7305 = ORIENTED_EDGE ( 'NONE', *, *, #8848, .F. ) ; +#7306 = VERTEX_POINT ( 'NONE', #13507 ) ; +#7307 = DIRECTION ( 'NONE', ( -0.7458544667682690500, 0.6661089358369404200, 0.0000000000000000000 ) ) ; +#7308 = LINE ( 'NONE', #13921, #8697 ) ; +#7309 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.008680555555552200 ) ) ; +#7310 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.6979166666666604100 ) ) ; +#7311 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.045138888888885700 ) ) ; +#7312 = EDGE_CURVE ( 'NONE', #16271, #13299, #18964, .T. ) ; +#7313 = VERTEX_POINT ( 'NONE', #2940 ) ; +#7314 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.156249999999998000 ) ) ; +#7315 = CARTESIAN_POINT ( 'NONE', ( -0.07035757220611783800, 0.4634372746620864500, 1.143750000000000000 ) ) ; +#7316 = CIRCLE ( 'NONE', #7621, 0.4610132068742565100 ) ; +#7317 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7318 = FACE_BOUND ( 'NONE', #8806, .T. ) ; +#7319 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#7320 = LINE ( 'NONE', #16451, #9852 ) ; +#7321 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7322 = EDGE_LOOP ( 'NONE', ( #11232, #2511, #6108, #18459 ) ) ; +#7323 = CARTESIAN_POINT ( 'NONE', ( 0.2321251145655835700, 0.3983103163368992800, 1.592561465728329600 ) ) ; +#7324 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.039930555555552000 ) ) ; +#7325 = CIRCLE ( 'NONE', #6199, 0.2708333333333339300 ) ; +#7326 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.260416666666664700 ) ) ; +#7327 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#7328 = ORIENTED_EDGE ( 'NONE', *, *, #1314, .T. ) ; +#7329 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.135416666666664100 ) ) ; +#7330 = CARTESIAN_POINT ( 'NONE', ( 0.3953002468276911000, -0.2372148641431489300, 1.440511179676378800 ) ) ; +#7331 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.8854166666666616300 ) ) ; +#7332 = CARTESIAN_POINT ( 'NONE', ( -0.4019321617077173400, 0.2411945954990001000, 1.484375000000000200 ) ) ; +#7333 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, 0.1250000000000127400 ) ) ; +#7334 = ORIENTED_EDGE ( 'NONE', *, *, #792, .F. ) ; +#7335 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.4722222222222143800 ) ) ; +#7336 = ORIENTED_EDGE ( 'NONE', *, *, #574, .T. ) ; +#7337 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#7338 = VERTEX_POINT ( 'NONE', #10417 ) ; +#7339 = ORIENTED_EDGE ( 'NONE', *, *, #17474, .T. ) ; +#7340 = LINE ( 'NONE', #8098, #1794 ) ; +#7341 = DIRECTION ( 'NONE', ( 0.5000000000000003300, 0.8660254037844386000, 0.0000000000000000000 ) ) ; +#7342 = FACE_OUTER_BOUND ( 'NONE', #7389, .T. ) ; +#7343 = VERTEX_POINT ( 'NONE', #16324 ) ; +#7344 = VERTEX_POINT ( 'NONE', #1589 ) ; +#7345 = DIRECTION ( 'NONE', ( -0.7543368200092230900, -0.6564875946873428600, 0.0000000000000000000 ) ) ; +#7346 = DIRECTION ( 'NONE', ( 0.2728267384564813700, -0.9620631844027702800, 0.0000000000000000000 ) ) ; +#7347 = ADVANCED_FACE ( 'NONE', ( #1905 ), #3077, .F. ) ; +#7348 = VERTEX_POINT ( 'NONE', #17681 ) ; +#7349 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.2569444444444345400 ) ) ; +#7350 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.006944444444456610500 ) ) ; +#7351 = CARTESIAN_POINT ( 'NONE', ( -0.1843364152068907600, 0.2059749365136105400, 0.08286399339095738800 ) ) ; +#7352 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.006944444444432569900 ) ) ; +#7353 = CARTESIAN_POINT ( 'NONE', ( 0.2763856094095522600, -0.1018342450183401700, 0.1322701977726333200 ) ) ; +#7354 = EDGE_CURVE ( 'NONE', #295, #11789, #13033, .T. ) ; +#7355 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.3368055555555463100 ) ) ; +#7356 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.357638888888888000 ) ) ; +#7357 = VERTEX_POINT ( 'NONE', #4478 ) ; +#7358 = EDGE_CURVE ( 'NONE', #4452, #4317, #4671, .T. ) ; +#7359 = ORIENTED_EDGE ( 'NONE', *, *, #10430, .T. ) ; +#7360 = CARTESIAN_POINT ( 'NONE', ( -0.2757550429599702200, 0.03868659229991115000, 0.08800139819507403500 ) ) ; +#7361 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7362 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.465277777777777900 ) ) ; +#7363 = AXIS2_PLACEMENT_3D ( 'NONE', #9746, #3815, #9800 ) ; +#7364 = EDGE_LOOP ( 'NONE', ( #15149, #10139, #3884, #4311 ) ) ; +#7365 = ORIENTED_EDGE ( 'NONE', *, *, #14623, .F. ) ; +#7366 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.1041666666666560100 ) ) ; +#7367 = CIRCLE ( 'NONE', #12494, 0.4610132068742565100 ) ; +#7368 = ORIENTED_EDGE ( 'NONE', *, *, #6994, .T. ) ; +#7369 = EDGE_LOOP ( 'NONE', ( #7685, #13852, #478, #1202 ) ) ; +#7370 = CARTESIAN_POINT ( 'NONE', ( 0.09228784128085294700, 0.2871548579061769500, 0.1503386206811929400 ) ) ; +#7371 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.6840277777777715700 ) ) ; +#7372 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #18726, #1156, #968, #17178, #12801, #6749, #15687, #8485, #17063 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7045454545454545900, 0.7083333333333333700, 0.7121212121212121500, 0.7159090909090909400, 0.7196969696969697200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#7373 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#7374 = ADVANCED_FACE ( 'NONE', ( #16431 ), #18247, .T. ) ; +#7375 = PLANE ( 'NONE', #2286 ) ; +#7376 = CARTESIAN_POINT ( 'NONE', ( 2.532093440179767500E-017, -3.844143680069049300E-018, 3.802149639073302700 ) ) ; +#7377 = EDGE_LOOP ( 'NONE', ( #13435, #3609, #1475, #18869 ) ) ; +#7378 = APPLICATION_PROTOCOL_DEFINITION ( 'international standard', 'config_control_design', 1994, #16174 ) ; +#7379 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.8975694444444397600 ) ) ; +#7380 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#7381 = EDGE_CURVE ( 'NONE', #17642, #3531, #2609, .T. ) ; +#7382 = DIRECTION ( 'NONE', ( 0.02499999999999999100, 0.9996874511566102800, -0.0000000000000000000 ) ) ; +#7383 = ORIENTED_EDGE ( 'NONE', *, *, #11316, .F. ) ; +#7384 = ORIENTED_EDGE ( 'NONE', *, *, #13537, .T. ) ; +#7385 = LINE ( 'NONE', #10815, #16604 ) ; +#7386 = LINE ( 'NONE', #12746, #14970 ) ; +#7387 = EDGE_CURVE ( 'NONE', #4769, #2527, #19053, .T. ) ; +#7388 = CARTESIAN_POINT ( 'NONE', ( -0.2154811238112777900, -0.4162837743583006100, 1.484375000000000200 ) ) ; +#7389 = EDGE_LOOP ( 'NONE', ( #9033, #16618, #11639, #5045 ) ) ; +#7390 = ORIENTED_EDGE ( 'NONE', *, *, #14388, .F. ) ; +#7391 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.031249999999996400 ) ) ; +#7392 = LINE ( 'NONE', #1550, #5976 ) ; +#7393 = EDGE_CURVE ( 'NONE', #16987, #3485, #15611, .T. ) ; +#7394 = AXIS2_PLACEMENT_3D ( 'NONE', #299, #14971, #2930 ) ; +#7395 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.291666666666665400 ) ) ; +#7396 = ADVANCED_FACE ( 'NONE', ( #17819 ), #15949, .T. ) ; +#7397 = CARTESIAN_POINT ( 'NONE', ( 0.2321251145655835700, 0.3983103163368992800, 1.440511179676399600 ) ) ; +#7398 = CARTESIAN_POINT ( 'NONE', ( -0.1278875336514693200, -0.4509671176887998200, 1.143750000000000000 ) ) ; +#7399 = ORIENTED_EDGE ( 'NONE', *, *, #17020, .F. ) ; +#7400 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.9565972222222181000 ) ) ; +#7401 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.232638888888886600 ) ) ; +#7402 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7403 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#7404 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#7405 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.052083333333329700 ) ) ; +#7406 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, 0.1319444444444573500 ) ) ; +#7407 = ORIENTED_EDGE ( 'NONE', *, *, #14388, .T. ) ; +#7408 = LINE ( 'NONE', #11530, #2340 ) ; +#7409 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.3472222222222133800 ) ) ; +#7410 = ORIENTED_EDGE ( 'NONE', *, *, #8499, .T. ) ; +#7411 = ORIENTED_EDGE ( 'NONE', *, *, #2555, .T. ) ; +#7412 = EDGE_CURVE ( 'NONE', #4288, #12305, #10443, .T. ) ; +#7413 = CARTESIAN_POINT ( 'NONE', ( 3.205444573719471800E-017, 1.177307252514843400E-017, -1.174024639073328700 ) ) ; +#7414 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#7415 = CARTESIAN_POINT ( 'NONE', ( 0.3477592364557785500, 0.3026494512999817200, 1.187613820323601300 ) ) ; +#7416 = VERTEX_POINT ( 'NONE', #1397 ) ; +#7417 = AXIS2_PLACEMENT_3D ( 'NONE', #16127, #17675, #14782 ) ; +#7418 = ORIENTED_EDGE ( 'NONE', *, *, #1536, .T. ) ; +#7419 = VERTEX_POINT ( 'NONE', #8735 ) ; +#7420 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.1909722222222117700 ) ) ; +#7421 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.02777777777779011000 ) ) ; +#7422 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.05555555555556792500 ) ) ; +#7423 = CARTESIAN_POINT ( 'NONE', ( 0.02416302559077641500, -0.2893690268604226500, 0.1195176074707216400 ) ) ; +#7424 = FACE_OUTER_BOUND ( 'NONE', #6597, .T. ) ; +#7425 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -0.04860932432761066300, 1.527944350456949700 ) ) ; +#7426 = ORIENTED_EDGE ( 'NONE', *, *, #18047, .F. ) ; +#7427 = DIRECTION ( 'NONE', ( -0.5035107695491609600, -0.8639889495520248800, -0.0000000000000000000 ) ) ; +#7428 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.458333333333332800 ) ) ; +#7429 = CARTESIAN_POINT ( 'NONE', ( -0.1589412568245201800, -0.4327480257511615600, 1.484375000000000200 ) ) ; +#7430 = CARTESIAN_POINT ( 'NONE', ( -0.2615678826637217700, -0.3796253675287039600, 1.593193105402742800 ) ) ; +#7431 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.534722222222222800 ) ) ; +#7432 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.05902777777776673000 ) ) ; +#7433 = CARTESIAN_POINT ( 'NONE', ( -0.3086320542674450600, -3.398774944758646100E-016, 0.1713779516012225400 ) ) ; +#7434 = ORIENTED_EDGE ( 'NONE', *, *, #6104, .F. ) ; +#7435 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.6701388888888821800 ) ) ; +#7436 = EDGE_CURVE ( 'NONE', #11934, #4519, #526, .T. ) ; +#7437 = CARTESIAN_POINT ( 'NONE', ( -0.2953547369971147900, -6.966329251790343400E-015, 0.1348988222100558100 ) ) ; +#7438 = ORIENTED_EDGE ( 'NONE', *, *, #16375, .T. ) ; +#7439 = CIRCLE ( 'NONE', #18001, 0.3134792788290102800 ) ; +#7440 = CARTESIAN_POINT ( 'NONE', ( 0.2295644402768618200, 0.1561360432046003700, 1.265517246128202900 ) ) ; +#7441 = VERTEX_POINT ( 'NONE', #11625 ) ; +#7442 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.7100694444444383100 ) ) ; +#7443 = ORIENTED_EDGE ( 'NONE', *, *, #7498, .F. ) ; +#7444 = DIRECTION ( 'NONE', ( -0.9297764858882511300, -0.3681245526846787000, 0.0000000000000000000 ) ) ; +#7445 = CARTESIAN_POINT ( 'NONE', ( 0.2802162586133554700, -0.3660765293230626700, 1.593193105402742800 ) ) ; +#7446 = CARTESIAN_POINT ( 'NONE', ( 0.3624522803384160900, -0.2848886122504168400, 1.484375000000000200 ) ) ; +#7447 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, 0.1319444444444573000 ) ) ; +#7448 = DIRECTION ( 'NONE', ( -0.8090169943749552200, 0.5877852522924624800, 0.0000000000000000000 ) ) ; +#7449 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.9930555555555518100 ) ) ; +#7450 = AXIS2_PLACEMENT_3D ( 'NONE', #6323, #4710, #15020 ) ; +#7451 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.368055555555554900 ) ) ; +#7452 = VERTEX_POINT ( 'NONE', #1325 ) ; +#7453 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.01736111111109945100 ) ) ; +#7454 = ORIENTED_EDGE ( 'NONE', *, *, #16718, .F. ) ; +#7455 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.8472222222222172100 ) ) ; +#7456 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.560763888888889500 ) ) ; +#7457 = CARTESIAN_POINT ( 'NONE', ( -0.1460657352116106800, -0.2043440430510083900, 1.250514193469173900 ) ) ; +#7458 = ORIENTED_EDGE ( 'NONE', *, *, #605, .T. ) ; +#7459 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.7621527777777720200 ) ) ; +#7460 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.4236111111111026700 ) ) ; +#7461 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7462 = DIRECTION ( 'NONE', ( 0.2728267384564814200, -0.9620631844027702800, 0.0000000000000000000 ) ) ; +#7463 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#7464 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7465 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.9687499999999957800 ) ) ; +#7466 = CARTESIAN_POINT ( 'NONE', ( 0.4347510546871075600, -0.1533776299234465600, 1.484375000000000200 ) ) ; +#7467 = CARTESIAN_POINT ( 'NONE', ( -1.602722286859731900E-017, -5.886536262574331800E-018, 3.802149639073296100 ) ) ; +#7468 = LINE ( 'NONE', #15442, #15055 ) ; +#7469 = ORIENTED_EDGE ( 'NONE', *, *, #5882, .T. ) ; +#7470 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.3437499999999911200 ) ) ; +#7471 = ADVANCED_FACE ( 'NONE', ( #6743 ), #6060, .T. ) ; +#7472 = ORIENTED_EDGE ( 'NONE', *, *, #3486, .T. ) ; +#7473 = DIRECTION ( 'NONE', ( 0.6078269655510767400, 0.7940695057417643800, -0.0000000000000000000 ) ) ; +#7474 = EDGE_CURVE ( 'NONE', #9249, #854, #12523, .T. ) ; +#7475 = DIRECTION ( 'NONE', ( -0.5673761158323297200, -0.8234587683563876500, 0.0000000000000000000 ) ) ; +#7476 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#7477 = ORIENTED_EDGE ( 'NONE', *, *, #9254, .F. ) ; +#7478 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#7479 = DIRECTION ( 'NONE', ( 0.5358267949789886600, 0.8443279255020199600, 0.0000000000000000000 ) ) ; +#7480 = VECTOR ( 'NONE', #14104, 39.37007874015748100 ) ; +#7481 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.07638888888887737600 ) ) ; +#7482 = CARTESIAN_POINT ( 'NONE', ( 0.4492873804855412900, 0.1336605598125504300, 1.484375000000000200 ) ) ; +#7483 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.01388888888887688700 ) ) ; +#7484 = CARTESIAN_POINT ( 'NONE', ( 0.2672423402442383700, -0.08624367214689419900, -1.553387944539004000 ) ) ; +#7485 = ADVANCED_FACE ( 'NONE', ( #4215 ), #13044, .F. ) ; +#7486 = CARTESIAN_POINT ( 'NONE', ( 0.4289947181748906000, -0.1889182211382633700, 1.592116737595687700 ) ) ; +#7487 = DIRECTION ( 'NONE', ( 0.6179619325485594700, -0.7862080194966530900, 0.0000000000000000000 ) ) ; +#7488 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7489 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.350694444444443100 ) ) ; +#7490 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#7491 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.395833333333332800 ) ) ; +#7492 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.1979166666666566100 ) ) ; +#7493 = LINE ( 'NONE', #11914, #18771 ) ; +#7494 = EDGE_CURVE ( 'NONE', #14503, #5549, #16657, .T. ) ; +#7495 = CARTESIAN_POINT ( 'NONE', ( -0.1024697596190972000, 0.2864903872949503000, 0.1576244576850681400 ) ) ; +#7496 = VECTOR ( 'NONE', #1153, 39.37007874015748100 ) ; +#7497 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.6736111111111045000 ) ) ; +#7498 = EDGE_CURVE ( 'NONE', #16446, #11143, #16204, .T. ) ; +#7500 = EDGE_CURVE ( 'NONE', #5944, #5335, #18052, .T. ) ; +#7499 = VECTOR ( 'NONE', #4190, 39.37007874015748100 ) ; +#7501 = AXIS2_PLACEMENT_3D ( 'NONE', #4942, #16878, #18164 ) ; +#7502 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.174024639073288900 ) ) ; +#7503 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.7968749999999946700 ) ) ; +#7504 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7505 = FACE_OUTER_BOUND ( 'NONE', #12251, .T. ) ; +#7506 = EDGE_LOOP ( 'NONE', ( #6426, #16075, #14352, #8527 ) ) ; +#7507 = CARTESIAN_POINT ( 'NONE', ( 0.3535935602980365700, 0.3077269725401409800, 1.484375000000000200 ) ) ; +#7508 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.7951388888888835100 ) ) ; +#7509 = VECTOR ( 'NONE', #2573, 39.37007874015748900 ) ; +#7510 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.222222222222220300 ) ) ; +#7511 = VERTEX_POINT ( 'NONE', #11757 ) ; +#7512 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7513 = VECTOR ( 'NONE', #9941, 39.37007874015748100 ) ; +#7514 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.6718749999999935600 ) ) ; +#7515 = EDGE_CURVE ( 'NONE', #9233, #3036, #17348, .T. ) ; +#7516 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.7378472222222163300 ) ) ; +#7517 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.5972222222222152200 ) ) ; +#7518 = AXIS2_PLACEMENT_3D ( 'NONE', #13304, #4534, #7317 ) ; +#7519 = CARTESIAN_POINT ( 'NONE', ( 0.2321251145655920700, -0.3983103163368943400, 1.440511179676390300 ) ) ; +#7520 = CARTESIAN_POINT ( 'NONE', ( 0.1051863658125137500, 0.4567957869192266800, 1.484375000000000200 ) ) ; +#7521 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.020833333333329500 ) ) ; +#7522 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#7523 = DIRECTION ( 'NONE', ( 0.02499999999999943900, -0.9996874511566102800, 0.0000000000000000000 ) ) ; +#7524 = LINE ( 'NONE', #9912, #4975 ) ; +#7525 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.4444444444444364300 ) ) ; +#7526 = EDGE_LOOP ( 'NONE', ( #16476, #17673, #2388, #8121, #4870, #12921 ) ) ; +#7527 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.8611111111111061600 ) ) ; +#7528 = LINE ( 'NONE', #4886, #3153 ) ; +#7529 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.3697916666666579100 ) ) ; +#7530 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7531 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#7532 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.1805555555555448700 ) ) ; +#7533 = ORIENTED_EDGE ( 'NONE', *, *, #7870, .T. ) ; +#7534 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7535 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.09027777777776656300 ) ) ; +#7536 = CARTESIAN_POINT ( 'NONE', ( 0.2853222357319439900, -0.07476309845625056500, 0.1333773983322943700 ) ) ; +#7537 = LINE ( 'NONE', #12899, #11001 ) ; +#7538 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.5572916666666593000 ) ) ; +#7539 = EDGE_CURVE ( 'NONE', #2137, #2739, #9373, .T. ) ; +#7540 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#7541 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7542 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.3854166666666580300 ) ) ; +#7543 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.329861111111109800 ) ) ; +#7544 = LINE ( 'NONE', #3924, #10317 ) ; +#7545 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323618200 ) ) ; +#7546 = VECTOR ( 'NONE', #3554, 39.37007874015748900 ) ; +#7547 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.340277777777777000 ) ) ; +#7548 = VERTEX_POINT ( 'NONE', #13295 ) ; +#7549 = VECTOR ( 'NONE', #14963, 39.37007874015748100 ) ; +#7550 = VECTOR ( 'NONE', #8647, 39.37007874015748900 ) ; +#7551 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.04513888888887781400 ) ) ; +#7552 = EDGE_LOOP ( 'NONE', ( #9170, #1276, #14372, #680, #10170, #4627 ) ) ; +#7553 = CARTESIAN_POINT ( 'NONE', ( -0.2046392354730435000, 0.2273262784687279100, 0.1620256189992238200 ) ) ; +#7554 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.5243055555555478100 ) ) ; +#7555 = VERTEX_POINT ( 'NONE', #7388 ) ; +#7556 = PLANE ( 'NONE', #15248 ) ; +#7557 = ADVANCED_FACE ( 'NONE', ( #995 ), #10471, .F. ) ; +#7558 = ORIENTED_EDGE ( 'NONE', *, *, #6282, .F. ) ; +#7559 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.461805555555555600 ) ) ; +#7560 = CARTESIAN_POINT ( 'NONE', ( -0.1257767296168636200, 0.4435238338571811400, 1.440511179676385400 ) ) ; +#7561 = VERTEX_POINT ( 'NONE', #4661 ) ; +#7562 = ORIENTED_EDGE ( 'NONE', *, *, #13363, .F. ) ; +#7563 = FACE_OUTER_BOUND ( 'NONE', #18666, .T. ) ; +#7565 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.7517361111111053900 ) ) ; +#7564 = FACE_BOUND ( 'NONE', #10812, .T. ) ; +#7566 = LINE ( 'NONE', #4291, #10094 ) ; +#7567 = ORIENTED_EDGE ( 'NONE', *, *, #6731, .F. ) ; +#7568 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.038194444444440900 ) ) ; +#7569 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7570 = CARTESIAN_POINT ( 'NONE', ( -0.3238882248697046400, 0.3280694967582902200, 1.143750000000000000 ) ) ; +#7571 = VECTOR ( 'NONE', #17048, 39.37007874015748100 ) ; +#7572 = CARTESIAN_POINT ( 'NONE', ( 0.4669429843783103900, 0.04111948248552019200, 1.143750000000000000 ) ) ; +#7573 = CARTESIAN_POINT ( 'NONE', ( 2.987024860021044800E-017, -7.469896857675716800E-019, -1.174024639073291600 ) ) ; +#7574 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.8506944444444396500 ) ) ; +#7575 = EDGE_CURVE ( 'NONE', #14714, #18132, #12742, .T. ) ; +#7576 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.100694444444441800 ) ) ; +#7577 = ADVANCED_FACE ( 'NONE', ( #3756 ), #9003, .F. ) ; +#7578 = EDGE_LOOP ( 'NONE', ( #10448, #8497, #4687, #6431, #16523, #18199 ) ) ; +#7579 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#7580 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.519097222222222500 ) ) ; +#7581 = CARTESIAN_POINT ( 'NONE', ( 0.1464933923060664800, -0.2040971351124034000, 1.250015718029290100 ) ) ; +#7582 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.8559027777777726800 ) ) ; +#7583 = EDGE_CURVE ( 'NONE', #9917, #295, #11590, .T. ) ; +#7584 = ORIENTED_EDGE ( 'NONE', *, *, #13848, .T. ) ; +#7585 = EDGE_LOOP ( 'NONE', ( #11513, #3688, #8946, #3779 ) ) ; +#7586 = CONICAL_SURFACE ( 'NONE', #7196, 0.2708333333333339300, 0.7853981633974491700 ) ; +#7587 = CARTESIAN_POINT ( 'NONE', ( 0.4219140922835683000, 0.1858000959230613500, 1.440511179676386300 ) ) ; +#7588 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.5937499999999930100 ) ) ; +#7589 = CIRCLE ( 'NONE', #11366, 0.4610132068742565100 ) ; +#7590 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#7591 = ORIENTED_EDGE ( 'NONE', *, *, #8669, .F. ) ; +#7592 = ORIENTED_EDGE ( 'NONE', *, *, #7877, .F. ) ; +#7593 = CARTESIAN_POINT ( 'NONE', ( -0.1639225200546505800, 0.2262165673200873500, 0.09052353665867451900 ) ) ; +#7594 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.9930555555555514700 ) ) ; +#7595 = AXIS2_PLACEMENT_3D ( 'NONE', #17349, #8722, #8533 ) ; +#7596 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, 0.1388888888889019400 ) ) ; +#7597 = VECTOR ( 'NONE', #17189, 39.37007874015748100 ) ; +#7598 = ORIENTED_EDGE ( 'NONE', *, *, #11136, .T. ) ; +#7599 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.1562499999999896200 ) ) ; +#7600 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#7601 = VERTEX_POINT ( 'NONE', #7507 ) ; +#7602 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.4322916666666584100 ) ) ; +#7603 = ORIENTED_EDGE ( 'NONE', *, *, #11685, .T. ) ; +#7604 = LINE ( 'NONE', #7072, #3907 ) ; +#7605 = CONICAL_SURFACE ( 'NONE', #4811, 0.4610132068742565100, 0.1745329251994265100 ) ; +#7606 = VERTEX_POINT ( 'NONE', #4601 ) ; +#7607 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.9027777777777731300 ) ) ; +#7608 = ORIENTED_EDGE ( 'NONE', *, *, #14473, .F. ) ; +#7609 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.08680555555554428400 ) ) ; +#7610 = DIRECTION ( 'NONE', ( 0.8763066800438663600, -0.4817536741017101600, 0.0000000000000000000 ) ) ; +#7611 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.01736111111109918000 ) ) ; +#7612 = CARTESIAN_POINT ( 'NONE', ( -0.2811944094016879400, -0.03775781756227045100, 0.1024921618234390100 ) ) ; +#7613 = EDGE_CURVE ( 'NONE', #618, #7284, #13445, .T. ) ; +#7614 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.5190972222222145500 ) ) ; +#7615 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7616 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #4383, #1486, #14672, #11846, #7349, #17643, #5974, #2972, #16279 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2651515151515151400, 0.2689393939393939200, 0.2727272727272727100, 0.2765151515151514900, 0.2803030303030302800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#7617 = DIRECTION ( 'NONE', ( -0.7543368200092230900, -0.6564875946873428600, 0.0000000000000000000 ) ) ; +#7618 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#7619 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.111111111111108100 ) ) ; +#7620 = EDGE_CURVE ( 'NONE', #1409, #5413, #9535, .T. ) ; +#7621 = AXIS2_PLACEMENT_3D ( 'NONE', #5267, #8117, #12749 ) ; +#7622 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.592921120922338200 ) ) ; +#7623 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.371527777777776800 ) ) ; +#7624 = AXIS2_PLACEMENT_3D ( 'NONE', #15830, #5398, #14309 ) ; +#7625 = ORIENTED_EDGE ( 'NONE', *, *, #12322, .F. ) ; +#7626 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.1597222222222119100 ) ) ; +#7627 = EDGE_LOOP ( 'NONE', ( #14989, #14760, #9848, #8604 ) ) ; +#7628 = ORIENTED_EDGE ( 'NONE', *, *, #6013, .T. ) ; +#7629 = VECTOR ( 'NONE', #831, 39.37007874015747400 ) ; +#7630 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.6076388888888817300 ) ) ; +#7631 = ORIENTED_EDGE ( 'NONE', *, *, #7133, .T. ) ; +#7632 = ORIENTED_EDGE ( 'NONE', *, *, #8260, .F. ) ; +#7633 = DIRECTION ( 'NONE', ( -0.2243975804000369900, -0.9744976787610163400, 0.0000000000000000000 ) ) ; +#7634 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7635 = EDGE_CURVE ( 'NONE', #16336, #17594, #5348, .T. ) ; +#7636 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.5069444444444367600 ) ) ; +#7637 = ORIENTED_EDGE ( 'NONE', *, *, #312, .T. ) ; +#7638 = ORIENTED_EDGE ( 'NONE', *, *, #18716, .F. ) ; +#7639 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.6666666666666601900 ) ) ; +#7640 = CARTESIAN_POINT ( 'NONE', ( 0.4420471124163823400, -0.1559516364272518500, 1.590985962198545200 ) ) ; +#7641 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.7881944444444392000 ) ) ; +#7642 = ORIENTED_EDGE ( 'NONE', *, *, #18505, .T. ) ; +#7643 = EDGE_CURVE ( 'NONE', #11844, #15189, #8824, .T. ) ; +#7644 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.9548611111111072700 ) ) ; +#7645 = FACE_OUTER_BOUND ( 'NONE', #3471, .T. ) ; +#7646 = ORIENTED_EDGE ( 'NONE', *, *, #5628, .T. ) ; +#7647 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.1770833333333228500 ) ) ; +#7648 = AXIS2_PLACEMENT_3D ( 'NONE', #17461, #11608, #17204 ) ; +#7649 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7650 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#7651 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.4861111111111031700 ) ) ; +#7652 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, -0.1443375672974061300, 1.272329099369260000 ) ) ; +#7653 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.8767361111111061600 ) ) ; +#7654 = CARTESIAN_POINT ( 'NONE', ( 0.3238882248697069200, -0.3280694967582878400, 1.593467001493433100 ) ) ; +#7655 = CARTESIAN_POINT ( 'NONE', ( 0.3953002468276861100, 0.2372148641431572100, 1.440511179676369000 ) ) ; +#7656 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.6493055555555488100 ) ) ; +#7657 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7658 = CARTESIAN_POINT ( 'NONE', ( 0.3022624743303951600, 0.03766004917877208800, 0.1587279987685786000 ) ) ; +#7659 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.7881944444444387600 ) ) ; +#7660 = CARTESIAN_POINT ( 'NONE', ( -0.4624967254560978200, 0.07629596618005851600, 1.143750000000000000 ) ) ; +#7661 = ORIENTED_EDGE ( 'NONE', *, *, #17111, .F. ) ; +#7662 = VERTEX_POINT ( 'NONE', #3259 ) ; +#7663 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.1874999999999900100 ) ) ; +#7664 = EDGE_LOOP ( 'NONE', ( #13906, #18622, #2969, #17299, #5672, #10668 ) ) ; +#7665 = ADVANCED_FACE ( 'NONE', ( #10213 ), #18512, .T. ) ; +#7666 = CONICAL_SURFACE ( 'NONE', #3073, 0.4687475818742551400, 0.1745329251994302300 ) ; +#7667 = ORIENTED_EDGE ( 'NONE', *, *, #17988, .F. ) ; +#7668 = EDGE_CURVE ( 'NONE', #971, #2087, #1690, .T. ) ; +#7669 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.8784722222222174400 ) ) ; +#7670 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.2656249999999904000 ) ) ; +#7671 = AXIS2_PLACEMENT_3D ( 'NONE', #15870, #13318, #16333 ) ; +#7672 = VERTEX_POINT ( 'NONE', #1965 ) ; +#7673 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.4496527777777696300 ) ) ; +#7674 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.09722222222223492200 ) ) ; +#7675 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#7676 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7677 = ORIENTED_EDGE ( 'NONE', *, *, #7705, .T. ) ; +#7678 = ADVANCED_FACE ( 'NONE', ( #9069 ), #15482, .T. ) ; +#7679 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.5711805555555482500 ) ) ; +#7680 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#7681 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.1909722222222121100 ) ) ; +#7682 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7683 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7684 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.083333333333329900 ) ) ; +#7685 = ORIENTED_EDGE ( 'NONE', *, *, #9245, .F. ) ; +#7686 = CARTESIAN_POINT ( 'NONE', ( -0.04710524684730639500, 0.4663771630552400700, 1.143750000000000000 ) ) ; +#7687 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.1597222222222116400 ) ) ; +#7688 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.225694444444442900 ) ) ; +#7689 = ORIENTED_EDGE ( 'NONE', *, *, #7218, .T. ) ; +#7690 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.01041666666667836300 ) ) ; +#7691 = ORIENTED_EDGE ( 'NONE', *, *, #2528, .F. ) ; +#7692 = CARTESIAN_POINT ( 'NONE', ( 0.2360194556738243700, -0.4049927308685863400, 1.484375000000000200 ) ) ; +#7693 = LINE ( 'NONE', #15622, #18744 ) ; +#7694 = ORIENTED_EDGE ( 'NONE', *, *, #12067, .T. ) ; +#7695 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.5659722222222147700 ) ) ; +#7696 = EDGE_CURVE ( 'NONE', #17125, #11063, #1226, .T. ) ; +#7697 = ORIENTED_EDGE ( 'NONE', *, *, #9273, .F. ) ; +#7698 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, 0.05902777777778994700 ) ) ; +#7699 = ORIENTED_EDGE ( 'NONE', *, *, #11437, .F. ) ; +#7700 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#7701 = DIRECTION ( 'NONE', ( 0.7862080194966656300, -0.6179619325485434800, 0.0000000000000000000 ) ) ; +#7702 = VERTEX_POINT ( 'NONE', #494 ) ; +#7703 = CARTESIAN_POINT ( 'NONE', ( 0.1805003406287894200, -0.2324638850100477800, -1.539782587591073100 ) ) ; +#7704 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.288194444444442900 ) ) ; +#7705 = EDGE_CURVE ( 'NONE', #9715, #11789, #2834, .T. ) ; +#7706 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, -2.451990884535389300E-025, 1.525850221280107700 ) ) ; +#7707 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.8715277777777731300 ) ) ; +#7708 = FACE_OUTER_BOUND ( 'NONE', #18225, .T. ) ; +#7709 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.097222222222219400 ) ) ; +#7710 = DIRECTION ( 'NONE', ( 1.000000000000000000, 2.486899575160350300E-014, 0.0000000000000000000 ) ) ; +#7711 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7712 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.296874999999998700 ) ) ; +#7713 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.7795138888888832900 ) ) ; +#7714 = CARTESIAN_POINT ( 'NONE', ( -0.4019342351530938400, 0.2411958397483200400, 1.143750000000000000 ) ) ; +#7715 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.5833333333333261500 ) ) ; +#7716 = CARTESIAN_POINT ( 'NONE', ( 0.2137500634262646000, 0.2195474950606837400, 0.1636898657261028300 ) ) ; +#7717 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.8298611111111057200 ) ) ; +#7718 = CARTESIAN_POINT ( 'NONE', ( -0.4548654901190614100, -0.07503707624389545400, 1.440511179676388100 ) ) ; +#7719 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.1249999999999895100 ) ) ; +#7720 = LINE ( 'NONE', #10832, #14375 ) ; +#7721 = EDGE_CURVE ( 'NONE', #18244, #12364, #14337, .T. ) ; +#7722 = CARTESIAN_POINT ( 'NONE', ( -0.4190133544667943900, 0.2101240212147302000, 1.484375000000000200 ) ) ; +#7723 = EDGE_CURVE ( 'NONE', #6972, #13815, #10428, .T. ) ; +#7724 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.2899305555555462000 ) ) ; +#7725 = CARTESIAN_POINT ( 'NONE', ( 0.1744291879537368300, 0.2317732228569920900, 0.1186758701876845400 ) ) ; +#7726 = CIRCLE ( 'NONE', #368, 0.4610132068742565100 ) ; +#7727 = VERTEX_POINT ( 'NONE', #7960 ) ; +#7728 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.03472222222223442900 ) ) ; +#7729 = FACE_BOUND ( 'NONE', #4217, .T. ) ; +#7730 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#7731 = CARTESIAN_POINT ( 'NONE', ( 0.04710524684729983100, 0.4663771630552406300, 1.484375000000000200 ) ) ; +#7732 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.7152777777777716800 ) ) ; +#7733 = ORIENTED_EDGE ( 'NONE', *, *, #19022, .F. ) ; +#7734 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.5086805555555478100 ) ) ; +#7735 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.9270833333333290400 ) ) ; +#7736 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#7737 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.9374999999999956700 ) ) ; +#7738 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.131944444444441500 ) ) ; +#7739 = CYLINDRICAL_SURFACE ( 'NONE', #14134, 0.4610132068742565100 ) ; +#7740 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.6979166666666605200 ) ) ; +#7741 = CARTESIAN_POINT ( 'NONE', ( -0.2360194556738177700, -0.4049927308685879500, 1.143750000000000000 ) ) ; +#7742 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.336805555555554500 ) ) ; +#7743 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #15000, #4694, #14808, #13593, #16418, #5896, #11904, #16347, #1538 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2954545454545454100, 0.2992424242424243100, 0.3030303030303030900, 0.3068181818181818800, 0.3106060606060606600 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#7744 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.1562500000000128800 ) ) ; +#7745 = EDGE_CURVE ( 'NONE', #16376, #477, #2145, .T. ) ; +#7746 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7747 = LINE ( 'NONE', #3141, #7059 ) ; +#7748 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.4340277777777693000 ) ) ; +#7749 = EDGE_CURVE ( 'NONE', #7672, #16448, #14555, .T. ) ; +#7750 = EDGE_LOOP ( 'NONE', ( #14920, #7112, #789, #11769 ) ) ; +#7751 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.3263888888888796200 ) ) ; +#7752 = EDGE_CURVE ( 'NONE', #18582, #9427, #11570, .T. ) ; +#7753 = ADVANCED_FACE ( 'NONE', ( #17330 ), #16171, .T. ) ; +#7754 = LINE ( 'NONE', #5333, #384 ) ; +#7755 = ORIENTED_EDGE ( 'NONE', *, *, #12492, .T. ) ; +#7756 = CARTESIAN_POINT ( 'NONE', ( 0.4684146371797784400, 0.01772823103798254800, 1.587900241027141400 ) ) ; +#7757 = VECTOR ( 'NONE', #10997, 39.37007874015748900 ) ; +#7758 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.4722222222222142700 ) ) ; +#7759 = CARTESIAN_POINT ( 'NONE', ( -0.04632776727398444500, 0.4586795339797642400, 1.187613820323597500 ) ) ; +#7760 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#7761 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.593375490995827300 ) ) ; +#7762 = CARTESIAN_POINT ( 'NONE', ( 0.3829490853735701400, -0.2566771803726077300, 1.440511179676378800 ) ) ; +#7763 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.8611111111111063900 ) ) ; +#7764 = VERTEX_POINT ( 'NONE', #6404 ) ; +#7765 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.9687499999999962300 ) ) ; +#7766 = FACE_OUTER_BOUND ( 'NONE', #14465, .T. ) ; +#7767 = ADVANCED_FACE ( 'NONE', ( #9520 ), #4786, .F. ) ; +#7768 = FACE_OUTER_BOUND ( 'NONE', #16762, .T. ) ; +#7769 = LINE ( 'NONE', #6730, #3843 ) ; +#7770 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7771 = EDGE_LOOP ( 'NONE', ( #15112, #5079, #15724, #18217 ) ) ; +#7772 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.421874999999999800 ) ) ; +#7773 = ORIENTED_EDGE ( 'NONE', *, *, #13046, .T. ) ; +#7774 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.399305555555554900 ) ) ; +#7775 = EDGE_CURVE ( 'NONE', #8086, #9993, #7439, .T. ) ; +#7776 = CARTESIAN_POINT ( 'NONE', ( -0.2986839046047946000, -0.03022888189646326000, -1.533496628264295200 ) ) ; +#7777 = FACE_OUTER_BOUND ( 'NONE', #9258, .T. ) ; +#7778 = CARTESIAN_POINT ( 'NONE', ( 0.04632776727398758100, -0.4586795339797638500, 1.187613820323598600 ) ) ; +#7779 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#7780 = PLANE ( 'NONE', #18155 ) ; +#7781 = CARTESIAN_POINT ( 'NONE', ( 0.3037093888404724900, -7.227623398736650200E-015, 0.1578530394970854300 ) ) ; +#7782 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.7638888888888829600 ) ) ; +#7783 = CARTESIAN_POINT ( 'NONE', ( 0.1034502481550414700, 0.4492562999771360100, 1.484375000000000200 ) ) ; +#7784 = AXIS2_PLACEMENT_3D ( 'NONE', #16591, #12336, #12218 ) ; +#7785 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.2534722222222127700 ) ) ; +#7786 = APPROVAL ( #3061, 'UNSPECIFIED' ) ; +#7787 = VERTEX_POINT ( 'NONE', #1897 ) ; +#7788 = CARTESIAN_POINT ( 'NONE', ( -0.1257767296168604300, -0.4435238338571820300, 1.187613820323600200 ) ) ; +#7789 = FACE_OUTER_BOUND ( 'NONE', #787, .T. ) ; +#7790 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.01215277777776615000 ) ) ; +#7791 = FACE_OUTER_BOUND ( 'NONE', #9055, .T. ) ; +#7792 = VECTOR ( 'NONE', #12267, 39.37007874015748900 ) ; +#7793 = ORIENTED_EDGE ( 'NONE', *, *, #5941, .F. ) ; +#7794 = CARTESIAN_POINT ( 'NONE', ( 0.4548654901190608600, 0.07503707624389872900, 1.484375000000000200 ) ) ; +#7795 = VECTOR ( 'NONE', #2367, 39.37007874015748100 ) ; +#7796 = ORIENTED_EDGE ( 'NONE', *, *, #17335, .T. ) ; +#7797 = CARTESIAN_POINT ( 'NONE', ( -0.2615678826637244400, 0.3796253675287022400, 1.593193105402742800 ) ) ; +#7798 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.598958333333334400 ) ) ; +#7799 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#7800 = CARTESIAN_POINT ( 'NONE', ( 0.3535953843793270800, -0.3077285600096869600, 1.484375000000000200 ) ) ; +#7801 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#7802 = EDGE_LOOP ( 'NONE', ( #19051, #9699, #16397, #17523 ) ) ; +#7803 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.5399305555555481400 ) ) ; +#7804 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.2187499999999901500 ) ) ; +#7805 = EDGE_CURVE ( 'NONE', #12179, #5586, #11812, .T. ) ; +#7806 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7807 = DIRECTION ( 'NONE', ( -0.6564875946873327500, -0.7543368200092318600, 0.0000000000000000000 ) ) ; +#7808 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.170138888888886200 ) ) ; +#7809 = ORIENTED_EDGE ( 'NONE', *, *, #12528, .T. ) ; +#7810 = CARTESIAN_POINT ( 'NONE', ( 0.1776760863113862900, -0.1860937983343742600, 1.529910848479152200 ) ) ; +#7811 = AXIS2_PLACEMENT_3D ( 'NONE', #10894, #16736, #521 ) ; +#7812 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7813 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.190972222222220300 ) ) ; +#7814 = EDGE_LOOP ( 'NONE', ( #2170, #2769, #12857, #15858 ) ) ; +#7815 = ORIENTED_EDGE ( 'NONE', *, *, #4660, .F. ) ; +#7816 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.05555555555556765400 ) ) ; +#7817 = CIRCLE ( 'NONE', #6873, 0.4687499999999995000 ) ; +#7818 = CYLINDRICAL_SURFACE ( 'NONE', #1023, 0.4610132068742565100 ) ; +#7819 = ORIENTED_EDGE ( 'NONE', *, *, #14846, .T. ) ; +#7820 = ORIENTED_EDGE ( 'NONE', *, *, #13677, .T. ) ; +#7821 = LINE ( 'NONE', #13323, #18641 ) ; +#7822 = ORIENTED_EDGE ( 'NONE', *, *, #9457, .F. ) ; +#7823 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.3472222222222128800 ) ) ; +#7824 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.170138888888886600 ) ) ; +#7825 = CARTESIAN_POINT ( 'NONE', ( -0.2659561823096158700, 0.3859943064402096000, 1.143750000000000000 ) ) ; +#7826 = ORIENTED_EDGE ( 'NONE', *, *, #18549, .F. ) ; +#7827 = ORIENTED_EDGE ( 'NONE', *, *, #3205, .T. ) ; +#7828 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7829 = VERTEX_POINT ( 'NONE', #11118 ) ; +#7830 = CONICAL_SURFACE ( 'NONE', #3844, 0.4610132068742565100, 0.1745329251994295300 ) ; +#7831 = VECTOR ( 'NONE', #18281, 39.37007874015748100 ) ; +#7832 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#7833 = VERTEX_POINT ( 'NONE', #2105 ) ; +#7834 = EDGE_LOOP ( 'NONE', ( #9302, #3460, #15355, #2489 ) ) ; +#7835 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.6284722222222156600 ) ) ; +#7836 = EDGE_CURVE ( 'NONE', #15866, #992, #3058, .T. ) ; +#7837 = LINE ( 'NONE', #3064, #12455 ) ; +#7838 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.055555555555552200 ) ) ; +#7839 = PLANE ( 'NONE', #4593 ) ; +#7840 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#7841 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.407986111111110500 ) ) ; +#7842 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.434027777777777700 ) ) ; +#7843 = EDGE_LOOP ( 'NONE', ( #13834, #5824, #1702, #11140 ) ) ; +#7844 = CARTESIAN_POINT ( 'NONE', ( -0.2582602135984973800, -0.1580050222221877900, -1.530942743481862300 ) ) ; +#7845 = EDGE_CURVE ( 'NONE', #11087, #9361, #5563, .T. ) ; +#7846 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323602900 ) ) ; +#7847 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#7848 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.6874999999999934500 ) ) ; +#7849 = AXIS2_PLACEMENT_3D ( 'NONE', #6004, #8852, #6468 ) ; +#7850 = ORIENTED_EDGE ( 'NONE', *, *, #18818, .F. ) ; +#7851 = ORIENTED_EDGE ( 'NONE', *, *, #3272, .F. ) ; +#7852 = VECTOR ( 'NONE', #17623, 39.37007874015748100 ) ; +#7853 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.2361111111111013300 ) ) ; +#7854 = ORIENTED_EDGE ( 'NONE', *, *, #11358, .T. ) ; +#7855 = ORIENTED_EDGE ( 'NONE', *, *, #16140, .F. ) ; +#7856 = FACE_OUTER_BOUND ( 'NONE', #2284, .T. ) ; +#7857 = ADVANCED_FACE ( 'NONE', ( #11125 ), #6512, .T. ) ; +#7858 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.1857638888888787400 ) ) ; +#7859 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7860 = EDGE_LOOP ( 'NONE', ( #12297, #7625, #12230, #15122 ) ) ; +#7861 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#7862 = EDGE_CURVE ( 'NONE', #13180, #8803, #16890, .T. ) ; +#7863 = VERTEX_POINT ( 'NONE', #3822 ) ; +#7864 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.04513888888890130900 ) ) ; +#7865 = DIRECTION ( 'NONE', ( -0.1219978065221466300, -0.1235727510854648200, 0.9848077530122082400 ) ) ; +#7866 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.2013888888889024100 ) ) ; +#7867 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.5624999999999926700 ) ) ; +#7868 = LINE ( 'NONE', #8253, #10869 ) ; +#7869 = ADVANCED_FACE ( 'NONE', ( #7909 ), #7666, .T. ) ; +#7870 = EDGE_CURVE ( 'NONE', #3845, #16202, #3515, .T. ) ; +#7871 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.3211805555555463100 ) ) ; +#7872 = VERTEX_POINT ( 'NONE', #2282 ) ; +#7873 = DIRECTION ( 'NONE', ( -0.6078269655510818400, 0.7940695057417605000, 0.0000000000000000000 ) ) ; +#7874 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.534722222222222500 ) ) ; +#7875 = CARTESIAN_POINT ( 'NONE', ( -0.2615678826637244400, 0.3796253675287022400, 1.440511179676402300 ) ) ; +#7876 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.249999999999997800 ) ) ; +#7877 = EDGE_CURVE ( 'NONE', #13299, #18368, #66, .T. ) ; +#7878 = AXIS2_PLACEMENT_3D ( 'NONE', #642, #13969, #16731 ) ; +#7879 = CARTESIAN_POINT ( 'NONE', ( -1.757094322390995400E-017, 2.928061957034548200E-017, -1.174024639073346900 ) ) ; +#7880 = ADVANCED_FACE ( 'NONE', ( #6725 ), #12387, .F. ) ; +#7881 = AXIS2_PLACEMENT_3D ( 'NONE', #12087, #6094, #1783 ) ; +#7882 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.7708333333333277100 ) ) ; +#7883 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.114583333333330600 ) ) ; +#7884 = AXIS2_PLACEMENT_3D ( 'NONE', #2548, #15856, #12736 ) ; +#7885 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.1736111111111240400 ) ) ; +#7886 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.249999999999998200 ) ) ; +#7887 = VERTEX_POINT ( 'NONE', #12465 ) ; +#7888 = ORIENTED_EDGE ( 'NONE', *, *, #11803, .T. ) ; +#7889 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.3298611111111016700 ) ) ; +#7890 = EDGE_LOOP ( 'NONE', ( #13078, #15433, #9717, #17759, #17745, #17611 ) ) ; +#7891 = LINE ( 'NONE', #8378, #5546 ) ; +#7892 = ORIENTED_EDGE ( 'NONE', *, *, #18188, .T. ) ; +#7893 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.6527777777777710200 ) ) ; +#7894 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.8194444444444393100 ) ) ; +#7895 = EDGE_CURVE ( 'NONE', #3315, #16797, #18718, .T. ) ; +#7896 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7897 = DIRECTION ( 'NONE', ( -1.000000000000000000, 1.953992523340275500E-014, 0.0000000000000000000 ) ) ; +#7898 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.587227003692501100 ) ) ; +#7899 = AXIS2_PLACEMENT_3D ( 'NONE', #13689, #9369, #6405 ) ; +#7900 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.6076388888888820700 ) ) ; +#7901 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.6944444444444384200 ) ) ; +#7902 = EDGE_CURVE ( 'NONE', #405, #10152, #13893, .T. ) ; +#7903 = AXIS2_PLACEMENT_3D ( 'NONE', #2581, #2700, #9793 ) ; +#7904 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.7534722222222165500 ) ) ; +#7905 = VERTEX_POINT ( 'NONE', #11050 ) ; +#7906 = CARTESIAN_POINT ( 'NONE', ( -0.4019342351530919600, -0.2411958397483227300, 1.592921120922338200 ) ) ; +#7907 = AXIS2_PLACEMENT_3D ( 'NONE', #7618, #10764, #1810 ) ; +#7908 = VERTEX_POINT ( 'NONE', #9691 ) ; +#7909 = FACE_OUTER_BOUND ( 'NONE', #13521, .T. ) ; +#7910 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#7911 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.453124999999999800 ) ) ; +#7912 = CARTESIAN_POINT ( 'NONE', ( 0.4420471124163791700, 0.1559516364272610600, 1.590985962198545400 ) ) ; +#7913 = EDGE_LOOP ( 'NONE', ( #5251, #1154, #13801 ) ) ; +#7914 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.520833333333333700 ) ) ; +#7915 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.069444444444441300 ) ) ; +#7916 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.458333333333333000 ) ) ; +#7917 = VERTEX_POINT ( 'NONE', #2165 ) ; +#7918 = PLANE ( 'NONE', #8950 ) ; +#7919 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.7291666666666604100 ) ) ; +#7920 = CARTESIAN_POINT ( 'NONE', ( -0.2499879160686313800, -0.1856474537291457600, 0.1785734291919508200 ) ) ; +#7921 = ORIENTED_EDGE ( 'NONE', *, *, #6510, .T. ) ; +#7922 = EDGE_CURVE ( 'NONE', #2533, #5952, #4438, .T. ) ; +#7923 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, 0.008680555555567348600 ) ) ; +#7924 = ORIENTED_EDGE ( 'NONE', *, *, #14640, .T. ) ; +#7925 = AXIS2_PLACEMENT_3D ( 'NONE', #19009, #10192, #13081 ) ; +#7926 = ORIENTED_EDGE ( 'NONE', *, *, #1279, .F. ) ; +#7927 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.9895833333333296000 ) ) ; +#7928 = CARTESIAN_POINT ( 'NONE', ( 0.03471398667843750300, 0.2894293889671261100, 0.1225810751109346300 ) ) ; +#7929 = CARTESIAN_POINT ( 'NONE', ( 0.4669429843783108900, -0.04111948248550997800, 1.587900241027141200 ) ) ; +#7930 = VECTOR ( 'NONE', #2826, 39.37007874015748100 ) ; +#7931 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, 0.08680555555556832000 ) ) ; +#7932 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#7933 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.1250000000000130200 ) ) ; +#7934 = ORIENTED_EDGE ( 'NONE', *, *, #11313, .T. ) ; +#7935 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.3802083333333245400 ) ) ; +#7936 = DIRECTION ( 'NONE', ( -0.1735239426960699400, 0.006567413361071302400, -0.9848077530122089100 ) ) ; +#7937 = CARTESIAN_POINT ( 'NONE', ( 0.4347510546871075600, -0.1533776299234465600, 1.590985962198545200 ) ) ; +#7938 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7939 = AXIS2_PLACEMENT_3D ( 'NONE', #15554, #16932, #12552 ) ; +#7940 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.8333333333333279300 ) ) ; +#7941 = ORIENTED_EDGE ( 'NONE', *, *, #10527, .F. ) ; +#7942 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.465277777777777700 ) ) ; +#7943 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.131944444444442000 ) ) ; +#7944 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.1666666666666794500 ) ) ; +#7945 = ORIENTED_EDGE ( 'NONE', *, *, #12548, .F. ) ; +#7946 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -1.180555555555553100 ) ) ; +#7947 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.2569444444444345400 ) ) ; +#7948 = EDGE_CURVE ( 'NONE', #3478, #10372, #12279, .T. ) ; +#7949 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.180555555555553100 ) ) ; +#7950 = VECTOR ( 'NONE', #7873, 39.37007874015748900 ) ; +#7951 = ADVANCED_FACE ( 'NONE', ( #12510 ), #6655, .F. ) ; +#7952 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, 0.1076388888889015500 ) ) ; +#7953 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.6770833333333267100 ) ) ; +#7954 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.065972222222219000 ) ) ; +#7955 = DIRECTION ( 'NONE', ( 0.6661089358369458600, 0.7458544667682640600, 0.0000000000000000000 ) ) ; +#7956 = EDGE_CURVE ( 'NONE', #12960, #10817, #18947, .T. ) ; +#7957 = LINE ( 'NONE', #5786, #15546 ) ; +#7958 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#7959 = ORIENTED_EDGE ( 'NONE', *, *, #81, .F. ) ; +#7960 = CARTESIAN_POINT ( 'NONE', ( -0.4019342351530936800, 0.2411958397483199300, 1.484375000000000200 ) ) ; +#7961 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.6249999999999934500 ) ) ; +#7962 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.8368055555555505800 ) ) ; +#7963 = ADVANCED_FACE ( 'NONE', ( #5108 ), #12969, .F. ) ; +#7964 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #11165, #5153, #8259, #8138, #3872, #12641, #16953, #3751, #14117 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.8257575757575758000, 0.8295454545454545900, 0.8333333333333333700, 0.8371212121212121500, 0.8409090909090909400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#7965 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323599100 ) ) ; +#7966 = LINE ( 'NONE', #13206, #8186 ) ; +#7967 = ADVANCED_FACE ( 'NONE', ( #1209 ), #3980, .T. ) ; +#7968 = DIRECTION ( 'NONE', ( -0.9685831611286345200, 0.2486898871648415800, 0.0000000000000000000 ) ) ; +#7969 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.342013888888888200 ) ) ; +#7970 = CARTESIAN_POINT ( 'NONE', ( -2.548143034366577300E-017, -2.573687481817654700E-018, -1.174024639073288900 ) ) ; +#7971 = DIRECTION ( 'NONE', ( 0.1219978065221478400, 0.1235727510854642300, 0.9848077530122082400 ) ) ; +#7972 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.1423611111111004700 ) ) ; +#7973 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.5416666666666589700 ) ) ; +#7974 = CARTESIAN_POINT ( 'NONE', ( -0.4505462270817873200, -0.09767944602040194700, 1.589564174286821800 ) ) ; +#7975 = CONICAL_SURFACE ( 'NONE', #8135, 0.4610132068742565100, 0.1745329251994271200 ) ; +#7976 = ORIENTED_EDGE ( 'NONE', *, *, #13450, .T. ) ; +#7977 = FACE_BOUND ( 'NONE', #14327, .T. ) ; +#7978 = EDGE_CURVE ( 'NONE', #5549, #3512, #15935, .T. ) ; +#7979 = ORIENTED_EDGE ( 'NONE', *, *, #19089, .T. ) ; +#7981 = EDGE_CURVE ( 'NONE', #3498, #3375, #14569, .T. ) ; +#7980 = VECTOR ( 'NONE', #17738, 39.37007874015748100 ) ; +#7982 = AXIS2_PLACEMENT_3D ( 'NONE', #13665, #16486, #10760 ) ; +#7983 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.1093749999999890500 ) ) ; +#7984 = AXIS2_PLACEMENT_3D ( 'NONE', #18288, #10736, #505 ) ; +#7985 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #6511, #6260, #18051, #14051, #12509, #9553, #8065, #18554, #14165 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5833333333333333700, 0.5871212121212121500, 0.5909090909090909400, 0.5946969696969697200, 0.5984848484848485100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#7986 = CARTESIAN_POINT ( 'NONE', ( 0.2279243004662880000, 0.1775683076714085800, 0.1168087764506891600 ) ) ; +#7987 = AXIS2_PLACEMENT_3D ( 'NONE', #13005, #14551, #10240 ) ; +#7988 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.418402777777777200 ) ) ; +#7989 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#7990 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.1076388888888780400 ) ) ; +#7991 = VECTOR ( 'NONE', #11395, 39.37007874015748100 ) ; +#7992 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.4149305555555470300 ) ) ; +#7993 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.8437499999999945600 ) ) ; +#7994 = EDGE_LOOP ( 'NONE', ( #7699, #1018, #258, #1106 ) ) ; +#7995 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.020833333333329900 ) ) ; +#7996 = LINE ( 'NONE', #17889, #13289 ) ; +#7997 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.6909722222222158800 ) ) ; +#7998 = EDGE_CURVE ( 'NONE', #17544, #10537, #530, .T. ) ; +#7999 = CARTESIAN_POINT ( 'NONE', ( 0.01171875000000001400, 0.4686034927296605600, 1.587227003692501100 ) ) ; +#8000 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.4062499999999911700 ) ) ; +#8001 = EDGE_CURVE ( 'NONE', #16271, #4412, #6040, .T. ) ; +#8002 = EDGE_CURVE ( 'NONE', #17788, #16349, #292, .T. ) ; +#8003 = ORIENTED_EDGE ( 'NONE', *, *, #7643, .F. ) ; +#8004 = AXIS2_PLACEMENT_3D ( 'NONE', #14389, #14642, #5743 ) ; +#8005 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#8006 = AXIS2_PLACEMENT_3D ( 'NONE', #15151, #3507, #16648 ) ; +#8007 = VECTOR ( 'NONE', #12717, 39.37007874015748900 ) ; +#8008 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.5868055555555482500 ) ) ; +#8009 = LINE ( 'NONE', #15480, #1551 ) ; +#8010 = CYLINDRICAL_SURFACE ( 'NONE', #6641, 0.3125000000000008300 ) ; +#8011 = VERTEX_POINT ( 'NONE', #1003 ) ; +#8012 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.4583333333333252100 ) ) ; +#8013 = CARTESIAN_POINT ( 'NONE', ( -0.1034502481550446100, -0.4492562999771352900, 1.440511179676399000 ) ) ; +#8014 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#8015 = CYLINDRICAL_SURFACE ( 'NONE', #5256, 0.3125000000000008300 ) ; +#8016 = CIRCLE ( 'NONE', #8687, 0.4687499999999996100 ) ; +#8017 = DIRECTION ( 'NONE', ( -0.4999999999999999400, -0.8660254037844387100, 0.0000000000000000000 ) ) ; +#8018 = ORIENTED_EDGE ( 'NONE', *, *, #503, .T. ) ; +#8019 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.5972222222222153300 ) ) ; +#8020 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.9166666666666624100 ) ) ; +#8021 = ORIENTED_EDGE ( 'NONE', *, *, #5606, .T. ) ; +#8022 = VERTEX_POINT ( 'NONE', #18891 ) ; +#8023 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.067708333333330200 ) ) ; +#8024 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8025 = EDGE_CURVE ( 'NONE', #5595, #17767, #3284, .T. ) ; +#8026 = CARTESIAN_POINT ( 'NONE', ( 3.032612960979414900E-017, 1.569772566619547600E-017, -1.174024639073302500 ) ) ; +#8027 = ORIENTED_EDGE ( 'NONE', *, *, #17617, .T. ) ; +#8028 = ORIENTED_EDGE ( 'NONE', *, *, #17500, .F. ) ; +#8029 = VECTOR ( 'NONE', #17762, 39.37007874015748100 ) ; +#8030 = VECTOR ( 'NONE', #10985, 39.37007874015748900 ) ; +#8031 = AXIS2_PLACEMENT_3D ( 'NONE', #15438, #18095, #12350 ) ; +#8032 = DIRECTION ( 'NONE', ( 0.9584846895403595900, 0.2851439985633930600, -0.0000000000000000000 ) ) ; +#8033 = CIRCLE ( 'NONE', #11834, 0.4687475818742549700 ) ; +#8034 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 0.1209958264051836100, 1.265590919175520800 ) ) ; +#8035 = ORIENTED_EDGE ( 'NONE', *, *, #13022, .F. ) ; +#8036 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.4965277777777698000 ) ) ; +#8037 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8038 = VECTOR ( 'NONE', #10741, 39.37007874015748100 ) ; +#8039 = ADVANCED_FACE ( 'NONE', ( #15262 ), #10659, .T. ) ; +#8040 = EDGE_LOOP ( 'NONE', ( #13049, #18175, #13662, #997, #10684, #3875 ) ) ; +#8041 = ORIENTED_EDGE ( 'NONE', *, *, #1827, .T. ) ; +#8042 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.07465277777776664600 ) ) ; +#8043 = CARTESIAN_POINT ( 'NONE', ( 0.4606833792705947200, 0.01743562377179322700, 1.440511179676348100 ) ) ; +#8044 = CARTESIAN_POINT ( 'NONE', ( -0.07890156555195196300, 0.2816788338822973100, 0.1253948660093304700 ) ) ; +#8045 = ORIENTED_EDGE ( 'NONE', *, *, #10022, .F. ) ; +#8046 = ORIENTED_EDGE ( 'NONE', *, *, #13565, .T. ) ; +#8047 = CIRCLE ( 'NONE', #13482, 0.4687475818742550800 ) ; +#8048 = CIRCLE ( 'NONE', #6788, 0.4687499999999995000 ) ; +#8049 = ORIENTED_EDGE ( 'NONE', *, *, #17535, .F. ) ; +#8050 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#8051 = ORIENTED_EDGE ( 'NONE', *, *, #386, .F. ) ; +#8052 = VECTOR ( 'NONE', #5519, 39.37007874015748900 ) ; +#8053 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.585069444444445100 ) ) ; +#8054 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#8055 = ORIENTED_EDGE ( 'NONE', *, *, #15045, .F. ) ; +#8056 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -0.02440487719284422500, 1.249999999999999800 ) ) ; +#8057 = CARTESIAN_POINT ( 'NONE', ( -0.1674842983648653600, 0.1919780298488217300, 1.252150695770649200 ) ) ; +#8058 = ADVANCED_FACE ( 'NONE', ( #11355 ), #13178, .T. ) ; +#8059 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.2274305555555454500 ) ) ; +#8060 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#8061 = EDGE_CURVE ( 'NONE', #15388, #13027, #4200, .T. ) ; +#8062 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.576388888888889500 ) ) ; +#8063 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676378800 ) ) ; +#8064 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.8749999999999948900 ) ) ; +#8065 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.8472222222222172100 ) ) ; +#8066 = ADVANCED_FACE ( 'NONE', ( #6977 ), #18696, .F. ) ; +#8067 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.027777777777774300 ) ) ; +#8068 = ORIENTED_EDGE ( 'NONE', *, *, #15932, .T. ) ; +#8069 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#8070 = VERTEX_POINT ( 'NONE', #8391 ) ; +#8071 = VECTOR ( 'NONE', #16460, 39.37007874015748100 ) ; +#8072 = FACE_OUTER_BOUND ( 'NONE', #11304, .T. ) ; +#8073 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.05902777777776618100 ) ) ; +#8074 = VERTEX_POINT ( 'NONE', #7109 ) ; +#8075 = ORIENTED_EDGE ( 'NONE', *, *, #278, .F. ) ; +#8076 = FACE_OUTER_BOUND ( 'NONE', #10167, .T. ) ; +#8077 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.9618055555555514700 ) ) ; +#8078 = CARTESIAN_POINT ( 'NONE', ( 0.2802162586133474800, 0.3660765293230687800, 1.440511179676402300 ) ) ; +#8079 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.7361111111111050500 ) ) ; +#8080 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#8081 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -1.493055555555555800 ) ) ; +#8082 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#8083 = ORIENTED_EDGE ( 'NONE', *, *, #1565, .F. ) ; +#8084 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.3263888888888796200 ) ) ; +#8085 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.6979166666666607500 ) ) ; +#8086 = VERTEX_POINT ( 'NONE', #11240 ) ; +#8087 = ORIENTED_EDGE ( 'NONE', *, *, #17897, .F. ) ; +#8088 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.7256944444444386500 ) ) ; +#8089 = VECTOR ( 'NONE', #14480, 39.37007874015748100 ) ; +#8090 = EDGE_LOOP ( 'NONE', ( #8878, #14088, #6954, #17368 ) ) ; +#8091 = VERTEX_POINT ( 'NONE', #9942 ) ; +#8092 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.6284722222222154400 ) ) ; +#8093 = CARTESIAN_POINT ( 'NONE', ( -0.4120995984523162500, -0.2066569569792553700, 1.187613820323600200 ) ) ; +#8094 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.109374999999997100 ) ) ; +#8095 = CARTESIAN_POINT ( 'NONE', ( 0.2849188901020728900, -0.3722200808164483600, 1.143750000000000000 ) ) ; +#8096 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.8958333333333287100 ) ) ; +#8097 = EDGE_CURVE ( 'NONE', #13599, #8658, #5338, .T. ) ; +#8098 = CARTESIAN_POINT ( 'NONE', ( 1.376255635688564000E-017, -3.125195627036349700E-017, 3.802149639073266300 ) ) ; +#8099 = CARTESIAN_POINT ( 'NONE', ( 0.4592360163321189100, 0.04044079890274024400, 1.440511179676348100 ) ) ; +#8100 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.1493055555555450600 ) ) ; +#8101 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #8245, #5145, #6568, #12565, #3744, #847 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 0.03018390269469499800, 0.03203721263681388200, 0.03389052257893276900 ), + .UNSPECIFIED. ) ; +#8102 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.4861111111111030000 ) ) ; +#8103 = AXIS2_PLACEMENT_3D ( 'NONE', #6374, #16690, #18251 ) ; +#8104 = CARTESIAN_POINT ( 'NONE', ( -0.4190155160288329100, 0.2101251051804387000, 1.484375000000000200 ) ) ; +#8105 = VERTEX_POINT ( 'NONE', #8589 ) ; +#8106 = ORIENTED_EDGE ( 'NONE', *, *, #5209, .T. ) ; +#8107 = ORIENTED_EDGE ( 'NONE', *, *, #9885, .T. ) ; +#8108 = FACE_OUTER_BOUND ( 'NONE', #4379, .T. ) ; +#8109 = ORIENTED_EDGE ( 'NONE', *, *, #3459, .F. ) ; +#8110 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, 0.1059027777777902500 ) ) ; +#8111 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#8112 = CARTESIAN_POINT ( 'NONE', ( -0.1492475888737581100, 0.2523992956992680600, 0.1273494899930267000 ) ) ; +#8113 = CARTESIAN_POINT ( 'NONE', ( -0.4347510546871065100, 0.1533776299234495300, 1.590985962198545200 ) ) ; +#8114 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.7361111111111052800 ) ) ; +#8115 = EDGE_CURVE ( 'NONE', #9638, #7344, #14804, .T. ) ; +#8116 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.387152777777777000 ) ) ; +#8117 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8118 = ORIENTED_EDGE ( 'NONE', *, *, #14869, .F. ) ; +#8119 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.6076388888888820700 ) ) ; +#8120 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8121 = ORIENTED_EDGE ( 'NONE', *, *, #10541, .T. ) ; +#8122 = EDGE_CURVE ( 'NONE', #4406, #5994, #4634, .T. ) ; +#8123 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.3315972222222129400 ) ) ; +#8124 = DIRECTION ( 'NONE', ( -0.8639889495520213200, 0.5035107695491675100, 0.0000000000000000000 ) ) ; +#8125 = DIRECTION ( 'NONE', ( -0.9992845593168622200, 0.03782022621434901600, 0.0000000000000000000 ) ) ; +#8126 = DIRECTION ( 'NONE', ( 0.4596954355469681200, 0.8880766332571098400, -0.0000000000000000000 ) ) ; +#8127 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.8958333333333283700 ) ) ; +#8128 = EDGE_LOOP ( 'NONE', ( #4120, #14647, #1117, #12283, #17702, #4418 ) ) ; +#8129 = EDGE_CURVE ( 'NONE', #11841, #13982, #15244, .T. ) ; +#8130 = AXIS2_PLACEMENT_3D ( 'NONE', #9368, #13743, #9178 ) ; +#8131 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8132 = VECTOR ( 'NONE', #16034, 39.37007874015748900 ) ; +#8133 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.8090277777777729100 ) ) ; +#8134 = VERTEX_POINT ( 'NONE', #14245 ) ; +#8135 = AXIS2_PLACEMENT_3D ( 'NONE', #18287, #3387, #6420 ) ; +#8136 = VERTEX_POINT ( 'NONE', #8652 ) ; +#8137 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.2013888888888783800 ) ) ; +#8138 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -1.281249999999998400 ) ) ; +#8139 = ADVANCED_FACE ( 'NONE', ( #15919 ), #12268, .T. ) ; +#8140 = EDGE_LOOP ( 'NONE', ( #17234, #2476, #2839, #6418, #1454, #5739, #17699 ) ) ; +#8141 = EDGE_LOOP ( 'NONE', ( #3316, #15429, #11613, #8498 ) ) ; +#8142 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.7847222222222164400 ) ) ; +#8143 = DIRECTION ( 'NONE', ( -0.3420201433256694300, 0.0000000000000000000, 0.9396926207859080900 ) ) ; +#8144 = DIRECTION ( 'NONE', ( 0.02606405807964018100, -0.1716809671555510300, -0.9848077530122088000 ) ) ; +#8145 = EDGE_LOOP ( 'NONE', ( #14862, #17667, #11270, #15229 ) ) ; +#8146 = EDGE_CURVE ( 'NONE', #14614, #11131, #10413, .T. ) ; +#8147 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.1249999999999892400 ) ) ; +#8148 = CARTESIAN_POINT ( 'NONE', ( -0.2682474752545860300, 0.1283902806992059400, -1.536551385051208300 ) ) ; +#8149 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.04513888888890076100 ) ) ; +#8150 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8151 = ORIENTED_EDGE ( 'NONE', *, *, #5981, .F. ) ; +#8152 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#8153 = DIRECTION ( 'NONE', ( 0.01745011258364900400, -0.1727691615360282800, 0.9848077530122088000 ) ) ; +#8154 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.3124999999999910100 ) ) ; +#8155 = CONICAL_SURFACE ( 'NONE', #13166, 0.4610132068742565100, 0.1745329251994302300 ) ; +#8156 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.8020833333333283700 ) ) ; +#8157 = EDGE_LOOP ( 'NONE', ( #14756, #1484, #11533, #8611 ) ) ; +#8158 = ADVANCED_FACE ( 'NONE', ( #513 ), #4327, .F. ) ; +#8159 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#8160 = EDGE_LOOP ( 'NONE', ( #9795, #10987, #10131, #1349, #8461, #17040 ) ) ; +#8161 = ADVANCED_FACE ( 'NONE', ( #16870 ), #26, .F. ) ; +#8162 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.241319444444442600 ) ) ; +#8163 = DIRECTION ( 'NONE', ( 0.02499999999999999100, 0.9996874511566102800, -0.0000000000000000000 ) ) ; +#8164 = CARTESIAN_POINT ( 'NONE', ( -0.2766944240917532700, -0.03687585543835034100, 0.08992964316287546700 ) ) ; +#8165 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323602900 ) ) ; +#8166 = ORIENTED_EDGE ( 'NONE', *, *, #13678, .T. ) ; +#8167 = PERSON_AND_ORGANIZATION ( #18342, #15970 ) ; +#8168 = DIRECTION ( 'NONE', ( 0.4030255384282960300, 0.9151887321064339200, -0.0000000000000000000 ) ) ; +#8169 = EDGE_LOOP ( 'NONE', ( #10913, #5727, #16909, #14028 ) ) ; +#8170 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.5972222222222149900 ) ) ; +#8171 = CARTESIAN_POINT ( 'NONE', ( 9.427772411032813500E-017, -4.008173262706276100E-017, -1.174024639073348400 ) ) ; +#8172 = LINE ( 'NONE', #7429, #4222 ) ; +#8173 = EDGE_CURVE ( 'NONE', #9215, #3845, #14110, .T. ) ; +#8174 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, 0.2100694444444577400 ) ) ; +#8175 = DIRECTION ( 'NONE', ( 0.1004911932742403200, 0.9949379478511808400, -0.0000000000000000000 ) ) ; +#8176 = DIRECTION ( 'NONE', ( -0.04737586595177534200, -0.1670605187719810800, 0.9848077530122089100 ) ) ; +#8177 = DIRECTION ( 'NONE', ( 0.03896623090933670800, -0.1692197460575012900, 0.9848077530122083500 ) ) ; +#8178 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.484374999999999800 ) ) ; +#8179 = CARTESIAN_POINT ( 'NONE', ( 0.1799826345240773700, -0.2109280674095316300, -1.556219149172013900 ) ) ; +#8180 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.190972222222220100 ) ) ; +#8181 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.1249999999999892400 ) ) ; +#8182 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.2031249999999896500 ) ) ; +#8183 = DIRECTION ( 'NONE', ( -0.7458544667682548400, -0.6661089358369561800, 0.0000000000000000000 ) ) ; +#8184 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.329861111111109800 ) ) ; +#8185 = CARTESIAN_POINT ( 'NONE', ( 0.3624522803384160900, -0.2848886122504168400, 1.187613820323613700 ) ) ; +#8186 = VECTOR ( 'NONE', #12173, 39.37007874015748900 ) ; +#8187 = DIRECTION ( 'NONE', ( 0.9772957051199515600, 0.2118799300408056000, 0.0000000000000000000 ) ) ; +#8188 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.9166666666666624100 ) ) ; +#8189 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -1.170138888888886400 ) ) ; +#8190 = FACE_OUTER_BOUND ( 'NONE', #6900, .T. ) ; +#8191 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.1631944444444336800 ) ) ; +#8192 = VERTEX_POINT ( 'NONE', #1307 ) ; +#8193 = EDGE_CURVE ( 'NONE', #1610, #14010, #12490, .T. ) ; +#8194 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8195 = VECTOR ( 'NONE', #2003, 39.37007874015748100 ) ; +#8196 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.06944444444445682700 ) ) ; +#8197 = ORIENTED_EDGE ( 'NONE', *, *, #1401, .T. ) ; +#8198 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #12764, #6836, #8201, #3814, #9799, #2522, #3949, #6912, #17199 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7196969696969697200, 0.7234848484848485100, 0.7272727272727272900, 0.7310606060606060800, 0.7348484848484848600 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#8199 = FACE_OUTER_BOUND ( 'NONE', #17508, .T. ) ; +#8200 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.4513888888888804600 ) ) ; +#8201 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.2847222222222126600 ) ) ; +#8202 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#8203 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, 0.03125000000001185900 ) ) ; +#8204 = EDGE_CURVE ( 'NONE', #17788, #12040, #8567, .T. ) ; +#8205 = CARTESIAN_POINT ( 'NONE', ( -0.4120995984523162500, -0.2066569569792553700, 1.592116737595687900 ) ) ; +#8206 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8207 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.4999999999999925100 ) ) ; +#8208 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.5451388888888817300 ) ) ; +#8209 = LINE ( 'NONE', #17570, #8912 ) ; +#8210 = ORIENTED_EDGE ( 'NONE', *, *, #13363, .T. ) ; +#8211 = FACE_OUTER_BOUND ( 'NONE', #12882, .T. ) ; +#8212 = ORIENTED_EDGE ( 'NONE', *, *, #2917, .T. ) ; +#8213 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.196180555555553400 ) ) ; +#8214 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8215 = LINE ( 'NONE', #19026, #387 ) ; +#8216 = CARTESIAN_POINT ( 'NONE', ( -0.2701262813328644800, -0.07355909201017400700, 0.09090946584181071300 ) ) ; +#8217 = DIRECTION ( 'NONE', ( -0.7862080194966613000, 0.6179619325485490300, 0.0000000000000000000 ) ) ; +#8218 = DIRECTION ( 'NONE', ( -0.9430338398216121500, -0.3326968243781501200, 0.0000000000000000000 ) ) ; +#8219 = DIRECTION ( 'NONE', ( 0.004341204441673057100, -0.1735939041298396300, -0.9848077530122088000 ) ) ; +#8220 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.5312499999999922300 ) ) ; +#8221 = ADVANCED_FACE ( 'NONE', ( #10193 ), #17596, .F. ) ; +#8222 = EDGE_LOOP ( 'NONE', ( #3519, #9690, #6016, #8294 ) ) ; +#8223 = EDGE_CURVE ( 'NONE', #3966, #17405, #15699, .T. ) ; +#8224 = EDGE_CURVE ( 'NONE', #14479, #12487, #9736, .T. ) ; +#8225 = LINE ( 'NONE', #9149, #10070 ) ; +#8226 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, 0.1371527777777906400 ) ) ; +#8227 = VECTOR ( 'NONE', #6665, 39.37007874015748100 ) ; +#8228 = AXIS2_PLACEMENT_3D ( 'NONE', #5175, #16979, #3717 ) ; +#8229 = ORIENTED_EDGE ( 'NONE', *, *, #18863, .T. ) ; +#8230 = EDGE_LOOP ( 'NONE', ( #11233, #7189, #9909, #17780 ) ) ; +#8231 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.500000000000000400 ) ) ; +#8232 = CARTESIAN_POINT ( 'NONE', ( -0.2650165227319136700, 0.1290602150009854100, 0.1315756423664096200 ) ) ; +#8233 = AXIS2_PLACEMENT_3D ( 'NONE', #938, #6718, #8206 ) ; +#8234 = LINE ( 'NONE', #13319, #17206 ) ; +#8235 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.8819444444444396500 ) ) ; +#8236 = PLANE ( 'NONE', #11199 ) ; +#8237 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.401041666666665900 ) ) ; +#8238 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.524305555555555600 ) ) ; +#8239 = ADVANCED_FACE ( 'NONE', ( #6272 ), #4397, .F. ) ; +#8240 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.1197916666666556700 ) ) ; +#8241 = CARTESIAN_POINT ( 'NONE', ( -0.2786454333104068600, -7.879427662528783000E-013, 0.08899038763601538300 ) ) ; +#8242 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.496527777777777900 ) ) ; +#8243 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8244 = ORIENTED_EDGE ( 'NONE', *, *, #3993, .F. ) ; +#8245 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, -5.463695987421893100E-016, 1.249999999999999800 ) ) ; +#8246 = ADVANCED_FACE ( 'NONE', ( #1432 ), #8908, .F. ) ; +#8247 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.7916666666666614100 ) ) ; +#8248 = LINE ( 'NONE', #12892, #8933 ) ; +#8249 = CIRCLE ( 'NONE', #10517, 0.4687475818742549700 ) ; +#8250 = VECTOR ( 'NONE', #540, 39.37007874015748100 ) ; +#8251 = ORIENTED_EDGE ( 'NONE', *, *, #2711, .F. ) ; +#8252 = EDGE_CURVE ( 'NONE', #12394, #13181, #2356, .T. ) ; +#8253 = CARTESIAN_POINT ( 'NONE', ( 0.2119256669269656800, 0.4094150566479534100, 1.592561465728329600 ) ) ; +#8254 = VECTOR ( 'NONE', #2997, 39.37007874015748900 ) ; +#8255 = LINE ( 'NONE', #18583, #18618 ) ; +#8256 = ORIENTED_EDGE ( 'NONE', *, *, #16631, .T. ) ; +#8257 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.04166666666665497900 ) ) ; +#8258 = AXIS2_PLACEMENT_3D ( 'NONE', #18442, #3558, #6579 ) ; +#8259 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -1.277777777777776100 ) ) ; +#8260 = EDGE_CURVE ( 'NONE', #16484, #13454, #17319, .T. ) ; +#8261 = CARTESIAN_POINT ( 'NONE', ( 0.01171875000000001600, -0.4686034927296616200, 1.143750000000000000 ) ) ; +#8262 = VERTEX_POINT ( 'NONE', #11859 ) ; +#8263 = AXIS2_PLACEMENT_3D ( 'NONE', #11797, #4761, #6256 ) ; +#8264 = ORIENTED_EDGE ( 'NONE', *, *, #5584, .T. ) ; +#8265 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.3888888888888800100 ) ) ; +#8266 = CARTESIAN_POINT ( 'NONE', ( -0.1034502481550478400, 0.4492562999771345100, 1.590308733529502500 ) ) ; +#8267 = CARTESIAN_POINT ( 'NONE', ( -2.785302784197738600E-016, -4.228558048076330400E-017, -1.174024639073294900 ) ) ; +#8268 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#8269 = CARTESIAN_POINT ( 'NONE', ( 0.1850181799115878100, 0.2196412532320799500, -1.546791319909661200 ) ) ; +#8270 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.02430555555554432200 ) ) ; +#8271 = ORIENTED_EDGE ( 'NONE', *, *, #4137, .F. ) ; +#8272 = ORIENTED_EDGE ( 'NONE', *, *, #6104, .T. ) ; +#8273 = LINE ( 'NONE', #8814, #13553 ) ; +#8274 = VECTOR ( 'NONE', #17620, 39.37007874015748900 ) ; +#8275 = VERTEX_POINT ( 'NONE', #14578 ) ; +#8276 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#8277 = VERTEX_POINT ( 'NONE', #13542 ) ; +#8278 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.3298611111111022200 ) ) ; +#8279 = LINE ( 'NONE', #18149, #8038 ) ; +#8280 = VERTEX_POINT ( 'NONE', #17854 ) ; +#8281 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.4999999999999925100 ) ) ; +#8282 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.013888888888884800 ) ) ; +#8283 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8284 = EDGE_CURVE ( 'NONE', #2056, #4094, #13649, .T. ) ; +#8285 = ORIENTED_EDGE ( 'NONE', *, *, #5848, .F. ) ; +#8286 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#8287 = VERTEX_POINT ( 'NONE', #345 ) ; +#8288 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8289 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#8290 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.3888888888888800100 ) ) ; +#8291 = CARTESIAN_POINT ( 'NONE', ( 0.4684146371797792700, -0.01772823103797236200, 1.143750000000000000 ) ) ; +#8292 = ORIENTED_EDGE ( 'NONE', *, *, #11951, .T. ) ; +#8293 = CONICAL_SURFACE ( 'NONE', #12119, 0.4610132068742565100, 0.1745329251994277300 ) ; +#8294 = ORIENTED_EDGE ( 'NONE', *, *, #833, .T. ) ; +#8295 = VERTEX_POINT ( 'NONE', #8979 ) ; +#8296 = VECTOR ( 'NONE', #15652, 39.37007874015748100 ) ; +#8297 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, 0.07118055555556784800 ) ) ; +#8298 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.510416666666667000 ) ) ; +#8299 = EDGE_LOOP ( 'NONE', ( #12687, #8106, #11828, #959 ) ) ; +#8300 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8301 = DIRECTION ( 'NONE', ( 0.5035107695491675100, 0.8639889495520213200, -0.0000000000000000000 ) ) ; +#8302 = EDGE_LOOP ( 'NONE', ( #17139, #8229, #15413, #17740 ) ) ; +#8303 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.206597222222219900 ) ) ; +#8304 = VERTEX_POINT ( 'NONE', #7687 ) ; +#8305 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.555555555555556000 ) ) ; +#8306 = LINE ( 'NONE', #4927, #18223 ) ; +#8307 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.7777777777777722400 ) ) ; +#8308 = CIRCLE ( 'NONE', #13938, 0.4610132068742565100 ) ; +#8309 = VERTEX_POINT ( 'NONE', #7741 ) ; +#8310 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.01909722222221046900 ) ) ; +#8311 = VERTEX_POINT ( 'NONE', #6061 ) ; +#8312 = EDGE_CURVE ( 'NONE', #11789, #16585, #5697, .T. ) ; +#8313 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.413194444444443800 ) ) ; +#8314 = VECTOR ( 'NONE', #3862, 39.37007874015748100 ) ; +#8315 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.7881944444444392000 ) ) ; +#8316 = EDGE_LOOP ( 'NONE', ( #738, #14664, #3888, #16727 ) ) ; +#8317 = EDGE_LOOP ( 'NONE', ( #7105, #15412, #3125, #7815 ) ) ; +#8318 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#8319 = AXIS2_PLACEMENT_3D ( 'NONE', #6118, #4758, #16426 ) ; +#8320 = DIRECTION ( 'NONE', ( 0.1219978065221465100, -0.1235727510854594100, -0.9848077530122089100 ) ) ; +#8321 = ORIENTED_EDGE ( 'NONE', *, *, #7228, .F. ) ; +#8322 = ADVANCED_FACE ( 'NONE', ( #1653 ), #16494, .F. ) ; +#8323 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#8324 = LINE ( 'NONE', #8433, #15680 ) ; +#8325 = VERTEX_POINT ( 'NONE', #84 ) ; +#8326 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.4583333333333249300 ) ) ; +#8327 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8328 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.7430555555555499200 ) ) ; +#8329 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8330 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #7166, #8639, #2771, #19062, #2891, #8767, #10118, #13135, #13073 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.9621212121212121500, 0.9659090909090909400, 0.9696969696969697200, 0.9734848484848485100, 0.9772727272727272900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#8331 = CARTESIAN_POINT ( 'NONE', ( 0.2535356120922827000, 0.1290561486286938600, -1.549000818299158400 ) ) ; +#8332 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.04513888888887781400 ) ) ; +#8333 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8334 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8335 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.4236111111111029400 ) ) ; +#8336 = EDGE_LOOP ( 'NONE', ( #5150, #4400, #6531, #11310, #4804, #7694 ) ) ; +#8337 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.7083333333333274900 ) ) ; +#8338 = VERTEX_POINT ( 'NONE', #10388 ) ; +#8339 = ADVANCED_FACE ( 'NONE', ( #6020 ), #13878, .T. ) ; +#8340 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#8341 = ORIENTED_EDGE ( 'NONE', *, *, #18821, .F. ) ; +#8342 = VECTOR ( 'NONE', #589, 39.37007874015748100 ) ; +#8343 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.072916666666663200 ) ) ; +#8344 = EDGE_CURVE ( 'NONE', #2304, #10186, #17787, .T. ) ; +#8345 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.1631944444444342100 ) ) ; +#8346 = EDGE_LOOP ( 'NONE', ( #14992, #5527, #2835, #14913, #16118, #14059 ) ) ; +#8347 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8348 = EDGE_CURVE ( 'NONE', #8192, #5449, #3501, .T. ) ; +#8349 = CARTESIAN_POINT ( 'NONE', ( -0.4019342351530919600, -0.2411958397483227300, 1.484375000000000200 ) ) ; +#8350 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.4097222222222134900 ) ) ; +#8351 = AXIS2_PLACEMENT_3D ( 'NONE', #14237, #17459, #11356 ) ; +#8352 = ORIENTED_EDGE ( 'NONE', *, *, #1733, .F. ) ; +#8353 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.343749999999999600 ) ) ; +#8354 = VERTEX_POINT ( 'NONE', #4643 ) ; +#8355 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, 0.2031250000000134300 ) ) ; +#8356 = VECTOR ( 'NONE', #16910, 39.37007874015747400 ) ; +#8357 = ORIENTED_EDGE ( 'NONE', *, *, #3236, .F. ) ; +#8358 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.482638888888889300 ) ) ; +#8359 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8360 = ORIENTED_EDGE ( 'NONE', *, *, #3799, .T. ) ; +#8361 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#8362 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8363 = EDGE_CURVE ( 'NONE', #15115, #13107, #3041, .T. ) ; +#8364 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.182291666666664300 ) ) ; +#8365 = PLANE ( 'NONE', #14519 ) ; +#8366 = EDGE_CURVE ( 'NONE', #16616, #7872, #4874, .T. ) ; +#8367 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.1927083333333230700 ) ) ; +#8368 = PLANE ( 'NONE', #9491 ) ; +#8369 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.465277777777777500 ) ) ; +#8370 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#8371 = CARTESIAN_POINT ( 'NONE', ( -0.4592360163321193000, -0.04044079890273683000, 1.587900241027141200 ) ) ; +#8372 = EDGE_CURVE ( 'NONE', #6722, #11882, #17104, .T. ) ; +#8373 = VERTEX_POINT ( 'NONE', #15016 ) ; +#8374 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.8888888888888844000 ) ) ; +#8375 = ORIENTED_EDGE ( 'NONE', *, *, #9108, .T. ) ; +#8376 = ORIENTED_EDGE ( 'NONE', *, *, #15492, .T. ) ; +#8377 = DIRECTION ( 'NONE', ( -0.1627655675043581400, -0.9866647708492405400, 0.0000000000000000000 ) ) ; +#8378 = CARTESIAN_POINT ( 'NONE', ( -0.4505462270817879900, 0.09767944602039871400, 1.484375000000000200 ) ) ; +#8379 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, 0.04513888888890103800 ) ) ; +#8380 = FACE_OUTER_BOUND ( 'NONE', #15166, .T. ) ; +#8381 = ORIENTED_EDGE ( 'NONE', *, *, #3396, .F. ) ; +#8382 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.5347222222222144400 ) ) ; +#8383 = ORIENTED_EDGE ( 'NONE', *, *, #15991, .T. ) ; +#8384 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.9826388888888850600 ) ) ; +#8385 = EDGE_CURVE ( 'NONE', #16073, #9895, #10885, .T. ) ; +#8386 = CARTESIAN_POINT ( 'NONE', ( 0.2849188901020723300, -0.3722200808164475300, 1.593193105402742800 ) ) ; +#8387 = CARTESIAN_POINT ( 'NONE', ( -5.680482201099291800E-018, -1.610140689546368500E-017, -1.174024639073291600 ) ) ; +#8388 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.09374999999998913400 ) ) ; +#8389 = CALENDAR_DATE ( 2024, 16, 6 ) ; +#8390 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.8263888888888837300 ) ) ; +#8391 = CARTESIAN_POINT ( 'NONE', ( -0.2659575542964067700, 0.3859962976670546800, 1.484375000000000200 ) ) ; +#8392 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#8393 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.4791666666666589700 ) ) ; +#8394 = ORIENTED_EDGE ( 'NONE', *, *, #17556, .F. ) ; +#8395 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.5069444444444369800 ) ) ; +#8396 = FACE_OUTER_BOUND ( 'NONE', #4646, .T. ) ; +#8397 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.9479166666666621900 ) ) ; +#8398 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.07291666666665563800 ) ) ; +#8399 = CARTESIAN_POINT ( 'NONE', ( 0.1051858231909476000, 0.4567934304613017200, 1.484375000000000200 ) ) ; +#8400 = CARTESIAN_POINT ( 'NONE', ( 0.1449055538564970900, -0.2452519988220306600, 0.1043927255486680600 ) ) ; +#8401 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.588758826628429200 ) ) ; +#8402 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.3645833333333242100 ) ) ; +#8403 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -1.003472222222218500 ) ) ; +#8404 = LINE ( 'NONE', #9563, #1275 ) ; +#8405 = VERTEX_POINT ( 'NONE', #4832 ) ; +#8406 = ADVANCED_FACE ( 'NONE', ( #9502 ), #8805, .T. ) ; +#8407 = FACE_OUTER_BOUND ( 'NONE', #16853, .T. ) ; +#8408 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.329861111111110100 ) ) ; +#8409 = EDGE_CURVE ( 'NONE', #2293, #12195, #18704, .T. ) ; +#8410 = LINE ( 'NONE', #11596, #811 ) ; +#8411 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, 0.2343750000000135200 ) ) ; +#8412 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8413 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.9583333333333291500 ) ) ; +#8414 = CARTESIAN_POINT ( 'NONE', ( 0.4505462270817866500, 0.09767944602040519500, 1.589564174286821800 ) ) ; +#8415 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.6041666666666597500 ) ) ; +#8416 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.7152777777777717900 ) ) ; +#8417 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.300347222222220800 ) ) ; +#8418 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.388888888888888000 ) ) ; +#8419 = CARTESIAN_POINT ( 'NONE', ( 0.01171868954685638100, -0.4686010753596986400, 1.484375000000000200 ) ) ; +#8420 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#8421 = LINE ( 'NONE', #1710, #1738 ) ; +#8422 = ADVANCED_FACE ( 'NONE', ( #4422 ), #6963, .T. ) ; +#8423 = ORIENTED_EDGE ( 'NONE', *, *, #14295, .F. ) ; +#8424 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.08159722222221095500 ) ) ; +#8425 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.437499999999999300 ) ) ; +#8426 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.267361111111109400 ) ) ; +#8427 = CARTESIAN_POINT ( 'NONE', ( -0.1257767296168604300, -0.4435238338571820300, 1.590308733529502500 ) ) ; +#8428 = CIRCLE ( 'NONE', #16017, 0.4687475818742590800 ) ; +#8429 = ORIENTED_EDGE ( 'NONE', *, *, #18585, .F. ) ; +#8430 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.7534722222222165500 ) ) ; +#8431 = FACE_OUTER_BOUND ( 'NONE', #18016, .T. ) ; +#8432 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8433 = CARTESIAN_POINT ( 'NONE', ( -6.330667745976217100E-017, 8.054253002492614200E-017, -1.174024639073221200 ) ) ; +#8434 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.7916666666666611900 ) ) ; +#8435 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8436 = LINE ( 'NONE', #15349, #1294 ) ; +#8437 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.6579861111111046100 ) ) ; +#8438 = VECTOR ( 'NONE', #14162, 39.37007874015748100 ) ; +#8439 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.4618055555555472000 ) ) ; +#8440 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8441 = EDGE_LOOP ( 'NONE', ( #13789, #15243, #12454, #15050 ) ) ; +#8442 = ORIENTED_EDGE ( 'NONE', *, *, #16996, .T. ) ; +#8443 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#8444 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, 0.1145833333333458500 ) ) ; +#8446 = EDGE_CURVE ( 'NONE', #13739, #4094, #2127, .T. ) ; +#8445 = LINE ( 'NONE', #18246, #9838 ) ; +#8447 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, 0.01041666666667864300 ) ) ; +#8448 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8449 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.2986111111111018300 ) ) ; +#8450 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.6006944444444376500 ) ) ; +#8451 = CARTESIAN_POINT ( 'NONE', ( 2.718019236657686400E-016, -2.745266647271801300E-017, -1.174024639073293100 ) ) ; +#8452 = VERTEX_POINT ( 'NONE', #6317 ) ; +#8453 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.9374999999999954500 ) ) ; +#8454 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.1423611111111007200 ) ) ; +#8455 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, 0.1631944444444574600 ) ) ; +#8456 = LINE ( 'NONE', #17044, #14681 ) ; +#8457 = CARTESIAN_POINT ( 'NONE', ( 0.2159830920727373000, -0.1863294603460356700, 0.1067218382664951200 ) ) ; +#8458 = VECTOR ( 'NONE', #9428, 39.37007874015748100 ) ; +#8459 = CIRCLE ( 'NONE', #18503, 0.4687475818742556900 ) ; +#8460 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.329861111111109800 ) ) ; +#8461 = ORIENTED_EDGE ( 'NONE', *, *, #10311, .T. ) ; +#8462 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.3541666666666574700 ) ) ; +#8463 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.04861111111109956600 ) ) ; +#8464 = FACE_OUTER_BOUND ( 'NONE', #5094, .T. ) ; +#8465 = VECTOR ( 'NONE', #3320, 39.37007874015748100 ) ; +#8466 = ORIENTED_EDGE ( 'NONE', *, *, #9131, .T. ) ; +#8467 = EDGE_CURVE ( 'NONE', #13414, #12858, #12948, .T. ) ; +#8468 = EDGE_CURVE ( 'NONE', #18132, #16103, #18266, .T. ) ; +#8469 = ORIENTED_EDGE ( 'NONE', *, *, #18359, .F. ) ; +#8470 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.267361111111109600 ) ) ; +#8471 = EDGE_CURVE ( 'NONE', #15610, #6720, #11994, .T. ) ; +#8472 = ORIENTED_EDGE ( 'NONE', *, *, #8679, .F. ) ; +#8473 = AXIS2_PLACEMENT_3D ( 'NONE', #5897, #7531, #7479 ) ; +#8474 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.402777777777777500 ) ) ; +#8475 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8476 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#8477 = AXIS2_PLACEMENT_3D ( 'NONE', #1389, #11676, #17606 ) ; +#8478 = EDGE_LOOP ( 'NONE', ( #1509, #13228, #12537, #1382 ) ) ; +#8479 = ORIENTED_EDGE ( 'NONE', *, *, #9674, .T. ) ; +#8480 = VECTOR ( 'NONE', #10360, 39.37007874015748100 ) ; +#8481 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8482 = VECTOR ( 'NONE', #1903, 39.37007874015748100 ) ; +#8483 = CARTESIAN_POINT ( 'NONE', ( -0.4606833792705949400, 0.01743562377178659700, 1.187613820323615500 ) ) ; +#8484 = LINE ( 'NONE', #8615, #18183 ) ; +#8485 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.2951388888888795700 ) ) ; +#8486 = ORIENTED_EDGE ( 'NONE', *, *, #11889, .T. ) ; +#8487 = CIRCLE ( 'NONE', #17599, 0.4687475818742581300 ) ; +#8488 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.321180555555554200 ) ) ; +#8489 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.399305555555554700 ) ) ; +#8490 = CARTESIAN_POINT ( 'NONE', ( -0.2154822354126468300, 0.4162859218392669400, 1.592561465728329600 ) ) ; +#8491 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, 0.03993055555556773000 ) ) ; +#8492 = CARTESIAN_POINT ( 'NONE', ( -0.4219140922835695200, -0.1858000959230583500, 1.484375000000000200 ) ) ; +#8493 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.232638888888886600 ) ) ; +#8494 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#8495 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8496 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.6319444444444378700 ) ) ; +#8497 = ORIENTED_EDGE ( 'NONE', *, *, #15267, .T. ) ; +#8498 = ORIENTED_EDGE ( 'NONE', *, *, #3154, .T. ) ; +#8499 = EDGE_CURVE ( 'NONE', #11392, #12990, #15746, .T. ) ; +#8500 = CARTESIAN_POINT ( 'NONE', ( 1.968368661174687400E-016, -1.356237140728376000E-016, 3.802149639073315200 ) ) ; +#8501 = VERTEX_POINT ( 'NONE', #5014 ) ; +#8502 = VERTEX_POINT ( 'NONE', #16821 ) ; +#8503 = FACE_OUTER_BOUND ( 'NONE', #889, .T. ) ; +#8504 = ORIENTED_EDGE ( 'NONE', *, *, #5882, .F. ) ; +#8505 = ORIENTED_EDGE ( 'NONE', *, *, #18450, .T. ) ; +#8506 = LINE ( 'NONE', #5693, #4590 ) ; +#8507 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#8508 = ADVANCED_FACE ( 'NONE', ( #6493 ), #16396, .T. ) ; +#8509 = AXIS2_PLACEMENT_3D ( 'NONE', #15420, #9572, #6596 ) ; +#8510 = DIRECTION ( 'NONE', ( -0.9685831611286310800, -0.2486898871648553800, 0.0000000000000000000 ) ) ; +#8511 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.6371527777777711300 ) ) ; +#8512 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.1805555555555448700 ) ) ; +#8513 = CARTESIAN_POINT ( 'NONE', ( -0.2659575542964067700, 0.3859962976670546800, 1.143750000000000000 ) ) ; +#8514 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.9687499999999960000 ) ) ; +#8515 = CARTESIAN_POINT ( 'NONE', ( -0.3953002468276895500, 0.2372148641431517400, 1.440511179676380300 ) ) ; +#8516 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#8517 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.1597222222222351400 ) ) ; +#8518 = EDGE_LOOP ( 'NONE', ( #16229, #4871, #16149, #755, #4356, #12073 ) ) ; +#8519 = PLANE ( 'NONE', #12412 ) ; +#8520 = CARTESIAN_POINT ( 'NONE', ( 1.569246278610583600E-016, -1.803141837253116900E-016, -1.174024639073221200 ) ) ; +#8521 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.5312499999999925600 ) ) ; +#8522 = ORIENTED_EDGE ( 'NONE', *, *, #10085, .T. ) ; +#8523 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.4305555555555474200 ) ) ; +#8524 = CYLINDRICAL_SURFACE ( 'NONE', #14195, 0.3125000000000008300 ) ; +#8525 = LINE ( 'NONE', #15996, #15431 ) ; +#8526 = ORIENTED_EDGE ( 'NONE', *, *, #9983, .T. ) ; +#8527 = ORIENTED_EDGE ( 'NONE', *, *, #1928, .F. ) ; +#8528 = FACE_OUTER_BOUND ( 'NONE', #6459, .T. ) ; +#8529 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.9999999999999958900 ) ) ; +#8530 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.06597222222221131600 ) ) ; +#8531 = EDGE_CURVE ( 'NONE', #735, #324, #9271, .T. ) ; +#8532 = CARTESIAN_POINT ( 'NONE', ( -0.08766582672940923000, -0.2686650201816584400, 0.09817873205039662200 ) ) ; +#8533 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8534 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.3749999999999909500 ) ) ; +#8535 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8536 = ORIENTED_EDGE ( 'NONE', *, *, #11175, .T. ) ; +#8537 = CARTESIAN_POINT ( 'NONE', ( 2.779067431402770900E-018, -1.684636359164813300E-017, 3.802149639073292500 ) ) ; +#8538 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.217013888888887100 ) ) ; +#8539 = ORIENTED_EDGE ( 'NONE', *, *, #3913, .F. ) ; +#8540 = ORIENTED_EDGE ( 'NONE', *, *, #17789, .F. ) ; +#8541 = LINE ( 'NONE', #13256, #9482 ) ; +#8542 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.381944444444443800 ) ) ; +#8543 = VERTEX_POINT ( 'NONE', #12816 ) ; +#8544 = EDGE_LOOP ( 'NONE', ( #4184, #3246, #7796, #3002 ) ) ; +#8545 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.222222222222220300 ) ) ; +#8546 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #13606, #4826, #15012, #5833, #4757, #7804, #12252, #14615, #15128 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7500000000000000000, 0.7537878787878787800, 0.7575757575757575700, 0.7613636363636363500, 0.7651515151515151400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#8547 = AXIS2_PLACEMENT_3D ( 'NONE', #6216, #14905, #12023 ) ; +#8548 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.541666666666667400 ) ) ; +#8549 = ADVANCED_FACE ( 'NONE', ( #7424 ), #48, .T. ) ; +#8550 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8551 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.09722222222221114900 ) ) ; +#8552 = DIRECTION ( 'NONE', ( -0.9992845593168618900, -0.03782022621435543500, 0.0000000000000000000 ) ) ; +#8553 = CARTESIAN_POINT ( 'NONE', ( -0.1718992724831313300, -0.2609729681782593800, 0.1823163490354290700 ) ) ; +#8554 = CARTESIAN_POINT ( 'NONE', ( 0.4219140922835721300, -0.1858000959230524700, 1.440511179676385900 ) ) ; +#8555 = ORIENTED_EDGE ( 'NONE', *, *, #3436, .T. ) ; +#8556 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.223958333333331300 ) ) ; +#8557 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.281249999999998200 ) ) ; +#8558 = ORIENTED_EDGE ( 'NONE', *, *, #15472, .T. ) ; +#8559 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8560 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.7847222222222167700 ) ) ; +#8561 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, 0.1302083333333463000 ) ) ; +#8562 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#8563 = EDGE_CURVE ( 'NONE', #12145, #4882, #5093, .T. ) ; +#8564 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.274305555555553600 ) ) ; +#8565 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#8566 = ORIENTED_EDGE ( 'NONE', *, *, #17587, .T. ) ; +#8567 = LINE ( 'NONE', #17721, #11343 ) ; +#8568 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.6249999999999934500 ) ) ; +#8569 = ORIENTED_EDGE ( 'NONE', *, *, #12795, .F. ) ; +#8570 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #8463, #9769, #11378, #9823, #18650, #17169, #14331, #11435, #15677 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1590909090909090600, 0.1628787878787878500, 0.1666666666666666300, 0.1704545454545454100, 0.1742424242424243100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#8571 = EDGE_CURVE ( 'NONE', #98, #8074, #1192, .T. ) ; +#8572 = CARTESIAN_POINT ( 'NONE', ( -3.032612960979403800E-017, -1.569772566619568900E-017, -1.174024639073248900 ) ) ; +#8573 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8574 = AXIS2_PLACEMENT_3D ( 'NONE', #17549, #1388, #2864 ) ; +#8575 = VERTEX_POINT ( 'NONE', #7164 ) ; +#8576 = ORIENTED_EDGE ( 'NONE', *, *, #127, .F. ) ; +#8577 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.5989583333333264900 ) ) ; +#8578 = VERTEX_POINT ( 'NONE', #15895 ) ; +#8579 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.1423611111111001700 ) ) ; +#8580 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.1979166666666563300 ) ) ; +#8581 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.461805555555555400 ) ) ; +#8582 = VECTOR ( 'NONE', #1053, 39.37007874015748100 ) ; +#8583 = PLANE ( 'NONE', #8351 ) ; +#8584 = ORIENTED_EDGE ( 'NONE', *, *, #18581, .F. ) ; +#8585 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#8586 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.576388888888889500 ) ) ; +#8587 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8588 = EDGE_LOOP ( 'NONE', ( #18460, #16803, #15181, #17049, #5428, #10356 ) ) ; +#8589 = CARTESIAN_POINT ( 'NONE', ( -0.4492873804855411200, 0.1336605598125434900, 1.143750000000000000 ) ) ; +#8590 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.5347222222222146600 ) ) ; +#8591 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.2881944444444352600 ) ) ; +#8592 = VERTEX_POINT ( 'NONE', #2513 ) ; +#8593 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.8645833333333281500 ) ) ; +#8594 = EDGE_CURVE ( 'NONE', #14130, #9767, #7891, .T. ) ; +#8595 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.05555555555554442900 ) ) ; +#8596 = EDGE_CURVE ( 'NONE', #15189, #8859, #4182, .T. ) ; +#8597 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8598 = VECTOR ( 'NONE', #17429, 39.37007874015748100 ) ; +#8599 = CARTESIAN_POINT ( 'NONE', ( 0.3624522803384160900, -0.2848886122504168400, 1.440511179676384800 ) ) ; +#8600 = ORIENTED_EDGE ( 'NONE', *, *, #15849, .T. ) ; +#8601 = AXIS2_PLACEMENT_3D ( 'NONE', #4683, #185, #8883 ) ; +#8602 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.03472222222221065700 ) ) ; +#8603 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.026041666666663200 ) ) ; +#8604 = ORIENTED_EDGE ( 'NONE', *, *, #4320, .F. ) ; +#8605 = FACE_OUTER_BOUND ( 'NONE', #3424, .T. ) ; +#8606 = ADVANCED_FACE ( 'NONE', ( #11780 ), #12953, .F. ) ; +#8607 = ORIENTED_EDGE ( 'NONE', *, *, #11680, .F. ) ; +#8608 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#8609 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.354166666666665900 ) ) ; +#8610 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.576388888888889700 ) ) ; +#8611 = ORIENTED_EDGE ( 'NONE', *, *, #9084, .F. ) ; +#8612 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.04861111111109985000 ) ) ; +#8613 = ORIENTED_EDGE ( 'NONE', *, *, #6585, .F. ) ; +#8614 = PERSON_AND_ORGANIZATION ( #18342, #15970 ) ; +#8615 = CARTESIAN_POINT ( 'NONE', ( -2.633081135512135400E-016, 2.659477064544373300E-017, -1.174024639073280000 ) ) ; +#8616 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8617 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8618 = ORIENTED_EDGE ( 'NONE', *, *, #16104, .T. ) ; +#8619 = EDGE_CURVE ( 'NONE', #2507, #15821, #5319, .T. ) ; +#8620 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.053819444444441100 ) ) ; +#8621 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.395833333333332400 ) ) ; +#8622 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8623 = CARTESIAN_POINT ( 'NONE', ( -0.4592360163321193000, -0.04044079890273683000, 1.187613820323598600 ) ) ; +#8624 = AXIS2_PLACEMENT_3D ( 'NONE', #170, #5946, #2818 ) ; +#8625 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, 0.1024305555555682200 ) ) ; +#8626 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#8627 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.208333333333330800 ) ) ; +#8628 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.187499999999997600 ) ) ; +#8629 = CARTESIAN_POINT ( 'NONE', ( 0.2010077485120424800, -0.2249028836607964400, 0.1517233338602387600 ) ) ; +#8631 = EDGE_CURVE ( 'NONE', #9993, #8086, #6710, .T. ) ; +#8630 = CIRCLE ( 'NONE', #13790, 0.4687499999999995600 ) ; +#8632 = AXIS2_PLACEMENT_3D ( 'NONE', #5720, #2853, #8711 ) ; +#8633 = ADVANCED_FACE ( 'NONE', ( #11109 ), #18472, .T. ) ; +#8634 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.6979166666666606300 ) ) ; +#8635 = AXIS2_PLACEMENT_3D ( 'NONE', #1371, #13346, #5985 ) ; +#8636 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676399600 ) ) ; +#8637 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8638 = LINE ( 'NONE', #15734, #11176 ) ; +#8639 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, 0.1562500000000128800 ) ) ; +#8640 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.6128472222222154400 ) ) ; +#8641 = LINE ( 'NONE', #8507, #13490 ) ; +#8642 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, 0.05208333333334563100 ) ) ; +#8643 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.1354166666666558600 ) ) ; +#8644 = ADVANCED_FACE ( 'NONE', ( #8108 ), #9716, .T. ) ; +#8645 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#8646 = EDGE_CURVE ( 'NONE', #12487, #5564, #7408, .T. ) ; +#8647 = DIRECTION ( 'NONE', ( -0.8938997675281747900, -0.4482668910516087200, 0.0000000000000000000 ) ) ; +#8648 = CARTESIAN_POINT ( 'NONE', ( 0.3893737859852275900, -0.2609834291683966200, 1.484375000000000200 ) ) ; +#8649 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.2222222222222356400 ) ) ; +#8650 = CARTESIAN_POINT ( 'NONE', ( -0.2741214469999670400, 0.04840514621342724400, 0.08774319450703560500 ) ) ; +#8651 = AXIS2_PLACEMENT_3D ( 'NONE', #3463, #3646, #18147 ) ; +#8652 = CARTESIAN_POINT ( 'NONE', ( -0.2615678826637244400, 0.3796253675287022400, 1.187613820323613700 ) ) ; +#8653 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.3888888888888804000 ) ) ; +#8654 = CIRCLE ( 'NONE', #9617, 0.4687499999999996100 ) ; +#8655 = ORIENTED_EDGE ( 'NONE', *, *, #8737, .F. ) ; +#8656 = LINE ( 'NONE', #14921, #14855 ) ; +#8657 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.7777777777777720200 ) ) ; +#8658 = VERTEX_POINT ( 'NONE', #5524 ) ; +#8659 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.05555555555556765400 ) ) ; +#8660 = LINE ( 'NONE', #1246, #2215 ) ; +#8661 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.8055555555555499200 ) ) ; +#8662 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.8124999999999944500 ) ) ; +#8663 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#8664 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.9288194444444400900 ) ) ; +#8665 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8666 = FACE_OUTER_BOUND ( 'NONE', #291, .T. ) ; +#8667 = ORIENTED_EDGE ( 'NONE', *, *, #19060, .T. ) ; +#8668 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.072916666666663600 ) ) ; +#8669 = EDGE_CURVE ( 'NONE', #17544, #14503, #8324, .T. ) ; +#8670 = CIRCLE ( 'NONE', #4188, 0.4687499999999995000 ) ; +#8671 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.500000000000000400 ) ) ; +#8672 = EDGE_LOOP ( 'NONE', ( #11694, #17896, #2325, #15857 ) ) ; +#8673 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.01041666666665486000 ) ) ; +#8674 = CIRCLE ( 'NONE', #7595, 0.3125000000000009400 ) ; +#8675 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8676 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8677 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8678 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.102430555555552500 ) ) ; +#8679 = EDGE_CURVE ( 'NONE', #11670, #10602, #11552, .T. ) ; +#8680 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.465277777777777500 ) ) ; +#8681 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8682 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8683 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, 0.09548611111112363700 ) ) ; +#8684 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8685 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.131944444444441500 ) ) ; +#8686 = DIRECTION ( 'NONE', ( 0.06794052811688687500, -0.1598054262102608100, -0.9848077530122085800 ) ) ; +#8687 = AXIS2_PLACEMENT_3D ( 'NONE', #9687, #12583, #15587 ) ; +#8688 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8689 = VERTEX_POINT ( 'NONE', #9926 ) ; +#8690 = FACE_OUTER_BOUND ( 'NONE', #14657, .T. ) ; +#8691 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.7118055555555495900 ) ) ; +#8692 = LINE ( 'NONE', #12429, #4763 ) ; +#8693 = FACE_OUTER_BOUND ( 'NONE', #1699, .T. ) ; +#8694 = VERTEX_POINT ( 'NONE', #11405 ) ; +#8695 = ORIENTED_EDGE ( 'NONE', *, *, #3486, .F. ) ; +#8696 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8697 = VECTOR ( 'NONE', #13977, 39.37007874015748900 ) ; +#8698 = DIRECTION ( 'NONE', ( -0.3090169943749447300, -0.9510565162951544200, 0.0000000000000000000 ) ) ; +#8699 = ADVANCED_FACE ( 'NONE', ( #7645 ), #15952, .F. ) ; +#8700 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.4982638888888811800 ) ) ; +#8701 = VERTEX_POINT ( 'NONE', #15703 ) ; +#8702 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.2430555555555453700 ) ) ; +#8703 = DIRECTION ( 'NONE', ( 0.3912539079287195000, -0.9202827715058589100, 0.0000000000000000000 ) ) ; +#8704 = EDGE_CURVE ( 'NONE', #7344, #4720, #3724, .T. ) ; +#8705 = CARTESIAN_POINT ( 'NONE', ( -0.4120995984523176900, 0.2066569569792524900, 1.440511179676388500 ) ) ; +#8706 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.524305555555555400 ) ) ; +#8707 = EDGE_CURVE ( 'NONE', #17594, #1398, #5767, .T. ) ; +#8708 = CIRCLE ( 'NONE', #12182, 0.4687499999999996100 ) ; +#8709 = CARTESIAN_POINT ( 'NONE', ( -0.2321251145655865700, -0.3983103163368976200, 1.484375000000000200 ) ) ; +#8710 = CONICAL_SURFACE ( 'NONE', #15202, 0.4610132068742565100, 0.1745329251994280900 ) ; +#8711 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#8712 = VECTOR ( 'NONE', #3012, 39.37007874015748100 ) ; +#8713 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.559027777777778800 ) ) ; +#8714 = ORIENTED_EDGE ( 'NONE', *, *, #1091, .F. ) ; +#8715 = AXIS2_PLACEMENT_3D ( 'NONE', #17720, #13417, #15015 ) ; +#8716 = VECTOR ( 'NONE', #13170, 39.37007874015748100 ) ; +#8717 = FACE_OUTER_BOUND ( 'NONE', #2736, .T. ) ; +#8718 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.2708333333333239900 ) ) ; +#8719 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.8958333333333283700 ) ) ; +#8720 = VERTEX_POINT ( 'NONE', #5640 ) ; +#8721 = VERTEX_POINT ( 'NONE', #13134 ) ; +#8722 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8723 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.020833333333329700 ) ) ; +#8724 = ORIENTED_EDGE ( 'NONE', *, *, #4352, .T. ) ; +#8725 = EDGE_LOOP ( 'NONE', ( #15279, #18874, #13644, #13912 ) ) ; +#8726 = VECTOR ( 'NONE', #14158, 39.37007874015748100 ) ; +#8728 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.9253472222222179900 ) ) ; +#8727 = FACE_BOUND ( 'NONE', #17701, .T. ) ; +#8729 = ORIENTED_EDGE ( 'NONE', *, *, #4968, .T. ) ; +#8730 = VERTEX_POINT ( 'NONE', #17194 ) ; +#8731 = EDGE_CURVE ( 'NONE', #5945, #4587, #10640, .T. ) ; +#8732 = CIRCLE ( 'NONE', #11561, 0.4687499999999995600 ) ; +#8733 = EDGE_LOOP ( 'NONE', ( #11265, #8742, #541, #2923, #9989, #17931 ) ) ; +#8734 = EDGE_CURVE ( 'NONE', #11528, #16695, #3026, .T. ) ; +#8735 = CARTESIAN_POINT ( 'NONE', ( -0.3624522803384139800, 0.2848886122504193900, 1.440511179676396300 ) ) ; +#8736 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.145833333333330800 ) ) ; +#8737 = EDGE_CURVE ( 'NONE', #6632, #10792, #15465, .T. ) ; +#8738 = AXIS2_PLACEMENT_3D ( 'NONE', #10611, #1779, #6150 ) ; +#8739 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.197916666666664700 ) ) ; +#8740 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.3645833333333244900 ) ) ; +#8741 = AXIS2_PLACEMENT_3D ( 'NONE', #9304, #3626, #2162 ) ; +#8742 = ORIENTED_EDGE ( 'NONE', *, *, #845, .T. ) ; +#8743 = ORIENTED_EDGE ( 'NONE', *, *, #10541, .F. ) ; +#8744 = PLANE ( 'NONE', #2842 ) ; +#8745 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -3.585550491684345600E-016, 0.1874999999999998300 ) ) ; +#8746 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, 0.05902777777778966900 ) ) ; +#8747 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.050347222222218800 ) ) ; +#8748 = ORIENTED_EDGE ( 'NONE', *, *, #2329, .T. ) ; +#8749 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.215277777777775500 ) ) ; +#8750 = VECTOR ( 'NONE', #11726, 39.37007874015748100 ) ; +#8751 = CARTESIAN_POINT ( 'NONE', ( 0.2615678826637272100, -0.3796253675287001900, 1.143750000000000000 ) ) ; +#8752 = CARTESIAN_POINT ( 'NONE', ( -0.3293220670067034100, 0.3335734876985793600, 1.484375000000000200 ) ) ; +#8753 = LINE ( 'NONE', #15289, #215 ) ; +#8754 = EDGE_LOOP ( 'NONE', ( #17257, #756, #16634, #5274 ) ) ; +#8755 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, 0.08854166666667931400 ) ) ; +#8756 = ORIENTED_EDGE ( 'NONE', *, *, #10242, .F. ) ; +#8757 = DIRECTION ( 'NONE', ( 0.1697056182357960500, 0.03679256373578103400, -0.9848077530122082400 ) ) ; +#8758 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.173611111111108500 ) ) ; +#8759 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#8760 = CARTESIAN_POINT ( 'NONE', ( -0.2561392056363536700, -0.1502151398321893700, 0.1387979588445495100 ) ) ; +#8761 = CIRCLE ( 'NONE', #9091, 0.4610132068742565100 ) ; +#8762 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #13934, #5028, #486, #15328, #4959, #10852 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 0.01976857350862033400, 0.02162508964135734200, 0.02348160577409434700 ), + .UNSPECIFIED. ) ; +#8763 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.4930555555555478600 ) ) ; +#8764 = EDGE_CURVE ( 'NONE', #7441, #17727, #14554, .T. ) ; +#8765 = ORIENTED_EDGE ( 'NONE', *, *, #10399, .F. ) ; +#8766 = CARTESIAN_POINT ( 'NONE', ( 0.06919666627599171900, -0.4557905201830936300, 1.143750000000000000 ) ) ; +#8767 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, 0.1701388888889020500 ) ) ; +#8768 = ORIENTED_EDGE ( 'NONE', *, *, #9054, .T. ) ; +#8769 = ORIENTED_EDGE ( 'NONE', *, *, #8204, .F. ) ; +#8770 = AXIS2_PLACEMENT_3D ( 'NONE', #18214, #9377, #12142 ) ; +#8771 = VECTOR ( 'NONE', #8032, 39.37007874015748900 ) ; +#8772 = VECTOR ( 'NONE', #5989, 39.37007874015748900 ) ; +#8773 = ORIENTED_EDGE ( 'NONE', *, *, #14257, .F. ) ; +#8774 = CARTESIAN_POINT ( 'NONE', ( -0.1616077992682536900, -0.4400081984788842800, 1.143750000000000000 ) ) ; +#8775 = ORIENTED_EDGE ( 'NONE', *, *, #18798, .F. ) ; +#8776 = LINE ( 'NONE', #2737, #5520 ) ; +#8777 = CARTESIAN_POINT ( 'NONE', ( -0.4624991113355810300, 0.07629635976766756300, 1.484375000000000200 ) ) ; +#8778 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.3194444444444350400 ) ) ; +#8779 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8780 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8781 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.277777777777775900 ) ) ; +#8782 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#8783 = DIRECTION ( 'NONE', ( 0.8234587683563876500, -0.5673761158323297200, -0.0000000000000000000 ) ) ; +#8784 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.291666666666665200 ) ) ; +#8785 = ORIENTED_EDGE ( 'NONE', *, *, #9955, .T. ) ; +#8786 = VERTEX_POINT ( 'NONE', #5829 ) ; +#8787 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.2777777777777683000 ) ) ; +#8788 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#8789 = VERTEX_POINT ( 'NONE', #11593 ) ; +#8790 = VECTOR ( 'NONE', #2509, 39.37007874015748100 ) ; +#8791 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.7048611111111046100 ) ) ; +#8792 = VERTEX_POINT ( 'NONE', #8890 ) ; +#8793 = EDGE_CURVE ( 'NONE', #3921, #675, #3482, .T. ) ; +#8794 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #3078, #4540, #1519, #4479, #16661, #6289, #10732, #13574, #18216 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6742424242424242000, 0.6780303030303029800, 0.6818181818181817700, 0.6856060606060605500, 0.6893939393939394500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#8795 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.302083333333331900 ) ) ; +#8796 = CARTESIAN_POINT ( 'NONE', ( -0.1039342647883889900, -0.2286686588412101500, 1.526364414749281900 ) ) ; +#8797 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.9149305555555511400 ) ) ; +#8798 = ADVANCED_FACE ( 'NONE', ( #1873 ), #16207, .F. ) ; +#8799 = ORIENTED_EDGE ( 'NONE', *, *, #9329, .F. ) ; +#8800 = ORIENTED_EDGE ( 'NONE', *, *, #9854, .F. ) ; +#8801 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.027777777777774100 ) ) ; +#8802 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.059027777777774600 ) ) ; +#8803 = VERTEX_POINT ( 'NONE', #14737 ) ; +#8804 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.281249999999998900 ) ) ; +#8805 = CYLINDRICAL_SURFACE ( 'NONE', #16514, 0.4610132068742565100 ) ; +#8806 = EDGE_LOOP ( 'NONE', ( #1654, #12922, #13317, #9267 ) ) ; +#8807 = CARTESIAN_POINT ( 'NONE', ( -0.4505462270817873200, -0.09767944602040194700, 1.143750000000000000 ) ) ; +#8808 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8809 = ORIENTED_EDGE ( 'NONE', *, *, #16242, .F. ) ; +#8810 = DIRECTION ( 'NONE', ( 0.1055480449047629900, -0.1378887226129315300, -0.9848077530122091300 ) ) ; +#8811 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.078124999999996700 ) ) ; +#8812 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.145833333333330400 ) ) ; +#8813 = CARTESIAN_POINT ( 'NONE', ( 0.02908595015892432100, -0.2772507132453747000, -1.556917725157686000 ) ) ; +#8814 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#8815 = CARTESIAN_POINT ( 'NONE', ( 0.4592360163321199100, -0.04044079890273023800, 1.187613820323614800 ) ) ; +#8816 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.124999999999997100 ) ) ; +#8817 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#8818 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.9861111111111069400 ) ) ; +#8819 = DIRECTION ( 'NONE', ( -0.1664391196603311800, 0.04951473572319210100, -0.9848077530122091300 ) ) ; +#8820 = ORIENTED_EDGE ( 'NONE', *, *, #2805, .F. ) ; +#8821 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.5243055555555481400 ) ) ; +#8822 = ORIENTED_EDGE ( 'NONE', *, *, #1565, .T. ) ; +#8823 = ADVANCED_FACE ( 'NONE', ( #3265 ), #14305, .T. ) ; +#8824 = LINE ( 'NONE', #6334, #5581 ) ; +#8825 = VERTEX_POINT ( 'NONE', #2890 ) ; +#8826 = CARTESIAN_POINT ( 'NONE', ( -0.04632776727398444500, 0.4586795339797642400, 1.588758826628429600 ) ) ; +#8827 = EDGE_CURVE ( 'NONE', #11961, #13114, #6249, .T. ) ; +#8828 = EDGE_LOOP ( 'NONE', ( #18290, #16502, #14264, #4922, #2496, #9005 ) ) ; +#8829 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.4131944444444361500 ) ) ; +#8830 = AXIS2_PLACEMENT_3D ( 'NONE', #227, #13365, #3760 ) ; +#8831 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.01736111111112322400 ) ) ; +#8832 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.06250000000001251800 ) ) ; +#8833 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.06597222222223482500 ) ) ; +#8834 = CARTESIAN_POINT ( 'NONE', ( 0.1071828082284863300, -0.2706704109640472000, 0.1228423488798932700 ) ) ; +#8835 = EDGE_LOOP ( 'NONE', ( #11571, #16806, #13225, #4656 ) ) ; +#8836 = PLANE ( 'NONE', #2062 ) ; +#8837 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.288194444444442900 ) ) ; +#8838 = VERTEX_POINT ( 'NONE', #19001 ) ; +#8839 = CARTESIAN_POINT ( 'NONE', ( -0.4492896982220432900, -0.1336612493265903500, 1.143750000000000000 ) ) ; +#8840 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#8841 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.479166666666667000 ) ) ; +#8842 = ORIENTED_EDGE ( 'NONE', *, *, #2579, .F. ) ; +#8843 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.09374999999998913400 ) ) ; +#8844 = EDGE_CURVE ( 'NONE', #13570, #15445, #8921, .T. ) ; +#8845 = VECTOR ( 'NONE', #16600, 39.37007874015748100 ) ; +#8846 = ORIENTED_EDGE ( 'NONE', *, *, #5650, .T. ) ; +#8847 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.8368055555555500300 ) ) ; +#8848 = EDGE_CURVE ( 'NONE', #10008, #17779, #14762, .T. ) ; +#8849 = EDGE_CURVE ( 'NONE', #11063, #12430, #2796, .T. ) ; +#8850 = VERTEX_POINT ( 'NONE', #16080 ) ; +#8851 = AXIS2_PLACEMENT_3D ( 'NONE', #4965, #670, #16837 ) ; +#8852 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8853 = AXIS2_PLACEMENT_3D ( 'NONE', #5612, #7121, #14522 ) ; +#8854 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, -5.463695987328526400E-016, 1.531249999999999800 ) ) ; +#8855 = PERSON_AND_ORGANIZATION_ROLE ( 'creator' ) ; +#8856 = LINE ( 'NONE', #14874, #14613 ) ; +#8857 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.005208333333329700 ) ) ; +#8858 = CARTESIAN_POINT ( 'NONE', ( 0.3293220670066999100, 0.3335734876985855200, 1.484375000000000200 ) ) ; +#8859 = VERTEX_POINT ( 'NONE', #7572 ) ; +#8860 = CARTESIAN_POINT ( 'NONE', ( -0.4219140922835695200, -0.1858000959230583500, 1.187613820323600200 ) ) ; +#8861 = DIRECTION ( 'NONE', ( 0.6564875946873428600, -0.7543368200092230900, -0.0000000000000000000 ) ) ; +#8862 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8863 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.180555555555553400 ) ) ; +#8864 = LINE ( 'NONE', #581, #7950 ) ; +#8865 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.361111111111110500 ) ) ; +#8866 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.01388888888887715400 ) ) ; +#8867 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8868 = DIRECTION ( 'NONE', ( 0.5035107695491790600, -0.8639889495520145500, 0.0000000000000000000 ) ) ; +#8869 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.546875000000000700 ) ) ; +#8870 = PLANE ( 'NONE', #4071 ) ; +#8871 = EDGE_CURVE ( 'NONE', #16484, #12985, #10180, .T. ) ; +#8872 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.9288194444444398700 ) ) ; +#8873 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.138888888888886000 ) ) ; +#8874 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#8875 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8876 = FACE_BOUND ( 'NONE', #1586, .T. ) ; +#8877 = AXIS2_PLACEMENT_3D ( 'NONE', #18452, #18386, #18332 ) ; +#8878 = ORIENTED_EDGE ( 'NONE', *, *, #3942, .F. ) ; +#8879 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#8880 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#8881 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.9409722222222176600 ) ) ; +#8882 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.204861111111108900 ) ) ; +#8883 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8884 = EDGE_CURVE ( 'NONE', #2752, #9215, #18014, .T. ) ; +#8885 = FACE_OUTER_BOUND ( 'NONE', #1078, .T. ) ; +#8886 = AXIS2_PLACEMENT_3D ( 'NONE', #11649, #16015, #14415 ) ; +#8887 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.5277777777777704600 ) ) ; +#8888 = CYLINDRICAL_SURFACE ( 'NONE', #17479, 0.4610132068742565100 ) ; +#8889 = CARTESIAN_POINT ( 'NONE', ( -0.4606833792705947700, -0.01743562377178980600, 1.187613820323598600 ) ) ; +#8890 = CARTESIAN_POINT ( 'NONE', ( 0.07035757220611137100, 0.4634372746620877300, 1.143750000000000000 ) ) ; +#8891 = CARTESIAN_POINT ( 'NONE', ( 0.06919666627598217200, 0.4557905201830951300, 1.187613820323599100 ) ) ; +#8892 = VECTOR ( 'NONE', #18586, 39.37007874015748900 ) ; +#8893 = VERTEX_POINT ( 'NONE', #1041 ) ; +#8894 = CARTESIAN_POINT ( 'NONE', ( -0.1967074160183329400, 0.2399640213714020200, 0.1743760416010749500 ) ) ; +#8895 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.1840277777777672200 ) ) ; +#8896 = LINE ( 'NONE', #19125, #598 ) ; +#8897 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.006944444444456610500 ) ) ; +#8898 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.04166666666667901600 ) ) ; +#8899 = CARTESIAN_POINT ( 'NONE', ( -0.2828218237349135500, -0.01886719280637854200, 0.1017564316222972100 ) ) ; +#8900 = VERTEX_POINT ( 'NONE', #17256 ) ; +#8901 = CARTESIAN_POINT ( 'NONE', ( 0.4420471124163791700, 0.1559516364272610600, 1.484375000000000200 ) ) ; +#8902 = EDGE_CURVE ( 'NONE', #6398, #14948, #2547, .T. ) ; +#8903 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.4965277777777699600 ) ) ; +#8904 = CARTESIAN_POINT ( 'NONE', ( -0.3293220670067028600, -0.3335734876985835300, 1.143750000000000000 ) ) ; +#8905 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.319444444444442900 ) ) ; +#8906 = FACE_OUTER_BOUND ( 'NONE', #5296, .T. ) ; +#8907 = DIRECTION ( 'NONE', ( -0.3447650836343011400, -0.9386889991400949600, 0.0000000000000000000 ) ) ; +#8908 = PLANE ( 'NONE', #8632 ) ; +#8909 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.486111111111111400 ) ) ; +#8910 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.05555555555554442900 ) ) ; +#8911 = CARTESIAN_POINT ( 'NONE', ( -0.04453466633918493800, 0.3001842036731036100, 0.1553936703573857700 ) ) ; +#8912 = VECTOR ( 'NONE', #11700, 39.37007874015748100 ) ; +#8913 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.4930555555555474800 ) ) ; +#8914 = AXIS2_PLACEMENT_3D ( 'NONE', #13050, #8550, #12991 ) ; +#8915 = ADVANCED_FACE ( 'NONE', ( #1420 ), #14114, .F. ) ; +#8916 = CIRCLE ( 'NONE', #16404, 0.4687499999999995000 ) ; +#8917 = LINE ( 'NONE', #2230, #13751 ) ; +#8918 = VERTEX_POINT ( 'NONE', #6827 ) ; +#8919 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.454861111111110700 ) ) ; +#8920 = ORIENTED_EDGE ( 'NONE', *, *, #3065, .T. ) ; +#8921 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #14559, #5701, #7281, #2967, #70, #16016, #17520, #11714, #11650 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.09848484848484848100, 0.1022727272727272800, 0.1060606060606060600, 0.1098484848484848500, 0.1136363636363636300 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#8922 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#8923 = FACE_OUTER_BOUND ( 'NONE', #12468, .T. ) ; +#8924 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.6857638888888827300 ) ) ; +#8925 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676385900 ) ) ; +#8926 = CARTESIAN_POINT ( 'NONE', ( 0.4581073617749789600, -0.09931871720661822300, 1.484375000000000200 ) ) ; +#8927 = CARTESIAN_POINT ( 'NONE', ( 0.04632776727397798500, 0.4586795339797648000, 1.588758826628429200 ) ) ; +#8928 = CARTESIAN_POINT ( 'NONE', ( -0.4505462270817880400, 0.09767944602039871400, 1.440511179676387000 ) ) ; +#8929 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.017361111111107800 ) ) ; +#8930 = EDGE_CURVE ( 'NONE', #3219, #12963, #13633, .T. ) ; +#8931 = ORIENTED_EDGE ( 'NONE', *, *, #5159, .F. ) ; +#8932 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.170138888888886800 ) ) ; +#8933 = VECTOR ( 'NONE', #11170, 39.37007874015748900 ) ; +#8934 = DIRECTION ( 'NONE', ( -0.3447650836343074700, 0.9386889991400926300, 0.0000000000000000000 ) ) ; +#8935 = TOROIDAL_SURFACE ( 'NONE', #9789, 0.4375000000000001100, 0.03124999999999987200 ) ; +#8936 = CARTESIAN_POINT ( 'NONE', ( 0.4684146371797789400, -0.01772823103797234500, 1.484375000000000200 ) ) ; +#8937 = FACE_OUTER_BOUND ( 'NONE', #16915, .T. ) ; +#8938 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.4791666666666586900 ) ) ; +#8939 = ORIENTED_EDGE ( 'NONE', *, *, #14846, .F. ) ; +#8940 = CARTESIAN_POINT ( 'NONE', ( -0.1776760863113863700, -0.1860937983343743400, 1.254060627199044400 ) ) ; +#8941 = LINE ( 'NONE', #9058, #2267 ) ; +#8942 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.7482638888888830700 ) ) ; +#8944 = EDGE_CURVE ( 'NONE', #4271, #7441, #9257, .T. ) ; +#8943 = FACE_OUTER_BOUND ( 'NONE', #15449, .T. ) ; +#8945 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.8680555555555507000 ) ) ; +#8946 = ORIENTED_EDGE ( 'NONE', *, *, #16732, .F. ) ; +#8947 = DIRECTION ( 'NONE', ( -0.7071067811865481300, 8.659560562354940300E-017, 0.7071067811865469100 ) ) ; +#8948 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8949 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.9305555555555509200 ) ) ; +#8950 = AXIS2_PLACEMENT_3D ( 'NONE', #10738, #7847, #4680 ) ; +#8951 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#8952 = VERTEX_POINT ( 'NONE', #5450 ) ; +#8953 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.3263888888888799000 ) ) ; +#8954 = VERTEX_POINT ( 'NONE', #12879 ) ; +#8955 = VERTEX_POINT ( 'NONE', #17322 ) ; +#8956 = ORIENTED_EDGE ( 'NONE', *, *, #5023, .F. ) ; +#8957 = LINE ( 'NONE', #17571, #2966 ) ; +#8958 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.3385416666666576900 ) ) ; +#8959 = FACE_BOUND ( 'NONE', #4559, .T. ) ; +#8960 = LINE ( 'NONE', #4424, #662 ) ; +#8961 = EDGE_LOOP ( 'NONE', ( #16409, #12788, #5755, #10653 ) ) ; +#8962 = DIRECTION ( 'NONE', ( -0.6078269655510707400, -0.7940695057417690400, -0.0000000000000000000 ) ) ; +#8963 = VECTOR ( 'NONE', #18090, 39.37007874015748900 ) ; +#8964 = CARTESIAN_POINT ( 'NONE', ( -0.2849188901020695600, 0.3722200808164498100, 1.484375000000000200 ) ) ; +#8965 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.03124999999998836300 ) ) ; +#8966 = DIRECTION ( 'NONE', ( 0.9202827715058644600, -0.3912539079287068500, 0.0000000000000000000 ) ) ; +#8967 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.006944444444456610500 ) ) ; +#8968 = CARTESIAN_POINT ( 'NONE', ( -0.1233632806197666000, -0.2605264239216615300, 0.1136607791294835800 ) ) ; +#8969 = EDGE_CURVE ( 'NONE', #17629, #1393, #960, .T. ) ; +#8970 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#8971 = CARTESIAN_POINT ( 'NONE', ( -0.1034502481550478400, 0.4492562999771345100, 1.440511179676385400 ) ) ; +#8972 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -1.326388888888887700 ) ) ; +#8973 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#8974 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.340277777777776300 ) ) ; +#8975 = ORIENTED_EDGE ( 'NONE', *, *, #1827, .F. ) ; +#8976 = EDGE_CURVE ( 'NONE', #1856, #8694, #12249, .T. ) ; +#8977 = ORIENTED_EDGE ( 'NONE', *, *, #17186, .F. ) ; +#8978 = DIRECTION ( 'NONE', ( 1.000000000000000000, -4.440892098500625500E-014, 0.0000000000000000000 ) ) ; +#8979 = CARTESIAN_POINT ( 'NONE', ( 0.1622681766990122000, -0.2237736071879158100, -1.556917725157686700 ) ) ; +#8980 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.253472222222220800 ) ) ; +#8981 = AXIS2_PLACEMENT_3D ( 'NONE', #16008, #1282, #11584 ) ; +#8982 = ORIENTED_EDGE ( 'NONE', *, *, #18105, .F. ) ; +#8983 = ORIENTED_EDGE ( 'NONE', *, *, #2742, .F. ) ; +#8984 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.2604166666666571400 ) ) ; +#8985 = FACE_OUTER_BOUND ( 'NONE', #764, .T. ) ; +#8986 = FACE_OUTER_BOUND ( 'NONE', #12992, .T. ) ; +#8987 = ORIENTED_EDGE ( 'NONE', *, *, #8499, .F. ) ; +#8988 = ORIENTED_EDGE ( 'NONE', *, *, #5027, .T. ) ; +#8989 = CARTESIAN_POINT ( 'NONE', ( -0.1297467345612511900, 0.2751337745666636000, 0.1587410768109789600 ) ) ; +#8990 = LINE ( 'NONE', #8427, #7597 ) ; +#8991 = ORIENTED_EDGE ( 'NONE', *, *, #17556, .T. ) ; +#8992 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.6319444444444375400 ) ) ; +#8993 = CARTESIAN_POINT ( 'NONE', ( 0.02041011989960534600, 0.2768913463765826900, 1.265525726069369300 ) ) ; +#8994 = ORIENTED_EDGE ( 'NONE', *, *, #16216, .F. ) ; +#8995 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.7170138888888830700 ) ) ; +#8996 = EDGE_CURVE ( 'NONE', #1615, #16922, #4856, .T. ) ; +#8997 = CARTESIAN_POINT ( 'NONE', ( 0.3685350091390558500, 0.2896696558821369400, 1.593375490995827300 ) ) ; +#8998 = DIRECTION ( 'NONE', ( 0.7862080194966656300, -0.6179619325485434800, 0.0000000000000000000 ) ) ; +#8999 = VERTEX_POINT ( 'NONE', #15574 ) ; +#9000 = CIRCLE ( 'NONE', #3345, 0.4687499999999996100 ) ; +#9001 = CIRCLE ( 'NONE', #9513, 0.4687499999999996100 ) ; +#9002 = EDGE_CURVE ( 'NONE', #16189, #9427, #17090, .T. ) ; +#9003 = PLANE ( 'NONE', #11342 ) ; +#9004 = PLANE ( 'NONE', #11580 ) ; +#9005 = ORIENTED_EDGE ( 'NONE', *, *, #8025, .T. ) ; +#9006 = EDGE_LOOP ( 'NONE', ( #17310, #7050, #15022, #8504 ) ) ; +#9007 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.7812499999999946700 ) ) ; +#9008 = VECTOR ( 'NONE', #13557, 39.37007874015748100 ) ; +#9009 = EDGE_CURVE ( 'NONE', #17023, #4720, #7868, .T. ) ; +#9010 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.246527777777776100 ) ) ; +#9011 = AXIS2_PLACEMENT_3D ( 'NONE', #6279, #9507, #672 ) ; +#9012 = CARTESIAN_POINT ( 'NONE', ( -0.01171874999999998800, 0.4686034927296605600, 1.587227003692501100 ) ) ; +#9013 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323599100 ) ) ; +#9014 = ORIENTED_EDGE ( 'NONE', *, *, #17700, .F. ) ; +#9015 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.7343749999999938900 ) ) ; +#9016 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.07986111111109996100 ) ) ; +#9017 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9018 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9019 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9020 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.041666666666663000 ) ) ; +#9021 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.211805555555553800 ) ) ; +#9022 = EDGE_LOOP ( 'NONE', ( #1571, #7443, #18284, #230 ) ) ; +#9023 = ORIENTED_EDGE ( 'NONE', *, *, #2662, .F. ) ; +#9024 = VECTOR ( 'NONE', #17835, 39.37007874015748100 ) ; +#9025 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.4340277777777697400 ) ) ; +#9026 = VERTEX_POINT ( 'NONE', #6767 ) ; +#9027 = EDGE_LOOP ( 'NONE', ( #19094, #5698, #4220, #7123 ) ) ; +#9028 = ADVANCED_FACE ( 'NONE', ( #16142 ), #17082, .F. ) ; +#9029 = EDGE_CURVE ( 'NONE', #14320, #11876, #31, .T. ) ; +#9030 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9031 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.2343749999999900400 ) ) ; +#9032 = DIRECTION ( 'NONE', ( -0.8306683619109879200, 0.5567675210715112800, 0.0000000000000000000 ) ) ; +#9033 = ORIENTED_EDGE ( 'NONE', *, *, #8284, .F. ) ; +#9034 = VERTEX_POINT ( 'NONE', #17385 ) ; +#9035 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.2256944444444344800 ) ) ; +#9036 = VERTEX_POINT ( 'NONE', #4245 ) ; +#9037 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.04513888888887728600 ) ) ; +#9038 = DIRECTION ( 'NONE', ( -0.8660254037844364900, 1.060575238724904300E-016, 0.5000000000000037700 ) ) ; +#9039 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.07291666666665537500 ) ) ; +#9040 = VECTOR ( 'NONE', #1883, 39.37007874015748100 ) ; +#9041 = ADVANCED_FACE ( 'NONE', ( #6941 ), #7280, .F. ) ; +#9042 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.6475694444444377600 ) ) ; +#9043 = ORIENTED_EDGE ( 'NONE', *, *, #16663, .F. ) ; +#9044 = DIRECTION ( 'NONE', ( -0.1309892141416666400, 0.1139978744783984900, 0.9848077530122089100 ) ) ; +#9045 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#9046 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.187499999999997300 ) ) ; +#9047 = CARTESIAN_POINT ( 'NONE', ( 3.802510588441624200E-017, 5.673149244717255100E-017, 3.802149639073353800 ) ) ; +#9048 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.361111111111110500 ) ) ; +#9049 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.2534722222222127700 ) ) ; +#9050 = CARTESIAN_POINT ( 'NONE', ( -0.3061992364484910100, 0.03963054582014818900, 0.1699860759854839600 ) ) ; +#9051 = ORIENTED_EDGE ( 'NONE', *, *, #7494, .F. ) ; +#9052 = ORIENTED_EDGE ( 'NONE', *, *, #16425, .T. ) ; +#9053 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.5104166666666586400 ) ) ; +#9054 = EDGE_CURVE ( 'NONE', #3722, #17560, #11324, .T. ) ; +#9055 = EDGE_LOOP ( 'NONE', ( #13879, #10374, #15514, #14527 ) ) ; +#9056 = VECTOR ( 'NONE', #14131, 39.37007874015748900 ) ; +#9057 = ORIENTED_EDGE ( 'NONE', *, *, #14145, .T. ) ; +#9058 = CARTESIAN_POINT ( 'NONE', ( -2.662179528553768000E-016, 6.130200797989377100E-017, 3.802149639073309800 ) ) ; +#9059 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.7413194444444385400 ) ) ; +#9060 = ORIENTED_EDGE ( 'NONE', *, *, #12149, .F. ) ; +#9061 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#9062 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#9063 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.5034722222222145500 ) ) ; +#9064 = DIRECTION ( 'NONE', ( -0.9151887321064284800, -0.4030255384283083500, 0.0000000000000000000 ) ) ; +#9065 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.9340277777777736800 ) ) ; +#9066 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.9895833333333297100 ) ) ; +#9067 = ORIENTED_EDGE ( 'NONE', *, *, #2276, .F. ) ; +#9068 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#9069 = FACE_OUTER_BOUND ( 'NONE', #12765, .T. ) ; +#9070 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.498263888888889100 ) ) ; +#9071 = CARTESIAN_POINT ( 'NONE', ( 0.02043555972313776400, -0.2768766586876180200, 1.265517246128202300 ) ) ; +#9072 = VERTEX_POINT ( 'NONE', #1353 ) ; +#9073 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.8281249999999947800 ) ) ; +#9074 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9075 = ORIENTED_EDGE ( 'NONE', *, *, #9612, .T. ) ; +#9076 = DIRECTION ( 'NONE', ( 0.6078269655510767400, 0.7940695057417643800, -0.0000000000000000000 ) ) ; +#9077 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9078 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.9756944444444403100 ) ) ; +#9079 = DIRECTION ( 'NONE', ( 0.1627655675043718200, -0.9866647708492382000, 0.0000000000000000000 ) ) ; +#9080 = VECTOR ( 'NONE', #12747, 39.37007874015748100 ) ; +#9081 = ORIENTED_EDGE ( 'NONE', *, *, #10242, .T. ) ; +#9082 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.3055555555555464200 ) ) ; +#9083 = ORIENTED_EDGE ( 'NONE', *, *, #6610, .F. ) ; +#9084 = EDGE_CURVE ( 'NONE', #13424, #18786, #13859, .T. ) ; +#9085 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9086 = EDGE_CURVE ( 'NONE', #8338, #12366, #12020, .T. ) ; +#9087 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.3072916666666574100 ) ) ; +#9088 = ORIENTED_EDGE ( 'NONE', *, *, #6610, .T. ) ; +#9089 = LOCAL_TIME ( 13, 36, 41.00000000000000000, #4231 ) ; +#9090 = VERTEX_POINT ( 'NONE', #4312 ) ; +#9091 = AXIS2_PLACEMENT_3D ( 'NONE', #15401, #5158, #6840 ) ; +#9092 = CARTESIAN_POINT ( 'NONE', ( 0.4505462270817866500, 0.09767944602040519500, 1.187613820323598600 ) ) ; +#9093 = FACE_OUTER_BOUND ( 'NONE', #15783, .T. ) ; +#9094 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.06249999999998847400 ) ) ; +#9095 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, 1.531250000000000000 ) ) ; +#9096 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, 0.05208333333334562400 ) ) ; +#9097 = CARTESIAN_POINT ( 'NONE', ( 0.2812702243566541600, -0.02181440239928591700, -1.552063108976679700 ) ) ; +#9098 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.5642361111111037200 ) ) ; +#9099 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.1527777777777673500 ) ) ; +#9100 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#9101 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.3958333333333247100 ) ) ; +#9102 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.208333333333330800 ) ) ; +#9103 = CARTESIAN_POINT ( 'NONE', ( -0.4418741004648784100, 0.1314551491986550900, 1.187613820323601700 ) ) ; +#9104 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.149305555555552900 ) ) ; +#9105 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.236111111111109200 ) ) ; +#9106 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.2361111111111013300 ) ) ; +#9107 = LINE ( 'NONE', #17982, #349 ) ; +#9108 = EDGE_CURVE ( 'NONE', #2265, #98, #6475, .T. ) ; +#9109 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.5347222222222144400 ) ) ; +#9110 = EDGE_CURVE ( 'NONE', #4518, #11979, #6234, .T. ) ; +#9111 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#9113 = EDGE_CURVE ( 'NONE', #7419, #4048, #4381, .T. ) ; +#9112 = LINE ( 'NONE', #18324, #4034 ) ; +#9114 = ADVANCED_FACE ( 'NONE', ( #5076 ), #2837, .F. ) ; +#9115 = AXIS2_PLACEMENT_3D ( 'NONE', #19075, #2718, #11665 ) ; +#9116 = AXIS2_PLACEMENT_3D ( 'NONE', #4114, #5510, #2570 ) ; +#9117 = CARTESIAN_POINT ( 'NONE', ( -0.1707770349587034200, 0.2181098477411385600, 0.08286399342893642500 ) ) ; +#9118 = CARTESIAN_POINT ( 'NONE', ( -0.02261626892213987300, -0.2779350752355201300, -1.555301611338584500 ) ) ; +#9119 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, -2.451990884535389300E-025, 1.525850221280107700 ) ) ; +#9120 = ORIENTED_EDGE ( 'NONE', *, *, #13128, .F. ) ; +#9121 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.1527777777777908400 ) ) ; +#9122 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.7638888888888834000 ) ) ; +#9123 = FACE_BOUND ( 'NONE', #2277, .T. ) ; +#9124 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.9444444444444404200 ) ) ; +#9125 = ADVANCED_FACE ( 'NONE', ( #2111 ), #1423, .F. ) ; +#9126 = VERTEX_POINT ( 'NONE', #17518 ) ; +#9127 = CARTESIAN_POINT ( 'NONE', ( 0.3238882248697069200, -0.3280694967582878400, 1.187613820323600600 ) ) ; +#9128 = LINE ( 'NONE', #17026, #2887 ) ; +#9129 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676384800 ) ) ; +#9130 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9131 = EDGE_CURVE ( 'NONE', #992, #1409, #1177, .T. ) ; +#9132 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.9010416666666619700 ) ) ; +#9133 = CARTESIAN_POINT ( 'NONE', ( 0.3477592364557785500, 0.3026494512999817200, 1.440511179676400100 ) ) ; +#9134 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.5902777777777708000 ) ) ; +#9135 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.6597222222222155500 ) ) ; +#9136 = CARTESIAN_POINT ( 'NONE', ( 0.07716600037728473000, 0.2975174626042195200, 0.1674996887366555500 ) ) ; +#9137 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.8333333333333279300 ) ) ; +#9138 = LINE ( 'NONE', #10802, #11875 ) ; +#9139 = ORIENTED_EDGE ( 'NONE', *, *, #18505, .F. ) ; +#9140 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.2847222222222128800 ) ) ; +#9141 = LINE ( 'NONE', #4131, #846 ) ; +#9142 = ORIENTED_EDGE ( 'NONE', *, *, #5624, .F. ) ; +#9143 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9144 = LINE ( 'NONE', #5554, #3369 ) ; +#9145 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.3732638888888802400 ) ) ; +#9146 = DIRECTION ( 'NONE', ( 0.8574597016599302400, 0.5145511247964222900, -0.0000000000000000000 ) ) ; +#9147 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.1701388888889023300 ) ) ; +#9148 = VERTEX_POINT ( 'NONE', #13008 ) ; +#9149 = CARTESIAN_POINT ( 'NONE', ( -0.2500000000000001100, -5.157534287541687600E-016, 1.250000000000000000 ) ) ; +#9150 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.1319444444444576000 ) ) ; +#9151 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9152 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.4635416666666586400 ) ) ; +#9153 = EDGE_CURVE ( 'NONE', #17023, #9638, #8308, .T. ) ; +#9154 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.423611111111110900 ) ) ; +#9155 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.3819444444444356500 ) ) ; +#9156 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.194444444444442000 ) ) ; +#9157 = LINE ( 'NONE', #10697, #10299 ) ; +#9158 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#9159 = VECTOR ( 'NONE', #872, 39.37007874015748100 ) ; +#9160 = ORIENTED_EDGE ( 'NONE', *, *, #8193, .F. ) ; +#9161 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.232638888888887300 ) ) ; +#9162 = ORIENTED_EDGE ( 'NONE', *, *, #3068, .T. ) ; +#9163 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #16386, #7568, #13882, #15334, #1959, #6525, #3370, #18066, #10719 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3106060606060606100, 0.3143939393939393900, 0.3181818181818181800, 0.3219696969696969600, 0.3257575757575757500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#9164 = CIRCLE ( 'NONE', #1769, 0.4687499999999995000 ) ; +#9165 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.1319444444444570500 ) ) ; +#9166 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.5312499999999925600 ) ) ; +#9167 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.5763888888888815100 ) ) ; +#9168 = AXIS2_PLACEMENT_3D ( 'NONE', #17102, #2408, #12778 ) ; +#9169 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, 0.02442125527538695200, 1.249999999999999800 ) ) ; +#9170 = ORIENTED_EDGE ( 'NONE', *, *, #15598, .F. ) ; +#9171 = CARTESIAN_POINT ( 'NONE', ( -0.3293237658787596100, 0.3335752085024176700, 1.484375000000000200 ) ) ; +#9172 = VECTOR ( 'NONE', #13810, 39.37007874015748100 ) ; +#9173 = LINE ( 'NONE', #15098, #4562 ) ; +#9174 = VECTOR ( 'NONE', #305, 39.37007874015748100 ) ; +#9175 = EDGE_LOOP ( 'NONE', ( #15644, #321, #13098, #2456 ) ) ; +#9176 = CARTESIAN_POINT ( 'NONE', ( 0.4190155160288300800, 0.2101251051804446100, 1.592116737595687900 ) ) ; +#9177 = VECTOR ( 'NONE', #14198, 39.37007874015748100 ) ; +#9178 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9179 = CARTESIAN_POINT ( 'NONE', ( -0.1589412568245233400, 0.4327480257511604500, 1.187613820323602900 ) ) ; +#9180 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.8576388888888840700 ) ) ; +#9181 = EDGE_CURVE ( 'NONE', #3512, #13998, #259, .T. ) ; +#9182 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.152777777777775500 ) ) ; +#9183 = ORIENTED_EDGE ( 'NONE', *, *, #14015, .F. ) ; +#9184 = CARTESIAN_POINT ( 'NONE', ( 0.4190155160288344100, -0.2101251051804357800, 1.484375000000000200 ) ) ; +#9185 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.470486111111110900 ) ) ; +#9186 = CARTESIAN_POINT ( 'NONE', ( -0.1051858231909541100, 0.4567934304613003300, 1.143750000000000000 ) ) ; +#9187 = CARTESIAN_POINT ( 'NONE', ( 0.1346300377039772500, -0.2803298883250233700, -1.522717631204631800 ) ) ; +#9188 = EDGE_CURVE ( 'NONE', #13621, #5012, #13141, .T. ) ; +#9189 = ORIENTED_EDGE ( 'NONE', *, *, #10003, .F. ) ; +#9190 = ORIENTED_EDGE ( 'NONE', *, *, #18260, .T. ) ; +#9191 = CIRCLE ( 'NONE', #4831, 0.4687500000000000000 ) ; +#9192 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9193 = LINE ( 'NONE', #6089, #17954 ) ; +#9194 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.5624999999999926700 ) ) ; +#9195 = VECTOR ( 'NONE', #4232, 39.37007874015748900 ) ; +#9196 = DIRECTION ( 'NONE', ( 0.1589208555515829500, 0.06998465030130612800, 0.9848077530122092400 ) ) ; +#9197 = ORIENTED_EDGE ( 'NONE', *, *, #16971, .F. ) ; +#9198 = CARTESIAN_POINT ( 'NONE', ( -0.07877447606962564900, 0.2670665462858306000, 0.08663824996070348900 ) ) ; +#9199 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.7534722222222164400 ) ) ; +#9200 = AXIS2_PLACEMENT_3D ( 'NONE', #804, #8150, #5163 ) ; +#9201 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#9202 = CIRCLE ( 'NONE', #16226, 0.4687475818742551400 ) ; +#9203 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.2187499999999901700 ) ) ; +#9204 = ADVANCED_FACE ( 'NONE', ( #5303 ), #12232, .T. ) ; +#9205 = CARTESIAN_POINT ( 'NONE', ( 0.4418741004648792400, -0.1314551491986520900, 1.143750000000000000 ) ) ; +#9206 = ORIENTED_EDGE ( 'NONE', *, *, #9490, .F. ) ; +#9207 = VERTEX_POINT ( 'NONE', #68 ) ; +#9208 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.2413194444444346200 ) ) ; +#9209 = DIRECTION ( 'NONE', ( 0.9685831611286327400, -0.2486898871648483600, 0.0000000000000000000 ) ) ; +#9210 = ORIENTED_EDGE ( 'NONE', *, *, #11784, .T. ) ; +#9211 = LINE ( 'NONE', #18397, #5279 ) ; +#9212 = VECTOR ( 'NONE', #16715, 39.37007874015748100 ) ; +#9213 = EDGE_LOOP ( 'NONE', ( #6724, #7140, #9311, #13577 ) ) ; +#9214 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.2430555555555456400 ) ) ; +#9215 = VERTEX_POINT ( 'NONE', #8889 ) ; +#9216 = CONICAL_SURFACE ( 'NONE', #12046, 0.4687475818742577500, 0.1745329251994301200 ) ; +#9217 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.1736111111111245900 ) ) ; +#9218 = CARTESIAN_POINT ( 'NONE', ( 7.640853857273995700E-017, 6.823906349730043600E-017, -1.174024639073296000 ) ) ; +#9219 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#9220 = ADVANCED_FACE ( 'NONE', ( #11756 ), #10622, .T. ) ; +#9221 = EDGE_CURVE ( 'NONE', #9034, #1651, #4622, .T. ) ; +#9222 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.6371527777777709100 ) ) ; +#9223 = CARTESIAN_POINT ( 'NONE', ( 0.1278868739221157000, -0.4509647912990438200, 1.143750000000000000 ) ) ; +#9224 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.6822916666666603000 ) ) ; +#9225 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.9583333333333291500 ) ) ; +#9226 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9227 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.218749999999997800 ) ) ; +#9228 = EDGE_CURVE ( 'NONE', #6116, #17802, #12472, .T. ) ; +#9229 = AXIS2_PLACEMENT_3D ( 'NONE', #7797, #15190, #16419 ) ; +#9230 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.6805555555555492500 ) ) ; +#9231 = AXIS2_PLACEMENT_3D ( 'NONE', #13958, #746, #603 ) ; +#9232 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.333333333333332400 ) ) ; +#9233 = VERTEX_POINT ( 'NONE', #2963 ) ; +#9234 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.1041666666666789700 ) ) ; +#9235 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#9236 = ORIENTED_EDGE ( 'NONE', *, *, #5331, .T. ) ; +#9237 = ORIENTED_EDGE ( 'NONE', *, *, #8344, .F. ) ; +#9238 = CONICAL_SURFACE ( 'NONE', #12239, 0.4687475818742554100, 0.1745329251994277300 ) ; +#9239 = VECTOR ( 'NONE', #13070, 39.37007874015748100 ) ; +#9240 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.3090277777777681300 ) ) ; +#9241 = ORIENTED_EDGE ( 'NONE', *, *, #5848, .T. ) ; +#9242 = ORIENTED_EDGE ( 'NONE', *, *, #6042, .T. ) ; +#9243 = LINE ( 'NONE', #16889, #4385 ) ; +#9244 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9245 = EDGE_CURVE ( 'NONE', #7224, #1532, #8541, .T. ) ; +#9246 = CARTESIAN_POINT ( 'NONE', ( 0.1833993232404337900, 0.4313803237839114500, 1.484375000000000200 ) ) ; +#9247 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9248 = ORIENTED_EDGE ( 'NONE', *, *, #2308, .T. ) ; +#9249 = VERTEX_POINT ( 'NONE', #10493 ) ; +#9250 = AXIS2_PLACEMENT_3D ( 'NONE', #9306, #13629, #3451 ) ; +#9251 = DIRECTION ( 'NONE', ( 0.7025573672080209800, -0.7116271114718255600, 0.0000000000000000000 ) ) ; +#9252 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.9409722222222181000 ) ) ; +#9253 = ORIENTED_EDGE ( 'NONE', *, *, #8563, .F. ) ; +#9254 = EDGE_CURVE ( 'NONE', #14948, #16352, #11999, .T. ) ; +#9255 = AXIS2_PLACEMENT_3D ( 'NONE', #4001, #9740, #3804 ) ; +#9256 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.9513888888888848400 ) ) ; +#9257 = LINE ( 'NONE', #8500, #16622 ) ; +#9258 = EDGE_LOOP ( 'NONE', ( #5523, #3869, #2950, #16296 ) ) ; +#9259 = AXIS2_PLACEMENT_3D ( 'NONE', #8063, #3543, #18363 ) ; +#9260 = DIRECTION ( 'NONE', ( -0.1488963146160752200, 0.08935086513736442700, -0.9848077530122085800 ) ) ; +#9261 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.373263888888888200 ) ) ; +#9262 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#9263 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.06944444444443334500 ) ) ; +#9264 = CARTESIAN_POINT ( 'NONE', ( -0.2802162586133502000, -0.3660765293230667200, 1.440511179676397900 ) ) ; +#9265 = CARTESIAN_POINT ( 'NONE', ( 0.2907834692820721000, 0.09236257028025818300, 0.1600837381915649600 ) ) ; +#9266 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.6458333333333263800 ) ) ; +#9267 = ORIENTED_EDGE ( 'NONE', *, *, #2458, .T. ) ; +#9268 = ORIENTED_EDGE ( 'NONE', *, *, #2203, .F. ) ; +#9269 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.2222222222222124100 ) ) ; +#9270 = ORIENTED_EDGE ( 'NONE', *, *, #13721, .T. ) ; +#9271 = LINE ( 'NONE', #404, #2576 ) ; +#9272 = ORIENTED_EDGE ( 'NONE', *, *, #18821, .T. ) ; +#9273 = EDGE_CURVE ( 'NONE', #18684, #8405, #9931, .T. ) ; +#9274 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #15747, #17308, #2625, #7069, #17369, #12931, #8551, #1212, #19039 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1742424242424243100, 0.1780303030303030900, 0.1818181818181818800, 0.1856060606060606600, 0.1893939393939394500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#9275 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.2100694444444345400 ) ) ; +#9276 = AXIS2_PLACEMENT_3D ( 'NONE', #6434, #12418, #3591 ) ; +#9277 = ORIENTED_EDGE ( 'NONE', *, *, #17568, .F. ) ; +#9278 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9279 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.1388888888889019100 ) ) ; +#9280 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9281 = DIRECTION ( 'NONE', ( -0.1589208555515849700, -0.06998465030130701600, 0.9848077530122089100 ) ) ; +#9282 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.5555555555555481400 ) ) ; +#9283 = ORIENTED_EDGE ( 'NONE', *, *, #14767, .F. ) ; +#9284 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.5260416666666589700 ) ) ; +#9285 = CARTESIAN_POINT ( 'NONE', ( 0.3122369529384067500, -0.3496174777277316600, 1.143750000000000000 ) ) ; +#9286 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#9287 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9288 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.097222222222219000 ) ) ; +#9289 = VERTEX_POINT ( 'NONE', #17775 ) ; +#9290 = CARTESIAN_POINT ( 'NONE', ( 0.3070850166377935800, -0.3438487595863217700, 1.143750000000000000 ) ) ; +#9291 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.197916666666664700 ) ) ; +#9292 = ORIENTED_EDGE ( 'NONE', *, *, #5584, .F. ) ; +#9293 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, 0.08680555555556776500 ) ) ; +#9294 = ORIENTED_EDGE ( 'NONE', *, *, #1823, .F. ) ; +#9295 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.3402777777777685200 ) ) ; +#9296 = EDGE_CURVE ( 'NONE', #5674, #8543, #11091, .T. ) ; +#9297 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.156249999999997600 ) ) ; +#9298 = ADVANCED_FACE ( 'NONE', ( #16373 ), #14734, .F. ) ; +#9299 = ORIENTED_EDGE ( 'NONE', *, *, #10527, .T. ) ; +#9300 = ORIENTED_EDGE ( 'NONE', *, *, #5424, .T. ) ; +#9301 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9302 = ORIENTED_EDGE ( 'NONE', *, *, #343, .F. ) ; +#9303 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#9304 = CARTESIAN_POINT ( 'NONE', ( -0.4505462270817873200, -0.09767944602040194700, 1.589564174286821800 ) ) ; +#9305 = CARTESIAN_POINT ( 'NONE', ( 1.530746258681777000E-017, 3.052497858073515500E-017, -1.174024639073305800 ) ) ; +#9306 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323601300 ) ) ; +#9307 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.5868055555555485900 ) ) ; +#9308 = AXIS2_PLACEMENT_3D ( 'NONE', #671, #4910, #13944 ) ; +#9309 = FACE_OUTER_BOUND ( 'NONE', #6899, .T. ) ; +#9310 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.045138888888885700 ) ) ; +#9311 = ORIENTED_EDGE ( 'NONE', *, *, #18711, .T. ) ; +#9312 = ADVANCED_FACE ( 'NONE', ( #15448 ), #13328, .F. ) ; +#9313 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.6493055555555490300 ) ) ; +#9314 = VERTEX_POINT ( 'NONE', #3091 ) ; +#9315 = ADVANCED_FACE ( 'NONE', ( #719 ), #13522, .F. ) ; +#9316 = DIRECTION ( 'NONE', ( 0.1156686028357420500, 0.1295162689590489700, -0.9848077530122082400 ) ) ; +#9317 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.369791666666665900 ) ) ; +#9318 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9319 = CARTESIAN_POINT ( 'NONE', ( -0.2992921959121974100, -1.191649978057174000E-012, -1.534041137421136900 ) ) ; +#9320 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#9321 = CARTESIAN_POINT ( 'NONE', ( 0.06919666627599171900, -0.4557905201830936300, 1.588758826628429600 ) ) ; +#9322 = CIRCLE ( 'NONE', #2342, 0.4610132068742565100 ) ; +#9323 = CARTESIAN_POINT ( 'NONE', ( -5.680482201099291800E-018, -1.610140689546368500E-017, 3.802149639073289000 ) ) ; +#9324 = ORIENTED_EDGE ( 'NONE', *, *, #15133, .T. ) ; +#9325 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.6388888888888819600 ) ) ; +#9326 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#9327 = VECTOR ( 'NONE', #15808, 39.37007874015748900 ) ; +#9328 = EDGE_CURVE ( 'NONE', #12199, #6651, #11537, .T. ) ; +#9329 = EDGE_CURVE ( 'NONE', #10621, #8900, #17415, .T. ) ; +#9330 = AXIS2_PLACEMENT_3D ( 'NONE', #18427, #8124, #18361 ) ; +#9331 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.1788194444444341200 ) ) ; +#9332 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9333 = VECTOR ( 'NONE', #491, 39.37007874015748100 ) ; +#9334 = ORIENTED_EDGE ( 'NONE', *, *, #9804, .F. ) ; +#9335 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.1180555555555684200 ) ) ; +#9336 = FACE_OUTER_BOUND ( 'NONE', #8754, .T. ) ; +#9337 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9338 = DIRECTION ( 'NONE', ( 1.000000000000000000, 2.309263891220325300E-014, 0.0000000000000000000 ) ) ; +#9339 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9340 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.4045138888888803500 ) ) ; +#9341 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9342 = CARTESIAN_POINT ( 'NONE', ( -0.1834002693415873500, 0.4313825491433709300, 1.484375000000000200 ) ) ; +#9343 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.1840277777777674700 ) ) ; +#9344 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.8472222222222169900 ) ) ; +#9345 = CYLINDRICAL_SURFACE ( 'NONE', #5365, 0.4610132068742565100 ) ; +#9346 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9347 = CARTESIAN_POINT ( 'NONE', ( -0.3829490853735684200, 0.2566771803726103900, 1.592921120922338200 ) ) ; +#9348 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.076388888888885700 ) ) ; +#9349 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.1458333333333459700 ) ) ; +#9350 = EDGE_CURVE ( 'NONE', #8543, #10691, #480, .T. ) ; +#9351 = CARTESIAN_POINT ( 'NONE', ( 0.3477592364557848300, -0.3026494512999744500, 1.440511179676384800 ) ) ; +#9352 = LINE ( 'NONE', #624, #10742 ) ; +#9353 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.2881944444444347100 ) ) ; +#9354 = EDGE_CURVE ( 'NONE', #4121, #5211, #16605, .T. ) ; +#9355 = ORIENTED_EDGE ( 'NONE', *, *, #631, .T. ) ; +#9356 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -1.059027777777774300 ) ) ; +#9357 = EDGE_CURVE ( 'NONE', #17541, #10358, #4158, .T. ) ; +#9358 = VECTOR ( 'NONE', #7617, 39.37007874015748100 ) ; +#9359 = AXIS2_PLACEMENT_3D ( 'NONE', #11574, #10229, #5680 ) ; +#9360 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#9361 = VERTEX_POINT ( 'NONE', #3 ) ; +#9362 = AXIS2_PLACEMENT_3D ( 'NONE', #16193, #18926, #10101 ) ; +#9363 = CYLINDRICAL_SURFACE ( 'NONE', #18089, 0.3125000000000008300 ) ; +#9364 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.6249999999999928900 ) ) ; +#9365 = DIRECTION ( 'NONE', ( -0.08743372756788382600, -0.1500301066140716200, 0.9848077530122085800 ) ) ; +#9366 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.4791666666666586900 ) ) ; +#9367 = DIRECTION ( 'NONE', ( 1.000000000000000000, -2.486899575160350300E-014, 0.0000000000000000000 ) ) ; +#9368 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#9369 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9370 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.6493055555555491400 ) ) ; +#9371 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.8749999999999954500 ) ) ; +#9372 = FACE_OUTER_BOUND ( 'NONE', #4798, .T. ) ; +#9373 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #5938, #16391, #13235, #13497, #7639, #17670, #13373, #4415, #42 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5075757575757575700, 0.5113636363636363500, 0.5151515151515151400, 0.5189393939393939200, 0.5227272727272727100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#9374 = DIRECTION ( 'NONE', ( -0.3912539079287067900, -0.9202827715058643500, -0.0000000000000000000 ) ) ; +#9375 = CIRCLE ( 'NONE', #14395, 0.4687475818742577500 ) ; +#9376 = VECTOR ( 'NONE', #13559, 39.37007874015748900 ) ; +#9377 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#9378 = EDGE_LOOP ( 'NONE', ( #8842, #13375, #13259, #493 ) ) ; +#9379 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.359374999999999100 ) ) ; +#9380 = ORIENTED_EDGE ( 'NONE', *, *, #5550, .F. ) ; +#9381 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.430555555555555100 ) ) ; +#9382 = EDGE_CURVE ( 'NONE', #18087, #3523, #14529, .T. ) ; +#9383 = LINE ( 'NONE', #16161, #15347 ) ; +#9384 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#9385 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.454861111111110700 ) ) ; +#9386 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.5486111111111038300 ) ) ; +#9387 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, -5.463695987328526400E-016, 0.9687499999999998900 ) ) ; +#9388 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.8506944444444392000 ) ) ; +#9389 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323596900 ) ) ; +#9390 = AXIS2_PLACEMENT_3D ( 'NONE', #17036, #947, #15723 ) ; +#9391 = ADVANCED_FACE ( 'NONE', ( #12692 ), #15666, .T. ) ; +#9392 = ORIENTED_EDGE ( 'NONE', *, *, #17815, .T. ) ; +#9393 = CYLINDRICAL_SURFACE ( 'NONE', #4642, 0.3125000000000008300 ) ; +#9394 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.1024305555555447300 ) ) ; +#9395 = FACE_OUTER_BOUND ( 'NONE', #11299, .T. ) ; +#9396 = LINE ( 'NONE', #7640, #10535 ) ; +#9397 = VERTEX_POINT ( 'NONE', #14035 ) ; +#9398 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #18695, #17207, #14314, #18811, #17336, #11300, #8390, #11361, #1187 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4166666666666666900, 0.4204545454545454700, 0.4242424242424242500, 0.4280303030303030400, 0.4318181818181818200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#9399 = CARTESIAN_POINT ( 'NONE', ( 0.2615678826637189400, 0.3796253675287058500, 1.440511179676402300 ) ) ; +#9400 = LINE ( 'NONE', #10147, #8716 ) ; +#9401 = VECTOR ( 'NONE', #3444, 39.37007874015748100 ) ; +#9402 = ORIENTED_EDGE ( 'NONE', *, *, #16996, .F. ) ; +#9403 = CARTESIAN_POINT ( 'NONE', ( 9.737125754760365500E-018, -3.273043095098425200E-017, 3.802149639073329400 ) ) ; +#9404 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.02777777777779011000 ) ) ; +#9405 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9406 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9407 = ADVANCED_FACE ( 'NONE', ( #13396 ), #12923, .T. ) ; +#9408 = EDGE_LOOP ( 'NONE', ( #4124, #5373, #4650, #18198 ) ) ; +#9409 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.3142361111111017200 ) ) ; +#9410 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#9411 = EDGE_CURVE ( 'NONE', #1821, #13424, #3707, .T. ) ; +#9412 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.493055555555555600 ) ) ; +#9413 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9414 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#9415 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.8263888888888834000 ) ) ; +#9416 = ORIENTED_EDGE ( 'NONE', *, *, #12433, .T. ) ; +#9417 = CARTESIAN_POINT ( 'NONE', ( -0.4420448320419770900, -0.1559508319245028500, 1.484375000000000200 ) ) ; +#9418 = ADVANCED_FACE ( 'NONE', ( #14990 ), #6239, .F. ) ; +#9419 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.7534722222222163300 ) ) ; +#9420 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.069444444444441300 ) ) ; +#9421 = VERTEX_POINT ( 'NONE', #6621 ) ; +#9422 = ORIENTED_EDGE ( 'NONE', *, *, #1623, .F. ) ; +#9423 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.01388888888887743400 ) ) ; +#9424 = LINE ( 'NONE', #17887, #1118 ) ; +#9425 = FACE_OUTER_BOUND ( 'NONE', #327, .T. ) ; +#9426 = VECTOR ( 'NONE', #16056, 39.37007874015748100 ) ; +#9427 = VERTEX_POINT ( 'NONE', #7722 ) ; +#9428 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9429 = CIRCLE ( 'NONE', #4027, 0.4687500000000000000 ) ; +#9430 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.2430555555555453700 ) ) ; +#9431 = AXIS2_PLACEMENT_3D ( 'NONE', #10963, #2151, #12448 ) ; +#9432 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#9433 = CARTESIAN_POINT ( 'NONE', ( -0.4190155160288329100, 0.2101251051804387300, 1.143750000000000000 ) ) ; +#9434 = UNCERTAINTY_MEASURE_WITH_UNIT (LENGTH_MEASURE( 1.000000000000000100E-005 ), #14267, 'distance_accuracy_value', 'NONE'); +#9435 = ORIENTED_EDGE ( 'NONE', *, *, #18476, .F. ) ; +#9436 = EDGE_LOOP ( 'NONE', ( #18878, #14740, #12811, #7533, #5797, #8423 ) ) ; +#9437 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.6423611111111042800 ) ) ; +#9438 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9439 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323615500 ) ) ; +#9440 = ORIENTED_EDGE ( 'NONE', *, *, #448, .F. ) ; +#9441 = EDGE_LOOP ( 'NONE', ( #1029, #5494, #18959, #14270 ) ) ; +#9442 = CONICAL_SURFACE ( 'NONE', #14444, 0.4687475818742580200, 0.1745329251994276200 ) ; +#9443 = PLANE ( 'NONE', #6229 ) ; +#9444 = VECTOR ( 'NONE', #10184, 39.37007874015748100 ) ; +#9445 = CARTESIAN_POINT ( 'NONE', ( 1.530746258681797900E-017, 3.052497858073505100E-017, -1.174024639073233200 ) ) ; +#9446 = ORIENTED_EDGE ( 'NONE', *, *, #17358, .F. ) ; +#9447 = ORIENTED_EDGE ( 'NONE', *, *, #12872, .F. ) ; +#9448 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.5729166666666598600 ) ) ; +#9449 = LINE ( 'NONE', #15633, #16340 ) ; +#9450 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.7465277777777720200 ) ) ; +#9451 = DIRECTION ( 'NONE', ( 0.1873813145857285400, -0.9822872507286879400, 0.0000000000000000000 ) ) ; +#9452 = DIRECTION ( 'NONE', ( 0.9921147013144787600, -0.1253332335642975100, 0.0000000000000000000 ) ) ; +#9453 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.449652777777777500 ) ) ; +#9454 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.378472222222221400 ) ) ; +#9455 = EDGE_LOOP ( 'NONE', ( #192, #1164, #4790, #15038 ) ) ; +#9456 = CARTESIAN_POINT ( 'NONE', ( -0.2125158139323346500, -0.2175645461127205000, -1.529573285444698400 ) ) ; +#9457 = EDGE_CURVE ( 'NONE', #433, #10200, #3248, .T. ) ; +#9458 = CARTESIAN_POINT ( 'NONE', ( 0.3477592364557785500, 0.3026494512999817200, 1.143750000000000000 ) ) ; +#9459 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9460 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9461 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.1284722222222115200 ) ) ; +#9462 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #18515, #9688, #18384, #17093, #933, #11115, #5352, #8148, #999, #748, #12720, #862, #6842, #2459, #11045, #14179, #15404, #11173, #11236, #6780, #2218, #15654, #12526, #5294, #3880, #17154, #18447, #2345, #3818, #15588, #15470, #14065, #3698, #18628, #11297, #8269, #18569, #14001, #2402, #12768, #8331, #16961, #14239, #9751, #6649, #801, #2274 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ), + ( 0.01825138260438050400, 0.01969577173654169000, 0.02041796630262228400, 0.02114016086870287900, 0.02258455000086406400, 0.02330674456694466200, 0.02402893913302525700, 0.02547332826518644600, 0.02619552283126704400, 0.02691771739734764200, 0.02763991196342823600, 0.02836210652950883100, 0.02980649566167002700, 0.03052869022775062100, 0.03125088479383121600, 0.03269527392599240500, 0.03341746849207300600, 0.03413966305815360100, 0.03558405219031479000, 0.03702844132247598600, 0.03775063588855658000, 0.03847283045463717500, 0.03991721958679836400, 0.04136160871895956000 ), + .UNSPECIFIED. ) ; +#9463 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.4479166666666581900 ) ) ; +#9464 = AXIS2_PLACEMENT_3D ( 'NONE', #16430, #83, #8978 ) ; +#9465 = CARTESIAN_POINT ( 'NONE', ( -0.4219140922835695200, -0.1858000959230583500, 1.592116737595687900 ) ) ; +#9466 = ORIENTED_EDGE ( 'NONE', *, *, #18977, .T. ) ; +#9467 = CYLINDRICAL_SURFACE ( 'NONE', #8031, 0.3125000000000008300 ) ; +#9468 = FACE_OUTER_BOUND ( 'NONE', #7860, .T. ) ; +#9469 = ORIENTED_EDGE ( 'NONE', *, *, #18022, .F. ) ; +#9470 = ORIENTED_EDGE ( 'NONE', *, *, #15348, .F. ) ; +#9471 = CIRCLE ( 'NONE', #13657, 0.4610132068742565100 ) ; +#9472 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.1371527777777671300 ) ) ; +#9473 = CARTESIAN_POINT ( 'NONE', ( -0.2802162586133502000, -0.3660765293230667200, 1.593193105402742800 ) ) ; +#9474 = ORIENTED_EDGE ( 'NONE', *, *, #13788, .T. ) ; +#9475 = CARTESIAN_POINT ( 'NONE', ( 0.2154811238112737100, 0.4162837743583002700, 1.484375000000000200 ) ) ; +#9476 = EDGE_CURVE ( 'NONE', #6877, #16484, #944, .T. ) ; +#9477 = VERTEX_POINT ( 'NONE', #7788 ) ; +#9478 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.498263888888888600 ) ) ; +#9479 = VERTEX_POINT ( 'NONE', #13652 ) ; +#9480 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#9481 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#9482 = VECTOR ( 'NONE', #9030, 39.37007874015748100 ) ; +#9483 = EDGE_CURVE ( 'NONE', #15258, #7416, #1634, .T. ) ; +#9484 = ORIENTED_EDGE ( 'NONE', *, *, #12694, .T. ) ; +#9485 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.3420138888888798500 ) ) ; +#9486 = ORIENTED_EDGE ( 'NONE', *, *, #2329, .F. ) ; +#9487 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.531250000000000400 ) ) ; +#9488 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9489 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.8298611111111057200 ) ) ; +#9490 = EDGE_CURVE ( 'NONE', #12905, #924, #17992, .T. ) ; +#9491 = AXIS2_PLACEMENT_3D ( 'NONE', #18676, #1035, #4239 ) ; +#9492 = AXIS2_PLACEMENT_3D ( 'NONE', #18239, #12247, #6364 ) ; +#9493 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#9494 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.142361111111108500 ) ) ; +#9495 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.2222222222222356400 ) ) ; +#9496 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9497 = ORIENTED_EDGE ( 'NONE', *, *, #13018, .T. ) ; +#9498 = ORIENTED_EDGE ( 'NONE', *, *, #7745, .F. ) ; +#9499 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.4270833333333247100 ) ) ; +#9500 = ORIENTED_EDGE ( 'NONE', *, *, #7862, .F. ) ; +#9501 = ADVANCED_FACE ( 'NONE', ( #7173 ), #16120, .T. ) ; +#9502 = FACE_OUTER_BOUND ( 'NONE', #3547, .T. ) ; +#9503 = ORIENTED_EDGE ( 'NONE', *, *, #6482, .F. ) ; +#9504 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.5798611111111038300 ) ) ; +#9505 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9506 = EDGE_CURVE ( 'NONE', #12161, #11087, #10156, .T. ) ; +#9507 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#9508 = DIRECTION ( 'NONE', ( 0.8660254037844386000, -0.4999999999999998900, 0.0000000000000000000 ) ) ; +#9509 = AXIS2_PLACEMENT_3D ( 'NONE', #16253, #11765, #2936 ) ; +#9510 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9511 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9512 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.5694444444444374300 ) ) ; +#9513 = AXIS2_PLACEMENT_3D ( 'NONE', #14597, #1214, #10286 ) ; +#9514 = VERTEX_POINT ( 'NONE', #446 ) ; +#9515 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.7708333333333279300 ) ) ; +#9516 = ORIENTED_EDGE ( 'NONE', *, *, #6250, .F. ) ; +#9517 = ADVANCED_FACE ( 'NONE', ( #6689 ), #14056, .T. ) ; +#9518 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.6319444444444377600 ) ) ; +#9519 = EDGE_LOOP ( 'NONE', ( #9516, #4468, #11863, #12449 ) ) ; +#9520 = FACE_OUTER_BOUND ( 'NONE', #10073, .T. ) ; +#9521 = ADVANCED_FACE ( 'NONE', ( #5741 ), #11308, .T. ) ; +#9522 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.255208333333331700 ) ) ; +#9523 = CARTESIAN_POINT ( 'NONE', ( 0.01171868954685640300, 0.4686010753596985800, 1.484375000000000200 ) ) ; +#9524 = ORIENTED_EDGE ( 'NONE', *, *, #15366, .F. ) ; +#9525 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9526 = CARTESIAN_POINT ( 'NONE', ( -0.4492873804855435600, 0.1336605598125442400, 1.484375000000000200 ) ) ; +#9527 = EDGE_LOOP ( 'NONE', ( #7638, #8018, #8051, #9915, #18988, #12392 ) ) ; +#9528 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.5451388888888815100 ) ) ; +#9529 = CARTESIAN_POINT ( 'NONE', ( 0.2090309484230969400, 0.1679910602537745000, 1.535768732448054900 ) ) ; +#9530 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.5659722222222147700 ) ) ; +#9531 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9532 = VERTEX_POINT ( 'NONE', #8483 ) ; +#9533 = EDGE_CURVE ( 'NONE', #3890, #7452, #17071, .T. ) ; +#9534 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.06076388888887773700 ) ) ; +#9535 = LINE ( 'NONE', #1834, #306 ) ; +#9536 = AXIS2_PLACEMENT_3D ( 'NONE', #2229, #16974, #6599 ) ; +#9537 = VERTEX_POINT ( 'NONE', #11328 ) ; +#9538 = CARTESIAN_POINT ( 'NONE', ( -0.2559477156562389200, 0.1458364489147969100, 0.1310915247683849000 ) ) ; +#9539 = VERTEX_POINT ( 'NONE', #2493 ) ; +#9540 = CONICAL_SURFACE ( 'NONE', #1942, 0.4610132068742565100, 0.1745329251994316700 ) ; +#9541 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.546875000000000200 ) ) ; +#9542 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.6006944444444375400 ) ) ; +#9543 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.270833333333331700 ) ) ; +#9544 = VERTEX_POINT ( 'NONE', #18780 ) ; +#9545 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.3489583333333241600 ) ) ; +#9546 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#9547 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.565972222222222800 ) ) ; +#9548 = DIRECTION ( 'NONE', ( 0.1637561077632652400, -0.05777219726883734600, 0.9848077530122091300 ) ) ; +#9549 = DIRECTION ( 'NONE', ( 0.3326968243781501800, -0.9430338398216122600, -0.0000000000000000000 ) ) ; +#9550 = AXIS2_PLACEMENT_3D ( 'NONE', #4859, #15160, #1972 ) ; +#9551 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.9444444444444399800 ) ) ; +#9552 = EDGE_LOOP ( 'NONE', ( #4500, #17008, #7691, #11216 ) ) ; +#9553 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.8437499999999948900 ) ) ; +#9554 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.156249999999998000 ) ) ; +#9555 = ORIENTED_EDGE ( 'NONE', *, *, #9029, .F. ) ; +#9556 = ORIENTED_EDGE ( 'NONE', *, *, #10969, .T. ) ; +#9557 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9558 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.1562499999999893400 ) ) ; +#9559 = EDGE_CURVE ( 'NONE', #17223, #16170, #11404, .T. ) ; +#9560 = CIRCLE ( 'NONE', #5988, 0.4687475818742645700 ) ; +#9561 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.6874999999999934500 ) ) ; +#9562 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9563 = CARTESIAN_POINT ( 'NONE', ( 0.3238882248697069200, -0.3280694967582878400, 1.484375000000000200 ) ) ; +#9564 = EDGE_CURVE ( 'NONE', #5122, #2964, #17776, .T. ) ; +#9565 = FACE_OUTER_BOUND ( 'NONE', #18499, .T. ) ; +#9566 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.3194444444444353200 ) ) ; +#9567 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#9568 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9569 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.5902777777777709100 ) ) ; +#9570 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.7222222222222163300 ) ) ; +#9571 = CIRCLE ( 'NONE', #9587, 0.4687475818742549700 ) ; +#9572 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9573 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.203124999999997800 ) ) ; +#9574 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.8784722222222174400 ) ) ; +#9575 = PLANE ( 'NONE', #10942 ) ; +#9576 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #16880, #5194, #15559, #18486, #8056, #18306 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 0.006665148199440269900, 0.008520192712705775700, 0.01037523722597128200 ), + .UNSPECIFIED. ) ; +#9577 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.4791666666666584100 ) ) ; +#9578 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9579 = VECTOR ( 'NONE', #5552, 39.37007874015748900 ) ; +#9580 = ORIENTED_EDGE ( 'NONE', *, *, #8871, .T. ) ; +#9581 = ADVANCED_FACE ( 'NONE', ( #13618 ), #2565, .F. ) ; +#9582 = FACE_BOUND ( 'NONE', #4583, .T. ) ; +#9583 = EDGE_CURVE ( 'NONE', #9036, #5807, #4600, .T. ) ; +#9584 = ORIENTED_EDGE ( 'NONE', *, *, #2193, .F. ) ; +#9586 = EDGE_CURVE ( 'NONE', #12636, #4412, #7150, .T. ) ; +#9585 = LINE ( 'NONE', #9873, #11431 ) ; +#9587 = AXIS2_PLACEMENT_3D ( 'NONE', #9432, #596, #12759 ) ; +#9588 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, 0.1302083333333460500 ) ) ; +#9589 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.538194444444445100 ) ) ; +#9590 = CARTESIAN_POINT ( 'NONE', ( -0.2344118425366619200, 0.1770792069172780200, 0.1301426953717407500 ) ) ; +#9591 = AXIS2_PLACEMENT_3D ( 'NONE', #5462, #10002, #5536 ) ; +#9592 = CARTESIAN_POINT ( 'NONE', ( 0.3477592364557785500, 0.3026494512999817200, 1.593375490995827300 ) ) ; +#9593 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.494791666666666700 ) ) ; +#9594 = CARTESIAN_POINT ( 'NONE', ( 0.1622681766990122000, -0.2237736071879158100, -1.556917725157686700 ) ) ; +#9595 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#9596 = CIRCLE ( 'NONE', #1098, 0.4687475818742608500 ) ; +#9597 = ADVANCED_FACE ( 'NONE', ( #10600 ), #7605, .T. ) ; +#9598 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.3559027777777687400 ) ) ; +#9599 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9600 = CARTESIAN_POINT ( 'NONE', ( -0.2360206732261721200, -0.4049948201025095900, 1.143750000000000000 ) ) ; +#9601 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.9965277777777736800 ) ) ; +#9602 = LINE ( 'NONE', #9732, #6132 ) ; +#9603 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9604 = ADVANCED_FACE ( 'NONE', ( #10847 ), #3470, .T. ) ; +#9605 = ORIENTED_EDGE ( 'NONE', *, *, #2269, .T. ) ; +#9606 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.9374999999999958900 ) ) ; +#9607 = FACE_OUTER_BOUND ( 'NONE', #8733, .T. ) ; +#9608 = EDGE_CURVE ( 'NONE', #2353, #13621, #7386, .T. ) ; +#9609 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.2083333333333229600 ) ) ; +#9610 = AXIS2_PLACEMENT_3D ( 'NONE', #18018, #12082, #16520 ) ; +#9611 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#9612 = EDGE_CURVE ( 'NONE', #17003, #8955, #8525, .T. ) ; +#9613 = ORIENTED_EDGE ( 'NONE', *, *, #14841, .F. ) ; +#9614 = CARTESIAN_POINT ( 'NONE', ( 1.819567776587655000E-016, -9.418635399717167900E-017, -1.174024639073298700 ) ) ; +#9615 = FACE_OUTER_BOUND ( 'NONE', #10406, .T. ) ; +#9616 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #8181, #2251, #645, #5195, #6500, #7990, #18307, #2195, #12432 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.8106060606060605500, 0.8143939393939394500, 0.8181818181818182300, 0.8219696969696970200, 0.8257575757575758000 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#9617 = AXIS2_PLACEMENT_3D ( 'NONE', #7760, #6529, #18069 ) ; +#9618 = VECTOR ( 'NONE', #15068, 39.37007874015748900 ) ; +#9619 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.7638888888888829600 ) ) ; +#9620 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -1.062499999999996700 ) ) ; +#9621 = CIRCLE ( 'NONE', #9168, 0.4687475818742580200 ) ; +#9622 = ORIENTED_EDGE ( 'NONE', *, *, #13327, .T. ) ; +#9623 = ORIENTED_EDGE ( 'NONE', *, *, #888, .F. ) ; +#9624 = CARTESIAN_POINT ( 'NONE', ( -0.3893757946457735400, 0.2609847755022735600, 1.484375000000000200 ) ) ; +#9625 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -1.506944444444444600 ) ) ; +#9626 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.06944444444445656300 ) ) ; +#9627 = FACE_OUTER_BOUND ( 'NONE', #16394, .T. ) ; +#9628 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#9629 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9630 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#9631 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.3055555555555464200 ) ) ; +#9632 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.7187499999999942300 ) ) ; +#9633 = ORIENTED_EDGE ( 'NONE', *, *, #17086, .F. ) ; +#9634 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.206597222222220100 ) ) ; +#9635 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.4479166666666584700 ) ) ; +#9636 = EDGE_CURVE ( 'NONE', #13570, #3309, #6457, .T. ) ; +#9637 = CARTESIAN_POINT ( 'NONE', ( -0.2321251145655892600, 0.3983103163368959500, 1.187613820323598600 ) ) ; +#9638 = VERTEX_POINT ( 'NONE', #7397 ) ; +#9639 = VECTOR ( 'NONE', #1523, 39.37007874015748100 ) ; +#9640 = CARTESIAN_POINT ( 'NONE', ( -0.2648596590511296300, -0.09123257947783433600, 0.09140212071054146200 ) ) ; +#9641 = FACE_BOUND ( 'NONE', #2319, .T. ) ; +#9642 = PLANE ( 'NONE', #3970 ) ; +#9643 = FACE_OUTER_BOUND ( 'NONE', #7664, .T. ) ; +#9644 = CARTESIAN_POINT ( 'NONE', ( 0.02043555972313776400, 0.2768766586876180700, 1.541367467408310200 ) ) ; +#9645 = EDGE_LOOP ( 'NONE', ( #7697, #186, #7097, #16344 ) ) ; +#9646 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.4513888888888804600 ) ) ; +#9647 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#9648 = LINE ( 'NONE', #11749, #15152 ) ; +#9649 = ORIENTED_EDGE ( 'NONE', *, *, #15968, .T. ) ; +#9650 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, 0.1579861111111241200 ) ) ; +#9651 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.541666666666667400 ) ) ; +#9652 = ORIENTED_EDGE ( 'NONE', *, *, #2912, .F. ) ; +#9653 = VERTEX_POINT ( 'NONE', #10026 ) ; +#9654 = VECTOR ( 'NONE', #7288, 39.37007874015748100 ) ; +#9655 = FACE_OUTER_BOUND ( 'NONE', #11610, .T. ) ; +#9656 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9657 = ORIENTED_EDGE ( 'NONE', *, *, #102, .F. ) ; +#9658 = CARTESIAN_POINT ( 'NONE', ( 0.3953002468276911000, -0.2372148641431489300, 1.187613820323621700 ) ) ; +#9659 = ORIENTED_EDGE ( 'NONE', *, *, #13908, .F. ) ; +#9660 = VECTOR ( 'NONE', #4449, 39.37007874015748900 ) ; +#9661 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.522569444444444600 ) ) ; +#9662 = DIRECTION ( 'NONE', ( 0.8880766332571066200, -0.4596954355469746700, -0.0000000000000000000 ) ) ; +#9663 = DIRECTION ( 'NONE', ( -0.1729787697315219300, 0.01523268949379413300, 0.9848077530122082400 ) ) ; +#9664 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.1614583333333226600 ) ) ; +#9665 = CARTESIAN_POINT ( 'NONE', ( -0.2659575542964067700, 0.3859962976670546800, 1.593193105402742800 ) ) ; +#9666 = EDGE_CURVE ( 'NONE', #366, #12851, #9001, .T. ) ; +#9667 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.430555555555555100 ) ) ; +#9668 = PLANE ( 'NONE', #12464 ) ; +#9669 = CARTESIAN_POINT ( 'NONE', ( 0.4347510546871043400, 0.1533776299234556600, 1.590985962198545400 ) ) ; +#9670 = DIRECTION ( 'NONE', ( -0.3447650836343011400, -0.9386889991400950700, 0.0000000000000000000 ) ) ; +#9671 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.9687499999999962300 ) ) ; +#9672 = ORIENTED_EDGE ( 'NONE', *, *, #13478, .F. ) ; +#9673 = ORIENTED_EDGE ( 'NONE', *, *, #16639, .F. ) ; +#9674 = EDGE_CURVE ( 'NONE', #8192, #10140, #4144, .T. ) ; +#9675 = EDGE_LOOP ( 'NONE', ( #6999, #10907, #12416, #3207 ) ) ; +#9676 = LINE ( 'NONE', #11062, #18200 ) ; +#9677 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.2291666666666564700 ) ) ; +#9678 = ORIENTED_EDGE ( 'NONE', *, *, #17994, .T. ) ; +#9679 = ORIENTED_EDGE ( 'NONE', *, *, #7895, .T. ) ; +#9680 = AXIS2_PLACEMENT_3D ( 'NONE', #14428, #10004, #1184 ) ; +#9681 = VECTOR ( 'NONE', #799, 39.37007874015748900 ) ; +#9682 = ADVANCED_FACE ( 'NONE', ( #236 ), #4169, .F. ) ; +#9683 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #6278, #9118, #17743, #17866, #297, #16578, #10404, #15032, #4717, #100, #7703, #11873, #17933, #10596, #12132, #1765, #1579, #13493, #11946, #1644, #161, #18005 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ), + ( 8.673617379884035500E-019, 0.001616864532296342800, 0.003233729064592684800, 0.004042161330740856400, 0.004850593596889028100, 0.006467458129185372200, 0.007275890395333542900, 0.008084322661481714600, 0.009701187193778056100, 0.01131805172607439800, 0.01293491625837073900 ), + .UNSPECIFIED. ) ; +#9684 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.3784722222222132700 ) ) ; +#9685 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.381944444444443800 ) ) ; +#9686 = DIRECTION ( 'NONE', ( -0.1055480449047603200, -0.1378887226129319700, 0.9848077530122092400 ) ) ; +#9687 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#9688 = CARTESIAN_POINT ( 'NONE', ( -0.2989530668741292000, 0.01909876642704342100, -1.534380266459281200 ) ) ; +#9689 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.07638888888890114900 ) ) ; +#9690 = ORIENTED_EDGE ( 'NONE', *, *, #1200, .T. ) ; +#9691 = CARTESIAN_POINT ( 'NONE', ( -0.1616086329535814400, 0.4400104683469180400, 1.143750000000000000 ) ) ; +#9692 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.4201388888888806200 ) ) ; +#9693 = ORIENTED_EDGE ( 'NONE', *, *, #13096, .F. ) ; +#9694 = VERTEX_POINT ( 'NONE', #13241 ) ; +#9695 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.5347222222222148800 ) ) ; +#9696 = VECTOR ( 'NONE', #626, 39.37007874015748100 ) ; +#9697 = VECTOR ( 'NONE', #12555, 39.37007874015748900 ) ; +#9698 = ADVANCED_FACE ( 'NONE', ( #2536 ), #11516, .T. ) ; +#9699 = ORIENTED_EDGE ( 'NONE', *, *, #9110, .T. ) ; +#9700 = ORIENTED_EDGE ( 'NONE', *, *, #5129, .T. ) ; +#9701 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.361111111111110300 ) ) ; +#9702 = LINE ( 'NONE', #7129, #16609 ) ; +#9703 = ADVANCED_FACE ( 'NONE', ( #3226 ), #8744, .F. ) ; +#9704 = EDGE_CURVE ( 'NONE', #6942, #12075, #17176, .T. ) ; +#9705 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.1319444444444335700 ) ) ; +#9706 = EDGE_CURVE ( 'NONE', #12199, #1615, #699, .T. ) ; +#9707 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#9708 = CARTESIAN_POINT ( 'NONE', ( 0.1034502481550510600, -0.4492562999771337900, 1.143750000000000000 ) ) ; +#9709 = DIRECTION ( 'NONE', ( -1.224646799147353200E-016, 1.000000000000000000, 0.0000000000000000000 ) ) ; +#9710 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.6215277777777708000 ) ) ; +#9711 = AXIS2_PLACEMENT_3D ( 'NONE', #11022, #15384, #2386 ) ; +#9712 = CARTESIAN_POINT ( 'NONE', ( 0.4120995984523148600, 0.2066569569792582900, 1.143750000000000000 ) ) ; +#9713 = ORIENTED_EDGE ( 'NONE', *, *, #585, .T. ) ; +#9714 = ORIENTED_EDGE ( 'NONE', *, *, #5748, .F. ) ; +#9715 = VERTEX_POINT ( 'NONE', #5678 ) ; +#9716 = CYLINDRICAL_SURFACE ( 'NONE', #740, 0.3125000000000008300 ) ; +#9717 = ORIENTED_EDGE ( 'NONE', *, *, #16483, .F. ) ; +#9718 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, 0.07812500000001243400 ) ) ; +#9719 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.489583333333333700 ) ) ; +#9720 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#9721 = CARTESIAN_POINT ( 'NONE', ( -0.07035793515936117300, -0.4634396653935770600, 1.484375000000000200 ) ) ; +#9722 = EDGE_CURVE ( 'NONE', #5952, #8022, #14510, .T. ) ; +#9723 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.373263888888887700 ) ) ; +#9724 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.520833333333333300 ) ) ; +#9725 = EDGE_LOOP ( 'NONE', ( #3395, #15645, #4854, #10528 ) ) ; +#9726 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#9727 = CARTESIAN_POINT ( 'NONE', ( -2.995524686094753500E-018, -3.401646013411981300E-017, 3.802149639073269900 ) ) ; +#9728 = VERTEX_POINT ( 'NONE', #14538 ) ; +#9729 = EDGE_CURVE ( 'NONE', #11063, #9249, #17747, .T. ) ; +#9730 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.04687499999998855800 ) ) ; +#9731 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.385416666666665600 ) ) ; +#9732 = CARTESIAN_POINT ( 'NONE', ( -0.2119256669269687600, -0.4094150566479519100, 1.484375000000000200 ) ) ; +#9733 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9734 = ORIENTED_EDGE ( 'NONE', *, *, #14592, .F. ) ; +#9735 = EDGE_CURVE ( 'NONE', #16176, #1846, #1614, .T. ) ; +#9736 = CIRCLE ( 'NONE', #5749, 0.4687499999999995600 ) ; +#9737 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.9722222222222183200 ) ) ; +#9738 = VERTEX_POINT ( 'NONE', #18985 ) ; +#9739 = ORIENTED_EDGE ( 'NONE', *, *, #3090, .T. ) ; +#9740 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#9741 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.2222222222222118600 ) ) ; +#9742 = VERTEX_POINT ( 'NONE', #11633 ) ; +#9743 = EDGE_LOOP ( 'NONE', ( #8613, #10586, #9283, #12572 ) ) ; +#9744 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.4027777777777690200 ) ) ; +#9745 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9746 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#9747 = EDGE_LOOP ( 'NONE', ( #8469, #14207, #8027, #5257, #10593, #8607 ) ) ; +#9748 = EDGE_CURVE ( 'NONE', #10624, #6942, #6673, .T. ) ; +#9749 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323613700 ) ) ; +#9750 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #15539, #18528, #9818, #8455, #39, #11490, #1013, #1063, #13293 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.03787878787878784500, 0.04166666666666663000, 0.04545454545454541400, 0.04924242424242431000, 0.05303030303030309400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#9751 = CARTESIAN_POINT ( 'NONE', ( 0.2735569839308156800, 0.07560364353910359300, -1.550157394422476000 ) ) ; +#9752 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.04861111111112306100 ) ) ; +#9753 = VERTEX_POINT ( 'NONE', #17882 ) ; +#9754 = DIRECTION ( 'NONE', ( -0.8763066800438630300, -0.4817536741017162700, 0.0000000000000000000 ) ) ; +#9755 = CARTESIAN_POINT ( 'NONE', ( 0.4289947181748867700, 0.1889182211382723600, 1.592116737595687900 ) ) ; +#9756 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.4722222222222143800 ) ) ; +#9757 = AXIS2_PLACEMENT_3D ( 'NONE', #5261, #15116, #6748 ) ; +#9758 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.4965277777777701900 ) ) ; +#9759 = CARTESIAN_POINT ( 'NONE', ( -0.4548654901190618500, 0.07503707624389219200, 1.589564174286821800 ) ) ; +#9760 = CC_DESIGN_DATE_AND_TIME_ASSIGNMENT ( #6076, #11815, ( #1862 ) ) ; +#9761 = ORIENTED_EDGE ( 'NONE', *, *, #18999, .F. ) ; +#9762 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.038194444444440900 ) ) ; +#9763 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.01388888888887743400 ) ) ; +#9764 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676402300 ) ) ; +#9765 = ORIENTED_EDGE ( 'NONE', *, *, #936, .F. ) ; +#9766 = DIRECTION ( 'NONE', ( 0.6179619325485434800, 0.7862080194966656300, -0.0000000000000000000 ) ) ; +#9767 = VERTEX_POINT ( 'NONE', #13506 ) ; +#9768 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.3437499999999909000 ) ) ; +#9769 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.05208333333332185900 ) ) ; +#9770 = LINE ( 'NONE', #8492, #1252 ) ; +#9771 = ADVANCED_FACE ( 'NONE', ( #14742 ), #17946, .F. ) ; +#9772 = EDGE_LOOP ( 'NONE', ( #2586, #7239, #1602, #7300 ) ) ; +#9773 = EDGE_CURVE ( 'NONE', #13114, #1554, #18224, .T. ) ; +#9774 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, 0.2204861111111245900 ) ) ; +#9775 = ORIENTED_EDGE ( 'NONE', *, *, #6527, .F. ) ; +#9776 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.454861111111111200 ) ) ; +#9777 = VECTOR ( 'NONE', #6120, 39.37007874015748900 ) ; +#9778 = DIRECTION ( 'NONE', ( 0.9961450333403972800, -0.08772156263575463200, 0.0000000000000000000 ) ) ; +#9779 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#9780 = ORIENTED_EDGE ( 'NONE', *, *, #6153, .F. ) ; +#9781 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.192708333333331300 ) ) ; +#9782 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.517361111111110900 ) ) ; +#9783 = CARTESIAN_POINT ( 'NONE', ( -0.2802162586133502000, -0.3660765293230667200, 1.187613820323598600 ) ) ; +#9784 = ADVANCED_FACE ( 'NONE', ( #10138 ), #13843, .T. ) ; +#9785 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.1093749999999890500 ) ) ; +#9786 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9787 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.374999999999998900 ) ) ; +#9788 = CARTESIAN_POINT ( 'NONE', ( 0.2615678826637272100, -0.3796253675287001900, 1.484375000000000200 ) ) ; +#9789 = AXIS2_PLACEMENT_3D ( 'NONE', #791, #6703, #5151 ) ; +#9790 = CARTESIAN_POINT ( 'NONE', ( 0.4019342351530901800, 0.2411958397483255100, 1.484375000000000200 ) ) ; +#9791 = FACE_OUTER_BOUND ( 'NONE', #13576, .T. ) ; +#9792 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.7708333333333279300 ) ) ; +#9793 = DIRECTION ( 'NONE', ( 0.8574597016599265800, 0.5145511247964285100, 0.0000000000000000000 ) ) ; +#9794 = CYLINDRICAL_SURFACE ( 'NONE', #7648, 0.4610132068742565100 ) ; +#9795 = ORIENTED_EDGE ( 'NONE', *, *, #2483, .F. ) ; +#9796 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, 0.1111111111111238300 ) ) ; +#9797 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.1562499999999893400 ) ) ; +#9798 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.4374999999999914500 ) ) ; +#9799 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.2777777777777683000 ) ) ; +#9800 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9801 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.1041666666666557500 ) ) ; +#9802 = CARTESIAN_POINT ( 'NONE', ( -0.3122369529384033700, -0.3496174777277379900, 1.484375000000000200 ) ) ; +#9803 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.05208333333334535400 ) ) ; +#9804 = EDGE_CURVE ( 'NONE', #8789, #15897, #5512, .T. ) ; +#9805 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9806 = DIRECTION ( 'NONE', ( -0.2243975804000302200, -0.9744976787610178900, 0.0000000000000000000 ) ) ; +#9807 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.6874999999999936700 ) ) ; +#9808 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.4652777777777699600 ) ) ; +#9809 = AXIS2_PLACEMENT_3D ( 'NONE', #17418, #7199, #7255 ) ; +#9810 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.7013888888888828400 ) ) ; +#9811 = LINE ( 'NONE', #7570, #4046 ) ; +#9812 = ORIENTED_EDGE ( 'NONE', *, *, #8737, .T. ) ; +#9813 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#9814 = FACE_OUTER_BOUND ( 'NONE', #5914, .T. ) ; +#9815 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.065972222222218800 ) ) ; +#9816 = ORIENTED_EDGE ( 'NONE', *, *, #13986, .T. ) ; +#9817 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.2152777777777678300 ) ) ; +#9818 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, 0.1666666666666797300 ) ) ; +#9819 = CYLINDRICAL_SURFACE ( 'NONE', #11182, 0.3144999999999991100 ) ; +#9820 = CARTESIAN_POINT ( 'NONE', ( -0.4505462270817879900, 0.09767944602039871400, 1.143750000000000000 ) ) ; +#9821 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -0.1443375672974062400, 1.548179320649367500 ) ) ; +#9822 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.2430555555555453700 ) ) ; +#9823 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.05902777777776644500 ) ) ; +#9824 = EDGE_CURVE ( 'NONE', #5793, #5564, #14286, .T. ) ; +#9825 = VERTEX_POINT ( 'NONE', #6148 ) ; +#9826 = LINE ( 'NONE', #18453, #16039 ) ; +#9827 = EDGE_CURVE ( 'NONE', #11548, #19087, #2303, .T. ) ; +#9828 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.232638888888887300 ) ) ; +#9829 = EDGE_CURVE ( 'NONE', #15947, #9479, #9914, .T. ) ; +#9830 = FACE_OUTER_BOUND ( 'NONE', #4223, .T. ) ; +#9831 = AXIS2_PLACEMENT_3D ( 'NONE', #8745, #11634, #12932 ) ; +#9832 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, 0.1927083333333465300 ) ) ; +#9833 = VECTOR ( 'NONE', #7382, 39.37007874015748100 ) ; +#9834 = AXIS2_PLACEMENT_3D ( 'NONE', #6112, #8966, #4751 ) ; +#9835 = ORIENTED_EDGE ( 'NONE', *, *, #1316, .T. ) ; +#9836 = VERTEX_POINT ( 'NONE', #10534 ) ; +#9837 = CARTESIAN_POINT ( 'NONE', ( -0.02188172544004272600, -0.2764156081756482000, -1.556219149172013600 ) ) ; +#9838 = VECTOR ( 'NONE', #10833, 39.37007874015748900 ) ; +#9839 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9840 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.178819444444442000 ) ) ; +#9841 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9842 = CARTESIAN_POINT ( 'NONE', ( -0.3477592364557826600, 0.3026494512999768900, 1.187613820323615500 ) ) ; +#9843 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.09895833333332217100 ) ) ; +#9844 = CARTESIAN_POINT ( 'NONE', ( -1.229966025673683700E-016, -2.049643369924191500E-016, -1.174024639073336900 ) ) ; +#9845 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.486111111111110900 ) ) ; +#9846 = CARTESIAN_POINT ( 'NONE', ( 0.1834002693415811800, 0.4313825491433734800, 1.484375000000000200 ) ) ; +#9847 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#9848 = ORIENTED_EDGE ( 'NONE', *, *, #11113, .F. ) ; +#9849 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.8784722222222177700 ) ) ; +#9850 = LINE ( 'NONE', #12459, #17676 ) ; +#9851 = FACE_OUTER_BOUND ( 'NONE', #5128, .T. ) ; +#9852 = VECTOR ( 'NONE', #11758, 39.37007874015748100 ) ; +#9853 = ORIENTED_EDGE ( 'NONE', *, *, #16941, .F. ) ; +#9854 = EDGE_CURVE ( 'NONE', #1651, #4384, #11075, .T. ) ; +#9855 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#9856 = VECTOR ( 'NONE', #1961, 39.37007874015748100 ) ; +#9857 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9858 = ORIENTED_EDGE ( 'NONE', *, *, #1878, .F. ) ; +#9859 = AXIS2_PLACEMENT_3D ( 'NONE', #2166, #3568, #15338 ) ; +#9860 = CARTESIAN_POINT ( 'NONE', ( 1.458042822533541000E-016, 1.439459950530970000E-016, 3.802149639073309800 ) ) ; +#9861 = EDGE_CURVE ( 'NONE', #18299, #8011, #5972, .T. ) ; +#9862 = ADVANCED_FACE ( 'NONE', ( #2089 ), #17507, .T. ) ; +#9863 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, 0.07638888888890113500 ) ) ; +#9864 = VERTEX_POINT ( 'NONE', #7455 ) ; +#9865 = ORIENTED_EDGE ( 'NONE', *, *, #17436, .T. ) ; +#9866 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.5173611111111032800 ) ) ; +#9867 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#9868 = DIRECTION ( 'NONE', ( 0.9430338398216144800, -0.3326968243781439100, 0.0000000000000000000 ) ) ; +#9869 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.493055555555555600 ) ) ; +#9870 = ORIENTED_EDGE ( 'NONE', *, *, #14440, .F. ) ; +#9871 = ORIENTED_EDGE ( 'NONE', *, *, #5363, .F. ) ; +#9872 = VECTOR ( 'NONE', #4483, 39.37007874015748100 ) ; +#9873 = CARTESIAN_POINT ( 'NONE', ( -9.184477552091034100E-017, 1.831498714844090100E-016, -1.174024639073318900 ) ) ; +#9874 = FACE_OUTER_BOUND ( 'NONE', #5034, .T. ) ; +#9875 = DIRECTION ( 'NONE', ( -0.08743372756788478400, -0.1500301066140706800, 0.9848077530122085800 ) ) ; +#9876 = LINE ( 'NONE', #2564, #5242 ) ; +#9877 = ORIENTED_EDGE ( 'NONE', *, *, #12039, .F. ) ; +#9878 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.2430555555555459200 ) ) ; +#9879 = VECTOR ( 'NONE', #15353, 39.37007874015748100 ) ; +#9880 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.6944444444444384200 ) ) ; +#9881 = ADVANCED_FACE ( 'NONE', ( #9468 ), #5061, .T. ) ; +#9882 = CARTESIAN_POINT ( 'NONE', ( 0.3953002468276911000, -0.2372148641431489300, 1.484375000000000200 ) ) ; +#9883 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.024305555555551600 ) ) ; +#9884 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.03472222222221093400 ) ) ; +#9885 = EDGE_CURVE ( 'NONE', #14714, #16243, #16828, .T. ) ; +#9886 = ORIENTED_EDGE ( 'NONE', *, *, #1186, .T. ) ; +#9887 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9888 = ORIENTED_EDGE ( 'NONE', *, *, #4361, .T. ) ; +#9889 = CARTESIAN_POINT ( 'NONE', ( 0.2277571511307993600, -0.1720204961587300000, 0.1071891238348984700 ) ) ; +#9890 = AXIS2_PLACEMENT_3D ( 'NONE', #15370, #10950, #15560 ) ; +#9891 = CARTESIAN_POINT ( 'NONE', ( -0.1464933923060664500, -0.2040971351124034600, 1.525865939309398300 ) ) ; +#9892 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.2222222222222118600 ) ) ; +#9893 = DIRECTION ( 'NONE', ( 1.000000000000000000, 3.641531520770513500E-014, 0.0000000000000000000 ) ) ; +#9894 = EDGE_LOOP ( 'NONE', ( #2735, #3453, #4929, #18815 ) ) ; +#9895 = VERTEX_POINT ( 'NONE', #3013 ) ; +#9896 = FACE_OUTER_BOUND ( 'NONE', #6680, .T. ) ; +#9897 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9898 = LINE ( 'NONE', #555, #16101 ) ; +#9899 = VERTEX_POINT ( 'NONE', #13306 ) ; +#9900 = EDGE_LOOP ( 'NONE', ( #1478, #11907, #11805, #1924 ) ) ; +#9901 = FACE_OUTER_BOUND ( 'NONE', #4110, .T. ) ; +#9902 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.364583333333332800 ) ) ; +#9903 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.475694444444444600 ) ) ; +#9904 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9905 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9906 = ORIENTED_EDGE ( 'NONE', *, *, #7130, .T. ) ; +#9907 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -1.215277777777775700 ) ) ; +#9908 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.272569444444442600 ) ) ; +#9909 = ORIENTED_EDGE ( 'NONE', *, *, #17095, .T. ) ; +#9910 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.354166666666665400 ) ) ; +#9911 = FACE_OUTER_BOUND ( 'NONE', #8518, .T. ) ; +#9912 = CARTESIAN_POINT ( 'NONE', ( 0.1803732187962983300, 0.4242625117230472400, 1.484375000000000200 ) ) ; +#9913 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.6770833333333272600 ) ) ; +#9914 = LINE ( 'NONE', #16399, #15212 ) ; +#9915 = ORIENTED_EDGE ( 'NONE', *, *, #6958, .T. ) ; +#9916 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, 0.1336805555555683500 ) ) ; +#9917 = VERTEX_POINT ( 'NONE', #13572 ) ; +#9918 = EDGE_CURVE ( 'NONE', #9539, #3414, #12904, .T. ) ; +#9919 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.420138888888888600 ) ) ; +#9920 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9921 = CIRCLE ( 'NONE', #10434, 0.4610132068742565100 ) ; +#9922 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.7499999999999944500 ) ) ; +#9923 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.01388888888890064600 ) ) ; +#9924 = ORIENTED_EDGE ( 'NONE', *, *, #11018, .F. ) ; +#9925 = EDGE_CURVE ( 'NONE', #4744, #8955, #15882, .T. ) ; +#9926 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.9652777777777737900 ) ) ; +#9927 = CARTESIAN_POINT ( 'NONE', ( -0.4505462270817880400, 0.09767944602039871400, 1.589564174286821800 ) ) ; +#9928 = VERTEX_POINT ( 'NONE', #3136 ) ; +#9929 = VERTEX_POINT ( 'NONE', #8936 ) ; +#9930 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.1354166666666558600 ) ) ; +#9931 = LINE ( 'NONE', #16343, #15899 ) ; +#9932 = ORIENTED_EDGE ( 'NONE', *, *, #16536, .T. ) ; +#9933 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.5468749999999926700 ) ) ; +#9934 = ORIENTED_EDGE ( 'NONE', *, *, #6302, .T. ) ; +#9935 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.3923611111111022200 ) ) ; +#9936 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9937 = CARTESIAN_POINT ( 'NONE', ( -0.2360206732261721000, -0.4049948201025095900, 1.484375000000000200 ) ) ; +#9938 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#9939 = DIRECTION ( 'NONE', ( 0.5673761158323350500, -0.8234587683563838700, 0.0000000000000000000 ) ) ; +#9940 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.569444444444444900 ) ) ; +#9941 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9942 = CARTESIAN_POINT ( 'NONE', ( 0.2360206732261781700, -0.4049948201025071500, 1.143750000000000000 ) ) ; +#9943 = DIRECTION ( 'NONE', ( -0.9992845593168616600, -0.03782022621436287300, 0.0000000000000000000 ) ) ; +#9944 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.2916666666666575300 ) ) ; +#9945 = ORIENTED_EDGE ( 'NONE', *, *, #10663, .F. ) ; +#9946 = ORIENTED_EDGE ( 'NONE', *, *, #8224, .T. ) ; +#9947 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.6770833333333271500 ) ) ; +#9948 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.3819444444444358200 ) ) ; +#9949 = EDGE_LOOP ( 'NONE', ( #11604, #9355, #16595, #18747 ) ) ; +#9950 = VECTOR ( 'NONE', #7241, 39.37007874015748900 ) ; +#9951 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.9305555555555509200 ) ) ; +#9952 = EDGE_CURVE ( 'NONE', #11496, #7224, #11, .T. ) ; +#9953 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.1770833333333231300 ) ) ; +#9954 = ORIENTED_EDGE ( 'NONE', *, *, #1316, .F. ) ; +#9955 = EDGE_CURVE ( 'NONE', #11979, #11702, #16351, .T. ) ; +#9956 = CARTESIAN_POINT ( 'NONE', ( 0.04029185195756751500, -0.2809195419810399700, 0.1014763682338840300 ) ) ; +#9957 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.086805555555552200 ) ) ; +#9958 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.3263888888888793500 ) ) ; +#9959 = AXIS2_PLACEMENT_3D ( 'NONE', #8565, #10178, #8495 ) ; +#9960 = CARTESIAN_POINT ( 'NONE', ( 0.3624522803384100900, 0.2848886122504243900, 1.593375490995827300 ) ) ; +#9961 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.175347222222219900 ) ) ; +#9962 = ADVANCED_FACE ( 'NONE', ( #8072 ), #3381, .F. ) ; +#9963 = ORIENTED_EDGE ( 'NONE', *, *, #5114, .F. ) ; +#9964 = ORIENTED_EDGE ( 'NONE', *, *, #4775, .F. ) ; +#9965 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.392361111111110700 ) ) ; +#9966 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2040, #7774, #13833, #12338, #16781, #18021, #3518, #9454, #6342 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1136363636363636300, 0.1174242424242424300, 0.1212121212121212200, 0.1250000000000000000, 0.1287878787878787800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#9967 = ORIENTED_EDGE ( 'NONE', *, *, #2919, .T. ) ; +#9968 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.392361111111110700 ) ) ; +#9969 = VECTOR ( 'NONE', #5165, 39.37007874015748900 ) ; +#9970 = EDGE_LOOP ( 'NONE', ( #8743, #3441, #16328, #9835 ) ) ; +#9971 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9972 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323634600 ) ) ; +#9973 = ORIENTED_EDGE ( 'NONE', *, *, #2528, .T. ) ; +#9974 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -1.229166666666664700 ) ) ; +#9975 = EDGE_CURVE ( 'NONE', #14728, #6526, #13818, .T. ) ; +#9976 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.345486111111110100 ) ) ; +#9977 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.444444444444444000 ) ) ; +#9978 = EDGE_CURVE ( 'NONE', #239, #324, #2514, .T. ) ; +#9979 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, 0.1267361111111240400 ) ) ; +#9980 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#9981 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.277777777777775900 ) ) ; +#9982 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#9983 = EDGE_CURVE ( 'NONE', #663, #12161, #8048, .T. ) ; +#9984 = AXIS2_PLACEMENT_3D ( 'NONE', #2032, #422, #13562 ) ; +#9985 = ORIENTED_EDGE ( 'NONE', *, *, #14694, .T. ) ; +#9986 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.7291666666666609700 ) ) ; +#9987 = AXIS2_PLACEMENT_3D ( 'NONE', #2232, #12669, #17043 ) ; +#9988 = VECTOR ( 'NONE', #7134, 39.37007874015748100 ) ; +#9989 = ORIENTED_EDGE ( 'NONE', *, *, #14877, .T. ) ; +#9990 = CARTESIAN_POINT ( 'NONE', ( -0.2119256669269715100, 0.4094150566479503000, 1.143750000000000000 ) ) ; +#9991 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #3629, #13945, #5354, #14432, #17275, #6783, #6918, #8447, #4138 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1136363636363636500, 0.1174242424242424300, 0.1212121212121212200, 0.1250000000000000000, 0.1287878787878787800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#9992 = DIRECTION ( 'NONE', ( 0.07982527466453977200, -0.1542128889936777400, 0.9848077530122082400 ) ) ; +#9993 = VERTEX_POINT ( 'NONE', #18139 ) ; +#9994 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.7812499999999943400 ) ) ; +#9995 = LINE ( 'NONE', #18419, #10923 ) ; +#9996 = DIRECTION ( 'NONE', ( 0.4257792915650641100, 0.9048270524660235700, 0.0000000000000000000 ) ) ; +#9997 = VERTEX_POINT ( 'NONE', #10730 ) ; +#9998 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.6718749999999936700 ) ) ; +#9999 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.3124999999999904500 ) ) ; +#10000 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#10001 = VERTEX_POINT ( 'NONE', #500 ) ; +#10002 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10003 = EDGE_CURVE ( 'NONE', #2371, #15258, #8753, .T. ) ; +#10004 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10005 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.1215277777777901600 ) ) ; +#10006 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#10007 = DIRECTION ( 'NONE', ( 0.8306683619109767000, 0.5567675210715282700, 0.0000000000000000000 ) ) ; +#10008 = VERTEX_POINT ( 'NONE', #10796 ) ; +#10009 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.3124999999999910100 ) ) ; +#10010 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.3749999999999912300 ) ) ; +#10011 = LINE ( 'NONE', #6564, #10936 ) ; +#10012 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.9166666666666618600 ) ) ; +#10013 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.02083333333332202500 ) ) ; +#10014 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323634600 ) ) ; +#10015 = CARTESIAN_POINT ( 'NONE', ( -0.1385189375327972900, -0.2456947804032623700, 0.09669405626538900300 ) ) ; +#10016 = CARTESIAN_POINT ( 'NONE', ( -0.1146115372620811600, -0.2225041327043130200, 1.525842493984606700 ) ) ; +#10017 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#10018 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000000000, -4.889642800228204400E-016, -1.562500000000000000 ) ) ; +#10019 = LINE ( 'NONE', #8537, #10709 ) ; +#10020 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.230902777777775900 ) ) ; +#10021 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.315972222222221200 ) ) ; +#10022 = EDGE_CURVE ( 'NONE', #9638, #10034, #15188, .T. ) ; +#10023 = VECTOR ( 'NONE', #13011, 39.37007874015748100 ) ; +#10024 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.527777777777778600 ) ) ; +#10025 = DIRECTION ( 'NONE', ( -0.1442440472914135500, -0.09668166541820395800, -0.9848077530122083500 ) ) ; +#10026 = CARTESIAN_POINT ( 'NONE', ( 0.4548654901190624100, -0.07503707624388920900, 1.440511179676385400 ) ) ; +#10027 = CARTESIAN_POINT ( 'NONE', ( 0.07035793515935794000, 0.4634396653935775600, 1.588758826628429200 ) ) ; +#10028 = DIRECTION ( 'NONE', ( 0.1552240656481555200, 0.07784072873952989400, -0.9848077530122089100 ) ) ; +#10029 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.9253472222222177700 ) ) ; +#10030 = EDGE_CURVE ( 'NONE', #17802, #2261, #10361, .T. ) ; +#10031 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.350694444444443100 ) ) ; +#10032 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10033 = FACE_OUTER_BOUND ( 'NONE', #4145, .T. ) ; +#10034 = VERTEX_POINT ( 'NONE', #1975 ) ; +#10035 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, 0.1649305555555687100 ) ) ; +#10036 = PLANE ( 'NONE', #5252 ) ; +#10037 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.197916666666664300 ) ) ; +#10038 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10039 = CARTESIAN_POINT ( 'NONE', ( 0.1533507007486013800, -0.2597072557367647900, 0.1502990999459706500 ) ) ; +#10040 = VECTOR ( 'NONE', #18995, 39.37007874015748100 ) ; +#10041 = EDGE_LOOP ( 'NONE', ( #10390, #5883, #188, #9484 ) ) ; +#10042 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.5520833333333261500 ) ) ; +#10043 = FACE_OUTER_BOUND ( 'NONE', #6711, .T. ) ; +#10044 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#10045 = CARTESIAN_POINT ( 'NONE', ( 0.3829490853735647600, 0.2566771803726157200, 1.187613820323634800 ) ) ; +#10046 = ADVANCED_FACE ( 'NONE', ( #17261 ), #15233, .F. ) ; +#10047 = CARTESIAN_POINT ( 'NONE', ( 7.302844316069775300E-017, 2.454782321323834400E-016, -1.174024639073291600 ) ) ; +#10048 = CIRCLE ( 'NONE', #15275, 0.4610132068742565100 ) ; +#10049 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.5920138888888819600 ) ) ; +#10050 = VECTOR ( 'NONE', #5796, 39.37007874015748900 ) ; +#10051 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.08680555555554428400 ) ) ; +#10052 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.1736111111111005600 ) ) ; +#10053 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#10054 = EDGE_CURVE ( 'NONE', #16922, #13336, #5955, .T. ) ; +#10055 = ORIENTED_EDGE ( 'NONE', *, *, #14172, .T. ) ; +#10056 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10057 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, 0.07638888888890142700 ) ) ; +#10058 = DIRECTION ( 'NONE', ( 0.1697056182357932200, 0.03679256373578169300, -0.9848077530122088000 ) ) ; +#10059 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.520833333333333300 ) ) ; +#10061 = EDGE_CURVE ( 'NONE', #5062, #15306, #9898, .T. ) ; +#10060 = LINE ( 'NONE', #2728, #12130 ) ; +#10062 = CARTESIAN_POINT ( 'NONE', ( -0.2449083021014014900, 0.1305043579664226800, 0.08539536836757594100 ) ) ; +#10063 = AXIS2_PLACEMENT_3D ( 'NONE', #3505, #9438, #604 ) ; +#10064 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.3402777777777688000 ) ) ; +#10065 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10066 = ORIENTED_EDGE ( 'NONE', *, *, #2809, .F. ) ; +#10067 = CYLINDRICAL_SURFACE ( 'NONE', #14770, 0.3125000000000008300 ) ; +#10068 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.8090277777777722400 ) ) ; +#10069 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, 0.003472222222233768800 ) ) ; +#10070 = VECTOR ( 'NONE', #9038, 39.37007874015748100 ) ; +#10071 = CARTESIAN_POINT ( 'NONE', ( 0.2333545992281594300, -0.1644999621897782200, 0.1074285477822677500 ) ) ; +#10072 = CONICAL_SURFACE ( 'NONE', #2255, 0.4687475818742560300, 0.1745329251994285600 ) ; +#10073 = EDGE_LOOP ( 'NONE', ( #12541, #15738, #15690, #16633, #2272, #1693 ) ) ; +#10074 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10075 = ORIENTED_EDGE ( 'NONE', *, *, #2193, .T. ) ; +#10076 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#10077 = FACE_OUTER_BOUND ( 'NONE', #8588, .T. ) ; +#10078 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323604600 ) ) ; +#10079 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.8454861111111060500 ) ) ; +#10080 = CARTESIAN_POINT ( 'NONE', ( -2.785302784197738600E-016, -4.228558048076330400E-017, 3.802149639073295200 ) ) ; +#10081 = EDGE_CURVE ( 'NONE', #16336, #7, #1144, .T. ) ; +#10082 = EDGE_CURVE ( 'NONE', #3160, #18936, #14724, .T. ) ; +#10083 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.024305555555551800 ) ) ; +#10084 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.291666666666665400 ) ) ; +#10085 = EDGE_CURVE ( 'NONE', #11131, #7348, #19117, .T. ) ; +#10086 = ORIENTED_EDGE ( 'NONE', *, *, #7018, .T. ) ; +#10087 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.395833333333332800 ) ) ; +#10088 = AXIS2_PLACEMENT_3D ( 'NONE', #18006, #233, #12077 ) ; +#10089 = ORIENTED_EDGE ( 'NONE', *, *, #15739, .F. ) ; +#10090 = CIRCLE ( 'NONE', #13911, 0.4687499999999995600 ) ; +#10091 = CARTESIAN_POINT ( 'NONE', ( 0.2119256669269744300, -0.4094150566479489200, 1.440511179676390300 ) ) ; +#10092 = VECTOR ( 'NONE', #5306, 39.37007874015748100 ) ; +#10093 = DIRECTION ( 'NONE', ( -0.9151887321064256000, -0.4030255384283147900, -0.0000000000000000000 ) ) ; +#10094 = VECTOR ( 'NONE', #11885, 39.37007874015748100 ) ; +#10095 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.2604166666666571400 ) ) ; +#10096 = ORIENTED_EDGE ( 'NONE', *, *, #10716, .T. ) ; +#10097 = DIRECTION ( 'NONE', ( 0.3090169943749516100, -0.9510565162951522000, 0.0000000000000000000 ) ) ; +#10098 = CYLINDRICAL_SURFACE ( 'NONE', #17124, 0.3125000000000008300 ) ; +#10099 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.112847222222219200 ) ) ; +#10100 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.381944444444443500 ) ) ; +#10101 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10102 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, 0.07465277777779014100 ) ) ; +#10103 = CARTESIAN_POINT ( 'NONE', ( -0.4606833792705949400, 0.01743562377178659700, 1.484375000000000200 ) ) ; +#10104 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.090277777777774600 ) ) ; +#10105 = CARTESIAN_POINT ( 'NONE', ( 0.2220333020652539300, -0.2045337087877046000, 0.1523995460770621600 ) ) ; +#10106 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #2710, #13017, #1300, #2781, #7536, #16358, #7353, #17786, #10502, #6053, #14750, #17648, #4571, #16215, #13411, #1680, #1744, #1544, #77, #8834, #11987, #2976, #4633, #3163, #7423, #16422, #13475, #273, #1490, #14943, #12051, #8968, #5979, #10383, #5902, #13211, #4389, #17714, #6114, #11793, #11851, #17844, #19, #4499, #7612, #8899, #14812, #17906 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ), + ( 0.03156327422020686900, 0.03300339455851064600, 0.03372345472766254100, 0.03444351489681443000, 0.03588363523511820700, 0.03660369540427010200, 0.03732375557342199100, 0.03804381574257388600, 0.03876387591172578100, 0.04020399625002955800, 0.04092405641918145400, 0.04164411658833334200, 0.04308423692663712600, 0.04380429709578901500, 0.04452435726494090300, 0.04596447760324468000, 0.04740459794154846400, 0.04812465811070035200, 0.04884471827985224100, 0.05028483861815602500, 0.05172495895645980900, 0.05316507929476359300, 0.05388513946391548800, 0.05460519963306737600 ), + .UNSPECIFIED. ) ; +#10107 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.6840277777777715700 ) ) ; +#10108 = VERTEX_POINT ( 'NONE', #2175 ) ; +#10109 = EDGE_CURVE ( 'NONE', #12110, #772, #2066, .T. ) ; +#10110 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10111 = ORIENTED_EDGE ( 'NONE', *, *, #11585, .T. ) ; +#10112 = ORIENTED_EDGE ( 'NONE', *, *, #8312, .T. ) ; +#10113 = CIRCLE ( 'NONE', #6934, 0.4610132068742565100 ) ; +#10114 = CIRCLE ( 'NONE', #6430, 0.4687499999999996100 ) ; +#10115 = AXIS2_PLACEMENT_3D ( 'NONE', #6759, #15453, #16942 ) ; +#10116 = EDGE_LOOP ( 'NONE', ( #10089, #8569, #15886, #15621 ) ) ; +#10117 = ORIENTED_EDGE ( 'NONE', *, *, #15245, .F. ) ; +#10118 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, 0.1736111111111243200 ) ) ; +#10119 = CARTESIAN_POINT ( 'NONE', ( -0.2849188901020696100, 0.3722200808164498100, 1.593193105402742800 ) ) ; +#10120 = CARTESIAN_POINT ( 'NONE', ( -0.3893737859852251000, 0.2609834291683989500, 1.143750000000000000 ) ) ; +#10121 = AXIS2_PLACEMENT_3D ( 'NONE', #10631, #7478, #10433 ) ; +#10122 = CARTESIAN_POINT ( 'NONE', ( 0.4418741004648792400, -0.1314551491986520900, 1.187613820323599700 ) ) ; +#10123 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.6302083333333266000 ) ) ; +#10124 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #12317, #8855, ( #1862 ) ) ; +#10125 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.076388888888885500 ) ) ; +#10126 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.1319444444444335700 ) ) ; +#10127 = CARTESIAN_POINT ( 'NONE', ( -0.1803732187963043300, 0.4242625117230446300, 1.591590229135180400 ) ) ; +#10128 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#10129 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10130 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.510416666666667000 ) ) ; +#10131 = ORIENTED_EDGE ( 'NONE', *, *, #6991, .T. ) ; +#10132 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.239583333333331300 ) ) ; +#10133 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#10134 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.500000000000000400 ) ) ; +#10135 = ORIENTED_EDGE ( 'NONE', *, *, #420, .F. ) ; +#10136 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.3576388888888801800 ) ) ; +#10137 = VECTOR ( 'NONE', #9130, 39.37007874015748100 ) ; +#10138 = FACE_OUTER_BOUND ( 'NONE', #15232, .T. ) ; +#10139 = ORIENTED_EDGE ( 'NONE', *, *, #14063, .T. ) ; +#10140 = VERTEX_POINT ( 'NONE', #4793 ) ; +#10141 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10142 = VECTOR ( 'NONE', #8144, 39.37007874015748900 ) ; +#10143 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.7673611111111051700 ) ) ; +#10144 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.01041666666665513900 ) ) ; +#10145 = EDGE_CURVE ( 'NONE', #15707, #12614, #17051, .T. ) ; +#10146 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.309027777777776600 ) ) ; +#10147 = CARTESIAN_POINT ( 'NONE', ( 2.037561028606410900E-016, -1.819708359927997900E-016, 3.802149639073257000 ) ) ; +#10148 = EDGE_LOOP ( 'NONE', ( #12129, #18409, #9189, #17707 ) ) ; +#10149 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10150 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.9184027777777733500 ) ) ; +#10151 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323597500 ) ) ; +#10152 = VERTEX_POINT ( 'NONE', #8093 ) ; +#10153 = ADVANCED_FACE ( 'NONE', ( #15643 ), #18337, .F. ) ; +#10154 = ORIENTED_EDGE ( 'NONE', *, *, #1036, .T. ) ; +#10155 = VECTOR ( 'NONE', #2821, 39.37007874015748100 ) ; +#10156 = LINE ( 'NONE', #11083, #9697 ) ; +#10157 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.7118055555555493600 ) ) ; +#10158 = ORIENTED_EDGE ( 'NONE', *, *, #2436, .T. ) ; +#10159 = ORIENTED_EDGE ( 'NONE', *, *, #8731, .T. ) ; +#10160 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.038194444444441100 ) ) ; +#10161 = AXIS2_PLACEMENT_3D ( 'NONE', #2413, #3900, #16975 ) ; +#10162 = CIRCLE ( 'NONE', #12775, 0.4610132068742565100 ) ; +#10163 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.489583333333333700 ) ) ; +#10164 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.7986111111111056100 ) ) ; +#10165 = DIRECTION ( 'NONE', ( 0.8306683619109839200, -0.5567675210715170600, 0.0000000000000000000 ) ) ; +#10166 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676385400 ) ) ; +#10167 = EDGE_LOOP ( 'NONE', ( #11787, #3015, #18837, #16186, #8982, #9932, #2914 ) ) ; +#10168 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.005208333333329500 ) ) ; +#10169 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.343749999999999100 ) ) ; +#10170 = ORIENTED_EDGE ( 'NONE', *, *, #5142, .T. ) ; +#10171 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10172 = DIRECTION ( 'NONE', ( -0.1697056182357979700, 0.03679256373578025000, 0.9848077530122080200 ) ) ; +#10173 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, 0.01215277777778964300 ) ) ; +#10174 = DIRECTION ( 'NONE', ( -0.7025573672080109900, -0.7116271114718353300, 0.0000000000000000000 ) ) ; +#10175 = EDGE_CURVE ( 'NONE', #4048, #3890, #16332, .T. ) ; +#10176 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.083333333333329900 ) ) ; +#10177 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#10178 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10179 = ORIENTED_EDGE ( 'NONE', *, *, #10733, .F. ) ; +#10180 = CIRCLE ( 'NONE', #5288, 0.4687500000000000000 ) ; +#10181 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.6805555555555493600 ) ) ; +#10182 = EDGE_LOOP ( 'NONE', ( #13449, #2970, #4841, #11733, #16435, #2150 ) ) ; +#10183 = EDGE_CURVE ( 'NONE', #11143, #18140, #8330, .T. ) ; +#10184 = DIRECTION ( 'NONE', ( 0.2243975804000434600, -0.9744976787610149000, 0.0000000000000000000 ) ) ; +#10185 = CARTESIAN_POINT ( 'NONE', ( -9.088771521759393300E-017, 2.576225103274171400E-016, -1.174024639073285600 ) ) ; +#10186 = VERTEX_POINT ( 'NONE', #14738 ) ; +#10187 = ORIENTED_EDGE ( 'NONE', *, *, #4186, .F. ) ; +#10188 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.5677083333333261500 ) ) ; +#10189 = ORIENTED_EDGE ( 'NONE', *, *, #5159, .T. ) ; +#10190 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.01388888888890092700 ) ) ; +#10191 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.2118055555555452600 ) ) ; +#10192 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10193 = FACE_OUTER_BOUND ( 'NONE', #3208, .T. ) ; +#10194 = ADVANCED_FACE ( 'NONE', ( #12206 ), #1833, .T. ) ; +#10195 = CARTESIAN_POINT ( 'NONE', ( -0.1803732187963012500, -0.4242625117230460200, 1.143750000000000000 ) ) ; +#10196 = ORIENTED_EDGE ( 'NONE', *, *, #8468, .F. ) ; +#10197 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#10198 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.291666666666665000 ) ) ; +#10199 = CARTESIAN_POINT ( 'NONE', ( -0.2615750128104660200, 0.09530949223337348300, 0.08644668322785589700 ) ) ; +#10200 = VERTEX_POINT ( 'NONE', #17521 ) ; +#10201 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#10202 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.461805555555555600 ) ) ; +#10203 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.2986111111111018300 ) ) ; +#10204 = CARTESIAN_POINT ( 'NONE', ( -0.01171868954685640700, -0.4686010753596986400, 1.143750000000000000 ) ) ; +#10205 = ORIENTED_EDGE ( 'NONE', *, *, #4391, .F. ) ; +#10206 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.7326388888888827300 ) ) ; +#10207 = EDGE_CURVE ( 'NONE', #16653, #13180, #12423, .T. ) ; +#10208 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #13339, #17781, #12047, #391, #10694, #6109, #7607, #1994, #3228 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6136363636363636500, 0.6174242424242424300, 0.6212121212121212200, 0.6250000000000000000, 0.6287878787878787800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#10209 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.315972222222221000 ) ) ; +#10210 = EDGE_LOOP ( 'NONE', ( #3483, #3725, #12685, #11995 ) ) ; +#10211 = EDGE_CURVE ( 'NONE', #5549, #4288, #3908, .T. ) ; +#10212 = AXIS2_PLACEMENT_3D ( 'NONE', #18781, #8362, #18665 ) ; +#10213 = FACE_OUTER_BOUND ( 'NONE', #8222, .T. ) ; +#10214 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10215 = EDGE_LOOP ( 'NONE', ( #5072, #4362, #15458, #180 ) ) ; +#10216 = PLANE ( 'NONE', #6264 ) ; +#10217 = PERSON_AND_ORGANIZATION_ROLE ( 'design_owner' ) ; +#10218 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.8628472222222176600 ) ) ; +#10219 = ORIENTED_EDGE ( 'NONE', *, *, #15628, .F. ) ; +#10220 = CARTESIAN_POINT ( 'NONE', ( 0.3829490853735647600, 0.2566771803726157200, 1.440511179676369000 ) ) ; +#10221 = CARTESIAN_POINT ( 'NONE', ( -0.3535953843793227500, -0.3077285600096919000, 1.593375490995827300 ) ) ; +#10222 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.128472222222219700 ) ) ; +#10223 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.319444444444443500 ) ) ; +#10224 = ORIENTED_EDGE ( 'NONE', *, *, #12946, .F. ) ; +#10225 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.003472222222210540800 ) ) ; +#10226 = VERTEX_POINT ( 'NONE', #10045 ) ; +#10227 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.9027777777777732400 ) ) ; +#10228 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.4618055555555473600 ) ) ; +#10229 = DIRECTION ( 'NONE', ( 0.03782022621434159800, 0.9992845593168625500, -0.0000000000000000000 ) ) ; +#10230 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10231 = ORIENTED_EDGE ( 'NONE', *, *, #8596, .F. ) ; +#10232 = EDGE_CURVE ( 'NONE', #15511, #12530, #4586, .T. ) ; +#10233 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.9357638888888845100 ) ) ; +#10234 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.159722222222219400 ) ) ; +#10235 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676401200 ) ) ; +#10236 = CARTESIAN_POINT ( 'NONE', ( -0.4289947181748895400, 0.1889182211382664800, 1.143750000000000000 ) ) ; +#10237 = AXIS2_PLACEMENT_3D ( 'NONE', #13877, #10854, #3438 ) ; +#10238 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.295138888888887100 ) ) ; +#10239 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10240 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10242 = EDGE_CURVE ( 'NONE', #10624, #10296, #10578, .T. ) ; +#10241 = CYLINDRICAL_SURFACE ( 'NONE', #14025, 0.4610132068742565100 ) ; +#10243 = AXIS2_PLACEMENT_3D ( 'NONE', #1229, #2768, #5583 ) ; +#10244 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #7781, #1852, #7658, #15107, #9265, #6297, #3390, #18086, #14985, #13514, #6160, #7716, #317, #12226, #440, #12031, #15053, #10739, #17958, #9136, #10617, #6227, #18028, #19023, #1639, #3253, #12265, #17185, #4550, #10827, #15685, #8894, #13470, #19064, #13407, #10435, #13, #1428, #1616, #13207, #3158, #73, #10251, #16151 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ), + ( 0.07532901054214910500, 0.07674985233352524200, 0.07817069412490139400, 0.07888111502058946200, 0.07959153591627753100, 0.08101237770765368200, 0.08243321949902981900, 0.08314364039471788800, 0.08385406129040595700, 0.08527490308178209400, 0.08598532397747017700, 0.08669574487315824500, 0.08811658666453438300, 0.08953742845591052000, 0.09095827024728667100, 0.09237911203866280800, 0.09379995383003896000, 0.09451037472572702800, 0.09522079562141509700, 0.09664163741279124800, 0.09735205830847931700, 0.09806247920416738500 ), + .UNSPECIFIED. ) ; +#10245 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.4583333333333254900 ) ) ; +#10246 = ORIENTED_EDGE ( 'NONE', *, *, #2742, .T. ) ; +#10247 = FACE_OUTER_BOUND ( 'NONE', #14952, .T. ) ; +#10248 = ORIENTED_EDGE ( 'NONE', *, *, #13422, .F. ) ; +#10249 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.9166666666666621900 ) ) ; +#10250 = ADVANCED_FACE ( 'NONE', ( #5280 ), #18875, .F. ) ; +#10251 = CARTESIAN_POINT ( 'NONE', ( -0.3017511435548950200, 0.07749536928500286300, 0.1789945203521079200 ) ) ; +#10252 = VECTOR ( 'NONE', #16493, 39.37007874015748100 ) ; +#10253 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.07291666666667913400 ) ) ; +#10254 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.06944444444443306800 ) ) ; +#10255 = DIRECTION ( 'NONE', ( 1.000000000000000000, -4.440892098500626800E-014, 0.0000000000000000000 ) ) ; +#10256 = PLANE ( 'NONE', #15605 ) ; +#10257 = EDGE_CURVE ( 'NONE', #9544, #7313, #11739, .T. ) ; +#10258 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.270833333333331300 ) ) ; +#10259 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#10260 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.576388888888889700 ) ) ; +#10261 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.4548611111111031700 ) ) ; +#10262 = LINE ( 'NONE', #1492, #11862 ) ; +#10263 = ORIENTED_EDGE ( 'NONE', *, *, #10109, .T. ) ; +#10264 = CARTESIAN_POINT ( 'NONE', ( 0.2571473233083433300, 0.1519180894634483100, 0.1422236041067869400 ) ) ; +#10265 = FACE_OUTER_BOUND ( 'NONE', #9675, .T. ) ; +#10266 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.8888888888888839500 ) ) ; +#10267 = AXIS2_PLACEMENT_3D ( 'NONE', #6173, #14860, #17901 ) ; +#10268 = CYLINDRICAL_SURFACE ( 'NONE', #14489, 0.3125000000000008300 ) ; +#10269 = CARTESIAN_POINT ( 'NONE', ( -0.08281349060214697500, -0.2408627435031303900, 1.528399624464272800 ) ) ; +#10270 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10271 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#10272 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.015624999999996400 ) ) ; +#10273 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10274 = LINE ( 'NONE', #3522, #3124 ) ; +#10275 = ORIENTED_EDGE ( 'NONE', *, *, #3911, .T. ) ; +#10276 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.038194444444440900 ) ) ; +#10277 = DIRECTION ( 'NONE', ( 0.3090169943749515600, -0.9510565162951522000, 0.0000000000000000000 ) ) ; +#10278 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.9722222222222183200 ) ) ; +#10279 = EDGE_CURVE ( 'NONE', #5335, #15003, #12884, .T. ) ; +#10280 = LINE ( 'NONE', #9788, #1987 ) ; +#10281 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.190972222222220300 ) ) ; +#10282 = ADVANCED_FACE ( 'NONE', ( #13123 ), #5492, .T. ) ; +#10283 = ORIENTED_EDGE ( 'NONE', *, *, #7273, .T. ) ; +#10284 = DIRECTION ( 'NONE', ( 0.8306683619109804800, 0.5567675210715225000, 0.0000000000000000000 ) ) ; +#10285 = LINE ( 'NONE', #7403, #4745 ) ; +#10286 = DIRECTION ( 'NONE', ( -0.5358267949790064300, 0.8443279255020087500, 0.0000000000000000000 ) ) ; +#10287 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.9843749999999960000 ) ) ; +#10288 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.135416666666663900 ) ) ; +#10289 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#10290 = CARTESIAN_POINT ( 'NONE', ( -0.3293220670067051300, 0.3335734876985810800, 1.143750000000000000 ) ) ; +#10291 = CARTESIAN_POINT ( 'NONE', ( 0.2360194556738149100, 0.4049927308685899500, 1.143750000000000000 ) ) ; +#10292 = CARTESIAN_POINT ( 'NONE', ( -1.968368661174697500E-016, 1.356237140728361400E-016, 3.802149639073333800 ) ) ; +#10293 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.8923611111111065000 ) ) ; +#10294 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.06944444444445682700 ) ) ; +#10295 = CARTESIAN_POINT ( 'NONE', ( 0.2873292891649794600, -0.09622871153831522000, 0.1555050283172057200 ) ) ; +#10296 = VERTEX_POINT ( 'NONE', #6047 ) ; +#10297 = CIRCLE ( 'NONE', #10350, 0.4687475818742580200 ) ; +#10298 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.3680555555555469200 ) ) ; +#10299 = VECTOR ( 'NONE', #13528, 39.37007874015748100 ) ; +#10300 = LINE ( 'NONE', #8026, #11698 ) ; +#10301 = ORIENTED_EDGE ( 'NONE', *, *, #3816, .T. ) ; +#10302 = ORIENTED_EDGE ( 'NONE', *, *, #3154, .F. ) ; +#10303 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.8541666666666616300 ) ) ; +#10304 = VECTOR ( 'NONE', #3674, 39.37007874015748100 ) ; +#10305 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.4027777777777693000 ) ) ; +#10306 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#10307 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.1666666666666559700 ) ) ; +#10308 = ORIENTED_EDGE ( 'NONE', *, *, #12067, .F. ) ; +#10309 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.07291666666667913400 ) ) ; +#10310 = CARTESIAN_POINT ( 'NONE', ( 0.2256138930431352000, -0.1630575017674325800, -1.555182555543831200 ) ) ; +#10311 = EDGE_CURVE ( 'NONE', #7829, #8954, #18654, .T. ) ; +#10312 = CARTESIAN_POINT ( 'NONE', ( 0.1589412568245264500, -0.4327480257511592800, 1.591590229135180700 ) ) ; +#10313 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.5208333333333257100 ) ) ; +#10314 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676384800 ) ) ; +#10315 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.274305555555553600 ) ) ; +#10316 = EDGE_CURVE ( 'NONE', #18936, #5300, #7743, .T. ) ; +#10317 = VECTOR ( 'NONE', #18423, 39.37007874015748900 ) ; +#10318 = VECTOR ( 'NONE', #536, 39.37007874015748100 ) ; +#10319 = LINE ( 'NONE', #15524, #16566 ) ; +#10320 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.503472222222222800 ) ) ; +#10321 = ORIENTED_EDGE ( 'NONE', *, *, #12791, .F. ) ; +#10322 = VECTOR ( 'NONE', #3973, 39.37007874015748100 ) ; +#10323 = CYLINDRICAL_SURFACE ( 'NONE', #1418, 0.3125000000000008300 ) ; +#10324 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.1006944444444337200 ) ) ; +#10325 = EDGE_LOOP ( 'NONE', ( #11407, #16281, #11330, #2932 ) ) ; +#10326 = CARTESIAN_POINT ( 'NONE', ( -0.02482158777963698300, 0.3021733183645056700, 0.1546707620028094600 ) ) ; +#10327 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.8576388888888837300 ) ) ; +#10328 = EDGE_LOOP ( 'NONE', ( #4547, #8618, #10743, #1868 ) ) ; +#10329 = ORIENTED_EDGE ( 'NONE', *, *, #17251, .T. ) ; +#10330 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10331 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1546, #4321, #13270, #7355, #14752, #17589, #5906, #10440, #16218 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3106060606060606600, 0.3143939393939394500, 0.3181818181818182300, 0.3219696969696970200, 0.3257575757575758000 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#10332 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#10333 = ORIENTED_EDGE ( 'NONE', *, *, #2436, .F. ) ; +#10334 = ORIENTED_EDGE ( 'NONE', *, *, #15247, .T. ) ; +#10336 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.8802083333333286000 ) ) ; +#10335 = CIRCLE ( 'NONE', #16278, 0.4610132068742565100 ) ; +#10337 = LINE ( 'NONE', #16323, #17467 ) ; +#10338 = ORIENTED_EDGE ( 'NONE', *, *, #2178, .F. ) ; +#10339 = EDGE_CURVE ( 'NONE', #8803, #11021, #678, .T. ) ; +#10340 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#10341 = VECTOR ( 'NONE', #8037, 39.37007874015748100 ) ; +#10342 = EDGE_CURVE ( 'NONE', #16189, #873, #11965, .T. ) ; +#10343 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, 0.1354166666666793400 ) ) ; +#10344 = DIRECTION ( 'NONE', ( 0.004341204441673151600, 0.1735939041298396000, 0.9848077530122088000 ) ) ; +#10345 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.090277777777774800 ) ) ; +#10346 = EDGE_CURVE ( 'NONE', #4820, #12636, #1598, .T. ) ; +#10347 = AXIS2_PLACEMENT_3D ( 'NONE', #5226, #8448, #17277 ) ; +#10348 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.215277777777775900 ) ) ; +#10349 = CARTESIAN_POINT ( 'NONE', ( 0.4592360163321199100, -0.04044079890273023800, 1.440511179676401200 ) ) ; +#10350 = AXIS2_PLACEMENT_3D ( 'NONE', #16811, #11148, #11089 ) ; +#10351 = ORIENTED_EDGE ( 'NONE', *, *, #5387, .T. ) ; +#10352 = ORIENTED_EDGE ( 'NONE', *, *, #15157, .T. ) ; +#10353 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10354 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.104166666666663900 ) ) ; +#10355 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.9114583333333287100 ) ) ; +#10356 = ORIENTED_EDGE ( 'NONE', *, *, #14638, .T. ) ; +#10357 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.246527777777775700 ) ) ; +#10358 = VERTEX_POINT ( 'NONE', #7415 ) ; +#10359 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10360 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10361 = CIRCLE ( 'NONE', #6534, 0.4687475818742556900 ) ; +#10362 = ORIENTED_EDGE ( 'NONE', *, *, #15876, .F. ) ; +#10363 = ORIENTED_EDGE ( 'NONE', *, *, #18610, .T. ) ; +#10364 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10365 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.010416666666662700 ) ) ; +#10366 = CARTESIAN_POINT ( 'NONE', ( 0.3035467048596683900, -0.01959697117223526500, 0.1574060689333204900 ) ) ; +#10367 = FACE_OUTER_BOUND ( 'NONE', #5316, .T. ) ; +#10368 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.4201388888888806200 ) ) ; +#10369 = ADVANCED_FACE ( 'NONE', ( #8986 ), #6902, .T. ) ; +#10370 = EDGE_CURVE ( 'NONE', #7343, #13114, #4367, .T. ) ; +#10371 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10372 = VERTEX_POINT ( 'NONE', #13404 ) ; +#10373 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10374 = ORIENTED_EDGE ( 'NONE', *, *, #13826, .T. ) ; +#10375 = VECTOR ( 'NONE', #8218, 39.37007874015748900 ) ; +#10376 = VECTOR ( 'NONE', #8676, 39.37007874015748100 ) ; +#10377 = ORIENTED_EDGE ( 'NONE', *, *, #18473, .F. ) ; +#10378 = CARTESIAN_POINT ( 'NONE', ( 0.4606833792705951100, -0.01743562377178318300, 1.484375000000000200 ) ) ; +#10379 = ORIENTED_EDGE ( 'NONE', *, *, #15849, .F. ) ; +#10380 = VECTOR ( 'NONE', #8187, 39.37007874015748900 ) ; +#10381 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.1701388888888782400 ) ) ; +#10382 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.1145833333333223500 ) ) ; +#10383 = CARTESIAN_POINT ( 'NONE', ( -0.1636537193083302800, -0.2358885377552603400, 0.1117912426441820100 ) ) ; +#10384 = ADVANCED_FACE ( 'NONE', ( #8503 ), #18202, .T. ) ; +#10385 = PLANE ( 'NONE', #11320 ) ; +#10386 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10387 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.388888888888888000 ) ) ; +#10388 = CARTESIAN_POINT ( 'NONE', ( -0.04632776727398444500, 0.4586795339797642400, 1.440511179676402700 ) ) ; +#10389 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.472222222222222300 ) ) ; +#10390 = ORIENTED_EDGE ( 'NONE', *, *, #4613, .F. ) ; +#10391 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.2256944444444347100 ) ) ; +#10392 = CARTESIAN_POINT ( 'NONE', ( 0.04710524684729982400, 0.4663771630552406300, 1.588758826628429200 ) ) ; +#10393 = VERTEX_POINT ( 'NONE', #8891 ) ; +#10394 = ORIENTED_EDGE ( 'NONE', *, *, #1279, .T. ) ; +#10395 = VECTOR ( 'NONE', #15760, 39.37007874015748100 ) ; +#10396 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.5624999999999924500 ) ) ; +#10397 = ORIENTED_EDGE ( 'NONE', *, *, #7500, .F. ) ; +#10398 = ORIENTED_EDGE ( 'NONE', *, *, #10003, .T. ) ; +#10399 = EDGE_CURVE ( 'NONE', #2792, #18485, #12675, .T. ) ; +#10400 = PLANE ( 'NONE', #13792 ) ; +#10401 = CARTESIAN_POINT ( 'NONE', ( 0.4019321617077192800, -0.2411945954989974700, 1.143750000000000000 ) ) ; +#10402 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.6788194444444380900 ) ) ; +#10403 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10404 = CARTESIAN_POINT ( 'NONE', ( 0.1035406171457185600, -0.2682387518023007200, -1.545999626169845200 ) ) ; +#10405 = CARTESIAN_POINT ( 'NONE', ( -1.376255635688522100E-016, -3.125195627036368300E-016, -1.174024639073233200 ) ) ; +#10406 = EDGE_LOOP ( 'NONE', ( #6315, #8983, #9446, #14241 ) ) ; +#10407 = VERTEX_POINT ( 'NONE', #1737 ) ; +#10408 = DIRECTION ( 'NONE', ( -0.01745011258364788400, -0.1727691615360284800, -0.9848077530122088000 ) ) ; +#10409 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.024305555555552200 ) ) ; +#10410 = AXIS2_PLACEMENT_3D ( 'NONE', #15394, #8069, #13985 ) ; +#10411 = ORIENTED_EDGE ( 'NONE', *, *, #16462, .T. ) ; +#10412 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.166666666666664500 ) ) ; +#10413 = CIRCLE ( 'NONE', #2443, 0.4687475818742588000 ) ; +#10414 = EDGE_LOOP ( 'NONE', ( #238, #8822, #17042, #10625 ) ) ; +#10415 = CARTESIAN_POINT ( 'NONE', ( -5.788237617796993100E-017, 2.669823311248641500E-016, -1.174024639073291600 ) ) ; +#10416 = CARTESIAN_POINT ( 'NONE', ( -0.3953002468276878300, -0.2372148641431544900, 1.592921120922338200 ) ) ; +#10417 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.409722222222221900 ) ) ; +#10418 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#10419 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.9218749999999953400 ) ) ; +#10420 = CARTESIAN_POINT ( 'NONE', ( 0.2849174203000304800, 0.3722181606565389000, 1.484375000000000200 ) ) ; +#10421 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323614800 ) ) ; +#10422 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10423 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.9236111111111065000 ) ) ; +#10424 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#10425 = VERTEX_POINT ( 'NONE', #12045 ) ; +#10426 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.4027777777777694600 ) ) ; +#10427 = EDGE_LOOP ( 'NONE', ( #6660, #18222, #13247, #3477 ) ) ; +#10428 = LINE ( 'NONE', #10664, #18036 ) ; +#10429 = EDGE_LOOP ( 'NONE', ( #15207, #7854, #18611, #16116, #11196, #630 ) ) ; +#10430 = EDGE_CURVE ( 'NONE', #6656, #1434, #16010, .T. ) ; +#10431 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.3142361111111020000 ) ) ; +#10432 = ORIENTED_EDGE ( 'NONE', *, *, #14392, .T. ) ; +#10433 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10434 = AXIS2_PLACEMENT_3D ( 'NONE', #6762, #6823, #6700 ) ; +#10435 = CARTESIAN_POINT ( 'NONE', ( -0.2485926733482838600, 0.1860209920136448900, 0.1760843081155221100 ) ) ; +#10436 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.05555555555554388100 ) ) ; +#10437 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10438 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.01736111111112322400 ) ) ; +#10439 = ORIENTED_EDGE ( 'NONE', *, *, #8363, .T. ) ; +#10440 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.3506944444444354300 ) ) ; +#10441 = PLANE ( 'NONE', #7279 ) ; +#10442 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.440972222222221700 ) ) ; +#10443 = LINE ( 'NONE', #10221, #10672 ) ; +#10444 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.142361111111108500 ) ) ; +#10445 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.381944444444444000 ) ) ; +#10446 = ORIENTED_EDGE ( 'NONE', *, *, #4664, .F. ) ; +#10447 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.1562499999999896200 ) ) ; +#10448 = ORIENTED_EDGE ( 'NONE', *, *, #12339, .F. ) ; +#10449 = EDGE_CURVE ( 'NONE', #15491, #71, #6439, .T. ) ; +#10450 = CARTESIAN_POINT ( 'NONE', ( 0.1465624921458567000, 0.2626723405197982600, 0.1480635288383787600 ) ) ; +#10451 = EDGE_LOOP ( 'NONE', ( #3190, #6685, #17202, #16334 ) ) ; +#10452 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.6388888888888819600 ) ) ; +#10453 = EDGE_CURVE ( 'NONE', #3266, #5994, #5726, .T. ) ; +#10454 = PLANE ( 'NONE', #18477 ) ; +#10455 = EDGE_CURVE ( 'NONE', #9479, #7008, #7589, .T. ) ; +#10456 = ADVANCED_FACE ( 'NONE', ( #3449 ), #13710, .F. ) ; +#10457 = AXIS2_PLACEMENT_3D ( 'NONE', #13390, #13191, #121 ) ; +#10458 = ORIENTED_EDGE ( 'NONE', *, *, #14998, .T. ) ; +#10459 = AXIS2_PLACEMENT_3D ( 'NONE', #3595, #9337, #15123 ) ; +#10460 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -1.444444444444444200 ) ) ; +#10461 = AXIS2_PLACEMENT_3D ( 'NONE', #8922, #15030, #13366 ) ; +#10462 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, 0.04861111111112332400 ) ) ; +#10463 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#10464 = DATE_AND_TIME ( #8389, #11388 ) ; +#10465 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.8142361111111058300 ) ) ; +#10466 = DIRECTION ( 'NONE', ( 0.1697056182357954400, -0.03679256373577970100, 0.9848077530122083500 ) ) ; +#10467 = VERTEX_POINT ( 'NONE', #266 ) ; +#10468 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10469 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.5138888888888812900 ) ) ; +#10470 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, 0.09735266674190148900, 1.535830116458029700 ) ) ; +#10471 = PLANE ( 'NONE', #12702 ) ; +#10472 = DIRECTION ( 'NONE', ( 0.1004911932742605900, -0.9949379478511788400, 0.0000000000000000000 ) ) ; +#10473 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.7708333333333279300 ) ) ; +#10474 = VECTOR ( 'NONE', #911, 39.37007874015748100 ) ; +#10475 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.163194444444442400 ) ) ; +#10476 = ADVANCED_FACE ( 'NONE', ( #9874 ), #15170, .T. ) ; +#10477 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#10478 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.550347222222222800 ) ) ; +#10479 = EDGE_CURVE ( 'NONE', #17941, #15962, #14034, .T. ) ; +#10480 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.7239583333333272600 ) ) ; +#10481 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.07291666666665563800 ) ) ; +#10482 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#10483 = LINE ( 'NONE', #5491, #2641 ) ; +#10484 = DIRECTION ( 'NONE', ( 0.1637561077632644600, 0.05777219726883956600, -0.9848077530122092400 ) ) ; +#10485 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.131944444444441800 ) ) ; +#10486 = CARTESIAN_POINT ( 'NONE', ( -0.2785702042492506600, 0.04711485312387130000, 0.09921240885364400500 ) ) ; +#10487 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.8958333333333283700 ) ) ; +#10488 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#10489 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10490 = LINE ( 'NONE', #4866, #2643 ) ; +#10491 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.5416666666666595200 ) ) ; +#10492 = VECTOR ( 'NONE', #11293, 39.37007874015748900 ) ; +#10493 = CARTESIAN_POINT ( 'NONE', ( -0.1051863658125169600, -0.4567957869192260100, 1.484375000000000200 ) ) ; +#10494 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.2864583333333238800 ) ) ; +#10495 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10496 = CIRCLE ( 'NONE', #2817, 0.4687499999999995600 ) ; +#10497 = ORIENTED_EDGE ( 'NONE', *, *, #17477, .T. ) ; +#10498 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.2361111111111010600 ) ) ; +#10499 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.08333333333332197700 ) ) ; +#10500 = LINE ( 'NONE', #8759, #18347 ) ; +#10501 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, 0.02430555555556781300 ) ) ; +#10502 = CARTESIAN_POINT ( 'NONE', ( 0.2564173558801471400, -0.1445324598876144000, 0.1304301355239990100 ) ) ; +#10503 = VERTEX_POINT ( 'NONE', #12241 ) ; +#10504 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.6059027777777706800 ) ) ; +#10505 = EDGE_CURVE ( 'NONE', #6761, #12681, #18634, .T. ) ; +#10506 = CARTESIAN_POINT ( 'NONE', ( 0.4019342351530901800, 0.2411958397483255400, 1.143750000000000000 ) ) ; +#10507 = DIRECTION ( 'NONE', ( 0.2243975804000435100, -0.9744976787610149000, -0.0000000000000000000 ) ) ; +#10508 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.201388888888886400 ) ) ; +#10509 = LINE ( 'NONE', #5403, #17880 ) ; +#10510 = AXIS2_PLACEMENT_3D ( 'NONE', #3102, #14868, #6248 ) ; +#10511 = CARTESIAN_POINT ( 'NONE', ( -0.4548654901190618500, 0.07503707624389219200, 1.143750000000000000 ) ) ; +#10512 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.413194444444444200 ) ) ; +#10513 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.1805555555555454200 ) ) ; +#10514 = CARTESIAN_POINT ( 'NONE', ( 0.2664414626589772800, 0.1343767686617700400, 0.1414626902874162000 ) ) ; +#10515 = FACE_OUTER_BOUND ( 'NONE', #12052, .T. ) ; +#10516 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.6215277777777708000 ) ) ; +#10517 = AXIS2_PLACEMENT_3D ( 'NONE', #3961, #18702, #6791 ) ; +#10518 = CARTESIAN_POINT ( 'NONE', ( 0.4581049985510772800, -0.09931820485430528600, 1.484375000000000200 ) ) ; +#10519 = LINE ( 'NONE', #11225, #16268 ) ; +#10520 = EDGE_LOOP ( 'NONE', ( #14825, #18925, #5087, #13466 ) ) ; +#10521 = FACE_OUTER_BOUND ( 'NONE', #2243, .T. ) ; +#10522 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.7309027777777719100 ) ) ; +#10523 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#10524 = PLANE ( 'NONE', #7079 ) ; +#10525 = DIRECTION ( 'NONE', ( 0.2728267384564744300, -0.9620631844027720500, 0.0000000000000000000 ) ) ; +#10526 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.8541666666666619700 ) ) ; +#10527 = EDGE_CURVE ( 'NONE', #5921, #14830, #19097, .T. ) ; +#10528 = ORIENTED_EDGE ( 'NONE', *, *, #11853, .F. ) ; +#10529 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.9791666666666629700 ) ) ; +#10530 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10531 = LINE ( 'NONE', #16734, #2920 ) ; +#10532 = CARTESIAN_POINT ( 'NONE', ( 0.2119256669269744000, -0.4094150566479489200, 1.484375000000000200 ) ) ; +#10533 = FACE_OUTER_BOUND ( 'NONE', #7151, .T. ) ; +#10534 = CARTESIAN_POINT ( 'NONE', ( -0.2659575542964041100, -0.3859962976670564500, 1.484375000000000200 ) ) ; +#10535 = VECTOR ( 'NONE', #1510, 39.37007874015748100 ) ; +#10536 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.487847222222222300 ) ) ; +#10537 = VERTEX_POINT ( 'NONE', #18040 ) ; +#10538 = CARTESIAN_POINT ( 'NONE', ( 0.2802162586133554700, -0.3660765293230626700, 1.593193105402742800 ) ) ; +#10539 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.7829861111111052800 ) ) ; +#10541 = EDGE_CURVE ( 'NONE', #8825, #3024, #14703, .T. ) ; +#10540 = CIRCLE ( 'NONE', #4117, 0.4610132068742565100 ) ; +#10542 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.4097222222222136100 ) ) ; +#10543 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.8541666666666616300 ) ) ; +#10544 = DIRECTION ( 'NONE', ( 1.000000000000000000, -6.927791673660976800E-014, 0.0000000000000000000 ) ) ; +#10545 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323600600 ) ) ; +#10546 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10547 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.065972222222218500 ) ) ; +#10548 = AXIS2_PLACEMENT_3D ( 'NONE', #6073, #16234, #12330 ) ; +#10549 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, 0.1215277777777904600 ) ) ; +#10550 = ORIENTED_EDGE ( 'NONE', *, *, #10663, .T. ) ; +#10551 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.2152777777777678300 ) ) ; +#10552 = ADVANCED_FACE ( 'NONE', ( #9655 ), #3476, .F. ) ; +#10553 = ORIENTED_EDGE ( 'NONE', *, *, #3816, .F. ) ; +#10554 = DIRECTION ( 'NONE', ( 0.9430338398216168100, -0.3326968243781375200, 0.0000000000000000000 ) ) ; +#10555 = ORIENTED_EDGE ( 'NONE', *, *, #4098, .T. ) ; +#10556 = LINE ( 'NONE', #14919, #8029 ) ; +#10557 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.3663194444444355900 ) ) ; +#10558 = VECTOR ( 'NONE', #12277, 39.37007874015748100 ) ; +#10559 = CIRCLE ( 'NONE', #8624, 0.4687499999999995600 ) ; +#10560 = VERTEX_POINT ( 'NONE', #16614 ) ; +#10561 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.6753472222222157700 ) ) ; +#10562 = VECTOR ( 'NONE', #14699, 39.37007874015748100 ) ; +#10563 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#10564 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.01388888888890092700 ) ) ; +#10565 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#10566 = CARTESIAN_POINT ( 'NONE', ( 0.2783245660098736000, -0.04351126827509804700, -1.552493920475909800 ) ) ; +#10567 = ADVANCED_FACE ( 'NONE', ( #5702 ), #15619, .T. ) ; +#10568 = EDGE_CURVE ( 'NONE', #18684, #5204, #17515, .T. ) ; +#10569 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.4913194444444364800 ) ) ; +#10570 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.9201388888888845100 ) ) ; +#10571 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.2118055555555455300 ) ) ; +#10572 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.7326388888888828400 ) ) ; +#10573 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.229166666666664300 ) ) ; +#10574 = EDGE_CURVE ( 'NONE', #5928, #12567, #2968, .T. ) ; +#10575 = ORIENTED_EDGE ( 'NONE', *, *, #107, .F. ) ; +#10576 = DIRECTION ( 'NONE', ( -0.1589208555515870500, 0.06998465030130537900, -0.9848077530122088000 ) ) ; +#10577 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.416666666666666300 ) ) ; +#10578 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #11718, #11595, #7282, #4248, #4377, #8829, #16018, #6, #10305 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6439393939393939200, 0.6477272727272727100, 0.6515151515151514900, 0.6553030303030302800, 0.6590909090909090600 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#10579 = AXIS2_PLACEMENT_3D ( 'NONE', #17534, #5713, #11852 ) ; +#10580 = ORIENTED_EDGE ( 'NONE', *, *, #16345, .F. ) ; +#10581 = ORIENTED_EDGE ( 'NONE', *, *, #5287, .T. ) ; +#10582 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.1215277777777672200 ) ) ; +#10583 = VECTOR ( 'NONE', #4881, 39.37007874015748100 ) ; +#10584 = CIRCLE ( 'NONE', #2621, 0.4375000000000000600 ) ; +#10585 = ORIENTED_EDGE ( 'NONE', *, *, #3397, .T. ) ; +#10586 = ORIENTED_EDGE ( 'NONE', *, *, #2057, .T. ) ; +#10587 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676384300 ) ) ; +#10588 = FACE_OUTER_BOUND ( 'NONE', #14700, .T. ) ; +#10589 = ORIENTED_EDGE ( 'NONE', *, *, #11313, .F. ) ; +#10590 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.6527777777777710200 ) ) ; +#10591 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999996100, 0.09735364475126862000, 1.259981494431423600 ) ) ; +#10592 = PLANE ( 'NONE', #3188 ) ; +#10593 = ORIENTED_EDGE ( 'NONE', *, *, #16610, .T. ) ; +#10594 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10595 = EDGE_CURVE ( 'NONE', #4099, #1637, #18416, .T. ) ; +#10596 = CARTESIAN_POINT ( 'NONE', ( 0.2289450687553857800, -0.1908849725316084400, -1.535442139252809500 ) ) ; +#10597 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323597500 ) ) ; +#10598 = ORIENTED_EDGE ( 'NONE', *, *, #6869, .F. ) ; +#10599 = LINE ( 'NONE', #5682, #6207 ) ; +#10600 = FACE_OUTER_BOUND ( 'NONE', #3828, .T. ) ; +#10601 = ORIENTED_EDGE ( 'NONE', *, *, #7228, .T. ) ; +#10602 = VERTEX_POINT ( 'NONE', #6360 ) ; +#10603 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.9687499999999962300 ) ) ; +#10604 = CONICAL_SURFACE ( 'NONE', #4493, 0.4610132068742565100, 0.1745329251994277300 ) ; +#10605 = EDGE_CURVE ( 'NONE', #3523, #3033, #13105, .T. ) ; +#10606 = AXIS2_PLACEMENT_3D ( 'NONE', #10133, #17655, #10201 ) ; +#10607 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.9409722222222181000 ) ) ; +#10608 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.1840277777777674400 ) ) ; +#10609 = AXIS2_PLACEMENT_3D ( 'NONE', #18692, #8585, #2525 ) ; +#10610 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10611 = CARTESIAN_POINT ( 'NONE', ( 0.3477592364557785500, 0.3026494512999817200, 1.593375490995827300 ) ) ; +#10612 = VERTEX_POINT ( 'NONE', #14030 ) ; +#10613 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.8732638888888839500 ) ) ; +#10614 = CARTESIAN_POINT ( 'NONE', ( 0.06919666627599171900, -0.4557905201830936300, 1.588758826628429600 ) ) ; +#10615 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10616 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#10617 = CARTESIAN_POINT ( 'NONE', ( 0.06810821934432008400, 0.2998069605162616600, 0.1677249633170775400 ) ) ; +#10618 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.7743055555555497000 ) ) ; +#10619 = DIRECTION ( 'NONE', ( 0.3912539079287260500, -0.9202827715058561300, 0.0000000000000000000 ) ) ; +#10620 = ORIENTED_EDGE ( 'NONE', *, *, #18383, .F. ) ; +#10621 = VERTEX_POINT ( 'NONE', #2314 ) ; +#10622 = CYLINDRICAL_SURFACE ( 'NONE', #16141, 0.3125000000000008300 ) ; +#10623 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.3194444444444353200 ) ) ; +#10624 = VERTEX_POINT ( 'NONE', #12617 ) ; +#10625 = ORIENTED_EDGE ( 'NONE', *, *, #5363, .T. ) ; +#10626 = VECTOR ( 'NONE', #19101, 39.37007874015748100 ) ; +#10627 = EDGE_CURVE ( 'NONE', #405, #14973, #10335, .T. ) ; +#10628 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#10629 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.2239583333333234600 ) ) ; +#10630 = AXIS2_PLACEMENT_3D ( 'NONE', #10751, #12240, #637 ) ; +#10631 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#10632 = ORIENTED_EDGE ( 'NONE', *, *, #11084, .F. ) ; +#10633 = ORIENTED_EDGE ( 'NONE', *, *, #18713, .T. ) ; +#10634 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10635 = VERTEX_POINT ( 'NONE', #2246 ) ; +#10636 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, 0.1909722222222358100 ) ) ; +#10637 = PLANE ( 'NONE', #15745 ) ; +#10638 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, 0.1076388888889018000 ) ) ; +#10639 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323599100 ) ) ; +#10640 = LINE ( 'NONE', #8766, #18934 ) ; +#10641 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.5538194444444369800 ) ) ; +#10642 = ORIENTED_EDGE ( 'NONE', *, *, #17873, .F. ) ; +#10643 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#10644 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#10645 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#10646 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.065972222222218500 ) ) ; +#10647 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#10648 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#10649 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.215277777777775900 ) ) ; +#10650 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.1527777777777905600 ) ) ; +#10651 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10652 = ORIENTED_EDGE ( 'NONE', *, *, #2555, .F. ) ; +#10653 = ORIENTED_EDGE ( 'NONE', *, *, #13908, .T. ) ; +#10654 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.4965277777777698000 ) ) ; +#10655 = EDGE_CURVE ( 'NONE', #6607, #9997, #6880, .T. ) ; +#10656 = DIRECTION ( 'NONE', ( 1.000000000000000000, 1.776356839400250500E-015, 0.0000000000000000000 ) ) ; +#10657 = ORIENTED_EDGE ( 'NONE', *, *, #16873, .T. ) ; +#10658 = ADVANCED_FACE ( 'NONE', ( #14485 ), #5189, .F. ) ; +#10659 = CYLINDRICAL_SURFACE ( 'NONE', #12325, 0.3125000000000008300 ) ; +#10660 = ORIENTED_EDGE ( 'NONE', *, *, #16191, .F. ) ; +#10661 = ORIENTED_EDGE ( 'NONE', *, *, #8849, .F. ) ; +#10662 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10663 = EDGE_CURVE ( 'NONE', #12364, #1464, #3211, .T. ) ; +#10664 = CARTESIAN_POINT ( 'NONE', ( 1.581384890151860400E-016, 2.635255761331114000E-016, 3.802149639073320900 ) ) ; +#10665 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.8993055555555511400 ) ) ; +#10666 = AXIS2_PLACEMENT_3D ( 'NONE', #7540, #12174, #7615 ) ; +#10667 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.145833333333330800 ) ) ; +#10668 = ORIENTED_EDGE ( 'NONE', *, *, #9722, .F. ) ; +#10669 = ADVANCED_FACE ( 'NONE', ( #13799 ), #18352, .F. ) ; +#10670 = DIRECTION ( 'NONE', ( -0.7025573672080108700, -0.7116271114718353300, -0.0000000000000000000 ) ) ; +#10671 = ORIENTED_EDGE ( 'NONE', *, *, #9273, .T. ) ; +#10672 = VECTOR ( 'NONE', #11566, 39.37007874015748100 ) ; +#10673 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#10674 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.289930555555554000 ) ) ; +#10675 = EDGE_LOOP ( 'NONE', ( #1667, #8118, #17772, #18963 ) ) ; +#10676 = CARTESIAN_POINT ( 'NONE', ( -0.2916799585039242000, -0.07452535541774128700, -1.532657779362318400 ) ) ; +#10677 = ORIENTED_EDGE ( 'NONE', *, *, #12426, .T. ) ; +#10678 = DIRECTION ( 'NONE', ( 0.7862080194966613000, -0.6179619325485490300, 0.0000000000000000000 ) ) ; +#10679 = CARTESIAN_POINT ( 'NONE', ( -0.02299833105747846300, 0.2766438089148111100, 0.08434518424612244500 ) ) ; +#10680 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.7326388888888827300 ) ) ; +#10681 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10682 = LINE ( 'NONE', #3987, #3534 ) ; +#10683 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.1215277777777672200 ) ) ; +#10684 = ORIENTED_EDGE ( 'NONE', *, *, #15019, .T. ) ; +#10685 = EDGE_CURVE ( 'NONE', #6877, #9090, #10584, .T. ) ; +#10686 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#10687 = EDGE_CURVE ( 'NONE', #3498, #4588, #6654, .T. ) ; +#10688 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.2517361111111015600 ) ) ; +#10689 = EDGE_LOOP ( 'NONE', ( #15679, #5092, #5868, #10867 ) ) ; +#10690 = CALENDAR_DATE ( 2024, 16, 6 ) ; +#10691 = VERTEX_POINT ( 'NONE', #7067 ) ; +#10692 = CARTESIAN_POINT ( 'NONE', ( 0.2866875028257593900, 0.01919413529157556000, 0.1124124977812125000 ) ) ; +#10693 = AXIS2_PLACEMENT_3D ( 'NONE', #15076, #15135, #4950 ) ; +#10694 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.8958333333333287100 ) ) ; +#10695 = FACE_OUTER_BOUND ( 'NONE', #8336, .T. ) ; +#10696 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.2083333333333470000 ) ) ; +#10697 = CARTESIAN_POINT ( 'NONE', ( 0.4019342351530901800, 0.2411958397483255400, 1.592921120922338200 ) ) ; +#10698 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10699 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10700 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.5434027777777702400 ) ) ; +#10701 = PLANE ( 'NONE', #12914 ) ; +#10702 = CARTESIAN_POINT ( 'NONE', ( -4.168601147103806400E-017, -2.526954538747225800E-016, -1.174024639073239600 ) ) ; +#10703 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.2083333333333232400 ) ) ; +#10704 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.163194444444441800 ) ) ; +#10705 = ORIENTED_EDGE ( 'NONE', *, *, #14011, .F. ) ; +#10706 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10707 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.322916666666665600 ) ) ; +#10708 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.07291666666667885600 ) ) ; +#10709 = VECTOR ( 'NONE', #7125, 39.37007874015748900 ) ; +#10710 = ORIENTED_EDGE ( 'NONE', *, *, #16572, .T. ) ; +#10711 = EDGE_CURVE ( 'NONE', #18933, #12827, #18597, .T. ) ; +#10712 = DIRECTION ( 'NONE', ( -0.6661089358369561800, 0.7458544667682548400, 0.0000000000000000000 ) ) ; +#10713 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.3124999999999904500 ) ) ; +#10714 = EDGE_CURVE ( 'NONE', #14411, #15799, #1820, .T. ) ; +#10716 = EDGE_CURVE ( 'NONE', #14594, #14458, #15164, .T. ) ; +#10715 = FACE_OUTER_BOUND ( 'NONE', #432, .T. ) ; +#10717 = AXIS2_PLACEMENT_3D ( 'NONE', #5573, #5437, #14345 ) ; +#10718 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.381944444444443800 ) ) ; +#10719 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.013888888888885300 ) ) ; +#10720 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10721 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#10722 = LINE ( 'NONE', #8387, #5846 ) ; +#10723 = ORIENTED_EDGE ( 'NONE', *, *, #7895, .F. ) ; +#10724 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, -0.09683834193504732600, 1.535721952507057300 ) ) ; +#10725 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.5381944444444372000 ) ) ; +#10726 = LINE ( 'NONE', #2952, #3350 ) ; +#10727 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.138888888888886400 ) ) ; +#10728 = DIRECTION ( 'NONE', ( -0.1729787697315201800, -0.01523268949379768900, -0.9848077530122085800 ) ) ; +#10729 = VECTOR ( 'NONE', #18571, 39.37007874015748900 ) ; +#10730 = CARTESIAN_POINT ( 'NONE', ( 0.1051863658125137500, 0.4567957869192266200, 1.143750000000000000 ) ) ; +#10731 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.362847222222221000 ) ) ; +#10732 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.3541666666666578000 ) ) ; +#10733 = EDGE_CURVE ( 'NONE', #17325, #17941, #6422, .T. ) ; +#10734 = CARTESIAN_POINT ( 'NONE', ( -0.09972163726418921400, -0.2899446748914530400, -1.527083365456475900 ) ) ; +#10735 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10736 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#10737 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.5659722222222151000 ) ) ; +#10738 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#10739 = CARTESIAN_POINT ( 'NONE', ( 0.1212231267670427800, 0.2824716001955576200, 0.1663658524503844300 ) ) ; +#10740 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.8090277777777722400 ) ) ; +#10741 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10742 = VECTOR ( 'NONE', #12404, 39.37007874015747400 ) ; +#10743 = ORIENTED_EDGE ( 'NONE', *, *, #9506, .F. ) ; +#10744 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.2326388888888792900 ) ) ; +#10745 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #3552, #96, ( #13461 ) ) ; +#10746 = ADVANCED_FACE ( 'NONE', ( #18872 ), #2733, .T. ) ; +#10747 = VECTOR ( 'NONE', #7541, 39.37007874015748100 ) ; +#10748 = ORIENTED_EDGE ( 'NONE', *, *, #8844, .T. ) ; +#10749 = LINE ( 'NONE', #16135, #19038 ) ; +#10750 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.1822916666666564200 ) ) ; +#10751 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.590308733529502500 ) ) ; +#10752 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10753 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.1666666666666800100 ) ) ; +#10754 = EDGE_LOOP ( 'NONE', ( #17321, #14288, #2610, #10642 ) ) ; +#10755 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#10756 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.1388888888889019100 ) ) ; +#10757 = VECTOR ( 'NONE', #13682, 39.37007874015748100 ) ; +#10758 = ADVANCED_FACE ( 'NONE', ( #2046 ), #7818, .T. ) ; +#10759 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.3107638888888794000 ) ) ; +#10760 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10761 = EDGE_CURVE ( 'NONE', #12673, #14830, #3664, .T. ) ; +#10762 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.2013888888888786500 ) ) ; +#10763 = CARTESIAN_POINT ( 'NONE', ( 0.2360206732261691000, 0.4049948201025113700, 1.592561465728329600 ) ) ; +#10764 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10765 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.076388888888885500 ) ) ; +#10766 = VECTOR ( 'NONE', #11791, 39.37007874015748900 ) ; +#10767 = CARTESIAN_POINT ( 'NONE', ( 0.1035066076939330100, -0.2289155667798151700, 1.525865939309398100 ) ) ; +#10768 = CIRCLE ( 'NONE', #5201, 0.4610132068742565100 ) ; +#10769 = ADVANCED_FACE ( 'NONE', ( #5260 ), #13579, .T. ) ; +#10770 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.7604166666666610800 ) ) ; +#10771 = EDGE_LOOP ( 'NONE', ( #18839, #8028, #6273, #2603 ) ) ; +#10772 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.194444444444442400 ) ) ; +#10773 = VERTEX_POINT ( 'NONE', #10349 ) ; +#10774 = VECTOR ( 'NONE', #1471, 39.37007874015748900 ) ; +#10775 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, 0.03125000000001185900 ) ) ; +#10776 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.4201388888888804000 ) ) ; +#10777 = ORIENTED_EDGE ( 'NONE', *, *, #16795, .T. ) ; +#10778 = PLANE ( 'NONE', #17367 ) ; +#10779 = LINE ( 'NONE', #18270, #11917 ) ; +#10780 = CIRCLE ( 'NONE', #16318, 0.4687475818742551400 ) ; +#10781 = CIRCLE ( 'NONE', #344, 0.4610132068742565100 ) ; +#10782 = EDGE_LOOP ( 'NONE', ( #7454, #9292, #9210, #15343 ) ) ; +#10783 = CARTESIAN_POINT ( 'NONE', ( 0.07035793515935795400, 0.4634396653935775600, 1.484375000000000200 ) ) ; +#10784 = DIRECTION ( 'NONE', ( -0.1500969283399770900, 0.9886712861729645100, 0.0000000000000000000 ) ) ; +#10785 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#10786 = CONICAL_SURFACE ( 'NONE', #10461, 0.2708333333333339300, 0.7853981633974491700 ) ; +#10787 = VECTOR ( 'NONE', #6715, 39.37007874015748900 ) ; +#10788 = VERTEX_POINT ( 'NONE', #7315 ) ; +#10789 = PLANE ( 'NONE', #2582 ) ; +#10790 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.6458333333333269300 ) ) ; +#10791 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.121527777777775200 ) ) ; +#10792 = VERTEX_POINT ( 'NONE', #5943 ) ; +#10793 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #12620, #10891, #14037, #776, #18303, #2068, #2248, #5003, #16876 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5681818181818181200, 0.5719696969696970200, 0.5757575757575756900, 0.5795454545454545900, 0.5833333333333333700 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#10794 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10795 = ORIENTED_EDGE ( 'NONE', *, *, #8707, .T. ) ; +#10796 = CARTESIAN_POINT ( 'NONE', ( -0.4019321617077170100, 0.2411945954989998800, 1.143750000000000000 ) ) ; +#10797 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.307291666666665200 ) ) ; +#10798 = EDGE_CURVE ( 'NONE', #9148, #5561, #4896, .T. ) ; +#10799 = ORIENTED_EDGE ( 'NONE', *, *, #12998, .F. ) ; +#10800 = ORIENTED_EDGE ( 'NONE', *, *, #12322, .T. ) ; +#10801 = LINE ( 'NONE', #4366, #6419 ) ; +#10802 = CARTESIAN_POINT ( 'NONE', ( -0.3134792788290102800, 3.839013954169680400E-017, 1.562500000000000000 ) ) ; +#10803 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10804 = VECTOR ( 'NONE', #10752, 39.37007874015748100 ) ; +#10805 = DIRECTION ( 'NONE', ( -0.1637561077632679900, 0.05777219726883705400, 0.9848077530122088000 ) ) ; +#10806 = ORIENTED_EDGE ( 'NONE', *, *, #1989, .T. ) ; +#10807 = CARTESIAN_POINT ( 'NONE', ( -0.07035757220611783800, 0.4634372746620864500, 1.484375000000000200 ) ) ; +#10808 = ORIENTED_EDGE ( 'NONE', *, *, #4712, .T. ) ; +#10809 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.7986111111111055000 ) ) ; +#10810 = AXIS2_PLACEMENT_3D ( 'NONE', #1392, #18906, #5736 ) ; +#10811 = VECTOR ( 'NONE', #8688, 39.37007874015748100 ) ; +#10812 = EDGE_LOOP ( 'NONE', ( #19122, #15001, #10275, #1174 ) ) ; +#10813 = ORIENTED_EDGE ( 'NONE', *, *, #6967, .F. ) ; +#10814 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.1961805555555453100 ) ) ; +#10815 = CARTESIAN_POINT ( 'NONE', ( 0.4548654901190608600, 0.07503707624389872900, 1.589564174286821800 ) ) ; +#10816 = CARTESIAN_POINT ( 'NONE', ( 0.2582619125056500600, 0.1294326172093853100, 0.1153538884410462700 ) ) ; +#10817 = VERTEX_POINT ( 'NONE', #5751 ) ; +#10818 = EDGE_LOOP ( 'NONE', ( #17950, #1102, #6674, #5745 ) ) ; +#10819 = VECTOR ( 'NONE', #11575, 39.37007874015748100 ) ; +#10820 = VECTOR ( 'NONE', #13524, 39.37007874015748100 ) ; +#10821 = ORIENTED_EDGE ( 'NONE', *, *, #7575, .F. ) ; +#10822 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#10823 = ORIENTED_EDGE ( 'NONE', *, *, #13907, .F. ) ; +#10824 = EDGE_CURVE ( 'NONE', #7872, #4557, #10114, .T. ) ; +#10825 = FACE_OUTER_BOUND ( 'NONE', #1577, .T. ) ; +#10826 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.09375000000001264300 ) ) ; +#10827 = CARTESIAN_POINT ( 'NONE', ( -0.1498553111382891800, 0.2711471319432181600, 0.1730406349814443100 ) ) ; +#10828 = CARTESIAN_POINT ( 'NONE', ( -1.376255635688542000E-017, 3.125195627036359500E-017, -1.174024639073326000 ) ) ; +#10829 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#10830 = EDGE_CURVE ( 'NONE', #18912, #3978, #14244, .T. ) ; +#10831 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.3177083333333240400 ) ) ; +#10832 = CARTESIAN_POINT ( 'NONE', ( -2.628210380088966000E-016, -7.453211780702846200E-017, 3.802149639073269400 ) ) ; +#10833 = DIRECTION ( 'NONE', ( -0.1713325394261285600, 0.02826394418405412900, -0.9848077530122082400 ) ) ; +#10834 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.2986111111111015600 ) ) ; +#10835 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.9895833333333292600 ) ) ; +#10836 = EDGE_CURVE ( 'NONE', #9090, #6877, #4802, .T. ) ; +#10837 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#10838 = AXIS2_PLACEMENT_3D ( 'NONE', #10948, #9480, #2133 ) ; +#10839 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.173611111111108900 ) ) ; +#10840 = AXIS2_PLACEMENT_3D ( 'NONE', #229, #6201, #16384 ) ; +#10841 = EDGE_LOOP ( 'NONE', ( #7822, #940, #17313, #7012 ) ) ; +#10842 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.02430555555556727200 ) ) ; +#10843 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10844 = ORIENTED_EDGE ( 'NONE', *, *, #5360, .T. ) ; +#10845 = ORIENTED_EDGE ( 'NONE', *, *, #12085, .T. ) ; +#10846 = LINE ( 'NONE', #15303, #5740 ) ; +#10847 = FACE_OUTER_BOUND ( 'NONE', #5513, .T. ) ; +#10848 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.2777777777777680200 ) ) ; +#10849 = ORIENTED_EDGE ( 'NONE', *, *, #3319, .F. ) ; +#10850 = ORIENTED_EDGE ( 'NONE', *, *, #8348, .T. ) ; +#10851 = VECTOR ( 'NONE', #16945, 39.37007874015748100 ) ; +#10852 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 3.061616973349193300E-017, 1.525850221280107700 ) ) ; +#10853 = ADVANCED_FACE ( 'NONE', ( #12654 ), #19105, .F. ) ; +#10854 = DIRECTION ( 'NONE', ( -0.5567675210715282700, 0.8306683619109767000, 0.0000000000000000000 ) ) ; +#10855 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.7569444444444385400 ) ) ; +#10856 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.4687499999999920100 ) ) ; +#10857 = EDGE_CURVE ( 'NONE', #2533, #902, #5931, .T. ) ; +#10858 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10859 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676385400 ) ) ; +#10860 = ORIENTED_EDGE ( 'NONE', *, *, #8976, .F. ) ; +#10861 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.465277777777777700 ) ) ; +#10862 = DIRECTION ( 'NONE', ( 0.07982527466453774600, -0.1542128889936764700, 0.9848077530122085800 ) ) ; +#10863 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10864 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.6736111111111049400 ) ) ; +#10865 = ORIENTED_EDGE ( 'NONE', *, *, #4047, .F. ) ; +#10866 = EDGE_CURVE ( 'NONE', #1206, #14038, #12340, .T. ) ; +#10867 = ORIENTED_EDGE ( 'NONE', *, *, #16014, .F. ) ; +#10868 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.7430555555555499200 ) ) ; +#10869 = VECTOR ( 'NONE', #2330, 39.37007874015748100 ) ; +#10870 = ADVANCED_FACE ( 'NONE', ( #7342 ), #13333, .T. ) ; +#10871 = ORIENTED_EDGE ( 'NONE', *, *, #7775, .F. ) ; +#10872 = VERTEX_POINT ( 'NONE', #1329 ) ; +#10873 = CARTESIAN_POINT ( 'NONE', ( 2.532093440179759500E-016, 3.844143680069565900E-017, -1.174024639073288900 ) ) ; +#10874 = AXIS2_PLACEMENT_3D ( 'NONE', #16687, #9549, #13724 ) ; +#10875 = ADVANCED_FACE ( 'NONE', ( #1358 ), #11631, .F. ) ; +#10876 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.460069444444444600 ) ) ; +#10877 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.124999999999997100 ) ) ; +#10878 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.447916666666666500 ) ) ; +#10879 = DIRECTION ( 'NONE', ( 1.000000000000000000, 3.552713678800501600E-014, 0.0000000000000000000 ) ) ; +#10880 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10881 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.7812499999999941200 ) ) ; +#10882 = VERTEX_POINT ( 'NONE', #7209 ) ; +#10883 = ORIENTED_EDGE ( 'NONE', *, *, #11065, .T. ) ; +#10884 = EDGE_LOOP ( 'NONE', ( #15159, #9623, #11760, #11024 ) ) ; +#10885 = LINE ( 'NONE', #10511, #12730 ) ; +#10886 = VERTEX_POINT ( 'NONE', #11764 ) ; +#10887 = EDGE_CURVE ( 'NONE', #10372, #10973, #2281, .T. ) ; +#10888 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.1579861111111006400 ) ) ; +#10889 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10890 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#10891 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.8020833333333279300 ) ) ; +#10892 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.369791666666665900 ) ) ; +#10893 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#10894 = CARTESIAN_POINT ( 'NONE', ( -0.4505462270817879900, 0.09767944602039871400, 1.589564174286821800 ) ) ; +#10895 = ORIENTED_EDGE ( 'NONE', *, *, #7981, .T. ) ; +#10896 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.2795138888888793500 ) ) ; +#10897 = CARTESIAN_POINT ( 'NONE', ( 0.4581073617749767400, 0.09931871720662778500, 1.484375000000000200 ) ) ; +#10898 = DIRECTION ( 'NONE', ( 1.000000000000000000, 2.309263891220325900E-014, 0.0000000000000000000 ) ) ; +#10899 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.2013888888888786500 ) ) ; +#10900 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.9861111111111069400 ) ) ; +#10901 = VERTEX_POINT ( 'NONE', #427 ) ; +#10902 = CARTESIAN_POINT ( 'NONE', ( 0.04096905157690256000, -0.2650216416384439900, 1.535768732448054900 ) ) ; +#10903 = VECTOR ( 'NONE', #3955, 39.37007874015748100 ) ; +#10904 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.9965277777777741300 ) ) ; +#10905 = EDGE_LOOP ( 'NONE', ( #14805, #14242, #9067, #12514 ) ) ; +#10906 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.02083333333334497200 ) ) ; +#10907 = ORIENTED_EDGE ( 'NONE', *, *, #16941, .T. ) ; +#10908 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#10909 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.2395833333333233500 ) ) ; +#10910 = EDGE_CURVE ( 'NONE', #4095, #13674, #17705, .T. ) ; +#10911 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.152777777777775200 ) ) ; +#10912 = CARTESIAN_POINT ( 'NONE', ( -0.1257767296168636200, 0.4435238338571811400, 1.187613820323598600 ) ) ; +#10913 = ORIENTED_EDGE ( 'NONE', *, *, #5467, .F. ) ; +#10914 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.6180555555555484700 ) ) ; +#10915 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.8124999999999946700 ) ) ; +#10916 = CARTESIAN_POINT ( 'NONE', ( -0.1803732187963043300, 0.4242625117230446300, 1.440511179676385900 ) ) ; +#10917 = ORIENTED_EDGE ( 'NONE', *, *, #15348, .T. ) ; +#10918 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10919 = EDGE_CURVE ( 'NONE', #6286, #3414, #3887, .T. ) ; +#10920 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323621500 ) ) ; +#10921 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#10922 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.6527777777777714600 ) ) ; +#10923 = VECTOR ( 'NONE', #18482, 39.37007874015748100 ) ; +#10924 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.7812499999999947800 ) ) ; +#10925 = ORIENTED_EDGE ( 'NONE', *, *, #11383, .F. ) ; +#10926 = ORIENTED_EDGE ( 'NONE', *, *, #12085, .F. ) ; +#10927 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#10928 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.324652777777776600 ) ) ; +#10929 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #4204, #17400, #6980, #15908, #10057, #2783, #18885, #1242, #17271 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.08333333333333337000, 0.08712121212121215500, 0.09090909090909093900, 0.09469696969696972400, 0.09848484848484850800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#10930 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.496527777777777900 ) ) ; +#10931 = DIRECTION ( 'NONE', ( 0.7543368200092185300, 0.6564875946873480700, 0.0000000000000000000 ) ) ; +#10932 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#10933 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10934 = ORIENTED_EDGE ( 'NONE', *, *, #17474, .F. ) ; +#10935 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.5381944444444367600 ) ) ; +#10936 = VECTOR ( 'NONE', #16814, 39.37007874015748100 ) ; +#10937 = ADVANCED_FACE ( 'NONE', ( #9425 ), #15040, .F. ) ; +#10938 = EDGE_CURVE ( 'NONE', #10358, #13599, #9193, .T. ) ; +#10939 = EDGE_CURVE ( 'NONE', #9479, #9532, #898, .T. ) ; +#10940 = AXIS2_PLACEMENT_3D ( 'NONE', #15508, #8183, #17133 ) ; +#10941 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.1718749999999895400 ) ) ; +#10942 = AXIS2_PLACEMENT_3D ( 'NONE', #5240, #15424, #2233 ) ; +#10943 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.010416666666663000 ) ) ; +#10944 = CARTESIAN_POINT ( 'NONE', ( -0.1278875336514693200, -0.4509671176887998200, 1.590308733529502500 ) ) ; +#10945 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#10946 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.557291666666667400 ) ) ; +#10947 = FACE_BOUND ( 'NONE', #10841, .T. ) ; +#10948 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323599700 ) ) ; +#10949 = PLANE ( 'NONE', #1463 ) ; +#10950 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#10951 = ADVANCED_FACE ( 'NONE', ( #4343 ), #19074, .T. ) ; +#10952 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.3697916666666576400 ) ) ; +#10953 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#10954 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323638400 ) ) ; +#10955 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#10956 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.8194444444444389800 ) ) ; +#10957 = VECTOR ( 'NONE', #8194, 39.37007874015748100 ) ; +#10958 = ADVANCED_FACE ( 'NONE', ( #8727, #12190, #3645, #16565, #414, #3864, #6170, #2263, #16057, #11027, #17010, #3401, #14461, #7318, #4779, #11940, #12159, #18847, #13086, #12861, #5020, #7564, #8959, #9641, #15148, #14935 ), #1574, .T. ) ; +#10959 = DIRECTION ( 'NONE', ( -0.6661089358369563000, 0.7458544667682548400, -0.0000000000000000000 ) ) ; +#10960 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.128472222222219700 ) ) ; +#10961 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.2013888888889021300 ) ) ; +#10962 = EDGE_CURVE ( 'NONE', #14299, #4630, #9173, .T. ) ; +#10963 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#10964 = VECTOR ( 'NONE', #10931, 39.37007874015748900 ) ; +#10965 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.3611111111111020600 ) ) ; +#10966 = EDGE_CURVE ( 'NONE', #10612, #13855, #661, .T. ) ; +#10967 = ORIENTED_EDGE ( 'NONE', *, *, #6642, .F. ) ; +#10968 = PLANE ( 'NONE', #1067 ) ; +#10969 = EDGE_CURVE ( 'NONE', #11844, #2353, #16788, .T. ) ; +#10970 = LINE ( 'NONE', #280, #1512 ) ; +#10971 = AXIS2_PLACEMENT_3D ( 'NONE', #360, #15090, #9251 ) ; +#10972 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, 0.1111111111111238400 ) ) ; +#10973 = VERTEX_POINT ( 'NONE', #18017 ) ; +#10974 = AXIS2_PLACEMENT_3D ( 'NONE', #8874, #9074, #6029 ) ; +#10975 = FACE_OUTER_BOUND ( 'NONE', #6460, .T. ) ; +#10976 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.5763888888888815100 ) ) ; +#10977 = DIRECTION ( 'NONE', ( 0.4030255384283147900, -0.9151887321064256000, 0.0000000000000000000 ) ) ; +#10978 = CARTESIAN_POINT ( 'NONE', ( -0.4418741004648775200, -0.1314551491986582500, 1.590985962198545200 ) ) ; +#10979 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#10980 = CARTESIAN_POINT ( 'NONE', ( 0.4505462270817866500, 0.09767944602040519500, 1.484375000000000200 ) ) ; +#10981 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -3.585550491684345600E-016, 0.9375000000000000000 ) ) ; +#10982 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.7361111111111053900 ) ) ; +#10983 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.7986111111111059400 ) ) ; +#10984 = VECTOR ( 'NONE', #3081, 39.37007874015748100 ) ; +#10985 = DIRECTION ( 'NONE', ( -0.02606405807964145400, 0.1716809671555514200, -0.9848077530122088000 ) ) ; +#10986 = VECTOR ( 'NONE', #12699, 39.37007874015748100 ) ; +#10987 = ORIENTED_EDGE ( 'NONE', *, *, #1941, .T. ) ; +#10988 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.050347222222218800 ) ) ; +#10989 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.4305555555555472500 ) ) ; +#10990 = EDGE_CURVE ( 'NONE', #3293, #17106, #1120, .T. ) ; +#10991 = CARTESIAN_POINT ( 'NONE', ( 0.3829490853735701400, -0.2566771803726077300, 1.187613820323621700 ) ) ; +#10992 = CYLINDRICAL_SURFACE ( 'NONE', #3374, 0.3125000000000008300 ) ; +#10993 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.097222222222219400 ) ) ; +#10994 = DIRECTION ( 'NONE', ( -1.000000000000000000, 4.440892098500626800E-014, 0.0000000000000000000 ) ) ; +#10995 = AXIS2_PLACEMENT_3D ( 'NONE', #19119, #8879, #12929 ) ; +#10996 = DIRECTION ( 'NONE', ( 0.9961450333403962800, 0.08772156263576842700, 0.0000000000000000000 ) ) ; +#10997 = DIRECTION ( 'NONE', ( -0.8574597016599265800, -0.5145511247964283900, -0.0000000000000000000 ) ) ; +#10998 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.6319444444444375400 ) ) ; +#10999 = DIRECTION ( 'NONE', ( -0.9886712861729655100, 0.1500969283399706500, 0.0000000000000000000 ) ) ; +#11000 = ORIENTED_EDGE ( 'NONE', *, *, #18197, .T. ) ; +#11001 = VECTOR ( 'NONE', #18812, 39.37007874015748100 ) ; +#11002 = LINE ( 'NONE', #3161, #16519 ) ; +#11003 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.05381944444443314400 ) ) ; +#11004 = LINE ( 'NONE', #9882, #18154 ) ; +#11005 = FACE_OUTER_BOUND ( 'NONE', #1830, .T. ) ; +#11006 = VERTEX_POINT ( 'NONE', #9127 ) ; +#11007 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.1736111111111243200 ) ) ; +#11008 = FACE_OUTER_BOUND ( 'NONE', #10328, .T. ) ; +#11009 = CYLINDRICAL_SURFACE ( 'NONE', #3023, 0.4610132068742565100 ) ; +#11010 = EDGE_LOOP ( 'NONE', ( #3927, #11029, #10321, #13695 ) ) ; +#11011 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#11012 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.449652777777777500 ) ) ; +#11013 = CARTESIAN_POINT ( 'NONE', ( 0.06919666627598218500, 0.4557905201830951300, 1.143750000000000000 ) ) ; +#11014 = CARTESIAN_POINT ( 'NONE', ( -0.08281349060214693300, 0.2408627435031303100, 1.252549403184165100 ) ) ; +#11015 = ORIENTED_EDGE ( 'NONE', *, *, #9411, .T. ) ; +#11016 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.4322916666666582500 ) ) ; +#11017 = CARTESIAN_POINT ( 'NONE', ( 0.4505462270817887600, -0.09767944602039578500, 1.440511179676385400 ) ) ; +#11018 = EDGE_CURVE ( 'NONE', #15799, #8658, #194, .T. ) ; +#11019 = CARTESIAN_POINT ( 'NONE', ( -1.376255635688522100E-016, -3.125195627036368300E-016, 3.802149639073269900 ) ) ; +#11020 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.031249999999996400 ) ) ; +#11021 = VERTEX_POINT ( 'NONE', #168 ) ; +#11022 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#11023 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.124999999999997300 ) ) ; +#11024 = ORIENTED_EDGE ( 'NONE', *, *, #17999, .T. ) ; +#11025 = ORIENTED_EDGE ( 'NONE', *, *, #99, .F. ) ; +#11026 = VECTOR ( 'NONE', #8682, 39.37007874015748100 ) ; +#11027 = FACE_BOUND ( 'NONE', #13965, .T. ) ; +#11028 = CIRCLE ( 'NONE', #2334, 0.4687499999999995600 ) ; +#11029 = ORIENTED_EDGE ( 'NONE', *, *, #5987, .T. ) ; +#11030 = CARTESIAN_POINT ( 'NONE', ( -0.07035757220611503500, -0.4634372746620900600, 1.484375000000000200 ) ) ; +#11031 = LINE ( 'NONE', #18535, #16085 ) ; +#11032 = EDGE_CURVE ( 'NONE', #8304, #3876, #5949, .T. ) ; +#11033 = DIMENSIONAL_EXPONENTS ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ; +#11034 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.09374999999998884200 ) ) ; +#11035 = AXIS2_PLACEMENT_3D ( 'NONE', #16705, #13813, #7896 ) ; +#11036 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.052083333333330200 ) ) ; +#11037 = ADVANCED_FACE ( 'NONE', ( #12405 ), #1332, .T. ) ; +#11038 = DIRECTION ( 'NONE', ( -0.1365235898527194500, 0.1073079634545867800, -0.9848077530122088000 ) ) ; +#11039 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #3034, #4567, #16353, #9035, #2896, #199, #10498, #18099, #9214 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2500000000000000000, 0.2537878787878787800, 0.2575757575757575700, 0.2613636363636363500, 0.2651515151515151400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#11040 = ORIENTED_EDGE ( 'NONE', *, *, #3179, .F. ) ; +#11041 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.6562499999999931200 ) ) ; +#11042 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.562500000000000000 ) ) ; +#11043 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11044 = CARTESIAN_POINT ( 'NONE', ( -0.3685331079892055200, -0.2896681615724762700, 1.143750000000000000 ) ) ; +#11045 = CARTESIAN_POINT ( 'NONE', ( -0.1842429747764649000, 0.2302791111148250200, -1.539039965689474900 ) ) ; +#11046 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.05555555555556765400 ) ) ; +#11047 = ORIENTED_EDGE ( 'NONE', *, *, #8563, .T. ) ; +#11048 = EDGE_LOOP ( 'NONE', ( #2058, #974, #10860, #7328, #17152, #6271 ) ) ; +#11049 = VECTOR ( 'NONE', #13780, 39.37007874015748900 ) ; +#11050 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.2638888888888791300 ) ) ; +#11051 = ORIENTED_EDGE ( 'NONE', *, *, #16076, .T. ) ; +#11052 = ORIENTED_EDGE ( 'NONE', *, *, #12547, .T. ) ; +#11053 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.3784722222222136600 ) ) ; +#11054 = CIRCLE ( 'NONE', #7987, 0.4610132068742565100 ) ; +#11055 = ORIENTED_EDGE ( 'NONE', *, *, #10962, .F. ) ; +#11056 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.7395833333333278200 ) ) ; +#11057 = ADVANCED_FACE ( 'NONE', ( #13554 ), #16540, .T. ) ; +#11058 = CARTESIAN_POINT ( 'NONE', ( 0.1278868739221061000, 0.4509647912990466500, 1.484375000000000200 ) ) ; +#11059 = ADVANCED_FACE ( 'NONE', ( #7108 ), #877, .T. ) ; +#11060 = EDGE_CURVE ( 'NONE', #18012, #3266, #16308, .T. ) ; +#11061 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.192708333333331000 ) ) ; +#11062 = CARTESIAN_POINT ( 'NONE', ( 8.520723301649261500E-017, -2.415211034319540900E-016, 3.802149639073348500 ) ) ; +#11063 = VERTEX_POINT ( 'NONE', #18336 ) ; +#11064 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#11065 = EDGE_CURVE ( 'NONE', #14010, #17455, #4107, .T. ) ; +#11066 = CARTESIAN_POINT ( 'NONE', ( 0.4219140922835683000, 0.1858000959230613500, 1.484375000000000200 ) ) ; +#11067 = PLANE ( 'NONE', #8228 ) ; +#11068 = PLANE ( 'NONE', #12604 ) ; +#11069 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 0.04916560385751499200, 1.252157760153582300 ) ) ; +#11070 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.4722222222222139900 ) ) ; +#11071 = AXIS2_PLACEMENT_3D ( 'NONE', #11818, #14526, #17490 ) ; +#11072 = CARTESIAN_POINT ( 'NONE', ( 0.04710500384695829500, 0.4663747571701748500, 1.143750000000000000 ) ) ; +#11073 = ORIENTED_EDGE ( 'NONE', *, *, #7494, .T. ) ; +#11074 = VECTOR ( 'NONE', #18526, 39.37007874015748100 ) ; +#11075 = LINE ( 'NONE', #307, #6208 ) ; +#11076 = VERTEX_POINT ( 'NONE', #13891 ) ; +#11077 = ORIENTED_EDGE ( 'NONE', *, *, #1708, .F. ) ; +#11078 = LINE ( 'NONE', #8080, #3689 ) ; +#11079 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, 0.08159722222223445000 ) ) ; +#11080 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.479166666666667000 ) ) ; +#11081 = CARTESIAN_POINT ( 'NONE', ( -0.2400840651515051300, 0.1694545004022370600, 0.1303784878169653400 ) ) ; +#11082 = ORIENTED_EDGE ( 'NONE', *, *, #1562, .F. ) ; +#11083 = CARTESIAN_POINT ( 'NONE', ( -0.06919666627598536300, -0.4557905201830946300, 1.143750000000000000 ) ) ; +#11084 = EDGE_CURVE ( 'NONE', #2739, #2965, #1481, .T. ) ; +#11085 = ORIENTED_EDGE ( 'NONE', *, *, #3521, .T. ) ; +#11086 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.380208333333332600 ) ) ; +#11087 = VERTEX_POINT ( 'NONE', #6339 ) ; +#11088 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.534722222222222500 ) ) ; +#11089 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11090 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11091 = LINE ( 'NONE', #7413, #1396 ) ; +#11092 = EDGE_CURVE ( 'NONE', #6691, #8070, #18402, .T. ) ; +#11093 = ORIENTED_EDGE ( 'NONE', *, *, #4492, .F. ) ; +#11094 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.1024305555555444900 ) ) ; +#11095 = ORIENTED_EDGE ( 'NONE', *, *, #12667, .T. ) ; +#11096 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.7986111111111055000 ) ) ; +#11097 = DIRECTION ( 'NONE', ( -0.8574597016599302400, -0.5145511247964222900, 0.0000000000000000000 ) ) ; +#11098 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.9236111111111065000 ) ) ; +#11099 = CYLINDRICAL_SURFACE ( 'NONE', #4748, 0.3125000000000008300 ) ; +#11100 = EDGE_CURVE ( 'NONE', #10886, #9421, #2717, .T. ) ; +#11101 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.9027777777777733500 ) ) ; +#11102 = AXIS2_PLACEMENT_3D ( 'NONE', #10614, #3273, #14918 ) ; +#11103 = ORIENTED_EDGE ( 'NONE', *, *, #16843, .F. ) ; +#11104 = ORIENTED_EDGE ( 'NONE', *, *, #15315, .F. ) ; +#11105 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.1111111111111000600 ) ) ; +#11106 = CARTESIAN_POINT ( 'NONE', ( -0.3293237658787572800, -0.3335752085024200600, 1.143750000000000000 ) ) ; +#11107 = ORIENTED_EDGE ( 'NONE', *, *, #7104, .T. ) ; +#11108 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.1527777777777670500 ) ) ; +#11109 = FACE_OUTER_BOUND ( 'NONE', #13102, .T. ) ; +#11110 = VERTEX_POINT ( 'NONE', #2037 ) ; +#11111 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.5138888888888809600 ) ) ; +#11112 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.045138888888885500 ) ) ; +#11113 = EDGE_CURVE ( 'NONE', #9289, #10425, #11481, .T. ) ; +#11114 = DIRECTION ( 'NONE', ( 0.8938997675281776800, -0.4482668910516028300, -0.0000000000000000000 ) ) ; +#11115 = CARTESIAN_POINT ( 'NONE', ( -0.2827285559220919500, 0.09313268673912543400, -1.535814032208875600 ) ) ; +#11116 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.09027777777776684100 ) ) ; +#11117 = AXIS2_PLACEMENT_3D ( 'NONE', #14293, #3932, #18678 ) ; +#11118 = CARTESIAN_POINT ( 'NONE', ( -0.4420448320419742000, -0.1559508319245018500, 1.143750000000000000 ) ) ; +#11119 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11120 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.5104166666666593000 ) ) ; +#11121 = ORIENTED_EDGE ( 'NONE', *, *, #17251, .F. ) ; +#11122 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.8993055555555510300 ) ) ; +#11123 = ORIENTED_EDGE ( 'NONE', *, *, #18581, .T. ) ; +#11124 = EDGE_LOOP ( 'NONE', ( #5728, #2760, #1467, #16956 ) ) ; +#11125 = FACE_OUTER_BOUND ( 'NONE', #3768, .T. ) ; +#11126 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.085069444444441300 ) ) ; +#11127 = DIRECTION ( 'NONE', ( 1.000000000000000000, 1.953992523340275500E-014, 0.0000000000000000000 ) ) ; +#11128 = ORIENTED_EDGE ( 'NONE', *, *, #21, .T. ) ; +#11129 = CARTESIAN_POINT ( 'NONE', ( -0.2420694707517432600, -0.1420596211022260900, 0.09289361618112336500 ) ) ; +#11130 = DIRECTION ( 'NONE', ( -0.1589208555515871100, -0.06998465030130929200, 0.9848077530122083500 ) ) ; +#11131 = VERTEX_POINT ( 'NONE', #18212 ) ; +#11132 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.5937499999999926700 ) ) ; +#11133 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11134 = ADVANCED_FACE ( 'NONE', ( #14019 ), #7839, .F. ) ; +#11135 = VERTEX_POINT ( 'NONE', #11058 ) ; +#11136 = EDGE_CURVE ( 'NONE', #98, #13408, #12634, .T. ) ; +#11137 = ORIENTED_EDGE ( 'NONE', *, *, #2441, .T. ) ; +#11138 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, 0.2309027777777912200 ) ) ; +#11139 = VECTOR ( 'NONE', #7321, 39.37007874015748100 ) ; +#11140 = ORIENTED_EDGE ( 'NONE', *, *, #15372, .F. ) ; +#11141 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.517361111111111600 ) ) ; +#11142 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#11143 = VERTEX_POINT ( 'NONE', #6478 ) ; +#11144 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.7326388888888829600 ) ) ; +#11145 = VECTOR ( 'NONE', #14212, 39.37007874015748100 ) ; +#11146 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.428819444444444400 ) ) ; +#11147 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11148 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#11149 = ORIENTED_EDGE ( 'NONE', *, *, #4068, .T. ) ; +#11150 = ADVANCED_FACE ( 'NONE', ( #7791 ), #18278, .F. ) ; +#11151 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.1510416666666560800 ) ) ; +#11152 = DIRECTION ( 'NONE', ( -0.04737586595177829100, 0.1670605187719827700, -0.9848077530122085800 ) ) ; +#11153 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.336805555555554000 ) ) ; +#11154 = CARTESIAN_POINT ( 'NONE', ( -0.3953002468276878300, -0.2372148641431544900, 1.592921120922338200 ) ) ; +#11155 = AXIS2_PLACEMENT_3D ( 'NONE', #6854, #11064, #8214 ) ; +#11156 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11157 = ORIENTED_EDGE ( 'NONE', *, *, #15598, .T. ) ; +#11158 = ADVANCED_FACE ( 'NONE', ( #15601 ), #8710, .T. ) ; +#11159 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.8124999999999950000 ) ) ; +#11160 = ORIENTED_EDGE ( 'NONE', *, *, #12667, .F. ) ; +#11161 = ORIENTED_EDGE ( 'NONE', *, *, #2055, .F. ) ; +#11162 = CARTESIAN_POINT ( 'NONE', ( -0.4120995984523176900, 0.2066569569792524900, 1.484375000000000200 ) ) ; +#11163 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.2256944444444341500 ) ) ; +#11164 = EDGE_CURVE ( 'NONE', #12110, #12195, #17929, .T. ) ; +#11165 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.270833333333331700 ) ) ; +#11166 = CYLINDRICAL_SURFACE ( 'NONE', #17736, 0.3125000000000008300 ) ; +#11167 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #6296, #3464, #507, #1784, #12091, #3276, #4928, #6425, #18085, #16720, #16529, #1915 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 4 ), + ( 2.380733176183356700E-007, 0.001851555320830849700, 0.003702872568344081300, 0.004628531192100698200, 0.005554189815857315900, 0.007405507063370554900 ), + .UNSPECIFIED. ) ; +#11168 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, 0.07291666666667885600 ) ) ; +#11169 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.3715277777777688000 ) ) ; +#11170 = DIRECTION ( 'NONE', ( 0.3447650836343074700, -0.9386889991400926300, -0.0000000000000000000 ) ) ; +#11171 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#11172 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #17069, #3734, #15369, #5268, #2072, #8180, #2135, #13857, #5005 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2196969696969697000, 0.2234848484848484800, 0.2272727272727272700, 0.2310606060606060500, 0.2348484848484848600 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#11173 = CARTESIAN_POINT ( 'NONE', ( -0.1354318359205608500, 0.2602090215089227200, -1.540143738413632900 ) ) ; +#11174 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.08333333333334547200 ) ) ; +#11175 = EDGE_CURVE ( 'NONE', #477, #3710, #1796, .T. ) ; +#11176 = VECTOR ( 'NONE', #9897, 39.37007874015748100 ) ; +#11177 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#11178 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11179 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -1.402777777777777200 ) ) ; +#11180 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.4965277777777701900 ) ) ; +#11181 = ORIENTED_EDGE ( 'NONE', *, *, #10595, .F. ) ; +#11182 = AXIS2_PLACEMENT_3D ( 'NONE', #4616, #120, #10422 ) ; +#11183 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.5416666666666595200 ) ) ; +#11184 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323601300 ) ) ; +#11185 = VECTOR ( 'NONE', #3992, 39.37007874015748100 ) ; +#11186 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.4409722222222140500 ) ) ; +#11187 = DIRECTION ( 'NONE', ( 0.1442440472914107200, 0.09668166541820061300, -0.9848077530122091300 ) ) ; +#11188 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#11189 = CARTESIAN_POINT ( 'NONE', ( -0.2090309484230969100, -0.1679910602537746100, 1.535768732448054900 ) ) ; +#11190 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.4270833333333246600 ) ) ; +#11191 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#11192 = FACE_OUTER_BOUND ( 'NONE', #15266, .T. ) ; +#11193 = VERTEX_POINT ( 'NONE', #14009 ) ; +#11194 = FACE_OUTER_BOUND ( 'NONE', #7234, .T. ) ; +#11195 = EDGE_CURVE ( 'NONE', #7441, #1448, #8249, .T. ) ; +#11196 = ORIENTED_EDGE ( 'NONE', *, *, #12789, .T. ) ; +#11198 = EDGE_CURVE ( 'NONE', #8786, #2371, #17466, .T. ) ; +#11197 = CIRCLE ( 'NONE', #4249, 0.4687499999999995600 ) ; +#11199 = AXIS2_PLACEMENT_3D ( 'NONE', #18602, #14278, #9779 ) ; +#11200 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, 0.04340277777778975300 ) ) ; +#11201 = AXIS2_PLACEMENT_3D ( 'NONE', #11332, #9841, #3789 ) ; +#11202 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.486111111111111400 ) ) ; +#11203 = CARTESIAN_POINT ( 'NONE', ( -0.2912208811562426200, 0.04761087757594696000, 0.1337445385704671700 ) ) ; +#11204 = CARTESIAN_POINT ( 'NONE', ( -0.1834002693415842100, -0.4313825491433722100, 1.591590229135180400 ) ) ; +#11205 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.355902777777776600 ) ) ; +#11206 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#11207 = CARTESIAN_POINT ( 'NONE', ( -0.2644999999999991200, -3.261631413309872100E-016, 0.1963163490354230300 ) ) ; +#11208 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 0.1443375672974061600, 1.272329099369260400 ) ) ; +#11209 = LINE ( 'NONE', #13578, #16266 ) ; +#11210 = EDGE_LOOP ( 'NONE', ( #17284, #11717, #1240, #10813 ) ) ; +#11211 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.03298611111109964900 ) ) ; +#11212 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#11213 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.454861111111110900 ) ) ; +#11214 = PLANE ( 'NONE', #10115 ) ; +#11215 = FACE_OUTER_BOUND ( 'NONE', #3899, .T. ) ; +#11216 = ORIENTED_EDGE ( 'NONE', *, *, #1683, .T. ) ; +#11217 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.8645833333333287100 ) ) ; +#11218 = CONICAL_SURFACE ( 'NONE', #2892, 0.4610132068742565100, 0.1745329251994307300 ) ; +#11219 = EDGE_CURVE ( 'NONE', #10788, #6905, #8009, .T. ) ; +#11220 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.1006944444444331900 ) ) ; +#11221 = EDGE_CURVE ( 'NONE', #12734, #4519, #13540, .T. ) ; +#11222 = ADVANCED_FACE ( 'NONE', ( #6147 ), #17444, .T. ) ; +#11223 = ORIENTED_EDGE ( 'NONE', *, *, #4658, .T. ) ; +#11224 = AXIS2_PLACEMENT_3D ( 'NONE', #7337, #11527, #7161 ) ; +#11225 = CARTESIAN_POINT ( 'NONE', ( -2.122829072685605500E-016, 1.098840796633654000E-016, -1.174024639073309600 ) ) ; +#11226 = CIRCLE ( 'NONE', #8233, 0.4687475818742575800 ) ; +#11227 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#11228 = AXIS2_PLACEMENT_3D ( 'NONE', #2905, #4394, #5840 ) ; +#11229 = FACE_OUTER_BOUND ( 'NONE', #19078, .T. ) ; +#11230 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.5590277777777703500 ) ) ; +#11231 = CYLINDRICAL_SURFACE ( 'NONE', #18060, 0.4610132068742565100 ) ; +#11232 = ORIENTED_EDGE ( 'NONE', *, *, #2680, .F. ) ; +#11233 = ORIENTED_EDGE ( 'NONE', *, *, #12547, .F. ) ; +#11234 = CARTESIAN_POINT ( 'NONE', ( -2.037561028606424700E-016, 1.819708359927983100E-016, -1.174024639073288900 ) ) ; +#11235 = CARTESIAN_POINT ( 'NONE', ( 0.3293237658787626600, -0.3335752085024159500, 1.143750000000000000 ) ) ; +#11236 = CARTESIAN_POINT ( 'NONE', ( -0.1183213004724680100, 0.2683485384570007400, -1.540514598243914100 ) ) ; +#11237 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.06250000000001196300 ) ) ; +#11238 = FACE_OUTER_BOUND ( 'NONE', #1110, .T. ) ; +#11239 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#11240 = CARTESIAN_POINT ( 'NONE', ( -0.3134792788290102800, 3.839013954169680400E-017, 1.562500000000000000 ) ) ; +#11241 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.409722222222221900 ) ) ; +#11242 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.5173611111111037200 ) ) ; +#11243 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.6666666666666604100 ) ) ; +#11244 = ADVANCED_FACE ( 'NONE', ( #5217 ), #18825, .T. ) ; +#11245 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11246 = ORIENTED_EDGE ( 'NONE', *, *, #16612, .F. ) ; +#11247 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.017361111111107200 ) ) ; +#11248 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.1319444444444338400 ) ) ; +#11249 = EDGE_CURVE ( 'NONE', #14728, #10901, #11004, .T. ) ; +#11250 = FACE_OUTER_BOUND ( 'NONE', #16872, .T. ) ; +#11251 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11252 = CIRCLE ( 'NONE', #17763, 0.4687499999999995000 ) ; +#11253 = ORIENTED_EDGE ( 'NONE', *, *, #5142, .F. ) ; +#11254 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.2951388888888792400 ) ) ; +#11255 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.010416666666663000 ) ) ; +#11256 = FACE_OUTER_BOUND ( 'NONE', #17323, .T. ) ; +#11257 = FACE_OUTER_BOUND ( 'NONE', #674, .T. ) ; +#11258 = ORIENTED_EDGE ( 'NONE', *, *, #2606, .T. ) ; +#11259 = EDGE_LOOP ( 'NONE', ( #12374, #18898, #2791, #2148, #13627, #6851 ) ) ; +#11260 = AXIS2_PLACEMENT_3D ( 'NONE', #11184, #8340, #15535 ) ; +#11261 = EDGE_LOOP ( 'NONE', ( #2819, #9739, #5799, #9622 ) ) ; +#11262 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, 0.2239583333333469200 ) ) ; +#11263 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.451388888888888800 ) ) ; +#11264 = CARTESIAN_POINT ( 'NONE', ( -0.2854759443524340100, 0.07548217371331329700, 0.1330351307687388500 ) ) ; +#11265 = ORIENTED_EDGE ( 'NONE', *, *, #18081, .F. ) ; +#11266 = VERTEX_POINT ( 'NONE', #6850 ) ; +#11267 = LINE ( 'NONE', #5688, #6633 ) ; +#11268 = VECTOR ( 'NONE', #15871, 39.37007874015748100 ) ; +#11269 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11270 = ORIENTED_EDGE ( 'NONE', *, *, #1479, .T. ) ; +#11271 = ORIENTED_EDGE ( 'NONE', *, *, #8944, .F. ) ; +#11272 = FACE_OUTER_BOUND ( 'NONE', #5826, .T. ) ; +#11273 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.366319444444443800 ) ) ; +#11274 = PLANE ( 'NONE', #10717 ) ; +#11275 = CARTESIAN_POINT ( 'NONE', ( -0.04710500384696183300, -0.4663747571701774000, 1.484375000000000200 ) ) ; +#11276 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.01215277777776615000 ) ) ; +#11277 = CARTESIAN_POINT ( 'NONE', ( 0.01152533017185641800, -0.4608691177296606000, 1.587227003692501100 ) ) ; +#11278 = EDGE_CURVE ( 'NONE', #11702, #3722, #9621, .T. ) ; +#11279 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.368055555555554500 ) ) ; +#11280 = PLANE ( 'NONE', #3406 ) ; +#11281 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.8472222222222173200 ) ) ; +#11282 = EDGE_LOOP ( 'NONE', ( #509, #1135, #919, #1412, #10135, #16045, #18509 ) ) ; +#11283 = EDGE_LOOP ( 'NONE', ( #10219, #10363, #10677, #10334 ) ) ; +#11284 = CARTESIAN_POINT ( 'NONE', ( 0.2802162586133474800, 0.3660765293230687800, 1.593193105402742800 ) ) ; +#11285 = EDGE_LOOP ( 'NONE', ( #17061, #15021, #3748, #8539 ) ) ; +#11286 = CONICAL_SURFACE ( 'NONE', #2863, 0.4687475818742550800, 0.1745329251994287300 ) ; +#11287 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#11288 = VECTOR ( 'NONE', #14669, 39.37007874015748900 ) ; +#11289 = VERTEX_POINT ( 'NONE', #17212 ) ; +#11290 = ORIENTED_EDGE ( 'NONE', *, *, #9009, .T. ) ; +#11291 = AXIS2_PLACEMENT_3D ( 'NONE', #6009, #6204, #356 ) ; +#11292 = CONICAL_SURFACE ( 'NONE', #15352, 0.4687475818742551400, 0.1745329251994302300 ) ; +#11293 = DIRECTION ( 'NONE', ( 0.1004911932742403200, 0.9949379478511808400, 0.0000000000000000000 ) ) ; +#11294 = CARTESIAN_POINT ( 'NONE', ( 0.4347510546871043400, 0.1533776299234556600, 1.440511179676387000 ) ) ; +#11295 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.4270833333333246600 ) ) ; +#11296 = CARTESIAN_POINT ( 'NONE', ( -0.3893757946457735400, 0.2609847755022735000, 1.592921120922338200 ) ) ; +#11297 = CARTESIAN_POINT ( 'NONE', ( 0.1703364705789265100, 0.2316476108867214500, -1.546424987827713200 ) ) ; +#11298 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.04166666666665552000 ) ) ; +#11299 = EDGE_LOOP ( 'NONE', ( #18893, #5758, #17552, #12002 ) ) ; +#11300 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.8298611111111061600 ) ) ; +#11301 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#11302 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#11303 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.3402777777777688000 ) ) ; +#11304 = EDGE_LOOP ( 'NONE', ( #2067, #7336, #11549, #4078 ) ) ; +#11305 = VERTEX_POINT ( 'NONE', #14252 ) ; +#11306 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.6284722222222156600 ) ) ; +#11307 = CIRCLE ( 'NONE', #13219, 0.4687499999999996100 ) ; +#11308 = CONICAL_SURFACE ( 'NONE', #870, 0.4687475818742578600, 0.1745329251994246200 ) ; +#11309 = EDGE_LOOP ( 'NONE', ( #8003, #9556, #11551, #5784, #6765, #10231 ) ) ; +#11310 = ORIENTED_EDGE ( 'NONE', *, *, #2414, .T. ) ; +#11311 = FACE_OUTER_BOUND ( 'NONE', #8316, .T. ) ; +#11312 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.041666666666663000 ) ) ; +#11313 = EDGE_CURVE ( 'NONE', #16616, #1856, #634, .T. ) ; +#11314 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.1840277777777677100 ) ) ; +#11315 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323614800 ) ) ; +#11316 = EDGE_CURVE ( 'NONE', #12734, #15863, #14339, .T. ) ; +#11317 = DIRECTION ( 'NONE', ( -0.9921147013144795400, 0.1253332335642905500, 0.0000000000000000000 ) ) ; +#11318 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#11319 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.2395833333333233200 ) ) ; +#11320 = AXIS2_PLACEMENT_3D ( 'NONE', #10312, #1545, #1368 ) ; +#11321 = ORIENTED_EDGE ( 'NONE', *, *, #4916, .T. ) ; +#11322 = VERTEX_POINT ( 'NONE', #5232 ) ; +#11323 = ADVANCED_FACE ( 'NONE', ( #9851 ), #14513, .F. ) ; +#11324 = LINE ( 'NONE', #16146, #15008 ) ; +#11325 = ORIENTED_EDGE ( 'NONE', *, *, #6387, .F. ) ; +#11326 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.406250000000000200 ) ) ; +#11327 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, 0.2170138888889023300 ) ) ; +#11328 = CARTESIAN_POINT ( 'NONE', ( 0.4624991113355815800, -0.07629635976766453700, 1.484375000000000200 ) ) ; +#11329 = EDGE_CURVE ( 'NONE', #641, #16899, #6614, .T. ) ; +#11330 = ORIENTED_EDGE ( 'NONE', *, *, #14129, .T. ) ; +#11331 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.168402777777775200 ) ) ; +#11332 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323599100 ) ) ; +#11333 = ORIENTED_EDGE ( 'NONE', *, *, #14899, .T. ) ; +#11334 = ADVANCED_FACE ( 'NONE', ( #7085 ), #7047, .F. ) ; +#11335 = EDGE_CURVE ( 'NONE', #10407, #12733, #2937, .T. ) ; +#11336 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.2239583333333231600 ) ) ; +#11337 = CARTESIAN_POINT ( 'NONE', ( -0.4669429843783105000, 0.04111948248551343400, 1.484375000000000200 ) ) ; +#11338 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.340277777777776300 ) ) ; +#11339 = DIRECTION ( 'NONE', ( -0.06794052811688643100, 0.1598054262102597500, -0.9848077530122088000 ) ) ; +#11340 = ORIENTED_EDGE ( 'NONE', *, *, #4164, .T. ) ; +#11341 = EDGE_CURVE ( 'NONE', #4588, #9738, #18379, .T. ) ; +#11342 = AXIS2_PLACEMENT_3D ( 'NONE', #162, #6083, #1648 ) ; +#11343 = VECTOR ( 'NONE', #7361, 39.37007874015748100 ) ; +#11344 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.9861111111111073900 ) ) ; +#11345 = ORIENTED_EDGE ( 'NONE', *, *, #14254, .T. ) ; +#11346 = AXIS2_PLACEMENT_3D ( 'NONE', #10235, #2948, #1413 ) ; +#11347 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11348 = DIRECTION ( 'NONE', ( -0.9584846895403575900, -0.2851439985633997800, 0.0000000000000000000 ) ) ; +#11349 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, 0.05902777777778995400 ) ) ; +#11350 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#11351 = ORIENTED_EDGE ( 'NONE', *, *, #15179, .T. ) ; +#11352 = ORIENTED_EDGE ( 'NONE', *, *, #7436, .F. ) ; +#11353 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.4201388888888803500 ) ) ; +#11354 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11355 = FACE_OUTER_BOUND ( 'NONE', #10675, .T. ) ; +#11356 = DIRECTION ( 'NONE', ( -0.5358267949789946600, -0.8443279255020164100, 0.0000000000000000000 ) ) ; +#11357 = ORIENTED_EDGE ( 'NONE', *, *, #4414, .F. ) ; +#11358 = EDGE_CURVE ( 'NONE', #3722, #4518, #11458, .T. ) ; +#11359 = CARTESIAN_POINT ( 'NONE', ( -0.4120995984523162500, -0.2066569569792553700, 1.484375000000000200 ) ) ; +#11360 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.489583333333333300 ) ) ; +#11361 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.8229166666666614100 ) ) ; +#11362 = AXIS2_PLACEMENT_3D ( 'NONE', #16885, #2254, #913 ) ; +#11363 = ORIENTED_EDGE ( 'NONE', *, *, #8468, .T. ) ; +#11364 = CARTESIAN_POINT ( 'NONE', ( 0.3685350091390618400, -0.2896696558821292800, 1.593375490995827300 ) ) ; +#11365 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.2708333333333239900 ) ) ; +#11366 = AXIS2_PLACEMENT_3D ( 'NONE', #12419, #9332, #3592 ) ; +#11367 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.6215277777777712400 ) ) ; +#11368 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#11369 = ORIENTED_EDGE ( 'NONE', *, *, #13427, .F. ) ; +#11370 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.090277777777774600 ) ) ; +#11371 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.03124999999998863800 ) ) ; +#11372 = CARTESIAN_POINT ( 'NONE', ( 0.3070850166377935800, -0.3438487595863217700, 1.440511179676400100 ) ) ; +#11373 = CARTESIAN_POINT ( 'NONE', ( 0.2488849433499457600, -0.1413485006188325000, 0.1081477807639842900 ) ) ; +#11374 = ORIENTED_EDGE ( 'NONE', *, *, #2551, .T. ) ; +#11375 = CARTESIAN_POINT ( 'NONE', ( 2.074017620600221800E-017, 0.2886751345948123700, 1.548179320649367700 ) ) ; +#11376 = ORIENTED_EDGE ( 'NONE', *, *, #4246, .T. ) ; +#11377 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.2152777777777675500 ) ) ; +#11378 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.05555555555554415200 ) ) ; +#11379 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.04861111111109956600 ) ) ; +#11380 = VECTOR ( 'NONE', #18235, 39.37007874015748100 ) ; +#11381 = EDGE_LOOP ( 'NONE', ( #4103, #2355, #11814, #1913, #7809, #3528 ) ) ; +#11382 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.284722222222220800 ) ) ; +#11383 = EDGE_CURVE ( 'NONE', #191, #7606, #3172, .T. ) ; +#11384 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #7949, #13735, #3556, #7824, #13805, #2154, #2212, #9297, #10911 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2348484848484848600, 0.2386363636363636500, 0.2424242424242424300, 0.2462121212121212200, 0.2500000000000000000 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#11385 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.461805555555555600 ) ) ; +#11386 = ORIENTED_EDGE ( 'NONE', *, *, #15820, .T. ) ; +#11387 = CARTESIAN_POINT ( 'NONE', ( 0.2802162586133554700, -0.3660765293230626700, 1.187613820323598600 ) ) ; +#11388 = LOCAL_TIME ( 13, 36, 41.00000000000000000, #7476 ) ; +#11389 = DIRECTION ( 'NONE', ( -0.9772957051199515600, -0.2118799300408056000, 0.0000000000000000000 ) ) ; +#11390 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.5868055555555484700 ) ) ; +#11391 = DIRECTION ( 'NONE', ( 0.8306683619109841400, -0.5567675210715170600, -0.0000000000000000000 ) ) ; +#11392 = VERTEX_POINT ( 'NONE', #17472 ) ; +#11393 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.227430555555553600 ) ) ; +#11394 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.329861111111109800 ) ) ; +#11395 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11396 = DIRECTION ( 'NONE', ( -0.9996874511566102800, 0.02499999999999999100, 0.0000000000000000000 ) ) ; +#11397 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, 0.1406250000000129600 ) ) ; +#11398 = DIRECTION ( 'NONE', ( 0.1488963146160723600, -0.08935086513736410800, -0.9848077530122091300 ) ) ; +#11399 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.510416666666667000 ) ) ; +#11400 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#11401 = LINE ( 'NONE', #16741, #17840 ) ; +#11402 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.6597222222222158800 ) ) ; +#11403 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, 0.03472222222223415200 ) ) ; +#11404 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #12862, #14277, #9974, #6949, #15748, #18725, #9907, #4039, #1083 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2045454545454545600, 0.2083333333333333400, 0.2121212121212121300, 0.2159090909090909100, 0.2196969696969697000 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#11405 = CARTESIAN_POINT ( 'NONE', ( -0.3122369529384042600, 0.3496174777277340500, 1.484375000000000200 ) ) ; +#11406 = CYLINDRICAL_SURFACE ( 'NONE', #8635, 0.3125000000000008300 ) ; +#11407 = ORIENTED_EDGE ( 'NONE', *, *, #10082, .F. ) ; +#11408 = ADVANCED_FACE ( 'NONE', ( #13066 ), #14683, .T. ) ; +#11409 = CYLINDRICAL_SURFACE ( 'NONE', #6784, 0.3125000000000008300 ) ; +#11410 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.4774305555555477000 ) ) ; +#11411 = VECTOR ( 'NONE', #1807, 39.37007874015748100 ) ; +#11412 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.2187499999999898400 ) ) ; +#11413 = CARTESIAN_POINT ( 'NONE', ( 1.136096440219880200E-017, 3.220281379092729600E-017, -1.174024639073312900 ) ) ; +#11414 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#11415 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#11416 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#11417 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.579861111111111800 ) ) ; +#11418 = EDGE_CURVE ( 'NONE', #10296, #11289, #7162, .T. ) ; +#11419 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#11420 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.2499999999999905100 ) ) ; +#11421 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.5624999999999930100 ) ) ; +#11422 = CIRCLE ( 'NONE', #8006, 0.4687475818742551400 ) ; +#11423 = EDGE_LOOP ( 'NONE', ( #6550, #6489, #11161, #14477, #13268, #10550 ) ) ; +#11424 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#11425 = FACE_BOUND ( 'NONE', #7369, .T. ) ; +#11426 = ADVANCED_FACE ( 'NONE', ( #10533 ), #18614, .T. ) ; +#11427 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.083333333333329900 ) ) ; +#11428 = ORIENTED_EDGE ( 'NONE', *, *, #15315, .T. ) ; +#11429 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.1076388888888783100 ) ) ; +#11430 = DIRECTION ( 'NONE', ( 0.1735239426960730500, -0.006567413361071421300, -0.9848077530122082400 ) ) ; +#11431 = VECTOR ( 'NONE', #4013, 39.37007874015748900 ) ; +#11432 = CARTESIAN_POINT ( 'NONE', ( 2.711596482613281000E-017, -2.075613595419662600E-017, -1.174024639073328700 ) ) ; +#11433 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.350694444444443300 ) ) ; +#11434 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.3506944444444352600 ) ) ; +#11435 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.07291666666665536100 ) ) ; +#11436 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.126736111111108500 ) ) ; +#11437 = EDGE_CURVE ( 'NONE', #7764, #15866, #14443, .T. ) ; +#11438 = CIRCLE ( 'NONE', #488, 0.4687475818742551400 ) ; +#11439 = EDGE_CURVE ( 'NONE', #16103, #8792, #10780, .T. ) ; +#11440 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.298611111111110100 ) ) ; +#11441 = EDGE_CURVE ( 'NONE', #17541, #735, #12842, .T. ) ; +#11442 = LINE ( 'NONE', #2383, #10986 ) ; +#11443 = AXIS2_PLACEMENT_3D ( 'NONE', #5834, #1676, #17839 ) ; +#11444 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.388888888888888400 ) ) ; +#11445 = VERTEX_POINT ( 'NONE', #14435 ) ; +#11446 = CARTESIAN_POINT ( 'NONE', ( 0.2816817904617434100, -4.105198628045699100E-016, -1.551651542871590500 ) ) ; +#11447 = AXIS2_PLACEMENT_3D ( 'NONE', #2464, #18638, #6920 ) ; +#11448 = LINE ( 'NONE', #17651, #14892 ) ; +#11449 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11450 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.317708333333331900 ) ) ; +#11451 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.309027777777776100 ) ) ; +#11452 = CARTESIAN_POINT ( 'NONE', ( 0.1622681766990122000, -0.2237736071879158100, -1.556917725157686700 ) ) ; +#11453 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.218749999999997800 ) ) ; +#11454 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11455 = CARTESIAN_POINT ( 'NONE', ( 0.2154822354126497400, -0.4162859218392654400, 1.592561465728329600 ) ) ; +#11456 = EDGE_LOOP ( 'NONE', ( #16849, #15364, #1426, #17903 ) ) ; +#11457 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.6909722222222161000 ) ) ; +#11458 = LINE ( 'NONE', #8451, #17678 ) ; +#11459 = LINE ( 'NONE', #15219, #8250 ) ; +#11460 = VERTEX_POINT ( 'NONE', #10204 ) ; +#11461 = EDGE_CURVE ( 'NONE', #12276, #16321, #2241, .T. ) ; +#11462 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#11463 = LINE ( 'NONE', #13491, #7089 ) ; +#11464 = VECTOR ( 'NONE', #7569, 39.37007874015748100 ) ; +#11465 = ORIENTED_EDGE ( 'NONE', *, *, #17411, .T. ) ; +#11466 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323613700 ) ) ; +#11467 = AXIS2_PLACEMENT_3D ( 'NONE', #4477, #5947, #17755 ) ; +#11468 = CARTESIAN_POINT ( 'NONE', ( 2.430071370889268000E-017, -2.399099917551582900E-017, -1.174024639073372000 ) ) ; +#11469 = ORIENTED_EDGE ( 'NONE', *, *, #8969, .T. ) ; +#11470 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.6163194444444376500 ) ) ; +#11471 = ORIENTED_EDGE ( 'NONE', *, *, #7160, .T. ) ; +#11472 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.3368055555555462500 ) ) ; +#11473 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.458333333333333000 ) ) ; +#11474 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11475 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000001700, 0.9375000000000000000 ) ) ; +#11476 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, 0.1979166666666798400 ) ) ; +#11477 = EDGE_LOOP ( 'NONE', ( #6937, #15744, #13774, #9954 ) ) ; +#11478 = ORIENTED_EDGE ( 'NONE', *, *, #16453, .T. ) ; +#11479 = CYLINDRICAL_SURFACE ( 'NONE', #17120, 0.3125000000000008300 ) ; +#11480 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#11481 = LINE ( 'NONE', #2226, #6634 ) ; +#11482 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676401200 ) ) ; +#11483 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11484 = ORIENTED_EDGE ( 'NONE', *, *, #6695, .F. ) ; +#11485 = LINE ( 'NONE', #4989, #4810 ) ; +#11486 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.3020833333333241000 ) ) ; +#11487 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.9097222222222174400 ) ) ; +#11488 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.2222222222222124100 ) ) ; +#11489 = EDGE_CURVE ( 'NONE', #27, #8405, #5212, .T. ) ; +#11490 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, 0.1562500000000131300 ) ) ; +#11491 = ORIENTED_EDGE ( 'NONE', *, *, #8976, .T. ) ; +#11492 = CARTESIAN_POINT ( 'NONE', ( -0.1689415361573506400, -0.2248582253080694300, 0.09573031563479650300 ) ) ; +#11493 = CARTESIAN_POINT ( 'NONE', ( -6.359620834537949100E-017, -0.2886751345948123700, 1.548179320649367700 ) ) ; +#11494 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.9930555555555515800 ) ) ; +#11495 = VERTEX_POINT ( 'NONE', #29 ) ; +#11496 = VERTEX_POINT ( 'NONE', #13281 ) ; +#11497 = LINE ( 'NONE', #1872, #11049 ) ; +#11499 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.8767361111111063900 ) ) ; +#11498 = VECTOR ( 'NONE', #9032, 39.37007874015748900 ) ; +#11500 = ORIENTED_EDGE ( 'NONE', *, *, #5941, .T. ) ; +#11501 = ORIENTED_EDGE ( 'NONE', *, *, #8631, .F. ) ; +#11502 = CIRCLE ( 'NONE', #3053, 0.4687475818742575200 ) ; +#11503 = ADVANCED_FACE ( 'NONE', ( #13769 ), #10072, .T. ) ; +#11504 = ORIENTED_EDGE ( 'NONE', *, *, #10316, .T. ) ; +#11505 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.378472222222221400 ) ) ; +#11506 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.388888888888888400 ) ) ; +#11507 = AXIS2_PLACEMENT_3D ( 'NONE', #15080, #6266, #7746 ) ; +#11508 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.517361111111111600 ) ) ; +#11509 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.06597222222221106600 ) ) ; +#11510 = ORIENTED_EDGE ( 'NONE', *, *, #673, .F. ) ; +#11511 = CARTESIAN_POINT ( 'NONE', ( 0.2154822354126408600, 0.4162859218392699900, 1.592561465728329600 ) ) ; +#11512 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.067708333333329900 ) ) ; +#11513 = ORIENTED_EDGE ( 'NONE', *, *, #13018, .F. ) ; +#11514 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.302083333333331700 ) ) ; +#11515 = LINE ( 'NONE', #14980, #8071 ) ; +#11516 = CYLINDRICAL_SURFACE ( 'NONE', #16669, 0.4610132068742565100 ) ; +#11517 = ORIENTED_EDGE ( 'NONE', *, *, #17384, .F. ) ; +#11518 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, 0.1788194444444576300 ) ) ; +#11519 = VERTEX_POINT ( 'NONE', #1560 ) ; +#11520 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#11521 = EDGE_CURVE ( 'NONE', #17024, #4195, #1776, .T. ) ; +#11522 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.177083333333330800 ) ) ; +#11523 = CARTESIAN_POINT ( 'NONE', ( -3.142590803677595000E-017, 1.336057754235447300E-017, 3.802149639073315200 ) ) ; +#11524 = CARTESIAN_POINT ( 'NONE', ( 0.1000536189314654900, -0.2839523813039175900, 0.1488405355572724500 ) ) ; +#11525 = VECTOR ( 'NONE', #545, 39.37007874015748900 ) ; +#11526 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.6076388888888821800 ) ) ; +#11527 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#11528 = VERTEX_POINT ( 'NONE', #88 ) ; +#11529 = EDGE_CURVE ( 'NONE', #8501, #12242, #892, .T. ) ; +#11530 = CARTESIAN_POINT ( 'NONE', ( -0.3293237658787572800, -0.3335752085024200600, 1.593467001493433100 ) ) ; +#11531 = DIRECTION ( 'NONE', ( -0.3326968243781567900, 0.9430338398216099300, 0.0000000000000000000 ) ) ; +#11532 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, 0.1215277777777904500 ) ) ; +#11533 = ORIENTED_EDGE ( 'NONE', *, *, #45, .F. ) ; +#11534 = ORIENTED_EDGE ( 'NONE', *, *, #6803, .F. ) ; +#11535 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -1.329861111111109800 ) ) ; +#11536 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#11537 = LINE ( 'NONE', #189, #18909 ) ; +#11538 = ORIENTED_EDGE ( 'NONE', *, *, #8173, .F. ) ; +#11539 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.5190972222222146600 ) ) ; +#11540 = EDGE_LOOP ( 'NONE', ( #6268, #15902, #9877, #13202 ) ) ; +#11541 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.04513888888887727200 ) ) ; +#11542 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.1840277777777672200 ) ) ; +#11543 = CARTESIAN_POINT ( 'NONE', ( -0.2802162586133502000, -0.3660765293230667200, 1.593193105402742800 ) ) ; +#11544 = ADVANCED_FACE ( 'NONE', ( #14225 ), #5996, .F. ) ; +#11545 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#11546 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.517361111111111200 ) ) ; +#11547 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.01388888888887717000 ) ) ; +#11548 = VERTEX_POINT ( 'NONE', #7692 ) ; +#11549 = ORIENTED_EDGE ( 'NONE', *, *, #7721, .F. ) ; +#11550 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.3715277777777691300 ) ) ; +#11551 = ORIENTED_EDGE ( 'NONE', *, *, #9608, .T. ) ; +#11552 = LINE ( 'NONE', #7029, #274 ) ; +#11553 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.7430555555555494700 ) ) ; +#11554 = EDGE_CURVE ( 'NONE', #12956, #12905, #17914, .T. ) ; +#11555 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.01736111111112267600 ) ) ; +#11556 = ORIENTED_EDGE ( 'NONE', *, *, #5522, .F. ) ; +#11557 = EDGE_CURVE ( 'NONE', #16321, #10467, #16986, .T. ) ; +#11558 = CARTESIAN_POINT ( 'NONE', ( 0.2097796030603559800, -0.1931615032907342000, 0.1064926466409154700 ) ) ; +#11559 = AXIS2_PLACEMENT_3D ( 'NONE', #18484, #15504, #14098 ) ; +#11560 = DIRECTION ( 'NONE', ( -0.6661089358369508600, 0.7458544667682596200, 0.0000000000000000000 ) ) ; +#11561 = AXIS2_PLACEMENT_3D ( 'NONE', #319, #16722, #566 ) ; +#11562 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11563 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.9704861111111070500 ) ) ; +#11564 = ORIENTED_EDGE ( 'NONE', *, *, #6731, .T. ) ; +#11565 = ORIENTED_EDGE ( 'NONE', *, *, #17055, .T. ) ; +#11566 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#11567 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.9861111111111073900 ) ) ; +#11568 = ORIENTED_EDGE ( 'NONE', *, *, #17216, .T. ) ; +#11569 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.493055555555555800 ) ) ; +#11570 = LINE ( 'NONE', #9445, #13431 ) ; +#11571 = ORIENTED_EDGE ( 'NONE', *, *, #19089, .F. ) ; +#11572 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.592921120922338200 ) ) ; +#11573 = EDGE_LOOP ( 'NONE', ( #17557, #10850, #15331, #8714 ) ) ; +#11574 = CARTESIAN_POINT ( 'NONE', ( 0.4606833792705951100, -0.01743562377178318300, 1.587900241027141200 ) ) ; +#11575 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#11576 = EDGE_CURVE ( 'NONE', #14798, #4095, #1318, .T. ) ; +#11577 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.119791666666663600 ) ) ; +#11578 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.461805555555555100 ) ) ; +#11579 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, 0.9687499999999998900 ) ) ; +#11580 = AXIS2_PLACEMENT_3D ( 'NONE', #16316, #4602, #9064 ) ; +#11581 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, 0.06770833333334581900 ) ) ; +#11582 = DIRECTION ( 'NONE', ( 0.9151887321064284800, 0.4030255384283083500, -0.0000000000000000000 ) ) ; +#11583 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.253472222222220300 ) ) ; +#11584 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11585 = EDGE_CURVE ( 'NONE', #16951, #17223, #2083, .T. ) ; +#11586 = VERTEX_POINT ( 'NONE', #9351 ) ; +#11587 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #16109, #17998, #10591, #13624, #9169, #6071 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 0.02647479530249135400, 0.02832934899859317800, 0.03018390269469499800 ), + .UNSPECIFIED. ) ; +#11588 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.6527777777777714600 ) ) ; +#11589 = ORIENTED_EDGE ( 'NONE', *, *, #8252, .T. ) ; +#11590 = LINE ( 'NONE', #11949, #18298 ) ; +#11591 = EDGE_LOOP ( 'NONE', ( #18120, #4304, #9241, #15011, #962, #15864 ) ) ; +#11592 = DIRECTION ( 'NONE', ( 1.000000000000000000, -4.618527782440651800E-014, 0.0000000000000000000 ) ) ; +#11593 = CARTESIAN_POINT ( 'NONE', ( -0.4420471124163813900, 0.1559516364272548500, 1.484375000000000200 ) ) ; +#11594 = ORIENTED_EDGE ( 'NONE', *, *, #18971, .F. ) ; +#11595 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.4270833333333250400 ) ) ; +#11596 = CARTESIAN_POINT ( 'NONE', ( -1.968368661174697500E-016, 1.356237140728361400E-016, -1.174024639073328700 ) ) ; +#11597 = CIRCLE ( 'NONE', #7250, 0.4610132068742565100 ) ; +#11598 = ADVANCED_FACE ( 'NONE', ( #4084 ), #2023, .T. ) ; +#11599 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.319444444444443300 ) ) ; +#11600 = ORIENTED_EDGE ( 'NONE', *, *, #14147, .F. ) ; +#11601 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.6093749999999931200 ) ) ; +#11602 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.093749999999997100 ) ) ; +#11603 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.3055555555555458700 ) ) ; +#11604 = ORIENTED_EDGE ( 'NONE', *, *, #11879, .F. ) ; +#11605 = PLANE ( 'NONE', #12917 ) ; +#11606 = EDGE_CURVE ( 'NONE', #2137, #16987, #6857, .T. ) ; +#11607 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11608 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11609 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.506944444444444400 ) ) ; +#11610 = EDGE_LOOP ( 'NONE', ( #4817, #1600, #2399, #13863 ) ) ; +#11611 = AXIS2_PLACEMENT_3D ( 'NONE', #340, #9413, #6506 ) ; +#11612 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.475694444444444600 ) ) ; +#11613 = ORIENTED_EDGE ( 'NONE', *, *, #13812, .T. ) ; +#11614 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.4097222222222138800 ) ) ; +#11615 = CARTESIAN_POINT ( 'NONE', ( -0.01152533017185641800, 0.4608691177296606000, 1.587227003692501100 ) ) ; +#11616 = CYLINDRICAL_SURFACE ( 'NONE', #964, 0.4610132068742565100 ) ; +#11617 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.8680555555555504700 ) ) ; +#11618 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, 0.03819444444445617400 ) ) ; +#11619 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1977, #4795, #15102, #13637, #4862, #12146, #9381, #7842, #13697 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.9015151515151514900, 0.9053030303030302800, 0.9090909090909090600, 0.9128787878787878500, 0.9166666666666667400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#11620 = DIRECTION ( 'NONE', ( 0.8660254037844386000, 0.5000000000000001100, 0.0000000000000000000 ) ) ; +#11621 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#11622 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#11623 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.8177083333333281500 ) ) ; +#11624 = CARTESIAN_POINT ( 'NONE', ( -0.3624522803384121500, -0.2848886122504218900, 1.484375000000000200 ) ) ; +#11625 = CARTESIAN_POINT ( 'NONE', ( -0.2659561823096115400, -0.3859943064402091600, 1.143750000000000000 ) ) ; +#11626 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.9999999999999964500 ) ) ; +#11627 = EDGE_CURVE ( 'NONE', #14043, #1615, #5661, .T. ) ; +#11628 = VECTOR ( 'NONE', #18548, 39.37007874015748100 ) ; +#11629 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.565972222222223200 ) ) ; +#11630 = ADVANCED_FACE ( 'NONE', ( #9395 ), #4836, .F. ) ; +#11631 = PLANE ( 'NONE', #14319 ) ; +#11632 = CARTESIAN_POINT ( 'NONE', ( 0.3685331079892036900, 0.2896681615724789900, 1.484375000000000200 ) ) ; +#11633 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -2.031309222112803500E-018, 1.105662432702592300 ) ) ; +#11634 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#11635 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.9531249999999956700 ) ) ; +#11636 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.333333333333331900 ) ) ; +#11637 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323638400 ) ) ; +#11638 = FACE_OUTER_BOUND ( 'NONE', #9949, .T. ) ; +#11639 = ORIENTED_EDGE ( 'NONE', *, *, #17166, .F. ) ; +#11640 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, 0.001736111111123031000 ) ) ; +#11641 = DIRECTION ( 'NONE', ( 0.5673761158323235000, 0.8234587683563917600, -0.0000000000000000000 ) ) ; +#11642 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.243055555555553400 ) ) ; +#11643 = CARTESIAN_POINT ( 'NONE', ( 0.3122369529384067500, -0.3496174777277316600, 1.484375000000000200 ) ) ; +#11644 = AXIS2_PLACEMENT_3D ( 'NONE', #2161, #606, #10720 ) ; +#11645 = CARTESIAN_POINT ( 'NONE', ( -0.01620945082699852900, -0.2991169117685522600, 0.1459983008068664300 ) ) ; +#11646 = CONICAL_SURFACE ( 'NONE', #5055, 0.4610132068742565100, 0.1745329251994312500 ) ; +#11647 = ORIENTED_EDGE ( 'NONE', *, *, #12492, .F. ) ; +#11648 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.4097222222222138800 ) ) ; +#11649 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#11650 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.402777777777777200 ) ) ; +#11651 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#11652 = LINE ( 'NONE', #5627, #6127 ) ; +#11653 = VERTEX_POINT ( 'NONE', #3613 ) ; +#11654 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.4809027777777698500 ) ) ; +#11655 = FACE_OUTER_BOUND ( 'NONE', #9519, .T. ) ; +#11656 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.1874999999999894500 ) ) ; +#11657 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11658 = EDGE_CURVE ( 'NONE', #17052, #7163, #17221, .T. ) ; +#11659 = ORIENTED_EDGE ( 'NONE', *, *, #6503, .F. ) ; +#11660 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11661 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.434027777777777700 ) ) ; +#11663 = EDGE_CURVE ( 'NONE', #8262, #7132, #4996, .T. ) ; +#11662 = LINE ( 'NONE', #3240, #16491 ) ; +#11664 = DIRECTION ( 'NONE', ( -0.09852382856602404100, 0.1429921145089355900, 0.9848077530122091300 ) ) ; +#11665 = DIRECTION ( 'NONE', ( 1.000000000000000000, -0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11666 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.447916666666666700 ) ) ; +#11667 = AXIS2_PLACEMENT_3D ( 'NONE', #14878, #3107, #1751 ) ; +#11668 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.4166666666666584700 ) ) ; +#11669 = CARTESIAN_POINT ( 'NONE', ( 0.2925036891426877600, 0.04949796905706099800, 0.1380411786983877500 ) ) ; +#11670 = VERTEX_POINT ( 'NONE', #16632 ) ; +#11671 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.7187499999999936700 ) ) ; +#11672 = DIRECTION ( 'NONE', ( -0.2243975804000434600, 0.9744976787610149000, 0.0000000000000000000 ) ) ; +#11673 = CIRCLE ( 'NONE', #4517, 0.4687499999999995600 ) ; +#11674 = EDGE_LOOP ( 'NONE', ( #16867, #17974, #4435, #18829 ) ) ; +#11675 = ORIENTED_EDGE ( 'NONE', *, *, #4020, .F. ) ; +#11676 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#11677 = LINE ( 'NONE', #7736, #16274 ) ; +#11678 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.9947916666666628500 ) ) ; +#11679 = PLANE ( 'NONE', #17968 ) ; +#11680 = EDGE_CURVE ( 'NONE', #206, #12535, #16288, .T. ) ; +#11681 = ADVANCED_FACE ( 'NONE', ( #15358 ), #8935, .T. ) ; +#11682 = EDGE_CURVE ( 'NONE', #1554, #6286, #11920, .T. ) ; +#11683 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.031249999999996400 ) ) ; +#11684 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.107638888888886200 ) ) ; +#11685 = EDGE_CURVE ( 'NONE', #5952, #6761, #3621, .T. ) ; +#11686 = ORIENTED_EDGE ( 'NONE', *, *, #11951, .F. ) ; +#11687 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.187499999999998000 ) ) ; +#11688 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.006944444444432563800 ) ) ; +#11689 = AXIS2_PLACEMENT_3D ( 'NONE', #9764, #5364, #876 ) ; +#11690 = VECTOR ( 'NONE', #2180, 39.37007874015748900 ) ; +#11691 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#11692 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.4652777777777696900 ) ) ; +#11693 = CIRCLE ( 'NONE', #13561, 0.4610132068742565100 ) ; +#11694 = ORIENTED_EDGE ( 'NONE', *, *, #838, .F. ) ; +#11695 = DIRECTION ( 'NONE', ( 0.8639889495520251000, -0.5035107695491610700, 0.0000000000000000000 ) ) ; +#11696 = FACE_OUTER_BOUND ( 'NONE', #5681, .T. ) ; +#11697 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.015624999999996200 ) ) ; +#11698 = VECTOR ( 'NONE', #2361, 39.37007874015748100 ) ; +#11699 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.239583333333331300 ) ) ; +#11700 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11701 = CARTESIAN_POINT ( 'NONE', ( -0.3535953843793249200, 0.3077285600096894600, 1.593375490995827300 ) ) ; +#11702 = VERTEX_POINT ( 'NONE', #11030 ) ; +#11703 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11704 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.225694444444442200 ) ) ; +#11705 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #16059, #7213, #17499, #8553 ), + .UNSPECIFIED., .F., .F., + ( 4, 4 ), + ( 0.0000000000000000000, 0.002302426932615319000 ), + .UNSPECIFIED. ) ; +#11706 = EDGE_LOOP ( 'NONE', ( #10055, #8555, #8197, #16305 ) ) ; +#11707 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.4374999999999920100 ) ) ; +#11708 = ORIENTED_EDGE ( 'NONE', *, *, #17661, .T. ) ; +#11709 = EDGE_CURVE ( 'NONE', #16585, #5774, #15403, .T. ) ; +#11710 = DIRECTION ( 'NONE', ( 0.2851439985633803000, 0.9584846895403634800, -0.0000000000000000000 ) ) ; +#11711 = ORIENTED_EDGE ( 'NONE', *, *, #1337, .T. ) ; +#11712 = ORIENTED_EDGE ( 'NONE', *, *, #15216, .F. ) ; +#11713 = LINE ( 'NONE', #16482, #2065 ) ; +#11714 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.406249999999999300 ) ) ; +#11715 = AXIS2_PLACEMENT_3D ( 'NONE', #6960, #14550, #2828 ) ; +#11716 = VERTEX_POINT ( 'NONE', #13931 ) ; +#11717 = ORIENTED_EDGE ( 'NONE', *, *, #4396, .F. ) ; +#11718 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.4305555555555472500 ) ) ; +#11719 = VECTOR ( 'NONE', #15300, 39.37007874015748100 ) ; +#11720 = DIRECTION ( 'NONE', ( -0.9584846895403615900, 0.2851439985633867400, 0.0000000000000000000 ) ) ; +#11721 = AXIS2_PLACEMENT_3D ( 'NONE', #10686, #15060, #16611 ) ; +#11722 = ORIENTED_EDGE ( 'NONE', *, *, #673, .T. ) ; +#11723 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.2013888888888783800 ) ) ; +#11724 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.006944444444432569900 ) ) ; +#11725 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.1180555555555443800 ) ) ; +#11726 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#11727 = ADVANCED_FACE ( 'NONE', ( #12639 ), #15608, .T. ) ; +#11728 = CARTESIAN_POINT ( 'NONE', ( 0.2615678826637189400, 0.3796253675287058500, 1.143750000000000000 ) ) ; +#11729 = CARTESIAN_POINT ( 'NONE', ( -0.06919666627598536300, -0.4557905201830946300, 1.484375000000000200 ) ) ; +#11730 = DIRECTION ( 'NONE', ( 1.000000000000000000, 3.286260152890463400E-014, 0.0000000000000000000 ) ) ; +#11731 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.430555555555555100 ) ) ; +#11732 = ORIENTED_EDGE ( 'NONE', *, *, #17851, .T. ) ; +#11733 = ORIENTED_EDGE ( 'NONE', *, *, #11663, .T. ) ; +#11734 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11735 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.513888888888889300 ) ) ; +#11736 = EDGE_LOOP ( 'NONE', ( #3243, #5148, #10598, #16095 ) ) ; +#11737 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.4201388888888806200 ) ) ; +#11738 = VECTOR ( 'NONE', #4425, 39.37007874015748900 ) ; +#11739 = LINE ( 'NONE', #19003, #9444 ) ; +#11740 = EDGE_LOOP ( 'NONE', ( #9870, #17469, #2990, #11708 ) ) ; +#11741 = ORIENTED_EDGE ( 'NONE', *, *, #2086, .F. ) ; +#11742 = CARTESIAN_POINT ( 'NONE', ( 0.2938603506652602800, 0.03970071418649293000, 0.1376690354982280900 ) ) ; +#11743 = FACE_OUTER_BOUND ( 'NONE', #15662, .T. ) ; +#11744 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.7986111111111055000 ) ) ; +#11745 = EDGE_CURVE ( 'NONE', #13616, #15707, #4309, .T. ) ; +#11746 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#11747 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.589564174286821800 ) ) ; +#11748 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #14238, #14064, #9625, #5221, #5400, #16906, #8081, #3817, #747 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.05303030303030303200, 0.05681818181818181600, 0.06060606060606060800, 0.06439393939393939200, 0.06818181818181817700 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#11749 = CARTESIAN_POINT ( 'NONE', ( -0.1803732187963012500, -0.4242625117230460200, 1.484375000000000200 ) ) ; +#11750 = ORIENTED_EDGE ( 'NONE', *, *, #14518, .F. ) ; +#11751 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.9600694444444404200 ) ) ; +#11752 = CARTESIAN_POINT ( 'NONE', ( 0.4120995984523148600, 0.2066569569792582900, 1.187613820323599700 ) ) ; +#11753 = ORIENTED_EDGE ( 'NONE', *, *, #12294, .T. ) ; +#11754 = ORIENTED_EDGE ( 'NONE', *, *, #9153, .T. ) ; +#11755 = CIRCLE ( 'NONE', #8651, 0.4610132068742565100 ) ; +#11756 = FACE_OUTER_BOUND ( 'NONE', #3300, .T. ) ; +#11757 = CARTESIAN_POINT ( 'NONE', ( -0.2830319157922539000, -3.414450508579332300E-016, 0.1010421492057234800 ) ) ; +#11758 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11759 = ORIENTED_EDGE ( 'NONE', *, *, #13885, .T. ) ; +#11760 = ORIENTED_EDGE ( 'NONE', *, *, #11521, .T. ) ; +#11761 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.184027777777775700 ) ) ; +#11762 = LINE ( 'NONE', #7879, #948 ) ; +#11763 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.225694444444442900 ) ) ; +#11764 = CARTESIAN_POINT ( 'NONE', ( 0.07035757220612108600, -0.4634372746620864000, 1.484375000000000200 ) ) ; +#11765 = DIRECTION ( 'NONE', ( -0.8234587683563796600, -0.5673761158323412700, 0.0000000000000000000 ) ) ; +#11766 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.4479166666666584700 ) ) ; +#11767 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.4687499999999919500 ) ) ; +#11768 = DIRECTION ( 'NONE', ( 0.6078269655510877300, -0.7940695057417560500, 0.0000000000000000000 ) ) ; +#11769 = ORIENTED_EDGE ( 'NONE', *, *, #11198, .T. ) ; +#11770 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.064236111111107600 ) ) ; +#11771 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.156249999999997300 ) ) ; +#11772 = CARTESIAN_POINT ( 'NONE', ( 0.2802162586133474800, 0.3660765293230687800, 1.187613820323604600 ) ) ; +#11773 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#11774 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11775 = CARTESIAN_POINT ( 'NONE', ( -0.2801421041876611700, 0.03766152241599592100, 0.09959074110935449400 ) ) ; +#11776 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.9826388888888846200 ) ) ; +#11777 = DIRECTION ( 'NONE', ( -0.3447650836342944800, -0.9386889991400974000, 0.0000000000000000000 ) ) ; +#11778 = CARTESIAN_POINT ( 'NONE', ( 0.2931451947142731400, -0.07740133135454006800, 0.1559901713864331500 ) ) ; +#11779 = ORIENTED_EDGE ( 'NONE', *, *, #14116, .T. ) ; +#11780 = FACE_OUTER_BOUND ( 'NONE', #3906, .T. ) ; +#11781 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.3541666666666579700 ) ) ; +#11782 = EDGE_LOOP ( 'NONE', ( #14357, #8212, #8068, #16671 ) ) ; +#11783 = DIRECTION ( 'NONE', ( -0.05986782849628243000, 0.1630016340966666800, 0.9848077530122091300 ) ) ; +#11784 = EDGE_CURVE ( 'NONE', #8721, #982, #15584, .T. ) ; +#11785 = CARTESIAN_POINT ( 'NONE', ( -2.628210380088966000E-016, -7.453211780702846200E-017, -1.174024639073316200 ) ) ; +#11786 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11787 = ORIENTED_EDGE ( 'NONE', *, *, #17758, .F. ) ; +#11788 = ORIENTED_EDGE ( 'NONE', *, *, #18285, .T. ) ; +#11789 = VERTEX_POINT ( 'NONE', #15324 ) ; +#11790 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.1180555555555443800 ) ) ; +#11791 = DIRECTION ( 'NONE', ( -0.4596954355469866600, 0.8880766332571002900, -0.0000000000000000000 ) ) ; +#11792 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.03124999999998836300 ) ) ; +#11793 = CARTESIAN_POINT ( 'NONE', ( -0.2460457719129499900, -0.1455019186474089400, 0.1070606527723427900 ) ) ; +#11794 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#11795 = ORIENTED_EDGE ( 'NONE', *, *, #16684, .F. ) ; +#11796 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11797 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#11798 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.263888888888887100 ) ) ; +#11799 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#11800 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#11801 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.302083333333331900 ) ) ; +#11802 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.09027777777776684100 ) ) ; +#11803 = EDGE_CURVE ( 'NONE', #13855, #8952, #3868, .T. ) ; +#11804 = CARTESIAN_POINT ( 'NONE', ( 0.2349676613426550400, 0.1844614196388564800, 0.1437035624033402000 ) ) ; +#11805 = ORIENTED_EDGE ( 'NONE', *, *, #18112, .F. ) ; +#11806 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.7916666666666608600 ) ) ; +#11807 = EDGE_CURVE ( 'NONE', #15382, #8592, #2921, .T. ) ; +#11808 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.298611111111109800 ) ) ; +#11809 = ORIENTED_EDGE ( 'NONE', *, *, #926, .F. ) ; +#11810 = EDGE_CURVE ( 'NONE', #7046, #3498, #10768, .T. ) ; +#11811 = ADVANCED_FACE ( 'NONE', ( #11257 ), #3408, .T. ) ; +#11812 = LINE ( 'NONE', #15473, #8356 ) ; +#11813 = CARTESIAN_POINT ( 'NONE', ( 0.1035066076939330600, 0.2289155667798151400, 1.250015718029291000 ) ) ; +#11814 = ORIENTED_EDGE ( 'NONE', *, *, #9002, .F. ) ; +#11815 = DATE_TIME_ROLE ( 'creation_date' ) ; +#11816 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.7552083333333276000 ) ) ; +#11817 = VERTEX_POINT ( 'NONE', #17639 ) ; +#11818 = CARTESIAN_POINT ( 'NONE', ( 0.4592360163321189100, 0.04044079890274024400, 1.587900241027141400 ) ) ; +#11819 = CARTESIAN_POINT ( 'NONE', ( 2.718019236657686400E-016, -2.745266647271801300E-017, 3.802149639073312900 ) ) ; +#11820 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.079861111111108100 ) ) ; +#11821 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.243055555555553800 ) ) ; +#11822 = EDGE_LOOP ( 'NONE', ( #2775, #4693, #15432, #3883 ) ) ; +#11823 = ADVANCED_FACE ( 'NONE', ( #3380, #8693 ), #5277, .T. ) ; +#11824 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#11825 = ORIENTED_EDGE ( 'NONE', *, *, #151, .T. ) ; +#11826 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#11827 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11828 = ORIENTED_EDGE ( 'NONE', *, *, #7998, .T. ) ; +#11829 = EDGE_CURVE ( 'NONE', #15661, #18936, #13168, .T. ) ; +#11830 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.7656249999999942300 ) ) ; +#11831 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.204861111111108700 ) ) ; +#11832 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.291666666666665200 ) ) ; +#11833 = CARTESIAN_POINT ( 'NONE', ( -0.2802162586133528100, 0.3660765293230648900, 1.593193105402742800 ) ) ; +#11834 = AXIS2_PLACEMENT_3D ( 'NONE', #14908, #9068, #370 ) ; +#11835 = PLANE ( 'NONE', #7671 ) ; +#11836 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.076388888888885500 ) ) ; +#11837 = DIRECTION ( 'NONE', ( 0.5358267949790005400, -0.8443279255020126300, 0.0000000000000000000 ) ) ; +#11839 = EDGE_CURVE ( 'NONE', #14055, #1681, #6708, .T. ) ; +#11838 = LINE ( 'NONE', #17378, #7930 ) ; +#11840 = AXIS2_PLACEMENT_3D ( 'NONE', #13009, #4187, #6968 ) ; +#11841 = VERTEX_POINT ( 'NONE', #18143 ) ; +#11842 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.4236111111111029400 ) ) ; +#11843 = EDGE_LOOP ( 'NONE', ( #1213, #12186, #8576, #11753, #10845, #8667 ) ) ; +#11844 = VERTEX_POINT ( 'NONE', #6481 ) ; +#11845 = CARTESIAN_POINT ( 'NONE', ( -0.3102345034808015600, -0.04207567595110731100, 0.1817961569313389900 ) ) ; +#11846 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.2534722222222125500 ) ) ; +#11847 = LINE ( 'NONE', #9665, #15301 ) ; +#11848 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.1597222222222113900 ) ) ; +#11849 = PLANE ( 'NONE', #2311 ) ; +#11850 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, 0.08680555555556832000 ) ) ; +#11851 = CARTESIAN_POINT ( 'NONE', ( -0.2550512730458038300, -0.1284423326710433200, 0.1062879576219630700 ) ) ; +#11852 = DIRECTION ( 'NONE', ( -1.000000000000000000, -6.128431095930864100E-014, 0.0000000000000000000 ) ) ; +#11853 = EDGE_CURVE ( 'NONE', #3723, #14010, #16063, .T. ) ; +#11854 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#11855 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#11856 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.475694444444444000 ) ) ; +#11857 = CARTESIAN_POINT ( 'NONE', ( -0.4669429843783102200, -0.04111948248551667400, 1.587900241027141200 ) ) ; +#11858 = AXIS2_PLACEMENT_3D ( 'NONE', #10639, #9151, #335 ) ; +#11859 = CARTESIAN_POINT ( 'NONE', ( 0.01171875000000001400, 0.4686034927296605600, 1.484375000000000200 ) ) ; +#11860 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.569444444444445500 ) ) ; +#11861 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.05208333333332212900 ) ) ; +#11862 = VECTOR ( 'NONE', #8973, 39.37007874015748100 ) ; +#11863 = ORIENTED_EDGE ( 'NONE', *, *, #3115, .T. ) ; +#11864 = CARTESIAN_POINT ( 'NONE', ( -0.2883629936301649300, 0.1063723611321647400, 0.1674337144626003600 ) ) ; +#11865 = VECTOR ( 'NONE', #13580, 39.37007874015748100 ) ; +#11866 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.4826388888888807300 ) ) ; +#11867 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#11868 = CONICAL_SURFACE ( 'NONE', #6357, 0.4610132068742565100, 0.1745329251994279500 ) ; +#11869 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, 0.05555555555556764000 ) ) ; +#11870 = PERSON_AND_ORGANIZATION_ROLE ( 'design_supplier' ) ; +#11871 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.6753472222222158800 ) ) ; +#11872 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#11873 = CARTESIAN_POINT ( 'NONE', ( 0.2055630208891567900, -0.2128645352239162700, -1.537604541542003200 ) ) ; +#11874 = DIRECTION ( 'NONE', ( 0.1589208555515906900, -0.06998465030130833500, -0.9848077530122080200 ) ) ; +#11875 = VECTOR ( 'NONE', #13639, 39.37007874015748900 ) ; +#11876 = VERTEX_POINT ( 'NONE', #2041 ) ; +#11877 = CARTESIAN_POINT ( 'NONE', ( -0.3829490853735665900, -0.2566771803726130600, 1.187613820323638600 ) ) ; +#11878 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.9513888888888848400 ) ) ; +#11879 = EDGE_CURVE ( 'NONE', #2278, #12567, #5427, .T. ) ; +#11880 = FACE_BOUND ( 'NONE', #7771, .T. ) ; +#11881 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.184027777777775700 ) ) ; +#11882 = VERTEX_POINT ( 'NONE', #13638 ) ; +#11883 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.02083333333332174400 ) ) ; +#11884 = FACE_OUTER_BOUND ( 'NONE', #78, .T. ) ; +#11885 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11886 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.107638888888886200 ) ) ; +#11887 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#11888 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.8420138888888837300 ) ) ; +#11889 = EDGE_CURVE ( 'NONE', #12990, #11305, #18273, .T. ) ; +#11890 = DIRECTION ( 'NONE', ( -0.7025573672080260800, 0.7116271114718203400, 0.0000000000000000000 ) ) ; +#11891 = CARTESIAN_POINT ( 'NONE', ( 0.1803732187962982800, 0.4242625117230472400, 1.440511179676401200 ) ) ; +#11892 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11893 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.9166666666666618600 ) ) ; +#11894 = PLANE ( 'NONE', #6157 ) ; +#11895 = CARTESIAN_POINT ( 'NONE', ( 0.2726640836975267600, -0.1324514385845324300, 0.1545372752999914500 ) ) ; +#11896 = FACE_OUTER_BOUND ( 'NONE', #17099, .T. ) ; +#11897 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.5034722222222146600 ) ) ; +#11898 = ADVANCED_FACE ( 'NONE', ( #858 ), #403, .T. ) ; +#11899 = CIRCLE ( 'NONE', #6423, 0.4610132068742565100 ) ; +#11900 = ORIENTED_EDGE ( 'NONE', *, *, #7013, .T. ) ; +#11901 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11902 = VECTOR ( 'NONE', #6056, 39.37007874015748100 ) ; +#11903 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.3628472222222134400 ) ) ; +#11904 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.3194444444444350400 ) ) ; +#11905 = PLANE ( 'NONE', #8473 ) ; +#11906 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.01736111111109918000 ) ) ; +#11907 = ORIENTED_EDGE ( 'NONE', *, *, #12739, .F. ) ; +#11908 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.1076388888888777700 ) ) ; +#11909 = CARTESIAN_POINT ( 'NONE', ( -0.3477592364557806600, -0.3026494512999792800, 1.440511179676396700 ) ) ; +#11910 = EDGE_CURVE ( 'NONE', #5921, #17642, #419, .T. ) ; +#11911 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.5468749999999925600 ) ) ; +#11912 = PLANE ( 'NONE', #18561 ) ; +#11913 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.347222222222221200 ) ) ; +#11914 = CARTESIAN_POINT ( 'NONE', ( 0.2321251145655835700, 0.3983103163368992800, 1.143750000000000000 ) ) ; +#11915 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.368055555555554500 ) ) ; +#11916 = EDGE_CURVE ( 'NONE', #191, #1646, #13757, .T. ) ; +#11917 = VECTOR ( 'NONE', #16902, 39.37007874015748100 ) ; +#11918 = AXIS2_PLACEMENT_3D ( 'NONE', #12808, #841, #2502 ) ; +#11919 = CARTESIAN_POINT ( 'NONE', ( -0.1034502481550478400, 0.4492562999771345100, 1.187613820323598600 ) ) ; +#11920 = LINE ( 'NONE', #592, #7546 ) ; +#11921 = AXIS2_PLACEMENT_3D ( 'NONE', #375, #179, #3018 ) ; +#11922 = CIRCLE ( 'NONE', #3939, 0.4687475818742554100 ) ; +#11923 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.347222222222221200 ) ) ; +#11924 = ORIENTED_EDGE ( 'NONE', *, *, #2958, .T. ) ; +#11925 = AXIS2_PLACEMENT_3D ( 'NONE', #11414, #7037, #10056 ) ; +#11926 = VECTOR ( 'NONE', #8153, 39.37007874015748900 ) ; +#11927 = FACE_OUTER_BOUND ( 'NONE', #426, .T. ) ; +#11928 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.08680555555554481100 ) ) ; +#11929 = EDGE_LOOP ( 'NONE', ( #4338, #6491, #12469, #8151 ) ) ; +#11930 = DIRECTION ( 'NONE', ( 1.000000000000000000, 2.486899575160351000E-014, 0.0000000000000000000 ) ) ; +#11931 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.5451388888888811800 ) ) ; +#11932 = ORIENTED_EDGE ( 'NONE', *, *, #14091, .F. ) ; +#11933 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#11934 = VERTEX_POINT ( 'NONE', #12601 ) ; +#11935 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#11936 = DIRECTION ( 'NONE', ( -0.9961450333403962800, -0.08772156263576842700, 0.0000000000000000000 ) ) ; +#11937 = ORIENTED_EDGE ( 'NONE', *, *, #10938, .F. ) ; +#11938 = ORIENTED_EDGE ( 'NONE', *, *, #2217, .T. ) ; +#11939 = FACE_OUTER_BOUND ( 'NONE', #6189, .T. ) ; +#11941 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.7031249999999938900 ) ) ; +#11940 = FACE_BOUND ( 'NONE', #7834, .T. ) ; +#11942 = LINE ( 'NONE', #14978, #14463 ) ; +#11943 = EDGE_LOOP ( 'NONE', ( #3909, #19032, #14306, #8383 ) ) ; +#11944 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11945 = EDGE_CURVE ( 'NONE', #11716, #18178, #1531, .T. ) ; +#11946 = CARTESIAN_POINT ( 'NONE', ( 0.2960268839648161300, -0.08340554564884494800, -1.526507124825876800 ) ) ; +#11947 = CONICAL_SURFACE ( 'NONE', #12553, 0.4610132068742565100, 0.1745329251994305600 ) ; +#11948 = EDGE_CURVE ( 'NONE', #16349, #12243, #10300, .T. ) ; +#11949 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#11950 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.8888888888888844000 ) ) ; +#11951 = EDGE_CURVE ( 'NONE', #3029, #15382, #8917, .T. ) ; +#11952 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.343749999999999600 ) ) ; +#11953 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.1701388888888785400 ) ) ; +#11954 = ORIENTED_EDGE ( 'NONE', *, *, #11810, .F. ) ; +#11955 = VERTEX_POINT ( 'NONE', #14014 ) ; +#11956 = DIRECTION ( 'NONE', ( -0.6078269655510708500, -0.7940695057417690400, 0.0000000000000000000 ) ) ; +#11957 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#11958 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.512152777777778100 ) ) ; +#11959 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.591590229135180400 ) ) ; +#11960 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.8663194444444394200 ) ) ; +#11961 = VERTEX_POINT ( 'NONE', #5237 ) ; +#11962 = ORIENTED_EDGE ( 'NONE', *, *, #4303, .F. ) ; +#11963 = FACE_OUTER_BOUND ( 'NONE', #18193, .T. ) ; +#11964 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.5868055555555485900 ) ) ; +#11965 = LINE ( 'NONE', #130, #10820 ) ; +#11966 = PLANE ( 'NONE', #18530 ) ; +#11967 = FACE_OUTER_BOUND ( 'NONE', #18077, .T. ) ; +#11968 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.152777777777775200 ) ) ; +#11969 = VERTEX_POINT ( 'NONE', #10991 ) ; +#11970 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11971 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.038194444444440900 ) ) ; +#11972 = LINE ( 'NONE', #17588, #9660 ) ; +#11973 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.1354166666666561700 ) ) ; +#11974 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #5286, #2270, #2393, #14171, #9796, #5343, #17144, #11532, #17388 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.9318181818181817700, 0.9356060606060605500, 0.9393939393939394500, 0.9431818181818182300, 0.9469696969696970200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#11975 = EDGE_CURVE ( 'NONE', #11131, #4495, #8255, .T. ) ; +#11976 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#11977 = ORIENTED_EDGE ( 'NONE', *, *, #12400, .T. ) ; +#11978 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.2135416666666565500 ) ) ; +#11979 = VERTEX_POINT ( 'NONE', #13957 ) ; +#11980 = VECTOR ( 'NONE', #12282, 39.37007874015748100 ) ; +#11981 = FACE_OUTER_BOUND ( 'NONE', #1025, .T. ) ; +#11982 = ORIENTED_EDGE ( 'NONE', *, *, #13986, .F. ) ; +#11983 = ORIENTED_EDGE ( 'NONE', *, *, #218, .F. ) ; +#11984 = FACE_OUTER_BOUND ( 'NONE', #15031, .T. ) ; +#11985 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.03819444444443267900 ) ) ; +#11986 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.08333333333332197700 ) ) ; +#11987 = CARTESIAN_POINT ( 'NONE', ( 0.09827160515690010200, -0.2738903337457226400, 0.1224684139440653100 ) ) ; +#11988 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.5954861111111039400 ) ) ; +#11989 = DIRECTION ( 'NONE', ( 1.000000000000000000, 1.953992523340275200E-014, 0.0000000000000000000 ) ) ; +#11990 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#11991 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.173611111111108500 ) ) ; +#11992 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#11993 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.256944444444443100 ) ) ; +#11994 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #6376, #18252, #2146, #9419, #12183, #10770, #16691, #12443, #7882 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5378787878787878500, 0.5416666666666667400, 0.5454545454545454100, 0.5492424242424243100, 0.5530303030303029800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#11995 = ORIENTED_EDGE ( 'NONE', *, *, #17246, .F. ) ; +#11996 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.1666666666666565000 ) ) ; +#11997 = ORIENTED_EDGE ( 'NONE', *, *, #3686, .T. ) ; +#11998 = ORIENTED_EDGE ( 'NONE', *, *, #10824, .T. ) ; +#11999 = LINE ( 'NONE', #1609, #9024 ) ; +#12000 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.6562499999999931200 ) ) ; +#12001 = ORIENTED_EDGE ( 'NONE', *, *, #12940, .T. ) ; +#12002 = ORIENTED_EDGE ( 'NONE', *, *, #732, .F. ) ; +#12003 = EDGE_CURVE ( 'NONE', #6322, #971, #7325, .T. ) ; +#12004 = DIRECTION ( 'NONE', ( 0.3447650836343011400, 0.9386889991400949600, 0.0000000000000000000 ) ) ; +#12005 = ADVANCED_FACE ( 'NONE', ( #4765 ), #11231, .T. ) ; +#12006 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#12007 = CARTESIAN_POINT ( 'NONE', ( 0.4505462270817887600, -0.09767944602039578500, 1.589564174286821600 ) ) ; +#12008 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.7864583333333279300 ) ) ; +#12009 = CARTESIAN_POINT ( 'NONE', ( -0.04796193690998251700, 0.2723735381835195600, 0.08286399342893272000 ) ) ; +#12010 = DIRECTION ( 'NONE', ( -0.6078269655510877300, 0.7940695057417560500, 0.0000000000000000000 ) ) ; +#12011 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995800, 0.04910803210131815800, 1.528000076388832600 ) ) ; +#12012 = EDGE_LOOP ( 'NONE', ( #18921, #6290, #14426, #5144, #15939, #2508 ) ) ; +#12013 = EDGE_CURVE ( 'NONE', #4630, #17455, #16521, .T. ) ; +#12014 = ORIENTED_EDGE ( 'NONE', *, *, #1790, .F. ) ; +#12015 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.1250000000000127400 ) ) ; +#12016 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#12017 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.9305555555555513600 ) ) ; +#12018 = EDGE_LOOP ( 'NONE', ( #7176, #9865, #17483, #15936 ) ) ; +#12019 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.9861111111111073900 ) ) ; +#12020 = LINE ( 'NONE', #8826, #4404 ) ; +#12021 = ADVANCED_FACE ( 'NONE', ( #12613 ), #4978, .T. ) ; +#12022 = ORIENTED_EDGE ( 'NONE', *, *, #14897, .F. ) ; +#12023 = DIRECTION ( 'NONE', ( -0.1004911932742403200, -0.9949379478511808400, 0.0000000000000000000 ) ) ; +#12024 = DIRECTION ( 'NONE', ( 0.7289686274214154400, -0.6845471059286846200, 0.0000000000000000000 ) ) ; +#12025 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.131944444444441500 ) ) ; +#12026 = CARTESIAN_POINT ( 'NONE', ( -0.02041011989960541500, -0.2768913463765826900, 1.265525726069368200 ) ) ; +#12027 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.7934027777777722400 ) ) ; +#12028 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.4305555555555471400 ) ) ; +#12029 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#12030 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#12031 = CARTESIAN_POINT ( 'NONE', ( 0.1545209260279755100, 0.2648338252330053000, 0.1654478193764556700 ) ) ; +#12032 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.8715277777777726800 ) ) ; +#12033 = CARTESIAN_POINT ( 'NONE', ( -0.04710524684730638100, 0.4663771630552400700, 1.484375000000000200 ) ) ; +#12034 = ORIENTED_EDGE ( 'NONE', *, *, #45, .T. ) ; +#12035 = ORIENTED_EDGE ( 'NONE', *, *, #14172, .F. ) ; +#12036 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.2048611111111012000 ) ) ; +#12037 = ORIENTED_EDGE ( 'NONE', *, *, #16505, .F. ) ; +#12038 = VECTOR ( 'NONE', #1122, 39.37007874015747400 ) ; +#12039 = EDGE_CURVE ( 'NONE', #12651, #11495, #16043, .T. ) ; +#12040 = VERTEX_POINT ( 'NONE', #9637 ) ; +#12041 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.8645833333333286000 ) ) ; +#12042 = EDGE_CURVE ( 'NONE', #8578, #17280, #7769, .T. ) ; +#12043 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.4010416666666581400 ) ) ; +#12044 = ORIENTED_EDGE ( 'NONE', *, *, #7381, .F. ) ; +#12045 = CARTESIAN_POINT ( 'NONE', ( -0.1833993232404402800, 0.4313803237839096700, 1.143750000000000000 ) ) ; +#12046 = AXIS2_PLACEMENT_3D ( 'NONE', #10523, #14772, #13436 ) ; +#12047 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.8888888888888840700 ) ) ; +#12048 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.08333333333334601300 ) ) ; +#12049 = CARTESIAN_POINT ( 'NONE', ( 0.2849174203000388000, -0.3722181606565329600, 1.484375000000000200 ) ) ; +#12050 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.1458333333333465000 ) ) ; +#12051 = CARTESIAN_POINT ( 'NONE', ( -0.08804815001363371100, -0.2750623663876566300, 0.1151841708429801900 ) ) ; +#12052 = EDGE_LOOP ( 'NONE', ( #17482, #15603, #17665, #9678, #10159, #14324 ) ) ; +#12053 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.4774305555555475300 ) ) ; +#12054 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.7361111111111051700 ) ) ; +#12055 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676384800 ) ) ; +#12056 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.138888888888886000 ) ) ; +#12057 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#12058 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12059 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.309027777777776800 ) ) ; +#12060 = ORIENTED_EDGE ( 'NONE', *, *, #12113, .T. ) ; +#12061 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.1145833333333226300 ) ) ; +#12062 = ORIENTED_EDGE ( 'NONE', *, *, #5225, .T. ) ; +#12063 = EDGE_CURVE ( 'NONE', #12845, #13621, #16747, .T. ) ; +#12064 = VECTOR ( 'NONE', #11799, 39.37007874015748100 ) ; +#12065 = EDGE_LOOP ( 'NONE', ( #13771, #17318, #14931, #19095, #1812, #17285 ) ) ; +#12066 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.5208333333333254900 ) ) ; +#12067 = EDGE_CURVE ( 'NONE', #15825, #8452, #18594, .T. ) ; +#12068 = CARTESIAN_POINT ( 'NONE', ( 0.2659561823096171500, -0.3859943064402053800, 1.484375000000000200 ) ) ; +#12069 = EDGE_CURVE ( 'NONE', #8280, #15563, #9750, .T. ) ; +#12070 = VERTEX_POINT ( 'NONE', #15848 ) ; +#12071 = AXIS2_PLACEMENT_3D ( 'NONE', #15033, #6139, #3123 ) ; +#12072 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.04166666666667873800 ) ) ; +#12073 = ORIENTED_EDGE ( 'NONE', *, *, #3840, .F. ) ; +#12074 = APPROVAL_PERSON_ORGANIZATION ( #8167, #3830, #1452 ) ; +#12075 = VERTEX_POINT ( 'NONE', #14708 ) ; +#12076 = CARTESIAN_POINT ( 'NONE', ( 0.3829490853735701400, -0.2566771803726077300, 1.592921120922338200 ) ) ; +#12077 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12078 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#12079 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.8645833333333287100 ) ) ; +#12080 = VECTOR ( 'NONE', #5819, 39.37007874015748100 ) ; +#12081 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.111111111111108300 ) ) ; +#12082 = DIRECTION ( 'NONE', ( -0.8880766332571099500, 0.4596954355469682300, 0.0000000000000000000 ) ) ; +#12083 = DIRECTION ( 'NONE', ( -1.000000000000000000, -6.217248937900876600E-014, 0.0000000000000000000 ) ) ; +#12084 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.321180555555554200 ) ) ; +#12085 = EDGE_CURVE ( 'NONE', #12726, #13181, #14662, .T. ) ; +#12086 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.8524305555555504700 ) ) ; +#12087 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#12088 = LENGTH_MEASURE_WITH_UNIT ( LENGTH_MEASURE( 0.02539999999999999900 ), #12786 ); +#12089 = AXIS2_PLACEMENT_3D ( 'NONE', #8370, #9982, #1167 ) ; +#12090 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12091 = CARTESIAN_POINT ( 'NONE', ( -0.1035066076939330600, 0.2289155667798151700, 1.525865939309398300 ) ) ; +#12092 = CARTESIAN_POINT ( 'NONE', ( -0.06043000915804221800, 0.2715062813493993600, 0.08586507809646484700 ) ) ; +#12093 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.7395833333333272600 ) ) ; +#12094 = CARTESIAN_POINT ( 'NONE', ( -0.4684122207840598100, 0.01772813958391314700, 1.484375000000000200 ) ) ; +#12095 = AXIS2_PLACEMENT_3D ( 'NONE', #1232, #11531, #4189 ) ; +#12096 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.2465277777777682100 ) ) ; +#12097 = VECTOR ( 'NONE', #5526, 39.37007874015748900 ) ; +#12098 = ADVANCED_FACE ( 'NONE', ( #6837 ), #6375, .T. ) ; +#12099 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12100 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.2204861111111011400 ) ) ; +#12101 = CIRCLE ( 'NONE', #14801, 0.4687475818742581300 ) ; +#12102 = ORIENTED_EDGE ( 'NONE', *, *, #14796, .F. ) ; +#12103 = CARTESIAN_POINT ( 'NONE', ( 0.2659575542964012800, 0.3859962976670585100, 1.143750000000000000 ) ) ; +#12104 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.07291666666667913400 ) ) ; +#12105 = LINE ( 'NONE', #2077, #1044 ) ; +#12106 = DIRECTION ( 'NONE', ( -0.2728267384564744300, 0.9620631844027720500, 0.0000000000000000000 ) ) ; +#12107 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.2048611111111247100 ) ) ; +#12108 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, 0.9687499999999998900 ) ) ; +#12109 = ADVANCED_FACE ( 'NONE', ( #12141 ), #5890, .T. ) ; +#12110 = VERTEX_POINT ( 'NONE', #7052 ) ; +#12111 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.4565972222222141100 ) ) ; +#12112 = DIRECTION ( 'NONE', ( 0.8660254037844364900, 0.0000000000000000000, 0.5000000000000037700 ) ) ; +#12113 = EDGE_CURVE ( 'NONE', #2093, #2038, #2454, .T. ) ; +#12114 = CARTESIAN_POINT ( 'NONE', ( -0.4347510546871065100, 0.1533776299234495300, 1.440511179676384300 ) ) ; +#12115 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.9513888888888847300 ) ) ; +#12116 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.059027777777774100 ) ) ; +#12117 = CIRCLE ( 'NONE', #15109, 0.4687499999999995600 ) ; +#12118 = CARTESIAN_POINT ( 'NONE', ( 0.01152533017185641800, -0.4608691177296606000, 1.143750000000000000 ) ) ; +#12119 = AXIS2_PLACEMENT_3D ( 'NONE', #3917, #8024, #14082 ) ; +#12120 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.291666666666665400 ) ) ; +#12121 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.09722222222223464400 ) ) ; +#12122 = DIRECTION ( 'NONE', ( 0.8574597016599334600, -0.5145511247964167400, 0.0000000000000000000 ) ) ; +#12123 = LINE ( 'NONE', #15805, #15793 ) ; +#12124 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.5277777777777700200 ) ) ; +#12125 = EDGE_LOOP ( 'NONE', ( #12896, #3962, #12906, #5341 ) ) ; +#12126 = AXIS2_PLACEMENT_3D ( 'NONE', #11615, #7116, #12907 ) ; +#12127 = CARTESIAN_POINT ( 'NONE', ( 0.4581049985510722800, 0.09931820485431422400, 1.143750000000000000 ) ) ; +#12128 = LINE ( 'NONE', #11468, #3831 ) ; +#12129 = ORIENTED_EDGE ( 'NONE', *, *, #5081, .F. ) ; +#12130 = VECTOR ( 'NONE', #5663, 39.37007874015748100 ) ; +#12131 = CARTESIAN_POINT ( 'NONE', ( 0.2659575542964096000, -0.3859962976670525700, 1.593193105402742800 ) ) ; +#12132 = CARTESIAN_POINT ( 'NONE', ( 0.2361549172993867000, -0.1830806617422781600, -1.534709720301771900 ) ) ; +#12133 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#12134 = CARTESIAN_POINT ( 'NONE', ( 0.2615678826637272100, -0.3796253675287001900, 1.187613820323598600 ) ) ; +#12135 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.7916666666666614100 ) ) ; +#12136 = EDGE_CURVE ( 'NONE', #1354, #13299, #17664, .T. ) ; +#12137 = EDGE_LOOP ( 'NONE', ( #6389, #16168, #9197, #16784, #2867, #2795 ) ) ; +#12138 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.072916666666663600 ) ) ; +#12139 = VECTOR ( 'NONE', #9405, 39.37007874015748100 ) ; +#12140 = FACE_OUTER_BOUND ( 'NONE', #17773, .T. ) ; +#12141 = FACE_OUTER_BOUND ( 'NONE', #1943, .T. ) ; +#12142 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#12143 = ORIENTED_EDGE ( 'NONE', *, *, #10339, .T. ) ; +#12144 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.414930555555555100 ) ) ; +#12145 = VERTEX_POINT ( 'NONE', #6993 ) ; +#12146 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.427083333333333000 ) ) ; +#12147 = CARTESIAN_POINT ( 'NONE', ( -0.01163351087337929200, -0.3080422948586750700, -1.525435468464305200 ) ) ; +#12149 = EDGE_CURVE ( 'NONE', #2257, #13712, #14206, .T. ) ; +#12148 = LINE ( 'NONE', #7937, #16753 ) ; +#12150 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12151 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#12152 = CARTESIAN_POINT ( 'NONE', ( -0.2659561823096118800, -0.3859943064402096000, 1.484375000000000200 ) ) ; +#12153 = CARTESIAN_POINT ( 'NONE', ( 0.2615678826637189400, 0.3796253675287058500, 1.593193105402742800 ) ) ; +#12154 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.6944444444444379800 ) ) ; +#12155 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.3124999999999910100 ) ) ; +#12156 = VERTEX_POINT ( 'NONE', #18647 ) ; +#12157 = LINE ( 'NONE', #15400, #13084 ) ; +#12158 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.2274305555555457300 ) ) ; +#12159 = FACE_BOUND ( 'NONE', #2368, .T. ) ; +#12160 = FACE_OUTER_BOUND ( 'NONE', #1162, .T. ) ; +#12161 = VERTEX_POINT ( 'NONE', #5415 ) ; +#12162 = CARTESIAN_POINT ( 'NONE', ( 0.09054926103462580800, 0.2765127155297747400, 0.1211250039336502800 ) ) ; +#12163 = VECTOR ( 'NONE', #37, 39.37007874015748100 ) ; +#12164 = VERTEX_POINT ( 'NONE', #18765 ) ; +#12165 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#12166 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.612847222222223200 ) ) ; +#12167 = CARTESIAN_POINT ( 'NONE', ( -0.4606833792705947700, -0.01743562377178979600, 1.484375000000000200 ) ) ; +#12168 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.09375000000001264300 ) ) ; +#12169 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.5520833333333260400 ) ) ; +#12170 = EDGE_CURVE ( 'NONE', #2038, #12276, #12825, .T. ) ; +#12171 = ORIENTED_EDGE ( 'NONE', *, *, #1113, .F. ) ; +#12172 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.6684027777777712400 ) ) ; +#12173 = DIRECTION ( 'NONE', ( 0.7025573672080162000, 0.7116271114718301100, -0.0000000000000000000 ) ) ; +#12174 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#12175 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.1874999999999897300 ) ) ; +#12176 = DIRECTION ( 'NONE', ( 0.8763066800438595900, 0.4817536741017223700, 0.0000000000000000000 ) ) ; +#12177 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.211805555555553100 ) ) ; +#12178 = EDGE_CURVE ( 'NONE', #2566, #12858, #17200, .T. ) ; +#12179 = VERTEX_POINT ( 'NONE', #8399 ) ; +#12180 = AXIS2_PLACEMENT_3D ( 'NONE', #8562, #16005, #8684 ) ; +#12181 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#12182 = AXIS2_PLACEMENT_3D ( 'NONE', #17180, #11206, #14042 ) ; +#12183 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.7569444444444386500 ) ) ; +#12184 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.430555555555555400 ) ) ; +#12185 = AXIS2_PLACEMENT_3D ( 'NONE', #2612, #18589, #14263 ) ; +#12186 = ORIENTED_EDGE ( 'NONE', *, *, #7500, .T. ) ; +#12187 = VERTEX_POINT ( 'NONE', #8860 ) ; +#12188 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, 0.05902777777778966900 ) ) ; +#12189 = CYLINDRICAL_SURFACE ( 'NONE', #15437, 0.4610132068742565100 ) ; +#12190 = FACE_BOUND ( 'NONE', #8672, .T. ) ; +#12191 = ORIENTED_EDGE ( 'NONE', *, *, #12626, .F. ) ; +#12192 = EDGE_LOOP ( 'NONE', ( #3087, #4858, #4459, #17832, #13683, #12881, #12234, #945 ) ) ; +#12193 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.243055555555553800 ) ) ; +#12194 = VECTOR ( 'NONE', #6035, 39.37007874015748900 ) ; +#12195 = VERTEX_POINT ( 'NONE', #17346 ) ; +#12196 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.3333333333333239300 ) ) ; +#12197 = CARTESIAN_POINT ( 'NONE', ( -4.927894462666820100E-017, 1.397477208881750600E-017, 3.802149639073322300 ) ) ; +#12198 = ADVANCED_FACE ( 'NONE', ( #8717 ), #16239, .F. ) ; +#12199 = VERTEX_POINT ( 'NONE', #11372 ) ; +#12200 = EDGE_LOOP ( 'NONE', ( #10823, #2305, #14531, #13503, #7418, #10934 ) ) ; +#12201 = CARTESIAN_POINT ( 'NONE', ( -0.3070850166377885900, -0.3438487595863262100, 1.593467001493433100 ) ) ; +#12202 = EDGE_CURVE ( 'NONE', #7887, #11305, #9683, .T. ) ; +#12203 = CARTESIAN_POINT ( 'NONE', ( -0.07035793515936118700, -0.4634396653935770600, 1.588758826628429600 ) ) ; +#12204 = EDGE_LOOP ( 'NONE', ( #11712, #10446, #11121, #18724 ) ) ; +#12205 = CIRCLE ( 'NONE', #282, 0.4687499999999995600 ) ; +#12206 = FACE_OUTER_BOUND ( 'NONE', #15840, .T. ) ; +#12207 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#12208 = ORIENTED_EDGE ( 'NONE', *, *, #16425, .F. ) ; +#12209 = CLOSED_SHELL ( 'NONE', ( #19030, #3607, #10746, #17035, #3873, #17389, #8339, #15928, #10369, #13160, #16738, #6408, #12313, #7967, #13380, #8139, #17894, #2617, #13364, #2744, #12098, #1955, #4060, #14302, #16443, #15753, #8039, #1566, #597, #8644, #15737, #9862, #17298, #10567, #6701, #617, #9220, #7169, #2435, #4556, #14671, #18000, #19068, #18577, #13952, #14118, #16053, #14027, #523, #17196, #909, #16725, #14590, #12489, #2054, #1974, #13847, #6300, #12780, #4156, #17424, #6215, #16834, #11598, #12391, #18390, #7257, #9407, #13179, #5146, #4474, #4951, #10958, #17492, #16946, #8798, #12503, #5234, #13950, #4463, #15824, #15178, #11823, #11426, #1874, #11681, #18488, #18579, #12021, #1682, #13040, #17015, #7374, #16654, #13138, #5621, #703, #11323, #9418, #6577, #11334, #3801, #17698, #17131, #2155, #9581, #5030, #2236, #6388, #15285, #5135, #13549, #10937, #6677, #9962, #2337, #16939, #7963, #8066, #10853, #4933, #3895, #1671, #13266, #15273, #2806, #9391, #411, #14217, #11630, #9028, #11059, #13255, #9771, #4349, #15385, #17583, #16456, #18211, #6310, #12761, #14322, #7347, #5409, #4572, #8699, #8406, #916, #2252, #7485, #15009, #10194, #17214, #9682, #16852, #10153, #18471, #10250, #12292, #14814, #15869, #9784, #126, #12955, #2354, #18658, #11037, #14696, #6502, #18672, #1210, #12703, #7289, #8221, #226, #7207, #13869, #10669, #17112, #7577, #9315, #7857, #9041, #5808, #4390, #13648, #6412, #2518, #12679, #16550, #5210, #2648, #18093, #6794, #813, #243, #1072, #3413, #6987, #9312, #2171, #36, #5497, #7101, #18745, #6865, #14139, #14803, #1760, #9114, #13663, #6771, #7767, #988, #2080, #9125, #11244, #15548, #17211, #15371, #8161, #10758, #11544, #6513, #18372, #18309, #3791, #14045, #15570, #512, #16248, #14492, #12306, #14199, #14052, #3499, #13568, #8915, #18394, #3221, #4287, #3598, #49, #1477, #7951, #9703, #3394, #2357, #6102, #11150, #6592, #12109, #18213, #5888, #796, #12373, #7753, #18939, #18563, #2259, #809, #12596, #1090, #4857, #614, #1301, #5711, #10875, #3327, #15463, #9298, #11057, #7557, #13752, #1863, #7880, #12592, #15084, #8246, #12395, #2537, #18104, #8239, #16157, #4944, #6003, #2702, #4755, #12693, #531, #4201, #3042, #5318, #3712, #10456, #2074, #15667, #4844, #10658, #16748, #16233, #13937, #1363, #4667, #8158, #3783, #13749, #17533, #11134, #323, #720, #18015, #17619, #5393, #3234, #16342, #9698, #15483, #1584, #14425, #15479, #12005, #5048, #10046, #8606, #5328, #15096, #16658, #16856, #17908, #336, #1456, #12198, #3708, #15648, #6200, #5588, #3990, #16640, #10552, #1971, #7665, #13462, #3030, #6690, #12215, #15963, #8322, #6595, #18190, #4651, #5669, #14136, #4251, #12574, #15205, #15562, #12511, #9517, #17037, #11503, #3692, #730, #10870, #425, #1175, #9501, #9597, #18496, #3516, #14887, #10282, #12850, #10476, #9881, #8, #8823, #4741, #3513, #3975, #5903, #1404, #13736, #13476, #9521, #18295, #16359, #8422, #10384, #1007, #9204, #7396, #7471, #14386, #9604, #10951, #3119, #11727, #11898, #6492, #16929, #16020, #7678, #8549, #15288, #3584, #7869, #15197, #18317, #14904, #11222, #5772, #11811, #5231, #8058, #18981, #8508, #886, #5047, #13234, #12777, #2174, #18838, #10769, #6888, #11408, #14995, #2893, #16534, #8633, #5121, #3421, #6790, #17803, #15354, #6970, #1263, #6115, #2421, #3132, #1773, #7058, #16117, #3314, #13860, #11158 ) ) ; +#12210 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.5624999999999930100 ) ) ; +#12211 = LINE ( 'NONE', #16704, #1169 ) ; +#12212 = EDGE_CURVE ( 'NONE', #10226, #4799, #13285, .T. ) ; +#12213 = AXIS2_PLACEMENT_3D ( 'NONE', #5969, #7229, #13203 ) ; +#12214 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.065972222222219200 ) ) ; +#12215 = ADVANCED_FACE ( 'NONE', ( #885 ), #3256, .F. ) ; +#12216 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #13738, #13806, #10972, #7952, #741, #15330, #18325, #18265, #16955 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.06818181818181823200, 0.07196969696969701700, 0.07575757575757580100, 0.07954545454545458600, 0.08333333333333337000 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#12217 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.1597222222222116400 ) ) ; +#12218 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12219 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.262152777777776100 ) ) ; +#12220 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#12221 = ORIENTED_EDGE ( 'NONE', *, *, #18131, .T. ) ; +#12222 = CARTESIAN_POINT ( 'NONE', ( 0.03322139140567186000, -0.3072518876029474200, -1.524653567684174800 ) ) ; +#12223 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#12224 = CARTESIAN_POINT ( 'NONE', ( 0.04710500384696805100, -0.4663747571701740100, 1.484375000000000200 ) ) ; +#12225 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#12226 = CARTESIAN_POINT ( 'NONE', ( 0.1779294443817246700, 0.2494061819826028600, 0.1647729372796227200 ) ) ; +#12227 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.7013888888888825100 ) ) ; +#12228 = CARTESIAN_POINT ( 'NONE', ( -0.3013685564944260700, -0.07133170349226983200, 0.1739399446777855100 ) ) ; +#12229 = VERTEX_POINT ( 'NONE', #14837 ) ; +#12230 = ORIENTED_EDGE ( 'NONE', *, *, #6382, .F. ) ; +#12231 = LINE ( 'NONE', #12542, #1395 ) ; +#12232 = CONICAL_SURFACE ( 'NONE', #13195, 0.4687475818742583600, 0.1745329251994287800 ) ; +#12233 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.2604166666666571400 ) ) ; +#12234 = ORIENTED_EDGE ( 'NONE', *, *, #13653, .T. ) ; +#12235 = ORIENTED_EDGE ( 'NONE', *, *, #3840, .T. ) ; +#12236 = CYLINDRICAL_SURFACE ( 'NONE', #9711, 0.3125000000000008300 ) ; +#12237 = EDGE_CURVE ( 'NONE', #16073, #14778, #19055, .T. ) ; +#12238 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.09548611111110014100 ) ) ; +#12239 = AXIS2_PLACEMENT_3D ( 'NONE', #18291, #2047, #18403 ) ; +#12240 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12241 = CARTESIAN_POINT ( 'NONE', ( -0.3685331079892080800, 0.2896681615724742700, 1.484375000000000200 ) ) ; +#12242 = VERTEX_POINT ( 'NONE', #10469 ) ; +#12243 = VERTEX_POINT ( 'NONE', #4782 ) ; +#12244 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12245 = ORIENTED_EDGE ( 'NONE', *, *, #355, .T. ) ; +#12246 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.2118055555555692900 ) ) ; +#12247 = DIRECTION ( 'NONE', ( 0.9886712861729665100, -0.1500969283399637100, 0.0000000000000000000 ) ) ; +#12248 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.1180555555555684200 ) ) ; +#12249 = LINE ( 'NONE', #18797, #10395 ) ; +#12250 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.3038194444444350900 ) ) ; +#12251 = EDGE_LOOP ( 'NONE', ( #18844, #14581, #15373, #18438, #4873, #8244 ) ) ; +#12252 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.2152777777777678500 ) ) ; +#12253 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#12254 = CARTESIAN_POINT ( 'NONE', ( -0.4669429843783107800, -0.04111948248551671600, 1.143750000000000000 ) ) ; +#12255 = AXIS2_PLACEMENT_3D ( 'NONE', #3405, #638, #16801 ) ; +#12256 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.243055555555553400 ) ) ; +#12257 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323600200 ) ) ; +#12258 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.104166666666663900 ) ) ; +#12259 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.06250000000001196300 ) ) ; +#12260 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.246527777777775700 ) ) ; +#12261 = ORIENTED_EDGE ( 'NONE', *, *, #12113, .F. ) ; +#12262 = ORIENTED_EDGE ( 'NONE', *, *, #9113, .T. ) ; +#12263 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.3784722222222132200 ) ) ; +#12264 = EDGE_CURVE ( 'NONE', #2965, #15497, #15819, .T. ) ; +#12265 = CARTESIAN_POINT ( 'NONE', ( -0.06223730844116413800, 0.3026481050971502300, 0.1707818986515297100 ) ) ; +#12266 = EDGE_LOOP ( 'NONE', ( #11357, #2962, #2674, #18279 ) ) ; +#12267 = DIRECTION ( 'NONE', ( 0.07982527466453627500, 0.1542128889936760800, -0.9848077530122085800 ) ) ; +#12268 = CYLINDRICAL_SURFACE ( 'NONE', #4420, 0.3125000000000008300 ) ; +#12269 = ORIENTED_EDGE ( 'NONE', *, *, #12517, .T. ) ; +#12270 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.6631944444444377600 ) ) ; +#12271 = DIRECTION ( 'NONE', ( -0.8574597016599265800, -0.5145511247964285100, 0.0000000000000000000 ) ) ; +#12272 = CARTESIAN_POINT ( 'NONE', ( 9.737125754760365500E-018, -3.273043095098425200E-017, -1.174024639073285600 ) ) ; +#12273 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.6145833333333268200 ) ) ; +#12274 = AXIS2_PLACEMENT_3D ( 'NONE', #11854, #5785, #1435 ) ; +#12275 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.006944444444440900 ) ) ; +#12276 = VERTEX_POINT ( 'NONE', #4597 ) ; +#12277 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#12278 = EDGE_LOOP ( 'NONE', ( #14072, #17171, #15627, #826 ) ) ; +#12279 = LINE ( 'NONE', #5099, #2592 ) ; +#12280 = CARTESIAN_POINT ( 'NONE', ( 5.900716195954485100E-017, -3.438787213953062300E-017, -1.174024639073309600 ) ) ; +#12281 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.439236111111110900 ) ) ; +#12282 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12283 = ORIENTED_EDGE ( 'NONE', *, *, #18852, .T. ) ; +#12284 = CARTESIAN_POINT ( 'NONE', ( 0.003297018057824625400, -0.3084979400181353500, -1.525181319284709900 ) ) ; +#12285 = CARTESIAN_POINT ( 'NONE', ( -0.2659575542964046600, -0.3859962976670572300, 1.143750000000000000 ) ) ; +#12286 = CARTESIAN_POINT ( 'NONE', ( -0.3535953843793227500, -0.3077285600096917300, 1.484375000000000200 ) ) ; +#12287 = ORIENTED_EDGE ( 'NONE', *, *, #7381, .T. ) ; +#12288 = CARTESIAN_POINT ( 'NONE', ( -0.4418741004648775200, -0.1314551491986582500, 1.143750000000000000 ) ) ; +#12289 = CARTESIAN_POINT ( 'NONE', ( -2.987024860021044800E-017, 7.469896857675716800E-019, -1.174024639073291600 ) ) ; +#12290 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.6840277777777714600 ) ) ; +#12291 = CARTESIAN_POINT ( 'NONE', ( -0.2853897693204946500, -0.1231364204108869900, 0.1759428834474115500 ) ) ; +#12292 = ADVANCED_FACE ( 'NONE', ( #6862 ), #16387, .F. ) ; +#12293 = ORIENTED_EDGE ( 'NONE', *, *, #15024, .T. ) ; +#12294 = EDGE_CURVE ( 'NONE', #18157, #12726, #14229, .T. ) ; +#12295 = EDGE_CURVE ( 'NONE', #239, #15799, #12848, .T. ) ; +#12296 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, 0.001736111111122757900 ) ) ; +#12297 = ORIENTED_EDGE ( 'NONE', *, *, #15104, .F. ) ; +#12298 = ORIENTED_EDGE ( 'NONE', *, *, #817, .T. ) ; +#12299 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -1.006944444444440600 ) ) ; +#12300 = CARTESIAN_POINT ( 'NONE', ( 0.2157999621606263300, 0.1923800878798915800, 0.1172830760703209900 ) ) ; +#12301 = CARTESIAN_POINT ( 'NONE', ( 0.4624991113355799700, 0.07629635976767419600, 1.484375000000000200 ) ) ; +#12302 = CIRCLE ( 'NONE', #6259, 0.4610132068742565100 ) ; +#12303 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.1041666666666795100 ) ) ; +#12304 = DIRECTION ( 'NONE', ( -0.1500969283399637100, -0.9886712861729665100, -0.0000000000000000000 ) ) ; +#12305 = VERTEX_POINT ( 'NONE', #1709 ) ; +#12306 = ADVANCED_FACE ( 'NONE', ( #16767 ), #10524, .F. ) ; +#12307 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.2447916666666566400 ) ) ; +#12308 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.8194444444444393100 ) ) ; +#12309 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12310 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.9618055555555513600 ) ) ; +#12311 = EDGE_LOOP ( 'NONE', ( #359, #17488, #11290, #2214, #11759, #14715 ) ) ; +#12312 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#12313 = ADVANCED_FACE ( 'NONE', ( #177 ), #10323, .T. ) ; +#12314 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.486111111111111200 ) ) ; +#12315 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.135416666666664100 ) ) ; +#12316 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.04861111111112306100 ) ) ; +#12317 = PERSON_AND_ORGANIZATION ( #18342, #15970 ) ; +#12318 = ORIENTED_EDGE ( 'NONE', *, *, #3545, .T. ) ; +#12319 = EDGE_CURVE ( 'NONE', #12380, #3063, #17918, .T. ) ; +#12320 = CARTESIAN_POINT ( 'NONE', ( 0.3293237658787620500, -0.3335752085024152900, 1.593467001493433100 ) ) ; +#12321 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.4409722222222137700 ) ) ; +#12322 = EDGE_CURVE ( 'NONE', #5734, #15922, #7090, .T. ) ; +#12324 = EDGE_CURVE ( 'NONE', #17343, #10186, #6401, .T. ) ; +#12323 = VECTOR ( 'NONE', #6757, 39.37007874015748100 ) ; +#12325 = AXIS2_PLACEMENT_3D ( 'NONE', #14433, #6984, #6919 ) ; +#12326 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.7812499999999941200 ) ) ; +#12327 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -1.052083333333330200 ) ) ; +#12328 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.4756944444444365900 ) ) ; +#12329 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#12330 = DIRECTION ( 'NONE', ( 1.000000000000000000, 3.641531520770513500E-014, 0.0000000000000000000 ) ) ; +#12331 = ORIENTED_EDGE ( 'NONE', *, *, #14295, .T. ) ; +#12332 = CARTESIAN_POINT ( 'NONE', ( -0.04710500384696480300, 0.4663747571701739000, 1.484375000000000200 ) ) ; +#12333 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.6840277777777717900 ) ) ; +#12334 = LINE ( 'NONE', #16361, #15549 ) ; +#12335 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.7326388888888831800 ) ) ; +#12336 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#12337 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.404513888888888400 ) ) ; +#12338 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.392361111111110300 ) ) ; +#12339 = EDGE_CURVE ( 'NONE', #13232, #2507, #16294, .T. ) ; +#12340 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2934, #51, #16054, #10225, #11688, #8673, #8866, #7453, #11883 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1287878787878787800, 0.1325757575757575700, 0.1363636363636363500, 0.1401515151515151400, 0.1439393939393939200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#12341 = DIRECTION ( 'NONE', ( -0.9202827715058616900, 0.3912539079287132800, 0.0000000000000000000 ) ) ; +#12342 = AXIS2_PLACEMENT_3D ( 'NONE', #12359, #7807, #468 ) ; +#12343 = CARTESIAN_POINT ( 'NONE', ( 0.4492896982220456700, -0.1336612493265843200, 1.143750000000000000 ) ) ; +#12344 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.8229166666666613000 ) ) ; +#12345 = ORIENTED_EDGE ( 'NONE', *, *, #8884, .F. ) ; +#12346 = FACE_BOUND ( 'NONE', #6001, .T. ) ; +#12347 = ORIENTED_EDGE ( 'NONE', *, *, #6609, .F. ) ; +#12348 = CIRCLE ( 'NONE', #683, 0.4687475818742581300 ) ; +#12349 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.1510416666666560500 ) ) ; +#12350 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12351 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.512152777777777900 ) ) ; +#12352 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.6249999999999932300 ) ) ; +#12353 = CARTESIAN_POINT ( 'NONE', ( -0.2295898801003941900, 0.1561213555156358800, 1.265525726069369300 ) ) ; +#12354 = LINE ( 'NONE', #7654, #12821 ) ; +#12355 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.2656249999999901700 ) ) ; +#12356 = CARTESIAN_POINT ( 'NONE', ( 9.847602586434744600E-018, 2.601929759791192700E-016, -1.174024639073302500 ) ) ; +#12357 = EDGE_CURVE ( 'NONE', #10001, #9728, #14688, .T. ) ; +#12358 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.586805555555556000 ) ) ; +#12359 = CARTESIAN_POINT ( 'NONE', ( 0.3477592364557848300, -0.3026494512999745000, 1.593375490995827300 ) ) ; +#12360 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.9374999999999954500 ) ) ; +#12361 = CONICAL_SURFACE ( 'NONE', #11362, 0.4687475818742548600, 0.1745329251994263100 ) ; +#12362 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.6944444444444383100 ) ) ; +#12363 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#12364 = VERTEX_POINT ( 'NONE', #13883 ) ; +#12365 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.052083333333330200 ) ) ; +#12366 = VERTEX_POINT ( 'NONE', #7759 ) ; +#12367 = FACE_OUTER_BOUND ( 'NONE', #5264, .T. ) ; +#12368 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.05208333333334535400 ) ) ; +#12369 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12370 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.2812499999999904000 ) ) ; +#12371 = AXIS2_PLACEMENT_3D ( 'NONE', #10587, #350, #10651 ) ; +#12372 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.9479166666666624100 ) ) ; +#12373 = ADVANCED_FACE ( 'NONE', ( #5666 ), #18272, .F. ) ; +#12374 = ORIENTED_EDGE ( 'NONE', *, *, #17815, .F. ) ; +#12375 = CARTESIAN_POINT ( 'NONE', ( -0.1051863658125172200, -0.4567957869192270100, 1.143750000000000000 ) ) ; +#12376 = VECTOR ( 'NONE', #6624, 39.37007874015748100 ) ; +#12377 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.6284722222222153300 ) ) ; +#12378 = CARTESIAN_POINT ( 'NONE', ( 0.4120995984523190800, -0.2066569569792496000, 1.484375000000000200 ) ) ; +#12379 = LINE ( 'NONE', #18374, #6397 ) ; +#12380 = VERTEX_POINT ( 'NONE', #6528 ) ; +#12381 = DIRECTION ( 'NONE', ( -0.1713325394261282800, -0.02826394418405641500, 0.9848077530122082400 ) ) ; +#12382 = CARTESIAN_POINT ( 'NONE', ( -0.1278875336514725400, 0.4509671176887989400, 1.590308733529502500 ) ) ; +#12383 = CARTESIAN_POINT ( 'NONE', ( -0.3060868967590813500, -0.06298461425138629500, 0.1823163490354292900 ) ) ; +#12384 = VECTOR ( 'NONE', #2926, 39.37007874015748100 ) ; +#12385 = FACE_OUTER_BOUND ( 'NONE', #14972, .T. ) ; +#12386 = ORIENTED_EDGE ( 'NONE', *, *, #6637, .F. ) ; +#12387 = PLANE ( 'NONE', #18264 ) ; +#12388 = CARTESIAN_POINT ( 'NONE', ( 0.4548654901190624100, -0.07503707624388920900, 1.187613820323600600 ) ) ; +#12389 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.6006944444444376500 ) ) ; +#12390 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.8124999999999950000 ) ) ; +#12391 = ADVANCED_FACE ( 'NONE', ( #11927 ), #2946, .T. ) ; +#12392 = ORIENTED_EDGE ( 'NONE', *, *, #3615, .T. ) ; +#12393 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.6354166666666599700 ) ) ; +#12394 = VERTEX_POINT ( 'NONE', #6584 ) ; +#12395 = ADVANCED_FACE ( 'NONE', ( #13546 ), #18068, .F. ) ; +#12396 = CARTESIAN_POINT ( 'NONE', ( 0.4120995984523190800, -0.2066569569792496000, 1.592116737595687700 ) ) ; +#12397 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.223958333333331500 ) ) ; +#12398 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323599700 ) ) ; +#12399 = CARTESIAN_POINT ( 'NONE', ( -0.2326151410112530800, -0.1950957044676070500, -1.530108991424332900 ) ) ; +#12400 = EDGE_CURVE ( 'NONE', #15731, #14959, #2479, .T. ) ; +#12401 = ORIENTED_EDGE ( 'NONE', *, *, #2786, .F. ) ; +#12402 = ORIENTED_EDGE ( 'NONE', *, *, #585, .F. ) ; +#12403 = FACE_OUTER_BOUND ( 'NONE', #7627, .T. ) ; +#12404 = DIRECTION ( 'NONE', ( 0.1664391196603295700, 0.04951473572319281500, 0.9848077530122094600 ) ) ; +#12405 = FACE_OUTER_BOUND ( 'NONE', #12278, .T. ) ; +#12406 = CARTESIAN_POINT ( 'NONE', ( 2.711596482613281000E-017, -2.075613595419662600E-017, 3.802149639073333800 ) ) ; +#12407 = CIRCLE ( 'NONE', #4912, 0.4687499999999995600 ) ; +#12408 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#12409 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #14682, #15911, #1375, #1439, #7295, #10062, #18953, #10199, #18889, #8650, #7360, #1306, #17465, #4261 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 4 ), + ( 0.0000000000000000000, 0.001475286210894260700, 0.002212929316341392500, 0.002950572421788524100, 0.004425858632682787600, 0.005163501738129918300, 0.005901144843577050800 ), + .UNSPECIFIED. ) ; +#12410 = EDGE_LOOP ( 'NONE', ( #7567, #15577, #7243, #14571, #18911, #15062 ) ) ; +#12411 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.5590277777777703500 ) ) ; +#12412 = AXIS2_PLACEMENT_3D ( 'NONE', #10006, #11480, #2652 ) ; +#12413 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#12414 = LINE ( 'NONE', #15239, #11719 ) ; +#12415 = VERTEX_POINT ( 'NONE', #13686 ) ; +#12416 = ORIENTED_EDGE ( 'NONE', *, *, #6353, .T. ) ; +#12417 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.1892361111111010000 ) ) ; +#12418 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#12419 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676401600 ) ) ; +#12420 = ORIENTED_EDGE ( 'NONE', *, *, #15150, .T. ) ; +#12421 = ORIENTED_EDGE ( 'NONE', *, *, #3915, .T. ) ; +#12422 = LINE ( 'NONE', #2073, #10583 ) ; +#12423 = CIRCLE ( 'NONE', #1235, 0.4687499999999995600 ) ; +#12424 = ORIENTED_EDGE ( 'NONE', *, *, #783, .T. ) ; +#12425 = ORIENTED_EDGE ( 'NONE', *, *, #13096, .T. ) ; +#12426 = EDGE_CURVE ( 'NONE', #4990, #483, #5916, .T. ) ; +#12427 = LINE ( 'NONE', #2688, #684 ) ; +#12428 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.564236111111111600 ) ) ; +#12429 = CARTESIAN_POINT ( 'NONE', ( -0.2659575542964040500, -0.3859962976670564500, 1.593193105402742800 ) ) ; +#12430 = VERTEX_POINT ( 'NONE', #8013 ) ; +#12431 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.6145833333333264900 ) ) ; +#12432 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.09722222222221114900 ) ) ; +#12433 = EDGE_CURVE ( 'NONE', #9537, #18157, #2699, .T. ) ; +#12434 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.3767361111111022200 ) ) ; +#12435 = CARTESIAN_POINT ( 'NONE', ( -0.4019321617077186200, -0.2411945954990046500, 1.143750000000000000 ) ) ; +#12436 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676401200 ) ) ; +#12437 = CARTESIAN_POINT ( 'NONE', ( -0.3122369529384058700, 0.3496174777277358800, 1.143750000000000000 ) ) ; +#12438 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.006944444444440400 ) ) ; +#12439 = EDGE_CURVE ( 'NONE', #18468, #17003, #17686, .T. ) ; +#12440 = AXIS2_PLACEMENT_3D ( 'NONE', #12165, #6175, #7861 ) ; +#12441 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.7013888888888827300 ) ) ; +#12442 = AXIS2_PLACEMENT_3D ( 'NONE', #10755, #519, #15194 ) ; +#12443 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.7673611111111055000 ) ) ; +#12444 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.097222222222219400 ) ) ; +#12445 = AXIS2_PLACEMENT_3D ( 'NONE', #4521, #14891, #6135 ) ; +#12446 = ORIENTED_EDGE ( 'NONE', *, *, #15019, .F. ) ; +#12447 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.1805555555555686500 ) ) ; +#12448 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12449 = ORIENTED_EDGE ( 'NONE', *, *, #4320, .T. ) ; +#12450 = VECTOR ( 'NONE', #8175, 39.37007874015748100 ) ; +#12451 = VECTOR ( 'NONE', #13831, 39.37007874015748100 ) ; +#12452 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.3263888888888793500 ) ) ; +#12453 = ORIENTED_EDGE ( 'NONE', *, *, #3967, .F. ) ; +#12454 = ORIENTED_EDGE ( 'NONE', *, *, #13675, .F. ) ; +#12455 = VECTOR ( 'NONE', #11944, 39.37007874015748100 ) ; +#12456 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.9548611111111067200 ) ) ; +#12457 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323599700 ) ) ; +#12458 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.7499999999999938900 ) ) ; +#12459 = CARTESIAN_POINT ( 'NONE', ( -8.435865690748578500E-017, -5.812444888836014700E-017, -1.174024639073269100 ) ) ; +#12460 = EDGE_CURVE ( 'NONE', #17719, #10602, #3627, .T. ) ; +#12461 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#12462 = VERTEX_POINT ( 'NONE', #18127 ) ; +#12463 = CARTESIAN_POINT ( 'NONE', ( 0.2615678826637272100, -0.3796253675287001900, 1.440511179676401600 ) ) ; +#12464 = AXIS2_PLACEMENT_3D ( 'NONE', #11154, #726, #11097 ) ; +#12465 = CARTESIAN_POINT ( 'NONE', ( -0.04349090697847207000, -0.2729727632078031200, -1.556917725157686000 ) ) ; +#12466 = PLANE ( 'NONE', #7268 ) ; +#12467 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.5937499999999932300 ) ) ; +#12468 = EDGE_LOOP ( 'NONE', ( #1594, #11465, #16708, #12060 ) ) ; +#12469 = ORIENTED_EDGE ( 'NONE', *, *, #5671, .F. ) ; +#12470 = AXIS2_PLACEMENT_3D ( 'NONE', #1864, #6303, #9656 ) ; +#12471 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.8541666666666619700 ) ) ; +#12472 = LINE ( 'NONE', #3152, #5530 ) ; +#12473 = VERTEX_POINT ( 'NONE', #9246 ) ; +#12474 = ORIENTED_EDGE ( 'NONE', *, *, #17146, .T. ) ; +#12475 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#12476 = CARTESIAN_POINT ( 'NONE', ( 1.899200323792832800E-016, 2.416275900747809900E-016, 3.802149639073319600 ) ) ; +#12477 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.039930555555552200 ) ) ; +#12478 = DIRECTION ( 'NONE', ( 0.9685831611286293000, 0.2486898871648622900, 0.0000000000000000000 ) ) ; +#12479 = DIRECTION ( 'NONE', ( -0.03896623090933355700, -0.1692197460574983200, -0.9848077530122091300 ) ) ; +#12480 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12481 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -1.437499999999999600 ) ) ; +#12482 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.5520833333333259300 ) ) ; +#12483 = CARTESIAN_POINT ( 'NONE', ( 0.1464933923060664500, 0.2040971351124034000, 1.525865939309398100 ) ) ; +#12484 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.5902777777777704600 ) ) ; +#12485 = CARTESIAN_POINT ( 'NONE', ( 0.3477592364557848300, -0.3026494512999744500, 1.187613820323613700 ) ) ; +#12486 = ORIENTED_EDGE ( 'NONE', *, *, #1255, .F. ) ; +#12487 = VERTEX_POINT ( 'NONE', #6466 ) ; +#12488 = ORIENTED_EDGE ( 'NONE', *, *, #17592, .F. ) ; +#12489 = ADVANCED_FACE ( 'NONE', ( #9627 ), #1322, .T. ) ; +#12490 = LINE ( 'NONE', #1441, #17559 ) ; +#12491 = VERTEX_POINT ( 'NONE', #3951 ) ; +#12492 = EDGE_CURVE ( 'NONE', #8277, #3440, #8016, .T. ) ; +#12493 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.1267361111111005000 ) ) ; +#12494 = AXIS2_PLACEMENT_3D ( 'NONE', #13955, #3833, #874 ) ; +#12495 = CARTESIAN_POINT ( 'NONE', ( -0.1984715807826794600, -0.2434701574589140100, 0.1814090819487659800 ) ) ; +#12496 = CARTESIAN_POINT ( 'NONE', ( 0.4548654901190624100, -0.07503707624388920900, 1.589564174286821600 ) ) ; +#12497 = CARTESIAN_POINT ( 'NONE', ( 0.4190155160288344100, -0.2101251051804357800, 1.592116737595687700 ) ) ; +#12498 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.397569444444443500 ) ) ; +#12499 = ORIENTED_EDGE ( 'NONE', *, *, #17612, .T. ) ; +#12500 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#12501 = CARTESIAN_POINT ( 'NONE', ( -0.07232391368861321200, 0.2469189035578443200, 1.254060627199045100 ) ) ; +#12502 = ORIENTED_EDGE ( 'NONE', *, *, #18852, .F. ) ; +#12503 = ADVANCED_FACE ( 'NONE', ( #10077 ), #18627, .F. ) ; +#12504 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.4427083333333249900 ) ) ; +#12505 = DIRECTION ( 'NONE', ( 0.03896623090933543100, -0.1692197460575012900, 0.9848077530122085800 ) ) ; +#12506 = AXIS2_PLACEMENT_3D ( 'NONE', #8286, #9525, #5362 ) ; +#12507 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.8576388888888836200 ) ) ; +#12508 = ORIENTED_EDGE ( 'NONE', *, *, #2809, .T. ) ; +#12509 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.8402777777777726800 ) ) ; +#12510 = FACE_OUTER_BOUND ( 'NONE', #9743, .T. ) ; +#12511 = ADVANCED_FACE ( 'NONE', ( #8943 ), #5001, .T. ) ; +#12512 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.8541666666666619700 ) ) ; +#12513 = ORIENTED_EDGE ( 'NONE', *, *, #4515, .T. ) ; +#12514 = ORIENTED_EDGE ( 'NONE', *, *, #15247, .F. ) ; +#12515 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12516 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.02777777777776606700 ) ) ; +#12517 = EDGE_CURVE ( 'NONE', #8730, #3183, #5464, .T. ) ; +#12518 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.065972222222219000 ) ) ; +#12519 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12520 = ORIENTED_EDGE ( 'NONE', *, *, #7583, .F. ) ; +#12521 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.6319444444444375400 ) ) ; +#12522 = CARTESIAN_POINT ( 'NONE', ( 0.2154822354126408900, 0.4162859218392699300, 1.143750000000000000 ) ) ; +#12523 = LINE ( 'NONE', #2670, #9988 ) ; +#12524 = ORIENTED_EDGE ( 'NONE', *, *, #16108, .T. ) ; +#12525 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.6892361111111047200 ) ) ; +#12526 = CARTESIAN_POINT ( 'NONE', ( -0.04490884791932896200, 0.2884806618389602100, -1.542005122687307700 ) ) ; +#12527 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.06597222222223427000 ) ) ; +#12528 = EDGE_CURVE ( 'NONE', #873, #13173, #2030, .T. ) ; +#12529 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12530 = VERTEX_POINT ( 'NONE', #11044 ) ; +#12531 = DIRECTION ( 'NONE', ( -0.1697056182357938300, -0.03679256373578055500, -0.9848077530122088000 ) ) ; +#12532 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.3506944444444357000 ) ) ; +#12533 = VECTOR ( 'NONE', #8301, 39.37007874015748100 ) ; +#12534 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.8611111111111063900 ) ) ; +#12535 = VERTEX_POINT ( 'NONE', #11235 ) ; +#12536 = DIRECTION ( 'NONE', ( 0.8574597016599372300, -0.5145511247964108500, 0.0000000000000000000 ) ) ; +#12537 = ORIENTED_EDGE ( 'NONE', *, *, #4361, .F. ) ; +#12538 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.182291666666664500 ) ) ; +#12539 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12540 = CARTESIAN_POINT ( 'NONE', ( -4.927894462666820100E-017, 1.397477208881750600E-017, -1.174024639073296000 ) ) ; +#12541 = ORIENTED_EDGE ( 'NONE', *, *, #2860, .F. ) ; +#12542 = CARTESIAN_POINT ( 'NONE', ( 0.4548654901190608600, 0.07503707624389872900, 1.143750000000000000 ) ) ; +#12543 = CARTESIAN_POINT ( 'NONE', ( 0.04104193570986974800, 0.2649795619646557700, 1.535746377707105400 ) ) ; +#12544 = ORIENTED_EDGE ( 'NONE', *, *, #8409, .F. ) ; +#12545 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.4687499999999916700 ) ) ; +#12546 = FACE_OUTER_BOUND ( 'NONE', #8317, .T. ) ; +#12547 = EDGE_CURVE ( 'NONE', #15240, #11653, #4545, .T. ) ; +#12548 = EDGE_CURVE ( 'NONE', #15623, #14256, #11748, .T. ) ; +#12549 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, 0.1197916666666794200 ) ) ; +#12550 = AXIS2_PLACEMENT_3D ( 'NONE', #2498, #970, #14156 ) ; +#12551 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.592561465728329600 ) ) ; +#12552 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12553 = AXIS2_PLACEMENT_3D ( 'NONE', #9389, #4869, #15175 ) ; +#12554 = CIRCLE ( 'NONE', #1719, 0.4687499999999996700 ) ; +#12555 = DIRECTION ( 'NONE', ( 0.1500969283399706300, 0.9886712861729654000, -0.0000000000000000000 ) ) ; +#12556 = CARTESIAN_POINT ( 'NONE', ( 0.1833993232404440000, -0.4313803237839097800, 1.484375000000000200 ) ) ; +#12557 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.460069444444444200 ) ) ; +#12558 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#12559 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12560 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.1232638888888779500 ) ) ; +#12561 = PLANE ( 'NONE', #9330 ) ; +#12562 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.572916666666667400 ) ) ; +#12563 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.9826388888888846200 ) ) ; +#12564 = LINE ( 'NONE', #11857, #10252 ) ; +#12565 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, -0.09680963237430330300, 1.259867088197676800 ) ) ; +#12566 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.8819444444444398700 ) ) ; +#12567 = VERTEX_POINT ( 'NONE', #12767 ) ; +#12568 = EDGE_CURVE ( 'NONE', #9997, #18244, #13071, .T. ) ; +#12569 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.177083333333330800 ) ) ; +#12570 = VECTOR ( 'NONE', #13271, 39.37007874015748900 ) ; +#12571 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.1249999999999889700 ) ) ; +#12572 = ORIENTED_EDGE ( 'NONE', *, *, #16572, .F. ) ; +#12573 = EDGE_CURVE ( 'NONE', #1398, #5036, #16991, .T. ) ; +#12574 = ADVANCED_FACE ( 'NONE', ( #5452 ), #640, .T. ) ; +#12575 = LINE ( 'NONE', #14873, #7031 ) ; +#12576 = AXIS2_PLACEMENT_3D ( 'NONE', #2770, #5895, #14667 ) ; +#12577 = ORIENTED_EDGE ( 'NONE', *, *, #18948, .F. ) ; +#12578 = AXIS2_PLACEMENT_3D ( 'NONE', #4259, #5597, #15909 ) ; +#12579 = CYLINDRICAL_SURFACE ( 'NONE', #15721, 0.3125000000000008300 ) ; +#12580 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.5624999999999924500 ) ) ; +#12581 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.8159722222222169900 ) ) ; +#12582 = CARTESIAN_POINT ( 'NONE', ( 0.3122369529383993100, 0.3496174777277386600, 1.143750000000000000 ) ) ; +#12583 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#12584 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #7111, #15839, #17402, #8521, #8590, #7242, #4329, #14626, #17468 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4166666666666666300, 0.4204545454545454100, 0.4242424242424243100, 0.4280303030303030900, 0.4318181818181818800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#12585 = DIRECTION ( 'NONE', ( 0.7025573672080260800, -0.7116271114718203400, 0.0000000000000000000 ) ) ; +#12586 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.1006944444444337200 ) ) ; +#12587 = DIRECTION ( 'NONE', ( 0.3447650836342944800, 0.9386889991400974000, -0.0000000000000000000 ) ) ; +#12588 = DIRECTION ( 'NONE', ( -0.1488963146160735800, -0.08935086513736760500, 0.9848077530122085800 ) ) ; +#12589 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.3958333333333249900 ) ) ; +#12590 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.8645833333333287100 ) ) ; +#12591 = VECTOR ( 'NONE', #4801, 39.37007874015747400 ) ; +#12592 = ADVANCED_FACE ( 'NONE', ( #4091 ), #1556, .T. ) ; +#12593 = EDGE_LOOP ( 'NONE', ( #7945, #8558, #267, #4685 ) ) ; +#12594 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.371527777777776800 ) ) ; +#12595 = CONICAL_SURFACE ( 'NONE', #2951, 0.4610132068742565100, 0.1745329251994277300 ) ; +#12596 = ADVANCED_FACE ( 'NONE', ( #1105 ), #11009, .T. ) ; +#12597 = VERTEX_POINT ( 'NONE', #4009 ) ; +#12598 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.258680555555554000 ) ) ; +#12599 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.4513888888888807300 ) ) ; +#12600 = EDGE_CURVE ( 'NONE', #3281, #7917, #9164, .T. ) ; +#12601 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.354166666666665600 ) ) ; +#12602 = CYLINDRICAL_SURFACE ( 'NONE', #4973, 0.4610132068742565100 ) ; +#12603 = CARTESIAN_POINT ( 'NONE', ( -0.4592360163321195800, 0.04044079890273363800, 1.187613820323615500 ) ) ; +#12604 = AXIS2_PLACEMENT_3D ( 'NONE', #15425, #561, #10996 ) ; +#12605 = CARTESIAN_POINT ( 'NONE', ( -0.1803732187963043300, 0.4242625117230446300, 1.143750000000000000 ) ) ; +#12606 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.9166666666666621900 ) ) ; +#12607 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.6180555555555484700 ) ) ; +#12608 = CARTESIAN_POINT ( 'NONE', ( -0.4669405755743598100, -0.04111927036374770500, 1.143750000000000000 ) ) ; +#12609 = ORIENTED_EDGE ( 'NONE', *, *, #6153, .T. ) ; +#12610 = LINE ( 'NONE', #12558, #3377 ) ; +#12611 = LINE ( 'NONE', #462, #17197 ) ; +#12612 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, 0.1093750000000125700 ) ) ; +#12613 = FACE_OUTER_BOUND ( 'NONE', #3176, .T. ) ; +#12614 = VERTEX_POINT ( 'NONE', #12829 ) ; +#12615 = ORIENTED_EDGE ( 'NONE', *, *, #10830, .F. ) ; +#12616 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#12617 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.4305555555555472500 ) ) ; +#12618 = FACE_OUTER_BOUND ( 'NONE', #7843, .T. ) ; +#12619 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#12620 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.7986111111111056100 ) ) ; +#12621 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.508680555555555800 ) ) ; +#12622 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.5972222222222152200 ) ) ; +#12623 = CARTESIAN_POINT ( 'NONE', ( -1.229966025673683700E-016, -2.049643369924191500E-016, 3.802149639073353800 ) ) ; +#12624 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.06076388888887746700 ) ) ; +#12625 = CARTESIAN_POINT ( 'NONE', ( 0.01171868954685638100, -0.4686010753596986400, 1.143750000000000000 ) ) ; +#12626 = EDGE_CURVE ( 'NONE', #13288, #11496, #15363, .T. ) ; +#12627 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.427083333333332600 ) ) ; +#12628 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#12629 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#12630 = ORIENTED_EDGE ( 'NONE', *, *, #11682, .F. ) ; +#12631 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#12632 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.7986111111111059400 ) ) ; +#12633 = LINE ( 'NONE', #14214, #1549 ) ; +#12634 = LINE ( 'NONE', #4976, #4325 ) ; +#12635 = CIRCLE ( 'NONE', #9250, 0.4610132068742565100 ) ; +#12636 = VERTEX_POINT ( 'NONE', #4258 ) ; +#12637 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, 0.02777777777778982600 ) ) ; +#12638 = FACE_OUTER_BOUND ( 'NONE', #1541, .T. ) ; +#12639 = FACE_OUTER_BOUND ( 'NONE', #9006, .T. ) ; +#12640 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.1944444444444340700 ) ) ; +#12641 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.288194444444442900 ) ) ; +#12642 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, 0.07986111111112342800 ) ) ; +#12643 = ORIENTED_EDGE ( 'NONE', *, *, #14638, .F. ) ; +#12644 = EDGE_LOOP ( 'NONE', ( #15609, #304, #15276, #5723 ) ) ; +#12645 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.4756944444444362600 ) ) ; +#12646 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12647 = CARTESIAN_POINT ( 'NONE', ( 0.4669429843783098900, 0.04111948248552013700, 1.484375000000000200 ) ) ; +#12648 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12649 = CARTESIAN_POINT ( 'NONE', ( 2.532093440179767500E-017, -3.844143680069049300E-018, -1.174024639073280000 ) ) ; +#12650 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.03472222222221093400 ) ) ; +#12651 = VERTEX_POINT ( 'NONE', #15771 ) ; +#12652 = EDGE_LOOP ( 'NONE', ( #93, #8381, #4739, #8987 ) ) ; +#12653 = LINE ( 'NONE', #1033, #8726 ) ; +#12654 = FACE_OUTER_BOUND ( 'NONE', #9725, .T. ) ; +#12655 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12656 = VERTEX_POINT ( 'NONE', #2524 ) ; +#12657 = DIRECTION ( 'NONE', ( 0.004341204441673151600, 0.1735939041298396000, 0.9848077530122088000 ) ) ; +#12658 = ORIENTED_EDGE ( 'NONE', *, *, #17845, .F. ) ; +#12659 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.5208333333333259300 ) ) ; +#12660 = CYLINDRICAL_SURFACE ( 'NONE', #1694, 0.3125000000000008300 ) ; +#12661 = ORIENTED_EDGE ( 'NONE', *, *, #10085, .F. ) ; +#12662 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.5312499999999926700 ) ) ; +#12663 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.357638888888888200 ) ) ; +#12664 = EDGE_CURVE ( 'NONE', #15089, #3281, #18835, .T. ) ; +#12665 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#12666 = VERTEX_POINT ( 'NONE', #14311 ) ; +#12667 = EDGE_CURVE ( 'NONE', #3352, #3623, #10929, .T. ) ; +#12668 = VERTEX_POINT ( 'NONE', #13019 ) ; +#12669 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#12670 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12671 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.3611111111111020600 ) ) ; +#12672 = AXIS2_PLACEMENT_3D ( 'NONE', #10837, #12312, #15321 ) ; +#12673 = VERTEX_POINT ( 'NONE', #14500 ) ; +#12674 = CIRCLE ( 'NONE', #18890, 0.4610132068742565100 ) ; +#12675 = LINE ( 'NONE', #14938, #11498 ) ; +#12676 = ORIENTED_EDGE ( 'NONE', *, *, #15492, .F. ) ; +#12677 = ORIENTED_EDGE ( 'NONE', *, *, #9506, .T. ) ; +#12678 = LINE ( 'NONE', #3317, #16355 ) ; +#12679 = ADVANCED_FACE ( 'NONE', ( #13313 ), #1114, .F. ) ; +#12680 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, 0.02256944444445625800 ) ) ; +#12681 = VERTEX_POINT ( 'NONE', #15965 ) ; +#12682 = DIRECTION ( 'NONE', ( 0.05986782849628390800, -0.1630016340966671300, 0.9848077530122088000 ) ) ; +#12683 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#12684 = EDGE_CURVE ( 'NONE', #17767, #13348, #10540, .T. ) ; +#12685 = ORIENTED_EDGE ( 'NONE', *, *, #1941, .F. ) ; +#12686 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.210069444444442200 ) ) ; +#12687 = ORIENTED_EDGE ( 'NONE', *, *, #9181, .F. ) ; +#12688 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.503472222222222100 ) ) ; +#12689 = LINE ( 'NONE', #12288, #8771 ) ; +#12690 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.236111111111109200 ) ) ; +#12691 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.6874999999999936700 ) ) ; +#12692 = FACE_OUTER_BOUND ( 'NONE', #18648, .T. ) ; +#12693 = ADVANCED_FACE ( 'NONE', ( #14449 ), #17460, .F. ) ; +#12694 = EDGE_CURVE ( 'NONE', #8022, #1319, #1535, .T. ) ; +#12695 = ORIENTED_EDGE ( 'NONE', *, *, #11529, .T. ) ; +#12696 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.1892361111111007500 ) ) ; +#12697 = VERTEX_POINT ( 'NONE', #8515 ) ; +#12698 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.520833333333333300 ) ) ; +#12699 = DIRECTION ( 'NONE', ( -0.02499999999999943900, 0.9996874511566102800, 0.0000000000000000000 ) ) ; +#12700 = PLANE ( 'NONE', #18832 ) ; +#12701 = EDGE_CURVE ( 'NONE', #5233, #17258, #14000, .T. ) ; +#12702 = AXIS2_PLACEMENT_3D ( 'NONE', #4469, #8861, #3196 ) ; +#12703 = ADVANCED_FACE ( 'NONE', ( #8923 ), #5224, .T. ) ; +#12704 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.8680555555555508100 ) ) ; +#12705 = MANIFOLD_SOLID_BREP ( 'CirPattern2', #12209 ) ; +#12706 = AXIS2_PLACEMENT_3D ( 'NONE', #15943, #5687, #17505 ) ; +#12707 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, 0.02083333333334523600 ) ) ; +#12708 = ORIENTED_EDGE ( 'NONE', *, *, #739, .F. ) ; +#12709 = ORIENTED_EDGE ( 'NONE', *, *, #4159, .T. ) ; +#12710 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.09722222222221088600 ) ) ; +#12711 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12712 = ORIENTED_EDGE ( 'NONE', *, *, #7696, .T. ) ; +#12713 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.1458333333333227400 ) ) ; +#12714 = VECTOR ( 'NONE', #11347, 39.37007874015748100 ) ; +#12715 = ORIENTED_EDGE ( 'NONE', *, *, #12988, .F. ) ; +#12716 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.3576388888888797400 ) ) ; +#12717 = DIRECTION ( 'NONE', ( -0.08743372756788833600, 0.1500301066140721800, -0.9848077530122082400 ) ) ; +#12718 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.7569444444444387600 ) ) ; +#12719 = EDGE_CURVE ( 'NONE', #7168, #11702, #15590, .T. ) ; +#12720 = CARTESIAN_POINT ( 'NONE', ( -0.2375294541667984600, 0.1763618566830830200, -1.537643750350117000 ) ) ; +#12721 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.09027777777779005800 ) ) ; +#12722 = CARTESIAN_POINT ( 'NONE', ( -0.3477592364557806600, -0.3026494512999792800, 1.187613820323599700 ) ) ; +#12723 = CARTESIAN_POINT ( 'NONE', ( -2.950358097977229600E-017, 1.719393606976553000E-017, -1.174024639073298700 ) ) ; +#12724 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.4305555555555474200 ) ) ; +#12725 = AXIS2_PLACEMENT_3D ( 'NONE', #2316, #5190, #16537 ) ; +#12726 = VERTEX_POINT ( 'NONE', #5983 ) ; +#12727 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.4930555555555478600 ) ) ; +#12728 = ORIENTED_EDGE ( 'NONE', *, *, #987, .F. ) ; +#12729 = ORIENTED_EDGE ( 'NONE', *, *, #17166, .T. ) ; +#12730 = VECTOR ( 'NONE', #16433, 39.37007874015748100 ) ; +#12731 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.062499999999996400 ) ) ; +#12732 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.1354166666666561400 ) ) ; +#12733 = VERTEX_POINT ( 'NONE', #17790 ) ; +#12734 = VERTEX_POINT ( 'NONE', #16031 ) ; +#12735 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.3715277777777688000 ) ) ; +#12736 = DIRECTION ( 'NONE', ( 0.2243975804000505100, -0.9744976787610132300, 0.0000000000000000000 ) ) ; +#12737 = EDGE_LOOP ( 'NONE', ( #11103, #2331, #7819, #13425 ) ) ; +#12738 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.402777777777777500 ) ) ; +#12739 = EDGE_CURVE ( 'NONE', #15915, #18582, #2013, .T. ) ; +#12740 = ORIENTED_EDGE ( 'NONE', *, *, #5855, .T. ) ; +#12741 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, 0.05729166666667893200 ) ) ; +#12742 = LINE ( 'NONE', #8927, #15496 ) ; +#12743 = EDGE_LOOP ( 'NONE', ( #12708, #4000, #5410, #5059 ) ) ; +#12744 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12745 = VERTEX_POINT ( 'NONE', #8971 ) ; +#12746 = CARTESIAN_POINT ( 'NONE', ( 0.4592360163321189100, 0.04044079890274024400, 1.587900241027141400 ) ) ; +#12747 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#12748 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.286458333333331900 ) ) ; +#12749 = DIRECTION ( 'NONE', ( 1.000000000000000000, 1.953992523340275500E-014, 0.0000000000000000000 ) ) ; +#12750 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.6631944444444378700 ) ) ; +#12751 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.07812499999998866200 ) ) ; +#12752 = CARTESIAN_POINT ( 'NONE', ( -0.3624522803384121500, -0.2848886122504218900, 1.143750000000000000 ) ) ; +#12753 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.361111111111110100 ) ) ; +#12754 = AXIS2_PLACEMENT_3D ( 'NONE', #476, #1951, #17920 ) ; +#12755 = ORIENTED_EDGE ( 'NONE', *, *, #10685, .T. ) ; +#12756 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.9479166666666628500 ) ) ; +#12757 = ORIENTED_EDGE ( 'NONE', *, *, #2919, .F. ) ; +#12758 = VERTEX_POINT ( 'NONE', #19010 ) ; +#12759 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12760 = LINE ( 'NONE', #4736, #795 ) ; +#12761 = ADVANCED_FACE ( 'NONE', ( #14666 ), #11912, .F. ) ; +#12762 = ORIENTED_EDGE ( 'NONE', *, *, #11910, .T. ) ; +#12763 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.5520833333333257100 ) ) ; +#12764 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.2916666666666572500 ) ) ; +#12765 = EDGE_LOOP ( 'NONE', ( #1647, #17995, #15241, #1189 ) ) ; +#12766 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.9930555555555515800 ) ) ; +#12767 = CARTESIAN_POINT ( 'NONE', ( 0.3144999999999991100, -3.200399073352503800E-016, 0.1963163490354230300 ) ) ; +#12768 = CARTESIAN_POINT ( 'NONE', ( 0.2446606066381080400, 0.1459276892878661500, -1.548617886001787000 ) ) ; +#12769 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.02083333333332202500 ) ) ; +#12770 = EDGE_CURVE ( 'NONE', #16023, #8999, #9383, .T. ) ; +#12771 = LINE ( 'NONE', #2550, #16464 ) ; +#12772 = DIRECTION ( 'NONE', ( -0.4030255384283025800, -0.9151887321064311500, 0.0000000000000000000 ) ) ; +#12773 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.3680555555555469200 ) ) ; +#12774 = ORIENTED_EDGE ( 'NONE', *, *, #16221, .F. ) ; +#12775 = AXIS2_PLACEMENT_3D ( 'NONE', #8925, #10662, #4716 ) ; +#12776 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.5902777777777709100 ) ) ; +#12777 = ADVANCED_FACE ( 'NONE', ( #12618 ), #18144, .T. ) ; +#12778 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12779 = LINE ( 'NONE', #13975, #5386 ) ; +#12780 = ADVANCED_FACE ( 'NONE', ( #3611 ), #10992, .T. ) ; +#12781 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.9756944444444404200 ) ) ; +#12782 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.06944444444443333100 ) ) ; +#12783 = DIRECTION ( 'NONE', ( 0.1055480449047595200, 0.1378887226129330600, 0.9848077530122091300 ) ) ; +#12784 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12785 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.2326388888888787900 ) ) ; +#12786 =( LENGTH_UNIT ( ) NAMED_UNIT ( * ) SI_UNIT ( $, .METRE. ) ); +#12787 = LINE ( 'NONE', #12649, #2419 ) ; +#12788 = ORIENTED_EDGE ( 'NONE', *, *, #4240, .T. ) ; +#12789 = EDGE_CURVE ( 'NONE', #3036, #663, #11448, .T. ) ; +#12790 = CIRCLE ( 'NONE', #1121, 0.4687499999999995600 ) ; +#12791 = EDGE_CURVE ( 'NONE', #5300, #9148, #10331, .T. ) ; +#12792 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.374999999999999300 ) ) ; +#12793 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #11808, #8795, #5731, #10146, #16231, #10209, #7248, #17604, #19088 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.8409090909090909400, 0.8446969696969697200, 0.8484848484848485100, 0.8522727272727272900, 0.8560606060606060800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#12795 = EDGE_CURVE ( 'NONE', #17343, #9544, #157, .T. ) ; +#12794 = FACE_OUTER_BOUND ( 'NONE', #18493, .T. ) ; +#12796 = AXIS2_PLACEMENT_3D ( 'NONE', #14654, #16136, #14851 ) ; +#12797 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, 0.09548611111112363700 ) ) ; +#12798 = AXIS2_PLACEMENT_3D ( 'NONE', #4337, #92, #4407 ) ; +#12799 = DIRECTION ( 'NONE', ( -0.9992845593168616600, -0.03782022621436286600, -0.0000000000000000000 ) ) ; +#12800 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.5937499999999928900 ) ) ; +#12801 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.3055555555555461400 ) ) ; +#12802 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.310763888888887700 ) ) ; +#12803 = CARTESIAN_POINT ( 'NONE', ( 0.2119256669269656800, 0.4094150566479534100, 1.187613820323601700 ) ) ; +#12804 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#12805 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#12806 = ORIENTED_EDGE ( 'NONE', *, *, #8252, .F. ) ; +#12807 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.2204861111111011400 ) ) ; +#12808 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#12809 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.482638888888888800 ) ) ; +#12810 = FACE_OUTER_BOUND ( 'NONE', #8169, .T. ) ; +#12811 = ORIENTED_EDGE ( 'NONE', *, *, #15624, .T. ) ; +#12812 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.7361111111111053900 ) ) ; +#12813 = CONICAL_SURFACE ( 'NONE', #4618, 0.4610132068742565100, 0.1745329251994289800 ) ; +#12814 = EDGE_CURVE ( 'NONE', #18933, #11193, #11677, .T. ) ; +#12815 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #15408, #677, #2163, #5098, #6586, #16908, #8084, #18385, #9566 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6893939393939394500, 0.6931818181818182300, 0.6969696969696970200, 0.7007575757575758000, 0.7045454545454545900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#12816 = CARTESIAN_POINT ( 'NONE', ( -0.1616077992682578600, 0.4400081984788857800, 1.484375000000000200 ) ) ; +#12817 = AXIS2_PLACEMENT_3D ( 'NONE', #17813, #8862, #43 ) ; +#12818 = CARTESIAN_POINT ( 'NONE', ( 0.04710500384696804400, -0.4663747571701739000, 1.143750000000000000 ) ) ; +#12819 = EDGE_CURVE ( 'NONE', #5326, #11266, #6914, .T. ) ; +#12820 = AXIS2_PLACEMENT_3D ( 'NONE', #13870, #4952, #2009 ) ; +#12821 = VECTOR ( 'NONE', #17953, 39.37007874015748100 ) ; +#12822 = AXIS2_PLACEMENT_3D ( 'NONE', #10721, #16706, #548 ) ; +#12823 = FACE_OUTER_BOUND ( 'NONE', #14269, .T. ) ; +#12824 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.5277777777777700200 ) ) ; +#12825 = LINE ( 'NONE', #4411, #1077 ) ; +#12826 = ORIENTED_EDGE ( 'NONE', *, *, #9483, .T. ) ; +#12827 = VERTEX_POINT ( 'NONE', #18107 ) ; +#12828 = CARTESIAN_POINT ( 'NONE', ( 0.3893737859852274800, -0.2609834291683965600, 1.143750000000000000 ) ) ; +#12829 = CARTESIAN_POINT ( 'NONE', ( 0.3685331079892114600, -0.2896681615724726600, 1.143750000000000000 ) ) ; +#12830 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.1944444444444575500 ) ) ; +#12831 = CIRCLE ( 'NONE', #5091, 0.4610132068742565100 ) ; +#12832 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.2361111111111013300 ) ) ; +#12833 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.6076388888888821800 ) ) ; +#12834 = ORIENTED_EDGE ( 'NONE', *, *, #11113, .T. ) ; +#12835 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #14896, #7704, #6081, #6205, #17934, #13370, #4526, #3321, #13494 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1742424242424242500, 0.1780303030303030400, 0.1818181818181818200, 0.1856060606060606100, 0.1893939393939393900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#12836 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.086805555555552200 ) ) ; +#12837 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.02777777777776634100 ) ) ; +#12838 = EDGE_CURVE ( 'NONE', #9929, #8850, #18810, .T. ) ; +#12839 = CARTESIAN_POINT ( 'NONE', ( -4.168601147103974200E-018, 2.526954538747222900E-017, 3.802149639073289000 ) ) ; +#12840 = VECTOR ( 'NONE', #9365, 39.37007874015748900 ) ; +#12841 = CARTESIAN_POINT ( 'NONE', ( 2.532093440179759500E-016, 3.844143680069565900E-017, 3.802149639073269400 ) ) ; +#12842 = CIRCLE ( 'NONE', #5442, 0.4610132068742565100 ) ; +#12843 = CONICAL_SURFACE ( 'NONE', #14790, 0.4687475818742587500, 0.1745329251994272000 ) ; +#12844 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.079861111111108100 ) ) ; +#12845 = VERTEX_POINT ( 'NONE', #6182 ) ; +#12846 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.2083333333333229600 ) ) ; +#12847 = CARTESIAN_POINT ( 'NONE', ( -0.2119256669269715400, 0.4094150566479503000, 1.440511179676401200 ) ) ; +#12848 = LINE ( 'NONE', #8997, #8465 ) ; +#12849 = ORIENTED_EDGE ( 'NONE', *, *, #814, .T. ) ; +#12850 = ADVANCED_FACE ( 'NONE', ( #7777 ), #7068, .T. ) ; +#12851 = VERTEX_POINT ( 'NONE', #10506 ) ; +#12852 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.361111111111110500 ) ) ; +#12853 = AXIS2_PLACEMENT_3D ( 'NONE', #15615, #18480, #14094 ) ; +#12854 = ORIENTED_EDGE ( 'NONE', *, *, #4396, .T. ) ; +#12855 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.430555555555555400 ) ) ; +#12856 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.9687499999999960000 ) ) ; +#12857 = ORIENTED_EDGE ( 'NONE', *, *, #5225, .F. ) ; +#12858 = VERTEX_POINT ( 'NONE', #9285 ) ; +#12859 = CIRCLE ( 'NONE', #3658, 0.4687475818742578600 ) ; +#12860 = CARTESIAN_POINT ( 'NONE', ( -0.2388463572900720600, -0.1999377227612358100, 0.1792153418691395900 ) ) ; +#12861 = FACE_BOUND ( 'NONE', #216, .T. ) ; +#12862 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.236111111111109200 ) ) ; +#12863 = LINE ( 'NONE', #18723, #17011 ) ; +#12864 = CARTESIAN_POINT ( 'NONE', ( 0.4420448320419756400, 0.1559508319245058200, 1.484375000000000200 ) ) ; +#12865 = ORIENTED_EDGE ( 'NONE', *, *, #10183, .F. ) ; +#12866 = CONICAL_SURFACE ( 'NONE', #8601, 0.2500000000000001100, 1.047197551196593400 ) ; +#12867 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.237847222222220300 ) ) ; +#12868 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.322916666666665200 ) ) ; +#12869 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12870 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.7708333333333277100 ) ) ; +#12871 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, 0.08159722222223472800 ) ) ; +#12872 = EDGE_CURVE ( 'NONE', #3876, #6242, #16225, .T. ) ; +#12873 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.315972222222220800 ) ) ; +#12874 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12875 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, 0.01041666666667835100 ) ) ; +#12876 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.7430555555555499200 ) ) ; +#12877 = ORIENTED_EDGE ( 'NONE', *, *, #8372, .T. ) ; +#12878 = EDGE_LOOP ( 'NONE', ( #13329, #15481, #7127, #2925 ) ) ; +#12879 = CARTESIAN_POINT ( 'NONE', ( -0.4420471124163807800, -0.1559516364272581800, 1.143750000000000000 ) ) ; +#12880 = EDGE_CURVE ( 'NONE', #6787, #1464, #7528, .T. ) ; +#12881 = ORIENTED_EDGE ( 'NONE', *, *, #12202, .T. ) ; +#12882 = EDGE_LOOP ( 'NONE', ( #9469, #9486, #5218, #18966 ) ) ; +#12883 = VECTOR ( 'NONE', #1805, 39.37007874015748100 ) ; +#12884 = CIRCLE ( 'NONE', #10121, 0.4687475818742580800 ) ; +#12885 = ORIENTED_EDGE ( 'NONE', *, *, #17241, .T. ) ; +#12886 = EDGE_LOOP ( 'NONE', ( #5070, #3838, #4637, #4624, #15668, #6815 ) ) ; +#12887 = AXIS2_PLACEMENT_3D ( 'NONE', #5177, #5243, #13959 ) ; +#12888 = CYLINDRICAL_SURFACE ( 'NONE', #9959, 0.3125000000000008300 ) ; +#12889 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12890 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.6059027777777709100 ) ) ; +#12891 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.2986111111111015600 ) ) ; +#12892 = CARTESIAN_POINT ( 'NONE', ( -0.1589412568245233400, 0.4327480257511604500, 1.143750000000000000 ) ) ; +#12893 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#12894 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#12895 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.1180555555555681400 ) ) ; +#12896 = ORIENTED_EDGE ( 'NONE', *, *, #1933, .F. ) ; +#12897 = CARTESIAN_POINT ( 'NONE', ( -0.4219140922835708000, 0.1858000959230553800, 1.592116737595687900 ) ) ; +#12898 = CARTESIAN_POINT ( 'NONE', ( 0.1034502481550414700, 0.4492562999771360100, 1.590308733529502500 ) ) ; +#12899 = CARTESIAN_POINT ( 'NONE', ( -0.3070850166377910900, 0.3438487595863241000, 1.143750000000000000 ) ) ; +#12900 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.2673611111111017200 ) ) ; +#12901 = ORIENTED_EDGE ( 'NONE', *, *, #3615, .F. ) ; +#12902 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.5555555555555483600 ) ) ; +#12903 = CYLINDRICAL_SURFACE ( 'NONE', #10630, 0.4610132068742565100 ) ; +#12904 = LINE ( 'NONE', #9012, #1161 ) ; +#12905 = VERTEX_POINT ( 'NONE', #12114 ) ; +#12906 = ORIENTED_EDGE ( 'NONE', *, *, #5424, .F. ) ; +#12907 = DIRECTION ( 'NONE', ( 0.02499999999999943900, -0.9996874511566102800, 0.0000000000000000000 ) ) ; +#12908 = FACE_OUTER_BOUND ( 'NONE', #11259, .T. ) ; +#12909 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.9513888888888844000 ) ) ; +#12910 = EDGE_CURVE ( 'NONE', #5457, #4890, #14210, .T. ) ; +#12911 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.1874999999999900100 ) ) ; +#12912 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#12913 = EDGE_CURVE ( 'NONE', #5022, #4769, #864, .T. ) ; +#12914 = AXIS2_PLACEMENT_3D ( 'NONE', #13533, #10643, #1877 ) ; +#12915 = AXIS2_PLACEMENT_3D ( 'NONE', #8165, #6667, #10994 ) ; +#12916 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.3333333333333239300 ) ) ; +#12917 = AXIS2_PLACEMENT_3D ( 'NONE', #16158, #16217, #2977 ) ; +#12918 = ORIENTED_EDGE ( 'NONE', *, *, #11829, .T. ) ; +#12919 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#12920 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.053819444444441100 ) ) ; +#12921 = ORIENTED_EDGE ( 'NONE', *, *, #5379, .T. ) ; +#12922 = ORIENTED_EDGE ( 'NONE', *, *, #13776, .F. ) ; +#12923 = CONICAL_SURFACE ( 'NONE', #18642, 0.3144999999999991100, 0.3490658503988666700 ) ; +#12924 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.7048611111111050500 ) ) ; +#12925 = ORIENTED_EDGE ( 'NONE', *, *, #17923, .F. ) ; +#12926 = ORIENTED_EDGE ( 'NONE', *, *, #1790, .T. ) ; +#12927 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.381944444444444000 ) ) ; +#12928 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.555555555555556200 ) ) ; +#12929 = DIRECTION ( 'NONE', ( -0.9921147013144777600, -0.1253332335643045400, 0.0000000000000000000 ) ) ; +#12930 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12931 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.09374999999998884200 ) ) ; +#12932 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#12933 = EDGE_CURVE ( 'NONE', #1846, #13424, #18370, .T. ) ; +#12934 = VERTEX_POINT ( 'NONE', #17847 ) ; +#12935 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.296874999999998400 ) ) ; +#12936 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.298611111111109400 ) ) ; +#12937 = ORIENTED_EDGE ( 'NONE', *, *, #12149, .T. ) ; +#12938 = DIRECTION ( 'NONE', ( -1.000000000000000000, 1.224646799147351700E-016, 0.0000000000000000000 ) ) ; +#12939 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.7812499999999943400 ) ) ; +#12940 = EDGE_CURVE ( 'NONE', #2851, #12110, #14431, .T. ) ; +#12941 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, 0.1718750000000133200 ) ) ; +#12942 = CARTESIAN_POINT ( 'NONE', ( 0.4120995984523148600, 0.2066569569792582900, 1.484375000000000200 ) ) ; +#12943 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.184027777777775500 ) ) ; +#12944 = CARTESIAN_POINT ( 'NONE', ( 0.04260432385935066700, -0.2975014491741384500, 0.1473832197205629500 ) ) ; +#12945 = ORIENTED_EDGE ( 'NONE', *, *, #13184, .F. ) ; +#12946 = EDGE_CURVE ( 'NONE', #13132, #2108, #12831, .T. ) ; +#12947 = AXIS2_PLACEMENT_3D ( 'NONE', #7430, #8783, #2788 ) ; +#12948 = LINE ( 'NONE', #9290, #742 ) ; +#12949 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.7638888888888834000 ) ) ; +#12950 = VERTEX_POINT ( 'NONE', #12308 ) ; +#12951 = AXIS2_PLACEMENT_3D ( 'NONE', #2755, #10032, #13000 ) ; +#12952 = DIRECTION ( 'NONE', ( -0.1004911932742472600, -0.9949379478511801700, 0.0000000000000000000 ) ) ; +#12953 = PLANE ( 'NONE', #13827 ) ; +#12954 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12955 = ADVANCED_FACE ( 'NONE', ( #15141 ), #3601, .F. ) ; +#12956 = VERTEX_POINT ( 'NONE', #6449 ) ; +#12957 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12958 = ORIENTED_EDGE ( 'NONE', *, *, #1968, .T. ) ; +#12959 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.5329861111111036100 ) ) ; +#12960 = VERTEX_POINT ( 'NONE', #2002 ) ; +#12961 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.2395833333333233200 ) ) ; +#12962 = VECTOR ( 'NONE', #16845, 39.37007874015748100 ) ; +#12963 = VERTEX_POINT ( 'NONE', #4947 ) ; +#12964 = EDGE_CURVE ( 'NONE', #8893, #239, #4770, .T. ) ; +#12965 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#12966 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#12967 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.562500000000000400 ) ) ; +#12968 = EDGE_LOOP ( 'NONE', ( #14087, #13755, #15210, #7153 ) ) ; +#12969 = PLANE ( 'NONE', #18978 ) ; +#12970 = CARTESIAN_POINT ( 'NONE', ( 0.4606833792705947200, 0.01743562377179322000, 1.484375000000000200 ) ) ; +#12971 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.3472222222222133800 ) ) ; +#12972 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, 1.531250000000000000 ) ) ; +#12973 = ORIENTED_EDGE ( 'NONE', *, *, #18126, .F. ) ; +#12974 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.111111111111108100 ) ) ; +#12975 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.04513888888887782800 ) ) ; +#12976 = CARTESIAN_POINT ( 'NONE', ( 0.2848894555494268500, -0.03686374026162695500, 0.1110363027760321000 ) ) ; +#12977 = LINE ( 'NONE', #2787, #8132 ) ; +#12978 = DIRECTION ( 'NONE', ( -0.004341204441673057100, 0.1735939041298396300, -0.9848077530122088000 ) ) ; +#12979 = ORIENTED_EDGE ( 'NONE', *, *, #14694, .F. ) ; +#12980 = PLANE ( 'NONE', #7884 ) ; +#12981 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#12982 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.9913194444444405300 ) ) ; +#12983 = VERTEX_POINT ( 'NONE', #9342 ) ; +#12984 = LINE ( 'NONE', #1084, #12533 ) ; +#12985 = VERTEX_POINT ( 'NONE', #2140 ) ; +#12986 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.6944444444444380900 ) ) ; +#12987 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.347222222222221200 ) ) ; +#12988 = EDGE_CURVE ( 'NONE', #12656, #16558, #12148, .T. ) ; +#12989 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.479166666666667000 ) ) ; +#12990 = VERTEX_POINT ( 'NONE', #9412 ) ; +#12991 = DIRECTION ( 'NONE', ( -0.6374239897486989600, 0.7705132427757817000, 0.0000000000000000000 ) ) ; +#12992 = EDGE_LOOP ( 'NONE', ( #3251, #12926, #6036, #13429 ) ) ; +#12993 = PERSON_AND_ORGANIZATION ( #18342, #15970 ) ; +#12994 = CARTESIAN_POINT ( 'NONE', ( 0.4219140922835721300, -0.1858000959230524700, 1.143750000000000000 ) ) ; +#12995 = DIRECTION ( 'NONE', ( -0.7025573672080209800, 0.7116271114718255600, 0.0000000000000000000 ) ) ; +#12996 = VERTEX_POINT ( 'NONE', #13785 ) ; +#12997 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.9913194444444405300 ) ) ; +#12998 = EDGE_CURVE ( 'NONE', #15729, #3642, #7308, .T. ) ; +#12999 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.277777777777775900 ) ) ; +#13000 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13001 = CARTESIAN_POINT ( 'NONE', ( -0.4289947181748892100, 0.1889182211382663700, 1.592116737595687900 ) ) ; +#13002 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, 0.02256944444445653500 ) ) ; +#13003 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.138888888888886000 ) ) ; +#13004 = PLANE ( 'NONE', #11117 ) ; +#13005 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676379900 ) ) ; +#13006 = LINE ( 'NONE', #4300, #6308 ) ; +#13007 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.7326388888888831800 ) ) ; +#13008 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.3541666666666577500 ) ) ; +#13009 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.562500000000000000 ) ) ; +#13010 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#13011 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13012 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13013 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.6024305555555487000 ) ) ; +#13014 = FACE_OUTER_BOUND ( 'NONE', #7377, .T. ) ; +#13015 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.03124999999998836300 ) ) ; +#13016 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.3506944444444352600 ) ) ; +#13017 = CARTESIAN_POINT ( 'NONE', ( 0.2955848010759690200, -0.01893073104397199900, 0.1355309180716279300 ) ) ; +#13018 = EDGE_CURVE ( 'NONE', #9034, #9036, #1082, .T. ) ; +#13019 = CARTESIAN_POINT ( 'NONE', ( 0.2849174203000386900, -0.3722181606565328500, 1.143750000000000000 ) ) ; +#13020 = CARTESIAN_POINT ( 'NONE', ( 0.4420448320419763100, -0.1559508319244956900, 1.484375000000000200 ) ) ; +#13021 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.1319444444444570500 ) ) ; +#13022 = EDGE_CURVE ( 'NONE', #15003, #9653, #8445, .T. ) ; +#13023 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.243055555555553600 ) ) ; +#13024 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676401600 ) ) ; +#13025 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.3854166666666582500 ) ) ; +#13026 = LINE ( 'NONE', #11066, #15325 ) ; +#13027 = VERTEX_POINT ( 'NONE', #9600 ) ; +#13028 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13029 = LINE ( 'NONE', #7220, #1058 ) ; +#13030 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.7812499999999941200 ) ) ; +#13031 = ORIENTED_EDGE ( 'NONE', *, *, #4052, .F. ) ; +#13032 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, 0.03125000000001185900 ) ) ; +#13033 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #10354, #11886, #3203, #4538, #17756, #1518, #6026, #5872, #12025 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7348484848484848600, 0.7386363636363636500, 0.7424242424242424300, 0.7462121212121212200, 0.7500000000000000000 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#13034 = FACE_OUTER_BOUND ( 'NONE', #2092, .T. ) ; +#13035 = DIRECTION ( 'NONE', ( 0.9151887321064284800, 0.4030255384283083500, -0.0000000000000000000 ) ) ; +#13036 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323614800 ) ) ; +#13037 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#13038 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.8350694444444393100 ) ) ; +#13039 = EDGE_CURVE ( 'NONE', #5958, #2278, #623, .T. ) ; +#13040 = ADVANCED_FACE ( 'NONE', ( #11238 ), #6319, .T. ) ; +#13041 = CIRCLE ( 'NONE', #10974, 0.4687475818742548600 ) ; +#13042 = EDGE_CURVE ( 'NONE', #1321, #700, #6380, .T. ) ; +#13043 = ORIENTED_EDGE ( 'NONE', *, *, #16272, .T. ) ; +#13044 = PLANE ( 'NONE', #6390 ) ; +#13045 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.9965277777777741300 ) ) ; +#13046 = EDGE_CURVE ( 'NONE', #15681, #8287, #4314, .T. ) ; +#13047 = VECTOR ( 'NONE', #18506, 39.37007874015748900 ) ; +#13048 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.510416666666667000 ) ) ; +#13049 = ORIENTED_EDGE ( 'NONE', *, *, #9086, .F. ) ; +#13050 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#13051 = AXIS2_PLACEMENT_3D ( 'NONE', #1522, #13387, #313 ) ; +#13052 = FACE_OUTER_BOUND ( 'NONE', #4819, .T. ) ; +#13053 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#13054 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13055 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.046874999999996700 ) ) ; +#13056 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.434027777777777700 ) ) ; +#13057 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, 0.07118055555556783400 ) ) ; +#13058 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.592116737595687700 ) ) ; +#13059 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.145833333333330400 ) ) ; +#13060 = CARTESIAN_POINT ( 'NONE', ( 0.3829490853735647600, 0.2566771803726157200, 1.484375000000000200 ) ) ; +#13061 = ORIENTED_EDGE ( 'NONE', *, *, #4827, .F. ) ; +#13062 = VECTOR ( 'NONE', #11119, 39.37007874015748100 ) ; +#13063 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #16188, #12026, #16325, #1721, #16401, #308, #7457, #247, #8940, #6152, #1466, #2942 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 4 ), + ( 2.380733176185803000E-007, 0.001851555320830852700, 0.003702872568344086900, 0.004628531192100705100, 0.005554189815857322000, 0.007405507063370559200 ), + .UNSPECIFIED. ) ; +#13064 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.6770833333333271500 ) ) ; +#13065 = VECTOR ( 'NONE', #394, 39.37007874015748900 ) ; +#13066 = FACE_OUTER_BOUND ( 'NONE', #18414, .T. ) ; +#13067 = ORIENTED_EDGE ( 'NONE', *, *, #983, .T. ) ; +#13068 = ORIENTED_EDGE ( 'NONE', *, *, #10574, .F. ) ; +#13069 = EDGE_CURVE ( 'NONE', #3201, #18652, #2461, .T. ) ; +#13070 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13071 = CIRCLE ( 'NONE', #15228, 0.4687499999999995600 ) ; +#13072 = CARTESIAN_POINT ( 'NONE', ( 0.01152533017185643000, 0.4608691177296606000, 1.587227003692501100 ) ) ; +#13073 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.1805555555555686500 ) ) ; +#13074 = CARTESIAN_POINT ( 'NONE', ( -0.4669429843783105000, 0.04111948248551343400, 1.143750000000000000 ) ) ; +#13075 = AXIS2_PLACEMENT_3D ( 'NONE', #17177, #899, #7070 ) ; +#13076 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.5642361111111039400 ) ) ; +#13077 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #13467, #11870, ( #13461 ) ) ; +#13078 = ORIENTED_EDGE ( 'NONE', *, *, #3871, .F. ) ; +#13079 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.04513888888890130900 ) ) ; +#13080 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.3263888888888793500 ) ) ; +#13081 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13082 = DIRECTION ( 'NONE', ( -1.000000000000000000, 3.552713678800501600E-014, 0.0000000000000000000 ) ) ; +#13083 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.1875000000000129600 ) ) ; +#13084 = VECTOR ( 'NONE', #2398, 39.37007874015748100 ) ; +#13085 = CARTESIAN_POINT ( 'NONE', ( 0.06919666627599171900, -0.4557905201830936300, 1.484375000000000200 ) ) ; +#13086 = FACE_BOUND ( 'NONE', #2773, .T. ) ; +#13087 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13088 = LINE ( 'NONE', #10532, #9174 ) ; +#13089 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.298611111111109800 ) ) ; +#13090 = ORIENTED_EDGE ( 'NONE', *, *, #5129, .F. ) ; +#13091 = FACE_OUTER_BOUND ( 'NONE', #5582, .T. ) ; +#13092 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.3819444444444359300 ) ) ; +#13093 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.3958333333333247100 ) ) ; +#13094 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.8263888888888834000 ) ) ; +#13095 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.01041666666667836300 ) ) ; +#13096 = EDGE_CURVE ( 'NONE', #4814, #5233, #18600, .T. ) ; +#13097 = DIRECTION ( 'NONE', ( 0.5000000000000001100, -0.8660254037844386000, 0.0000000000000000000 ) ) ; +#13098 = ORIENTED_EDGE ( 'NONE', *, *, #10655, .T. ) ; +#13099 = CARTESIAN_POINT ( 'NONE', ( 0.4120995984523190800, -0.2066569569792496000, 1.592116737595687700 ) ) ; +#13100 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#13101 = ORIENTED_EDGE ( 'NONE', *, *, #15179, .F. ) ; +#13102 = EDGE_LOOP ( 'NONE', ( #11962, #4842, #775, #781 ) ) ; +#13103 = FACE_OUTER_BOUND ( 'NONE', #17183, .T. ) ; +#13104 = APPLICATION_PROTOCOL_DEFINITION ( 'international standard', 'config_control_design', 1994, #158 ) ; +#13106 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.9878472222222184400 ) ) ; +#13105 = CIRCLE ( 'NONE', #131, 0.4687475818742553600 ) ; +#13107 = VERTEX_POINT ( 'NONE', #3019 ) ; +#13108 = ORIENTED_EDGE ( 'NONE', *, *, #17218, .T. ) ; +#13109 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13110 = CYLINDRICAL_SURFACE ( 'NONE', #14521, 0.4610132068742565100 ) ; +#13111 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.048611111111107800 ) ) ; +#13112 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.444444444444444400 ) ) ; +#13113 = DIRECTION ( 'NONE', ( -0.7289686274214103300, -0.6845471059286899500, 0.0000000000000000000 ) ) ; +#13114 = VERTEX_POINT ( 'NONE', #17630 ) ; +#13115 = ORIENTED_EDGE ( 'NONE', *, *, #1459, .F. ) ; +#13116 = CARTESIAN_POINT ( 'NONE', ( 0.4581073617749767400, 0.09931871720662779900, 1.589564174286821800 ) ) ; +#13117 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#13118 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.026041666666663000 ) ) ; +#13119 = ORIENTED_EDGE ( 'NONE', *, *, #17140, .T. ) ; +#13120 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.447916666666666300 ) ) ; +#13121 = CIRCLE ( 'NONE', #17364, 0.4687475818742551400 ) ; +#13122 = DIRECTION ( 'NONE', ( -0.5673761158323411500, 0.8234587683563796600, -0.0000000000000000000 ) ) ; +#13123 = FACE_OUTER_BOUND ( 'NONE', #3363, .T. ) ; +#13124 = ORIENTED_EDGE ( 'NONE', *, *, #18408, .T. ) ; +#13125 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, 0.06076388888890123200 ) ) ; +#13126 = ORIENTED_EDGE ( 'NONE', *, *, #16402, .F. ) ; +#13127 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#13128 = EDGE_CURVE ( 'NONE', #18012, #14614, #8234, .T. ) ; +#13129 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.128472222222219200 ) ) ; +#13130 = FACE_OUTER_BOUND ( 'NONE', #3446, .T. ) ; +#13131 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.3854166666666582500 ) ) ; +#13132 = VERTEX_POINT ( 'NONE', #19121 ) ; +#13133 = EDGE_CURVE ( 'NONE', #16899, #9026, #17668, .T. ) ; +#13134 = CARTESIAN_POINT ( 'NONE', ( 0.01171874999999998800, -0.4686034927296605600, 1.484375000000000200 ) ) ; +#13135 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, 0.1770833333333466400 ) ) ; +#13136 = AXIS2_PLACEMENT_3D ( 'NONE', #8289, #11318, #12784 ) ; +#13137 = ORIENTED_EDGE ( 'NONE', *, *, #17733, .F. ) ; +#13138 = ADVANCED_FACE ( 'NONE', ( #3849 ), #17827, .T. ) ; +#13139 = VERTEX_POINT ( 'NONE', #13249 ) ; +#13140 = LINE ( 'NONE', #17045, #10375 ) ; +#13141 = LINE ( 'NONE', #19000, #17526 ) ; +#13142 = ORIENTED_EDGE ( 'NONE', *, *, #11060, .F. ) ; +#13143 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.4704861111111031100 ) ) ; +#13144 = ORIENTED_EDGE ( 'NONE', *, *, #11627, .F. ) ; +#13145 = CIRCLE ( 'NONE', #12672, 0.4610132068742565100 ) ; +#13146 = CARTESIAN_POINT ( 'NONE', ( 0.1803732187963073800, -0.4242625117230433600, 1.440511179676388100 ) ) ; +#13147 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.1631944444444336800 ) ) ; +#13148 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.486111111111111200 ) ) ; +#13149 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13150 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#13151 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.406249999999999300 ) ) ; +#13152 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13153 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.562500000000000900 ) ) ; +#13154 = VERTEX_POINT ( 'NONE', #16195 ) ; +#13155 = ORIENTED_EDGE ( 'NONE', *, *, #3065, .F. ) ; +#13156 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.3958333333333249900 ) ) ; +#13157 = EDGE_CURVE ( 'NONE', #17642, #12673, #7996, .T. ) ; +#13158 = CARTESIAN_POINT ( 'NONE', ( 0.2156998718037098100, 0.2072332924644416100, 0.1447881076271216300 ) ) ; +#13159 = ORIENTED_EDGE ( 'NONE', *, *, #9476, .T. ) ; +#13160 = ADVANCED_FACE ( 'NONE', ( #12367 ), #4290, .T. ) ; +#13161 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.8611111111111059400 ) ) ; +#13162 = EDGE_CURVE ( 'NONE', #9825, #9715, #6556, .T. ) ; +#13163 = ORIENTED_EDGE ( 'NONE', *, *, #7745, .T. ) ; +#13164 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13165 = EDGE_CURVE ( 'NONE', #12242, #17258, #10285, .T. ) ; +#13166 = AXIS2_PLACEMENT_3D ( 'NONE', #12683, #6950, #15802 ) ; +#13167 = DIRECTION ( 'NONE', ( 0.8938997675281809000, -0.4482668910515967800, 0.0000000000000000000 ) ) ; +#13168 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #5705, #6496, #6808, #6557, #1462, #14977, #3767, #4147, #5919 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2803030303030302800, 0.2840909090909090600, 0.2878787878787878500, 0.2916666666666666300, 0.2954545454545454100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#13169 = AXIS2_PLACEMENT_3D ( 'NONE', #15086, #14132, #3368 ) ; +#13170 = DIRECTION ( 'NONE', ( -0.1156686028357433600, -0.1295162689590485200, -0.9848077530122082400 ) ) ; +#13171 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.8593749999999951200 ) ) ; +#13172 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#13173 = VERTEX_POINT ( 'NONE', #5818 ) ; +#13174 = EDGE_LOOP ( 'NONE', ( #3938, #4141, #956, #287, #15478, #711 ) ) ; +#13175 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.118055555555552900 ) ) ; +#13176 = ORIENTED_EDGE ( 'NONE', *, *, #861, .F. ) ; +#13177 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.177083333333331000 ) ) ; +#13178 = CONICAL_SURFACE ( 'NONE', #1096, 0.4687475818742578600, 0.1745329251994288700 ) ; +#13179 = ADVANCED_FACE ( 'NONE', ( #13052 ), #9819, .T. ) ; +#13180 = VERTEX_POINT ( 'NONE', #17691 ) ; +#13181 = VERTEX_POINT ( 'NONE', #1414 ) ; +#13182 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#13183 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13184 = EDGE_CURVE ( 'NONE', #15897, #7787, #10749, .T. ) ; +#13185 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.126736111111108300 ) ) ; +#13186 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.263888888888887100 ) ) ; +#13187 = CARTESIAN_POINT ( 'NONE', ( -0.2802162586133528100, 0.3660765293230648900, 1.187613820323613700 ) ) ; +#13188 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13189 = AXIS2_PLACEMENT_3D ( 'NONE', #3197, #5939, #17748 ) ; +#13190 = DIRECTION ( 'NONE', ( 0.8574597016599302400, 0.5145511247964222900, -0.0000000000000000000 ) ) ; +#13191 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#13192 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.267361111111109200 ) ) ; +#13193 = CARTESIAN_POINT ( 'NONE', ( -0.1295036760694094600, -0.2694891480168282200, 0.1430918560475218900 ) ) ; +#13194 = EDGE_CURVE ( 'NONE', #17941, #13712, #1990, .T. ) ; +#13195 = AXIS2_PLACEMENT_3D ( 'NONE', #1534, #16273, #9085 ) ; +#13196 = ORIENTED_EDGE ( 'NONE', *, *, #8704, .T. ) ; +#13197 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #19123, #17764, #5879, #11775, #10486, #17890, #2954, #13320, #1664, #3145, #17692, #13456, #13250, #7593, #3020, #5959, #378, #4681, #9198, #12092, #10679, #16467, #1785 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 4 ), + ( 0.05460519963306737600, 0.05532496804185122600, 0.05604473645063507600, 0.05748427326820277500, 0.05892381008577047400, 0.06036334690333817300, 0.06108311531212202300, 0.06180288372090587300, 0.06252265212968971500, 0.06324242053847356500, 0.06468195735604126400, 0.06612149417360896300 ), + .UNSPECIFIED. ) ; +#13198 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.5312499999999926700 ) ) ; +#13199 = AXIS2_PLACEMENT_3D ( 'NONE', #12919, #4092, #14382 ) ; +#13200 = EDGE_LOOP ( 'NONE', ( #2156, #8049, #12102, #13204 ) ) ; +#13201 = CIRCLE ( 'NONE', #5856, 0.4687499999999995600 ) ; +#13202 = ORIENTED_EDGE ( 'NONE', *, *, #5820, .F. ) ; +#13203 = DIRECTION ( 'NONE', ( -0.3090169943749582200, 0.9510565162951500900, 0.0000000000000000000 ) ) ; +#13204 = ORIENTED_EDGE ( 'NONE', *, *, #14736, .F. ) ; +#13205 = DIRECTION ( 'NONE', ( 1.000000000000000000, 2.398081733190338100E-014, 0.0000000000000000000 ) ) ; +#13206 = CARTESIAN_POINT ( 'NONE', ( -0.3238882248697022000, -0.3280694967582925000, 1.484375000000000200 ) ) ; +#13207 = CARTESIAN_POINT ( 'NONE', ( -0.2899530836729830000, 0.1130683499677708100, 0.1780946760487314700 ) ) ; +#13208 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.07291666666665537500 ) ) ; +#13209 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.05902777777779021800 ) ) ; +#13210 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.09374999999998884200 ) ) ; +#13211 = CARTESIAN_POINT ( 'NONE', ( -0.1859368421513017100, -0.2182317452363963000, 0.1106916415666110300 ) ) ; +#13212 = ORIENTED_EDGE ( 'NONE', *, *, #8061, .F. ) ; +#13213 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.1458333333333462500 ) ) ; +#13214 = EDGE_CURVE ( 'NONE', #5469, #12996, #5869, .T. ) ; +#13215 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676388500 ) ) ; +#13216 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676388100 ) ) ; +#13217 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.381944444444443500 ) ) ; +#13218 = ORIENTED_EDGE ( 'NONE', *, *, #11092, .F. ) ; +#13219 = AXIS2_PLACEMENT_3D ( 'NONE', #4171, #10230, #10097 ) ; +#13220 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.496527777777777900 ) ) ; +#13221 = ORIENTED_EDGE ( 'NONE', *, *, #13781, .F. ) ; +#13222 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.3923611111111027200 ) ) ; +#13223 = CARTESIAN_POINT ( 'NONE', ( -0.2673960886855809600, 0.1511444500148800600, 0.1655843161732666900 ) ) ; +#13224 = LINE ( 'NONE', #13713, #18074 ) ; +#13225 = ORIENTED_EDGE ( 'NONE', *, *, #8260, .T. ) ; +#13226 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.7118055555555492500 ) ) ; +#13227 = AXIS2_PLACEMENT_3D ( 'NONE', #12496, #3729, #6679 ) ; +#13228 = ORIENTED_EDGE ( 'NONE', *, *, #14929, .T. ) ; +#13229 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.430555555555555400 ) ) ; +#13230 = CIRCLE ( 'NONE', #13199, 0.4687475818742579100 ) ; +#13231 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.9461805555555514700 ) ) ; +#13232 = VERTEX_POINT ( 'NONE', #10807 ) ; +#13233 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#13234 = ADVANCED_FACE ( 'NONE', ( #1764 ), #11218, .T. ) ; +#13235 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.6736111111111048300 ) ) ; +#13236 = CARTESIAN_POINT ( 'NONE', ( 0.4592360163321199100, -0.04044079890273024500, 1.587900241027141200 ) ) ; +#13237 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.041666666666663400 ) ) ; +#13238 = EDGE_CURVE ( 'NONE', #8452, #3478, #15117, .T. ) ; +#13239 = LINE ( 'NONE', #10103, #9327 ) ; +#13240 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.256944444444443100 ) ) ; +#13241 = CARTESIAN_POINT ( 'NONE', ( 0.2154822354126497400, -0.4162859218392654400, 1.484375000000000200 ) ) ; +#13242 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.098958333333330200 ) ) ; +#13243 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.211805555555553100 ) ) ; +#13244 = CARTESIAN_POINT ( 'NONE', ( 0.3893737859852235400, 0.2609834291684057200, 1.484375000000000200 ) ) ; +#13245 = DIRECTION ( 'NONE', ( 0.2243975804000301600, 0.9744976787610178900, 0.0000000000000000000 ) ) ; +#13246 = CIRCLE ( 'NONE', #16644, 0.4610132068742565100 ) ; +#13247 = ORIENTED_EDGE ( 'NONE', *, *, #10054, .F. ) ; +#13248 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.6805555555555492500 ) ) ; +#13249 = CARTESIAN_POINT ( 'NONE', ( 0.1278875336514760700, -0.4509671176887989400, 1.143750000000000000 ) ) ; +#13250 = CARTESIAN_POINT ( 'NONE', ( -0.1790643635874927500, 0.2147869372330648000, 0.09127569778634091200 ) ) ; +#13251 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.003472222222218100 ) ) ; +#13252 = AXIS2_PLACEMENT_3D ( 'NONE', #4502, #14817, #3104 ) ; +#13253 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13254 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.4409722222222141600 ) ) ; +#13255 = ADVANCED_FACE ( 'NONE', ( #13740 ), #16599, .F. ) ; +#13256 = CARTESIAN_POINT ( 'NONE', ( -0.4289947181748879900, -0.1889182211382693400, 1.592116737595687900 ) ) ; +#13257 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#13258 = LINE ( 'NONE', #9707, #18576 ) ; +#13259 = ORIENTED_EDGE ( 'NONE', *, *, #845, .F. ) ; +#13260 = PLANE ( 'NONE', #17361 ) ; +#13261 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.1249999999999889700 ) ) ; +#13262 = FACE_BOUND ( 'NONE', #9970, .T. ) ; +#13263 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.079861111111107800 ) ) ; +#13264 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.05208333333332185900 ) ) ; +#13265 = CARTESIAN_POINT ( 'NONE', ( 0.1804259633656309400, -0.2111592353915936700, -1.556470328366942500 ) ) ; +#13266 = ADVANCED_FACE ( 'NONE', ( #17898 ), #7918, .F. ) ; +#13267 = EDGE_CURVE ( 'NONE', #5564, #18652, #1516, .T. ) ; +#13268 = ORIENTED_EDGE ( 'NONE', *, *, #7721, .T. ) ; +#13269 = DIRECTION ( 'NONE', ( 0.9620631844027702800, 0.2728267384564813700, -0.0000000000000000000 ) ) ; +#13270 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.3333333333333242100 ) ) ; +#13271 = DIRECTION ( 'NONE', ( -0.9772957051199530100, -0.2118799300407986100, 0.0000000000000000000 ) ) ; +#13272 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.451388888888888600 ) ) ; +#13274 = EDGE_CURVE ( 'NONE', #2598, #17072, #17193, .T. ) ; +#13273 = VECTOR ( 'NONE', #9196, 39.37007874015748900 ) ; +#13275 = AXIS2_PLACEMENT_3D ( 'NONE', #6270, #17801, #12004 ) ; +#13276 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.229166666666664700 ) ) ; +#13277 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13278 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.555555555555556200 ) ) ; +#13279 = AXIS2_PLACEMENT_3D ( 'NONE', #6714, #5220, #15528 ) ; +#13280 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.1736111111111008400 ) ) ; +#13281 = CARTESIAN_POINT ( 'NONE', ( -0.4190155160288315300, -0.2101251051804416700, 1.484375000000000200 ) ) ; +#13282 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.7569444444444385400 ) ) ; +#13283 = CARTESIAN_POINT ( 'NONE', ( -0.2849188901020696100, 0.3722200808164498100, 1.143750000000000000 ) ) ; +#13284 = CIRCLE ( 'NONE', #10459, 0.4687499999999995600 ) ; +#13285 = LINE ( 'NONE', #4525, #9376 ) ; +#13286 = ORIENTED_EDGE ( 'NONE', *, *, #10711, .F. ) ; +#13287 = CARTESIAN_POINT ( 'NONE', ( 0.1671865093978525400, 0.1921499583890881900, 1.252549403184164900 ) ) ; +#13288 = VERTEX_POINT ( 'NONE', #13763 ) ; +#13289 = VECTOR ( 'NONE', #4431, 39.37007874015748100 ) ; +#13290 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.7656249999999944500 ) ) ; +#13291 = CARTESIAN_POINT ( 'NONE', ( 0.01530074392670666700, 0.2759918036435183900, 0.08286399342893259500 ) ) ; +#13292 = EDGE_CURVE ( 'NONE', #2714, #8311, #11167, .T. ) ; +#13293 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.1458333333333462500 ) ) ; +#13294 = EDGE_CURVE ( 'NONE', #12597, #1448, #2446, .T. ) ; +#13295 = CARTESIAN_POINT ( 'NONE', ( 0.1616077992682506400, 0.4400081984788853400, 1.484375000000000200 ) ) ; +#13296 = DIRECTION ( 'NONE', ( -0.09852382856602244500, 0.1429921145089355600, 0.9848077530122091300 ) ) ; +#13297 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.027777777777774300 ) ) ; +#13298 = EDGE_CURVE ( 'NONE', #8275, #12187, #6355, .T. ) ; +#13299 = VERTEX_POINT ( 'NONE', #377 ) ; +#13300 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.298611111111110100 ) ) ; +#13301 = CARTESIAN_POINT ( 'NONE', ( -1.701049959622476300E-016, -1.679369942286119200E-016, 3.802149639073293400 ) ) ; +#13302 = AXIS2_PLACEMENT_3D ( 'NONE', #16861, #5115, #5311 ) ; +#13303 = CONICAL_SURFACE ( 'NONE', #15852, 0.3134792788290102800, 1.047197551196600100 ) ; +#13304 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -3.585550491684345600E-016, 0.1963163490354230300 ) ) ; +#13305 = VECTOR ( 'NONE', #14828, 39.37007874015748100 ) ; +#13306 = CARTESIAN_POINT ( 'NONE', ( -1.706751074227794800E-017, -0.2886751345948123700, 1.272329099369260000 ) ) ; +#13307 = LINE ( 'NONE', #14839, #2696 ) ; +#13308 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.522569444444444900 ) ) ; +#13309 = ORIENTED_EDGE ( 'NONE', *, *, #9002, .T. ) ; +#13310 = CARTESIAN_POINT ( 'NONE', ( -0.04710500384696184000, -0.4663747571701775100, 1.143750000000000000 ) ) ; +#13311 = VECTOR ( 'NONE', #11936, 39.37007874015748100 ) ; +#13312 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.8940972222222175500 ) ) ; +#13313 = FACE_OUTER_BOUND ( 'NONE', #1887, .T. ) ; +#13314 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.190972222222219900 ) ) ; +#13315 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.4201388888888804600 ) ) ; +#13316 = CARTESIAN_POINT ( 'NONE', ( -0.3624522803384139800, 0.2848886122504193900, 1.187613820323615500 ) ) ; +#13317 = ORIENTED_EDGE ( 'NONE', *, *, #8596, .T. ) ; +#13318 = DIRECTION ( 'NONE', ( -0.9620631844027740500, 0.2728267384564680400, 0.0000000000000000000 ) ) ; +#13319 = CARTESIAN_POINT ( 'NONE', ( -0.3953002468276878300, -0.2372148641431544900, 1.484375000000000200 ) ) ; +#13320 = CARTESIAN_POINT ( 'NONE', ( -0.2512568734114165000, 0.1274747100278965700, 0.09576347724421166400 ) ) ; +#13321 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.034722222222218300 ) ) ; +#13322 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.8749999999999952300 ) ) ; +#13323 = CARTESIAN_POINT ( 'NONE', ( 0.01152533017185641800, -0.4608691177296606000, 1.484375000000000200 ) ) ; +#13324 = ORIENTED_EDGE ( 'NONE', *, *, #14553, .T. ) ; +#13325 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.4062499999999917300 ) ) ; +#13326 = ORIENTED_EDGE ( 'NONE', *, *, #6129, .T. ) ; +#13327 = EDGE_CURVE ( 'NONE', #4838, #8701, #5652, .T. ) ; +#13328 = PLANE ( 'NONE', #18031 ) ; +#13329 = ORIENTED_EDGE ( 'NONE', *, *, #5606, .F. ) ; +#13330 = ORIENTED_EDGE ( 'NONE', *, *, #3915, .F. ) ; +#13331 = LINE ( 'NONE', #11833, #9872 ) ; +#13332 = DIRECTION ( 'NONE', ( 0.04737586595177775700, -0.1670605187719809100, -0.9848077530122089100 ) ) ; +#13333 = CONICAL_SURFACE ( 'NONE', #34, 0.4610132068742565100, 0.1745329251994260100 ) ; +#13334 = AXIS2_PLACEMENT_3D ( 'NONE', #3542, #12309, #7682 ) ; +#13335 = LINE ( 'NONE', #13382, #8712 ) ; +#13336 = VERTEX_POINT ( 'NONE', #438 ) ; +#13337 = DIRECTION ( 'NONE', ( -0.004341204441673151600, -0.1735939041298396000, 0.9848077530122088000 ) ) ; +#13338 = VECTOR ( 'NONE', #10619, 39.37007874015748100 ) ; +#13339 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.8819444444444396500 ) ) ; +#13340 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.1076388888888777700 ) ) ; +#13341 = DIRECTION ( 'NONE', ( 0.2243975804000369900, 0.9744976787610163400, 0.0000000000000000000 ) ) ; +#13342 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.1249999999999889700 ) ) ; +#13343 = CARTESIAN_POINT ( 'NONE', ( 0.1970141765484933200, -0.1963472647214321600, -1.556051310295507400 ) ) ; +#13344 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -0.09683834193504740900, 1.535721952507057100 ) ) ; +#13345 = CARTESIAN_POINT ( 'NONE', ( 0.3624522803384100900, 0.2848886122504243900, 1.593375490995827300 ) ) ; +#13346 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13347 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.302083333333331700 ) ) ; +#13348 = VERTEX_POINT ( 'NONE', #16666 ) ; +#13349 = ORIENTED_EDGE ( 'NONE', *, *, #3545, .F. ) ; +#13350 = DIRECTION ( 'NONE', ( 0.5035107695491790600, -0.8639889495520144400, 0.0000000000000000000 ) ) ; +#13351 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13352 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.298611111111110100 ) ) ; +#13353 = ORIENTED_EDGE ( 'NONE', *, *, #2889, .F. ) ; +#13354 = ORIENTED_EDGE ( 'NONE', *, *, #4746, .T. ) ; +#13355 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.09722222222221142700 ) ) ; +#13356 = CONICAL_SURFACE ( 'NONE', #18767, 0.4610132068742565100, 0.1745329251994305300 ) ; +#13357 = VECTOR ( 'NONE', #16857, 39.37007874015748100 ) ; +#13358 = ORIENTED_EDGE ( 'NONE', *, *, #14481, .T. ) ; +#13359 = ORIENTED_EDGE ( 'NONE', *, *, #14015, .T. ) ; +#13360 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#13361 = VECTOR ( 'NONE', #14570, 39.37007874015748900 ) ; +#13362 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.4687499999999916700 ) ) ; +#13363 = EDGE_CURVE ( 'NONE', #2104, #3649, #2231, .T. ) ; +#13364 = ADVANCED_FACE ( 'NONE', ( #8906 ), #9363, .T. ) ; +#13365 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#13366 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13367 = ORIENTED_EDGE ( 'NONE', *, *, #1438, .T. ) ; +#13368 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.7934027777777724600 ) ) ; +#13369 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#13370 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -1.274305555555554000 ) ) ; +#13371 = ORIENTED_EDGE ( 'NONE', *, *, #1085, .F. ) ; +#13372 = VECTOR ( 'NONE', #18231, 39.37007874015748900 ) ; +#13373 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.6597222222222157700 ) ) ; +#13374 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#13375 = ORIENTED_EDGE ( 'NONE', *, *, #1200, .F. ) ; +#13376 = ORIENTED_EDGE ( 'NONE', *, *, #15494, .F. ) ; +#13377 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.9479166666666628500 ) ) ; +#13378 = FACE_OUTER_BOUND ( 'NONE', #18980, .T. ) ; +#13379 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.305555555555554200 ) ) ; +#13380 = ADVANCED_FACE ( 'NONE', ( #7294 ), #17653, .T. ) ; +#13381 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13382 = CARTESIAN_POINT ( 'NONE', ( -0.2615678826637217700, -0.3796253675287039600, 1.593193105402742800 ) ) ; +#13383 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#13384 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.553819444444445100 ) ) ; +#13385 = EDGE_LOOP ( 'NONE', ( #1450, #13733, #14032, #16270 ) ) ; +#13386 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.7447916666666607500 ) ) ; +#13387 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#13388 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.8506944444444395300 ) ) ; +#13389 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#13390 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676401600 ) ) ; +#13391 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.9131944444444397600 ) ) ; +#13392 = DIRECTION ( 'NONE', ( 0.1873813145857285400, -0.9822872507286879400, 0.0000000000000000000 ) ) ; +#13393 = CARTESIAN_POINT ( 'NONE', ( -0.2360206732261749000, 0.4049948201025079200, 1.143750000000000000 ) ) ; +#13394 = ORIENTED_EDGE ( 'NONE', *, *, #1792, .F. ) ; +#13395 = ORIENTED_EDGE ( 'NONE', *, *, #13194, .F. ) ; +#13396 = FACE_OUTER_BOUND ( 'NONE', #9645, .T. ) ; +#13397 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.4965277777777701900 ) ) ; +#13398 = ORIENTED_EDGE ( 'NONE', *, *, #7845, .T. ) ; +#13399 = EDGE_LOOP ( 'NONE', ( #13432, #6630, #3636, #16060 ) ) ; +#13400 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1219, #12750, #5574, #2378, #18730, #9913, #18670, #14216, #12691 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4924242424242424300, 0.4962121212121212200, 0.5000000000000000000, 0.5037878787878787800, 0.5075757575757575700 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#13401 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#13402 = EDGE_CURVE ( 'NONE', #10407, #191, #3492, .T. ) ; +#13403 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.3246527777777686300 ) ) ; +#13404 = CARTESIAN_POINT ( 'NONE', ( -0.4581049985510731700, -0.09931820485431096200, 1.143750000000000000 ) ) ; +#13405 = ORIENTED_EDGE ( 'NONE', *, *, #10453, .T. ) ; +#13406 = ORIENTED_EDGE ( 'NONE', *, *, #1716, .T. ) ; +#13407 = CARTESIAN_POINT ( 'NONE', ( -0.2367730003299581300, 0.2006046082512357400, 0.1756483461197926300 ) ) ; +#13408 = VERTEX_POINT ( 'NONE', #6669 ) ; +#13409 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.02083333333332147700 ) ) ; +#13410 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.03819444444445671500 ) ) ; +#13411 = CARTESIAN_POINT ( 'NONE', ( 0.1960278217875445500, -0.2172092302706660800, 0.1268712133191428300 ) ) ; +#13412 = VECTOR ( 'NONE', #3241, 39.37007874015748100 ) ; +#13413 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.5677083333333260400 ) ) ; +#13414 = VERTEX_POINT ( 'NONE', #16981 ) ; +#13415 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#13416 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.427083333333332600 ) ) ; +#13417 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13418 = DIRECTION ( 'NONE', ( -0.2728267384564744300, 0.9620631844027720500, 0.0000000000000000000 ) ) ; +#13419 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.326388888888887700 ) ) ; +#13420 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #6998, #8460, #2475, #1017, #14260, #3903, #5418, #11433, #18768 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.8560606060606060800, 0.8598484848484848600, 0.8636363636363636500, 0.8674242424242424300, 0.8712121212121212200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#13421 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.2430555555555459200 ) ) ; +#13422 = EDGE_CURVE ( 'NONE', #11266, #17769, #2888, .T. ) ; +#13423 = DIRECTION ( 'NONE', ( 0.9992845593168624400, -0.03782022621434159200, 0.0000000000000000000 ) ) ; +#13424 = VERTEX_POINT ( 'NONE', #12343 ) ; +#13425 = ORIENTED_EDGE ( 'NONE', *, *, #12439, .T. ) ; +#13426 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.5833333333333259300 ) ) ; +#13427 = EDGE_CURVE ( 'NONE', #12851, #17782, #3834, .T. ) ; +#13428 = CARTESIAN_POINT ( 'NONE', ( -0.1034502481550446100, -0.4492562999771352900, 1.143750000000000000 ) ) ; +#13429 = ORIENTED_EDGE ( 'NONE', *, *, #6897, .F. ) ; +#13430 = EDGE_CURVE ( 'NONE', #2301, #16551, #17088, .T. ) ; +#13431 = VECTOR ( 'NONE', #4850, 39.37007874015748900 ) ; +#13432 = ORIENTED_EDGE ( 'NONE', *, *, #4068, .F. ) ; +#13433 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#13434 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.8003472222222169900 ) ) ; +#13435 = ORIENTED_EDGE ( 'NONE', *, *, #17617, .F. ) ; +#13436 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13437 = CARTESIAN_POINT ( 'NONE', ( 0.04632776727397798500, 0.4586795339797648000, 1.187613820323599100 ) ) ; +#13438 = CARTESIAN_POINT ( 'NONE', ( 0.1051863658125235200, -0.4567957869192244600, 1.590308733529502700 ) ) ; +#13439 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.8298611111111061600 ) ) ; +#13440 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.309027777777776800 ) ) ; +#13441 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #9155, #7542, #16428, #15131, #9101, #400, #16556, #6057, #16362 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3409090909090909400, 0.3446969696969697200, 0.3484848484848485100, 0.3522727272727272900, 0.3560606060606060800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#13442 = ORIENTED_EDGE ( 'NONE', *, *, #9885, .F. ) ; +#13443 = DIRECTION ( 'NONE', ( -0.02499999999999943600, 0.9996874511566102800, 0.0000000000000000000 ) ) ; +#13444 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13445 = LINE ( 'NONE', #13438, #5124 ) ; +#13446 = CARTESIAN_POINT ( 'NONE', ( -0.4420471124163813900, 0.1559516364272548500, 1.590985962198545200 ) ) ; +#13447 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.536458333333334100 ) ) ; +#13448 = CARTESIAN_POINT ( 'NONE', ( -1.706751074227794800E-017, -0.2886751345948123700, 1.272329099369260000 ) ) ; +#13449 = ORIENTED_EDGE ( 'NONE', *, *, #8827, .F. ) ; +#13450 = EDGE_CURVE ( 'NONE', #3616, #2714, #15583, .T. ) ; +#13451 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.8697916666666617400 ) ) ; +#13452 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.08333333333332224000 ) ) ; +#13453 = AXIS2_PLACEMENT_3D ( 'NONE', #10424, #14853, #6034 ) ; +#13454 = VERTEX_POINT ( 'NONE', #9387 ) ; +#13455 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13456 = CARTESIAN_POINT ( 'NONE', ( -0.1864232989139624200, 0.2086154507293883600, 0.09165035475753095800 ) ) ; +#13457 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.062499999999996400 ) ) ; +#13458 = FACE_OUTER_BOUND ( 'NONE', #11843, .T. ) ; +#13459 = EDGE_LOOP ( 'NONE', ( #11025, #16299, #10575, #3227 ) ) ; +#13460 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.1770833333333231300 ) ) ; +#13461 = PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE ( 'ANY', '', #6486, .NOT_KNOWN. ) ; +#13462 = ADVANCED_FACE ( 'NONE', ( #9607 ), #4025, .F. ) ; +#13463 = ORIENTED_EDGE ( 'NONE', *, *, #8348, .F. ) ; +#13464 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13465 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.3350694444444353200 ) ) ; +#13466 = ORIENTED_EDGE ( 'NONE', *, *, #1151, .T. ) ; +#13467 = PERSON_AND_ORGANIZATION ( #18342, #15970 ) ; +#13468 = ORIENTED_EDGE ( 'NONE', *, *, #15987, .F. ) ; +#13469 = CARTESIAN_POINT ( 'NONE', ( 2.987024860021044800E-017, -7.469896857675716800E-019, 3.802149639073292500 ) ) ; +#13470 = CARTESIAN_POINT ( 'NONE', ( -0.2108567517351345700, 0.2278477078054516600, 0.1747972437053778000 ) ) ; +#13471 = CIRCLE ( 'NONE', #10457, 0.4610132068742565100 ) ; +#13472 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.06944444444443306800 ) ) ; +#13473 = PLANE ( 'NONE', #9834 ) ; +#13474 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.003472222222234315200 ) ) ; +#13475 = CARTESIAN_POINT ( 'NONE', ( -0.01386538801269738600, -0.2890700059153440400, 0.1181148486156486800 ) ) ; +#13476 = ADVANCED_FACE ( 'NONE', ( #1305 ), #12813, .T. ) ; +#13477 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.5052083333333254900 ) ) ; +#13478 = EDGE_CURVE ( 'NONE', #10034, #6983, #1064, .T. ) ; +#13479 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13480 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.149305555555552500 ) ) ; +#13481 = DIRECTION ( 'NONE', ( 0.5035107695491675100, 0.8639889495520213200, -0.0000000000000000000 ) ) ; +#13482 = AXIS2_PLACEMENT_3D ( 'NONE', #3233, #3292, #16549 ) ; +#13483 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.145833333333330600 ) ) ; +#13484 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.243055555555553800 ) ) ; +#13485 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.1388888888888784300 ) ) ; +#13486 = VECTOR ( 'NONE', #15379, 39.37007874015748100 ) ; +#13487 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.5138888888888812900 ) ) ; +#13488 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.6249999999999928900 ) ) ; +#13489 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#13490 = VECTOR ( 'NONE', #12954, 39.37007874015748100 ) ; +#13491 = CARTESIAN_POINT ( 'NONE', ( -0.4592360163321195800, 0.04044079890273364500, 1.143750000000000000 ) ) ; +#13492 = CARTESIAN_POINT ( 'NONE', ( -0.07448817219762755800, 0.2663434530524627600, 0.08286399342893280300 ) ) ; +#13493 = CARTESIAN_POINT ( 'NONE', ( 0.2882190389825193300, -0.1030759098402035500, -1.527981974098539000 ) ) ; +#13494 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.263888888888887100 ) ) ; +#13495 = CIRCLE ( 'NONE', #9987, 0.4687475818742554100 ) ; +#13496 = ORIENTED_EDGE ( 'NONE', *, *, #961, .T. ) ; +#13497 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.6701388888888826200 ) ) ; +#13498 = PLANE ( 'NONE', #866 ) ; +#13499 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.9548611111111071600 ) ) ; +#13500 = EDGE_CURVE ( 'NONE', #9090, #12985, #850, .T. ) ; +#13501 = VECTOR ( 'NONE', #5441, 39.37007874015748100 ) ; +#13502 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.9756944444444406500 ) ) ; +#13503 = ORIENTED_EDGE ( 'NONE', *, *, #10962, .T. ) ; +#13504 = LINE ( 'NONE', #7107, #1750 ) ; +#13505 = CARTESIAN_POINT ( 'NONE', ( 0.01152533017185643900, 0.4608691177296606000, 1.143750000000000000 ) ) ; +#13506 = CARTESIAN_POINT ( 'NONE', ( -0.4581049985510764500, 0.09931820485430825600, 1.484375000000000200 ) ) ; +#13507 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.041666666666663200 ) ) ; +#13508 = CARTESIAN_POINT ( 'NONE', ( 0.2090309484230969400, -0.1679910602537744700, 1.259918511167947000 ) ) ; +#13509 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.7690972222222166600 ) ) ; +#13510 = EDGE_CURVE ( 'NONE', #12491, #11934, #13420, .T. ) ; +#13511 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13512 = CARTESIAN_POINT ( 'NONE', ( 0.04632776727398757500, -0.4586795339797638500, 1.143750000000000000 ) ) ; +#13513 = DIRECTION ( 'NONE', ( -0.004341204441673151600, -0.1735939041298396000, 0.9848077530122088000 ) ) ; +#13514 = CARTESIAN_POINT ( 'NONE', ( 0.2499570820539107900, 0.1763810187204791200, 0.1623750730182168300 ) ) ; +#13515 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.7187499999999935600 ) ) ; +#13516 = AXIS2_PLACEMENT_3D ( 'NONE', #12153, #3336, #3214 ) ; +#13517 = CARTESIAN_POINT ( 'NONE', ( 0.2634237096037870300, -0.1496621630393555600, 0.1540549760241095600 ) ) ; +#13518 = FACE_OUTER_BOUND ( 'NONE', #15678, .T. ) ; +#13519 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.1666666666666565000 ) ) ; +#13520 = VECTOR ( 'NONE', #3995, 39.37007874015748100 ) ; +#13521 = EDGE_LOOP ( 'NONE', ( #15145, #14486, #3705, #14301 ) ) ; +#13522 = PLANE ( 'NONE', #17640 ) ; +#13523 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.4218749999999916700 ) ) ; +#13524 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13525 = DIRECTION ( 'NONE', ( 0.1713325394261255000, 0.02826394418405722700, 0.9848077530122088000 ) ) ; +#13526 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.02083333333334551700 ) ) ; +#13527 = VERTEX_POINT ( 'NONE', #953 ) ; +#13528 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13529 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, 0.1631944444444576900 ) ) ; +#13530 = VECTOR ( 'NONE', #6753, 39.37007874015748100 ) ; +#13531 = EDGE_CURVE ( 'NONE', #12963, #5358, #9144, .T. ) ; +#13532 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.6336805555555488100 ) ) ; +#13533 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#13534 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.1770833333333231300 ) ) ; +#13535 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.7291666666666608600 ) ) ; +#13536 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.124999999999996900 ) ) ; +#13537 = EDGE_CURVE ( 'NONE', #14130, #9314, #16252, .T. ) ; +#13538 = LINE ( 'NONE', #12167, #18822 ) ; +#13539 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#13540 = LINE ( 'NONE', #8159, #9159 ) ; +#13541 = AXIS2_PLACEMENT_3D ( 'NONE', #4387, #7286, #1366 ) ; +#13542 = CARTESIAN_POINT ( 'NONE', ( -0.1616086329535786100, -0.4400104683469201500, 1.143750000000000000 ) ) ; +#13543 = EDGE_LOOP ( 'NONE', ( #12658, #11556, #11040, #14150 ) ) ; +#13544 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.312499999999998900 ) ) ; +#13545 = ORIENTED_EDGE ( 'NONE', *, *, #10081, .T. ) ; +#13546 = FACE_OUTER_BOUND ( 'NONE', #14588, .T. ) ; +#13547 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.1006944444444566700 ) ) ; +#13548 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.5069444444444365400 ) ) ; +#13549 = ADVANCED_FACE ( 'NONE', ( #5206 ), #12602, .T. ) ; +#13550 = ORIENTED_EDGE ( 'NONE', *, *, #5522, .T. ) ; +#13551 = PLANE ( 'NONE', #10840 ) ; +#13552 = ORIENTED_EDGE ( 'NONE', *, *, #8571, .F. ) ; +#13553 = VECTOR ( 'NONE', #2949, 39.37007874015748100 ) ; +#13554 = FACE_OUTER_BOUND ( 'NONE', #8299, .T. ) ; +#13555 = VECTOR ( 'NONE', #6772, 39.37007874015748900 ) ; +#13556 = ORIENTED_EDGE ( 'NONE', *, *, #10910, .T. ) ; +#13557 = DIRECTION ( 'NONE', ( 0.1488963146160743900, 0.08935086513736662000, 0.9848077530122085800 ) ) ; +#13558 = EDGE_CURVE ( 'NONE', #9917, #17817, #3727, .T. ) ; +#13559 = DIRECTION ( 'NONE', ( 0.1442440472914129400, 0.09668166541820356900, -0.9848077530122085800 ) ) ; +#13560 = CIRCLE ( 'NONE', #6876, 0.4610132068742565100 ) ; +#13561 = AXIS2_PLACEMENT_3D ( 'NONE', #15464, #9360, #6391 ) ; +#13562 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13563 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13564 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.8263888888888838400 ) ) ; +#13565 = EDGE_CURVE ( 'NONE', #7662, #11076, #18444, .T. ) ; +#13566 = AXIS2_PLACEMENT_3D ( 'NONE', #1173, #14300, #5453 ) ; +#13567 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.9374999999999958900 ) ) ; +#13568 = ADVANCED_FACE ( 'NONE', ( #6826 ), #2907, .T. ) ; +#13569 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#13570 = VERTEX_POINT ( 'NONE', #13229 ) ; +#13571 = DIRECTION ( 'NONE', ( -0.02499999999999999100, -0.9996874511566102800, -0.0000000000000000000 ) ) ; +#13572 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.097222222222219400 ) ) ; +#13573 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.435763888888888600 ) ) ; +#13574 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.3506944444444354800 ) ) ; +#13575 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.8350694444444392000 ) ) ; +#13576 = EDGE_LOOP ( 'NONE', ( #2982, #4008, #8360, #2113 ) ) ; +#13577 = ORIENTED_EDGE ( 'NONE', *, *, #12684, .T. ) ; +#13578 = CARTESIAN_POINT ( 'NONE', ( 0.1278875336514757900, -0.4509671176887980500, 1.590308733529502700 ) ) ; +#13579 = CONICAL_SURFACE ( 'NONE', #5923, 0.4610132068742565100, 0.1745329251994285300 ) ; +#13580 = DIRECTION ( 'NONE', ( -0.08743372756788628200, 0.1500301066140710100, -0.9848077530122085800 ) ) ; +#13581 = ORIENTED_EDGE ( 'NONE', *, *, #2662, .T. ) ; +#13582 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13583 = ORIENTED_EDGE ( 'NONE', *, *, #11709, .T. ) ; +#13584 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13585 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.6701388888888821800 ) ) ; +#13586 = CARTESIAN_POINT ( 'NONE', ( -0.3075052437956483600, -0.03603240988829414800, 0.1726381962586501200 ) ) ; +#13587 = LINE ( 'NONE', #7102, #2738 ) ; +#13588 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.1944444444444343200 ) ) ; +#13589 = EDGE_CURVE ( 'NONE', #17357, #17325, #4963, .T. ) ; +#13590 = ORIENTED_EDGE ( 'NONE', *, *, #13531, .F. ) ; +#13591 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.3871527777777691300 ) ) ; +#13592 = AXIS2_PLACEMENT_3D ( 'NONE', #6735, #11188, #6668 ) ; +#13593 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.3090277777777684100 ) ) ; +#13594 = EDGE_LOOP ( 'NONE', ( #9673, #17302, #9142, #13349 ) ) ; +#13595 = FACE_OUTER_BOUND ( 'NONE', #12266, .T. ) ; +#13596 = VECTOR ( 'NONE', #10353, 39.37007874015748100 ) ; +#13597 = ORIENTED_EDGE ( 'NONE', *, *, #337, .T. ) ; +#13598 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.3472222222222131100 ) ) ; +#13599 = VERTEX_POINT ( 'NONE', #14446 ) ; +#13600 = CIRCLE ( 'NONE', #18344, 0.4687475818742548600 ) ; +#13601 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.06250000000001251800 ) ) ; +#13602 = DIRECTION ( 'NONE', ( 0.9992845593168618900, 0.03782022621435543500, -0.0000000000000000000 ) ) ; +#13603 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.1875000000000135200 ) ) ; +#13604 = CARTESIAN_POINT ( 'NONE', ( 0.1051858231909574400, -0.4567934304612998300, 1.484375000000000200 ) ) ; +#13605 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.5225694444444367600 ) ) ; +#13606 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.2361111111111013300 ) ) ; +#13607 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#13608 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13609 = CARTESIAN_POINT ( 'NONE', ( -0.4418741004648784100, 0.1314551491986550900, 1.484375000000000200 ) ) ; +#13610 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.100694444444441500 ) ) ; +#13611 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#13612 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.392361111111110700 ) ) ; +#13613 = ORIENTED_EDGE ( 'NONE', *, *, #16639, .T. ) ; +#13614 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, 0.1493055555555682400 ) ) ; +#13615 = EDGE_LOOP ( 'NONE', ( #16423, #8357, #16783, #16184 ) ) ; +#13616 = VERTEX_POINT ( 'NONE', #8599 ) ; +#13617 = CYLINDRICAL_SURFACE ( 'NONE', #15541, 0.4610132068742565100 ) ; +#13618 = FACE_OUTER_BOUND ( 'NONE', #8040, .T. ) ; +#13619 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.5312499999999922300 ) ) ; +#13620 = EDGE_LOOP ( 'NONE', ( #11093, #5542, #12318, #11160 ) ) ; +#13621 = VERTEX_POINT ( 'NONE', #19093 ) ; +#13622 = EDGE_CURVE ( 'NONE', #12276, #6704, #12348, .T. ) ; +#13623 = CONICAL_SURFACE ( 'NONE', #6106, 0.4610132068742565100, 0.1745329251994268400 ) ; +#13624 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995800, 0.04916560385751472100, 1.252157760153582300 ) ) ; +#13625 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.1805555555555686500 ) ) ; +#13626 = ORIENTED_EDGE ( 'NONE', *, *, #11164, .T. ) ; +#13627 = ORIENTED_EDGE ( 'NONE', *, *, #5498, .T. ) ; +#13628 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999994700, -0.1443375672974061300, 1.548179320649367500 ) ) ; +#13629 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#13630 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.7986111111111059400 ) ) ; +#13631 = ORIENTED_EDGE ( 'NONE', *, *, #18263, .T. ) ; +#13632 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.034722222222218800 ) ) ; +#13633 = CIRCLE ( 'NONE', #18133, 0.4687475818742551400 ) ; +#13634 = ORIENTED_EDGE ( 'NONE', *, *, #12170, .F. ) ; +#13635 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1662, #376, #6158, #4615, #13641, #7656, #6225, #18084, #9135 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4772727272727272900, 0.4810606060606060800, 0.4848484848484848600, 0.4886363636363636500, 0.4924242424242424300 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#13636 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.279513888888887300 ) ) ; +#13637 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.420138888888889100 ) ) ; +#13638 = CARTESIAN_POINT ( 'NONE', ( -0.1833993232404367600, -0.4313803237839101700, 1.143750000000000000 ) ) ; +#13639 = DIRECTION ( 'NONE', ( -0.8660254037844397100, 1.060575238724908000E-016, 0.4999999999999979500 ) ) ; +#13640 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13641 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.6458333333333267100 ) ) ; +#13642 = CARTESIAN_POINT ( 'NONE', ( -0.3060868967590813500, -0.06298461425138629500, 0.1823163490354292900 ) ) ; +#13643 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.6597222222222154400 ) ) ; +#13644 = ORIENTED_EDGE ( 'NONE', *, *, #18500, .T. ) ; +#13645 = EDGE_LOOP ( 'NONE', ( #18843, #8729, #14453, #16778 ) ) ; +#13646 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.1840277777777676900 ) ) ; +#13647 = ORIENTED_EDGE ( 'NONE', *, *, #5276, .T. ) ; +#13648 = ADVANCED_FACE ( 'NONE', ( #10521 ), #2924, .F. ) ; +#13649 = LINE ( 'NONE', #9047, #16642 ) ; +#13650 = EDGE_CURVE ( 'NONE', #2895, #4666, #18584, .T. ) ; +#13651 = ORIENTED_EDGE ( 'NONE', *, *, #1989, .F. ) ; +#13652 = CARTESIAN_POINT ( 'NONE', ( -0.4606833792705949400, 0.01743562377178659700, 1.440511179676401600 ) ) ; +#13653 = EDGE_CURVE ( 'NONE', #11305, #14055, #8674, .T. ) ; +#13654 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.3489583333333244300 ) ) ; +#13655 = ORIENTED_EDGE ( 'NONE', *, *, #2958, .F. ) ; +#13656 = CARTESIAN_POINT ( 'NONE', ( 0.4120995984523148600, 0.2066569569792582900, 1.592116737595687900 ) ) ; +#13657 = AXIS2_PLACEMENT_3D ( 'NONE', #10151, #17610, #4347 ) ; +#13658 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#13659 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.1284722222222353100 ) ) ; +#13660 = CARTESIAN_POINT ( 'NONE', ( -0.4219140922835708000, 0.1858000959230553800, 1.187613820323614800 ) ) ; +#13661 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.5659722222222148800 ) ) ; +#13662 = ORIENTED_EDGE ( 'NONE', *, *, #15402, .F. ) ; +#13663 = ADVANCED_FACE ( 'NONE', ( #2676 ), #14520, .F. ) ; +#13664 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.6649305555555490300 ) ) ; +#13665 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#13666 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.159722222222219400 ) ) ; +#13667 = ORIENTED_EDGE ( 'NONE', *, *, #13933, .F. ) ; +#13668 = CARTESIAN_POINT ( 'NONE', ( 0.1671865093978525700, -0.1921499583890882700, 1.528399624464272400 ) ) ; +#13669 = LINE ( 'NONE', #4358, #8598 ) ; +#13670 = DIRECTION ( 'NONE', ( 0.1365235898527190100, 0.1073079634545909000, 0.9848077530122082400 ) ) ; +#13671 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.180555555555553400 ) ) ; +#13672 = ORIENTED_EDGE ( 'NONE', *, *, #8844, .F. ) ; +#13673 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.01736111111109972500 ) ) ; +#13674 = VERTEX_POINT ( 'NONE', #18828 ) ; +#13675 = EDGE_CURVE ( 'NONE', #1532, #8275, #8215, .T. ) ; +#13676 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.3854166666666578000 ) ) ; +#13677 = EDGE_CURVE ( 'NONE', #14043, #13414, #10060, .T. ) ; +#13678 = EDGE_CURVE ( 'NONE', #971, #6322, #6601, .T. ) ; +#13679 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #10877, #2119, #14083, #14018, #3773, #2295, #2415, #3643, #10993 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2651515151515151400, 0.2689393939393939200, 0.2727272727272727100, 0.2765151515151514900, 0.2803030303030302800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#13680 = ORIENTED_EDGE ( 'NONE', *, *, #3936, .T. ) ; +#13681 = AXIS2_PLACEMENT_3D ( 'NONE', #6545, #9192, #16597 ) ; +#13682 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13683 = ORIENTED_EDGE ( 'NONE', *, *, #17358, .T. ) ; +#13684 = CARTESIAN_POINT ( 'NONE', ( -4.168601147103806400E-017, -2.526954538747225800E-016, 3.802149639073266300 ) ) ; +#13685 = ORIENTED_EDGE ( 'NONE', *, *, #16505, .T. ) ; +#13686 = CARTESIAN_POINT ( 'NONE', ( -0.01171875000000001400, -0.4686034927296605600, 1.143750000000000000 ) ) ; +#13687 = DIRECTION ( 'NONE', ( 0.4482668910516029400, 0.8938997675281779000, 0.0000000000000000000 ) ) ; +#13688 = DIRECTION ( 'NONE', ( 0.9961450333403955000, 0.08772156263577582400, -0.0000000000000000000 ) ) ; +#13689 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#13690 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.7048611111111051700 ) ) ; +#13691 = FACE_OUTER_BOUND ( 'NONE', #17255, .T. ) ; +#13692 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.052083333333330200 ) ) ; +#13693 = ORIENTED_EDGE ( 'NONE', *, *, #9666, .F. ) ; +#13694 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#13695 = ORIENTED_EDGE ( 'NONE', *, *, #14129, .F. ) ; +#13696 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.432291666666666300 ) ) ; +#13697 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.437499999999999600 ) ) ; +#13698 = EDGE_CURVE ( 'NONE', #10901, #2181, #14648, .T. ) ; +#13699 = CARTESIAN_POINT ( 'NONE', ( -0.08555517358053293900, -0.2947320132817766200, -1.526803704315956400 ) ) ; +#13700 = CARTESIAN_POINT ( 'NONE', ( 2.430071370889268000E-017, -2.399099917551582900E-017, 3.802149639073257000 ) ) ; +#13701 = CIRCLE ( 'NONE', #17774, 0.4610132068742565100 ) ; +#13702 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.5590277777777706800 ) ) ; +#13703 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13704 = ORIENTED_EDGE ( 'NONE', *, *, #18365, .T. ) ; +#13705 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.7048611111111046100 ) ) ; +#13706 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.2013888888888789300 ) ) ; +#13707 = LINE ( 'NONE', #6694, #11185 ) ; +#13708 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.02256944444443304000 ) ) ; +#13709 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.427083333333333000 ) ) ; +#13710 = PLANE ( 'NONE', #15795 ) ; +#13711 = VECTOR ( 'NONE', #9868, 39.37007874015748100 ) ; +#13712 = VERTEX_POINT ( 'NONE', #14635 ) ; +#13713 = CARTESIAN_POINT ( 'NONE', ( 2.779067431402770900E-018, -1.684636359164813300E-017, -1.174024639073291600 ) ) ; +#13714 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, 0.03125000000001212900 ) ) ; +#13715 = LINE ( 'NONE', #10763, #8195 ) ; +#13716 = CARTESIAN_POINT ( 'NONE', ( 0.4289947181748906000, -0.1889182211382633700, 1.484375000000000200 ) ) ; +#13717 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.1770833333333466700 ) ) ; +#13718 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.5729166666666594100 ) ) ; +#13719 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.3628472222222133300 ) ) ; +#13720 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#13721 = EDGE_CURVE ( 'NONE', #15387, #11670, #15573, .T. ) ; +#13722 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.1666666666666562500 ) ) ; +#13723 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.420138888888889100 ) ) ; +#13724 = DIRECTION ( 'NONE', ( 0.9430338398216121500, 0.3326968243781501200, 0.0000000000000000000 ) ) ; +#13725 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.055555555555552000 ) ) ; +#13726 = CIRCLE ( 'NONE', #17593, 0.4687499999999995600 ) ; +#13727 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13728 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.187499999999998000 ) ) ; +#13729 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.1354166666666793400 ) ) ; +#13730 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.5381944444444370900 ) ) ; +#13731 = LINE ( 'NONE', #7446, #6572 ) ; +#13732 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.3368055555555462500 ) ) ; +#13733 = ORIENTED_EDGE ( 'NONE', *, *, #1660, .T. ) ; +#13734 = AXIS2_PLACEMENT_3D ( 'NONE', #14186, #6928, #15670 ) ; +#13735 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.177083333333331300 ) ) ; +#13736 = ADVANCED_FACE ( 'NONE', ( #11884 ), #3135, .T. ) ; +#13737 = FACE_BOUND ( 'NONE', #11740, .T. ) ; +#13738 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.1180555555555684200 ) ) ; +#13739 = VERTEX_POINT ( 'NONE', #15280 ) ; +#13740 = FACE_OUTER_BOUND ( 'NONE', #2437, .T. ) ; +#13741 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.7430555555555494700 ) ) ; +#13742 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13743 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#13744 = CARTESIAN_POINT ( 'NONE', ( -0.4592360163321195800, 0.04044079890273363800, 1.587900241027141200 ) ) ; +#13745 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.7083333333333274900 ) ) ; +#13746 = ORIENTED_EDGE ( 'NONE', *, *, #5250, .T. ) ; +#13747 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.9999999999999964500 ) ) ; +#13748 = VECTOR ( 'NONE', #972, 39.37007874015748100 ) ; +#13749 = ADVANCED_FACE ( 'NONE', ( #10975 ), #7739, .T. ) ; +#13750 = FACE_OUTER_BOUND ( 'NONE', #13918, .T. ) ; +#13751 = VECTOR ( 'NONE', #12479, 39.37007874015748100 ) ; +#13752 = ADVANCED_FACE ( 'NONE', ( #3588 ), #7375, .F. ) ; +#13753 = ORIENTED_EDGE ( 'NONE', *, *, #11807, .F. ) ; +#13754 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.303819444444443100 ) ) ; +#13755 = ORIENTED_EDGE ( 'NONE', *, *, #15133, .F. ) ; +#13756 = CARTESIAN_POINT ( 'NONE', ( 0.4684146371797784400, 0.01772823103798254100, 1.484375000000000200 ) ) ; +#13757 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #16921, #17041, #8096, #951, #6796, #18398, #17107, #9574, #2294 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3863636363636363500, 0.3901515151515151400, 0.3939393939393939200, 0.3977272727272727100, 0.4015151515151514900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#13758 = CARTESIAN_POINT ( 'NONE', ( 0.1207122909859778100, -0.2862880012850219100, -1.522997945743623800 ) ) ; +#13759 = EDGE_CURVE ( 'NONE', #3309, #11392, #69, .T. ) ; +#13760 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.1249999999999892400 ) ) ; +#13761 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#13762 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#13763 = CARTESIAN_POINT ( 'NONE', ( -0.4190133544667932800, -0.2101240212147333400, 1.484375000000000200 ) ) ; +#13764 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.7847222222222164400 ) ) ; +#13765 = CARTESIAN_POINT ( 'NONE', ( -0.01152533017185643000, -0.4608691177296606000, 1.187613820323598600 ) ) ; +#13766 = ORIENTED_EDGE ( 'NONE', *, *, #6726, .F. ) ; +#13767 = FACE_OUTER_BOUND ( 'NONE', #15041, .T. ) ; +#13768 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.1753472222222118300 ) ) ; +#13769 = FACE_OUTER_BOUND ( 'NONE', #668, .T. ) ; +#13770 = LINE ( 'NONE', #7573, #4537 ) ; +#13771 = ORIENTED_EDGE ( 'NONE', *, *, #2117, .F. ) ; +#13772 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.9965277777777740200 ) ) ; +#13773 = LINE ( 'NONE', #1763, #884 ) ; +#13774 = ORIENTED_EDGE ( 'NONE', *, *, #5771, .F. ) ; +#13775 = PLANE ( 'NONE', #14393 ) ; +#13776 = EDGE_CURVE ( 'NONE', #15189, #3079, #18796, .T. ) ; +#13777 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.1215277777777907100 ) ) ; +#13778 = PLANE ( 'NONE', #9492 ) ; +#13779 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.1736111111111245900 ) ) ; +#13780 = DIRECTION ( 'NONE', ( -0.9151887321064310400, 0.4030255384283025200, 0.0000000000000000000 ) ) ; +#13781 = EDGE_CURVE ( 'NONE', #4666, #8192, #7053, .T. ) ; +#13782 = ORIENTED_EDGE ( 'NONE', *, *, #3653, .T. ) ; +#13783 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.2725694444444347600 ) ) ; +#13784 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 3.061616973349193300E-017, 1.525850221280107700 ) ) ; +#13785 = CARTESIAN_POINT ( 'NONE', ( -0.3070850166377885900, -0.3438487595863262100, 1.187613820323615500 ) ) ; +#13786 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#13787 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.9305555555555509200 ) ) ; +#13788 = EDGE_CURVE ( 'NONE', #16602, #14802, #14175, .T. ) ; +#13789 = ORIENTED_EDGE ( 'NONE', *, *, #4635, .F. ) ; +#13790 = AXIS2_PLACEMENT_3D ( 'NONE', #17828, #10364, #9019 ) ; +#13791 = CARTESIAN_POINT ( 'NONE', ( 0.02041011989960534200, -0.2768913463765827500, 1.541375947349477200 ) ) ; +#13792 = AXIS2_PLACEMENT_3D ( 'NONE', #18962, #4514, #11672 ) ; +#13793 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.208333333333331500 ) ) ; +#13794 = AXIS2_PLACEMENT_3D ( 'NONE', #9481, #12500, #13972 ) ; +#13795 = ORIENTED_EDGE ( 'NONE', *, *, #5500, .F. ) ; +#13796 = ORIENTED_EDGE ( 'NONE', *, *, #13157, .T. ) ; +#13797 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, 0.09375000000001235100 ) ) ; +#13798 = LINE ( 'NONE', #13700, #3885 ) ; +#13799 = FACE_OUTER_BOUND ( 'NONE', #11591, .T. ) ; +#13800 = LINE ( 'NONE', #1331, #6171 ) ; +#13801 = ORIENTED_EDGE ( 'NONE', *, *, #13653, .F. ) ; +#13802 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13803 = FACE_OUTER_BOUND ( 'NONE', #5320, .T. ) ; +#13804 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.3229166666666573600 ) ) ; +#13805 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.166666666666664100 ) ) ; +#13806 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, 0.1145833333333461400 ) ) ; +#13807 = ORIENTED_EDGE ( 'NONE', *, *, #17086, .T. ) ; +#13808 = ORIENTED_EDGE ( 'NONE', *, *, #8372, .F. ) ; +#13809 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.6840277777777714600 ) ) ; +#13810 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13811 = CARTESIAN_POINT ( 'NONE', ( 0.2849188901020722800, -0.3722200808164475300, 1.484375000000000200 ) ) ; +#13812 = EDGE_CURVE ( 'NONE', #12636, #15612, #15787, .T. ) ; +#13813 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13814 = ORIENTED_EDGE ( 'NONE', *, *, #18948, .T. ) ; +#13815 = VERTEX_POINT ( 'NONE', #10401 ) ; +#13816 = LINE ( 'NONE', #18283, #11980 ) ; +#13817 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13818 = LINE ( 'NONE', #16779, #4126 ) ; +#13819 = AXIS2_PLACEMENT_3D ( 'NONE', #5864, #163, #10472 ) ; +#13820 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13821 = CARTESIAN_POINT ( 'NONE', ( -0.2154822354126440000, -0.4162859218392684400, 1.484375000000000200 ) ) ; +#13822 = ORIENTED_EDGE ( 'NONE', *, *, #1065, .F. ) ; +#13823 = ORIENTED_EDGE ( 'NONE', *, *, #11278, .T. ) ; +#13824 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.5833333333333264900 ) ) ; +#13825 = VECTOR ( 'NONE', #1303, 39.37007874015748100 ) ; +#13826 = EDGE_CURVE ( 'NONE', #10372, #15825, #14876, .T. ) ; +#13827 = AXIS2_PLACEMENT_3D ( 'NONE', #5390, #9857, #18619 ) ; +#13828 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.7881944444444392000 ) ) ; +#13829 = DIRECTION ( 'NONE', ( -0.06794052811688587600, 0.1598054262102616100, -0.9848077530122085800 ) ) ; +#13830 = AXIS2_PLACEMENT_3D ( 'NONE', #17791, #13150, #3046 ) ; +#13831 = DIRECTION ( 'NONE', ( -0.02606405807963925800, -0.1716809671555525600, 0.9848077530122085800 ) ) ; +#13832 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.390624999999999300 ) ) ; +#13833 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -1.395833333333332600 ) ) ; +#13834 = ORIENTED_EDGE ( 'NONE', *, *, #503, .F. ) ; +#13835 = CARTESIAN_POINT ( 'NONE', ( 0.09239732453501552100, -0.2960587316022588200, -1.523553065958591000 ) ) ; +#13836 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#13837 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -1.440972222222221900 ) ) ; +#13838 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.9305555555555512500 ) ) ; +#13839 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.5729166666666591900 ) ) ; +#13840 = CARTESIAN_POINT ( 'NONE', ( -0.3086320542674450600, -3.398774944758646100E-016, 0.1713779516012225400 ) ) ; +#13841 = ORIENTED_EDGE ( 'NONE', *, *, #6017, .F. ) ; +#13842 = LINE ( 'NONE', #9323, #16350 ) ; +#13843 = CYLINDRICAL_SURFACE ( 'NONE', #14073, 0.4610132068742565100 ) ; +#13844 = ORIENTED_EDGE ( 'NONE', *, *, #7249, .F. ) ; +#13845 = ORIENTED_EDGE ( 'NONE', *, *, #11576, .T. ) ; +#13846 = LINE ( 'NONE', #18316, #17079 ) ; +#13847 = ADVANCED_FACE ( 'NONE', ( #4057 ), #10268, .T. ) ; +#13848 = EDGE_CURVE ( 'NONE', #12, #8720, #14123, .T. ) ; +#13849 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.07812499999998895300 ) ) ; +#13850 = CARTESIAN_POINT ( 'NONE', ( -0.2119256669269687600, -0.4094150566479519100, 1.143750000000000000 ) ) ; +#13851 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#13852 = ORIENTED_EDGE ( 'NONE', *, *, #9952, .F. ) ; +#13853 = ORIENTED_EDGE ( 'NONE', *, *, #17055, .F. ) ; +#13854 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.435763888888888600 ) ) ; +#13855 = VERTEX_POINT ( 'NONE', #18330 ) ; +#13856 = CARTESIAN_POINT ( 'NONE', ( 0.3893757946457752600, -0.2609847755022707300, 1.143750000000000000 ) ) ; +#13857 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.184027777777775700 ) ) ; +#13858 = CARTESIAN_POINT ( 'NONE', ( -0.1464933923060665100, 0.2040971351124034000, 1.250015718029290800 ) ) ; +#13859 = CIRCLE ( 'NONE', #8886, 0.4687499999999995600 ) ; +#13860 = ADVANCED_FACE ( 'NONE', ( #13966 ), #15551, .T. ) ; +#13861 = ORIENTED_EDGE ( 'NONE', *, *, #12838, .T. ) ; +#13862 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.4218749999999915100 ) ) ; +#13863 = ORIENTED_EDGE ( 'NONE', *, *, #11329, .F. ) ; +#13864 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.569444444444444900 ) ) ; +#13865 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.1979166666666566100 ) ) ; +#13866 = CARTESIAN_POINT ( 'NONE', ( -0.1843364152068907600, 0.2059749365136105400, 0.08286399339095737400 ) ) ; +#13867 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.9201388888888841800 ) ) ; +#13868 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.6840277777777717900 ) ) ; +#13869 = ADVANCED_FACE ( 'NONE', ( #13034 ), #14634, .T. ) ; +#13870 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#13871 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.177083333333331000 ) ) ; +#13872 = ORIENTED_EDGE ( 'NONE', *, *, #16238, .T. ) ; +#13873 = ORIENTED_EDGE ( 'NONE', *, *, #10211, .T. ) ; +#13874 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.3715277777777688000 ) ) ; +#13875 = EDGE_CURVE ( 'NONE', #11969, #6972, #3812, .T. ) ; +#13876 = EDGE_LOOP ( 'NONE', ( #14054, #16892, #6626, #13655, #9652, #12643 ) ) ; +#13877 = CARTESIAN_POINT ( 'NONE', ( 0.3829490853735647600, 0.2566771803726157200, 1.592921120922338200 ) ) ; +#13878 = CYLINDRICAL_SURFACE ( 'NONE', #15523, 0.3125000000000008300 ) ; +#13879 = ORIENTED_EDGE ( 'NONE', *, *, #10887, .F. ) ; +#13880 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.7951388888888831800 ) ) ; +#13881 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.069444444444441300 ) ) ; +#13882 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.034722222222218800 ) ) ; +#13883 = CARTESIAN_POINT ( 'NONE', ( 0.1278868739221062100, 0.4509647912990471000, 1.143750000000000000 ) ) ; +#13884 = DIRECTION ( 'NONE', ( -1.000000000000000000, 2.042810365310288000E-014, 0.0000000000000000000 ) ) ; +#13885 = EDGE_CURVE ( 'NONE', #5957, #4423, #6804, .T. ) ; +#13886 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995600, 0.1443375672974061300, 1.272329099369260400 ) ) ; +#13887 = DIRECTION ( 'NONE', ( -0.7116271114718302200, 0.7025573672080163100, 0.0000000000000000000 ) ) ; +#13888 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.7256944444444386500 ) ) ; +#13889 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.8263888888888838400 ) ) ; +#13890 = EDGE_LOOP ( 'NONE', ( #6409, #7677, #2816, #12520 ) ) ; +#13891 = CARTESIAN_POINT ( 'NONE', ( -6.359620834537949100E-017, -0.2886751345948123700, 1.548179320649367700 ) ) ; +#13892 = ORIENTED_EDGE ( 'NONE', *, *, #7263, .T. ) ; +#13893 = LINE ( 'NONE', #8205, #2815 ) ; +#13894 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#13895 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.088541666666663600 ) ) ; +#13896 = CARTESIAN_POINT ( 'NONE', ( 0.04710500384695860000, 0.4663747571701778400, 1.484375000000000200 ) ) ; +#13897 = ORIENTED_EDGE ( 'NONE', *, *, #2559, .F. ) ; +#13898 = CARTESIAN_POINT ( 'NONE', ( -0.2780325501680826500, -0.1176776380431601000, -1.531795280506302200 ) ) ; +#13899 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13900 = ORIENTED_EDGE ( 'NONE', *, *, #4274, .T. ) ; +#13901 = DIRECTION ( 'NONE', ( -0.1055480449047595700, -0.1378887226129331400, 0.9848077530122091300 ) ) ; +#13902 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.9236111111111067200 ) ) ; +#13903 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #16265, #14925, #7920, #1854, #18030, #4809, #12291, #3466, #3527, #12228, #6428, #13586, #1787, #13840 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 4 ), + ( 0.002026295085389645400, 0.002710403854950393200, 0.003394512624511141300, 0.004762730163632635000, 0.005446838933193380900, 0.006130947702754126900, 0.007499165241875617100 ), + .UNSPECIFIED. ) ; +#13904 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.5798611111111038300 ) ) ; +#13905 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13906 = ORIENTED_EDGE ( 'NONE', *, *, #7922, .F. ) ; +#13907 = EDGE_CURVE ( 'NONE', #7548, #11955, #14413, .T. ) ; +#13908 = EDGE_CURVE ( 'NONE', #979, #14320, #11197, .T. ) ; +#13909 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.1684027777777675200 ) ) ; +#13910 = VECTOR ( 'NONE', #17624, 39.37007874015748100 ) ; +#13911 = AXIS2_PLACEMENT_3D ( 'NONE', #7779, #9459, #10803 ) ; +#13912 = ORIENTED_EDGE ( 'NONE', *, *, #1758, .F. ) ; +#13913 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13914 = ORIENTED_EDGE ( 'NONE', *, *, #13589, .F. ) ; +#13915 = LINE ( 'NONE', #4629, #17356 ) ; +#13916 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.491319444444444600 ) ) ; +#13917 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#13918 = EDGE_LOOP ( 'NONE', ( #11246, #2031, #18033, #14552, #10883, #13496 ) ) ; +#13919 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.3732638888888799000 ) ) ; +#13920 = CARTESIAN_POINT ( 'NONE', ( 0.2659561823096171000, -0.3859943064402053300, 1.143750000000000000 ) ) ; +#13921 = CARTESIAN_POINT ( 'NONE', ( -0.3477592364557826600, 0.3026494512999768900, 1.484375000000000200 ) ) ; +#13922 = CARTESIAN_POINT ( 'NONE', ( -0.2849174203000333600, -0.3722181606565369600, 1.143750000000000000 ) ) ; +#13923 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.9513888888888844000 ) ) ; +#13924 = ORIENTED_EDGE ( 'NONE', *, *, #11682, .T. ) ; +#13925 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.6874999999999936700 ) ) ; +#13926 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.121527777777775200 ) ) ; +#13927 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, 0.2048611111111244300 ) ) ; +#13928 = PERSON_AND_ORGANIZATION ( #18342, #15970 ) ; +#13929 = VERTEX_POINT ( 'NONE', #3701 ) ; +#13930 = EDGE_CURVE ( 'NONE', #8701, #2237, #9128, .T. ) ; +#13931 = CARTESIAN_POINT ( 'NONE', ( 0.4190155160288300800, 0.2101251051804445500, 1.484375000000000200 ) ) ; +#13932 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.2638888888888788500 ) ) ; +#13933 = EDGE_CURVE ( 'NONE', #16551, #8311, #6581, .T. ) ; +#13934 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 0.1443375672974061000, 1.548179320649367500 ) ) ; +#13936 = EDGE_CURVE ( 'NONE', #15089, #5892, #2661, .T. ) ; +#13935 = VECTOR ( 'NONE', #11720, 39.37007874015748900 ) ; +#13937 = ADVANCED_FACE ( 'NONE', ( #5185 ), #18111, .T. ) ; +#13938 = AXIS2_PLACEMENT_3D ( 'NONE', #8636, #18937, #11592 ) ; +#13939 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#13940 = AXIS2_PLACEMENT_3D ( 'NONE', #727, #2004, #5010 ) ; +#13941 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.7708333333333273800 ) ) ; +#13942 = CARTESIAN_POINT ( 'NONE', ( -0.4418741004648775200, -0.1314551491986582500, 1.187613820323599100 ) ) ; +#13943 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.7395833333333274900 ) ) ; +#13944 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13945 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, 0.03125000000001213600 ) ) ; +#13946 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13947 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.7013888888888828400 ) ) ; +#13948 = CIRCLE ( 'NONE', #6045, 0.4687475818742581300 ) ; +#13949 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.8229166666666616300 ) ) ; +#13950 = ADVANCED_FACE ( 'NONE', ( #4729 ), #9443, .F. ) ; +#13951 = VECTOR ( 'NONE', #8320, 39.37007874015748100 ) ; +#13952 = ADVANCED_FACE ( 'NONE', ( #10043 ), #827, .T. ) ; +#13953 = DIRECTION ( 'NONE', ( 0.2851439985633998400, -0.9584846895403577000, 0.0000000000000000000 ) ) ; +#13954 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.171874999999997600 ) ) ; +#13955 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323613700 ) ) ; +#13956 = EDGE_CURVE ( 'NONE', #6867, #119, #12815, .T. ) ; +#13957 = CARTESIAN_POINT ( 'NONE', ( -0.06919666627598536300, -0.4557905201830946300, 1.440511179676385400 ) ) ; +#13958 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#13959 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13960 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.6006944444444373100 ) ) ; +#13961 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#13962 = LINE ( 'NONE', #952, #17404 ) ; +#13963 = ORIENTED_EDGE ( 'NONE', *, *, #2458, .F. ) ; +#13964 = LINE ( 'NONE', #17766, #9358 ) ; +#13965 = EDGE_LOOP ( 'NONE', ( #2515, #2731, #9816, #1311 ) ) ; +#13966 = FACE_OUTER_BOUND ( 'NONE', #15209, .T. ) ; +#13967 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.02604166666665505900 ) ) ; +#13968 = CARTESIAN_POINT ( 'NONE', ( -0.2222835854424194700, 0.1918229018808565200, 0.1296749863375585800 ) ) ; +#13969 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#13970 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.470486111111110900 ) ) ; +#13971 = DIRECTION ( 'NONE', ( -0.3912539079287260500, 0.9202827715058561300, 0.0000000000000000000 ) ) ; +#13972 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#13973 = CARTESIAN_POINT ( 'NONE', ( -0.1146115372620811500, 0.2225041327043129600, 1.249992272704498800 ) ) ; +#13974 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.3836805555555468100 ) ) ; +#13975 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 3.802149639073269400 ) ) ; +#13976 = EDGE_CURVE ( 'NONE', #16352, #1206, #9991, .T. ) ; +#13977 = DIRECTION ( 'NONE', ( 0.7543368200092270800, -0.6564875946873380800, 0.0000000000000000000 ) ) ; +#13978 = CARTESIAN_POINT ( 'NONE', ( -0.2154811238112795700, 0.4162837743582970000, 1.143750000000000000 ) ) ; +#13979 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13980 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.020833333333329500 ) ) ; +#13981 = VECTOR ( 'NONE', #18746, 39.37007874015748100 ) ; +#13982 = VERTEX_POINT ( 'NONE', #12463 ) ; +#13983 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.8298611111111061600 ) ) ; +#13984 = VECTOR ( 'NONE', #16172, 39.37007874015748100 ) ; +#13985 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#13986 = EDGE_CURVE ( 'NONE', #16094, #366, #601, .T. ) ; +#13987 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.02083333333332147700 ) ) ; +#13988 = AXIS2_PLACEMENT_3D ( 'NONE', #8202, #8268, #5463 ) ; +#13989 = CARTESIAN_POINT ( 'NONE', ( -0.3238882248697022000, -0.3280694967582925000, 1.440511179676384800 ) ) ; +#13990 = ORIENTED_EDGE ( 'NONE', *, *, #18340, .T. ) ; +#13991 = CARTESIAN_POINT ( 'NONE', ( -0.3893757946457717100, -0.2609847755022761700, 1.592921120922338200 ) ) ; +#13992 = LINE ( 'NONE', #1004, #18135 ) ; +#13993 = VECTOR ( 'NONE', #5708, 39.37007874015748900 ) ; +#13994 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.6076388888888816200 ) ) ; +#13995 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.7986111111111057200 ) ) ; +#13996 = VECTOR ( 'NONE', #13423, 39.37007874015748900 ) ; +#13997 = ORIENTED_EDGE ( 'NONE', *, *, #10711, .T. ) ; +#13998 = VERTEX_POINT ( 'NONE', #12722 ) ; +#13999 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#14000 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #17716, #8903, #16091, #14679, #3045, #19070, #4450, #22, #10313 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4015151515151514900, 0.4053030303030302800, 0.4090909090909090600, 0.4128787878787878500, 0.4166666666666666300 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#14001 = CARTESIAN_POINT ( 'NONE', ( 0.2241598061914715500, 0.1777650249460132100, -1.547868915729390600 ) ) ; +#14002 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.06249999999998902300 ) ) ; +#14003 = VECTOR ( 'NONE', #3506, 39.37007874015748900 ) ; +#14004 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.588758826628429600 ) ) ; +#14005 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14006 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.3159722222222132700 ) ) ; +#14007 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.8402777777777729100 ) ) ; +#14008 = ORIENTED_EDGE ( 'NONE', *, *, #15216, .T. ) ; +#14009 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.07638888888887764000 ) ) ; +#14010 = VERTEX_POINT ( 'NONE', #1119 ) ; +#14011 = EDGE_CURVE ( 'NONE', #2160, #5921, #9585, .T. ) ; +#14012 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.251736111111109400 ) ) ; +#14013 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.4444444444444363200 ) ) ; +#14014 = CARTESIAN_POINT ( 'NONE', ( 0.1616086329535751900, 0.4400104683469203700, 1.484375000000000200 ) ) ; +#14015 = EDGE_CURVE ( 'NONE', #11955, #1610, #12117, .T. ) ; +#14016 = ORIENTED_EDGE ( 'NONE', *, *, #6866, .T. ) ; +#14017 = CIRCLE ( 'NONE', #5990, 0.4610132068742565100 ) ; +#14018 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.114583333333330600 ) ) ; +#14019 = FACE_OUTER_BOUND ( 'NONE', #11261, .T. ) ; +#14020 = CARTESIAN_POINT ( 'NONE', ( 0.1257767296168573200, 0.4435238338571829100, 1.590308733529502500 ) ) ; +#14021 = CYLINDRICAL_SURFACE ( 'NONE', #7899, 0.3125000000000008300 ) ; +#14022 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.1458333333333227400 ) ) ; +#14023 = ORIENTED_EDGE ( 'NONE', *, *, #3043, .T. ) ; +#14024 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.4548611111111028300 ) ) ; +#14025 = AXIS2_PLACEMENT_3D ( 'NONE', #16164, #8587, #13152 ) ; +#14026 = CIRCLE ( 'NONE', #12445, 0.4687499999999995600 ) ; +#14027 = ADVANCED_FACE ( 'NONE', ( #8431 ), #12579, .T. ) ; +#14028 = ORIENTED_EDGE ( 'NONE', *, *, #3799, .F. ) ; +#14029 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, 0.1614583333333464200 ) ) ; +#14030 = CARTESIAN_POINT ( 'NONE', ( -0.2659561823096141500, 0.3859943064402071600, 1.484375000000000200 ) ) ; +#14031 = ORIENTED_EDGE ( 'NONE', *, *, #13759, .T. ) ; +#14032 = ORIENTED_EDGE ( 'NONE', *, *, #10061, .F. ) ; +#14033 = FACE_OUTER_BOUND ( 'NONE', #9894, .T. ) ; +#14034 = LINE ( 'NONE', #6241, #3428 ) ; +#14035 = CARTESIAN_POINT ( 'NONE', ( 0.3037093888404724900, -7.227623398736650200E-015, 0.1578530394970854300 ) ) ; +#14036 = LINE ( 'NONE', #11511, #2283 ) ; +#14037 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.8055555555555501400 ) ) ; +#14038 = VERTEX_POINT ( 'NONE', #18633 ) ; +#14039 = EDGE_CURVE ( 'NONE', #8338, #528, #5639, .T. ) ; +#14040 = VECTOR ( 'NONE', #11156, 39.37007874015748100 ) ; +#14041 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.571180555555556200 ) ) ; +#14042 = DIRECTION ( 'NONE', ( -0.9921147013144777600, -0.1253332335643045400, 0.0000000000000000000 ) ) ; +#14043 = VERTEX_POINT ( 'NONE', #1052 ) ; +#14044 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#14045 = ADVANCED_FACE ( 'NONE', ( #16957 ), #15773, .F. ) ; +#14046 = EDGE_CURVE ( 'NONE', #15387, #8954, #10509, .T. ) ; +#14047 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.2065972222222119700 ) ) ; +#14048 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.579861111111111800 ) ) ; +#14049 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.038194444444440900 ) ) ; +#14050 = EDGE_CURVE ( 'NONE', #9864, #12950, #9398, .T. ) ; +#14051 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.8368055555555503600 ) ) ; +#14052 = ADVANCED_FACE ( 'NONE', ( #18566 ), #8519, .F. ) ; +#14053 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.9756944444444406500 ) ) ; +#14054 = ORIENTED_EDGE ( 'NONE', *, *, #5852, .F. ) ; +#14055 = VERTEX_POINT ( 'NONE', #3886 ) ; +#14056 = CONICAL_SURFACE ( 'NONE', #1485, 0.4687475818742555300, 0.1745329251994286500 ) ; +#14057 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.06944444444443306800 ) ) ; +#14058 = ORIENTED_EDGE ( 'NONE', *, *, #9476, .F. ) ; +#14059 = ORIENTED_EDGE ( 'NONE', *, *, #13430, .F. ) ; +#14060 = VECTOR ( 'NONE', #2102, 39.37007874015748100 ) ; +#14061 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.5381944444444367600 ) ) ; +#14062 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323601700 ) ) ; +#14063 = EDGE_CURVE ( 'NONE', #900, #15610, #17412, .T. ) ; +#14064 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.510416666666667000 ) ) ; +#14065 = CARTESIAN_POINT ( 'NONE', ( 0.1216674067475563400, 0.2612545604053686500, -1.545295714027711000 ) ) ; +#14066 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.1041666666666560100 ) ) ; +#14067 = ORIENTED_EDGE ( 'NONE', *, *, #15683, .T. ) ; +#14068 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14069 = DIRECTION ( 'NONE', ( 0.03896623090933395300, 0.1692197460574999800, -0.9848077530122088000 ) ) ; +#14070 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.3194444444444353200 ) ) ; +#14071 = ORIENTED_EDGE ( 'NONE', *, *, #14148, .F. ) ; +#14072 = ORIENTED_EDGE ( 'NONE', *, *, #9608, .F. ) ; +#14073 = AXIS2_PLACEMENT_3D ( 'NONE', #6025, #4536, #16522 ) ; +#14074 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.8333333333333284900 ) ) ; +#14075 = FACE_OUTER_BOUND ( 'NONE', #4206, .T. ) ; +#14076 = VECTOR ( 'NONE', #18417, 39.37007874015748100 ) ; +#14077 = EDGE_LOOP ( 'NONE', ( #13286, #18064, #309, #13101 ) ) ; +#14078 = ORIENTED_EDGE ( 'NONE', *, *, #13510, .F. ) ; +#14079 = CC_DESIGN_APPROVAL ( #3830, ( #1862 ) ) ; +#14080 = FACE_OUTER_BOUND ( 'NONE', #11309, .T. ) ; +#14081 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.060763888888885700 ) ) ; +#14082 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14083 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -1.118055555555552900 ) ) ; +#14084 = CARTESIAN_POINT ( 'NONE', ( 0.1146115372620811200, 0.2225041327043129600, 1.525842493984606500 ) ) ; +#14085 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.4340277777777693000 ) ) ; +#14086 = ORIENTED_EDGE ( 'NONE', *, *, #14758, .T. ) ; +#14087 = ORIENTED_EDGE ( 'NONE', *, *, #14063, .F. ) ; +#14088 = ORIENTED_EDGE ( 'NONE', *, *, #10109, .F. ) ; +#14089 = VECTOR ( 'NONE', #4247, 39.37007874015748900 ) ; +#14090 = ORIENTED_EDGE ( 'NONE', *, *, #9704, .F. ) ; +#14091 = EDGE_CURVE ( 'NONE', #18973, #6141, #12409, .T. ) ; +#14092 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, 0.1822916666666799200 ) ) ; +#14093 = CARTESIAN_POINT ( 'NONE', ( 2.074017620600221800E-017, 0.2886751345948123700, 1.548179320649367700 ) ) ; +#14094 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#14095 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#14096 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.7291666666666606300 ) ) ; +#14097 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.543402777777778100 ) ) ; +#14098 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14099 = EDGE_LOOP ( 'NONE', ( #7851, #16674, #2772, #9447 ) ) ; +#14100 = CARTESIAN_POINT ( 'NONE', ( 0.3893757946457752600, -0.2609847755022707300, 1.592921120922338200 ) ) ; +#14101 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14102 = ORIENTED_EDGE ( 'NONE', *, *, #13402, .T. ) ; +#14103 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.05034722222221085100 ) ) ; +#14104 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14105 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.447916666666666100 ) ) ; +#14106 = AXIS2_PLACEMENT_3D ( 'NONE', #5480, #17406, #15843 ) ; +#14107 = DIRECTION ( 'NONE', ( -0.1873813145857214400, -0.9822872507286892800, 0.0000000000000000000 ) ) ; +#14108 = VERTEX_POINT ( 'NONE', #4324 ) ; +#14109 = CARTESIAN_POINT ( 'NONE', ( -0.1034502481550446100, -0.4492562999771352900, 1.590308733529502500 ) ) ; +#14110 = CIRCLE ( 'NONE', #7025, 0.4610132068742565100 ) ; +#14111 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.8854166666666621900 ) ) ; +#14112 = ORIENTED_EDGE ( 'NONE', *, *, #579, .T. ) ; +#14113 = ORIENTED_EDGE ( 'NONE', *, *, #5088, .T. ) ; +#14114 = PLANE ( 'NONE', #1348 ) ; +#14115 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.1770833333333229300 ) ) ; +#14116 = EDGE_CURVE ( 'NONE', #6011, #554, #8660, .T. ) ; +#14117 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.298611111111109800 ) ) ; +#14118 = ADVANCED_FACE ( 'NONE', ( #1286 ), #4273, .T. ) ; +#14119 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, 0.09375000000001233700 ) ) ; +#14120 = VERTEX_POINT ( 'NONE', #17595 ) ; +#14121 = ORIENTED_EDGE ( 'NONE', *, *, #19022, .T. ) ; +#14122 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.4965277777777698000 ) ) ; +#14123 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #1503, #8993, #549, #1703, #11813, #16302, #2996, #13287, #14769, #16382, #7440, #13886 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 4 ), + ( 2.380733176209245700E-007, 0.001851555320830855500, 0.003702872568344090400, 0.004628531192100708600, 0.005554189815857325400, 0.007405507063370560900 ), + .UNSPECIFIED. ) ; +#14124 = VECTOR ( 'NONE', #17812, 39.37007874015748900 ) ; +#14125 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#14126 = EDGE_LOOP ( 'NONE', ( #3861, #3094, #15898, #13631 ) ) ; +#14127 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14128 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.03819444444443322000 ) ) ; +#14129 = EDGE_CURVE ( 'NONE', #119, #5300, #13504, .T. ) ; +#14130 = VERTEX_POINT ( 'NONE', #5653 ) ; +#14131 = DIRECTION ( 'NONE', ( -0.3447650836343141800, 0.9386889991400901900, -0.0000000000000000000 ) ) ; +#14132 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14133 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.4687499999999922800 ) ) ; +#14134 = AXIS2_PLACEMENT_3D ( 'NONE', #7898, #1640, #155 ) ; +#14135 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.6145833333333268200 ) ) ; +#14136 = ADVANCED_FACE ( 'NONE', ( #4505 ), #14146, .T. ) ; +#14137 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.347222222222221200 ) ) ; +#14138 = ORIENTED_EDGE ( 'NONE', *, *, #12913, .T. ) ; +#14139 = ADVANCED_FACE ( 'NONE', ( #8199 ), #10241, .T. ) ; +#14140 = CARTESIAN_POINT ( 'NONE', ( -0.01152533017185643000, -0.4608691177296606000, 1.440511179676401600 ) ) ; +#14141 = ORIENTED_EDGE ( 'NONE', *, *, #9824, .T. ) ; +#14142 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.069444444444441300 ) ) ; +#14143 = VERTEX_POINT ( 'NONE', #8839 ) ; +#14144 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.4027777777777690200 ) ) ; +#14145 = EDGE_CURVE ( 'NONE', #8720, #3616, #6327, .T. ) ; +#14146 = CONICAL_SURFACE ( 'NONE', #3781, 0.4687475818742578000, 0.1745329251994273700 ) ; +#14147 = EDGE_CURVE ( 'NONE', #1015, #12666, #14826, .T. ) ; +#14148 = EDGE_CURVE ( 'NONE', #15306, #11969, #12977, .T. ) ; +#14149 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, 0.1406250000000129300 ) ) ; +#14150 = ORIENTED_EDGE ( 'NONE', *, *, #7358, .F. ) ; +#14151 = CARTESIAN_POINT ( 'NONE', ( 1.291488863795447300E-018, -3.412366898086807500E-017, 3.802149639073331100 ) ) ; +#14152 = LINE ( 'NONE', #11019, #6095 ) ; +#14153 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.6006944444444374300 ) ) ; +#14154 = ORIENTED_EDGE ( 'NONE', *, *, #1688, .F. ) ; +#14155 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.338541666666665400 ) ) ; +#14156 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#14157 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14158 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14159 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.02256944444443276200 ) ) ; +#14160 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#14161 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.479166666666666300 ) ) ; +#14162 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14163 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.01388888888890064600 ) ) ; +#14164 = CYLINDRICAL_SURFACE ( 'NONE', #6871, 0.3125000000000008300 ) ; +#14165 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.8541666666666616300 ) ) ; +#14166 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.8506944444444396500 ) ) ; +#14167 = EDGE_CURVE ( 'NONE', #10886, #4838, #1858, .T. ) ; +#14168 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.482638888888888600 ) ) ; +#14169 = LINE ( 'NONE', #18754, #3805 ) ; +#14170 = VERTEX_POINT ( 'NONE', #5719 ) ; +#14171 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, 0.1076388888889015400 ) ) ; +#14172 = EDGE_CURVE ( 'NONE', #15388, #3375, #2989, .T. ) ; +#14173 = VECTOR ( 'NONE', #10615, 39.37007874015748100 ) ; +#14174 = AXIS2_PLACEMENT_3D ( 'NONE', #15893, #7227, #1287 ) ; +#14175 = LINE ( 'NONE', #7502, #7980 ) ; +#14176 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.5694444444444369800 ) ) ; +#14177 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14178 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.1215277777777669500 ) ) ; +#14179 = CARTESIAN_POINT ( 'NONE', ( -0.1604275395511956800, 0.2462533860393048000, -1.539587888348249200 ) ) ; +#14180 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, 0.09375000000001235100 ) ) ; +#14181 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14182 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.3923611111111027200 ) ) ; +#14183 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.5381944444444372000 ) ) ; +#14184 = VECTOR ( 'NONE', #7828, 39.37007874015748100 ) ; +#14185 = ORIENTED_EDGE ( 'NONE', *, *, #17360, .F. ) ; +#14186 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.593375490995827300 ) ) ; +#14187 = CIRCLE ( 'NONE', #15657, 0.4610132068742565100 ) ; +#14188 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.9618055555555513600 ) ) ; +#14189 = EDGE_LOOP ( 'NONE', ( #9500, #4066, #9985, #385 ) ) ; +#14190 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.1979166666666566100 ) ) ; +#14191 = EDGE_CURVE ( 'NONE', #6607, #10872, #4535, .T. ) ; +#14192 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676386300 ) ) ; +#14193 = VECTOR ( 'NONE', #12670, 39.37007874015748100 ) ; +#14194 = PLANE ( 'NONE', #13302 ) ; +#14195 = AXIS2_PLACEMENT_3D ( 'NONE', #18987, #18851, #1215 ) ; +#14196 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.076388888888885700 ) ) ; +#14197 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.3819444444444355400 ) ) ; +#14198 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#14199 = ADVANCED_FACE ( 'NONE', ( #11981 ), #19013, .F. ) ; +#14200 = ORIENTED_EDGE ( 'NONE', *, *, #5081, .T. ) ; +#14201 = VECTOR ( 'NONE', #9244, 39.37007874015748100 ) ; +#14202 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.246527777777776100 ) ) ; +#14203 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #18339, #5308, #12599, #9635, #14013, #11186, #17039, #688, #10989 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6287878787878787800, 0.6325757575757575700, 0.6363636363636363500, 0.6401515151515151400, 0.6439393939393939200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#14204 = LINE ( 'NONE', #14941, #9618 ) ; +#14205 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, 0.1336805555555683500 ) ) ; +#14206 = LINE ( 'NONE', #18820, #9833 ) ; +#14207 = ORIENTED_EDGE ( 'NONE', *, *, #10054, .T. ) ; +#14208 = ORIENTED_EDGE ( 'NONE', *, *, #18312, .F. ) ; +#14209 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.493055555555555800 ) ) ; +#14210 = CIRCLE ( 'NONE', #2153, 0.4687475818742551400 ) ; +#14211 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.5763888888888816200 ) ) ; +#14212 = DIRECTION ( 'NONE', ( 0.06794052811688493200, -0.1598054262102593900, -0.9848077530122091300 ) ) ; +#14213 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.189236111111108700 ) ) ; +#14214 = CARTESIAN_POINT ( 'NONE', ( -0.3070850166377911400, 0.3438487595863240500, 1.593467001493433100 ) ) ; +#14215 = CARTESIAN_POINT ( 'NONE', ( -0.3144999999999991100, -3.585550491684345600E-016, 0.1963163490354230300 ) ) ; +#14216 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.6840277777777715700 ) ) ; +#14217 = ADVANCED_FACE ( 'NONE', ( #12385 ), #1626, .F. ) ; +#14218 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.09201388888887784800 ) ) ; +#14219 = EDGE_CURVE ( 'NONE', #10152, #4849, #11662, .T. ) ; +#14220 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.357638888888888000 ) ) ; +#14221 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323616000 ) ) ; +#14222 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#14223 = ORIENTED_EDGE ( 'NONE', *, *, #5828, .T. ) ; +#14224 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.9409722222222181000 ) ) ; +#14225 = FACE_OUTER_BOUND ( 'NONE', #1778, .T. ) ; +#14226 = LINE ( 'NONE', #679, #17680 ) ; +#14227 = EDGE_LOOP ( 'NONE', ( #4146, #10895, #12035, #17581, #11107, #10497 ) ) ; +#14228 = FACE_OUTER_BOUND ( 'NONE', #18970, .T. ) ; +#14229 = LINE ( 'NONE', #6080, #11464 ) ; +#14230 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14231 = ORIENTED_EDGE ( 'NONE', *, *, #8902, .F. ) ; +#14232 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#14233 = EDGE_LOOP ( 'NONE', ( #4979, #7383, #15327, #11352 ) ) ; +#14234 = ORIENTED_EDGE ( 'NONE', *, *, #18884, .T. ) ; +#14235 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.4062499999999911700 ) ) ; +#14236 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14237 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#14238 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.513888888888889300 ) ) ; +#14239 = CARTESIAN_POINT ( 'NONE', ( 0.2682775815920020500, 0.09378633363267144300, -1.549774660231633800 ) ) ; +#14240 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.003472222222210821900 ) ) ; +#14241 = ORIENTED_EDGE ( 'NONE', *, *, #4772, .T. ) ; +#14242 = ORIENTED_EDGE ( 'NONE', *, *, #14481, .F. ) ; +#14243 = LINE ( 'NONE', #16331, #9639 ) ; +#14244 = LINE ( 'NONE', #13301, #2492 ) ; +#14245 = CARTESIAN_POINT ( 'NONE', ( 0.1833993232404440800, -0.4313803237839100600, 1.143750000000000000 ) ) ; +#14246 = LINE ( 'NONE', #7009, #16790 ) ; +#14247 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.03472222222221067100 ) ) ; +#14248 = ORIENTED_EDGE ( 'NONE', *, *, #15045, .T. ) ; +#14249 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.4930555555555478600 ) ) ; +#14250 = FACE_OUTER_BOUND ( 'NONE', #86, .T. ) ; +#14251 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.6840277777777715700 ) ) ; +#14252 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.520833333333333700 ) ) ; +#14253 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.055555555555552000 ) ) ; +#14254 = EDGE_CURVE ( 'NONE', #12651, #15681, #8172, .T. ) ; +#14255 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.06249999999998902300 ) ) ; +#14256 = VERTEX_POINT ( 'NONE', #2908 ) ; +#14257 = EDGE_CURVE ( 'NONE', #6237, #982, #17770, .T. ) ; +#14258 = EDGE_LOOP ( 'NONE', ( #5197, #17297, #15973, #11052, #9906, #16122 ) ) ; +#14259 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.5138888888888812900 ) ) ; +#14260 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.340277777777776800 ) ) ; +#14261 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.3124999999999904500 ) ) ; +#14262 = AXIS2_PLACEMENT_3D ( 'NONE', #16339, #16407, #14731 ) ; +#14263 = DIRECTION ( 'NONE', ( -0.9430338398216144800, 0.3326968243781439100, 0.0000000000000000000 ) ) ; +#14264 = ORIENTED_EDGE ( 'NONE', *, *, #13930, .F. ) ; +#14265 = ORIENTED_EDGE ( 'NONE', *, *, #4878, .F. ) ; +#14266 = LINE ( 'NONE', #15998, #6438 ) ; +#14267 =( CONVERSION_BASED_UNIT ( 'INCH', #12088 ) LENGTH_UNIT ( ) NAMED_UNIT ( #11033 ) ); +#14268 = VECTOR ( 'NONE', #7345, 39.37007874015748100 ) ; +#14269 = EDGE_LOOP ( 'NONE', ( #12022, #5350, #6962, #11517 ) ) ; +#14270 = ORIENTED_EDGE ( 'NONE', *, *, #12684, .F. ) ; +#14271 = CONICAL_SURFACE ( 'NONE', #3660, 0.4687475818742548600, 0.1745329251994263100 ) ; +#14272 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.215277777777775900 ) ) ; +#14273 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, 0.03645833333334543700 ) ) ; +#14274 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.440972222222222100 ) ) ; +#14275 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.05902777777776645900 ) ) ; +#14276 = ORIENTED_EDGE ( 'NONE', *, *, #13510, .T. ) ; +#14277 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -1.232638888888886800 ) ) ; +#14278 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#14279 = EDGE_CURVE ( 'NONE', #9738, #17922, #16269, .T. ) ; +#14280 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.314236111111109600 ) ) ; +#14281 = ORIENTED_EDGE ( 'NONE', *, *, #12295, .T. ) ; +#14282 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.440972222222221700 ) ) ; +#14283 = CYLINDRICAL_SURFACE ( 'NONE', #1992, 0.3125000000000008300 ) ; +#14284 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14285 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#14286 = CIRCLE ( 'NONE', #5773, 0.4687499999999995000 ) ; +#14287 = EDGE_CURVE ( 'NONE', #17052, #18087, #2927, .T. ) ; +#14288 = ORIENTED_EDGE ( 'NONE', *, *, #4492, .T. ) ; +#14289 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.1718749999999895400 ) ) ; +#14290 = EDGE_LOOP ( 'NONE', ( #10379, #16029, #9934, #15393, #3514, #6436 ) ) ; +#14291 = CARTESIAN_POINT ( 'NONE', ( -0.2849188901020669500, -0.3722200808164516900, 1.484375000000000200 ) ) ; +#14292 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.506944444444444400 ) ) ; +#14293 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#14294 = FACE_OUTER_BOUND ( 'NONE', #16869, .T. ) ; +#14295 = EDGE_CURVE ( 'NONE', #979, #18752, #12564, .T. ) ; +#14296 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.6041666666666599700 ) ) ; +#14297 = AXIS2_PLACEMENT_3D ( 'NONE', #2472, #15788, #6995 ) ; +#14298 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, 1.531249999999999800 ) ) ; +#14299 = VERTEX_POINT ( 'NONE', #6059 ) ; +#14300 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#14301 = ORIENTED_EDGE ( 'NONE', *, *, #12910, .F. ) ; +#14302 = ADVANCED_FACE ( 'NONE', ( #16903 ), #16290, .T. ) ; +#14303 = VERTEX_POINT ( 'NONE', #11919 ) ; +#14304 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.1388888888888781500 ) ) ; +#14305 = CONICAL_SURFACE ( 'NONE', #2691, 0.4687475818742580200, 0.1745329251994276200 ) ; +#14306 = ORIENTED_EDGE ( 'NONE', *, *, #3319, .T. ) ; +#14307 = ORIENTED_EDGE ( 'NONE', *, *, #9773, .F. ) ; +#14308 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.4409722222222137700 ) ) ; +#14309 = DIRECTION ( 'NONE', ( -0.8763066800438699100, 0.4817536741017036700, 0.0000000000000000000 ) ) ; +#14310 = EDGE_CURVE ( 'NONE', #1398, #2895, #6620, .T. ) ; +#14311 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.243055555555553600 ) ) ; +#14312 = DIRECTION ( 'NONE', ( 0.1637561077632677400, -0.05777219726883696400, 0.9848077530122088000 ) ) ; +#14313 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, 0.1423611111111236500 ) ) ; +#14314 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.8402777777777727900 ) ) ; +#14315 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#14316 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.02083333333332175500 ) ) ; +#14317 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.2812499999999906200 ) ) ; +#14318 = VERTEX_POINT ( 'NONE', #9103 ) ; +#14319 = AXIS2_PLACEMENT_3D ( 'NONE', #1405, #5809, #10284 ) ; +#14320 = VERTEX_POINT ( 'NONE', #5909 ) ; +#14321 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.5798611111111042800 ) ) ; +#14322 = ADVANCED_FACE ( 'NONE', ( #17752 ), #2327, .T. ) ; +#14323 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323600600 ) ) ; +#14324 = ORIENTED_EDGE ( 'NONE', *, *, #1228, .F. ) ; +#14325 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.097222222222219000 ) ) ; +#14326 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.05902777777776673600 ) ) ; +#14327 = EDGE_LOOP ( 'NONE', ( #3006, #11659, #1125, #13782 ) ) ; +#14328 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.589564174286821800 ) ) ; +#14329 = DIRECTION ( 'NONE', ( -0.7862080194966656300, 0.6179619325485434800, 0.0000000000000000000 ) ) ; +#14330 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.2777777777777680200 ) ) ; +#14331 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.06944444444443306800 ) ) ; +#14332 = ORIENTED_EDGE ( 'NONE', *, *, #9829, .F. ) ; +#14333 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.281249999999998900 ) ) ; +#14334 = EDGE_CURVE ( 'NONE', #4094, #3666, #2540, .T. ) ; +#14335 = VERTEX_POINT ( 'NONE', #7686 ) ; +#14336 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.420138888888888800 ) ) ; +#14337 = LINE ( 'NONE', #1767, #18280 ) ; +#14338 = ORIENTED_EDGE ( 'NONE', *, *, #16873, .F. ) ; +#14339 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #3711, #12594, #6723, #18524, #9701, #12663, #17162, #3829, #14137 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1287878787878787800, 0.1325757575757575700, 0.1363636363636363500, 0.1401515151515151400, 0.1439393939393939500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#14340 = CARTESIAN_POINT ( 'NONE', ( 0.4492896982220422300, 0.1336612493265935100, 1.590985962198545400 ) ) ; +#14341 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14342 = ORIENTED_EDGE ( 'NONE', *, *, #1826, .T. ) ; +#14343 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.213541666666664300 ) ) ; +#14344 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.319444444444442900 ) ) ; +#14345 = DIRECTION ( 'NONE', ( -0.8938997675281718000, -0.4482668910516151000, 0.0000000000000000000 ) ) ; +#14346 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14347 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, 0.1614583333333464200 ) ) ; +#14348 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#14349 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.163194444444441800 ) ) ; +#14350 = AXIS2_PLACEMENT_3D ( 'NONE', #14323, #15780, #1130 ) ; +#14351 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#14352 = ORIENTED_EDGE ( 'NONE', *, *, #8467, .F. ) ; +#14353 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.6111111111111043900 ) ) ; +#14354 = VECTOR ( 'NONE', #17614, 39.37007874015748100 ) ; +#14355 = EDGE_LOOP ( 'NONE', ( #14483, #17519, #18954, #15044 ) ) ; +#14356 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, 0.02430555555556753600 ) ) ; +#14357 = ORIENTED_EDGE ( 'NONE', *, *, #8001, .T. ) ; +#14358 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#14359 = FACE_OUTER_BOUND ( 'NONE', #2746, .T. ) ; +#14360 = DIRECTION ( 'NONE', ( 1.000000000000000000, -8.881784197001252300E-016, 0.0000000000000000000 ) ) ; +#14361 = EDGE_LOOP ( 'NONE', ( #9294, #1869, #6675, #5559 ) ) ; +#14362 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.5052083333333256000 ) ) ; +#14363 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.2812499999999903400 ) ) ; +#14364 = VERTEX_POINT ( 'NONE', #208 ) ; +#14365 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#14366 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#14367 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.2187500000000133200 ) ) ; +#14368 = EDGE_CURVE ( 'NONE', #8999, #8091, #7392, .T. ) ; +#14369 = APPROVAL_DATE_TIME ( #18065, #3830 ) ; +#14370 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#14371 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.2534722222222127700 ) ) ; +#14372 = ORIENTED_EDGE ( 'NONE', *, *, #15628, .T. ) ; +#14373 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.3437499999999911200 ) ) ; +#14374 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.3888888888888802900 ) ) ; +#14375 = VECTOR ( 'NONE', #11152, 39.37007874015748100 ) ; +#14376 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.9201388888888841800 ) ) ; +#14377 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.1111111111111003400 ) ) ; +#14378 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14379 = CARTESIAN_POINT ( 'NONE', ( 0.2774592250985646900, -0.07307248514255286500, 0.1100882089441389100 ) ) ; +#14380 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#14381 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.3020833333333238800 ) ) ; +#14382 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14383 = FACE_OUTER_BOUND ( 'NONE', #8160, .T. ) ; +#14384 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.137152777777775000 ) ) ; +#14385 = EDGE_CURVE ( 'NONE', #16576, #2137, #1138, .T. ) ; +#14386 = ADVANCED_FACE ( 'NONE', ( #13378 ), #13623, .T. ) ; +#14387 = VECTOR ( 'NONE', #7633, 39.37007874015748900 ) ; +#14388 = EDGE_CURVE ( 'NONE', #18299, #14614, #11762, .T. ) ; +#14389 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#14390 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.236111111111109200 ) ) ; +#14392 = EDGE_CURVE ( 'NONE', #8893, #14411, #15671, .T. ) ; +#14391 = CIRCLE ( 'NONE', #4994, 0.4610132068742565100 ) ; +#14393 = AXIS2_PLACEMENT_3D ( 'NONE', #10945, #3667, #6622 ) ; +#14394 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.385416666666665900 ) ) ; +#14395 = AXIS2_PLACEMENT_3D ( 'NONE', #17734, #2918, #14695 ) ; +#14396 = CARTESIAN_POINT ( 'NONE', ( -1.355798241306626200E-016, -1.037806797709850500E-016, 3.802149639073273400 ) ) ; +#14397 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.9826388888888849500 ) ) ; +#14398 = AXIS2_PLACEMENT_3D ( 'NONE', #15606, #5420, #6936 ) ; +#14399 = DIRECTION ( 'NONE', ( -0.9772957051199558900, 0.2118799300407856500, 0.0000000000000000000 ) ) ; +#14400 = DIRECTION ( 'NONE', ( 1.000000000000000000, 1.953992523340275500E-014, 0.0000000000000000000 ) ) ; +#14401 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.279513888888887300 ) ) ; +#14402 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.288194444444442900 ) ) ; +#14403 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.5694444444444373100 ) ) ; +#14404 = CYLINDRICAL_SURFACE ( 'NONE', #3803, 0.4610132068742565100 ) ; +#14405 = ORIENTED_EDGE ( 'NONE', *, *, #14787, .T. ) ; +#14406 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, 0.08506944444445700700 ) ) ; +#14407 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.114583333333330400 ) ) ; +#14408 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.263888888888887100 ) ) ; +#14409 = CARTESIAN_POINT ( 'NONE', ( 0.2285938997143202600, -0.1973035956193512900, 0.1526285803782800000 ) ) ; +#14410 = FACE_BOUND ( 'NONE', #2455, .T. ) ; +#14411 = VERTEX_POINT ( 'NONE', #4892 ) ; +#14412 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.5729166666666598600 ) ) ; +#14413 = LINE ( 'NONE', #3565, #15099 ) ; +#14414 = EDGE_CURVE ( 'NONE', #11076, #7672, #694, .T. ) ; +#14415 = DIRECTION ( 'NONE', ( 0.3090169943749382900, 0.9510565162951565300, 0.0000000000000000000 ) ) ; +#14416 = DIRECTION ( 'NONE', ( -0.1365235898527215600, -0.1073079634545914000, 0.9848077530122080200 ) ) ; +#14417 = AXIS2_PLACEMENT_3D ( 'NONE', #3855, #14346, #2500 ) ; +#14418 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#14419 = AXIS2_PLACEMENT_3D ( 'NONE', #7840, #3330, #7968 ) ; +#14420 = VECTOR ( 'NONE', #16258, 39.37007874015748100 ) ; +#14421 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.4739583333333253800 ) ) ; +#14422 = LINE ( 'NONE', #3602, #6594 ) ; +#14423 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.1979166666666563600 ) ) ; +#14424 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.2569444444444345400 ) ) ; +#14425 = ADVANCED_FACE ( 'NONE', ( #7856 ), #15204, .F. ) ; +#14426 = ORIENTED_EDGE ( 'NONE', *, *, #15517, .T. ) ; +#14427 = DIRECTION ( 'NONE', ( -0.9866647708492405400, 0.1627655675043581400, 0.0000000000000000000 ) ) ; +#14428 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.593467001493433100 ) ) ; +#14429 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14430 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, 0.2013888888889021300 ) ) ; +#14431 = LINE ( 'NONE', #10702, #10304 ) ; +#14432 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, 0.02430555555556755300 ) ) ; +#14433 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#14434 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.2951388888888797900 ) ) ; +#14435 = CARTESIAN_POINT ( 'NONE', ( -0.1051863658125202500, 0.4567957869192252300, 1.143750000000000000 ) ) ; +#14436 = ORIENTED_EDGE ( 'NONE', *, *, #362, .T. ) ; +#14437 = CYLINDRICAL_SURFACE ( 'NONE', #11447, 0.4610132068742565100 ) ; +#14438 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.048611111111107400 ) ) ; +#14439 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.01736111111109973200 ) ) ; +#14440 = EDGE_CURVE ( 'NONE', #6116, #12597, #13846, .T. ) ; +#14441 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #16427, #3167, #6184, #15956, #13535, #10572, #12054, #4703, #17390 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5227272727272727100, 0.5265151515151516000, 0.5303030303030302800, 0.5340909090909091700, 0.5378787878787878500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#14442 = LINE ( 'NONE', #16088, #10766 ) ; +#14443 = LINE ( 'NONE', #2794, #5447 ) ; +#14444 = AXIS2_PLACEMENT_3D ( 'NONE', #7801, #10829, #15196 ) ; +#14445 = FACE_OUTER_BOUND ( 'NONE', #1295, .T. ) ; +#14446 = CARTESIAN_POINT ( 'NONE', ( 0.3535935602980365100, 0.3077269725401409200, 1.143750000000000000 ) ) ; +#14447 = ORIENTED_EDGE ( 'NONE', *, *, #3068, .F. ) ; +#14448 = CARTESIAN_POINT ( 'NONE', ( 0.4120995984523190800, -0.2066569569792496000, 1.440511179676385900 ) ) ; +#14449 = FACE_OUTER_BOUND ( 'NONE', #15162, .T. ) ; +#14450 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#14451 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.8697916666666620800 ) ) ; +#14452 = CARTESIAN_POINT ( 'NONE', ( -0.3685350091390578500, -0.2896696558821343900, 1.593375490995827300 ) ) ; +#14453 = ORIENTED_EDGE ( 'NONE', *, *, #16832, .F. ) ; +#14454 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.277777777777776600 ) ) ; +#14455 = AXIS2_PLACEMENT_3D ( 'NONE', #12972, #19018, #1310 ) ; +#14456 = EDGE_LOOP ( 'NONE', ( #16673, #10671, #17722, #5042 ) ) ; +#14457 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.416666666666666300 ) ) ; +#14458 = VERTEX_POINT ( 'NONE', #3420 ) ; +#14459 = CONICAL_SURFACE ( 'NONE', #19092, 0.4610132068742565100, 0.1745329251994297800 ) ; +#14460 = CARTESIAN_POINT ( 'NONE', ( 0.4624967254560964400, 0.07629596618006510800, 1.143750000000000000 ) ) ; +#14461 = FACE_BOUND ( 'NONE', #10041, .T. ) ; +#14462 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.4374999999999917300 ) ) ; +#14463 = VECTOR ( 'NONE', #6217, 39.37007874015748900 ) ; +#14464 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.2430555555555456400 ) ) ; +#14465 = EDGE_LOOP ( 'NONE', ( #4016, #2879, #11534, #2659 ) ) ; +#14466 = CARTESIAN_POINT ( 'NONE', ( -0.06919666627598536300, -0.4557905201830946300, 1.588758826628429600 ) ) ; +#14467 = LINE ( 'NONE', #442, #13338 ) ; +#14468 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.092013888888885700 ) ) ; +#14469 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.361111111111110100 ) ) ; +#14470 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#14471 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, 0.1892361111111245400 ) ) ; +#14472 = DIRECTION ( 'NONE', ( 0.1365235898527179200, 0.1073079634545885400, 0.9848077530122088000 ) ) ; +#14473 = EDGE_CURVE ( 'NONE', #5413, #12040, #13145, .T. ) ; +#14474 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.104166666666663400 ) ) ; +#14475 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14476 = CARTESIAN_POINT ( 'NONE', ( -0.03577100042538627200, -0.2972403593973114700, 0.1455288781057732200 ) ) ; +#14477 = ORIENTED_EDGE ( 'NONE', *, *, #3787, .T. ) ; +#14478 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.7395833333333278200 ) ) ; +#14479 = VERTEX_POINT ( 'NONE', #6316 ) ; +#14480 = DIRECTION ( 'NONE', ( 0.4596954355469803900, -0.8880766332571035100, -0.0000000000000000000 ) ) ; +#14481 = EDGE_CURVE ( 'NONE', #7833, #18908, #1402, .T. ) ; +#14482 = ORIENTED_EDGE ( 'NONE', *, *, #4909, .F. ) ; +#14483 = ORIENTED_EDGE ( 'NONE', *, *, #9113, .F. ) ; +#14484 = VECTOR ( 'NONE', #7017, 39.37007874015748100 ) ; +#14485 = FACE_OUTER_BOUND ( 'NONE', #19099, .T. ) ; +#14486 = ORIENTED_EDGE ( 'NONE', *, *, #8129, .F. ) ; +#14487 = EDGE_LOOP ( 'NONE', ( #217, #8748, #13685, #15493 ) ) ; +#14488 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14489 = AXIS2_PLACEMENT_3D ( 'NONE', #4969, #10330, #6402 ) ; +#14490 = CIRCLE ( 'NONE', #18233, 0.4687475818742551400 ) ; +#14491 = CARTESIAN_POINT ( 'NONE', ( -0.3122385636735684500, -0.3496192812976242600, 1.143750000000000000 ) ) ; +#14492 = ADVANCED_FACE ( 'NONE', ( #7177 ), #5747, .T. ) ; +#14493 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14494 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323614800 ) ) ; +#14495 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.5746527777777705700 ) ) ; +#14496 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.1527777777777670500 ) ) ; +#14497 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.1458333333333224600 ) ) ; +#14498 = PLANE ( 'NONE', #3590 ) ; +#14499 = CARTESIAN_POINT ( 'NONE', ( -0.4190155160288315300, -0.2101251051804416400, 1.592116737595687900 ) ) ; +#14500 = CARTESIAN_POINT ( 'NONE', ( 0.4219140922835683000, 0.1858000959230613500, 1.187613820323599700 ) ) ; +#14501 = CARTESIAN_POINT ( 'NONE', ( 0.4420448320419765900, -0.1559508319244957700, 1.143750000000000000 ) ) ; +#14502 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.531250000000000400 ) ) ; +#14503 = VERTEX_POINT ( 'NONE', #587 ) ; +#14504 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#14505 = DIRECTION ( 'NONE', ( 0.5567675210715171700, 0.8306683619109841400, 0.0000000000000000000 ) ) ; +#14506 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.489583333333333700 ) ) ; +#14507 = ORIENTED_EDGE ( 'NONE', *, *, #15372, .T. ) ; +#14508 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.4583333333333254900 ) ) ; +#14509 = LINE ( 'NONE', #7912, #2512 ) ; +#14510 = LINE ( 'NONE', #13116, #10376 ) ; +#14511 = EDGE_LOOP ( 'NONE', ( #8773, #13354, #6870, #17586 ) ) ; +#14512 = ORIENTED_EDGE ( 'NONE', *, *, #7038, .T. ) ; +#14513 = PLANE ( 'NONE', #14106 ) ; +#14514 = CIRCLE ( 'NONE', #7363, 0.4687499999999995600 ) ; +#14515 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.8159722222222165500 ) ) ; +#14516 = EDGE_CURVE ( 'NONE', #17877, #10621, #7985, .T. ) ; +#14517 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.02430555555556727200 ) ) ; +#14518 = EDGE_CURVE ( 'NONE', #16602, #8786, #3934, .T. ) ; +#14519 = AXIS2_PLACEMENT_3D ( 'NONE', #15446, #9662, #779 ) ; +#14520 = PLANE ( 'NONE', #19063 ) ; +#14521 = AXIS2_PLACEMENT_3D ( 'NONE', #15568, #9733, #15697 ) ; +#14522 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14523 = ORIENTED_EDGE ( 'NONE', *, *, #12701, .F. ) ; +#14524 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14525 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.8281249999999947800 ) ) ; +#14526 = DIRECTION ( 'NONE', ( -0.08772156263577582400, 0.9961450333403955000, 0.0000000000000000000 ) ) ; +#14527 = ORIENTED_EDGE ( 'NONE', *, *, #1766, .F. ) ; +#14528 = ORIENTED_EDGE ( 'NONE', *, *, #3714, .T. ) ; +#14529 = LINE ( 'NONE', #15555, #2322 ) ; +#14530 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.034722222222218500 ) ) ; +#14531 = ORIENTED_EDGE ( 'NONE', *, *, #2091, .T. ) ; +#14532 = ORIENTED_EDGE ( 'NONE', *, *, #18100, .T. ) ; +#14533 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.138888888888886400 ) ) ; +#14534 = LINE ( 'NONE', #16115, #10626 ) ; +#14535 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.496527777777777900 ) ) ; +#14536 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#14537 = DIRECTION ( 'NONE', ( -0.01745011258364688800, -0.1727691615360306700, -0.9848077530122083500 ) ) ; +#14538 = CARTESIAN_POINT ( 'NONE', ( -0.4684122207840626900, -0.01772813958391650900, 1.484375000000000200 ) ) ; +#14539 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.2569444444444348200 ) ) ; +#14540 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, -0.1443375672974061000, -1.562539370078740200 ) ) ; +#14541 = EDGE_CURVE ( 'NONE', #5376, #8022, #16125, .T. ) ; +#14542 = VERTEX_POINT ( 'NONE', #9417 ) ; +#14543 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.029513888888885300 ) ) ; +#14544 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.427083333333332800 ) ) ; +#14545 = VERTEX_POINT ( 'NONE', #17080 ) ; +#14546 = CARTESIAN_POINT ( 'NONE', ( 0.1833993232404338400, 0.4313803237839115600, 1.143750000000000000 ) ) ; +#14547 = AXIS2_PLACEMENT_3D ( 'NONE', #12457, #13939, #16835 ) ; +#14548 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, 0.1822916666666799200 ) ) ; +#14549 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.149305555555552500 ) ) ; +#14550 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#14551 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#14552 = ORIENTED_EDGE ( 'NONE', *, *, #8193, .T. ) ; +#14553 = EDGE_CURVE ( 'NONE', #14303, #860, #9921, .T. ) ; +#14554 = LINE ( 'NONE', #1357, #18241 ) ; +#14555 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #13628, #3450, #10724, #4913, #4721, #7706 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 0.006387160294628515400, 0.008240800154610292800, 0.01009444001459206900 ), + .UNSPECIFIED. ) ; +#14556 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.7048611111111051700 ) ) ; +#14557 = ORIENTED_EDGE ( 'NONE', *, *, #16896, .T. ) ; +#14558 = AXIS2_PLACEMENT_3D ( 'NONE', #11475, #10129, #18950 ) ; +#14559 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.430555555555555400 ) ) ; +#14560 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14561 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#14562 = ORIENTED_EDGE ( 'NONE', *, *, #14899, .F. ) ; +#14563 = ORIENTED_EDGE ( 'NONE', *, *, #8097, .T. ) ; +#14564 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.5121527777777701300 ) ) ; +#14565 = ORIENTED_EDGE ( 'NONE', *, *, #12069, .F. ) ; +#14566 = CARTESIAN_POINT ( 'NONE', ( -0.1056269922354181300, 0.2764156081756474200, 0.07959217365568489700 ) ) ; +#14567 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.2673611111111011700 ) ) ; +#14568 = DIRECTION ( 'NONE', ( -0.7862080194966611900, 0.6179619325485490300, 0.0000000000000000000 ) ) ; +#14569 = LINE ( 'NONE', #12723, #7206 ) ; +#14570 = DIRECTION ( 'NONE', ( 0.3912539079287133400, 0.9202827715058615700, -0.0000000000000000000 ) ) ; +#14571 = ORIENTED_EDGE ( 'NONE', *, *, #12170, .T. ) ; +#14572 = EDGE_CURVE ( 'NONE', #11495, #303, #9243, .T. ) ; +#14573 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#14574 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.499999999999999800 ) ) ; +#14575 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.232638888888886800 ) ) ; +#14576 = AXIS2_PLACEMENT_3D ( 'NONE', #7590, #17955, #1727 ) ; +#14577 = ORIENTED_EDGE ( 'NONE', *, *, #12264, .T. ) ; +#14578 = CARTESIAN_POINT ( 'NONE', ( -0.4289925051334539900, -0.1889172465718392800, 1.143750000000000000 ) ) ; +#14579 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.3090277777777686900 ) ) ; +#14580 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.3923611111111026100 ) ) ; +#14581 = ORIENTED_EDGE ( 'NONE', *, *, #6382, .T. ) ; +#14582 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.8715277777777727900 ) ) ; +#14583 = EDGE_LOOP ( 'NONE', ( #1633, #3941, #17826, #3347, #3229, #6707 ) ) ; +#14584 = ORIENTED_EDGE ( 'NONE', *, *, #5467, .T. ) ; +#14585 =( BOUNDED_SURFACE ( ) B_SPLINE_SURFACE ( 1, 2, ( + ( #7184, #2854, #10260, #2984, #11860, #14755, #13153, #8713, #13278, #2910, #4263, #16224, #4454, #5721, #7431, #16035, #17597, #1442, #19014, #5844, #11735, #18956, #1377, #10320, #10134, #13220, #1308, #14506, #8909, #85, #8841, #11612, #10389, #3052, #7362, #10202, #1553, #17539, #4208, #11666, #5790, #16097, #14685, #6062, #12184, #1884, #4581, #14880, #10577, #10512, #284, #17916, #18054, #146, #7491, #13612, #406, #15078, #10445, #1815, #4768, #7623, #6123, #16434, #9048, #1753, #6263, #16560, #11923, #16366, #7547, #7742, #9232, #14951, #13419, #10707, #17855, #16495, #13544, #12059, #16291, #210, #13352, #15017, #12120, #17795, #3242, #3305, #4506, #14824, #4708, #5992, #1628, #1692, #11993, #8980, #3109, #3175, #13484, #4644, #9105, #9161, #6188, #7688, #17985, #346, #10649, #3491, #13793, #16629, #6516, #9291, #10772, #7813, #13728, #15323, #13671, #13871, #10839, #2011, #656, #1946, #18177, #9554, #472, #15386, #6569, #9494, #6318, #12315, #7943, #10960, #11023, #13926, #4953, #7883, #2147, #2082, #12258, #5085, #12444, #3423, #3610, #4894, #6452, #18253, #9348, #5015, #9420, #4833, #532, #18318, #15206, #12365, #15139, #18116, #16891, #18369, #16822, #6378, #8067, #2206, #7995, #15263, #731, #16692, #3359, #16751, #590, #10904, #3550, #5205, #11344, #1040, #3746, #14053, #9737, #9671, #18555, #17081, #17192, #18432, #6631, #12756, #18682, #14224, #9606, #981, #3935, #6763, #5273, #15572, #8188, #917, #5388, #15700, #11101, #15513, #6702, #6894, #8374, #14111, #12566, #9849, #17006, #15636, #12704, #11217, #15456, #18497, #12512, #14166, #11281, #16947, #2387, #2445, #3679, #13983, #3863, #5147, #788, #849, #11159, #8133, #2260, #2328, #12632, #3802, #8247, #8315, #5339, #6825, #17137, #18613, #9792, #2639, #12949, #15758, #5638, #8430, #9922, #6964, #12876, #14478, #12812, #13007, #9986, #1170, #18935, #1097, #17320, #8691, #18737, #14556, #5694, #8634, #5445, #11457, #7083, #10107, #10181, #13064, #4119, #7026, #1285, #1225, #11402, #4244, #11588, #2577, #2766, #4056, #5580, #17383, #8496, #4183, #8568, #3998, #18795, #17442, #14353, #11526, #14296, #17253, #16012, #17516, #15948, #5521, #7223, #1350, #7159, #14412, #18998, #15814, #2506, #15892, #18865, #10042, #2693, #4374, #10491, #187, #2886, #13198, #8887, #8821, #17697, #16203, #16341, #17577, #5769, #11897, #17833, #13397, #8763, #125, #3088, #5886, #4436, #14733, #7335, #64, #4555, #14856, #10245, #14660, #5825, #6038, #7525, #13254, #11707, #9025, #16143, #14799, #11842, #10368, #14610, #17635, #11648, #13325, #10426, #16074, #1529, #1608, #2832, #13131, #3027, #4306, #19052, #1, #10298, #7278, #1421, #1476, #11781, #2961, #7409, #7470, #4490, #5966, #16267, #17771, #8953, #322, #10623, #4623, #12155, #16410, #9082, #14927, #1731, #3340, #1669, #1859, #9140, #1788, #16606, #260, #16471, #6351, #17893, #12233, #3393, #7785, #6100, #12096, #15058, #18091, #7853, #10744, #3282, #6164, #9269, #9203, #10551, #1920, #444, #12036, #13706, #3220, #13588, #6235, #7663, #13646, #16533, #13460, #17961, #15113, #13519, #383, #3149, #7599, #4872, #15177, #4812, #4686, #16670, #11973, #14991, #4740, #7719, #10683, #18034, #6299, #5162, #15471, #14066, #12586, #18693, #8388, #11116, #2275, #17094, #17022, #6781, #5295, #5402, #6650, #14002, #1000, #6916, #2460, #16962, #8332, #11298, #14128, #12650, #3819, #15529, #8270, #12769, #3953, #18448, #3759, #5223, #14240, #15714, #2346, #802, #17205, #6716, #3881, #934, #18570, #3699, #8203, #749, #2403, #18629, #8149, #9752, #9803, #11046, #2219, #11237, #12527, #9626, #18516, #9689, #863, #11174, #15589, #12721, #14180, #5353, #15655, #6843, #17155, #17334, #8444, #12895, #10005, #1185, #4011, #13021, #15772, #17273, #14313, #1115, #2713, #1051, #1244, #8517, #18809, #7182, #18755, #5539, #16032, #6981, #2785, #13083, #15967, #12830, #11476, #14430, #17462, #17536, #1304, #2651, #14367, #8649 ), + ( #5598, #4070, #15833, #11417, #8586, #5651, #9940, #7040, #12967, #5466, #2596, #4135, #7238, #15910, #18951, #7103, #17401, #14502, #18887, #8706, #10059, #11546, #4205, #10130, #11609, #4260, #14574, #5715, #9869, #11360, #2526, #14875, #1548, #11856, #19072, #17652, #14819, #2906, #7428, #2980, #13272, #1372, #24, #10442, #3047, #11661, #11731, #13416, #2850, #16286, #4451, #1625, #6058, #13151, #17792, #19012, #14754, #4504, #10387, #4322, #13217, #5907, #14622, #4395, #11915, #14680, #1437, #7356, #5986, #7489, #16363, #16220, #8974, #16093, #5787, #7543, #3106, #17717, #8905, #142, #80, #5841, #4577, #13347, #17850, #16163, #10198, #8837, #7293, #17591, #8781, #10315, #10258, #1493, #11798, #1881, #3357, #6372, #7876, #4762, #12256, #205, #4829, #16429, #10573, #6257, #281, #9227, #15203, #12177, #9102, #16688, #10508, #17912, #9156, #401, #9046, #1687, #6314, #15132, #11991, #7808, #3169, #10704, #13666, #3418, #16626, #13480, #15075, #3239, #12056, #1749, #7738, #18110, #13536, #4705, #15014, #4639, #7619, #6186, #14947, #13610, #9288, #6121, #16490, #470, #7684, #17983, #10765, #1940, #342, #10646, #1811, #12116, #13725, #3299, #4889, #16557, #18049, #14049, #728, #11020, #18250, #16820, #13980, #2078, #6566, #2143, #12438, #527, #18314, #9601, #2201, #10835, #10900, #12563, #2006, #15455, #3604, #786, #5202, #12310, #16943, #18174, #13923, #3677, #9551, #3489, #12360, #5084, #13787, #3544, #11098, #13867, #583, #6508, #5141, #6629, #15510, #15380, #8127, #15260, #4948, #6698, #2256, #16887, #8064, #18430, #18364, #5011, #3742, #12507, #17001, #15319, #9344, #7993, #6451, #16744, #7940, #9489, #9415, #653, #10956, #696, #8662, #14815, #8661, #3757, #11096, #13880, #16901, #4906, #8142, #12326, #2157, #18443, #13941, #2021, #9619, #3442, #10855, #2100, #12458, #797, #13741, #18377, #8079, #1958, #745, #15221, #3619, #5095, #15467, #15399, #6395, #16836, #15277, #4964, #3503, #669, #9561, #13809, #6463, #7953, #16702, #543, #16760, #12270, #6523, #11041, #7893, #18269, #6582, #9437, #18194, #2216, #12521, #12377, #9364, #602, #10914, #3695, #3559, #13994, #5035, #5156, #16958, #6646, #15333, #8008, #18326, #9504, #10976, #18624, #14176, #5347, #12580, #11230, #2521, #12763, #3754, #3813, #5460, #14061, #8382, #15650, #12824, #17268, #5215, #9866, #11111, #6835, #15708, #2452, #15526, #14122, #17150, #6712, #5291, #4007, #15581, #12645, #18567, #6911, #17198, #8439, #8326, #1047, #8200, #17019, #18750, #14308, #9798, #993, #18689, #11295, #6774, #11353, #3948, #15769, #17092, #14235, #9744, #5396, #6975, #9935, #8265, #2273, #18510, #9684, #857, #11169, #2343, #929, #2397, #12716, #3877, #13016, #16027, #4064, #7287, #11472, #1299, #17585, #13080, #1181, #8778, #2590, #9999, #1239, #11603, #19066, #12891, #17532, #7233, #1111, #19008, #14363, #2780, #4255, #14618, #14567, #5534, #15960, #14424, #4133, #2647, #18946, #8702, #12961, #5593, #7099, #15828, #18805, #15904, #11412, #5647, #10191, #7035, #17397, #5709, #8580, #17328, #1367, #11656, #11542, #8512, #18882, #10052, #2845, #2709, #13147, #4199, #4318, #16089, #5780, #14497, #7179, #17457, #8643, #10126, #17785, #13342, #4498, #11725, #10382, #1679, #11908, #2900, #2975, #4632, #13210, #7535, #14811, #11986, #16421, #4388, #9039, #10254, #5978, #14867, #1621, #14676, #13264, #16283, #5837, #4446, #3162, #14749, #11792, #17713, #6052, #16357, #7611, #7483, #201, #7352, #16155, #17905, #13474, #8967, #136, #17843, #10438, #5901, #10501, #3101, #14942, #16214, #13410, #8898, #4570, #6113, #9096, #7422, #1431, #17647, #8833, #18, #10309, #1489, #76, #1543, #11850, #3039, #12168, #15195, #3232, #6445, #10638, #463, #16735, #12248, #334, #7933, #1743, #9150, #395, #10756, #18240, #12050, #16679, #6365, #272, #18165, #13529, #1931, #3412, #13779, #13717, #4698, #15124, #13603, #3291, #1804, #18103, #7866, #12107, #4752, #6247, #15006 ) ), + .UNSPECIFIED., .F., .F., .F. ) + B_SPLINE_SURFACE_WITH_KNOTS ( ( 2, 2 ), + ( 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3 ), + ( 0.0000000000000000000, 1.000000000000000000 ), + ( 0.0000000000000000000, 0.003787878787878788000, 0.007575757575757576000, 0.01136363636363636400, 0.01515151515151515200, 0.01893939393939394000, 0.02272727272727272800, 0.02651515151515151600, 0.03030303030303030400, 0.03409090909090908800, 0.03787878787878788000, 0.04166666666666666400, 0.04545454545454545600, 0.04924242424242424000, 0.05303030303030303200, 0.05681818181818181600, 0.06060606060606060800, 0.06439393939393939200, 0.06818181818181817700, 0.07196969696969697500, 0.07575757575757576000, 0.07954545454545454400, 0.08333333333333332900, 0.08712121212121212700, 0.09090909090909091200, 0.09469696969696969600, 0.09848484848484848100, 0.1022727272727272800, 0.1060606060606060600, 0.1098484848484848500, 0.1136363636363636300, 0.1174242424242424300, 0.1212121212121212200, 0.1250000000000000000, 0.1287878787878787800, 0.1325757575757575700, 0.1363636363636363500, 0.1401515151515151400, 0.1439393939393939500, 0.1477272727272727300, 0.1515151515151515200, 0.1553030303030303000, 0.1590909090909090900, 0.1628787878787878700, 0.1666666666666666600, 0.1704545454545454400, 0.1742424242424242500, 0.1780303030303030400, 0.1818181818181818200, 0.1856060606060606100, 0.1893939393939393900, 0.1931818181818181800, 0.1969696969696969600, 0.2007575757575757500, 0.2045454545454545600, 0.2083333333333333400, 0.2121212121212121300, 0.2159090909090909100, 0.2196969696969697000, 0.2234848484848484800, 0.2272727272727272700, 0.2310606060606060500, 0.2348484848484848600, 0.2386363636363636500, 0.2424242424242424300, 0.2462121212121212200, 0.2500000000000000000, 0.2537878787878787800, 0.2575757575757575700, 0.2613636363636363500, 0.2651515151515151400, 0.2689393939393939200, 0.2727272727272727100, 0.2765151515151514900, 0.2803030303030302800, 0.2840909090909091200, 0.2878787878787879000, 0.2916666666666666900, 0.2954545454545454700, 0.2992424242424242500, 0.3030303030303030400, 0.3068181818181818200, 0.3106060606060606100, 0.3143939393939393900, 0.3181818181818181800, 0.3219696969696969600, 0.3257575757575757500, 0.3295454545454545300, 0.3333333333333333100, 0.3371212121212121000, 0.3409090909090908800, 0.3446969696969697200, 0.3484848484848485100, 0.3522727272727272900, 0.3560606060606060800, 0.3598484848484848600, 0.3636363636363636500, 0.3674242424242424300, 0.3712121212121212200, 0.3750000000000000000, 0.3787878787878787800, 0.3825757575757575700, 0.3863636363636363500, 0.3901515151515151400, 0.3939393939393939200, 0.3977272727272727100, 0.4015151515151514900, 0.4053030303030302800, 0.4090909090909091200, 0.4128787878787879000, 0.4166666666666666900, 0.4204545454545454700, 0.4242424242424242500, 0.4280303030303030400, 0.4318181818181818200, 0.4356060606060606100, 0.4393939393939393900, 0.4431818181818181800, 0.4469696969696969600, 0.4507575757575757500, 0.4545454545454545300, 0.4583333333333333100, 0.4621212121212121000, 0.4659090909090908800, 0.4696969696969697200, 0.4734848484848485100, 0.4772727272727272900, 0.4810606060606060800, 0.4848484848484848600, 0.4886363636363636500, 0.4924242424242424300, 0.4962121212121212200, 0.5000000000000000000, 0.5037878787878787800, 0.5075757575757575700, 0.5113636363636363500, 0.5151515151515151400, 0.5189393939393939200, 0.5227272727272727100, 0.5265151515151514900, 0.5303030303030302800, 0.5340909090909090600, 0.5378787878787878500, 0.5416666666666666300, 0.5454545454545454100, 0.5492424242424242000, 0.5530303030303029800, 0.5568181818181817700, 0.5606060606060605500, 0.5643939393939394500, 0.5681818181818182300, 0.5719696969696970200, 0.5757575757575758000, 0.5795454545454545900, 0.5833333333333333700, 0.5871212121212121500, 0.5909090909090909400, 0.5946969696969697200, 0.5984848484848485100, 0.6022727272727272900, 0.6060606060606060800, 0.6098484848484848600, 0.6136363636363636500, 0.6174242424242424300, 0.6212121212121212200, 0.6250000000000000000, 0.6287878787878787800, 0.6325757575757575700, 0.6363636363636363500, 0.6401515151515151400, 0.6439393939393939200, 0.6477272727272727100, 0.6515151515151514900, 0.6553030303030302800, 0.6590909090909090600, 0.6628787878787878500, 0.6666666666666666300, 0.6704545454545454100, 0.6742424242424242000, 0.6780303030303029800, 0.6818181818181817700, 0.6856060606060605500, 0.6893939393939394500, 0.6931818181818182300, 0.6969696969696970200, 0.7007575757575758000, 0.7045454545454545900, 0.7083333333333333700, 0.7121212121212121500, 0.7159090909090909400, 0.7196969696969697200, 0.7234848484848485100, 0.7272727272727272900, 0.7310606060606060800, 0.7348484848484848600, 0.7386363636363636500, 0.7424242424242424300, 0.7462121212121212200, 0.7500000000000000000, 0.7537878787878787800, 0.7575757575757575700, 0.7613636363636363500, 0.7651515151515151400, 0.7689393939393939200, 0.7727272727272727100, 0.7765151515151514900, 0.7803030303030302800, 0.7840909090909090600, 0.7878787878787878500, 0.7916666666666666300, 0.7954545454545454100, 0.7992424242424242000, 0.8030303030303029800, 0.8068181818181817700, 0.8106060606060605500, 0.8143939393939394500, 0.8181818181818182300, 0.8219696969696970200, 0.8257575757575758000, 0.8295454545454545900, 0.8333333333333333700, 0.8371212121212121500, 0.8409090909090909400, 0.8446969696969697200, 0.8484848484848485100, 0.8522727272727272900, 0.8560606060606060800, 0.8598484848484848600, 0.8636363636363636500, 0.8674242424242424300, 0.8712121212121212200, 0.8750000000000000000, 0.8787878787878787800, 0.8825757575757575700, 0.8863636363636363500, 0.8901515151515151400, 0.8939393939393939200, 0.8977272727272727100, 0.9015151515151514900, 0.9053030303030302800, 0.9090909090909090600, 0.9128787878787878500, 0.9166666666666666300, 0.9204545454545454100, 0.9242424242424242000, 0.9280303030303029800, 0.9318181818181817700, 0.9356060606060605500, 0.9393939393939394500, 0.9431818181818182300, 0.9469696969696970200, 0.9507575757575758000, 0.9545454545454545900, 0.9583333333333333700, 0.9621212121212121500, 0.9659090909090909400, 0.9696969696969697200, 0.9734848484848485100, 0.9772727272727272900, 0.9810606060606060800, 0.9848484848484848600 ), + .UNSPECIFIED. ) + GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_SURFACE ( ( + ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000), + ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000) ) ) + REPRESENTATION_ITEM ( '' ) SURFACE ( ) ); +#14586 = APPROVAL_ROLE ( '' ) ; +#14587 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.9739583333333293700 ) ) ; +#14588 = EDGE_LOOP ( 'NONE', ( #14629, #1399, #5249, #18236 ) ) ; +#14589 = VECTOR ( 'NONE', #5191, 39.37007874015748900 ) ; +#14590 = ADVANCED_FACE ( 'NONE', ( #6929 ), #12236, .T. ) ; +#14591 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.187499999999998000 ) ) ; +#14592 = EDGE_CURVE ( 'NONE', #6722, #8277, #485, .T. ) ; +#14593 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.440972222222222300 ) ) ; +#14594 = VERTEX_POINT ( 'NONE', #2205 ) ; +#14595 = DIRECTION ( 'NONE', ( -0.1219978065221470100, 0.1235727510854617400, -0.9848077530122085800 ) ) ; +#14596 = EDGE_LOOP ( 'NONE', ( #15500, #10632, #7222, #5183 ) ) ; +#14597 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#14598 = CARTESIAN_POINT ( 'NONE', ( 0.1207657879840481200, 0.2701449139495602500, 0.07959217367698912000 ) ) ; +#14599 = EDGE_LOOP ( 'NONE', ( #11253, #13358, #14447, #8655 ) ) ; +#14600 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.022569444444440600 ) ) ; +#14601 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.201388888888886400 ) ) ; +#14602 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14603 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#14604 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, 0.05381944444445663900 ) ) ; +#14605 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#14606 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.229166666666664300 ) ) ; +#14607 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14608 = AXIS2_PLACEMENT_3D ( 'NONE', #14850, #6031, #6097 ) ; +#14609 = CARTESIAN_POINT ( 'NONE', ( -0.2955227599397255400, -0.01968332538976500000, 0.1353604614508300600 ) ) ; +#14610 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.4166666666666584700 ) ) ; +#14611 = ORIENTED_EDGE ( 'NONE', *, *, #17823, .F. ) ; +#14612 = DIRECTION ( 'NONE', ( 0.1729787697315189100, 0.01523268949379757600, -0.9848077530122088000 ) ) ; +#14613 = VECTOR ( 'NONE', #1880, 39.37007874015748100 ) ; +#14614 = VERTEX_POINT ( 'NONE', #3678 ) ; +#14615 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.2118055555555455300 ) ) ; +#14616 = CARTESIAN_POINT ( 'NONE', ( 0.4684146371797784400, 0.01772823103798254800, 1.143750000000000000 ) ) ; +#14617 = LINE ( 'NONE', #6890, #7480 ) ; +#14618 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.2708333333333234300 ) ) ; +#14619 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.472222222222222300 ) ) ; +#14620 = EDGE_CURVE ( 'NONE', #10635, #13173, #2094, .T. ) ; +#14621 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#14622 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.374999999999998900 ) ) ; +#14623 = EDGE_CURVE ( 'NONE', #4849, #8275, #3252, .T. ) ; +#14624 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995600, 0.1443375672974061000, -1.562539370078740200 ) ) ; +#14625 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14626 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.5451388888888812900 ) ) ; +#14627 = AXIS2_PLACEMENT_3D ( 'NONE', #17005, #12631, #9603 ) ; +#14628 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.3506944444444357000 ) ) ; +#14629 = ORIENTED_EDGE ( 'NONE', *, *, #8764, .F. ) ; +#14630 = CARTESIAN_POINT ( 'NONE', ( 0.2958319850298574700, 6.101305999854492000E-013, 0.1362100504034947900 ) ) ; +#14631 = FACE_BOUND ( 'NONE', #12743, .T. ) ; +#14632 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.7534722222222163300 ) ) ; +#14633 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14634 = CYLINDRICAL_SURFACE ( 'NONE', #15475, 0.4610132068742565100 ) ; +#14635 = CARTESIAN_POINT ( 'NONE', ( -0.01171868954685640300, -0.4686010753596985800, 1.484375000000000200 ) ) ; +#14636 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.8420138888888838400 ) ) ; +#14637 = PLANE ( 'NONE', #10810 ) ; +#14638 = EDGE_CURVE ( 'NONE', #14545, #9072, #8101, .T. ) ; +#14639 = VECTOR ( 'NONE', #12783, 39.37007874015748900 ) ; +#14640 = EDGE_CURVE ( 'NONE', #12430, #3029, #15217, .T. ) ; +#14641 = ORIENTED_EDGE ( 'NONE', *, *, #10716, .F. ) ; +#14642 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#14643 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.097222222222219400 ) ) ; +#14644 = EDGE_CURVE ( 'NONE', #12229, #13027, #3473, .T. ) ; +#14645 = CYLINDRICAL_SURFACE ( 'NONE', #12089, 0.3125000000000008300 ) ; +#14646 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.232638888888887300 ) ) ; +#14647 = ORIENTED_EDGE ( 'NONE', *, *, #18112, .T. ) ; +#14648 = LINE ( 'NONE', #18965, #16013 ) ; +#14649 = DIRECTION ( 'NONE', ( 0.1873813145857150300, 0.9822872507286905000, 0.0000000000000000000 ) ) ; +#14650 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.06597222222223427000 ) ) ; +#14651 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.9635416666666625200 ) ) ; +#14652 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.218749999999997800 ) ) ; +#14653 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.591590229135180200 ) ) ; +#14654 = CARTESIAN_POINT ( 'NONE', ( -0.4548654901190614100, -0.07503707624389545400, 1.589564174286821800 ) ) ; +#14655 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.017361111111107200 ) ) ; +#14656 = CARTESIAN_POINT ( 'NONE', ( -0.006283872062898915500, -0.2995740305948164700, 0.1462297341742120300 ) ) ; +#14657 = EDGE_LOOP ( 'NONE', ( #6477, #18703, #9299, #1670, #14721, #8939 ) ) ; +#14658 = FACE_OUTER_BOUND ( 'NONE', #1374, .T. ) ; +#14659 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #7652, #17884, #13508, #4674, #7581, #14786, #14914, #4610, #14717, #6027, #9071, #13448 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 4 ), + ( 2.380733176199452700E-007, 0.001851555320830852700, 0.003702872568344085200, 0.004628531192100702500, 0.005554189815857319400, 0.007405507063370557500 ), + .UNSPECIFIED. ) ; +#14660 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.4548611111111031700 ) ) ; +#14661 = CIRCLE ( 'NONE', #10838, 0.4610132068742565100 ) ; +#14662 = LINE ( 'NONE', #15786, #18138 ) ; +#14663 = ORIENTED_EDGE ( 'NONE', *, *, #4164, .F. ) ; +#14664 = ORIENTED_EDGE ( 'NONE', *, *, #18383, .T. ) ; +#14665 = EDGE_CURVE ( 'NONE', #4006, #873, #18681, .T. ) ; +#14666 = FACE_OUTER_BOUND ( 'NONE', #16689, .T. ) ; +#14667 = DIRECTION ( 'NONE', ( -1.000000000000000000, -2.575717417130363500E-014, 0.0000000000000000000 ) ) ; +#14668 = AXIS2_PLACEMENT_3D ( 'NONE', #5518, #2504, #14475 ) ; +#14669 = DIRECTION ( 'NONE', ( -0.1365235898527175600, 0.1073079634545868500, -0.9848077530122089100 ) ) ; +#14670 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#14671 = ADVANCED_FACE ( 'NONE', ( #17287 ), #11099, .T. ) ; +#14672 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.2499999999999902300 ) ) ; +#14673 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.003472222222234315200 ) ) ; +#14674 = ORIENTED_EDGE ( 'NONE', *, *, #1708, .T. ) ; +#14675 = CARTESIAN_POINT ( 'NONE', ( -0.4420448320419782500, 0.1559508319244997400, 1.484375000000000200 ) ) ; +#14676 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.05555555555554388100 ) ) ; +#14677 = CARTESIAN_POINT ( 'NONE', ( 0.2593090401521573900, -0.1065594097284328800, -1.553835961618606200 ) ) ; +#14678 = DIRECTION ( 'NONE', ( 0.1004911932742537700, -0.9949379478511796200, 0.0000000000000000000 ) ) ; +#14679 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.5034722222222144400 ) ) ; +#14680 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.364583333333332100 ) ) ; +#14681 = VECTOR ( 'NONE', #8217, 39.37007874015748900 ) ; +#14682 = CARTESIAN_POINT ( 'NONE', ( -0.1843364152068907600, 0.2059749365136105400, 0.08286399339095737400 ) ) ; +#14683 = CONICAL_SURFACE ( 'NONE', #3497, 0.4610132068742565100, 0.1745329251994287300 ) ; +#14684 = VECTOR ( 'NONE', #5155, 39.37007874015748100 ) ; +#14685 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.437500000000000000 ) ) ; +#14686 = ORIENTED_EDGE ( 'NONE', *, *, #13274, .T. ) ; +#14687 = FACE_OUTER_BOUND ( 'NONE', #16830, .T. ) ; +#14688 = LINE ( 'NONE', #4967, #18160 ) ; +#14689 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.1319444444444338400 ) ) ; +#14690 = EDGE_LOOP ( 'NONE', ( #18867, #5125, #5648, #12885 ) ) ; +#14691 = CARTESIAN_POINT ( 'NONE', ( -0.08361872220419551400, 0.2922838292426570600, 0.1568804957991973800 ) ) ; +#14692 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.7013888888888825100 ) ) ; +#14693 = ORIENTED_EDGE ( 'NONE', *, *, #2658, .F. ) ; +#14694 = EDGE_CURVE ( 'NONE', #16653, #6859, #14534, .T. ) ; +#14695 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14696 = ADVANCED_FACE ( 'NONE', ( #14080 ), #3000, .F. ) ; +#14697 = ORIENTED_EDGE ( 'NONE', *, *, #15809, .T. ) ; +#14698 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14699 = DIRECTION ( 'NONE', ( -0.8938997675281809000, 0.4482668910515967300, -0.0000000000000000000 ) ) ; +#14700 = EDGE_LOOP ( 'NONE', ( #10849, #12524, #12262, #17337, #8724, #5037 ) ) ; +#14701 = EDGE_LOOP ( 'NONE', ( #12774, #1745, #4539, #16584 ) ) ; +#14702 = CIRCLE ( 'NONE', #7251, 0.4687475818742572500 ) ; +#14704 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.9357638888888846200 ) ) ; +#14703 = LINE ( 'NONE', #10944, #10804 ) ; +#14705 = ORIENTED_EDGE ( 'NONE', *, *, #17270, .T. ) ; +#14706 = EDGE_LOOP ( 'NONE', ( #18456, #8055, #12425, #5077 ) ) ; +#14707 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#14708 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.4652777777777696900 ) ) ; +#14709 = LINE ( 'NONE', #9465, #10341 ) ; +#14710 = ORIENTED_EDGE ( 'NONE', *, *, #12178, .F. ) ; +#14711 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.156249999999997800 ) ) ; +#14712 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.270833333333331900 ) ) ; +#14713 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.3576388888888799600 ) ) ; +#14714 = VERTEX_POINT ( 'NONE', #4221 ) ; +#14715 = ORIENTED_EDGE ( 'NONE', *, *, #21, .F. ) ; +#14716 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14717 = CARTESIAN_POINT ( 'NONE', ( 0.07232391368861321200, -0.2469189035578443500, 1.254060627199044700 ) ) ; +#14718 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.081597222222219000 ) ) ; +#14719 = ORIENTED_EDGE ( 'NONE', *, *, #12136, .T. ) ; +#14720 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.128472222222219200 ) ) ; +#14721 = ORIENTED_EDGE ( 'NONE', *, *, #16242, .T. ) ; +#14722 = FACE_OUTER_BOUND ( 'NONE', #7585, .T. ) ; +#14723 = CARTESIAN_POINT ( 'NONE', ( 0.3238882248697069200, -0.3280694967582878400, 1.593467001493433100 ) ) ; +#14724 = LINE ( 'NONE', #15100, #922 ) ; +#14725 = DIRECTION ( 'NONE', ( 0.8880766332571035100, 0.4596954355469803900, 0.0000000000000000000 ) ) ; +#14726 = VERTEX_POINT ( 'NONE', #16049 ) ; +#14727 = DIRECTION ( 'NONE', ( 0.9430338398216144800, -0.3326968243781439100, -0.0000000000000000000 ) ) ; +#14728 = VERTEX_POINT ( 'NONE', #4280 ) ; +#14729 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.024305555555551600 ) ) ; +#14730 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14731 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#14732 = FACE_OUTER_BOUND ( 'NONE', #12886, .T. ) ; +#14733 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.4756944444444367600 ) ) ; +#14734 = PLANE ( 'NONE', #989 ) ; +#14735 = ORIENTED_EDGE ( 'NONE', *, *, #13194, .T. ) ; +#14736 = EDGE_CURVE ( 'NONE', #12366, #8502, #9471, .T. ) ; +#14737 = CARTESIAN_POINT ( 'NONE', ( 0.2849188901020641700, 0.3722200808164538000, 1.143750000000000000 ) ) ; +#14738 = CARTESIAN_POINT ( 'NONE', ( -0.1278875336514725700, 0.4509671176887990500, 1.143750000000000000 ) ) ; +#14739 = ORIENTED_EDGE ( 'NONE', *, *, #4853, .T. ) ; +#14740 = ORIENTED_EDGE ( 'NONE', *, *, #18603, .T. ) ; +#14741 = FACE_OUTER_BOUND ( 'NONE', #18595, .T. ) ; +#14742 = FACE_OUTER_BOUND ( 'NONE', #7005, .T. ) ; +#14743 = ORIENTED_EDGE ( 'NONE', *, *, #11335, .T. ) ; +#14744 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#14745 = ORIENTED_EDGE ( 'NONE', *, *, #11910, .F. ) ; +#14746 = VECTOR ( 'NONE', #16364, 39.37007874015748100 ) ; +#14747 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.1631944444444336800 ) ) ; +#14748 = CARTESIAN_POINT ( 'NONE', ( 0.3893737859852240400, 0.2609834291684060600, 1.143750000000000000 ) ) ; +#14749 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.03472222222221038600 ) ) ; +#14750 = CARTESIAN_POINT ( 'NONE', ( 0.2347393468179259100, -0.1759276817643688500, 0.1289656634748159700 ) ) ; +#14751 = CARTESIAN_POINT ( 'NONE', ( -0.3624522803384139800, 0.2848886122504193900, 1.593375490995827300 ) ) ; +#14752 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.3402777777777686900 ) ) ; +#14753 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676400500 ) ) ; +#14754 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.395833333333332400 ) ) ; +#14755 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.565972222222223200 ) ) ; +#14756 = ORIENTED_EDGE ( 'NONE', *, *, #9411, .F. ) ; +#14757 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.07291666666665562500 ) ) ; +#14758 = EDGE_CURVE ( 'NONE', #18184, #14503, #1618, .T. ) ; +#14759 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14760 = ORIENTED_EDGE ( 'NONE', *, *, #6223, .F. ) ; +#14761 = ORIENTED_EDGE ( 'NONE', *, *, #7922, .T. ) ; +#14762 = LINE ( 'NONE', #19061, #14089 ) ; +#14763 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.7361111111111050500 ) ) ; +#14764 = EDGE_CURVE ( 'NONE', #5493, #12758, #17530, .T. ) ; +#14765 = ORIENTED_EDGE ( 'NONE', *, *, #8385, .T. ) ; +#14766 = ORIENTED_EDGE ( 'NONE', *, *, #2336, .T. ) ; +#14767 = EDGE_CURVE ( 'NONE', #11876, #2752, #8776, .T. ) ; +#14768 = AXIS2_PLACEMENT_3D ( 'NONE', #8054, #10893, #6499 ) ; +#14769 = CARTESIAN_POINT ( 'NONE', ( 0.1776760863113863200, 0.1860937983343742600, 1.254060627199045100 ) ) ; +#14770 = AXIS2_PLACEMENT_3D ( 'NONE', #4880, #16481, #520 ) ; +#14771 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.7239583333333276000 ) ) ; +#14772 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#14773 = CARTESIAN_POINT ( 'NONE', ( -0.1615184604999594700, -0.2303521885919305500, 0.09596982710126854300 ) ) ; +#14774 = ORIENTED_EDGE ( 'NONE', *, *, #574, .F. ) ; +#14775 = ORIENTED_EDGE ( 'NONE', *, *, #4294, .F. ) ; +#14776 = PLANE ( 'NONE', #13819 ) ; +#14777 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.135416666666664100 ) ) ; +#14778 = VERTEX_POINT ( 'NONE', #1324 ) ; +#14779 = ORIENTED_EDGE ( 'NONE', *, *, #3459, .T. ) ; +#14780 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.267361111111109600 ) ) ; +#14781 = VECTOR ( 'NONE', #14823, 39.37007874015748100 ) ; +#14782 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14783 = CARTESIAN_POINT ( 'NONE', ( -0.1589412568245233400, 0.4327480257511604500, 1.591590229135180400 ) ) ; +#14784 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#14785 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.543402777777778300 ) ) ; +#14786 = CARTESIAN_POINT ( 'NONE', ( 0.1146115372620811500, -0.2225041327043129100, 1.249992272704498300 ) ) ; +#14787 = EDGE_CURVE ( 'NONE', #18184, #7357, #17997, .T. ) ; +#14788 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.7517361111111051700 ) ) ; +#14789 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.173611111111108500 ) ) ; +#14790 = AXIS2_PLACEMENT_3D ( 'NONE', #4662, #16180, #1713 ) ; +#14791 = DIRECTION ( 'NONE', ( -0.6374239897486881900, -0.7705132427757904700, 0.0000000000000000000 ) ) ; +#14792 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#14793 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14794 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.045138888888885300 ) ) ; +#14795 = CARTESIAN_POINT ( 'NONE', ( -0.4669405755743631900, 0.04111927036374475600, 1.143750000000000000 ) ) ; +#14796 = EDGE_CURVE ( 'NONE', #8502, #10788, #18915, .T. ) ; +#14797 = AXIS2_PLACEMENT_3D ( 'NONE', #145, #3108, #283 ) ; +#14798 = VERTEX_POINT ( 'NONE', #10220 ) ; +#14799 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.4270833333333252100 ) ) ; +#14800 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2636, #5632, #17188, #17135, #6819, #1222, #14408, #8426, #18861 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.8106060606060605500, 0.8143939393939394500, 0.8181818181818182300, 0.8219696969696970200, 0.8257575757575758000 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#14801 = AXIS2_PLACEMENT_3D ( 'NONE', #10197, #1624, #16162 ) ; +#14802 = VERTEX_POINT ( 'NONE', #8858 ) ; +#14803 = ADVANCED_FACE ( 'NONE', ( #14294 ), #14637, .F. ) ; +#14804 = LINE ( 'NONE', #2463, #10903 ) ; +#14805 = ORIENTED_EDGE ( 'NONE', *, *, #6866, .F. ) ; +#14806 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#14807 = ORIENTED_EDGE ( 'NONE', *, *, #6695, .T. ) ; +#14808 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.3055555555555461400 ) ) ; +#14809 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.07986111111109967000 ) ) ; +#14810 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.090277777777774600 ) ) ; +#14811 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.08680555555554428400 ) ) ; +#14812 = CARTESIAN_POINT ( 'NONE', ( -0.2831606108858149000, -0.009429732735685467100, 0.1013957360692772100 ) ) ; +#14813 = ORIENTED_EDGE ( 'NONE', *, *, #13558, .T. ) ; +#14814 = ADVANCED_FACE ( 'NONE', ( #11311 ), #11679, .F. ) ; +#14815 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.8090277777777722400 ) ) ; +#14816 = EDGE_CURVE ( 'NONE', #13739, #4099, #18461, .T. ) ; +#14817 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#14818 = DIRECTION ( 'NONE', ( 0.7289686274214153300, -0.6845471059286846200, 0.0000000000000000000 ) ) ; +#14819 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.465277777777777500 ) ) ; +#14820 = EDGE_LOOP ( 'NONE', ( #3753, #743, #1632, #16500 ) ) ; +#14821 = DIRECTION ( 'NONE', ( -0.1552240656481535300, -0.07784072873952890800, -0.9848077530122092400 ) ) ; +#14822 = AXIS2_PLACEMENT_3D ( 'NONE', #18546, #8120, #6688 ) ; +#14823 = DIRECTION ( 'NONE', ( -0.1500969283399637100, -0.9886712861729665100, 0.0000000000000000000 ) ) ; +#14824 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.274305555555554000 ) ) ; +#14825 = ORIENTED_EDGE ( 'NONE', *, *, #14640, .F. ) ; +#14826 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #25, #7183, #2716, #2983, #13276, #14575, #4453, #10132, #13023 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7954545454545454100, 0.7992424242424243100, 0.8030303030303029800, 0.8068181818181818800, 0.8106060606060605500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#14827 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.2569444444444348200 ) ) ; +#14828 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14829 = FACE_OUTER_BOUND ( 'NONE', #15516, .T. ) ; +#14830 = VERTEX_POINT ( 'NONE', #11752 ) ; +#14831 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.4618055555555472500 ) ) ; +#14832 = PLANE ( 'NONE', #6996 ) ; +#14833 = ORIENTED_EDGE ( 'NONE', *, *, #11680, .T. ) ; +#14834 = CARTESIAN_POINT ( 'NONE', ( 0.3238882248696998100, 0.3280694967582948900, 1.440511179676388100 ) ) ; +#14835 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.8072916666666613000 ) ) ; +#14836 = ORIENTED_EDGE ( 'NONE', *, *, #11948, .T. ) ; +#14837 = CARTESIAN_POINT ( 'NONE', ( -0.2154822354126444100, -0.4162859218392692700, 1.143750000000000000 ) ) ; +#14838 = CARTESIAN_POINT ( 'NONE', ( -7.235297022245558800E-018, -3.337279139060816100E-017, -1.174024639073269800 ) ) ; +#14839 = CARTESIAN_POINT ( 'NONE', ( 5.623910460499082300E-017, 3.874963259223968700E-017, -1.174024639073328700 ) ) ; +#14840 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.8055555555555503600 ) ) ; +#14841 = EDGE_CURVE ( 'NONE', #12934, #14038, #9702, .T. ) ; +#14842 = LINE ( 'NONE', #12356, #4253 ) ; +#14843 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.284722222222220800 ) ) ; +#14844 = CARTESIAN_POINT ( 'NONE', ( -0.1034502481550446100, -0.4492562999771352900, 1.187613820323600200 ) ) ; +#14845 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.8593749999999948900 ) ) ; +#14846 = EDGE_CURVE ( 'NONE', #11716, #18468, #6461, .T. ) ; +#14847 = CARTESIAN_POINT ( 'NONE', ( -0.3829490853735684200, 0.2566771803726103900, 1.187613820323618400 ) ) ; +#14848 = CIRCLE ( 'NONE', #18508, 0.4610132068742565100 ) ; +#14849 = PLANE ( 'NONE', #129 ) ; +#14850 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#14851 = DIRECTION ( 'NONE', ( -0.9866647708492394300, -0.1627655675043647200, 0.0000000000000000000 ) ) ; +#14852 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.8993055555555509200 ) ) ; +#14853 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#14854 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, 0.1423611111111239300 ) ) ; +#14855 = VECTOR ( 'NONE', #6345, 39.37007874015748100 ) ; +#14856 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.4618055555555476400 ) ) ; +#14857 = VECTOR ( 'NONE', #7346, 39.37007874015748900 ) ; +#14858 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14859 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.2829861111111016100 ) ) ; +#14860 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14861 = CONICAL_SURFACE ( 'NONE', #5032, 0.4610132068742565100, 0.1745329251994284800 ) ; +#14862 = ORIENTED_EDGE ( 'NONE', *, *, #11606, .F. ) ; +#14863 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#14864 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.1319444444444335700 ) ) ; +#14865 = LINE ( 'NONE', #15811, #7509 ) ; +#14866 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.013888888888885300 ) ) ; +#14867 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.06249999999998847400 ) ) ; +#14868 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#14869 = EDGE_CURVE ( 'NONE', #2895, #16336, #10162, .T. ) ; +#14870 = ORIENTED_EDGE ( 'NONE', *, *, #17735, .F. ) ; +#14871 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.6510416666666599700 ) ) ; +#14872 = DIRECTION ( 'NONE', ( -0.1004911932742472800, -0.9949379478511801700, 0.0000000000000000000 ) ) ; +#14873 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#14874 = CARTESIAN_POINT ( 'NONE', ( 0.4592360163321199100, -0.04044079890273023800, 1.587900241027141200 ) ) ; +#14875 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.482638888888888800 ) ) ; +#14877 = EDGE_CURVE ( 'NONE', #12614, #641, #241, .T. ) ; +#14876 = CIRCLE ( 'NONE', #7849, 0.4687475818742552500 ) ; +#14878 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676400500 ) ) ; +#14879 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14880 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.420138888888888800 ) ) ; +#14881 = AXIS2_PLACEMENT_3D ( 'NONE', #9647, #12413, #13905 ) ; +#14882 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.2465277777777682100 ) ) ; +#14883 = CARTESIAN_POINT ( 'NONE', ( -0.2767784039810003400, 0.1338238196310159200, 0.1663191763765164400 ) ) ; +#14884 = CIRCLE ( 'NONE', #12951, 0.4687475818742551400 ) ; +#14885 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.6666666666666599700 ) ) ; +#14886 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323614800 ) ) ; +#14887 = ADVANCED_FACE ( 'NONE', ( #13130 ), #11292, .T. ) ; +#14888 = LINE ( 'NONE', #843, #2672 ) ; +#14889 = ORIENTED_EDGE ( 'NONE', *, *, #99, .T. ) ; +#14890 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.451388888888888800 ) ) ; +#14891 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#14892 = VECTOR ( 'NONE', #14872, 39.37007874015748900 ) ; +#14893 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.7065972222222162100 ) ) ; +#14894 = CARTESIAN_POINT ( 'NONE', ( -0.02105049132122653900, 0.2762080343959262300, 0.08286399342893273300 ) ) ; +#14895 = EDGE_CURVE ( 'NONE', #14364, #7908, #18657, .T. ) ; +#14896 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.291666666666665200 ) ) ; +#14897 = EDGE_CURVE ( 'NONE', #5994, #8011, #15890, .T. ) ; +#14898 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.7569444444444388700 ) ) ; +#14899 = EDGE_CURVE ( 'NONE', #14778, #2293, #2306, .T. ) ; +#14900 = ORIENTED_EDGE ( 'NONE', *, *, #18440, .T. ) ; +#14901 = AXIS2_PLACEMENT_3D ( 'NONE', #11976, #10371, #13464 ) ; +#14902 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.277777777777776600 ) ) ; +#14903 = LINE ( 'NONE', #12623, #6367 ) ; +#14904 = ADVANCED_FACE ( 'NONE', ( #11984 ), #10604, .T. ) ; +#14905 = DIRECTION ( 'NONE', ( -0.9949379478511809500, 0.1004911932742403300, 0.0000000000000000000 ) ) ; +#14906 = AXIS2_PLACEMENT_3D ( 'NONE', #17296, #1259, #1071 ) ; +#14907 = VECTOR ( 'NONE', #15005, 39.37007874015748100 ) ; +#14908 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#14909 = VECTOR ( 'NONE', #1384, 39.37007874015748100 ) ; +#14910 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#14911 = LINE ( 'NONE', #1956, #18156 ) ; +#14912 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.505208333333333700 ) ) ; +#14913 = ORIENTED_EDGE ( 'NONE', *, *, #13848, .F. ) ; +#14914 = CARTESIAN_POINT ( 'NONE', ( 0.1039342647883889500, -0.2286686588412101000, 1.250514193469173900 ) ) ; +#14915 = CYLINDRICAL_SURFACE ( 'NONE', #4167, 0.3125000000000008300 ) ; +#14916 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.7135416666666604100 ) ) ; +#14917 = VECTOR ( 'NONE', #5596, 39.37007874015748100 ) ; +#14918 = DIRECTION ( 'NONE', ( -0.1500969283399838900, 0.9886712861729634000, 0.0000000000000000000 ) ) ; +#14919 = CARTESIAN_POINT ( 'NONE', ( -0.04632776727398118400, -0.4586795339797645200, 1.588758826628429600 ) ) ; +#14920 = ORIENTED_EDGE ( 'NONE', *, *, #814, .F. ) ; +#14921 = CARTESIAN_POINT ( 'NONE', ( 0.1834002693415904000, -0.4313825491433695400, 1.591590229135180700 ) ) ; +#14922 = CARTESIAN_POINT ( 'NONE', ( 0.3477592364557848300, -0.3026494512999745000, 1.143750000000000000 ) ) ; +#14923 = PLANE ( 'NONE', #12796 ) ; +#14924 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.8784722222222171000 ) ) ; +#14925 = CARTESIAN_POINT ( 'NONE', ( -0.2445455750951305300, -0.1929495200272652600, 0.1788980836097149300 ) ) ; +#14926 = ORIENTED_EDGE ( 'NONE', *, *, #9559, .F. ) ; +#14927 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.3020833333333241000 ) ) ; +#14928 = ORIENTED_EDGE ( 'NONE', *, *, #12426, .F. ) ; +#14929 = EDGE_CURVE ( 'NONE', #5801, #16123, #13600, .T. ) ; +#14930 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.8576388888888838400 ) ) ; +#14931 = ORIENTED_EDGE ( 'NONE', *, *, #11658, .T. ) ; +#14932 = EDGE_LOOP ( 'NONE', ( #17837, #19057, #10585, #11340 ) ) ; +#14933 = FACE_OUTER_BOUND ( 'NONE', #17478, .T. ) ; +#14934 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.2621527777777681300 ) ) ; +#14935 = FACE_OUTER_BOUND ( 'NONE', #1789, .T. ) ; +#14936 = LINE ( 'NONE', #17754, #9426 ) ; +#14937 = ORIENTED_EDGE ( 'NONE', *, *, #11219, .F. ) ; +#14938 = CARTESIAN_POINT ( 'NONE', ( 0.3829490853735701400, -0.2566771803726077300, 1.484375000000000200 ) ) ; +#14939 = FACE_OUTER_BOUND ( 'NONE', #4087, .T. ) ; +#14940 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.1979166666666563300 ) ) ; +#14941 = CARTESIAN_POINT ( 'NONE', ( 1.569246278610583600E-016, -1.803141837253116900E-016, 3.802149639073289000 ) ) ; +#14942 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, 0.03125000000001212900 ) ) ; +#14943 = CARTESIAN_POINT ( 'NONE', ( -0.06995319609658505500, -0.2804756241692017400, 0.1159314754379705800 ) ) ; +#14944 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.4947916666666587500 ) ) ; +#14945 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.2048611111111009500 ) ) ; +#14946 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.333333333333332100 ) ) ; +#14947 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.104166666666663400 ) ) ; +#14948 = VERTEX_POINT ( 'NONE', #14965 ) ; +#14949 = CARTESIAN_POINT ( 'NONE', ( 0.3535953843793207000, 0.3077285600096943400, 1.593375490995827300 ) ) ; +#14950 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#14951 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.329861111111110100 ) ) ; +#14952 = EDGE_LOOP ( 'NONE', ( #13841, #12709, #10723, #17598 ) ) ; +#14953 = ORIENTED_EDGE ( 'NONE', *, *, #9612, .F. ) ; +#14954 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.1909722222222123000 ) ) ; +#14955 = CIRCLE ( 'NONE', #10510, 0.4687475818742575800 ) ; +#14956 = VERTEX_POINT ( 'NONE', #160 ) ; +#14957 = ORIENTED_EDGE ( 'NONE', *, *, #7130, .F. ) ; +#14958 = DIRECTION ( 'NONE', ( 1.000000000000000000, 3.907985046680551000E-014, 0.0000000000000000000 ) ) ; +#14959 = VERTEX_POINT ( 'NONE', #1706 ) ; +#14960 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.6770833333333267100 ) ) ; +#14961 = EDGE_CURVE ( 'NONE', #5586, #492, #7837, .T. ) ; +#14962 = DIRECTION ( 'NONE', ( 0.1589208555515883000, -0.06998465030130593400, -0.9848077530122085800 ) ) ; +#14963 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#14964 = ORIENTED_EDGE ( 'NONE', *, *, #16843, .T. ) ; +#14965 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.04166666666667873800 ) ) ; +#14966 = DIRECTION ( 'NONE', ( -0.2851439985633867400, -0.9584846895403615900, 0.0000000000000000000 ) ) ; +#14967 = EDGE_CURVE ( 'NONE', #5892, #7917, #1385, .T. ) ; +#14968 = ORIENTED_EDGE ( 'NONE', *, *, #7948, .F. ) ; +#14969 = FACE_OUTER_BOUND ( 'NONE', #8478, .T. ) ; +#14970 = VECTOR ( 'NONE', #9839, 39.37007874015748100 ) ; +#14971 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#14972 = EDGE_LOOP ( 'NONE', ( #1043, #1360, #6021, #3447 ) ) ; +#14973 = VERTEX_POINT ( 'NONE', #6078 ) ; +#14974 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.9027777777777733500 ) ) ; +#14975 = CIRCLE ( 'NONE', #197, 0.4687475818742554700 ) ; +#14976 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.059027777777774600 ) ) ; +#14977 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.2881944444444349300 ) ) ; +#14978 = CARTESIAN_POINT ( 'NONE', ( 0.4592360163321199100, -0.04044079890273024500, 1.484375000000000200 ) ) ; +#14979 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.484375000000000200 ) ) ; +#14980 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#14981 = EDGE_LOOP ( 'NONE', ( #9613, #3495, #11351, #7733 ) ) ; +#14982 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.7309027777777716800 ) ) ; +#14983 = DIRECTION ( 'NONE', ( 0.8574597016599372300, -0.5145511247964108500, 0.0000000000000000000 ) ) ; +#14984 = CARTESIAN_POINT ( 'NONE', ( -0.1278868739221125400, 0.4509647912990449900, 1.143750000000000000 ) ) ; +#14985 = CARTESIAN_POINT ( 'NONE', ( 0.2644365632708425800, 0.1524839016761415900, 0.1616975103939743700 ) ) ; +#14986 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.8472222222222169900 ) ) ; +#14987 = CARTESIAN_POINT ( 'NONE', ( -0.4420471124163813900, 0.1559516364272548500, 1.143750000000000000 ) ) ; +#14988 = ORIENTED_EDGE ( 'NONE', *, *, #7024, .T. ) ; +#14989 = ORIENTED_EDGE ( 'NONE', *, *, #2881, .F. ) ; +#14990 = FACE_OUTER_BOUND ( 'NONE', #10182, .T. ) ; +#14991 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.1319444444444338400 ) ) ; +#14992 = ORIENTED_EDGE ( 'NONE', *, *, #4891, .F. ) ; +#14993 = ORIENTED_EDGE ( 'NONE', *, *, #12042, .F. ) ; +#14994 = VECTOR ( 'NONE', #17551, 39.37007874015748900 ) ; +#14995 = ADVANCED_FACE ( 'NONE', ( #18900 ), #9216, .T. ) ; +#14996 = EDGE_CURVE ( 'NONE', #1860, #18973, #2049, .T. ) ; +#14997 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.8715277777777730200 ) ) ; +#14998 = EDGE_CURVE ( 'NONE', #7306, #5022, #9163, .T. ) ; +#14999 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.3038194444444351500 ) ) ; +#15000 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.2986111111111015600 ) ) ; +#15001 = ORIENTED_EDGE ( 'NONE', *, *, #3792, .F. ) ; +#15002 = ORIENTED_EDGE ( 'NONE', *, *, #3008, .F. ) ; +#15003 = VERTEX_POINT ( 'NONE', #4966 ) ; +#15004 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.1006944444444572200 ) ) ; +#15005 = DIRECTION ( 'NONE', ( 0.1552240656481575500, 0.07784072873953229400, -0.9848077530122083500 ) ) ; +#15006 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.2152777777777915800 ) ) ; +#15007 = DIRECTION ( 'NONE', ( 0.9961450333403955000, 0.08772156263577583800, 0.0000000000000000000 ) ) ; +#15008 = VECTOR ( 'NONE', #12952, 39.37007874015748900 ) ; +#15009 = ADVANCED_FACE ( 'NONE', ( #15192 ), #15087, .F. ) ; +#15010 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.4670138888888807900 ) ) ; +#15011 = ORIENTED_EDGE ( 'NONE', *, *, #17869, .T. ) ; +#15012 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -0.2291666666666567800 ) ) ; +#15013 = CARTESIAN_POINT ( 'NONE', ( 0.4492896982220449500, -0.1336612493265841000, 1.484375000000000200 ) ) ; +#15014 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.118055555555552500 ) ) ; +#15015 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15016 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.6597222222222155500 ) ) ; +#15017 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.295138888888887700 ) ) ; +#15018 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.1250000000000124600 ) ) ; +#15019 = EDGE_CURVE ( 'NONE', #14335, #7702, #15434, .T. ) ; +#15020 = DIRECTION ( 'NONE', ( -0.8090169943749551100, 0.5877852522924624800, 0.0000000000000000000 ) ) ; +#15021 = ORIENTED_EDGE ( 'NONE', *, *, #6448, .T. ) ; +#15022 = ORIENTED_EDGE ( 'NONE', *, *, #1207, .F. ) ; +#15023 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.6284722222222152200 ) ) ; +#15024 = EDGE_CURVE ( 'NONE', #10691, #12983, #6676, .T. ) ; +#15025 = CARTESIAN_POINT ( 'NONE', ( -0.2119256669269715400, 0.4094150566479503000, 1.187613820323598600 ) ) ; +#15026 = ORIENTED_EDGE ( 'NONE', *, *, #4303, .T. ) ; +#15027 = EDGE_CURVE ( 'NONE', #7452, #17280, #12211, .T. ) ; +#15028 = VECTOR ( 'NONE', #15912, 39.37007874015748100 ) ; +#15029 = ORIENTED_EDGE ( 'NONE', *, *, #9357, .T. ) ; +#15030 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#15031 = EDGE_LOOP ( 'NONE', ( #1079, #14710, #681, #15969 ) ) ; +#15032 = CARTESIAN_POINT ( 'NONE', ( 0.1236168269364586600, -0.2613434238294637400, -1.544422487248099600 ) ) ; +#15033 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#15034 = CARTESIAN_POINT ( 'NONE', ( 0.2708333333333339300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#15035 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15036 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.9583333333333294800 ) ) ; +#15037 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.9826388888888851800 ) ) ; +#15038 = ORIENTED_EDGE ( 'NONE', *, *, #487, .T. ) ; +#15039 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #7894, #12581, #10915, #3755, #6647, #3696, #13995, #5157, #16703 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4318181818181818200, 0.4356060606060606100, 0.4393939393939393900, 0.4431818181818181800, 0.4469696969696969600 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#15040 = PLANE ( 'NONE', #8547 ) ; +#15041 = EDGE_LOOP ( 'NONE', ( #14338, #9700, #11369, #13693 ) ) ; +#15042 = VECTOR ( 'NONE', #16509, 39.37007874015748900 ) ; +#15043 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.314236111111109800 ) ) ; +#15044 = ORIENTED_EDGE ( 'NONE', *, *, #15381, .T. ) ; +#15045 = EDGE_CURVE ( 'NONE', #4814, #4957, #2312, .T. ) ; +#15046 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.9079861111111067200 ) ) ; +#15047 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.4340277777777693500 ) ) ; +#15048 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.8645833333333282600 ) ) ; +#15049 = AXIS2_PLACEMENT_3D ( 'NONE', #12628, #785, #15632 ) ; +#15050 = ORIENTED_EDGE ( 'NONE', *, *, #5951, .F. ) ; +#15051 = DIRECTION ( 'NONE', ( -0.9886712861729645100, -0.1500969283399770900, 0.0000000000000000000 ) ) ; +#15052 = DIRECTION ( 'NONE', ( 0.7025573672080162000, 0.7116271114718302200, -0.0000000000000000000 ) ) ; +#15053 = CARTESIAN_POINT ( 'NONE', ( 0.1463232543602881200, 0.2695466615161475900, 0.1656774448961468300 ) ) ; +#15054 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.8402777777777724600 ) ) ; +#15055 = VECTOR ( 'NONE', #6441, 39.37007874015748100 ) ; +#15056 = AXIS2_PLACEMENT_3D ( 'NONE', #2840, #8573, #14488 ) ; +#15057 = ORIENTED_EDGE ( 'NONE', *, *, #17186, .T. ) ; +#15058 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.2430555555555459200 ) ) ; +#15059 = EDGE_LOOP ( 'NONE', ( #17749, #14766, #10808, #10844 ) ) ; +#15060 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#15061 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.3107638888888797400 ) ) ; +#15062 = ORIENTED_EDGE ( 'NONE', *, *, #17335, .F. ) ; +#15063 = EDGE_LOOP ( 'NONE', ( #1829, #1585, #658, #16543 ) ) ; +#15064 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#15065 = CARTESIAN_POINT ( 'NONE', ( 2.792473528844519900E-016, 7.919037516996972600E-017, -1.174024639073266500 ) ) ; +#15066 = FACE_OUTER_BOUND ( 'NONE', #10818, .T. ) ; +#15067 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.05902777777779021800 ) ) ; +#15068 = DIRECTION ( 'NONE', ( -0.1309892141416658900, -0.1139978744784009300, -0.9848077530122088000 ) ) ; +#15069 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.5364583333333257100 ) ) ; +#15070 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#15071 = EDGE_CURVE ( 'NONE', #12195, #16073, #4821, .T. ) ; +#15072 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15073 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.9409722222222179900 ) ) ; +#15074 = CARTESIAN_POINT ( 'NONE', ( -0.1034502481550478400, 0.4492562999771345100, 1.143750000000000000 ) ) ; +#15075 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.145833333333330400 ) ) ; +#15076 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#15077 = AXIS2_PLACEMENT_3D ( 'NONE', #780, #11090, #12559 ) ; +#15078 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.385416666666665900 ) ) ; +#15079 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.07638888888890114900 ) ) ; +#15080 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#15081 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.5868055555555482500 ) ) ; +#15082 = PLANE ( 'NONE', #13275 ) ; +#15083 = VECTOR ( 'NONE', #16683, 39.37007874015747400 ) ; +#15084 = ADVANCED_FACE ( 'NONE', ( #12908 ), #18271, .F. ) ; +#15085 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #16765, #3445, #12383 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 3 ), + ( 0.9772727272727272900, 0.9782605571716657100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9801487645414784800, 0.9706514210710242000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#15086 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#15087 = PLANE ( 'NONE', #7113 ) ; +#15088 = CONICAL_SURFACE ( 'NONE', #4921, 0.3144999999999991100, 0.3490658503988666700 ) ; +#15089 = VERTEX_POINT ( 'NONE', #13811 ) ; +#15090 = DIRECTION ( 'NONE', ( -0.7116271114718255600, -0.7025573672080209800, 0.0000000000000000000 ) ) ; +#15091 = CARTESIAN_POINT ( 'NONE', ( -2.995524686094753500E-018, -3.401646013411981300E-017, -1.174024639073302500 ) ) ; +#15092 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.9270833333333291500 ) ) ; +#15093 = EDGE_CURVE ( 'NONE', #546, #12229, #4607, .T. ) ; +#15094 = VECTOR ( 'NONE', #1938, 39.37007874015748900 ) ; +#15095 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.128472222222219700 ) ) ; +#15096 = ADVANCED_FACE ( 'NONE', ( #11743 ), #16833, .T. ) ; +#15097 = ORIENTED_EDGE ( 'NONE', *, *, #14895, .F. ) ; +#15098 = CARTESIAN_POINT ( 'NONE', ( -2.083538972917667400E-016, 7.652497141346195300E-017, 3.802149639073269400 ) ) ; +#15099 = VECTOR ( 'NONE', #12587, 39.37007874015748900 ) ; +#15100 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#15101 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.272569444444442900 ) ) ; +#15102 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.416666666666666100 ) ) ; +#15103 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.493055555555555600 ) ) ; +#15104 = EDGE_CURVE ( 'NONE', #15922, #2364, #3455, .T. ) ; +#15105 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15106 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#15107 = CARTESIAN_POINT ( 'NONE', ( 0.2957133863780081500, 0.07438903108139045800, 0.1596278275902670300 ) ) ; +#15108 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.6527777777777710200 ) ) ; +#15109 = AXIS2_PLACEMENT_3D ( 'NONE', #5540, #14181, #5471 ) ; +#15110 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15111 = CIRCLE ( 'NONE', #9116, 0.4687475818742580200 ) ; +#15112 = ORIENTED_EDGE ( 'NONE', *, *, #15460, .F. ) ; +#15113 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.1701388888888788200 ) ) ; +#15114 = LINE ( 'NONE', #3741, #16746 ) ; +#15115 = VERTEX_POINT ( 'NONE', #10783 ) ; +#15116 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.000000000000000000, 0.0000000000000000000 ) ) ; +#15117 = CIRCLE ( 'NONE', #5963, 0.4610132068742565100 ) ; +#15118 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.4079861111111026100 ) ) ; +#15119 = CARTESIAN_POINT ( 'NONE', ( 0.2849503622822099300, 0.03822701946176003400, 0.1128901252609780000 ) ) ; +#15120 = EDGE_CURVE ( 'NONE', #9928, #9036, #12678, .T. ) ; +#15121 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.1250000000000130200 ) ) ; +#15122 = ORIENTED_EDGE ( 'NONE', *, *, #16795, .F. ) ; +#15123 = DIRECTION ( 'NONE', ( 1.000000000000000000, 3.907985046680550400E-014, 0.0000000000000000000 ) ) ; +#15124 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.1840277777777912200 ) ) ; +#15125 = FACE_OUTER_BOUND ( 'NONE', #3747, .T. ) ; +#15126 = EDGE_CURVE ( 'NONE', #324, #7601, #14975, .T. ) ; +#15127 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.6163194444444374300 ) ) ; +#15128 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.2083333333333232400 ) ) ; +#15129 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.1631944444444339800 ) ) ; +#15130 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15131 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.3923611111111025000 ) ) ; +#15132 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.177083333333330800 ) ) ; +#15133 = EDGE_CURVE ( 'NONE', #1891, #900, #4542, .T. ) ; +#15134 = CIRCLE ( 'NONE', #17737, 0.4687475818742614100 ) ; +#15135 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#15136 = VECTOR ( 'NONE', #373, 39.37007874015748100 ) ; +#15137 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323613700 ) ) ; +#15138 = ORIENTED_EDGE ( 'NONE', *, *, #8793, .F. ) ; +#15139 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.048611111111107800 ) ) ; +#15140 = ORIENTED_EDGE ( 'NONE', *, *, #14440, .T. ) ; +#15141 = FACE_OUTER_BOUND ( 'NONE', #11674, .T. ) ; +#15142 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.07986111111112316500 ) ) ; +#15143 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.5208333333333257100 ) ) ; +#15144 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.3749999999999909500 ) ) ; +#15145 = ORIENTED_EDGE ( 'NONE', *, *, #4419, .F. ) ; +#15146 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#15147 = FACE_OUTER_BOUND ( 'NONE', #8140, .T. ) ; +#15148 = FACE_BOUND ( 'NONE', #3186, .T. ) ; +#15149 = ORIENTED_EDGE ( 'NONE', *, *, #7038, .F. ) ; +#15150 = EDGE_CURVE ( 'NONE', #11519, #7163, #8761, .T. ) ; +#15151 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#15152 = VECTOR ( 'NONE', #7197, 39.37007874015748900 ) ; +#15153 = VECTOR ( 'NONE', #12515, 39.37007874015748100 ) ; +#15154 = VERTEX_POINT ( 'NONE', #10916 ) ; +#15155 = AXIS2_PLACEMENT_3D ( 'NONE', #6146, #10610, #13444 ) ; +#15156 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.7465277777777720200 ) ) ; +#15157 = EDGE_CURVE ( 'NONE', #1988, #33, #7158, .T. ) ; +#15158 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.024305555555552200 ) ) ; +#15159 = ORIENTED_EDGE ( 'NONE', *, *, #7273, .F. ) ; +#15160 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#15161 = AXIS2_PLACEMENT_3D ( 'NONE', #16579, #8014, #7897 ) ; +#15162 = EDGE_LOOP ( 'NONE', ( #6232, #15953, #11345, #7773 ) ) ; +#15163 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.418402777777777500 ) ) ; +#15164 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #4166, #14397, #17426, #6947, #17366, #12856, #15686, #5431, #8413 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3409090909090908800, 0.3446969696969697200, 0.3484848484848485100, 0.3522727272727272900, 0.3560606060606060800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#15165 = CARTESIAN_POINT ( 'NONE', ( 0.3144999999999991100, -3.200399073352503800E-016, 1.827040330732674400 ) ) ; +#15166 = EDGE_LOOP ( 'NONE', ( #13309, #15246, #1009, #7119 ) ) ; +#15167 = ORIENTED_EDGE ( 'NONE', *, *, #11316, .T. ) ; +#15168 = CYLINDRICAL_SURFACE ( 'NONE', #18115, 0.3125000000000008300 ) ; +#15169 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#15170 = CONICAL_SURFACE ( 'NONE', #3096, 0.4610132068742565100, 0.1745329251994272000 ) ; +#15171 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15172 = ORIENTED_EDGE ( 'NONE', *, *, #1650, .F. ) ; +#15173 = ORIENTED_EDGE ( 'NONE', *, *, #10082, .T. ) ; +#15174 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.7118055555555491400 ) ) ; +#15175 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15176 = FACE_OUTER_BOUND ( 'NONE', #18055, .T. ) ; +#15177 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.1493055555555453100 ) ) ; +#15178 = ADVANCED_FACE ( 'NONE', ( #8076 ), #3230, .F. ) ; +#15179 = EDGE_CURVE ( 'NONE', #12827, #8325, #11078, .T. ) ; +#15180 = ORIENTED_EDGE ( 'NONE', *, *, #9328, .F. ) ; +#15181 = ORIENTED_EDGE ( 'NONE', *, *, #18105, .T. ) ; +#15182 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.1649305555555452300 ) ) ; +#15183 = AXIS2_PLACEMENT_3D ( 'NONE', #17948, #17757, #16256 ) ; +#15184 = CARTESIAN_POINT ( 'NONE', ( 0.2154811238112824000, -0.4162837743582954400, 1.143750000000000000 ) ) ; +#15185 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15186 = ORIENTED_EDGE ( 'NONE', *, *, #6527, .T. ) ; +#15187 = FACE_OUTER_BOUND ( 'NONE', #2539, .T. ) ; +#15188 = LINE ( 'NONE', #12280, #456 ) ; +#15189 = VERTEX_POINT ( 'NONE', #12647 ) ; +#15190 = DIRECTION ( 'NONE', ( 0.8234587683563838700, 0.5673761158323350500, 0.0000000000000000000 ) ) ; +#15191 = ORIENTED_EDGE ( 'NONE', *, *, #12573, .T. ) ; +#15192 = FACE_OUTER_BOUND ( 'NONE', #18688, .T. ) ; +#15193 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.2013888888889024100 ) ) ; +#15194 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15195 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.09722222222223492200 ) ) ; +#15196 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15197 = ADVANCED_FACE ( 'NONE', ( #8528 ), #2765, .T. ) ; +#15198 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.2829861111111016100 ) ) ; +#15199 = PLANE ( 'NONE', #3656 ) ; +#15200 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.559027777777778100 ) ) ; +#15201 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.9444444444444403100 ) ) ; +#15202 = AXIS2_PLACEMENT_3D ( 'NONE', #7965, #2114, #3573 ) ; +#15203 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.215277777777775500 ) ) ; +#15204 = PLANE ( 'NONE', #822 ) ; +#15205 = ADVANCED_FACE ( 'NONE', ( #1839 ), #702, .T. ) ; +#15206 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.055555555555552200 ) ) ; +#15207 = ORIENTED_EDGE ( 'NONE', *, *, #9054, .F. ) ; +#15208 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.1284722222222347600 ) ) ; +#15209 = EDGE_LOOP ( 'NONE', ( #14208, #13442, #9657, #6574 ) ) ; +#15210 = ORIENTED_EDGE ( 'NONE', *, *, #5981, .T. ) ; +#15211 = VECTOR ( 'NONE', #2800, 39.37007874015748100 ) ; +#15212 = VECTOR ( 'NONE', #113, 39.37007874015748900 ) ; +#15213 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.3020833333333239300 ) ) ; +#15214 = ORIENTED_EDGE ( 'NONE', *, *, #5650, .F. ) ; +#15215 = EDGE_LOOP ( 'NONE', ( #15933, #17750, #4442, #9761 ) ) ; +#15216 = EDGE_CURVE ( 'NONE', #4161, #17802, #927, .T. ) ; +#15217 = LINE ( 'NONE', #14109, #8314 ) ; +#15218 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.062499999999996700 ) ) ; +#15219 = CARTESIAN_POINT ( 'NONE', ( -0.04710524684730639500, 0.4663771630552400700, 1.588758826628429600 ) ) ; +#15220 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#15221 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.7256944444444383100 ) ) ; +#15222 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.041666666666663200 ) ) ; +#15223 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323599100 ) ) ; +#15224 = ORIENTED_EDGE ( 'NONE', *, *, #6356, .T. ) ; +#15225 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.590985962198545200 ) ) ; +#15226 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.6319444444444376500 ) ) ; +#15227 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.6562499999999936700 ) ) ; +#15228 = AXIS2_PLACEMENT_3D ( 'NONE', #13999, #5160, #800 ) ; +#15229 = ORIENTED_EDGE ( 'NONE', *, *, #7393, .F. ) ; +#15230 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.7847222222222168800 ) ) ; +#15231 = VECTOR ( 'NONE', #11462, 39.37007874015748100 ) ; +#15232 = EDGE_LOOP ( 'NONE', ( #4175, #16249, #11258, #10351 ) ) ; +#15233 = PLANE ( 'NONE', #8770 ) ; +#15234 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.286458333333331900 ) ) ; +#15235 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#15236 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#15237 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#15238 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.7777777777777720200 ) ) ; +#15239 = CARTESIAN_POINT ( 'NONE', ( 2.792473528844519900E-016, 7.919037516996972600E-017, 3.802149639073262800 ) ) ; +#15240 = VERTEX_POINT ( 'NONE', #9624 ) ; +#15241 = ORIENTED_EDGE ( 'NONE', *, *, #1438, .F. ) ; +#15242 = ORIENTED_EDGE ( 'NONE', *, *, #16492, .T. ) ; +#15243 = ORIENTED_EDGE ( 'NONE', *, *, #14623, .T. ) ; +#15244 = CIRCLE ( 'NONE', #4777, 0.4610132068742565100 ) ; +#15245 = EDGE_CURVE ( 'NONE', #6476, #8789, #14514, .T. ) ; +#15246 = ORIENTED_EDGE ( 'NONE', *, *, #17729, .T. ) ; +#15247 = EDGE_CURVE ( 'NONE', #483, #2991, #17054, .T. ) ; +#15248 = AXIS2_PLACEMENT_3D ( 'NONE', #9111, #3117, #1890 ) ; +#15249 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.04340277777776654900 ) ) ; +#15250 = DIRECTION ( 'NONE', ( -0.7940695057417644900, 0.6078269655510768500, 0.0000000000000000000 ) ) ; +#15251 = CARTESIAN_POINT ( 'NONE', ( 0.1423918848578190300, 0.2525924871977858200, 0.1196498440582645500 ) ) ; +#15252 = AXIS2_PLACEMENT_3D ( 'NONE', #18382, #9562, #16960 ) ; +#15253 = CARTESIAN_POINT ( 'NONE', ( -0.4375000000000000600, -5.463695987328526400E-016, 1.562500000000000000 ) ) ; +#15254 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.1458333333333465000 ) ) ; +#15255 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, 1.250000000000000000 ) ) ; +#15256 = CARTESIAN_POINT ( 'NONE', ( 0.1257767296168668100, -0.4435238338571802500, 1.440511179676400500 ) ) ; +#15257 = CARTESIAN_POINT ( 'NONE', ( -0.2802162586133528100, 0.3660765293230648900, 1.484375000000000200 ) ) ; +#15258 = VERTEX_POINT ( 'NONE', #12582 ) ; +#15259 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.3593749999999911700 ) ) ; +#15260 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.8923611111111065000 ) ) ; +#15261 = EDGE_LOOP ( 'NONE', ( #12715, #14900, #13394, #17160, #12034, #18907 ) ) ; +#15262 = FACE_OUTER_BOUND ( 'NONE', #13890, .T. ) ; +#15263 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.017361111111107800 ) ) ; +#15264 = ORIENTED_EDGE ( 'NONE', *, *, #13500, .T. ) ; +#15265 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.06597222222223427000 ) ) ; +#15266 = EDGE_LOOP ( 'NONE', ( #15405, #7368, #17331, #3151 ) ) ; +#15267 = EDGE_CURVE ( 'NONE', #13232, #6068, #17975, .T. ) ; +#15268 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15269 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.3194444444444350400 ) ) ; +#15270 = EDGE_CURVE ( 'NONE', #16376, #17788, #16106, .T. ) ; +#15271 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.3819444444444356500 ) ) ; +#15272 = EDGE_CURVE ( 'NONE', #2181, #5062, #460, .T. ) ; +#15273 = ADVANCED_FACE ( 'NONE', ( #15646 ), #15770, .F. ) ; +#15274 = EDGE_LOOP ( 'NONE', ( #8109, #18449, #6536, #13115 ) ) ; +#15275 = AXIS2_PLACEMENT_3D ( 'NONE', #11637, #4365, #16065 ) ; +#15276 = ORIENTED_EDGE ( 'NONE', *, *, #1094, .F. ) ; +#15277 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.7013888888888825100 ) ) ; +#15278 = DIRECTION ( 'NONE', ( 0.9151887321064256000, 0.4030255384283147900, 0.0000000000000000000 ) ) ; +#15279 = ORIENTED_EDGE ( 'NONE', *, *, #16894, .F. ) ; +#15280 = CARTESIAN_POINT ( 'NONE', ( -0.3829490853735684200, 0.2566771803726103900, 1.440511179676380300 ) ) ; +#15281 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.7395833333333277100 ) ) ; +#15282 = LINE ( 'NONE', #1740, #3311 ) ; +#15283 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.7361111111111053900 ) ) ; +#15284 = ORIENTED_EDGE ( 'NONE', *, *, #6829, .T. ) ; +#15285 = ADVANCED_FACE ( 'NONE', ( #6197 ), #6978, .F. ) ; +#15286 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#15287 = ORIENTED_EDGE ( 'NONE', *, *, #8467, .T. ) ; +#15288 = ADVANCED_FACE ( 'NONE', ( #10825 ), #18209, .T. ) ; +#15289 = CARTESIAN_POINT ( 'NONE', ( -2.037561028606424700E-016, 1.819708359927983100E-016, 3.802149639073250300 ) ) ; +#15290 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.380208333333332800 ) ) ; +#15291 = EDGE_CURVE ( 'NONE', #8689, #14726, #16840, .T. ) ; +#15292 = CARTESIAN_POINT ( 'NONE', ( -0.1665460521599570800, -0.2557712361828204400, -1.528493477258983100 ) ) ; +#15293 = DIRECTION ( 'NONE', ( -0.6661089358369458600, -0.7458544667682640600, 0.0000000000000000000 ) ) ; +#15294 = CALENDAR_DATE ( 2024, 16, 6 ) ; +#15295 = AXIS2_PLACEMENT_3D ( 'NONE', #2519, #5289, #15767 ) ; +#15296 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.5416666666666591900 ) ) ; +#15297 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.9062499999999954500 ) ) ; +#15298 = ORIENTED_EDGE ( 'NONE', *, *, #9221, .F. ) ; +#15299 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.4583333333333249300 ) ) ; +#15300 = DIRECTION ( 'NONE', ( 0.04737586595177958200, -0.1670605187719827700, -0.9848077530122083500 ) ) ; +#15301 = VECTOR ( 'NONE', #5330, 39.37007874015748100 ) ; +#15302 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.1614583333333229300 ) ) ; +#15303 = CARTESIAN_POINT ( 'NONE', ( -0.4219140922835708000, 0.1858000959230553800, 1.592116737595687900 ) ) ; +#15304 = CARTESIAN_POINT ( 'NONE', ( 0.2728205911520704100, 0.09386805503832595900, 0.1143536911285550500 ) ) ; +#15305 = FACE_OUTER_BOUND ( 'NONE', #14456, .T. ) ; +#15306 = VERTEX_POINT ( 'NONE', #12828 ) ; +#15307 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323601300 ) ) ; +#15308 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.536458333333333700 ) ) ; +#15309 = FACE_OUTER_BOUND ( 'NONE', #7526, .T. ) ; +#15310 = PLANE ( 'NONE', #16749 ) ; +#15311 = CARTESIAN_POINT ( 'NONE', ( 0.3293220670066986900, 0.3335734876985842500, 1.143750000000000000 ) ) ; +#15312 = CARTESIAN_POINT ( 'NONE', ( -0.04104193570986974800, 0.2649795619646558300, 1.259896156426998400 ) ) ; +#15313 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.2552083333333235400 ) ) ; +#15314 = CARTESIAN_POINT ( 'NONE', ( -0.1589412568245233400, 0.4327480257511604500, 1.484375000000000200 ) ) ; +#15315 = EDGE_CURVE ( 'NONE', #2851, #4834, #18421, .T. ) ; +#15316 = CARTESIAN_POINT ( 'NONE', ( -0.4606833792705949400, 0.01743562377178659700, 1.143750000000000000 ) ) ; +#15317 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#15318 = CARTESIAN_POINT ( 'NONE', ( -0.3238882248697046400, 0.3280694967582902200, 1.187613820323614800 ) ) ; +#15319 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.8506944444444392000 ) ) ; +#15320 = VECTOR ( 'NONE', #1291, 39.37007874015748900 ) ; +#15321 = DIRECTION ( 'NONE', ( -1.000000000000000000, 2.309263891220325900E-014, 0.0000000000000000000 ) ) ; +#15322 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#15323 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.184027777777775700 ) ) ; +#15324 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.131944444444441500 ) ) ; +#15325 = VECTOR ( 'NONE', #15486, 39.37007874015748100 ) ; +#15326 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.2708333333333234300 ) ) ; +#15327 = ORIENTED_EDGE ( 'NONE', *, *, #11221, .T. ) ; +#15328 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 0.04910803210131811600, 1.528000076388832400 ) ) ; +#15329 = FACE_BOUND ( 'NONE', #15914, .T. ) ; +#15330 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, 0.1006944444444569400 ) ) ; +#15331 = ORIENTED_EDGE ( 'NONE', *, *, #16462, .F. ) ; +#15332 = VECTOR ( 'NONE', #8333, 39.37007874015748100 ) ; +#15333 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.5902777777777704600 ) ) ; +#15334 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.031249999999996400 ) ) ; +#15335 = CARTESIAN_POINT ( 'NONE', ( -0.06919666627598859700, 0.4557905201830941800, 1.484375000000000200 ) ) ; +#15336 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -0.1443375672974062400, -1.562539370078740200 ) ) ; +#15337 = CARTESIAN_POINT ( 'NONE', ( 2.246643514571418600E-017, -2.551234510058983000E-016, 3.802149639073315200 ) ) ; +#15338 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15339 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.6180555555555489200 ) ) ; +#15340 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.9027777777777733500 ) ) ; +#15341 = FACE_OUTER_BOUND ( 'NONE', #13594, .T. ) ; +#15342 = VECTOR ( 'NONE', #8126, 39.37007874015748100 ) ; +#15343 = ORIENTED_EDGE ( 'NONE', *, *, #3182, .T. ) ; +#15344 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.210069444444442400 ) ) ; +#15345 = CARTESIAN_POINT ( 'NONE', ( 0.04710524684730958000, -0.4663771630552396300, 1.143750000000000000 ) ) ; +#15346 = CARTESIAN_POINT ( 'NONE', ( -0.1787465187854544200, -0.2470455195153648500, -1.528770415542352300 ) ) ; +#15348 = EDGE_CURVE ( 'NONE', #12243, #16376, #9202, .T. ) ; +#15347 = VECTOR ( 'NONE', #140, 39.37007874015748100 ) ; +#15349 = CARTESIAN_POINT ( 'NONE', ( -1.017047480238542200E-017, -2.687238932243362200E-016, 3.802149639073280500 ) ) ; +#15350 = CARTESIAN_POINT ( 'NONE', ( 0.04710524684729982400, 0.4663771630552405200, 1.143750000000000000 ) ) ; +#15351 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.5451388888888811800 ) ) ; +#15352 = AXIS2_PLACEMENT_3D ( 'NONE', #9061, #3255, #10403 ) ; +#15353 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15354 = ADVANCED_FACE ( 'NONE', ( #17491 ), #6659, .T. ) ; +#15355 = ORIENTED_EDGE ( 'NONE', *, *, #15741, .T. ) ; +#15356 = LINE ( 'NONE', #12378, #4533 ) ; +#15357 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.07118055555554435300 ) ) ; +#15358 = FACE_OUTER_BOUND ( 'NONE', #4162, .T. ) ; +#15359 = FACE_OUTER_BOUND ( 'NONE', #16322, .T. ) ; +#15360 = VERTEX_POINT ( 'NONE', #15906 ) ; +#15361 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, 0.1805555555555689000 ) ) ; +#15362 = VECTOR ( 'NONE', #12657, 39.37007874015748900 ) ; +#15363 = LINE ( 'NONE', #11359, #7550 ) ; +#15364 = ORIENTED_EDGE ( 'NONE', *, *, #5027, .F. ) ; +#15365 = CARTESIAN_POINT ( 'NONE', ( -0.4347510546871054000, -0.1533776299234526100, 1.590985962198545200 ) ) ; +#15366 = EDGE_CURVE ( 'NONE', #11496, #4230, #6443, .T. ) ; +#15367 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.473958333333333300 ) ) ; +#15368 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15369 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.201388888888886600 ) ) ; +#15370 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#15371 = ADVANCED_FACE ( 'NONE', ( #1361 ), #8583, .F. ) ; +#15372 = EDGE_CURVE ( 'NONE', #6951, #9514, #14490, .T. ) ; +#15373 = ORIENTED_EDGE ( 'NONE', *, *, #16216, .T. ) ; +#15374 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.2621527777777681300 ) ) ; +#15375 = CARTESIAN_POINT ( 'NONE', ( 0.07035757220612107200, -0.4634372746620862300, 1.143750000000000000 ) ) ; +#15376 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#15377 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #18261, #11036, #3435, #9356, #15218, #12518, #6386, #2017, #3690 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7045454545454545900, 0.7083333333333333700, 0.7121212121212121500, 0.7159090909090909400, 0.7196969696969697200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#15378 = CARTESIAN_POINT ( 'NONE', ( -0.3120386438412785500, -7.339574685704749600E-015, 0.1808219196579992600 ) ) ; +#15379 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15380 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.8993055555555509200 ) ) ; +#15381 = EDGE_CURVE ( 'NONE', #17280, #4048, #5965, .T. ) ; +#15382 = VERTEX_POINT ( 'NONE', #2523 ) ; +#15383 = AXIS2_PLACEMENT_3D ( 'NONE', #8050, #11011, #2192 ) ; +#15384 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15385 = ADVANCED_FACE ( 'NONE', ( #9901 ), #11605, .F. ) ; +#15386 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.149305555555553400 ) ) ; +#15387 = VERTEX_POINT ( 'NONE', #1241 ) ; +#15388 = VERTEX_POINT ( 'NONE', #9937 ) ; +#15389 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.2083333333333464400 ) ) ; +#15390 = CYLINDRICAL_SURFACE ( 'NONE', #4024, 0.4610132068742565100 ) ; +#15391 = VECTOR ( 'NONE', #9374, 39.37007874015749600 ) ; +#15392 = VECTOR ( 'NONE', #10468, 39.37007874015748100 ) ; +#15393 = ORIENTED_EDGE ( 'NONE', *, *, #1207, .T. ) ; +#15394 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#15395 = VECTOR ( 'NONE', #18221, 39.37007874015748900 ) ; +#15396 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.2534722222222122700 ) ) ; +#15397 = CARTESIAN_POINT ( 'NONE', ( 1.899200323792832800E-016, 2.416275900747809900E-016, -1.174024639073303100 ) ) ; +#15398 = ORIENTED_EDGE ( 'NONE', *, *, #17936, .F. ) ; +#15399 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.7118055555555491400 ) ) ; +#15400 = CARTESIAN_POINT ( 'NONE', ( -2.083538972917667400E-016, 7.652497141346195300E-017, -1.174024639073348400 ) ) ; +#15401 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323596900 ) ) ; +#15402 = EDGE_CURVE ( 'NONE', #15821, #528, #13587, .T. ) ; +#15403 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #18322, #6638, #2266, #8189, #6571, #12569, #7946, #6455, #18501 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7651515151515151400, 0.7689393939393939200, 0.7727272727272727100, 0.7765151515151514900, 0.7803030303030302800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#15404 = CARTESIAN_POINT ( 'NONE', ( -0.1521857739001980500, 0.2512114379064950800, -1.539773598651643900 ) ) ; +#15405 = ORIENTED_EDGE ( 'NONE', *, *, #6497, .T. ) ; +#15406 = ORIENTED_EDGE ( 'NONE', *, *, #12819, .F. ) ; +#15407 = FACE_OUTER_BOUND ( 'NONE', #17350, .T. ) ; +#15408 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.3472222222222131100 ) ) ; +#15409 = VECTOR ( 'NONE', #13337, 39.37007874015748900 ) ; +#15410 = AXIS2_PLACEMENT_3D ( 'NONE', #6119, #7488, #14818 ) ; +#15411 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#15412 = ORIENTED_EDGE ( 'NONE', *, *, #17587, .F. ) ; +#15413 = ORIENTED_EDGE ( 'NONE', *, *, #18713, .F. ) ; +#15414 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.6874999999999940000 ) ) ; +#15415 = LINE ( 'NONE', #18552, #2070 ) ; +#15416 = AXIS2_PLACEMENT_3D ( 'NONE', #17062, #3343, #3665 ) ; +#15417 = ORIENTED_EDGE ( 'NONE', *, *, #16977, .T. ) ; +#15418 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.7291666666666609700 ) ) ; +#15419 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15420 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676387000 ) ) ; +#15421 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.081597222222219200 ) ) ; +#15422 = ORIENTED_EDGE ( 'NONE', *, *, #10714, .T. ) ; +#15423 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.591590229135180700 ) ) ; +#15424 = DIRECTION ( 'NONE', ( 0.08772156263576202900, 0.9961450333403967200, 0.0000000000000000000 ) ) ; +#15425 = CARTESIAN_POINT ( 'NONE', ( -0.4592360163321193000, -0.04044079890273683000, 1.587900241027141200 ) ) ; +#15426 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.9131944444444399800 ) ) ; +#15427 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.5347222222222144400 ) ) ; +#15428 = CARTESIAN_POINT ( 'NONE', ( 0.06919666627598217200, 0.4557905201830951300, 1.440511179676384800 ) ) ; +#15429 = ORIENTED_EDGE ( 'NONE', *, *, #10346, .T. ) ; +#15430 = LINE ( 'NONE', #14466, #10819 ) ; +#15431 = VECTOR ( 'NONE', #10093, 39.37007874015748900 ) ; +#15432 = ORIENTED_EDGE ( 'NONE', *, *, #7583, .T. ) ; +#15433 = ORIENTED_EDGE ( 'NONE', *, *, #7956, .T. ) ; +#15434 = LINE ( 'NONE', #16577, #11525 ) ; +#15435 = EDGE_CURVE ( 'NONE', #3440, #11882, #5706, .T. ) ; +#15436 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.01909722222221074000 ) ) ; +#15437 = AXIS2_PLACEMENT_3D ( 'NONE', #464, #6366, #7676 ) ; +#15438 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#15439 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15440 = VERTEX_POINT ( 'NONE', #8901 ) ; +#15441 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#15442 = CARTESIAN_POINT ( 'NONE', ( -0.3144999999999991100, -3.585550491684345600E-016, 0.1874999999999998300 ) ) ; +#15443 = ORIENTED_EDGE ( 'NONE', *, *, #2805, .T. ) ; +#15444 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.467013888888888600 ) ) ; +#15445 = VERTEX_POINT ( 'NONE', #17715 ) ; +#15446 = CARTESIAN_POINT ( 'NONE', ( -0.2119256669269687600, -0.4094150566479519100, 1.592561465728329600 ) ) ; +#15447 = DIRECTION ( 'NONE', ( -0.1488963146160713600, 0.08935086513736351100, -0.9848077530122092400 ) ) ; +#15448 = FACE_OUTER_BOUND ( 'NONE', #7994, .T. ) ; +#15449 = EDGE_LOOP ( 'NONE', ( #7558, #5483, #11741, #15617 ) ) ; +#15450 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.3906249999999912800 ) ) ; +#15451 = ORIENTED_EDGE ( 'NONE', *, *, #4512, .T. ) ; +#15452 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15453 = DIRECTION ( 'NONE', ( 0.9949379478511802800, -0.1004911932742472700, -0.0000000000000000000 ) ) ; +#15454 = AXIS2_PLACEMENT_3D ( 'NONE', #9813, #810, #11245 ) ; +#15455 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.9756944444444403100 ) ) ; +#15456 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.8611111111111063900 ) ) ; +#15457 = ORIENTED_EDGE ( 'NONE', *, *, #14116, .F. ) ; +#15458 = ORIENTED_EDGE ( 'NONE', *, *, #4774, .F. ) ; +#15459 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.01736111111109918000 ) ) ; +#15460 = EDGE_CURVE ( 'NONE', #17072, #16899, #2517, .T. ) ; +#15461 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, 0.05555555555556793100 ) ) ; +#15462 = ORIENTED_EDGE ( 'NONE', *, *, #14473, .T. ) ; +#15463 = ADVANCED_FACE ( 'NONE', ( #17960 ), #8836, .F. ) ; +#15464 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323613700 ) ) ; +#15465 = CIRCLE ( 'NONE', #12213, 0.4687499999999995600 ) ; +#15466 = ORIENTED_EDGE ( 'NONE', *, *, #1960, .T. ) ; +#15467 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.7152777777777714600 ) ) ; +#15468 = CARTESIAN_POINT ( 'NONE', ( 0.1616077992682608800, -0.4400081984788842800, 1.484375000000000200 ) ) ; +#15469 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.1076388888888780400 ) ) ; +#15470 = CARTESIAN_POINT ( 'NONE', ( 0.1129513828691968400, 0.2653466451446502300, -1.545103590070273400 ) ) ; +#15471 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.1076388888888783200 ) ) ; +#15472 = EDGE_CURVE ( 'NONE', #15623, #11305, #15865, .T. ) ; +#15473 = CARTESIAN_POINT ( 'NONE', ( -2.662179528553768000E-016, 6.130200797989377100E-017, -1.174024639073348400 ) ) ; +#15474 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.4479166666666587500 ) ) ; +#15475 = AXIS2_PLACEMENT_3D ( 'NONE', #18517, #14068, #3820 ) ; +#15476 = ORIENTED_EDGE ( 'NONE', *, *, #2430, .T. ) ; +#15477 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.7916666666666614100 ) ) ; +#15478 = ORIENTED_EDGE ( 'NONE', *, *, #4827, .T. ) ; +#15479 = ADVANCED_FACE ( 'NONE', ( #14732 ), #10385, .F. ) ; +#15480 = CARTESIAN_POINT ( 'NONE', ( -0.06919666627598859700, 0.4557905201830941800, 1.143750000000000000 ) ) ; +#15481 = ORIENTED_EDGE ( 'NONE', *, *, #11439, .T. ) ; +#15482 = CONICAL_SURFACE ( 'NONE', #9984, 0.4687475818742574700, 0.1745329251994283100 ) ; +#15483 = ADVANCED_FACE ( 'NONE', ( #1148 ), #1491, .F. ) ; +#15484 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.105902777777774800 ) ) ; +#15485 = ORIENTED_EDGE ( 'NONE', *, *, #6994, .F. ) ; +#15486 = DIRECTION ( 'NONE', ( -0.9151887321064256000, -0.4030255384283147900, 0.0000000000000000000 ) ) ; +#15487 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.434027777777777700 ) ) ; +#15488 = ORIENTED_EDGE ( 'NONE', *, *, #10866, .F. ) ; +#15489 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.5868055555555482500 ) ) ; +#15490 = CARTESIAN_POINT ( 'NONE', ( -0.2119256669269687600, -0.4094150566479519100, 1.592561465728329600 ) ) ; +#15491 = VERTEX_POINT ( 'NONE', #2847 ) ; +#15492 = EDGE_CURVE ( 'NONE', #14802, #1988, #11502, .T. ) ; +#15493 = ORIENTED_EDGE ( 'NONE', *, *, #18999, .T. ) ; +#15494 = EDGE_CURVE ( 'NONE', #5036, #10140, #220, .T. ) ; +#15495 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, 0.03993055555556746000 ) ) ; +#15496 = VECTOR ( 'NONE', #16315, 39.37007874015748100 ) ; +#15497 = VERTEX_POINT ( 'NONE', #139 ) ; +#15498 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.6527777777777712400 ) ) ; +#15499 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#15500 = ORIENTED_EDGE ( 'NONE', *, *, #12264, .F. ) ; +#15501 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15502 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15503 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.407986111111110500 ) ) ; +#15504 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#15505 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.6041666666666597500 ) ) ; +#15506 = EDGE_LOOP ( 'NONE', ( #12171, #17148, #2042, #2902 ) ) ; +#15507 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.06770833333332206000 ) ) ; +#15508 = CARTESIAN_POINT ( 'NONE', ( 0.3070850166377935800, -0.3438487595863217700, 1.593467001493433100 ) ) ; +#15509 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.461805555555554900 ) ) ; +#15510 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.9027777777777730200 ) ) ; +#15511 = VERTEX_POINT ( 'NONE', #17650 ) ; +#15512 = CARTESIAN_POINT ( 'NONE', ( 0.3238882248696998100, 0.3280694967582948900, 1.593467001493433100 ) ) ; +#15513 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.8993055555555510300 ) ) ; +#15514 = ORIENTED_EDGE ( 'NONE', *, *, #15986, .F. ) ; +#15515 = APPROVAL_PERSON_ORGANIZATION ( #13928, #263, #14586 ) ; +#15516 = EDGE_LOOP ( 'NONE', ( #17136, #646, #11055, #5970 ) ) ; +#15517 = EDGE_CURVE ( 'NONE', #6075, #7662, #563, .T. ) ; +#15518 = DIRECTION ( 'NONE', ( 1.000000000000000000, 3.641531520770513500E-014, 0.0000000000000000000 ) ) ; +#15519 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.05555555555554388100 ) ) ; +#15520 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15522 = EDGE_CURVE ( 'NONE', #1637, #7727, #11972, .T. ) ; +#15521 = CONICAL_SURFACE ( 'NONE', #2560, 0.4687475818742554700, 0.1745329251994313900 ) ; +#15523 = AXIS2_PLACEMENT_3D ( 'NONE', #16289, #4707, #14950 ) ; +#15524 = CARTESIAN_POINT ( 'NONE', ( 0.01152533017185643900, 0.4608691177296606000, 1.484375000000000200 ) ) ; +#15525 = AXIS2_PLACEMENT_3D ( 'NONE', #17590, #8780, #11730 ) ; +#15526 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.4999999999999919500 ) ) ; +#15527 = CARTESIAN_POINT ( 'NONE', ( 2.360286478381765400E-016, 1.375514885581274000E-016, -1.174024639073248900 ) ) ; +#15528 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15529 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.02777777777776634100 ) ) ; +#15530 = VECTOR ( 'NONE', #4029, 39.37007874015748100 ) ; +#15531 = DIRECTION ( 'NONE', ( 0.4596954355469680700, 0.8880766332571098400, 0.0000000000000000000 ) ) ; +#15532 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15533 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.4166666666666584700 ) ) ; +#15534 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.5729166666666598600 ) ) ; +#15535 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15536 = LINE ( 'NONE', #3738, #12323 ) ; +#15537 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.057291666666663400 ) ) ; +#15538 = EDGE_CURVE ( 'NONE', #700, #6859, #2993, .T. ) ; +#15539 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.1736111111111243200 ) ) ; +#15540 = CARTESIAN_POINT ( 'NONE', ( -0.2215948431392785700, -0.1728347420474482300, 0.09386203875359826200 ) ) ; +#15541 = AXIS2_PLACEMENT_3D ( 'NONE', #12551, #3847, #18411 ) ; +#15542 = PLANE ( 'NONE', #4326 ) ; +#15543 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.9201388888888842900 ) ) ; +#15544 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.5555555555555480300 ) ) ; +#15545 = CARTESIAN_POINT ( 'NONE', ( -0.06919666627598536300, -0.4557905201830946300, 1.588758826628429600 ) ) ; +#15546 = VECTOR ( 'NONE', #1436, 39.37007874015748100 ) ; +#15547 = ORIENTED_EDGE ( 'NONE', *, *, #15270, .T. ) ; +#15548 = ADVANCED_FACE ( 'NONE', ( #10588 ), #10256, .F. ) ; +#15549 = VECTOR ( 'NONE', #16488, 39.37007874015748100 ) ; +#15550 = ORIENTED_EDGE ( 'NONE', *, *, #2640, .T. ) ; +#15551 = CONICAL_SURFACE ( 'NONE', #8830, 0.4687475818742581300, 0.1745329251994306200 ) ; +#15552 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, 0.1684027777777907500 ) ) ; +#15553 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.513888888888889300 ) ) ; +#15554 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#15555 = CARTESIAN_POINT ( 'NONE', ( -1.663862205346097300E-017, -3.831375498743707300E-018, -1.174024639073266500 ) ) ; +#15556 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.7083333333333271500 ) ) ; +#15557 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.526041666666666700 ) ) ; +#15558 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.548611111111111400 ) ) ; +#15559 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -0.09680963237430355300, 1.259867088197677200 ) ) ; +#15560 = DIRECTION ( 'NONE', ( 0.9685831611286293000, 0.2486898871648623200, 0.0000000000000000000 ) ) ; +#15561 = VECTOR ( 'NONE', #8681, 39.37007874015748100 ) ; +#15562 = ADVANCED_FACE ( 'NONE', ( #3669 ), #14271, .T. ) ; +#15563 = VERTEX_POINT ( 'NONE', #13213 ) ; +#15564 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.1996527777777676600 ) ) ; +#15565 = EDGE_CURVE ( 'NONE', #9895, #9314, #1824, .T. ) ; +#15566 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.468750000000000000 ) ) ; +#15567 = CARTESIAN_POINT ( 'NONE', ( -0.3122385636735703900, 0.3496192812976213800, 1.593467001493433100 ) ) ; +#15568 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.590308733529502500 ) ) ; +#15569 = CYLINDRICAL_SURFACE ( 'NONE', #15295, 0.4610132068742565100 ) ; +#15570 = ADVANCED_FACE ( 'NONE', ( #17033 ), #12700, .F. ) ; +#15571 = ORIENTED_EDGE ( 'NONE', *, *, #10919, .T. ) ; +#15572 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.9201388888888845100 ) ) ; +#15573 = CIRCLE ( 'NONE', #3634, 0.4687499999999995600 ) ; +#15574 = CARTESIAN_POINT ( 'NONE', ( 0.2360194556738232400, -0.4049927308685843900, 1.143750000000000000 ) ) ; +#15575 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.09027777777776656300 ) ) ; +#15576 = CARTESIAN_POINT ( 'NONE', ( 0.1034502481550414700, 0.4492562999771360100, 1.440511179676401200 ) ) ; +#15577 = ORIENTED_EDGE ( 'NONE', *, *, #6070, .T. ) ; +#15578 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323600600 ) ) ; +#15579 = FACE_OUTER_BOUND ( 'NONE', #14599, .T. ) ; +#15580 = FACE_OUTER_BOUND ( 'NONE', #16826, .T. ) ; +#15581 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.4791666666666584100 ) ) ; +#15582 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#15583 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #2298, #18466, #9529, #2182, #12483, #14084, #562, #2234, #3648, #12543, #9644, #11375 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 4 ), + ( 2.380733176189871200E-007, 0.001851555320830852700, 0.003702872568344086500, 0.004628531192100704200, 0.005554189815857320200, 0.007405507063370557500 ), + .UNSPECIFIED. ) ; +#15584 = LINE ( 'NONE', #18256, #15153 ) ; +#15585 = ORIENTED_EDGE ( 'NONE', *, *, #10595, .T. ) ; +#15586 = ORIENTED_EDGE ( 'NONE', *, *, #8471, .T. ) ; +#15587 = DIRECTION ( 'NONE', ( 0.9297764858882536800, -0.3681245526846719200, 0.0000000000000000000 ) ) ; +#15588 = CARTESIAN_POINT ( 'NONE', ( 0.08654720059072437700, 0.2761813849502179900, -1.544534637001907700 ) ) ; +#15589 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, 0.08680555555556776500 ) ) ; +#15590 = LINE ( 'NONE', #11729, #19059 ) ; +#15591 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.590985962198545200 ) ) ; +#15592 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -1.388888888888888000 ) ) ; +#15593 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.5069444444444369800 ) ) ; +#15594 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.5138888888888814000 ) ) ; +#15595 = ORIENTED_EDGE ( 'NONE', *, *, #4154, .T. ) ; +#15596 = EDGE_CURVE ( 'NONE', #2552, #13408, #5044, .T. ) ; +#15597 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15598 = EDGE_CURVE ( 'NONE', #7122, #15440, #15415, .T. ) ; +#15599 = LINE ( 'NONE', #11413, #875 ) ; +#15600 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#15601 = FACE_OUTER_BOUND ( 'NONE', #17964, .T. ) ; +#15602 = LINE ( 'NONE', #2019, #1101 ) ; +#15603 = ORIENTED_EDGE ( 'NONE', *, *, #11100, .T. ) ; +#15604 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.2743055555555457000 ) ) ; +#15605 = AXIS2_PLACEMENT_3D ( 'NONE', #14751, #16004, #10678 ) ; +#15606 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#15607 = FACE_OUTER_BOUND ( 'NONE', #11210, .T. ) ; +#15608 = CONICAL_SURFACE ( 'NONE', #16698, 0.4610132068742565100, 0.1745329251994287300 ) ; +#15609 = ORIENTED_EDGE ( 'NONE', *, *, #18440, .F. ) ; +#15610 = VERTEX_POINT ( 'NONE', #1038 ) ; +#15611 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #6518, #7997, #12986, #7310, #4350, #12924, #1457, #10157, #18975 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5075757575757575700, 0.5113636363636363500, 0.5151515151515151400, 0.5189393939393940300, 0.5227272727272727100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#15612 = VERTEX_POINT ( 'NONE', #3860 ) ; +#15613 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, 0.1718750000000130500 ) ) ; +#15614 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.475694444444444600 ) ) ; +#15615 = CARTESIAN_POINT ( 'NONE', ( 0.2644999999999991200, -3.585550491684345600E-016, 0.1963163490354230300 ) ) ; +#15616 = ORIENTED_EDGE ( 'NONE', *, *, #4658, .F. ) ; +#15617 = ORIENTED_EDGE ( 'NONE', *, *, #6864, .F. ) ; +#15618 = FACE_OUTER_BOUND ( 'NONE', #4193, .T. ) ; +#15619 = CYLINDRICAL_SURFACE ( 'NONE', #18173, 0.3125000000000008300 ) ; +#15620 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.5798611111111039400 ) ) ; +#15621 = ORIENTED_EDGE ( 'NONE', *, *, #1203, .T. ) ; +#15622 = CARTESIAN_POINT ( 'NONE', ( 1.711129764798747200E-016, -2.552917160122753800E-016, 3.802149639073308100 ) ) ; +#15623 = VERTEX_POINT ( 'NONE', #15812 ) ; +#15624 = EDGE_CURVE ( 'NONE', #17944, #3845, #16809, .T. ) ; +#15625 = VECTOR ( 'NONE', #2300, 39.37007874015748100 ) ; +#15626 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.196180555555553100 ) ) ; +#15627 = ORIENTED_EDGE ( 'NONE', *, *, #15653, .T. ) ; +#15628 = EDGE_CURVE ( 'NONE', #1061, #2991, #4129, .T. ) ; +#15629 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.1857638888888784300 ) ) ; +#15630 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15631 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.489583333333333300 ) ) ; +#15632 = DIRECTION ( 'NONE', ( 0.9685831611286327400, -0.2486898871648483300, 0.0000000000000000000 ) ) ; +#15633 = CARTESIAN_POINT ( 'NONE', ( 0.4606833792705947200, 0.01743562377179322700, 1.587900241027141400 ) ) ; +#15634 = EDGE_CURVE ( 'NONE', #700, #11021, #5265, .T. ) ; +#15635 = AXIS2_PLACEMENT_3D ( 'NONE', #9013, #173, #14716 ) ; +#15636 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.8715277777777731300 ) ) ; +#15637 = AXIS2_PLACEMENT_3D ( 'NONE', #4718, #16507, #10525 ) ; +#15638 = EDGE_LOOP ( 'NONE', ( #17463, #10263, #6657, #1837 ) ) ; +#15639 = ORIENTED_EDGE ( 'NONE', *, *, #18914, .F. ) ; +#15640 = EDGE_LOOP ( 'NONE', ( #887, #17053, #17254, #4595, #15595, #18418 ) ) ; +#15641 = CIRCLE ( 'NONE', #1016, 0.3114846310392944700 ) ; +#15642 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.468750000000000000 ) ) ; +#15643 = FACE_OUTER_BOUND ( 'NONE', #5953, .T. ) ; +#15644 = ORIENTED_EDGE ( 'NONE', *, *, #3787, .F. ) ; +#15645 = ORIENTED_EDGE ( 'NONE', *, *, #12013, .T. ) ; +#15646 = FACE_OUTER_BOUND ( 'NONE', #5775, .T. ) ; +#15647 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#15648 = ADVANCED_FACE ( 'NONE', ( #17264 ), #11280, .F. ) ; +#15649 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.1319444444444335700 ) ) ; +#15650 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.5312499999999922300 ) ) ; +#15651 = CARTESIAN_POINT ( 'NONE', ( -0.3122385636735703900, 0.3496192812976213800, 1.143750000000000000 ) ) ; +#15652 = DIRECTION ( 'NONE', ( 0.08743372756788521400, -0.1500301066140692100, -0.9848077530122089100 ) ) ; +#15653 = EDGE_CURVE ( 'NONE', #2557, #12845, #9449, .T. ) ; +#15654 = CARTESIAN_POINT ( 'NONE', ( -0.07302678232906477400, 0.2827643601830479600, -1.541447822066506400 ) ) ; +#15655 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.1006944444444566700 ) ) ; +#15656 = ORIENTED_EDGE ( 'NONE', *, *, #4461, .T. ) ; +#15657 = AXIS2_PLACEMENT_3D ( 'NONE', #10177, #4372, #2883 ) ; +#15658 = CARTESIAN_POINT ( 'NONE', ( 0.1589412568245264500, -0.4327480257511592800, 1.484375000000000200 ) ) ; +#15659 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.02777777777776635100 ) ) ; +#15660 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.4618055555555476400 ) ) ; +#15661 = VERTEX_POINT ( 'NONE', #3996 ) ; +#15662 = EDGE_LOOP ( 'NONE', ( #2112, #8375, #7598, #13814 ) ) ; +#15663 = AXIS2_PLACEMENT_3D ( 'NONE', #5568, #2626, #15801 ) ; +#15664 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.6979166666666606300 ) ) ; +#15665 = FACE_OUTER_BOUND ( 'NONE', #4582, .T. ) ; +#15666 = CYLINDRICAL_SURFACE ( 'NONE', #12470, 0.4610132068742565100 ) ; +#15667 = ADVANCED_FACE ( 'NONE', ( #18876 ), #13110, .T. ) ; +#15668 = ORIENTED_EDGE ( 'NONE', *, *, #7877, .T. ) ; +#15669 = ORIENTED_EDGE ( 'NONE', *, *, #2640, .F. ) ; +#15670 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15671 = LINE ( 'NONE', #14949, #14746 ) ; +#15672 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #14259, #15728, #7636, #9063, #16313, #4783, #17744, #6010, #16240 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5984848484848485100, 0.6022727272727272900, 0.6060606060606060800, 0.6098484848484848600, 0.6136363636363636500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#15673 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.9131944444444397600 ) ) ; +#15674 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.2083333333333235200 ) ) ; +#15675 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15676 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.3854166666666578000 ) ) ; +#15677 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.07638888888887764000 ) ) ; +#15678 = EDGE_LOOP ( 'NONE', ( #4336, #17682, #12630, #14307 ) ) ; +#15679 = ORIENTED_EDGE ( 'NONE', *, *, #4958, .F. ) ; +#15680 = VECTOR ( 'NONE', #14416, 39.37007874015748900 ) ; +#15681 = VERTEX_POINT ( 'NONE', #2574 ) ; +#15682 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.243055555555553800 ) ) ; +#15683 = EDGE_CURVE ( 'NONE', #12934, #6398, #3139, .T. ) ; +#15684 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, 0.05381944444445663900 ) ) ; +#15685 = CARTESIAN_POINT ( 'NONE', ( -0.1662944129873356300, 0.2615809710971825400, 0.1734969272111182000 ) ) ; +#15686 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.9652777777777737900 ) ) ; +#15687 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.2986111111111018300 ) ) ; +#15688 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.303819444444442900 ) ) ; +#15689 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.020833333333329700 ) ) ; +#15690 = ORIENTED_EDGE ( 'NONE', *, *, #16069, .T. ) ; +#15691 = CARTESIAN_POINT ( 'NONE', ( -1.901255294220791700E-017, -2.836574622358640500E-017, -1.174024639073298200 ) ) ; +#15692 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#15693 = ORIENTED_EDGE ( 'NONE', *, *, #9583, .T. ) ; +#15694 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.1163194444444336400 ) ) ; +#15695 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.343749999999999100 ) ) ; +#15696 = CARTESIAN_POINT ( 'NONE', ( -0.3685350091390598400, 0.2896696558821318900, 1.143750000000000000 ) ) ; +#15697 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15698 = ORIENTED_EDGE ( 'NONE', *, *, #8224, .F. ) ; +#15699 = LINE ( 'NONE', #1376, #9950 ) ; +#15700 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.9062499999999956700 ) ) ; +#15701 = ORIENTED_EDGE ( 'NONE', *, *, #1151, .F. ) ; +#15702 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15703 = CARTESIAN_POINT ( 'NONE', ( 0.04710524684730957300, -0.4663771630552396300, 1.484375000000000200 ) ) ; +#15704 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15705 = DIRECTION ( 'NONE', ( -0.02499999999999999100, -0.9996874511566102800, 0.0000000000000000000 ) ) ; +#15706 = ORIENTED_EDGE ( 'NONE', *, *, #16369, .F. ) ; +#15707 = VERTEX_POINT ( 'NONE', #8185 ) ; +#15708 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.5069444444444365400 ) ) ; +#15709 = CARTESIAN_POINT ( 'NONE', ( 0.07035793515936779300, -0.4634396653935771200, 1.143750000000000000 ) ) ; +#15710 = VECTOR ( 'NONE', #16771, 39.37007874015748100 ) ; +#15711 = DIRECTION ( 'NONE', ( -0.9921147013144795400, 0.1253332335642905500, 0.0000000000000000000 ) ) ; +#15712 = ORIENTED_EDGE ( 'NONE', *, *, #888, .T. ) ; +#15713 = CARTESIAN_POINT ( 'NONE', ( -0.4347510546871065100, 0.1533776299234495300, 1.484375000000000200 ) ) ; +#15714 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 1.147376157338990600E-014 ) ) ; +#15715 = EDGE_CURVE ( 'NONE', #4495, #18299, #11054, .T. ) ; +#15716 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#15717 = ORIENTED_EDGE ( 'NONE', *, *, #278, .T. ) ; +#15718 = DIRECTION ( 'NONE', ( -0.06794052811688440500, -0.1598054262102611700, 0.9848077530122088000 ) ) ; +#15719 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15720 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.5138888888888814000 ) ) ; +#15721 = AXIS2_PLACEMENT_3D ( 'NONE', #11239, #2529, #9805 ) ; +#15722 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.6874999999999940000 ) ) ; +#15723 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15724 = ORIENTED_EDGE ( 'NONE', *, *, #16897, .T. ) ; +#15725 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.9895833333333292600 ) ) ; +#15726 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.03819444444443322700 ) ) ; +#15727 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15728 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.5104166666666589700 ) ) ; +#15729 = VERTEX_POINT ( 'NONE', #18680 ) ; +#15730 = CARTESIAN_POINT ( 'NONE', ( 0.3624522803384160900, -0.2848886122504168400, 1.593375490995827300 ) ) ; +#15731 = VERTEX_POINT ( 'NONE', #9790 ) ; +#15732 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.3194444444444350400 ) ) ; +#15733 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#15734 = CARTESIAN_POINT ( 'NONE', ( 0.3953002468276911000, -0.2372148641431489300, 1.592921120922338200 ) ) ; +#15735 = EDGE_CURVE ( 'NONE', #1593, #9477, #8990, .T. ) ; +#15736 = CYLINDRICAL_SURFACE ( 'NONE', #3302, 0.3125000000000008300 ) ; +#15737 = ADVANCED_FACE ( 'NONE', ( #10367 ), #12888, .T. ) ; +#15738 = ORIENTED_EDGE ( 'NONE', *, *, #8223, .T. ) ; +#15739 = EDGE_CURVE ( 'NONE', #9544, #11445, #8506, .T. ) ; +#15740 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.385416666666666100 ) ) ; +#15741 = EDGE_CURVE ( 'NONE', #12983, #14364, #12427, .T. ) ; +#15742 = AXIS2_PLACEMENT_3D ( 'NONE', #17631, #8817, #7464 ) ; +#15743 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, 0.04687500000001204600 ) ) ; +#15744 = ORIENTED_EDGE ( 'NONE', *, *, #11807, .T. ) ; +#15745 = AXIS2_PLACEMENT_3D ( 'NONE', #7675, #6177, #7610 ) ; +#15746 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #7942, #15642, #3358, #2081, #6828, #14168, #12314, #17142, #6515 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.9318181818181818800, 0.9356060606060606600, 0.9393939393939394500, 0.9431818181818182300, 0.9469696969696970200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#15747 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.07638888888887764000 ) ) ; +#15748 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.222222222222220100 ) ) ; +#15749 = ORIENTED_EDGE ( 'NONE', *, *, #15715, .T. ) ; +#15750 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.157986111111108500 ) ) ; +#15751 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.472222222222222100 ) ) ; +#15752 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15753 = ADVANCED_FACE ( 'NONE', ( #16569 ), #12660, .T. ) ; +#15754 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.1579861111111006400 ) ) ; +#15755 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15756 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.322916666666665400 ) ) ; +#15757 = VECTOR ( 'NONE', #5199, 39.37007874015748100 ) ; +#15758 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.7604166666666610800 ) ) ; +#15759 = EDGE_CURVE ( 'NONE', #12187, #10152, #3432, .T. ) ; +#15760 = DIRECTION ( 'NONE', ( 0.6661089358369508600, -0.7458544667682596200, 0.0000000000000000000 ) ) ; +#15761 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15762 = CIRCLE ( 'NONE', #6644, 0.4610132068742565100 ) ; +#15763 = EDGE_LOOP ( 'NONE', ( #9057, #7976, #4330, #7584 ) ) ; +#15764 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.7777777777777721300 ) ) ; +#15765 = EDGE_CURVE ( 'NONE', #9694, #138, #2053, .T. ) ; +#15766 = FACE_OUTER_BOUND ( 'NONE', #5925, .T. ) ; +#15767 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15768 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.6440972222222156600 ) ) ; +#15769 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.4131944444444358200 ) ) ; +#15770 = PLANE ( 'NONE', #7624 ) ; +#15771 = CARTESIAN_POINT ( 'NONE', ( -0.1616077992682548600, -0.4400081984788873900, 1.484375000000000200 ) ) ; +#15772 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.1354166666666793400 ) ) ; +#15773 = PLANE ( 'NONE', #2790 ) ; +#15774 = DIRECTION ( 'NONE', ( -0.9744976787610178900, 0.2243975804000302200, 0.0000000000000000000 ) ) ; +#15775 = DIRECTION ( 'NONE', ( -0.8660254037844384900, -0.5000000000000002200, 0.0000000000000000000 ) ) ; +#15776 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.2847222222222128800 ) ) ; +#15777 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.6319444444444378700 ) ) ; +#15778 = CYLINDRICAL_SURFACE ( 'NONE', #10088, 0.4610132068742565100 ) ; +#15779 = EDGE_LOOP ( 'NONE', ( #2064, #6896, #14523, #9693 ) ) ; +#15780 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#15781 = FACE_BOUND ( 'NONE', #18044, .T. ) ; +#15782 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.9826388888888847300 ) ) ; +#15783 = EDGE_LOOP ( 'NONE', ( #6664, #7921, #4837, #6965 ) ) ; +#15784 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.1944444444444343200 ) ) ; +#15785 = EDGE_CURVE ( 'NONE', #5204, #9397, #3525, .T. ) ; +#15786 = CARTESIAN_POINT ( 'NONE', ( 0.4505462270817887600, -0.09767944602039578500, 1.143750000000000000 ) ) ; +#15787 = LINE ( 'NONE', #94, #18349 ) ; +#15788 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15789 = DIRECTION ( 'NONE', ( -1.000000000000000000, -1.224646799147347800E-016, 0.0000000000000000000 ) ) ; +#15790 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.2048611111111006400 ) ) ; +#15791 = CARTESIAN_POINT ( 'NONE', ( -0.1803732187963012500, -0.4242625117230460200, 1.187613820323598600 ) ) ; +#15792 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#15793 = VECTOR ( 'NONE', #12869, 39.37007874015748100 ) ; +#15794 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.322916666666665900 ) ) ; +#15795 = AXIS2_PLACEMENT_3D ( 'NONE', #10890, #18096, #9209 ) ; +#15796 = VECTOR ( 'NONE', #18686, 39.37007874015748100 ) ; +#15797 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.503472222222222800 ) ) ; +#15798 = ORIENTED_EDGE ( 'NONE', *, *, #13677, .F. ) ; +#15799 = VERTEX_POINT ( 'NONE', #5578 ) ; +#15800 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#15801 = DIRECTION ( 'NONE', ( -0.1004911932742537700, 0.9949379478511796200, 0.0000000000000000000 ) ) ; +#15802 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15803 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.175347222222219700 ) ) ; +#15804 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.378472222222221200 ) ) ; +#15805 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#15806 = DIRECTION ( 'NONE', ( -0.02499999999999999100, -0.9996874511566102800, 0.0000000000000000000 ) ) ; +#15807 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, 0.005208333333345326100 ) ) ; +#15808 = DIRECTION ( 'NONE', ( -0.9992845593168622200, 0.03782022621434901600, 0.0000000000000000000 ) ) ; +#15809 = EDGE_CURVE ( 'NONE', #17502, #16094, #6884, .T. ) ; +#15810 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.291666666666665000 ) ) ; +#15811 = CARTESIAN_POINT ( 'NONE', ( 0.1589412568245171800, 0.4327480257511626700, 1.143750000000000000 ) ) ; +#15812 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.513888888888889300 ) ) ; +#15813 = ORIENTED_EDGE ( 'NONE', *, *, #6258, .T. ) ; +#15814 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.5659722222222151000 ) ) ; +#15815 = FACE_OUTER_BOUND ( 'NONE', #13543, .T. ) ; +#15816 = FACE_OUTER_BOUND ( 'NONE', #18296, .T. ) ; +#15817 = ORIENTED_EDGE ( 'NONE', *, *, #6991, .F. ) ; +#15818 = LINE ( 'NONE', #1957, #11926 ) ; +#15820 = EDGE_CURVE ( 'NONE', #15563, #11110, #18831, .T. ) ; +#15819 = LINE ( 'NONE', #16312, #6155 ) ; +#15821 = VERTEX_POINT ( 'NONE', #12033 ) ; +#15822 = AXIS2_PLACEMENT_3D ( 'NONE', #12408, #10933, #17046 ) ; +#15823 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323600600 ) ) ; +#15824 = ADVANCED_FACE ( 'NONE', ( #16314 ), #12866, .F. ) ; +#15825 = VERTEX_POINT ( 'NONE', #16200 ) ; +#15826 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.5260416666666591900 ) ) ; +#15827 = ORIENTED_EDGE ( 'NONE', *, *, #18660, .F. ) ; +#15828 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.2291666666666564700 ) ) ; +#15829 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.479166666666666500 ) ) ; +#15830 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#15831 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#15832 = PLANE ( 'NONE', #10609 ) ; +#15833 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.583333333333333900 ) ) ; +#15834 = ORIENTED_EDGE ( 'NONE', *, *, #5114, .T. ) ; +#15835 = ORIENTED_EDGE ( 'NONE', *, *, #6510, .F. ) ; +#15836 = CIRCLE ( 'NONE', #18826, 0.4687500000000000000 ) ; +#15837 = VECTOR ( 'NONE', #10728, 39.37007874015748900 ) ; +#15838 = CIRCLE ( 'NONE', #16134, 0.4610132068742565100 ) ; +#15839 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.5243055555555479200 ) ) ; +#15840 = EDGE_LOOP ( 'NONE', ( #7941, #12762, #13796, #16561 ) ) ; +#15841 = LINE ( 'NONE', #16927, #7571 ) ; +#15842 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.3194444444444353200 ) ) ; +#15843 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#15844 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.9270833333333284900 ) ) ; +#15845 = EDGE_CURVE ( 'NONE', #16417, #6242, #2971, .T. ) ; +#15846 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.2048611111111012200 ) ) ; +#15847 = ORIENTED_EDGE ( 'NONE', *, *, #1401, .F. ) ; +#15848 = CARTESIAN_POINT ( 'NONE', ( 0.1051858231909476900, 0.4567934304613021100, 1.143750000000000000 ) ) ; +#15849 = EDGE_CURVE ( 'NONE', #17357, #8721, #7821, .T. ) ; +#15850 = ORIENTED_EDGE ( 'NONE', *, *, #16763, .T. ) ; +#15851 = CARTESIAN_POINT ( 'NONE', ( 0.1034502481550510900, -0.4492562999771337900, 1.440511179676400500 ) ) ; +#15852 = AXIS2_PLACEMENT_3D ( 'NONE', #11042, #6464, #18327 ) ; +#15853 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15854 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.4062499999999911700 ) ) ; +#15855 = AXIS2_PLACEMENT_3D ( 'NONE', #2593, #12893, #15711 ) ; +#15856 = DIRECTION ( 'NONE', ( -0.9744976787610132300, -0.2243975804000505100, 0.0000000000000000000 ) ) ; +#15857 = ORIENTED_EDGE ( 'NONE', *, *, #4743, .T. ) ; +#15858 = ORIENTED_EDGE ( 'NONE', *, *, #15126, .F. ) ; +#15859 = LINE ( 'NONE', #11543, #9654 ) ; +#15860 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.02777777777776606000 ) ) ; +#15862 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.046874999999996700 ) ) ; +#15861 = VECTOR ( 'NONE', #10495, 39.37007874015748100 ) ; +#15863 = VERTEX_POINT ( 'NONE', #17695 ) ; +#15864 = ORIENTED_EDGE ( 'NONE', *, *, #17448, .F. ) ; +#15865 = LINE ( 'NONE', #5839, #6906 ) ; +#15866 = VERTEX_POINT ( 'NONE', #13393 ) ; +#15867 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.197916666666664700 ) ) ; +#15868 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.427083333333333000 ) ) ; +#15869 = ADVANCED_FACE ( 'NONE', ( #13803 ), #4619, .F. ) ; +#15870 = CARTESIAN_POINT ( 'NONE', ( -0.1257767296168604300, -0.4435238338571820300, 1.590308733529502500 ) ) ; +#15871 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#15872 = ORIENTED_EDGE ( 'NONE', *, *, #107, .T. ) ; +#15873 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15874 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.4756944444444364300 ) ) ; +#15875 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -3.585550491684345600E-016, 0.1792153418691395400 ) ) ; +#15876 = EDGE_CURVE ( 'NONE', #13454, #14956, #4111, .T. ) ; +#15877 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.352430555555554900 ) ) ; +#15878 = ORIENTED_EDGE ( 'NONE', *, *, #15883, .F. ) ; +#15879 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.458333333333332800 ) ) ; +#15880 = LINE ( 'NONE', #14540, #10155 ) ; +#15881 = DIRECTION ( 'NONE', ( 1.000000000000000000, -1.776356839400250500E-015, 0.0000000000000000000 ) ) ; +#15882 = CIRCLE ( 'NONE', #7784, 0.4687475818742554100 ) ; +#15883 = EDGE_CURVE ( 'NONE', #18368, #15612, #3652, .T. ) ; +#15884 = ORIENTED_EDGE ( 'NONE', *, *, #18353, .F. ) ; +#15885 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, 0.1440972222222352300 ) ) ; +#15886 = ORIENTED_EDGE ( 'NONE', *, *, #12324, .T. ) ; +#15887 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#15888 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.284722222222220500 ) ) ; +#15889 = CARTESIAN_POINT ( 'NONE', ( -0.1942247257378995100, -0.2257432177725371100, 0.1411626266187611900 ) ) ; +#15890 = LINE ( 'NONE', #232, #9008 ) ; +#15891 = EDGE_CURVE ( 'NONE', #13454, #4611, #9429, .T. ) ; +#15892 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.5590277777777706800 ) ) ; +#15893 = CARTESIAN_POINT ( 'NONE', ( -0.3477592364557826600, 0.3026494512999768900, 1.593375490995827300 ) ) ; +#15894 = ORIENTED_EDGE ( 'NONE', *, *, #4688, .T. ) ; +#15895 = CARTESIAN_POINT ( 'NONE', ( -0.3477592364557826600, 0.3026494512999768900, 1.440511179676396300 ) ) ; +#15896 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15897 = VERTEX_POINT ( 'NONE', #14987 ) ; +#15898 = ORIENTED_EDGE ( 'NONE', *, *, #12880, .T. ) ; +#15899 = VECTOR ( 'NONE', #1480, 39.37007874015748100 ) ; +#15900 = ORIENTED_EDGE ( 'NONE', *, *, #9729, .T. ) ; +#15901 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.5885416666666596400 ) ) ; +#15902 = ORIENTED_EDGE ( 'NONE', *, *, #6575, .F. ) ; +#15903 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.1388888888888778800 ) ) ; +#15904 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.2222222222222118600 ) ) ; +#15905 = PLANE ( 'NONE', #17794 ) ; +#15906 = CARTESIAN_POINT ( 'NONE', ( -0.2849174203000376900, 0.3722181606565372900, 1.143750000000000000 ) ) ; +#15907 = EDGE_CURVE ( 'NONE', #132, #27, #13903, .T. ) ; +#15908 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, 0.07986111111112344200 ) ) ; +#15909 = DIRECTION ( 'NONE', ( -0.4257792915650703300, -0.9048270524660204700, 0.0000000000000000000 ) ) ; +#15910 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.545138888888889300 ) ) ; +#15911 = CARTESIAN_POINT ( 'NONE', ( -0.1990875059467801000, 0.1930189570972426200, 0.08336650465307572600 ) ) ; +#15912 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#15913 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.263888888888887100 ) ) ; +#15914 = EDGE_LOOP ( 'NONE', ( #13142, #7399, #6766, #14674 ) ) ; +#15915 = VERTEX_POINT ( 'NONE', #1666 ) ; +#15916 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.3680555555555469200 ) ) ; +#15917 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#15918 = ORIENTED_EDGE ( 'NONE', *, *, #5550, .T. ) ; +#15919 = FACE_OUTER_BOUND ( 'NONE', #15779, .T. ) ; +#15920 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.100694444444441300 ) ) ; +#15921 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.1215277777777672200 ) ) ; +#15922 = VERTEX_POINT ( 'NONE', #7718 ) ; +#15923 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#15924 = DIRECTION ( 'NONE', ( 0.7458544667682596200, 0.6661089358369508600, 0.0000000000000000000 ) ) ; +#15925 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 0.1443375672974061600, 1.272329099369260400 ) ) ; +#15926 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.8559027777777727900 ) ) ; +#15927 = DIRECTION ( 'NONE', ( -0.4257792915650703300, -0.9048270524660205800, 0.0000000000000000000 ) ) ; +#15928 = ADVANCED_FACE ( 'NONE', ( #1127 ), #664, .T. ) ; +#15929 = ORIENTED_EDGE ( 'NONE', *, *, #8902, .T. ) ; +#15930 = ORIENTED_EDGE ( 'NONE', *, *, #6778, .F. ) ; +#15931 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.357638888888888200 ) ) ; +#15932 = EDGE_CURVE ( 'NONE', #6878, #6904, #14467, .T. ) ; +#15933 = ORIENTED_EDGE ( 'NONE', *, *, #2430, .F. ) ; +#15934 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.572916666666667600 ) ) ; +#15935 = LINE ( 'NONE', #8520, #12038 ) ; +#15936 = ORIENTED_EDGE ( 'NONE', *, *, #6829, .F. ) ; +#15937 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.04513888888887755700 ) ) ; +#15938 = DIRECTION ( 'NONE', ( 0.9992845593168622200, -0.03782022621434901600, 0.0000000000000000000 ) ) ; +#15939 = ORIENTED_EDGE ( 'NONE', *, *, #17116, .T. ) ; +#15940 = CARTESIAN_POINT ( 'NONE', ( -0.3829490853735684200, 0.2566771803726104500, 1.484375000000000200 ) ) ; +#15941 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.9982638888888849500 ) ) ; +#15942 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.420138888888888400 ) ) ; +#15943 = CARTESIAN_POINT ( 'NONE', ( 0.01152533017185641800, -0.4608691177296606000, 1.587227003692501100 ) ) ; +#15944 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15945 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.097222222222219000 ) ) ; +#15946 = AXIS2_PLACEMENT_3D ( 'NONE', #16884, #784, #5009 ) ; +#15947 = VERTEX_POINT ( 'NONE', #12094 ) ; +#15948 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.5902777777777709100 ) ) ; +#15949 = CONICAL_SURFACE ( 'NONE', #8004, 0.4610132068742565100, 0.1745329251994272000 ) ; +#15950 = ORIENTED_EDGE ( 'NONE', *, *, #8849, .T. ) ; +#15951 = CARTESIAN_POINT ( 'NONE', ( -0.3477592364557806600, -0.3026494512999792800, 1.593375490995827300 ) ) ; +#15952 = PLANE ( 'NONE', #7903 ) ; +#15953 = ORIENTED_EDGE ( 'NONE', *, *, #5820, .T. ) ; +#15954 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#15955 = CIRCLE ( 'NONE', #10212, 0.4687499999999995600 ) ; +#15956 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.7256944444444384200 ) ) ; +#15957 = ORIENTED_EDGE ( 'NONE', *, *, #2912, .T. ) ; +#15958 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.6475694444444377600 ) ) ; +#15959 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.086805555555552500 ) ) ; +#15960 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.2604166666666568600 ) ) ; +#15961 = CARTESIAN_POINT ( 'NONE', ( -0.3829490853735665900, -0.2566771803726130600, 1.592921120922338200 ) ) ; +#15962 = VERTEX_POINT ( 'NONE', #13765 ) ; +#15963 = ADVANCED_FACE ( 'NONE', ( #11272 ), #5478, .T. ) ; +#15964 = EDGE_CURVE ( 'NONE', #12179, #6607, #16794, .T. ) ; +#15965 = CARTESIAN_POINT ( 'NONE', ( 0.4624967254560964400, 0.07629596618006510800, 1.484375000000000200 ) ) ; +#15966 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#15967 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.1909722222222353100 ) ) ; +#15968 = EDGE_CURVE ( 'NONE', #15922, #8452, #8279, .T. ) ; +#15969 = ORIENTED_EDGE ( 'NONE', *, *, #5685, .F. ) ; +#15970 = ORGANIZATION ( 'UNSPECIFIED', 'UNSPECIFIED', '' ) ; +#15971 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15972 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15973 = ORIENTED_EDGE ( 'NONE', *, *, #7247, .F. ) ; +#15974 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.3645833333333248800 ) ) ; +#15975 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#15976 = FACE_OUTER_BOUND ( 'NONE', #6350, .T. ) ; +#15977 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.7847222222222164400 ) ) ; +#15978 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, 0.04861111111112306100 ) ) ; +#15979 = CARTESIAN_POINT ( 'NONE', ( 0.3829490853735701400, -0.2566771803726077300, 1.592921120922338200 ) ) ; +#15980 = CARTESIAN_POINT ( 'NONE', ( -0.07232391368861325300, -0.2469189035578443200, 1.529910848479152400 ) ) ; +#15981 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1248, #7042, #14247, #2720, #15659, #3956, #14316, #5541, #11547 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.8560606060606060800, 0.8598484848484848600, 0.8636363636363636500, 0.8674242424242424300, 0.8712121212121212200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#15982 = DIRECTION ( 'NONE', ( -1.000000000000000000, -6.483702463810914200E-014, 0.0000000000000000000 ) ) ; +#15983 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15984 = TOROIDAL_SURFACE ( 'NONE', #14906, 0.2644999999999991200, 0.05000000000000000300 ) ; +#15985 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.8246527777777725700 ) ) ; +#15986 = EDGE_CURVE ( 'NONE', #3224, #15825, #3195, .T. ) ; +#15987 = EDGE_CURVE ( 'NONE', #7163, #5801, #12414, .T. ) ; +#15988 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#15989 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.166666666666664500 ) ) ; +#15991 = EDGE_CURVE ( 'NONE', #7201, #15729, #8732, .T. ) ; +#15990 = CIRCLE ( 'NONE', #7982, 0.4687475818742583600 ) ; +#15992 = AXIS2_PLACEMENT_3D ( 'NONE', #15591, #12655, #6785 ) ; +#15993 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.458333333333333500 ) ) ; +#15994 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#15995 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#15996 = CARTESIAN_POINT ( 'NONE', ( 0.4219140922835683000, 0.1858000959230613500, 1.143750000000000000 ) ) ; +#15997 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.2534722222222125500 ) ) ; +#15998 = CARTESIAN_POINT ( 'NONE', ( 1.224597006945454400E-016, -2.441998286458796200E-016, -1.174024639073326000 ) ) ; +#15999 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.085069444444441100 ) ) ; +#16000 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.437499999999999300 ) ) ; +#16001 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16002 = CYLINDRICAL_SURFACE ( 'NONE', #3947, 0.3144999999999991100 ) ; +#16003 = ORIENTED_EDGE ( 'NONE', *, *, #16160, .F. ) ; +#16004 = DIRECTION ( 'NONE', ( -0.6179619325485490300, -0.7862080194966613000, 0.0000000000000000000 ) ) ; +#16005 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#16006 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.156249999999997300 ) ) ; +#16007 = PLANE ( 'NONE', #18635 ) ; +#16008 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323600200 ) ) ; +#16009 = VECTOR ( 'NONE', #3313, 39.37007874015748100 ) ; +#16010 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #17708, #11845, #72, #3031 ), + .UNSPECIFIED., .F., .F., + ( 4, 4 ), + ( 6.505213034913027600E-019, 0.001604976197543656300 ), + .UNSPECIFIED. ) ; +#16011 = ORIENTED_EDGE ( 'NONE', *, *, #6258, .F. ) ; +#16012 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.5972222222222153300 ) ) ; +#16013 = VECTOR ( 'NONE', #4276, 39.37007874015748100 ) ; +#16014 = EDGE_CURVE ( 'NONE', #8694, #3966, #3893, .T. ) ; +#16015 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16016 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.413194444444444200 ) ) ; +#16017 = AXIS2_PLACEMENT_3D ( 'NONE', #16198, #14607, #7272 ) ; +#16018 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.4097222222222137700 ) ) ; +#16019 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#16020 = ADVANCED_FACE ( 'NONE', ( #15176 ), #11947, .T. ) ; +#16021 = AXIS2_PLACEMENT_3D ( 'NONE', #17838, #3095, #7530 ) ; +#16022 = CIRCLE ( 'NONE', #6023, 0.4687499999999995600 ) ; +#16023 = VERTEX_POINT ( 'NONE', #380 ) ; +#16024 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.5225694444444368700 ) ) ; +#16025 = CIRCLE ( 'NONE', #2221, 0.4610132068742565100 ) ; +#16026 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.03819444444445672200 ) ) ; +#16027 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.3472222222222128800 ) ) ; +#16028 = DIRECTION ( 'NONE', ( -0.9202827715058590200, -0.3912539079287195600, 0.0000000000000000000 ) ) ; +#16029 = ORIENTED_EDGE ( 'NONE', *, *, #13589, .T. ) ; +#16030 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -0.02437472596252697800, 1.525850221280107900 ) ) ; +#16031 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.374999999999999100 ) ) ; +#16032 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.1770833333333463300 ) ) ; +#16033 = VECTOR ( 'NONE', #12978, 39.37007874015748900 ) ; +#16034 = DIRECTION ( 'NONE', ( -0.1442440472914134900, 0.09668166541819966900, 0.9848077530122088000 ) ) ; +#16035 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.531250000000000900 ) ) ; +#16036 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.3159722222222132700 ) ) ; +#16037 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16038 = ORIENTED_EDGE ( 'NONE', *, *, #11829, .F. ) ; +#16039 = VECTOR ( 'NONE', #12588, 39.37007874015748900 ) ; +#16040 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.7638888888888829600 ) ) ; +#16041 = EDGE_CURVE ( 'NONE', #2739, #8373, #198, .T. ) ; +#16042 = VECTOR ( 'NONE', #1871, 39.37007874015748100 ) ; +#16043 = LINE ( 'NONE', #3715, #8227 ) ; +#16044 = AXIS2_PLACEMENT_3D ( 'NONE', #16812, #16938, #5075 ) ; +#16045 = ORIENTED_EDGE ( 'NONE', *, *, #10574, .T. ) ; +#16046 = ORIENTED_EDGE ( 'NONE', *, *, #666, .T. ) ; +#16047 = VECTOR ( 'NONE', #8125, 39.37007874015748900 ) ; +#16048 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.036458333333329700 ) ) ; +#16049 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.9930555555555515800 ) ) ; +#16050 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.142361111111108700 ) ) ; +#16051 = ORIENTED_EDGE ( 'NONE', *, *, #15157, .F. ) ; +#16052 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.229166666666665000 ) ) ; +#16053 = ADVANCED_FACE ( 'NONE', ( #14250 ), #18186, .T. ) ; +#16054 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, 1.175414948758337600E-014 ) ) ; +#16055 = CIRCLE ( 'NONE', #11559, 0.4687475818742551400 ) ; +#16056 = DIRECTION ( 'NONE', ( 0.9866647708492415300, -0.1627655675043517000, 0.0000000000000000000 ) ) ; +#16057 = FACE_BOUND ( 'NONE', #2481, .T. ) ; +#16058 = FACE_OUTER_BOUND ( 'NONE', #13620, .T. ) ; +#16059 = CARTESIAN_POINT ( 'NONE', ( -0.2388463572900720600, -0.1999377227612358100, 0.1792153418691395900 ) ) ; +#16060 = ORIENTED_EDGE ( 'NONE', *, *, #17733, .T. ) ; +#16061 = VECTOR ( 'NONE', #18967, 39.37007874015748100 ) ; +#16062 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.012152777777774100 ) ) ; +#16063 = CIRCLE ( 'NONE', #5805, 0.4687499999999995000 ) ; +#16064 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.243055555555553400 ) ) ; +#16065 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16066 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#16067 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.001736111111099264200 ) ) ; +#16068 = CARTESIAN_POINT ( 'NONE', ( 5.788237617796800800E-017, -2.669823311248645000E-016, -1.174024639073265800 ) ) ; +#16069 = EDGE_CURVE ( 'NONE', #17405, #18912, #19102, .T. ) ; +#16070 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.222222222222219900 ) ) ; +#16071 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#16072 = CARTESIAN_POINT ( 'NONE', ( -0.2223890377096481000, -0.1982780065653940700, 0.1402388640800688000 ) ) ; +#16073 = VERTEX_POINT ( 'NONE', #7660 ) ; +#16074 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.3993055555555472000 ) ) ; +#16075 = ORIENTED_EDGE ( 'NONE', *, *, #12178, .T. ) ; +#16076 = EDGE_CURVE ( 'NONE', #16695, #860, #11485, .T. ) ; +#16077 = ORIENTED_EDGE ( 'NONE', *, *, #4274, .F. ) ; +#16078 = EDGE_LOOP ( 'NONE', ( #17986, #6776, #12235, #7755 ) ) ; +#16079 = CIRCLE ( 'NONE', #16799, 0.4687499999999995600 ) ; +#16080 = CARTESIAN_POINT ( 'NONE', ( 0.4669429843783108900, -0.04111948248550998500, 1.484375000000000200 ) ) ; +#16081 = VECTOR ( 'NONE', #4791, 39.37007874015748100 ) ; +#16082 = ORIENTED_EDGE ( 'NONE', *, *, #8944, .T. ) ; +#16083 = ORIENTED_EDGE ( 'NONE', *, *, #3431, .F. ) ; +#16084 = AXIS2_PLACEMENT_3D ( 'NONE', #15730, #9766, #14329 ) ; +#16085 = VECTOR ( 'NONE', #5058, 39.37007874015748900 ) ; +#16086 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#16087 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16088 = CARTESIAN_POINT ( 'NONE', ( 0.2119256669269744000, -0.4094150566479489200, 1.143750000000000000 ) ) ; +#16089 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.1527777777777670500 ) ) ; +#16090 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.465277777777777700 ) ) ; +#16091 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.4999999999999922300 ) ) ; +#16092 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#16093 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.336805555555554000 ) ) ; +#16094 = VERTEX_POINT ( 'NONE', #18293 ) ; +#16095 = ORIENTED_EDGE ( 'NONE', *, *, #3342, .F. ) ; +#16096 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16097 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.440972222222222300 ) ) ; +#16098 = ORIENTED_EDGE ( 'NONE', *, *, #16041, .F. ) ; +#16099 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.3784722222222136100 ) ) ; +#16100 = LINE ( 'NONE', #10538, #10137 ) ; +#16101 = VECTOR ( 'NONE', #5049, 39.37007874015748900 ) ; +#16102 = ORIENTED_EDGE ( 'NONE', *, *, #14665, .F. ) ; +#16103 = VERTEX_POINT ( 'NONE', #11072 ) ; +#16104 = EDGE_CURVE ( 'NONE', #3036, #11087, #8487, .T. ) ; +#16105 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676400100 ) ) ; +#16106 = LINE ( 'NONE', #18513, #8296 ) ; +#16107 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.7499999999999938900 ) ) ; +#16108 = EDGE_CURVE ( 'NONE', #10503, #7419, #15841, .T. ) ; +#16109 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995600, 0.1443375672974061300, 1.272329099369260400 ) ) ; +#16110 = EDGE_CURVE ( 'NONE', #2108, #12473, #4348, .T. ) ; +#16111 = AXIS2_PLACEMENT_3D ( 'NONE', #9219, #16548, #9338 ) ; +#16112 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#16113 = ORIENTED_EDGE ( 'NONE', *, *, #3272, .T. ) ; +#16114 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.9392361111111070500 ) ) ; +#16115 = CARTESIAN_POINT ( 'NONE', ( 0.2659575542964011700, 0.3859962976670584500, 1.593193105402742800 ) ) ; +#16116 = ORIENTED_EDGE ( 'NONE', *, *, #7515, .T. ) ; +#16117 = ADVANCED_FACE ( 'NONE', ( #14939 ), #443, .T. ) ; +#16118 = ORIENTED_EDGE ( 'NONE', *, *, #3681, .F. ) ; +#16119 = VECTOR ( 'NONE', #1925, 39.37007874015747400 ) ; +#16120 = CONICAL_SURFACE ( 'NONE', #3825, 0.4687475818742581300, 0.1745329251994285300 ) ; +#16121 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.364583333333332100 ) ) ; +#16122 = ORIENTED_EDGE ( 'NONE', *, *, #8284, .T. ) ; +#16123 = VERTEX_POINT ( 'NONE', #5314 ) ; +#16124 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.076388888888885700 ) ) ; +#16125 = LINE ( 'NONE', #5337, #10380 ) ; +#16126 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.180555555555553400 ) ) ; +#16127 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, 1.562500000000000000 ) ) ; +#16128 = EDGE_CURVE ( 'NONE', #14973, #12187, #14709, .T. ) ; +#16129 = ORIENTED_EDGE ( 'NONE', *, *, #10505, .F. ) ; +#16130 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.9496527777777734600 ) ) ; +#16131 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.152777777777775000 ) ) ; +#16132 = ORIENTED_EDGE ( 'NONE', *, *, #223, .F. ) ; +#16133 = CARTESIAN_POINT ( 'NONE', ( 0.09944611544071591000, -0.2604312205083489900, -1.556917725157686400 ) ) ; +#16134 = AXIS2_PLACEMENT_3D ( 'NONE', #9129, #1720, #17945 ) ; +#16135 = CARTESIAN_POINT ( 'NONE', ( -0.4347510546871065100, 0.1533776299234495300, 1.143750000000000000 ) ) ; +#16136 = DIRECTION ( 'NONE', ( -0.1627655675043647200, 0.9866647708492394300, 0.0000000000000000000 ) ) ; +#16137 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.9027777777777730200 ) ) ; +#16138 = CARTESIAN_POINT ( 'NONE', ( -0.2653822501844810800, -0.1328049269514096900, 0.1383025451247621200 ) ) ; +#16139 = ORIENTED_EDGE ( 'NONE', *, *, #10798, .F. ) ; +#16140 = EDGE_CURVE ( 'NONE', #1646, #8900, #7114, .T. ) ; +#16141 = AXIS2_PLACEMENT_3D ( 'NONE', #7600, #11901, #14858 ) ; +#16142 = FACE_OUTER_BOUND ( 'NONE', #329, .T. ) ; +#16143 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.4305555555555474200 ) ) ; +#16144 = VERTEX_POINT ( 'NONE', #12485 ) ; +#16145 = AXIS2_PLACEMENT_3D ( 'NONE', #12966, #8516, #17272 ) ; +#16146 = CARTESIAN_POINT ( 'NONE', ( -0.04632776727398118400, -0.4586795339797645200, 1.484375000000000200 ) ) ; +#16147 = CARTESIAN_POINT ( 'NONE', ( -0.3477592364557806600, -0.3026494512999792800, 1.484375000000000200 ) ) ; +#16148 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#16149 = ORIENTED_EDGE ( 'NONE', *, *, #14572, .T. ) ; +#16150 = ORIENTED_EDGE ( 'NONE', *, *, #13422, .T. ) ; +#16151 = CARTESIAN_POINT ( 'NONE', ( -0.3038748433919888900, 0.06843065780174555100, 0.1792153418691395100 ) ) ; +#16152 = VERTEX_POINT ( 'NONE', #2186 ) ; +#16153 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.09722222222221088600 ) ) ; +#16154 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.07638888888890142700 ) ) ; +#16155 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.003472222222210275400 ) ) ; +#16156 = CARTESIAN_POINT ( 'NONE', ( 0.2381830748109831400, -0.1449383053569377500, -1.554735474306483600 ) ) ; +#16157 = ADVANCED_FACE ( 'NONE', ( #4566 ), #5179, .F. ) ; +#16158 = CARTESIAN_POINT ( 'NONE', ( 0.3238882248696998100, 0.3280694967582948900, 1.593467001493433100 ) ) ; +#16159 = ORIENTED_EDGE ( 'NONE', *, *, #10257, .T. ) ; +#16160 = EDGE_CURVE ( 'NONE', #16123, #11519, #11031, .T. ) ; +#16161 = CARTESIAN_POINT ( 'NONE', ( 2.360286478381765400E-016, 1.375514885581274000E-016, 3.802149639073325800 ) ) ; +#16162 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16163 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.295138888888887100 ) ) ; +#16164 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.593193105402742800 ) ) ; +#16165 = AXIS2_PLACEMENT_3D ( 'NONE', #7323, #11695, #19111 ) ; +#16166 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.1458333333333230200 ) ) ; +#16167 = CARTESIAN_POINT ( 'NONE', ( 0.2814515139586942200, 0.09746835699440131700, 0.1399242221443408300 ) ) ; +#16168 = ORIENTED_EDGE ( 'NONE', *, *, #987, .T. ) ; +#16169 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.6909722222222158800 ) ) ; +#16170 = VERTEX_POINT ( 'NONE', #6552 ) ; +#16171 = CYLINDRICAL_SURFACE ( 'NONE', #3437, 0.4610132068742565100 ) ; +#16172 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16173 = VERTEX_POINT ( 'NONE', #16983 ) ; +#16174 = APPLICATION_CONTEXT ( 'configuration controlled 3d designs of mechanical parts and assemblies' ) ; +#16175 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.012152777777774100 ) ) ; +#16176 = VERTEX_POINT ( 'NONE', #5246 ) ; +#16177 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#16178 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16179 = DIRECTION ( 'NONE', ( -0.4257792915650831500, 0.9048270524660146900, 0.0000000000000000000 ) ) ; +#16180 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#16181 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.034722222222218800 ) ) ; +#16182 = EDGE_CURVE ( 'NONE', #7905, #15661, #903, .T. ) ; +#16183 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.347222222222221200 ) ) ; +#16184 = ORIENTED_EDGE ( 'NONE', *, *, #9350, .F. ) ; +#16185 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#16186 = ORIENTED_EDGE ( 'NONE', *, *, #13450, .F. ) ; +#16187 = PLANE ( 'NONE', #6530 ) ; +#16188 = CARTESIAN_POINT ( 'NONE', ( -1.706751074227794800E-017, -0.2886751345948123700, 1.272329099369260000 ) ) ; +#16189 = VERTEX_POINT ( 'NONE', #8104 ) ; +#16190 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.9809027777777736800 ) ) ; +#16191 = EDGE_CURVE ( 'NONE', #17489, #1188, #5937, .T. ) ; +#16192 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.208333333333330800 ) ) ; +#16193 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#16194 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#16195 = CARTESIAN_POINT ( 'NONE', ( -0.4289925051334564400, -0.1889172465718403600, 1.484375000000000200 ) ) ; +#16196 = CARTESIAN_POINT ( 'NONE', ( 0.4420471124163794000, 0.1559516364272612000, 1.143750000000000000 ) ) ; +#16197 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.9895833333333292600 ) ) ; +#16198 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#16199 = AXIS2_PLACEMENT_3D ( 'NONE', #10953, #3487, #5139 ) ; +#16200 = CARTESIAN_POINT ( 'NONE', ( -0.4624967254560972100, -0.07629596618006180600, 1.143750000000000000 ) ) ; +#16201 = LINE ( 'NONE', #10378, #18536 ) ; +#16202 = VERTEX_POINT ( 'NONE', #12608 ) ; +#16203 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.5173611111111036100 ) ) ; +#16204 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #12015, #3069, #7447, #10343, #103, #17937, #1712, #4527, #9121 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.9469696969696970200, 0.9507575757575758000, 0.9545454545454545900, 0.9583333333333333700, 0.9621212121212121500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#16205 = ORIENTED_EDGE ( 'NONE', *, *, #3772, .F. ) ; +#16206 = CARTESIAN_POINT ( 'NONE', ( 0.4347510546871075600, -0.1533776299234465600, 1.590985962198545200 ) ) ; +#16207 = PLANE ( 'NONE', #7275 ) ; +#16208 = LOCAL_TIME ( 13, 36, 41.00000000000000000, #560 ) ; +#16209 = ORIENTED_EDGE ( 'NONE', *, *, #10455, .T. ) ; +#16210 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#16211 = LINE ( 'NONE', #5138, #15083 ) ; +#16212 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.05208333333332185900 ) ) ; +#16213 = CARTESIAN_POINT ( 'NONE', ( -0.1034502481550446100, -0.4492562999771352900, 1.590308733529502500 ) ) ; +#16214 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.03472222222223442900 ) ) ; +#16215 = CARTESIAN_POINT ( 'NONE', ( 0.2030165626641859100, -0.2108635992462970000, 0.1272154460950090900 ) ) ; +#16216 = EDGE_CURVE ( 'NONE', #5734, #3478, #17709, .T. ) ; +#16217 = DIRECTION ( 'NONE', ( 0.7116271114718354400, -0.7025573672080111000, 0.0000000000000000000 ) ) ; +#16218 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.3541666666666577500 ) ) ; +#16219 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16220 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.343749999999999100 ) ) ; +#16221 = EDGE_CURVE ( 'NONE', #7046, #9738, #16545, .T. ) ; +#16222 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.7083333333333271500 ) ) ; +#16223 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16224 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.545138888888889900 ) ) ; +#16225 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #17980, #7681, #3296, #467, #10762, #14945, #279, #10571, #1936 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2348484848484848600, 0.2386363636363636500, 0.2424242424242424300, 0.2462121212121212200, 0.2500000000000000000 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#16226 = AXIS2_PLACEMENT_3D ( 'NONE', #1048, #11545, #2457 ) ; +#16227 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.06249999999998902300 ) ) ; +#16228 = FACE_OUTER_BOUND ( 'NONE', #9408, .T. ) ; +#16229 = ORIENTED_EDGE ( 'NONE', *, *, #14254, .F. ) ; +#16230 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.6944444444444379800 ) ) ; +#16231 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.312499999999998700 ) ) ; +#16232 = CIRCLE ( 'NONE', #4641, 0.4687499999999996700 ) ; +#16233 = ADVANCED_FACE ( 'NONE', ( #17684 ), #5120, .F. ) ; +#16234 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16235 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, 0.05208333333334534700 ) ) ; +#16236 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.7204861111111050500 ) ) ; +#16237 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#16238 = EDGE_CURVE ( 'NONE', #12681, #2533, #2722, .T. ) ; +#16239 = PLANE ( 'NONE', #61 ) ; +#16240 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.4861111111111032800 ) ) ; +#16241 = FACE_OUTER_BOUND ( 'NONE', #3409, .T. ) ; +#16242 = EDGE_CURVE ( 'NONE', #4744, #18468, #2944, .T. ) ; +#16243 = VERTEX_POINT ( 'NONE', #15428 ) ; +#16244 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.121527777777775200 ) ) ; +#16245 = EDGE_CURVE ( 'NONE', #10001, #9215, #17226, .T. ) ; +#16246 = FACE_BOUND ( 'NONE', #2807, .T. ) ; +#16247 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.173611111111108900 ) ) ; +#16248 = ADVANCED_FACE ( 'NONE', ( #1104 ), #18833, .F. ) ; +#16249 = ORIENTED_EDGE ( 'NONE', *, *, #16300, .T. ) ; +#16250 = DIRECTION ( 'NONE', ( -0.9297764858882564500, 0.3681245526846654300, 0.0000000000000000000 ) ) ; +#16251 = AXIS2_PLACEMENT_3D ( 'NONE', #18606, #2499, #3989 ) ; +#16252 = LINE ( 'NONE', #5367, #14193 ) ; +#16253 = CARTESIAN_POINT ( 'NONE', ( 0.2615678826637272100, -0.3796253675287001900, 1.593193105402742800 ) ) ; +#16254 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16255 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.515625000000000200 ) ) ; +#16256 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16257 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.8802083333333284900 ) ) ; +#16258 = DIRECTION ( 'NONE', ( -0.1309892141416663100, 0.1139978744783998200, 0.9848077530122088000 ) ) ; +#16259 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16260 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16261 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -1.138888888888886200 ) ) ; +#16262 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#16263 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.9791666666666624100 ) ) ; +#16264 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.215277777777775700 ) ) ; +#16265 = CARTESIAN_POINT ( 'NONE', ( -0.2388463572900720600, -0.1999377227612358100, 0.1792153418691395900 ) ) ; +#16266 = VECTOR ( 'NONE', #13511, 39.37007874015748100 ) ; +#16267 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.3333333333333244900 ) ) ; +#16268 = VECTOR ( 'NONE', #1045, 39.37007874015748900 ) ; +#16269 = LINE ( 'NONE', #4706, #2008 ) ; +#16270 = ORIENTED_EDGE ( 'NONE', *, *, #15272, .F. ) ; +#16271 = VERTEX_POINT ( 'NONE', #7002 ) ; +#16272 = EDGE_CURVE ( 'NONE', #8325, #11193, #8570, .T. ) ; +#16273 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#16274 = VECTOR ( 'NONE', #4828, 39.37007874015748100 ) ; +#16275 = DIRECTION ( 'NONE', ( 0.1500969283399838600, -0.9886712861729634000, 0.0000000000000000000 ) ) ; +#16276 = AXIS2_PLACEMENT_3D ( 'NONE', #3796, #18362, #9488 ) ; +#16277 = CARTESIAN_POINT ( 'NONE', ( 0.2802162586133474800, 0.3660765293230687800, 1.143750000000000000 ) ) ; +#16278 = AXIS2_PLACEMENT_3D ( 'NONE', #2372, #3848, #3918 ) ; +#16279 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.2708333333333237100 ) ) ; +#16280 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.04166666666665497900 ) ) ; +#16281 = ORIENTED_EDGE ( 'NONE', *, *, #7133, .F. ) ; +#16282 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.4583333333333252100 ) ) ; +#16283 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.04861111111109956600 ) ) ; +#16284 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#16285 = CARTESIAN_POINT ( 'NONE', ( -0.3893757946457722700, -0.2609847755022765600, 1.143750000000000000 ) ) ; +#16286 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.420138888888888600 ) ) ; +#16287 = LINE ( 'NONE', #15527, #8007 ) ; +#16288 = LINE ( 'NONE', #12320, #8458 ) ; +#16289 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#16290 = CYLINDRICAL_SURFACE ( 'NONE', #8715, 0.3125000000000008300 ) ; +#16291 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.305555555555554200 ) ) ; +#16292 = EDGE_LOOP ( 'NONE', ( #8769, #270, #8505, #15462 ) ) ; +#16293 = VECTOR ( 'NONE', #6074, 39.37007874015748100 ) ; +#16294 = LINE ( 'NONE', #15335, #17447 ) ; +#16295 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.1770833333333231300 ) ) ; +#16296 = ORIENTED_EDGE ( 'NONE', *, *, #4240, .F. ) ; +#16297 = CARTESIAN_POINT ( 'NONE', ( -0.1386712515085641900, 0.2709005982073741100, 0.1591134003910638900 ) ) ; +#16298 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.4583333333333249300 ) ) ; +#16299 = ORIENTED_EDGE ( 'NONE', *, *, #11576, .F. ) ; +#16300 = EDGE_CURVE ( 'NONE', #902, #9207, #13560, .T. ) ; +#16301 = EDGE_LOOP ( 'NONE', ( #17579, #1675, #9973, #6974, #11386, #3419, #11095, #5102, #2855, #3583, #14121, #13043, #11825, #12269, #4628, #18685, #6490, #17087, #18700, #12918, #11504, #496, #2449, #10633, #12499, #249, #16769, #5366, #8442, #3704, #4939, #16842, #6363, #18315, #6037, #2335, #15586, #3959, #166, #5975, #3213, #5718, #1888, #9300, #262, #7438, #1427, #595, #14739, #1867, #10112, #13583, #4282, #2389, #1057, #7646, #10581, #14276, #3283, #5567, #8920, #14031, #7410, #8486, #5968, #10246, #9083, #16083, #16758 ) ) ; +#16302 = CARTESIAN_POINT ( 'NONE', ( 0.1353884627379183800, 0.2105085691879055000, 1.249992272704498800 ) ) ; +#16303 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16304 = EDGE_LOOP ( 'NONE', ( #6195, #15950, #7924, #8292, #1822, #5327 ) ) ; +#16305 = ORIENTED_EDGE ( 'NONE', *, *, #4574, .T. ) ; +#16306 = FACE_OUTER_BOUND ( 'NONE', #13174, .T. ) ; +#16307 = PERSON_AND_ORGANIZATION_ROLE ( 'classification_officer' ) ; +#16309 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.7482638888888831800 ) ) ; +#16308 = LINE ( 'NONE', #7906, #10558 ) ; +#16310 = FACE_OUTER_BOUND ( 'NONE', #753, .T. ) ; +#16311 = ORIENTED_EDGE ( 'NONE', *, *, #6663, .T. ) ; +#16312 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#16313 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.4999999999999922300 ) ) ; +#16314 = FACE_OUTER_BOUND ( 'NONE', #8346, .T. ) ; +#16315 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16316 = CARTESIAN_POINT ( 'NONE', ( -0.4219140922835695200, -0.1858000959230583500, 1.592116737595687900 ) ) ; +#16317 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.8854166666666623000 ) ) ; +#16318 = AXIS2_PLACEMENT_3D ( 'NONE', #15917, #10065, #1251 ) ; +#16319 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.236111111111109200 ) ) ; +#16320 = CARTESIAN_POINT ( 'NONE', ( -0.4606833792705949400, 0.01743562377178659700, 1.587900241027141200 ) ) ; +#16321 = VERTEX_POINT ( 'NONE', #8291 ) ; +#16322 = EDGE_LOOP ( 'NONE', ( #10333, #18873, #7186, #15097 ) ) ; +#16323 = CARTESIAN_POINT ( 'NONE', ( 1.530746258681797900E-017, 3.052497858073505100E-017, 3.802149639073269900 ) ) ; +#16324 = CARTESIAN_POINT ( 'NONE', ( 0.01171868954685640700, 0.4686010753596986400, 1.143750000000000000 ) ) ; +#16325 = CARTESIAN_POINT ( 'NONE', ( -0.04096905157690259500, -0.2650216416384439900, 1.259918511167947000 ) ) ; +#16326 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.8211805555555502500 ) ) ; +#16327 = ORIENTED_EDGE ( 'NONE', *, *, #605, .F. ) ; +#16328 = ORIENTED_EDGE ( 'NONE', *, *, #7474, .T. ) ; +#16329 = CIRCLE ( 'NONE', #14822, 0.4610132068742565100 ) ; +#16330 = PLANE ( 'NONE', #11102 ) ; +#16331 = CARTESIAN_POINT ( 'NONE', ( -0.4581073617749774600, -0.09931871720662446800, 1.589564174286821800 ) ) ; +#16332 = LINE ( 'NONE', #17450, #11288 ) ; +#16333 = DIRECTION ( 'NONE', ( -0.2728267384564680400, -0.9620631844027740500, 0.0000000000000000000 ) ) ; +#16334 = ORIENTED_EDGE ( 'NONE', *, *, #9824, .F. ) ; +#16335 = DIRECTION ( 'NONE', ( -0.7543368200092318600, 0.6564875946873327500, -0.0000000000000000000 ) ) ; +#16336 = VERTEX_POINT ( 'NONE', #14448 ) ; +#16337 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.031249999999996400 ) ) ; +#16338 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#16339 = CARTESIAN_POINT ( 'NONE', ( -0.4375000000000001100, -5.463695987328526400E-016, 0.9687499999999998900 ) ) ; +#16340 = VECTOR ( 'NONE', #5385, 39.37007874015748100 ) ; +#16341 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.5138888888888814000 ) ) ; +#16342 = ADVANCED_FACE ( 'NONE', ( #14228 ), #12980, .F. ) ; +#16343 = CARTESIAN_POINT ( 'NONE', ( 0.3144999999999991100, -3.970701910016187400E-016, 0.1874999999999998300 ) ) ; +#16344 = ORIENTED_EDGE ( 'NONE', *, *, #11489, .T. ) ; +#16345 = EDGE_CURVE ( 'NONE', #8701, #3215, #5247, .T. ) ; +#16346 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.4045138888888804000 ) ) ; +#16347 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.3229166666666573600 ) ) ; +#16348 = AXIS2_PLACEMENT_3D ( 'NONE', #14504, #17654, #5842 ) ; +#16349 = VERTEX_POINT ( 'NONE', #12847 ) ; +#16350 = VECTOR ( 'NONE', #10805, 39.37007874015748100 ) ; +#16351 = LINE ( 'NONE', #18078, #12451 ) ; +#16352 = VERTEX_POINT ( 'NONE', #3905 ) ; +#16353 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.2222222222222121300 ) ) ; +#16354 = ORIENTED_EDGE ( 'NONE', *, *, #9636, .F. ) ; +#16355 = VECTOR ( 'NONE', #9505, 39.37007874015748100 ) ; +#16356 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.1527777777777670500 ) ) ; +#16357 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.02083333333332147700 ) ) ; +#16358 = CARTESIAN_POINT ( 'NONE', ( 0.2796448906815677300, -0.09294428966654712200, 0.1326389674814745200 ) ) ; +#16359 = ADVANCED_FACE ( 'NONE', ( #1555 ), #5683, .T. ) ; +#16360 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.5121527777777699100 ) ) ; +#16361 = CARTESIAN_POINT ( 'NONE', ( 7.302844316069775300E-017, 2.454782321323834400E-016, 3.802149639073289000 ) ) ; +#16362 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.4097222222222136100 ) ) ; +#16363 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.347222222222221000 ) ) ; +#16364 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16365 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.131944444444441500 ) ) ; +#16366 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.343749999999999600 ) ) ; +#16367 = ORIENTED_EDGE ( 'NONE', *, *, #225, .T. ) ; +#16368 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.1354166666666561700 ) ) ; +#16369 = EDGE_CURVE ( 'NONE', #554, #2227, #18617, .T. ) ; +#16370 = CARTESIAN_POINT ( 'NONE', ( 0.1287887949902790700, 0.2721367888978906700, 0.1488311516790001800 ) ) ; +#16371 = ORIENTED_EDGE ( 'NONE', *, *, #18255, .F. ) ; +#16372 = VERTEX_POINT ( 'NONE', #15791 ) ; +#16373 = FACE_OUTER_BOUND ( 'NONE', #16879, .T. ) ; +#16374 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.6006944444444373100 ) ) ; +#16375 = EDGE_CURVE ( 'NONE', #14726, #4769, #5126, .T. ) ; +#16376 = VERTEX_POINT ( 'NONE', #17225 ) ; +#16377 = EDGE_LOOP ( 'NONE', ( #15817, #18226, #18205, #3133 ) ) ; +#16378 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#16379 = EDGE_CURVE ( 'NONE', #12996, #3201, #9400, .T. ) ; +#16380 = AXIS2_PLACEMENT_3D ( 'NONE', #2880, #11970, #14793 ) ; +#16381 = AXIS2_PLACEMENT_3D ( 'NONE', #11746, #7373, #1387 ) ; +#16382 = CARTESIAN_POINT ( 'NONE', ( 0.2089580642901298100, 0.1680331399275627200, 1.259896156426997900 ) ) ; +#16383 = AXIS2_PLACEMENT_3D ( 'NONE', #10332, #13100, #4408 ) ; +#16384 = DIRECTION ( 'NONE', ( -0.5035107695491790600, 0.8639889495520145500, 0.0000000000000000000 ) ) ; +#16385 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.6892361111111048300 ) ) ; +#16386 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.041666666666663200 ) ) ; +#16387 = PLANE ( 'NONE', #11291 ) ; +#16388 = CARTESIAN_POINT ( 'NONE', ( -0.4624991113355810300, 0.07629635976766754900, 1.589564174286821800 ) ) ; +#16389 = ORIENTED_EDGE ( 'NONE', *, *, #11803, .F. ) ; +#16390 = ORIENTED_EDGE ( 'NONE', *, *, #9861, .T. ) ; +#16391 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.6770833333333272600 ) ) ; +#16392 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#16393 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.9652777777777739000 ) ) ; +#16394 = EDGE_LOOP ( 'NONE', ( #10925, #713, #14743, #4675 ) ) ; +#16395 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.017361111111107800 ) ) ; +#16396 = CONICAL_SURFACE ( 'NONE', #5636, 0.4687475818742550800, 0.1745329251994287300 ) ; +#16397 = ORIENTED_EDGE ( 'NONE', *, *, #2889, .T. ) ; +#16398 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#16399 = CARTESIAN_POINT ( 'NONE', ( -1.017047480238542200E-017, -2.687238932243362200E-016, -1.174024639073269100 ) ) ; +#16400 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.494791666666666700 ) ) ; +#16401 = CARTESIAN_POINT ( 'NONE', ( -0.1035066076939330900, -0.2289155667798151200, 1.250015718029290100 ) ) ; +#16402 = EDGE_CURVE ( 'NONE', #5258, #17064, #17470, .T. ) ; +#16403 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.9149305555555511400 ) ) ; +#16404 = AXIS2_PLACEMENT_3D ( 'NONE', #7094, #17324, #8510 ) ; +#16405 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.142361111111108300 ) ) ; +#16406 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.9999999999999958900 ) ) ; +#16407 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.000000000000000000, 0.0000000000000000000 ) ) ; +#16408 = VERTEX_POINT ( 'NONE', #1139 ) ; +#16409 = ORIENTED_EDGE ( 'NONE', *, *, #4864, .T. ) ; +#16410 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.3090277777777686900 ) ) ; +#16411 = CC_DESIGN_SECURITY_CLASSIFICATION ( #2844, ( #13461 ) ) ; +#16412 = ORIENTED_EDGE ( 'NONE', *, *, #13298, .F. ) ; +#16413 = VECTOR ( 'NONE', #17338, 39.37007874015748900 ) ; +#16414 = ORIENTED_EDGE ( 'NONE', *, *, #8146, .T. ) ; +#16415 = DIRECTION ( 'NONE', ( -0.7862080194966573100, -0.6179619325485540300, 0.0000000000000000000 ) ) ; +#16416 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.2760416666666570300 ) ) ; +#16417 = VERTEX_POINT ( 'NONE', #5487 ) ; +#16418 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.3124999999999907300 ) ) ; +#16419 = DIRECTION ( 'NONE', ( -0.5673761158323350500, 0.8234587683563838700, 0.0000000000000000000 ) ) ; +#16420 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.1041666666666554700 ) ) ; +#16421 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.07986111111109967000 ) ) ; +#16422 = CARTESIAN_POINT ( 'NONE', ( -0.004279790978960987300, -0.2894978083642286700, 0.1184674139220111800 ) ) ; +#16423 = ORIENTED_EDGE ( 'NONE', *, *, #9296, .F. ) ; +#16424 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.6440972222222155500 ) ) ; +#16425 = EDGE_CURVE ( 'NONE', #4767, #2964, #17013, .T. ) ; +#16426 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16427 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.7152777777777716800 ) ) ; +#16428 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.3888888888888801200 ) ) ; +#16429 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.232638888888886600 ) ) ; +#16430 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#16431 = FACE_OUTER_BOUND ( 'NONE', #16301, .T. ) ; +#16432 = AXIS2_PLACEMENT_3D ( 'NONE', #12398, #3577, #816 ) ; +#16433 = DIRECTION ( 'NONE', ( -0.9866647708492405400, 0.1627655675043581700, 0.0000000000000000000 ) ) ; +#16434 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.364583333333332800 ) ) ; +#16435 = ORIENTED_EDGE ( 'NONE', *, *, #448, .T. ) ; +#16436 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.2083333333333235200 ) ) ; +#16437 = ORIENTED_EDGE ( 'NONE', *, *, #16076, .F. ) ; +#16438 = LINE ( 'NONE', #712, #7004 ) ; +#16439 = ORIENTED_EDGE ( 'NONE', *, *, #475, .T. ) ; +#16440 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.6111111111111040600 ) ) ; +#16441 = AXIS2_PLACEMENT_3D ( 'NONE', #4077, #6988, #17286 ) ; +#16442 = DIRECTION ( 'NONE', ( -1.000000000000000000, 2.486899575160351000E-014, 0.0000000000000000000 ) ) ; +#16443 = ADVANCED_FACE ( 'NONE', ( #12638 ), #10098, .T. ) ; +#16444 = ORIENTED_EDGE ( 'NONE', *, *, #5855, .F. ) ; +#16445 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#16446 = VERTEX_POINT ( 'NONE', #2802 ) ; +#16447 = CARTESIAN_POINT ( 'NONE', ( -0.1248205590251519100, 0.2472981288110721300, 0.08286399342893259500 ) ) ; +#16448 = VERTEX_POINT ( 'NONE', #5665 ) ; +#16449 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.6961805555555492500 ) ) ; +#16450 = DIRECTION ( 'NONE', ( -0.7025573672080209800, 0.7116271114718255600, 0.0000000000000000000 ) ) ; +#16451 = CARTESIAN_POINT ( 'NONE', ( 0.3070850166377861500, 0.3438487595863285500, 1.593467001493433100 ) ) ; +#16452 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.8090277777777729100 ) ) ; +#16453 = EDGE_CURVE ( 'NONE', #8792, #10393, #6400, .T. ) ; +#16454 = FACE_OUTER_BOUND ( 'NONE', #15059, .T. ) ; +#16455 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.9583333333333294800 ) ) ; +#16456 = ADVANCED_FACE ( 'NONE', ( #13091 ), #10216, .F. ) ; +#16457 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #19041, #11767, #1408, #15874, #8938, #114, #7651, #4673, #17947 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3863636363636363500, 0.3901515151515151400, 0.3939393939393939200, 0.3977272727272727100, 0.4015151515151514900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#16458 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.1736111111111005600 ) ) ; +#16459 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16460 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16461 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.9045138888888842900 ) ) ; +#16462 = EDGE_CURVE ( 'NONE', #10200, #5449, #5000, .T. ) ; +#16463 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.8749999999999952300 ) ) ; +#16464 = VECTOR ( 'NONE', #5421, 39.37007874015748900 ) ; +#16465 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.5694444444444373100 ) ) ; +#16466 = CARTESIAN_POINT ( 'NONE', ( -1.376255635688542000E-017, 3.125195627036359500E-017, 3.802149639073345400 ) ) ; +#16467 = CARTESIAN_POINT ( 'NONE', ( -0.003783612266355001400, 0.2773232770473949600, 0.08361414857587010100 ) ) ; +#16468 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.6979166666666600800 ) ) ; +#16469 = AXIS2_PLACEMENT_3D ( 'NONE', #10920, #16963, #18451 ) ; +#16470 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#16471 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.2708333333333239900 ) ) ; +#16472 = FACE_OUTER_BOUND ( 'NONE', #10771, .T. ) ; +#16473 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.2725694444444350900 ) ) ; +#16474 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#16475 = CONICAL_SURFACE ( 'NONE', #12822, 0.4687475818742554100, 0.1745329251994298700 ) ; +#16476 = ORIENTED_EDGE ( 'NONE', *, *, #15735, .F. ) ; +#16477 = DIRECTION ( 'NONE', ( 0.9921147013144769900, 0.1253332335643113400, 0.0000000000000000000 ) ) ; +#16478 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.05555555555556792500 ) ) ; +#16479 = LINE ( 'NONE', #1524, #18564 ) ; +#16480 = DIRECTION ( 'NONE', ( -0.1055480449047648000, 0.1378887226129338900, -0.9848077530122085800 ) ) ; +#16481 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16482 = CARTESIAN_POINT ( 'NONE', ( 0.4592360163321189100, 0.04044079890274024400, 1.143750000000000000 ) ) ; +#16483 = EDGE_CURVE ( 'NONE', #8287, #10817, #9648, .T. ) ; +#16484 = VERTEX_POINT ( 'NONE', #8854 ) ; +#16485 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.6302083333333264900 ) ) ; +#16486 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#16487 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16488 = DIRECTION ( 'NONE', ( 0.1664391196603338700, -0.04951473572319166300, -0.9848077530122088000 ) ) ; +#16489 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#16490 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.090277777777774600 ) ) ; +#16492 = EDGE_CURVE ( 'NONE', #5012, #16408, #4784, .T. ) ; +#16491 = VECTOR ( 'NONE', #14821, 39.37007874015748900 ) ; +#16493 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#16494 = PLANE ( 'NONE', #14797 ) ; +#16495 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.315972222222221200 ) ) ; +#16496 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.02777777777776634100 ) ) ; +#16497 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.5347222222222147700 ) ) ; +#16498 = LINE ( 'NONE', #4677, #10984 ) ; +#16499 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.5694444444444369800 ) ) ; +#16500 = ORIENTED_EDGE ( 'NONE', *, *, #12964, .T. ) ; +#16501 = LINE ( 'NONE', #6971, #13981 ) ; +#16502 = ORIENTED_EDGE ( 'NONE', *, *, #17789, .T. ) ; +#16503 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#16504 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16505 = EDGE_CURVE ( 'NONE', #896, #3985, #2029, .T. ) ; +#16506 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16507 = DIRECTION ( 'NONE', ( -0.9620631844027721600, -0.2728267384564744800, 0.0000000000000000000 ) ) ; +#16508 = AXIS2_PLACEMENT_3D ( 'NONE', #10921, #2106, #13946 ) ; +#16509 = DIRECTION ( 'NONE', ( 0.1552240656481576600, -0.07784072873952836700, 0.9848077530122088000 ) ) ; +#16510 = DIRECTION ( 'NONE', ( 0.1664391196603339500, 0.04951473572319539000, 0.9848077530122085800 ) ) ; +#16511 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.8958333333333289300 ) ) ; +#16512 = EDGE_CURVE ( 'NONE', #4957, #12075, #4331, .T. ) ; +#16513 = ORIENTED_EDGE ( 'NONE', *, *, #861, .T. ) ; +#16514 = AXIS2_PLACEMENT_3D ( 'NONE', #7622, #12058, #13727 ) ; +#16515 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.142361111111108500 ) ) ; +#16516 = CIRCLE ( 'NONE', #3919, 0.4687499999999995600 ) ; +#16517 = DIRECTION ( 'NONE', ( -0.9772957051199530100, -0.2118799300407985500, 0.0000000000000000000 ) ) ; +#16518 = AXIS2_PLACEMENT_3D ( 'NONE', #9045, #204, #17911 ) ; +#16519 = VECTOR ( 'NONE', #16480, 39.37007874015748100 ) ; +#16520 = DIRECTION ( 'NONE', ( -0.4596954355469681800, -0.8880766332571098400, 0.0000000000000000000 ) ) ; +#16521 = CIRCLE ( 'NONE', #10161, 0.4687475818742551400 ) ; +#16522 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16523 = ORIENTED_EDGE ( 'NONE', *, *, #11219, .T. ) ; +#16524 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.300347222222221000 ) ) ; +#16525 = ORIENTED_EDGE ( 'NONE', *, *, #12946, .T. ) ; +#16526 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.8246527777777724600 ) ) ; +#16527 = VECTOR ( 'NONE', #12271, 39.37007874015748100 ) ; +#16528 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.09027777777776684100 ) ) ; +#16529 = CARTESIAN_POINT ( 'NONE', ( -0.2295644402768617600, 0.1561360432046003900, 1.541367467408309800 ) ) ; +#16530 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.4427083333333251500 ) ) ; +#16531 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.8124999999999944500 ) ) ; +#16532 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16533 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.1805555555555454200 ) ) ; +#16534 = ADVANCED_FACE ( 'NONE', ( #11696 ), #418, .T. ) ; +#16535 = ORIENTED_EDGE ( 'NONE', *, *, #1314, .F. ) ; +#16536 = EDGE_CURVE ( 'NONE', #16448, #9993, #5915, .T. ) ; +#16537 = DIRECTION ( 'NONE', ( 0.02499999999999999100, 0.9996874511566102800, 0.0000000000000000000 ) ) ; +#16538 = FACE_OUTER_BOUND ( 'NONE', #12012, .T. ) ; +#16539 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.3906249999999915100 ) ) ; +#16540 = CYLINDRICAL_SURFACE ( 'NONE', #9550, 0.4610132068742565100 ) ; +#16541 = AXIS2_PLACEMENT_3D ( 'NONE', #15106, #12090, #10544 ) ; +#16542 = CIRCLE ( 'NONE', #3049, 0.4687499999999995600 ) ; +#16543 = ORIENTED_EDGE ( 'NONE', *, *, #190, .F. ) ; +#16544 = CARTESIAN_POINT ( 'NONE', ( 0.2335770657282076900, 0.1699114087128867900, 0.1165694673924448500 ) ) ; +#16545 = LINE ( 'NONE', #15490, #17935 ) ; +#16546 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, 0.1354166666666796200 ) ) ; +#16547 = PLANE ( 'NONE', #588 ) ; +#16548 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16549 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16550 = ADVANCED_FACE ( 'NONE', ( #3867 ), #19027, .F. ) ; +#16551 = VERTEX_POINT ( 'NONE', #15925 ) ; +#16552 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.5607638888888816200 ) ) ; +#16553 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#16554 = CARTESIAN_POINT ( 'NONE', ( 0.4492896982220449500, -0.1336612493265841000, 1.590985962198545200 ) ) ; +#16555 = DIRECTION ( 'NONE', ( 0.7289686274214055600, 0.6845471059286951700, 0.0000000000000000000 ) ) ; +#16556 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.4027777777777691900 ) ) ; +#16557 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.045138888888885300 ) ) ; +#16558 = VERTEX_POINT ( 'NONE', #2729 ) ; +#16559 = DIRECTION ( 'NONE', ( 0.1442440472914108800, -0.09668166541819939200, 0.9848077530122092400 ) ) ; +#16560 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.350694444444443500 ) ) ; +#16561 = ORIENTED_EDGE ( 'NONE', *, *, #10761, .T. ) ; +#16562 = ORIENTED_EDGE ( 'NONE', *, *, #18473, .T. ) ; +#16563 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.1388888888889016300 ) ) ; +#16564 = FACE_OUTER_BOUND ( 'NONE', #6041, .T. ) ; +#16565 = FACE_BOUND ( 'NONE', #9175, .T. ) ; +#16566 = VECTOR ( 'NONE', #15705, 39.37007874015748100 ) ; +#16567 = ORIENTED_EDGE ( 'NONE', *, *, #10627, .F. ) ; +#16568 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.263888888888887100 ) ) ; +#16569 = FACE_OUTER_BOUND ( 'NONE', #6000, .T. ) ; +#16570 = ORIENTED_EDGE ( 'NONE', *, *, #14050, .T. ) ; +#16571 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.3680555555555464800 ) ) ; +#16572 = EDGE_CURVE ( 'NONE', #18752, #11876, #14026, .T. ) ; +#16573 = CARTESIAN_POINT ( 'NONE', ( 0.2119256669269744000, -0.4094150566479489200, 1.592561465728329600 ) ) ; +#16574 = CARTESIAN_POINT ( 'NONE', ( -2.987024860021044800E-017, 7.469896857675716800E-019, 3.802149639073292500 ) ) ; +#16575 = ORIENTED_EDGE ( 'NONE', *, *, #5248, .T. ) ; +#16576 = VERTEX_POINT ( 'NONE', #17739 ) ; +#16577 = CARTESIAN_POINT ( 'NONE', ( -0.04632776727398443100, 0.4586795339797642400, 1.143750000000000000 ) ) ; +#16578 = CARTESIAN_POINT ( 'NONE', ( 0.09335343970947127000, -0.2711171445821735100, -1.546788699474118900 ) ) ; +#16579 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323600600 ) ) ; +#16580 = ORIENTED_EDGE ( 'NONE', *, *, #8366, .T. ) ; +#16581 = LINE ( 'NONE', #15961, #8750 ) ; +#16582 = VECTOR ( 'NONE', #8962, 39.37007874015748900 ) ; +#16583 = DIRECTION ( 'NONE', ( -0.3090169943749447300, -0.9510565162951544200, 0.0000000000000000000 ) ) ; +#16584 = ORIENTED_EDGE ( 'NONE', *, *, #11341, .T. ) ; +#16585 = VERTEX_POINT ( 'NONE', #1504 ) ; +#16586 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.9131944444444402000 ) ) ; +#16587 = AXIS2_PLACEMENT_3D ( 'NONE', #16839, #417, #2103 ) ; +#16588 = VECTOR ( 'NONE', #9301, 39.37007874015748100 ) ; +#16589 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.131944444444442000 ) ) ; +#16590 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#16591 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#16592 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.269097222222220500 ) ) ; +#16593 = CARTESIAN_POINT ( 'NONE', ( 0.4418741004648765700, 0.1314551491986613300, 1.143750000000000000 ) ) ; +#16594 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #10542, #17761, #6224, #13315, #7460, #17824, #12028, #15047, #4482 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3560606060606060800, 0.3598484848484848600, 0.3636363636363636500, 0.3674242424242424300, 0.3712121212121212200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#16595 = ORIENTED_EDGE ( 'NONE', *, *, #5136, .T. ) ; +#16596 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.506944444444444600 ) ) ; +#16597 = DIRECTION ( 'NONE', ( 0.8090169943749506700, -0.5877852522924684700, 0.0000000000000000000 ) ) ; +#16598 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#16599 = PLANE ( 'NONE', #13516 ) ; +#16600 = DIRECTION ( 'NONE', ( 0.4596954355469803900, -0.8880766332571035100, 0.0000000000000000000 ) ) ; +#16601 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.7569444444444385400 ) ) ; +#16602 = VERTEX_POINT ( 'NONE', #14834 ) ; +#16603 = ORIENTED_EDGE ( 'NONE', *, *, #3325, .T. ) ; +#16604 = VECTOR ( 'NONE', #10889, 39.37007874015748100 ) ; +#16605 = CIRCLE ( 'NONE', #11721, 0.4687475818742548600 ) ; +#16606 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.2777777777777683000 ) ) ; +#16607 = EDGE_LOOP ( 'NONE', ( #6540, #15585, #4448, #15451 ) ) ; +#16608 = ORIENTED_EDGE ( 'NONE', *, *, #12439, .F. ) ; +#16609 = VECTOR ( 'NONE', #10594, 39.37007874015748100 ) ; +#16610 = EDGE_CURVE ( 'NONE', #2566, #12535, #13773, .T. ) ; +#16611 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16612 = EDGE_CURVE ( 'NONE', #2108, #5998, #2478, .T. ) ; +#16613 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.3975694444444358200 ) ) ; +#16614 = CARTESIAN_POINT ( 'NONE', ( 0.4548654901190608600, 0.07503707624389872900, 1.187613820323598600 ) ) ; +#16615 = ORIENTED_EDGE ( 'NONE', *, *, #1792, .T. ) ; +#16616 = VERTEX_POINT ( 'NONE', #9171 ) ; +#16617 = PLANE ( 'NONE', #9229 ) ; +#16618 = ORIENTED_EDGE ( 'NONE', *, *, #704, .F. ) ; +#16619 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.602430555555556700 ) ) ; +#16620 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323614800 ) ) ; +#16621 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.5694444444444372000 ) ) ; +#16622 = VECTOR ( 'NONE', #18556, 39.37007874015748100 ) ; +#16623 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.6024305555555485900 ) ) ; +#16624 = ORIENTED_EDGE ( 'NONE', *, *, #18151, .F. ) ; +#16625 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16626 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.152777777777775000 ) ) ; +#16627 = CARTESIAN_POINT ( 'NONE', ( -6.359620834537949100E-017, -0.2886751345948123700, 1.548179320649367700 ) ) ; +#16628 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#16629 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.204861111111109200 ) ) ; +#16630 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.006944444444456064100 ) ) ; +#16631 = EDGE_CURVE ( 'NONE', #5944, #3921, #6639, .T. ) ; +#16632 = CARTESIAN_POINT ( 'NONE', ( -0.4492896982220432900, -0.1336612493265903500, 1.484375000000000200 ) ) ; +#16633 = ORIENTED_EDGE ( 'NONE', *, *, #10830, .T. ) ; +#16634 = ORIENTED_EDGE ( 'NONE', *, *, #6213, .T. ) ; +#16635 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.3923611111111022800 ) ) ; +#16636 = EDGE_CURVE ( 'NONE', #14170, #979, #19079, .T. ) ; +#16637 = CARTESIAN_POINT ( 'NONE', ( 0.4190133544667936100, -0.2101240212147261500, 1.143750000000000000 ) ) ; +#16638 = EDGE_LOOP ( 'NONE', ( #16011, #13218, #1950, #17066 ) ) ; +#16639 = EDGE_CURVE ( 'NONE', #14948, #1696, #1722, .T. ) ; +#16640 = ADVANCED_FACE ( 'NONE', ( #11256 ), #10592, .F. ) ; +#16641 = AXIS2_PLACEMENT_3D ( 'NONE', #7761, #18070, #6469 ) ; +#16642 = VECTOR ( 'NONE', #16559, 39.37007874015748100 ) ; +#16643 = ORIENTED_EDGE ( 'NONE', *, *, #15759, .F. ) ; +#16644 = AXIS2_PLACEMENT_3D ( 'NONE', #10859, #12461, #3371 ) ; +#16645 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16646 = EDGE_LOOP ( 'NONE', ( #19056, #3680, #1021, #12420 ) ) ; +#16647 = CARTESIAN_POINT ( 'NONE', ( -0.2154822354126440000, -0.4162859218392684400, 1.592561465728329600 ) ) ; +#16648 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16649 = DIRECTION ( 'NONE', ( 0.7071067811865481300, 0.0000000000000000000, 0.7071067811865469100 ) ) ; +#16650 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#16651 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.6388888888888824000 ) ) ; +#16652 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.076388888888885700 ) ) ; +#16653 = VERTEX_POINT ( 'NONE', #1569 ) ; +#16654 = ADVANCED_FACE ( 'NONE', ( #3407 ), #10786, .T. ) ; +#16655 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16656 = EDGE_LOOP ( 'NONE', ( #10308, #1734, #14968, #17263 ) ) ; +#16657 = CIRCLE ( 'NONE', #7394, 0.4687475818742561400 ) ; +#16658 = ADVANCED_FACE ( 'NONE', ( #14687 ), #13551, .F. ) ; +#16659 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#16660 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.480902777777777900 ) ) ; +#16661 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.3611111111111023300 ) ) ; +#16662 = ORIENTED_EDGE ( 'NONE', *, *, #445, .F. ) ; +#16663 = EDGE_CURVE ( 'NONE', #9864, #10621, #16766, .T. ) ; +#16664 = CARTESIAN_POINT ( 'NONE', ( -0.1272661417865499900, -0.2783376798628232600, -1.527645161719401100 ) ) ; +#16665 = EDGE_LOOP ( 'NONE', ( #6917, #18651, #9088, #5112 ) ) ; +#16666 = CARTESIAN_POINT ( 'NONE', ( 0.06919666627599171900, -0.4557905201830936300, 1.187613820323598600 ) ) ; +#16667 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.7083333333333269300 ) ) ; +#16668 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#16669 = AXIS2_PLACEMENT_3D ( 'NONE', #1333, #18919, #7212 ) ; +#16670 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.1388888888888784300 ) ) ; +#16671 = ORIENTED_EDGE ( 'NONE', *, *, #2139, .T. ) ; +#16672 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.06423611111110003000 ) ) ; +#16673 = ORIENTED_EDGE ( 'NONE', *, *, #17965, .T. ) ; +#16674 = ORIENTED_EDGE ( 'NONE', *, *, #1960, .F. ) ; +#16675 = CARTESIAN_POINT ( 'NONE', ( 0.2870839301287822500, 0.009544320406479622800, 0.1121749670986410000 ) ) ; +#16676 = CARTESIAN_POINT ( 'NONE', ( 0.1257767296168573200, 0.4435238338571829100, 1.440511179676401200 ) ) ; +#16677 = VECTOR ( 'NONE', #1927, 39.37007874015748100 ) ; +#16678 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.592013888888889700 ) ) ; +#16679 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.1493055555555688200 ) ) ; +#16680 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.5590277777777704600 ) ) ; +#16681 = ORIENTED_EDGE ( 'NONE', *, *, #2860, .T. ) ; +#16682 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.4392361111111027200 ) ) ; +#16683 = DIRECTION ( 'NONE', ( -0.1729787697315208500, 0.01523268949379533200, 0.9848077530122085800 ) ) ; +#16684 = EDGE_CURVE ( 'NONE', #492, #12070, #8941, .T. ) ; +#16685 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.548611111111111400 ) ) ; +#16686 = CARTESIAN_POINT ( 'NONE', ( 0.3122369529384005400, 0.3496174777277400400, 1.484375000000000200 ) ) ; +#16687 = CARTESIAN_POINT ( 'NONE', ( -0.4347510546871054000, -0.1533776299234526100, 1.590985962198545200 ) ) ; +#16688 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.204861111111108700 ) ) ; +#16689 = EDGE_LOOP ( 'NONE', ( #1245, #721, #1770, #14281, #5590, #3668 ) ) ; +#16690 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16691 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.7638888888888830700 ) ) ; +#16692 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.010416666666663200 ) ) ; +#16693 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.1631944444444571900 ) ) ; +#16694 = LINE ( 'NONE', #3603, #13486 ) ; +#16695 = VERTEX_POINT ( 'NONE', #7560 ) ; +#16696 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.239583333333331500 ) ) ; +#16697 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.2951388888888792400 ) ) ; +#16698 = AXIS2_PLACEMENT_3D ( 'NONE', #10908, #10843, #12369 ) ; +#16699 = CARTESIAN_POINT ( 'NONE', ( -0.2321251145655892600, 0.3983103163368959500, 1.592561465728329600 ) ) ; +#16700 = LINE ( 'NONE', #9410, #1487 ) ; +#16701 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#16702 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.6736111111111045000 ) ) ; +#16703 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.7916666666666611900 ) ) ; +#16704 = CARTESIAN_POINT ( 'NONE', ( -2.241780398015103200E-017, -2.575916910361609300E-017, 3.802149639073326300 ) ) ; +#16705 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#16706 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#16707 = LINE ( 'NONE', #18886, #358 ) ; +#16708 = ORIENTED_EDGE ( 'NONE', *, *, #18716, .T. ) ; +#16709 = DIRECTION ( 'NONE', ( -0.2728267384564613300, -0.9620631844027758300, -0.0000000000000000000 ) ) ; +#16710 = DIRECTION ( 'NONE', ( 0.9297764858882536800, -0.3681245526846719200, 0.0000000000000000000 ) ) ; +#16711 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.7152777777777719100 ) ) ; +#16712 = CIRCLE ( 'NONE', #13334, 0.4687499999999995600 ) ; +#16713 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.7604166666666610800 ) ) ; +#16714 = CIRCLE ( 'NONE', #706, 0.4610132068742565100 ) ; +#16715 = DIRECTION ( 'NONE', ( -0.7862080194966530900, -0.6179619325485594700, 0.0000000000000000000 ) ) ; +#16716 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.383680555555555400 ) ) ; +#16717 = DIRECTION ( 'NONE', ( -0.9584846895403575900, -0.2851439985633997800, -0.0000000000000000000 ) ) ; +#16718 = EDGE_CURVE ( 'NONE', #2257, #12415, #6861, .T. ) ; +#16719 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.2361111111111013300 ) ) ; +#16720 = CARTESIAN_POINT ( 'NONE', ( -0.2089580642901297000, 0.1680331399275628300, 1.535746377707105900 ) ) ; +#16721 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.7430555555555494700 ) ) ; +#16722 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16723 = FACE_OUTER_BOUND ( 'NONE', #14820, .T. ) ; +#16724 = ORIENTED_EDGE ( 'NONE', *, *, #18923, .F. ) ; +#16725 = ADVANCED_FACE ( 'NONE', ( #15607 ), #14915, .T. ) ; +#16726 = FACE_OUTER_BOUND ( 'NONE', #8835, .T. ) ; +#16727 = ORIENTED_EDGE ( 'NONE', *, *, #12694, .F. ) ; +#16728 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, 0.005208333333345054600 ) ) ; +#16729 = CARTESIAN_POINT ( 'NONE', ( -0.3120386438412785500, -7.339574685704749600E-015, 0.1808219196579992600 ) ) ; +#16730 = CARTESIAN_POINT ( 'NONE', ( 0.07237133848416924000, 0.2820139055899328300, 0.1216124078505894200 ) ) ; +#16731 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16732 = EDGE_CURVE ( 'NONE', #5807, #1651, #11463, .T. ) ; +#16733 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, 0.03819444444445671500 ) ) ; +#16734 = CARTESIAN_POINT ( 'NONE', ( -0.3144999999999991100, -3.585550491684345600E-016, 1.827040330732674400 ) ) ; +#16735 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.1145833333333461100 ) ) ; +#16736 = DIRECTION ( 'NONE', ( 0.2118799300407920300, 0.9772957051199545600, 0.0000000000000000000 ) ) ; +#16737 = VECTOR ( 'NONE', #18784, 39.37007874015748100 ) ; +#16738 = ADVANCED_FACE ( 'NONE', ( #8464 ), #8015, .T. ) ; +#16739 = EDGE_CURVE ( 'NONE', #5358, #1554, #4543, .T. ) ; +#16740 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.3003472222222128300 ) ) ; +#16741 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#16742 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#16743 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.1805555555555451400 ) ) ; +#16744 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.8368055555555501400 ) ) ; +#16745 = EDGE_CURVE ( 'NONE', #7702, #12366, #15818, .T. ) ; +#16746 = VECTOR ( 'NONE', #3675, 39.37007874015748100 ) ; +#16747 = CIRCLE ( 'NONE', #17672, 0.4610132068742565100 ) ; +#16748 = ADVANCED_FACE ( 'NONE', ( #11008 ), #806, .F. ) ; +#16749 = AXIS2_PLACEMENT_3D ( 'NONE', #644, #18355, #13971 ) ; +#16750 = ORIENTED_EDGE ( 'NONE', *, *, #4772, .F. ) ; +#16751 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.003472222222218800 ) ) ; +#16752 = ORIENTED_EDGE ( 'NONE', *, *, #18607, .T. ) ; +#16753 = VECTOR ( 'NONE', #15452, 39.37007874015748100 ) ; +#16754 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.006944444444432843100 ) ) ; +#16755 = DIRECTION ( 'NONE', ( 0.1055480449047614400, -0.1378887226129315600, -0.9848077530122091300 ) ) ; +#16756 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.3159722222222127700 ) ) ; +#16757 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.9583333333333291500 ) ) ; +#16758 = ORIENTED_EDGE ( 'NONE', *, *, #11489, .F. ) ; +#16759 = LINE ( 'NONE', #8266, #5446 ) ; +#16760 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.6666666666666599700 ) ) ; +#16761 = CIRCLE ( 'NONE', #1963, 0.4687499999999995600 ) ; +#16762 = EDGE_LOOP ( 'NONE', ( #15669, #3638, #2211, #3258 ) ) ; +#16763 = EDGE_CURVE ( 'NONE', #11460, #15962, #639, .T. ) ; +#16764 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16765 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.1805555555555686500 ) ) ; +#16766 = LINE ( 'NONE', #16503, #16293 ) ; +#16767 = FACE_OUTER_BOUND ( 'NONE', #18267, .T. ) ; +#16768 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#16769 = ORIENTED_EDGE ( 'NONE', *, *, #7292, .T. ) ; +#16770 = AXIS2_PLACEMENT_3D ( 'NONE', #16398, #7579, #3268 ) ; +#16771 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16772 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.6805555555555493600 ) ) ; +#16773 = EDGE_CURVE ( 'NONE', #3079, #6683, #18834, .T. ) ; +#16774 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.8090277777777729100 ) ) ; +#16775 = ORIENTED_EDGE ( 'NONE', *, *, #17477, .F. ) ; +#16776 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.6388888888888822900 ) ) ; +#16777 = AXIS2_PLACEMENT_3D ( 'NONE', #16489, #9226, #12176 ) ; +#16778 = ORIENTED_EDGE ( 'NONE', *, *, #11221, .F. ) ; +#16779 = CARTESIAN_POINT ( 'NONE', ( 1.581384890151860400E-016, 2.635255761331114000E-016, -1.174024639073298200 ) ) ; +#16780 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.456597222222222100 ) ) ; +#16781 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.388888888888888400 ) ) ; +#16782 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -1.510416666666667200 ) ) ; +#16783 = ORIENTED_EDGE ( 'NONE', *, *, #7062, .F. ) ; +#16784 = ORIENTED_EDGE ( 'NONE', *, *, #16773, .T. ) ; +#16785 = LINE ( 'NONE', #1725, #2715 ) ; +#16786 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#16787 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965500, 0.2209708691207961100, -1.451388888888888800 ) ) ; +#16788 = LINE ( 'NONE', #6285, #15837 ) ; +#16789 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16790 = VECTOR ( 'NONE', #14399, 39.37007874015748100 ) ; +#16791 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.1319444444444338400 ) ) ; +#16792 = EDGE_LOOP ( 'NONE', ( #5602, #6236, #7200, #11376 ) ) ; +#16793 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.5833333333333259300 ) ) ; +#16794 = LINE ( 'NONE', #7783, #15395 ) ; +#16795 = EDGE_CURVE ( 'NONE', #2364, #9753, #11226, .T. ) ; +#16796 = ORIENTED_EDGE ( 'NONE', *, *, #3913, .T. ) ; +#16797 = VERTEX_POINT ( 'NONE', #7825 ) ; +#16798 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.1336805555555448700 ) ) ; +#16799 = AXIS2_PLACEMENT_3D ( 'NONE', #16194, #8875, #5760 ) ; +#16800 = DIRECTION ( 'NONE', ( 0.3912539079287261100, -0.9202827715058561300, 0.0000000000000000000 ) ) ; +#16801 = DIRECTION ( 'NONE', ( 0.6374239897486826400, 0.7705132427757949200, 0.0000000000000000000 ) ) ; +#16802 = EDGE_LOOP ( 'NONE', ( #1762, #7269, #3999, #17084 ) ) ; +#16803 = ORIENTED_EDGE ( 'NONE', *, *, #7749, .T. ) ; +#16804 = LINE ( 'NONE', #15257, #214 ) ; +#16805 = VECTOR ( 'NONE', #4565, 39.37007874015748900 ) ; +#16806 = ORIENTED_EDGE ( 'NONE', *, *, #4294, .T. ) ; +#16807 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16808 = ORIENTED_EDGE ( 'NONE', *, *, #18255, .T. ) ; +#16809 = LINE ( 'NONE', #8371, #7131 ) ; +#16810 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.442708333333333500 ) ) ; +#16811 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#16812 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323615500 ) ) ; +#16813 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.2309027777777677400 ) ) ; +#16814 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16815 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.541666666666666700 ) ) ; +#16816 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #11913, #2703, #1292, #1234, #14946, #11535, #8972, #17910, #11599 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1439393939393939500, 0.1477272727272727300, 0.1515151515151515200, 0.1553030303030303000, 0.1590909090909090900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#16817 = CARTESIAN_POINT ( 'NONE', ( 0.2119256669269656800, 0.4094150566479534100, 1.484375000000000200 ) ) ; +#16818 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16819 = AXIS2_PLACEMENT_3D ( 'NONE', #1027, #4037, #14341 ) ; +#16820 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.024305555555551600 ) ) ; +#16821 = CARTESIAN_POINT ( 'NONE', ( -0.06919666627598859700, 0.4557905201830941800, 1.187613820323597500 ) ) ; +#16822 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.034722222222218800 ) ) ; +#16823 = ORIENTED_EDGE ( 'NONE', *, *, #2634, .F. ) ; +#16824 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.2187500000000133200 ) ) ; +#16825 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676387400 ) ) ; +#16826 = EDGE_LOOP ( 'NONE', ( #17235, #8566, #18037, #1673 ) ) ; +#16827 = VECTOR ( 'NONE', #820, 39.37007874015748900 ) ; +#16828 = CIRCLE ( 'NONE', #11467, 0.4610132068742565100 ) ; +#16829 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.2986111111111015600 ) ) ; +#16830 = EDGE_LOOP ( 'NONE', ( #6306, #19082, #3467, #7081, #1378, #12386 ) ) ; +#16831 = ORIENTED_EDGE ( 'NONE', *, *, #12324, .F. ) ; +#16832 = EDGE_CURVE ( 'NONE', #4519, #7338, #310, .T. ) ; +#16833 = CYLINDRICAL_SURFACE ( 'NONE', #10063, 0.4610132068742565100 ) ; +#16834 = ADVANCED_FACE ( 'NONE', ( #15125 ), #17659, .T. ) ; +#16835 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16836 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.7048611111111046100 ) ) ; +#16837 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#16838 = CARTESIAN_POINT ( 'NONE', ( -0.1803732187963043300, 0.4242625117230446300, 1.484375000000000200 ) ) ; +#16839 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#16840 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #4134, #8514, #3950, #18753, #17399, #8384, #1183, #6913, #12766 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6590909090909091700, 0.6628787878787878500, 0.6666666666666667400, 0.6704545454545454100, 0.6742424242424243100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#16841 = CARTESIAN_POINT ( 'NONE', ( -0.4120995984523176900, 0.2066569569792524900, 1.592116737595687900 ) ) ; +#16842 = ORIENTED_EDGE ( 'NONE', *, *, #482, .T. ) ; +#16843 = EDGE_CURVE ( 'NONE', #18178, #17003, #3839, .T. ) ; +#16844 = DIRECTION ( 'NONE', ( 1.000000000000000000, 2.664535259100375700E-015, 0.0000000000000000000 ) ) ; +#16845 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16846 = CARTESIAN_POINT ( 'NONE', ( 0.1051863658125235400, -0.4567957869192244600, 1.484375000000000200 ) ) ; +#16847 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.6354166666666601900 ) ) ; +#16848 = ORIENTED_EDGE ( 'NONE', *, *, #7981, .F. ) ; +#16849 = ORIENTED_EDGE ( 'NONE', *, *, #2414, .F. ) ; +#16850 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.8055555555555503600 ) ) ; +#16851 = VECTOR ( 'NONE', #8696, 39.37007874015748100 ) ; +#16852 = ADVANCED_FACE ( 'NONE', ( #15579 ), #3889, .F. ) ; +#16853 = EDGE_LOOP ( 'NONE', ( #9277, #1817, #174, #3743, #6046, #14342 ) ) ; +#16854 = ORIENTED_EDGE ( 'NONE', *, *, #5379, .F. ) ; +#16855 = CARTESIAN_POINT ( 'NONE', ( 0.1803732187962983300, 0.4242625117230472400, 1.143750000000000000 ) ) ; +#16856 = ADVANCED_FACE ( 'NONE', ( #1312 ), #10778, .F. ) ; +#16857 = DIRECTION ( 'NONE', ( 0.1365235898527185600, -0.1073079634545860600, -0.9848077530122089100 ) ) ; +#16858 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.078124999999997100 ) ) ; +#16859 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#16860 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -1.513888888888889100 ) ) ; +#16861 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#16862 = CARTESIAN_POINT ( 'NONE', ( -0.1803732187963012500, -0.4242625117230460200, 1.591590229135180400 ) ) ; +#16863 = PLANE ( 'NONE', #389 ) ; +#16864 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 0.09735364475126880000, 1.259981494431423600 ) ) ; +#16865 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.5034722222222142200 ) ) ; +#16866 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16867 = ORIENTED_EDGE ( 'NONE', *, *, #16971, .T. ) ; +#16868 = ORIENTED_EDGE ( 'NONE', *, *, #15071, .F. ) ; +#16869 = EDGE_LOOP ( 'NONE', ( #2690, #7888, #3958, #1383, #382, #6883 ) ) ; +#16870 = FACE_OUTER_BOUND ( 'NONE', #14258, .T. ) ; +#16871 = EDGE_CURVE ( 'NONE', #17782, #13674, #9826, .T. ) ; +#16872 = EDGE_LOOP ( 'NONE', ( #12014, #10248, #906, #13371 ) ) ; +#16873 = EDGE_CURVE ( 'NONE', #4799, #366, #6143, .T. ) ; +#16874 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.05729166666665543700 ) ) ; +#16875 = AXIS2_PLACEMENT_3D ( 'NONE', #2591, #8440, #11354 ) ; +#16876 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.8263888888888837300 ) ) ; +#16877 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.529513888888889300 ) ) ; +#16878 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16879 = EDGE_LOOP ( 'NONE', ( #2549, #16988, #5284, #14405, #3553, #18257 ) ) ; +#16880 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -0.1443375672974062400, 1.272329099369260200 ) ) ; +#16881 = ORIENTED_EDGE ( 'NONE', *, *, #15964, .F. ) ; +#16882 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.2413194444444346800 ) ) ; +#16883 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.517361111111111600 ) ) ; +#16884 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -3.585550491684345600E-016, 0.9375000000000000000 ) ) ; +#16885 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#16886 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16887 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.8784722222222171000 ) ) ; +#16888 = EDGE_LOOP ( 'NONE', ( #12901, #3901, #13634, #12261 ) ) ; +#16889 = CARTESIAN_POINT ( 'NONE', ( -0.1589412568245201800, -0.4327480257511615600, 1.591590229135180400 ) ) ; +#16890 = LINE ( 'NONE', #6587, #12962 ) ; +#16891 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.041666666666663400 ) ) ; +#16892 = ORIENTED_EDGE ( 'NONE', *, *, #4891, .T. ) ; +#16893 = EDGE_LOOP ( 'NONE', ( #2406, #4981, #572, #18683, #1704, #4962 ) ) ; +#16894 = EDGE_CURVE ( 'NONE', #10108, #5774, #7082, .T. ) ; +#16895 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.07986111111109968400 ) ) ; +#16896 = EDGE_CURVE ( 'NONE', #12827, #12934, #15981, .T. ) ; +#16897 = EDGE_CURVE ( 'NONE', #2598, #641, #2238, .T. ) ; +#16898 = DIRECTION ( 'NONE', ( 0.9866647708492415300, -0.1627655675043517000, 0.0000000000000000000 ) ) ; +#16899 = VERTEX_POINT ( 'NONE', #2531 ) ; +#16900 = AXIS2_PLACEMENT_3D ( 'NONE', #2595, #14366, #5538 ) ; +#16901 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.7916666666666608600 ) ) ; +#16902 = DIRECTION ( 'NONE', ( -0.1552240656481588800, 0.07784072873952897800, 0.9848077530122085800 ) ) ; +#16903 = FACE_OUTER_BOUND ( 'NONE', #12125, .T. ) ; +#16904 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.562500000000000000 ) ) ; +#16905 = ORIENTED_EDGE ( 'NONE', *, *, #2782, .F. ) ; +#16906 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -1.496527777777777900 ) ) ; +#16907 = DIRECTION ( 'NONE', ( 0.02606405807963818600, 0.1716809671555535600, 0.9848077530122083500 ) ) ; +#16908 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.3298611111111019500 ) ) ; +#16909 = ORIENTED_EDGE ( 'NONE', *, *, #11709, .F. ) ; +#16910 = DIRECTION ( 'NONE', ( -0.03896623090933200300, -0.1692197460574969300, -0.9848077530122094600 ) ) ; +#16911 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16912 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.7291666666666609700 ) ) ; +#16913 = VECTOR ( 'NONE', #573, 39.37007874015748100 ) ; +#16914 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.7569444444444388700 ) ) ; +#16915 = EDGE_LOOP ( 'NONE', ( #4104, #13550, #17108, #12401 ) ) ; +#16916 = ORIENTED_EDGE ( 'NONE', *, *, #11418, .T. ) ; +#16917 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#16918 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -1.116319444444441500 ) ) ; +#16919 = CARTESIAN_POINT ( 'NONE', ( -0.4624991113355804700, -0.07629635976767085200, 1.143750000000000000 ) ) ; +#16920 = EDGE_CURVE ( 'NONE', #3414, #7132, #18591, .T. ) ; +#16921 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.9027777777777732400 ) ) ; +#16922 = VERTEX_POINT ( 'NONE', #5601 ) ; +#16923 = APPROVAL_DATE_TIME ( #10464, #263 ) ; +#16924 = DIRECTION ( 'NONE', ( -0.06279051952932435100, 0.9980267284282707800, 0.0000000000000000000 ) ) ; +#16925 = VERTEX_POINT ( 'NONE', #17339 ) ; +#16926 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.5104166666666586400 ) ) ; +#16927 = CARTESIAN_POINT ( 'NONE', ( -1.899200323792849900E-016, -2.416275900747796600E-016, -1.174024639073300200 ) ) ; +#16928 = LINE ( 'NONE', #1603, #12080 ) ; +#16929 = ADVANCED_FACE ( 'NONE', ( #7766 ), #397, .T. ) ; +#16930 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, 0.01562500000001193800 ) ) ; +#16931 = CARTESIAN_POINT ( 'NONE', ( -0.3091457696510430700, 0.04593245680680762400, 0.1797634108157748500 ) ) ; +#16932 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#16933 = CIRCLE ( 'NONE', #16518, 0.4687475818742578600 ) ; +#16934 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16935 = CARTESIAN_POINT ( 'NONE', ( -0.4592360163321195800, 0.04044079890273363800, 1.440511179676401600 ) ) ; +#16936 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.456597222222221900 ) ) ; +#16937 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.538194444444444900 ) ) ; +#16938 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#16939 = ADVANCED_FACE ( 'NONE', ( #5213 ), #14437, .T. ) ; +#16940 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.4461805555555473100 ) ) ; +#16941 = EDGE_CURVE ( 'NONE', #3531, #2160, #6608, .T. ) ; +#16942 = DIRECTION ( 'NONE', ( 0.1004911932742472600, 0.9949379478511801700, 0.0000000000000000000 ) ) ; +#16943 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.9583333333333289300 ) ) ; +#16944 = FACE_OUTER_BOUND ( 'NONE', #5716, .T. ) ; +#16945 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16946 = ADVANCED_FACE ( 'NONE', ( #6833 ), #17158, .F. ) ; +#16947 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.8437499999999952300 ) ) ; +#16948 = CARTESIAN_POINT ( 'NONE', ( 0.1257767296168668100, -0.4435238338571802500, 1.590308733529502700 ) ) ; +#16949 = VECTOR ( 'NONE', #5936, 39.37007874015748100 ) ; +#16950 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.1874999999999894500 ) ) ; +#16951 = VERTEX_POINT ( 'NONE', #15913 ) ; +#16952 = AXIS2_PLACEMENT_3D ( 'NONE', #12076, #3066, #3122 ) ; +#16953 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -1.291666666666665200 ) ) ; +#16954 = FACE_BOUND ( 'NONE', #16078, .T. ) ; +#16955 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.09027777777779035000 ) ) ; +#16956 = ORIENTED_EDGE ( 'NONE', *, *, #1455, .F. ) ; +#16957 = FACE_OUTER_BOUND ( 'NONE', #8128, .T. ) ; +#16958 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.5972222222222149900 ) ) ; +#16959 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16960 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16961 = CARTESIAN_POINT ( 'NONE', ( 0.2575878607148522300, 0.1203061636372582100, -1.549195558689958000 ) ) ; +#16962 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.04861111111109984300 ) ) ; +#16963 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#16964 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#16965 = PLANE ( 'NONE', #17143 ) ; +#16966 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.3368055555555468100 ) ) ; +#16967 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.8194444444444394200 ) ) ; +#16968 = CIRCLE ( 'NONE', #18983, 0.05000000000000001000 ) ; +#16969 = ORIENTED_EDGE ( 'NONE', *, *, #11606, .T. ) ; +#16970 = LINE ( 'NONE', #7032, #13047 ) ; +#16971 = EDGE_CURVE ( 'NONE', #3079, #3832, #3165, .T. ) ; +#16972 = EDGE_LOOP ( 'NONE', ( #18630, #18850, #14532, #17658 ) ) ; +#16973 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.133680555555552900 ) ) ; +#16974 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#16975 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#16977 = EDGE_CURVE ( 'NONE', #18868, #8136, #13992, .T. ) ; +#16976 = VECTOR ( 'NONE', #9076, 39.37007874015748900 ) ; +#16978 = CARTESIAN_POINT ( 'NONE', ( -0.2783579065153454200, -0.01843260753743471100, 0.08945310655671741300 ) ) ; +#16979 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#16980 = CARTESIAN_POINT ( 'NONE', ( 0.4219140922835721300, -0.1858000959230524700, 1.592116737595687700 ) ) ; +#16981 = CARTESIAN_POINT ( 'NONE', ( 0.3122385636735728900, -0.3496192812976191600, 1.143750000000000000 ) ) ; +#16982 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.4444444444444360400 ) ) ; +#16983 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.458333333333333000 ) ) ; +#16984 = ORIENTED_EDGE ( 'NONE', *, *, #817, .F. ) ; +#16985 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, 0.2065972222222354800 ) ) ; +#16986 = CIRCLE ( 'NONE', #12754, 0.4687499999999996100 ) ; +#16987 = VERTEX_POINT ( 'NONE', #9807 ) ; +#16988 = ORIENTED_EDGE ( 'NONE', *, *, #8669, .T. ) ; +#16989 = CARTESIAN_POINT ( 'NONE', ( -0.04349090697847207000, -0.2729727632078031200, -1.556917725157686000 ) ) ; +#16990 = CARTESIAN_POINT ( 'NONE', ( -0.2926908802355652800, 0.03821306219489764600, 0.1339789969840968200 ) ) ; +#16991 = LINE ( 'NONE', #3697, #10787 ) ; +#16992 = EDGE_CURVE ( 'NONE', #4557, #18888, #7537, .T. ) ; +#16993 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.394097222222221400 ) ) ; +#16994 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.489583333333333300 ) ) ; +#16995 = PLANE ( 'NONE', #13794 ) ; +#16996 = EDGE_CURVE ( 'NONE', #17258, #18067, #12584, .T. ) ; +#16997 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.05729166666665516700 ) ) ; +#16998 = PLANE ( 'NONE', #10940 ) ; +#16999 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.347222222222221000 ) ) ; +#17000 = CARTESIAN_POINT ( 'NONE', ( 0.2615678826637189400, 0.3796253675287058500, 1.187613820323604600 ) ) ; +#17001 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.8541666666666614100 ) ) ; +#17002 = EDGE_CURVE ( 'NONE', #18433, #17629, #18023, .T. ) ; +#17003 = VERTEX_POINT ( 'NONE', #19077 ) ; +#17004 = AXIS2_PLACEMENT_3D ( 'NONE', #15411, #16964, #3762 ) ; +#17005 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#17006 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.8749999999999954500 ) ) ; +#17007 = AXIS2_PLACEMENT_3D ( 'NONE', #9384, #16786, #3333 ) ; +#17008 = ORIENTED_EDGE ( 'NONE', *, *, #3967, .T. ) ; +#17009 = CIRCLE ( 'NONE', #16875, 0.4687499999999995600 ) ; +#17010 = FACE_BOUND ( 'NONE', #12737, .T. ) ; +#17011 = VECTOR ( 'NONE', #11449, 39.37007874015748100 ) ; +#17012 = ORIENTED_EDGE ( 'NONE', *, *, #13781, .T. ) ; +#17013 = LINE ( 'NONE', #16112, #12384 ) ; +#17014 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.1145833333333223500 ) ) ; +#17015 = ADVANCED_FACE ( 'NONE', ( #9615 ), #14585, .T. ) ; +#17016 = ORIENTED_EDGE ( 'NONE', *, *, #15120, .F. ) ; +#17017 = CARTESIAN_POINT ( 'NONE', ( 0.4606833792705951100, -0.01743562377178318300, 1.587900241027141200 ) ) ; +#17018 = EDGE_LOOP ( 'NONE', ( #5340, #12245, #1567, #13990 ) ) ; +#17019 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.4479166666666581900 ) ) ; +#17020 = EDGE_CURVE ( 'NONE', #7348, #18012, #5657, .T. ) ; +#17021 = CARTESIAN_POINT ( 'NONE', ( -0.2615678826637244400, 0.3796253675287022400, 1.484375000000000200 ) ) ; +#17022 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.07986111111110022500 ) ) ; +#17023 = VERTEX_POINT ( 'NONE', #17977 ) ; +#17024 = VERTEX_POINT ( 'NONE', #7731 ) ; +#17025 = VECTOR ( 'NONE', #18806, 39.37007874015748100 ) ; +#17026 = CARTESIAN_POINT ( 'NONE', ( 0.04632776727398757500, -0.4586795339797638500, 1.484375000000000200 ) ) ; +#17027 = VECTOR ( 'NONE', #5067, 39.37007874015748100 ) ; +#17028 = AXIS2_PLACEMENT_3D ( 'NONE', #1605, #7522, #13392 ) ; +#17029 = DIRECTION ( 'NONE', ( 0.02606405807963908100, 0.1716809671555513400, 0.9848077530122088000 ) ) ; +#17030 = FACE_OUTER_BOUND ( 'NONE', #16292, .T. ) ; +#17031 = ORIENTED_EDGE ( 'NONE', *, *, #1501, .T. ) ; +#17032 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.3263888888888799000 ) ) ; +#17033 = FACE_OUTER_BOUND ( 'NONE', #18715, .T. ) ; +#17034 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.5868055555555485900 ) ) ; +#17035 = ADVANCED_FACE ( 'NONE', ( #14658 ), #10067, .T. ) ; +#17036 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#17037 = ADVANCED_FACE ( 'NONE', ( #7301 ), #17907, .T. ) ; +#17038 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.074652777777774600 ) ) ; +#17039 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.4374999999999917300 ) ) ; +#17040 = ORIENTED_EDGE ( 'NONE', *, *, #14046, .F. ) ; +#17041 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.8993055555555511400 ) ) ; +#17042 = ORIENTED_EDGE ( 'NONE', *, *, #11249, .T. ) ; +#17043 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#17044 = CARTESIAN_POINT ( 'NONE', ( -0.3624522803384139800, 0.2848886122504193900, 1.143750000000000000 ) ) ; +#17045 = CARTESIAN_POINT ( 'NONE', ( -0.4347510546871054000, -0.1533776299234526100, 1.484375000000000200 ) ) ; +#17046 = DIRECTION ( 'NONE', ( 1.000000000000000000, 3.641531520770513500E-014, 0.0000000000000000000 ) ) ; +#17047 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.5069444444444365400 ) ) ; +#17048 = DIRECTION ( 'NONE', ( 0.1365235898527182900, -0.1073079634545874000, -0.9848077530122088000 ) ) ; +#17049 = ORIENTED_EDGE ( 'NONE', *, *, #14145, .F. ) ; +#17050 = VECTOR ( 'NONE', #6543, 39.37007874015748100 ) ; +#17051 = LINE ( 'NONE', #12476, #13357 ) ; +#17052 = VERTEX_POINT ( 'NONE', #15256 ) ; +#17053 = ORIENTED_EDGE ( 'NONE', *, *, #9975, .T. ) ; +#17054 = CIRCLE ( 'NONE', #1069, 0.4610132068742565100 ) ; +#17055 = EDGE_CURVE ( 'NONE', #9928, #6211, #16516, .T. ) ; +#17056 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2095, #6521, #6326, #12372, #18189, #12456, #16757, #8077, #18121 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6439393939393940300, 0.6477272727272727100, 0.6515151515151516000, 0.6553030303030302800, 0.6590909090909091700 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#17057 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, 0.09201388888890134300 ) ) ; +#17058 = AXIS2_PLACEMENT_3D ( 'NONE', #1089, #11396, #15806 ) ; +#17059 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.506944444444445100 ) ) ; +#17060 = CARTESIAN_POINT ( 'NONE', ( -0.05079066712948301200, 0.2873340176337155200, 0.1246704880044778400 ) ) ; +#17061 = ORIENTED_EDGE ( 'NONE', *, *, #9483, .F. ) ; +#17062 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#17063 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.2916666666666572500 ) ) ; +#17064 = VERTEX_POINT ( 'NONE', #13660 ) ; +#17065 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -1.425347222222221700 ) ) ; +#17066 = ORIENTED_EDGE ( 'NONE', *, *, #18740, .T. ) ; +#17067 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.527777777777777900 ) ) ; +#17068 = LINE ( 'NONE', #6484, #9696 ) ; +#17069 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.208333333333331000 ) ) ; +#17070 = CARTESIAN_POINT ( 'NONE', ( -0.3953002468276895500, 0.2372148641431517400, 1.187613820323618400 ) ) ; +#17071 = CIRCLE ( 'NONE', #6163, 0.4687475818742580200 ) ; +#17072 = VERTEX_POINT ( 'NONE', #7800 ) ; +#17073 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.1753472222222118300 ) ) ; +#17074 = ORIENTED_EDGE ( 'NONE', *, *, #8363, .F. ) ; +#17075 = CARTESIAN_POINT ( 'NONE', ( 7.640853857273995700E-017, 6.823906349730043600E-017, 3.802149639073293400 ) ) ; +#17076 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.434027777777777700 ) ) ; +#17077 = CARTESIAN_POINT ( 'NONE', ( 0.4289925051334589900, -0.1889172465718343100, 1.484375000000000200 ) ) ; +#17078 = AXIS2_PLACEMENT_3D ( 'NONE', #14192, #3640, #762 ) ; +#17079 = VECTOR ( 'NONE', #12181, 39.37007874015748100 ) ; +#17080 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995300, -5.463695987421893100E-016, 1.249999999999999800 ) ) ; +#17081 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.9618055555555514700 ) ) ; +#17082 = PLANE ( 'NONE', #364 ) ; +#17083 = ORIENTED_EDGE ( 'NONE', *, *, #151, .F. ) ; +#17084 = ORIENTED_EDGE ( 'NONE', *, *, #11557, .F. ) ; +#17085 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.07291666666665537500 ) ) ; +#17086 = EDGE_CURVE ( 'NONE', #14973, #13154, #17441, .T. ) ; +#17087 = ORIENTED_EDGE ( 'NONE', *, *, #6750, .T. ) ; +#17088 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #6736, #3778, #11069, #16864, #8034, #18341 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 0.01037523722597128200, 0.01223152665728824600, 0.01408781608860521000 ), + .UNSPECIFIED. ) ; +#17089 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, 0.09722222222223464400 ) ) ; +#17090 = LINE ( 'NONE', #11162, #498 ) ; +#17091 = EDGE_LOOP ( 'NONE', ( #8809, #6882, #14953, #16608 ) ) ; +#17092 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.4097222222222134900 ) ) ; +#17093 = CARTESIAN_POINT ( 'NONE', ( -0.2908911096110930500, 0.06570002821583297000, -1.535265432803170700 ) ) ; +#17094 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.08333333333332251800 ) ) ; +#17095 = EDGE_CURVE ( 'NONE', #7727, #17779, #1772, .T. ) ; +#17096 = DIRECTION ( 'NONE', ( -0.1729787697315177400, -0.01523268949379617800, -0.9848077530122091300 ) ) ; +#17097 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.3333333333333244900 ) ) ; +#17098 = AXIS2_PLACEMENT_3D ( 'NONE', #2953, #7463, #4486 ) ; +#17099 = EDGE_LOOP ( 'NONE', ( #16077, #14705, #6133, #16354 ) ) ; +#17100 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.5034722222222146600 ) ) ; +#17101 = ORIENTED_EDGE ( 'NONE', *, *, #12719, .T. ) ; +#17102 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#17103 = ORIENTED_EDGE ( 'NONE', *, *, #9245, .T. ) ; +#17104 = CIRCLE ( 'NONE', #12820, 0.4687475818742549700 ) ; +#17105 = PLANE ( 'NONE', #9536 ) ; +#17106 = VERTEX_POINT ( 'NONE', #15311 ) ; +#17107 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.8819444444444397600 ) ) ; +#17108 = ORIENTED_EDGE ( 'NONE', *, *, #2411, .F. ) ; +#17109 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.3923611111111022200 ) ) ; +#17110 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.9999999999999961100 ) ) ; +#17111 = EDGE_CURVE ( 'NONE', #14458, #8689, #12610, .T. ) ; +#17112 = ADVANCED_FACE ( 'NONE', ( #9372 ), #16995, .F. ) ; +#17113 = ORIENTED_EDGE ( 'NONE', *, *, #9457, .T. ) ; +#17114 = EDGE_CURVE ( 'NONE', #16170, #10108, #11172, .T. ) ; +#17115 = EDGE_LOOP ( 'NONE', ( #6165, #13326, #17425, #533, #9272, #7628 ) ) ; +#17116 = EDGE_CURVE ( 'NONE', #4197, #2301, #9576, .T. ) ; +#17117 = AXIS2_PLACEMENT_3D ( 'NONE', #13182, #1335, #19110 ) ; +#17118 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, 0.1892361111111242300 ) ) ; +#17119 = VECTOR ( 'NONE', #10408, 39.37007874015748100 ) ; +#17120 = AXIS2_PLACEMENT_3D ( 'NONE', #12029, #13640, #13899 ) ; +#17121 = ORIENTED_EDGE ( 'NONE', *, *, #12600, .T. ) ; +#17122 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.465277777777777900 ) ) ; +#17123 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#17124 = AXIS2_PLACEMENT_3D ( 'NONE', #11622, #10270, #4218 ) ; +#17125 = VERTEX_POINT ( 'NONE', #18356 ) ; +#17126 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323601700 ) ) ; +#17127 = DIRECTION ( 'NONE', ( -0.1442440472914138000, -0.09668166541820265300, -0.9848077530122085800 ) ) ; +#17128 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.324652777777776600 ) ) ; +#17129 = CARTESIAN_POINT ( 'NONE', ( -6.815988028331943500E-017, -2.291130166568907500E-016, -1.174024639073312900 ) ) ; +#17130 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 3.802149639073315200 ) ) ; +#17131 = ADVANCED_FACE ( 'NONE', ( #4754 ), #10949, .F. ) ; +#17132 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.02951388888887735200 ) ) ; +#17133 = DIRECTION ( 'NONE', ( 0.6661089358369561800, -0.7458544667682548400, 0.0000000000000000000 ) ) ; +#17134 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.423611111111110500 ) ) ; +#17135 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -1.253472222222220500 ) ) ; +#17136 = ORIENTED_EDGE ( 'NONE', *, *, #961, .F. ) ; +#17137 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.7777777777777724600 ) ) ; +#17138 = ORIENTED_EDGE ( 'NONE', *, *, #18073, .T. ) ; +#17139 = ORIENTED_EDGE ( 'NONE', *, *, #11418, .F. ) ; +#17140 = EDGE_CURVE ( 'NONE', #2965, #4767, #4313, .T. ) ; +#17141 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#17142 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.489583333333333500 ) ) ; +#17143 = AXIS2_PLACEMENT_3D ( 'NONE', #8152, #6532, #104 ) ; +#17144 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, 0.1180555555555681300 ) ) ; +#17146 = EDGE_CURVE ( 'NONE', #5656, #4172, #10297, .T. ) ; +#17145 = LINE ( 'NONE', #15065, #16677 ) ; +#17147 = PLANE ( 'NONE', #6903 ) ; +#17148 = ORIENTED_EDGE ( 'NONE', *, *, #355, .F. ) ; +#17149 = AXIS2_PLACEMENT_3D ( 'NONE', #13216, #11855, #2849 ) ; +#17150 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.4930555555555474800 ) ) ; +#17151 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000000000, -4.889642800228204400E-016, 0.9687499999999998900 ) ) ; +#17152 = ORIENTED_EDGE ( 'NONE', *, *, #16992, .T. ) ; +#17153 = DIRECTION ( 'NONE', ( 1.182924880895404000E-016, 1.000000000000000000, 0.0000000000000000000 ) ) ; +#17154 = CARTESIAN_POINT ( 'NONE', ( 0.01186523245347099800, 0.2901843397610973700, -1.543064107371250800 ) ) ; +#17155 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.1076388888889012900 ) ) ; +#17156 = VECTOR ( 'NONE', #14524, 39.37007874015748100 ) ; +#17157 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#17158 = PLANE ( 'NONE', #3307 ) ; +#17159 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.4131944444444362000 ) ) ; +#17160 = ORIENTED_EDGE ( 'NONE', *, *, #739, .T. ) ; +#17161 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.6180555555555489200 ) ) ; +#17162 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.354166666666665600 ) ) ; +#17163 = LINE ( 'NONE', #12942, #2409 ) ; +#17164 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.9027777777777730200 ) ) ; +#17165 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.1736111111111008400 ) ) ; +#17166 = EDGE_CURVE ( 'NONE', #3666, #10008, #14903, .T. ) ; +#17167 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#17168 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.2881944444444347100 ) ) ; +#17169 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.06597222222221103800 ) ) ; +#17170 = CIRCLE ( 'NONE', #16145, 0.4610132068742565100 ) ; +#17171 = ORIENTED_EDGE ( 'NONE', *, *, #18557, .T. ) ; +#17172 = VECTOR ( 'NONE', #5529, 39.37007874015748900 ) ; +#17173 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.302083333333331900 ) ) ; +#17174 = FACE_OUTER_BOUND ( 'NONE', #5531, .T. ) ; +#17175 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, 0.1996527777777911700 ) ) ; +#17176 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #14462, #19109, #5811, #11766, #2678, #2938, #5622, #10228, #11692 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3712121212121212200, 0.3750000000000000000, 0.3787878787878787800, 0.3825757575757575700, 0.3863636363636363500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#17177 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#17178 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.3090277777777685200 ) ) ; +#17179 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.265624999999998000 ) ) ; +#17180 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#17181 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.7638888888888834000 ) ) ; +#17182 = FACE_OUTER_BOUND ( 'NONE', #14932, .T. ) ; +#17183 = EDGE_LOOP ( 'NONE', ( #14086, #11073, #13873, #18277 ) ) ; +#17184 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.1545138888888783500 ) ) ; +#17185 = CARTESIAN_POINT ( 'NONE', ( -0.09842227986633451900, 0.2932316039797036600, 0.1716827721098134500 ) ) ; +#17186 = EDGE_CURVE ( 'NONE', #2792, #5062, #18816, .T. ) ; +#17187 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.475694444444444000 ) ) ; +#17188 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.249999999999998200 ) ) ; +#17189 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#17190 = VECTOR ( 'NONE', #10239, 39.37007874015748100 ) ; +#17191 = ORIENTED_EDGE ( 'NONE', *, *, #11060, .T. ) ; +#17192 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.9583333333333294800 ) ) ; +#17193 = CIRCLE ( 'NONE', #17451, 0.4687499999999995600 ) ; +#17194 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.1041666666666557500 ) ) ; +#17195 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, 0.04861111111112334500 ) ) ; +#17196 = ADVANCED_FACE ( 'NONE', ( #855 ), #18375, .T. ) ; +#17197 = VECTOR ( 'NONE', #15368, 39.37007874015748100 ) ; +#17198 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.4652777777777695200 ) ) ; +#17199 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.2638888888888791300 ) ) ; +#17200 = CIRCLE ( 'NONE', #19034, 0.4687475818742554100 ) ; +#17201 = ORIENTED_EDGE ( 'NONE', *, *, #6663, .F. ) ; +#17202 = ORIENTED_EDGE ( 'NONE', *, *, #13267, .F. ) ; +#17203 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#17204 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#17205 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.01041666666667836300 ) ) ; +#17206 = VECTOR ( 'NONE', #13190, 39.37007874015748900 ) ; +#17207 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.8437499999999951200 ) ) ; +#17208 = DIRECTION ( 'NONE', ( -0.01745011258365037100, 0.1727691615360299500, 0.9848077530122085800 ) ) ; +#17209 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.4861111111111034400 ) ) ; +#17210 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.5763888888888818500 ) ) ; +#17211 = ADVANCED_FACE ( 'NONE', ( #3617 ), #7016, .F. ) ; +#17212 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.3749999999999912300 ) ) ; +#17213 = ORIENTED_EDGE ( 'NONE', *, *, #3115, .F. ) ; +#17214 = ADVANCED_FACE ( 'NONE', ( #8690 ), #11274, .F. ) ; +#17215 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.9548611111111067200 ) ) ; +#17216 = EDGE_CURVE ( 'NONE', #514, #18485, #2450, .T. ) ; +#17217 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.2291666666666570000 ) ) ; +#17218 = EDGE_CURVE ( 'NONE', #1434, #17274, #16968, .T. ) ; +#17219 = LINE ( 'NONE', #5096, #9172 ) ; +#17220 = CARTESIAN_POINT ( 'NONE', ( -0.04285030169175124000, -0.2793113642199095400, 0.09938492299754464500 ) ) ; +#17221 = LINE ( 'NONE', #16948, #6396 ) ; +#17222 = LINE ( 'NONE', #3070, #5448 ) ; +#17223 = VERTEX_POINT ( 'NONE', #12690 ) ; +#17224 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.2256944444444341500 ) ) ; +#17225 = CARTESIAN_POINT ( 'NONE', ( -0.2360194556738204300, 0.4049927308685861100, 1.484375000000000200 ) ) ; +#17226 = LINE ( 'NONE', #4028, #9177 ) ; +#17227 = VECTOR ( 'NONE', #11114, 39.37007874015748900 ) ; +#17228 = ORIENTED_EDGE ( 'NONE', *, *, #558, .T. ) ; +#17229 = EDGE_LOOP ( 'NONE', ( #10580, #6989, #5063, #15284 ) ) ; +#17230 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.395833333333332800 ) ) ; +#17231 = ORIENTED_EDGE ( 'NONE', *, *, #7575, .T. ) ; +#17232 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, 0.2413194444444581000 ) ) ; +#17233 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#17234 = ORIENTED_EDGE ( 'NONE', *, *, #15517, .F. ) ; +#17235 = ORIENTED_EDGE ( 'NONE', *, *, #1433, .F. ) ; +#17236 = FACE_OUTER_BOUND ( 'NONE', #2323, .T. ) ; +#17237 = PLANE ( 'NONE', #19118 ) ; +#17238 = VECTOR ( 'NONE', #13443, 39.37007874015748900 ) ; +#17239 = LINE ( 'NONE', #3984, #879 ) ; +#17240 = EDGE_LOOP ( 'NONE', ( #7334, #12062, #15029, #4776, #2484, #4558 ) ) ; +#17241 = EDGE_CURVE ( 'NONE', #206, #14043, #16022, .T. ) ; +#17242 = VECTOR ( 'NONE', #13253, 39.37007874015748100 ) ; +#17243 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -1.359374999999998900 ) ) ; +#17244 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.451388888888888600 ) ) ; +#17245 = CARTESIAN_POINT ( 'NONE', ( -0.2154822354126468300, 0.4162859218392669400, 1.484375000000000200 ) ) ; +#17246 = EDGE_CURVE ( 'NONE', #10602, #14542, #15111, .T. ) ; +#17247 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.07118055555554435300 ) ) ; +#17248 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#17249 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.444444444444444000 ) ) ; +#17250 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#17251 = EDGE_CURVE ( 'NONE', #2261, #11817, #3148, .T. ) ; +#17252 = AXIS2_PLACEMENT_3D ( 'NONE', #9628, #9510, #9754 ) ; +#17253 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.6006944444444376500 ) ) ; +#17254 = ORIENTED_EDGE ( 'NONE', *, *, #19047, .T. ) ; +#17255 = EDGE_LOOP ( 'NONE', ( #5016, #5629, #13545, #16562 ) ) ; +#17256 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.8819444444444396500 ) ) ; +#17257 = ORIENTED_EDGE ( 'NONE', *, *, #12913, .F. ) ; +#17258 = VERTEX_POINT ( 'NONE', #907 ) ; +#17259 = LINE ( 'NONE', #9727, #18415 ) ; +#17260 = DIRECTION ( 'NONE', ( 0.9584846895403595900, 0.2851439985633930600, -0.0000000000000000000 ) ) ; +#17261 = FACE_OUTER_BOUND ( 'NONE', #16792, .T. ) ; +#17262 = EDGE_LOOP ( 'NONE', ( #3429, #5484, #11937, #3403 ) ) ; +#17263 = ORIENTED_EDGE ( 'NONE', *, *, #13238, .F. ) ; +#17264 = FACE_OUTER_BOUND ( 'NONE', #7506, .T. ) ; +#17265 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#17266 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.1493055555555450100 ) ) ; +#17267 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.6336805555555489200 ) ) ; +#17268 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.5243055555555478100 ) ) ; +#17269 = DIRECTION ( 'NONE', ( -0.1637561077632671300, 0.05777219726883799800, 0.9848077530122088000 ) ) ; +#17270 = EDGE_CURVE ( 'NONE', #16173, #11392, #12123, .T. ) ; +#17271 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.06250000000001225400 ) ) ; +#17272 = DIRECTION ( 'NONE', ( -1.000000000000000000, -2.398081733190338100E-014, 0.0000000000000000000 ) ) ; +#17273 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, 0.1388888888889016300 ) ) ; +#17274 = VERTEX_POINT ( 'NONE', #14215 ) ; +#17275 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, 0.02083333333334525300 ) ) ; +#17276 = AXIS2_PLACEMENT_3D ( 'NONE', #17453, #7172, #13012 ) ; +#17277 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#17278 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#17279 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.2604166666666571400 ) ) ; +#17280 = VERTEX_POINT ( 'NONE', #9842 ) ; +#17281 = AXIS2_PLACEMENT_3D ( 'NONE', #7138, #1268, #6875 ) ; +#17282 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.6493055555555491400 ) ) ; +#17283 = CIRCLE ( 'NONE', #9276, 0.4610132068742565100 ) ; +#17284 = ORIENTED_EDGE ( 'NONE', *, *, #10449, .F. ) ; +#17285 = ORIENTED_EDGE ( 'NONE', *, *, #17613, .F. ) ; +#17286 = DIRECTION ( 'NONE', ( 0.6374239897486827500, 0.7705132427757950300, 0.0000000000000000000 ) ) ; +#17287 = FACE_OUTER_BOUND ( 'NONE', #14099, .T. ) ; +#17288 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.107638888888885700 ) ) ; +#17289 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.1666666666666565000 ) ) ; +#17290 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #4971, #7900, #3322, #18204, #1835, #18071, #4851, #3509, #15226 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4621212121212121500, 0.4659090909090909400, 0.4696969696969697200, 0.4734848484848485100, 0.4772727272727272900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#17291 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.588758826628429600 ) ) ; +#17292 = CARTESIAN_POINT ( 'NONE', ( -0.2295898801003941900, -0.1561213555156359400, 1.541375947349477200 ) ) ; +#17293 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.2673611111111011700 ) ) ; +#17294 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#17295 = ORIENTED_EDGE ( 'NONE', *, *, #10279, .F. ) ; +#17296 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -3.585550491684345600E-016, 0.1963163490354230300 ) ) ; +#17297 = ORIENTED_EDGE ( 'NONE', *, *, #14816, .T. ) ; +#17298 = ADVANCED_FACE ( 'NONE', ( #11896 ), #2669, .T. ) ; +#17299 = ORIENTED_EDGE ( 'NONE', *, *, #18476, .T. ) ; +#17300 = VECTOR ( 'NONE', #15501, 39.37007874015748100 ) ; +#17301 = VERTEX_POINT ( 'NONE', #9783 ) ; +#17302 = ORIENTED_EDGE ( 'NONE', *, *, #9254, .T. ) ; +#17303 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.371527777777776800 ) ) ; +#17304 = EDGE_CURVE ( 'NONE', #1610, #12473, #7524, .T. ) ; +#17305 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.406250000000000200 ) ) ; +#17306 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#17307 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.3541666666666577500 ) ) ; +#17308 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.07986111111109994700 ) ) ; +#17309 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#17310 = ORIENTED_EDGE ( 'NONE', *, *, #16763, .F. ) ; +#17311 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.348958333333332400 ) ) ; +#17312 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.364583333333332100 ) ) ; +#17313 = ORIENTED_EDGE ( 'NONE', *, *, #15494, .T. ) ; +#17314 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.01388888888890064600 ) ) ; +#17315 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.142361111111108300 ) ) ; +#17316 = AXIS2_PLACEMENT_3D ( 'NONE', #5537, #17203, #10128 ) ; +#17317 = CARTESIAN_POINT ( 'NONE', ( 0.08097923075878278600, -0.2897836798913114300, 0.1483444922631395600 ) ) ; +#17318 = ORIENTED_EDGE ( 'NONE', *, *, #6803, .T. ) ; +#17319 = LINE ( 'NONE', #13611, #1892 ) ; +#17320 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.7152777777777719100 ) ) ; +#17321 = ORIENTED_EDGE ( 'NONE', *, *, #5634, .F. ) ; +#17322 = CARTESIAN_POINT ( 'NONE', ( 0.4289925051334527700, 0.1889172465718423100, 1.143750000000000000 ) ) ; +#17323 = EDGE_LOOP ( 'NONE', ( #1352, #12474, #17951, #14686 ) ) ; +#17324 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#17325 = VERTEX_POINT ( 'NONE', #6886 ) ; +#17326 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -0.6197916666666598600 ) ) ; +#17327 = ORIENTED_EDGE ( 'NONE', *, *, #12964, .F. ) ; +#17328 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.1944444444444340700 ) ) ; +#17329 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676401200 ) ) ; +#17330 = FACE_OUTER_BOUND ( 'NONE', #16377, .T. ) ; +#17331 = ORIENTED_EDGE ( 'NONE', *, *, #12626, .T. ) ; +#17332 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#17333 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#17334 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.1111111111111235500 ) ) ; +#17335 = EDGE_CURVE ( 'NONE', #9929, #16321, #18358, .T. ) ; +#17336 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.8333333333333281500 ) ) ; +#17337 = ORIENTED_EDGE ( 'NONE', *, *, #10175, .T. ) ; +#17338 = DIRECTION ( 'NONE', ( -0.3447650836343141300, 0.9386889991400901900, 0.0000000000000000000 ) ) ; +#17339 = CARTESIAN_POINT ( 'NONE', ( 0.1278875336514757900, -0.4509671176887980500, 1.484375000000000200 ) ) ; +#17340 = AXIS2_PLACEMENT_3D ( 'NONE', #7380, #5668, #15927 ) ; +#17341 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.4687499999999923400 ) ) ; +#17342 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.4027777777777693000 ) ) ; +#17343 = VERTEX_POINT ( 'NONE', #5381 ) ; +#17344 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.104166666666663400 ) ) ; +#17345 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.04166666666665552000 ) ) ; +#17346 = CARTESIAN_POINT ( 'NONE', ( -0.4548654901190618500, 0.07503707624389219200, 1.187613820323599700 ) ) ; +#17347 = CARTESIAN_POINT ( 'NONE', ( 0.2868371995098394400, -0.01854175249863254700, 0.1114970802944092600 ) ) ; +#17348 = LINE ( 'NONE', #11819, #17119 ) ; +#17349 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.520833333333333000 ) ) ; +#17350 = EDGE_LOOP ( 'NONE', ( #1394, #5664, #6379, #17925 ) ) ; +#17351 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.3368055555555462500 ) ) ; +#17352 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.02430555555554404400 ) ) ; +#17353 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.234374999999998200 ) ) ; +#17354 = EDGE_LOOP ( 'NONE', ( #7091, #9963, #1497, #9812 ) ) ; +#17355 = EDGE_CURVE ( 'NONE', #11289, #5561, #5422, .T. ) ; +#17356 = VECTOR ( 'NONE', #10634, 39.37007874015748100 ) ; +#17357 = VERTEX_POINT ( 'NONE', #8419 ) ; +#17358 = EDGE_CURVE ( 'NONE', #8295, #7887, #4987, .T. ) ; +#17359 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.399305555555555100 ) ) ; +#17360 = EDGE_CURVE ( 'NONE', #7917, #6011, #837, .T. ) ; +#17361 = AXIS2_PLACEMENT_3D ( 'NONE', #14863, #14744, #10306 ) ; +#17362 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.378472222222221900 ) ) ; +#17363 = ORIENTED_EDGE ( 'NONE', *, *, #3294, .F. ) ; +#17364 = AXIS2_PLACEMENT_3D ( 'NONE', #17476, #35, #14633 ) ; +#17365 = CARTESIAN_POINT ( 'NONE', ( -0.2119256669269715100, 0.4094150566479503000, 1.592561465728329600 ) ) ; +#17366 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.9722222222222182100 ) ) ; +#17367 = AXIS2_PLACEMENT_3D ( 'NONE', #15220, #6393, #16701 ) ; +#17368 = ORIENTED_EDGE ( 'NONE', *, *, #18694, .F. ) ; +#17369 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.09027777777776656300 ) ) ; +#17370 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#17371 = CARTESIAN_POINT ( 'NONE', ( -0.4624967254561002700, 0.07629596618005891900, 1.484375000000000200 ) ) ; +#17372 = ORIENTED_EDGE ( 'NONE', *, *, #10453, .F. ) ; +#17373 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -1.269097222222220500 ) ) ; +#17374 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.284722222222220500 ) ) ; +#17375 = CARTESIAN_POINT ( 'NONE', ( 1.968368661174687400E-016, -1.356237140728376000E-016, -1.174024639073339100 ) ) ; +#17376 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#17377 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, 0.1475694444444575200 ) ) ; +#17378 = CARTESIAN_POINT ( 'NONE', ( 0.06919666627598217200, 0.4557905201830951300, 1.588758826628429200 ) ) ; +#17379 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.256944444444442400 ) ) ; +#17380 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#17381 = CARTESIAN_POINT ( 'NONE', ( -0.09294877697360129400, -0.2845556227906587100, 0.1440848227637464800 ) ) ; +#17382 = VECTOR ( 'NONE', #8757, 39.37007874015748900 ) ; +#17383 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.6354166666666601900 ) ) ; +#17384 = EDGE_CURVE ( 'NONE', #8011, #790, #10048, .T. ) ; +#17385 = CARTESIAN_POINT ( 'NONE', ( -0.4684122207840628000, 0.01772813958391326200, 1.143750000000000000 ) ) ; +#17386 = CARTESIAN_POINT ( 'NONE', ( 0.4418741004648765700, 0.1314551491986613300, 1.484375000000000200 ) ) ; +#17387 = SHAPE_DEFINITION_REPRESENTATION ( #5962, #812 ) ; +#17388 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.1250000000000127400 ) ) ; +#17389 = ADVANCED_FACE ( 'NONE', ( #15341 ), #1073, .T. ) ; +#17390 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.7430555555555495900 ) ) ; +#17391 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676384800 ) ) ; +#17392 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.6614583333333269300 ) ) ; +#17393 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2001, #16883, #18311 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 3 ), + ( 0.04924242424242424000, 0.05303030303030303200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#17394 = CC_DESIGN_DATE_AND_TIME_ASSIGNMENT ( #3093, #1505, ( #2844 ) ) ; +#17395 = LINE ( 'NONE', #6769, #7034 ) ; +#17396 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.1319444444444335700 ) ) ; +#17397 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.2048611111111006400 ) ) ; +#17398 = CARTESIAN_POINT ( 'NONE', ( -0.01171874999999998800, 0.4686034927296605100, 1.143750000000000000 ) ) ; +#17399 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.9791666666666626300 ) ) ; +#17400 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, 0.08680555555556802900 ) ) ; +#17401 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.534722222222222500 ) ) ; +#17402 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.5277777777777701300 ) ) ; +#17403 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.3055555555555464200 ) ) ; +#17404 = VECTOR ( 'NONE', #2179, 39.37007874015748900 ) ; +#17405 = VERTEX_POINT ( 'NONE', #17432 ) ; +#17406 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#17407 = VECTOR ( 'NONE', #17848, 39.37007874015747400 ) ; +#17408 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.7222222222222159900 ) ) ; +#17409 = ORIENTED_EDGE ( 'NONE', *, *, #15565, .F. ) ; +#17410 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.07986111111110022500 ) ) ; +#17411 = EDGE_CURVE ( 'NONE', #7863, #10773, #5643, .T. ) ; +#17412 = LINE ( 'NONE', #15716, #7513 ) ; +#17413 = CARTESIAN_POINT ( 'NONE', ( 0.1030957060662471100, -0.2645828282578905300, 0.1031782480454271100 ) ) ; +#17414 = CARTESIAN_POINT ( 'NONE', ( -0.02043555972313778500, -0.2768766586876181800, 1.541367467408310400 ) ) ; +#17415 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #10303, #14930, #7527, #12041, #4689, #14997, #6166, #7669, #8235 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5984848484848485100, 0.6022727272727272900, 0.6060606060606060800, 0.6098484848484848600, 0.6136363636363636500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#17416 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#17417 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.8489583333333283700 ) ) ; +#17418 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#17419 = CIRCLE ( 'NONE', #13681, 0.4687499999999996100 ) ; +#17420 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.041666666666663200 ) ) ; +#17421 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.378472222222221700 ) ) ; +#17422 = LINE ( 'NONE', #11400, #13520 ) ; +#17423 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, 0.2378472222222358400 ) ) ; +#17424 = ADVANCED_FACE ( 'NONE', ( #4281 ), #1528, .T. ) ; +#17425 = ORIENTED_EDGE ( 'NONE', *, *, #10257, .F. ) ; +#17426 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.9791666666666626300 ) ) ; +#17427 = VECTOR ( 'NONE', #1728, 39.37007874015748100 ) ; +#17428 = DIRECTION ( 'NONE', ( -0.2243975804000369900, -0.9744976787610163400, 0.0000000000000000000 ) ) ; +#17429 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#17430 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.088541666666663400 ) ) ; +#17431 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.392361111111110100 ) ) ; +#17432 = CARTESIAN_POINT ( 'NONE', ( -0.3238882248697046400, 0.3280694967582902200, 1.440511179676399000 ) ) ; +#17433 = CARTESIAN_POINT ( 'NONE', ( 0.4684122207840689700, 0.01772813958392023200, 1.484375000000000200 ) ) ; +#17434 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, 0.07812500000001242100 ) ) ; +#17435 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#17436 = EDGE_CURVE ( 'NONE', #5945, #5595, #11438, .T. ) ; +#17437 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.201388888888886400 ) ) ; +#17438 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, 0.1823163490354291200 ) ) ; +#17439 = CARTESIAN_POINT ( 'NONE', ( -0.2510593108317454900, -0.1587243900538112500, 0.1390452975125055500 ) ) ; +#17440 = ORIENTED_EDGE ( 'NONE', *, *, #13976, .F. ) ; +#17441 = LINE ( 'NONE', #10828, #1999 ) ; +#17442 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.6145833333333268200 ) ) ; +#17443 = FACE_OUTER_BOUND ( 'NONE', #13876, .T. ) ; +#17444 = CONICAL_SURFACE ( 'NONE', #9390, 0.4687475818742580800, 0.1745329251994291200 ) ; +#17445 = ORIENTED_EDGE ( 'NONE', *, *, #13427, .T. ) ; +#17446 = ORIENTED_EDGE ( 'NONE', *, *, #16128, .F. ) ; +#17448 = EDGE_CURVE ( 'NONE', #9537, #10882, #8209, .T. ) ; +#17447 = VECTOR ( 'NONE', #10784, 39.37007874015748100 ) ; +#17449 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#17450 = CARTESIAN_POINT ( 'NONE', ( -1.899200323792849900E-016, -2.416275900747796600E-016, 3.802149639073326300 ) ) ; +#17451 = AXIS2_PLACEMENT_3D ( 'NONE', #10616, #7657, #1982 ) ; +#17452 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.187499999999997600 ) ) ; +#17453 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323600200 ) ) ; +#17454 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.4878472222222144400 ) ) ; +#17455 = VERTEX_POINT ( 'NONE', #14546 ) ; +#17456 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.01041666666667863200 ) ) ; +#17457 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.1388888888888778800 ) ) ; +#17458 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.587900241027141200 ) ) ; +#17459 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#17460 = PLANE ( 'NONE', #1168 ) ; +#17461 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.590985962198545400 ) ) ; +#17462 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, 0.2048611111111244300 ) ) ; +#17463 = ORIENTED_EDGE ( 'NONE', *, *, #11164, .F. ) ; +#17464 = FACE_OUTER_BOUND ( 'NONE', #9747, .T. ) ; +#17465 = CARTESIAN_POINT ( 'NONE', ( -0.2785578748437709800, 0.009676894858897907800, 0.08874982272597654900 ) ) ; +#17466 = CIRCLE ( 'NONE', #11260, 0.4610132068742565100 ) ; +#17467 = VECTOR ( 'NONE', #6024, 39.37007874015748900 ) ; +#17468 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.5486111111111036100 ) ) ; +#17469 = ORIENTED_EDGE ( 'NONE', *, *, #2016, .F. ) ; +#17470 = CIRCLE ( 'NONE', #4520, 0.4610132068742565100 ) ; +#17471 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.4340277777777697400 ) ) ; +#17472 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.465277777777777700 ) ) ; +#17473 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.8229166666666613000 ) ) ; +#17474 = EDGE_CURVE ( 'NONE', #11955, #3723, #3597, .T. ) ; +#17475 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.01388888888890065500 ) ) ; +#17476 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#17477 = EDGE_CURVE ( 'NONE', #8309, #4588, #11652, .T. ) ; +#17478 = EDGE_LOOP ( 'NONE', ( #16412, #7365, #473, #16643 ) ) ; +#17479 = AXIS2_PLACEMENT_3D ( 'NONE', #19004, #16019, #18743 ) ; +#17480 = AXIS2_PLACEMENT_3D ( 'NONE', #2505, #8243, #6821 ) ; +#17481 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#17482 = ORIENTED_EDGE ( 'NONE', *, *, #14167, .F. ) ; +#17483 = ORIENTED_EDGE ( 'NONE', *, *, #2239, .F. ) ; +#17484 = CIRCLE ( 'NONE', #19025, 0.4687499999999995000 ) ; +#17485 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.02083333333332174400 ) ) ; +#17487 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.001736111111107600 ) ) ; +#17486 = VECTOR ( 'NONE', #16517, 39.37007874015748900 ) ; +#17488 = ORIENTED_EDGE ( 'NONE', *, *, #1065, .T. ) ; +#17489 = VERTEX_POINT ( 'NONE', #1218 ) ; +#17490 = DIRECTION ( 'NONE', ( -0.9961450333403955000, -0.08772156263577582400, 0.0000000000000000000 ) ) ; +#17491 = FACE_OUTER_BOUND ( 'NONE', #6202, .T. ) ; +#17492 = ADVANCED_FACE ( 'NONE', ( #8666 ), #18801, .T. ) ; +#17493 = ORIENTED_EDGE ( 'NONE', *, *, #15991, .F. ) ; +#17494 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.086805555555552900 ) ) ; +#17495 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.520833333333333900 ) ) ; +#17496 = ORIENTED_EDGE ( 'NONE', *, *, #4052, .T. ) ; +#17497 = CARTESIAN_POINT ( 'NONE', ( 0.3070850166377861500, 0.3438487595863285500, 1.440511179676388100 ) ) ; +#17498 = CARTESIAN_POINT ( 'NONE', ( 0.4418741004648792400, -0.1314551491986520900, 1.484375000000000200 ) ) ; +#17499 = CARTESIAN_POINT ( 'NONE', ( -0.1972224998805506300, -0.2439273833094759400, 0.1812697569147466700 ) ) ; +#17500 = EDGE_CURVE ( 'NONE', #2304, #3075, #14884, .T. ) ; +#17501 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.060763888888885500 ) ) ; +#17502 = VERTEX_POINT ( 'NONE', #13244 ) ; +#17503 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.409722222222221400 ) ) ; +#17504 = FACE_OUTER_BOUND ( 'NONE', #10905, .T. ) ; +#17505 = DIRECTION ( 'NONE', ( -0.02499999999999943900, 0.9996874511566102800, 0.0000000000000000000 ) ) ; +#17506 = CARTESIAN_POINT ( 'NONE', ( -0.3293220670067026300, -0.3335734876985833600, 1.484375000000000200 ) ) ; +#17507 = CYLINDRICAL_SURFACE ( 'NONE', #1606, 0.3125000000000008300 ) ; +#17508 = EDGE_LOOP ( 'NONE', ( #1364, #18439, #15417, #4055 ) ) ; +#17509 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, 0.008680555555567348600 ) ) ; +#17510 = VERTEX_POINT ( 'NONE', #13187 ) ; +#17511 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.152777777777775000 ) ) ; +#17512 = CARTESIAN_POINT ( 'NONE', ( 0.1589412568245171800, 0.4327480257511626700, 1.591590229135180200 ) ) ; +#17513 = CARTESIAN_POINT ( 'NONE', ( -0.07416932649743292200, -0.2901837521921969400, 0.1445737397965062000 ) ) ; +#17514 = EDGE_CURVE ( 'NONE', #12430, #1593, #149, .T. ) ; +#17515 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #570, #16675, #10692, #15119, #517, #2130, #15304, #10816, #1993, #16544, #7986, #12300, #18301, #6307, #7725, #4937, #15251, #1866, #6435, #12162, #16730, #7928, #18232, #5255, #6746, #18599, #17060, #8044, #830, #18412, #8112, #6619, #3785, #894, #13968, #9590, #11081, #9538, #8232, #5323, #11264, #11203, #16990, #774, #3659, #709 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ), + ( 0.02837793316843982900, 0.02910105005523749100, 0.02982416694203515000, 0.03127040071563047500, 0.03271663448922580000, 0.03343975137602345900, 0.03416286826282112500, 0.03560910203641645000, 0.03633221892321410900, 0.03705533581001176800, 0.03850156958360709300, 0.03994780335720241700, 0.04067092024400007600, 0.04139403713079774200, 0.04284027090439306000, 0.04428650467798838500, 0.04573273845158371000, 0.04645585533838136900, 0.04717897222517902800, 0.04862520599877435300, 0.05007143977236967700, 0.05079455665916733600, 0.05151767354596500200 ), + .UNSPECIFIED. ) ; +#17516 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.5937499999999932300 ) ) ; +#17517 = AXIS2_PLACEMENT_3D ( 'NONE', #10645, #9287, #18109 ) ; +#17518 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.4097222222222136100 ) ) ; +#17519 = ORIENTED_EDGE ( 'NONE', *, *, #18971, .T. ) ; +#17520 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.409722222222221900 ) ) ; +#17521 = CARTESIAN_POINT ( 'NONE', ( 0.4190155160288344100, -0.2101251051804357800, 1.143750000000000000 ) ) ; +#17522 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.7743055555555500300 ) ) ; +#17523 = ORIENTED_EDGE ( 'NONE', *, *, #1455, .T. ) ; +#17524 = EDGE_LOOP ( 'NONE', ( #2420, #12347, #5181, #11788 ) ) ; +#17525 = LINE ( 'NONE', #12406, #5060 ) ; +#17526 = VECTOR ( 'NONE', #14612, 39.37007874015748100 ) ; +#17527 = ORIENTED_EDGE ( 'NONE', *, *, #17020, .T. ) ; +#17528 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.5399305555555481400 ) ) ; +#17529 = VERTEX_POINT ( 'NONE', #18856 ) ; +#17530 = LINE ( 'NONE', #1262, #6699 ) ; +#17531 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.06944444444445710400 ) ) ; +#17532 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.2951388888888792400 ) ) ; +#17533 = ADVANCED_FACE ( 'NONE', ( #381 ), #4428, .F. ) ; +#17534 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323615500 ) ) ; +#17535 = EDGE_CURVE ( 'NONE', #10788, #7702, #13041, .T. ) ; +#17536 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.2083333333333464400 ) ) ; +#17537 = AXIS2_PLACEMENT_3D ( 'NONE', #15317, #15130, #582 ) ; +#17538 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#17539 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.454861111111111200 ) ) ; +#17540 = ORIENTED_EDGE ( 'NONE', *, *, #13478, .T. ) ; +#17541 = VERTEX_POINT ( 'NONE', #9133 ) ; +#17542 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.2812499999999906200 ) ) ; +#17543 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.3854166666666580300 ) ) ; +#17544 = VERTEX_POINT ( 'NONE', #57 ) ; +#17545 = VECTOR ( 'NONE', #14069, 39.37007874015748900 ) ; +#17546 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.7395833333333271500 ) ) ; +#17547 = ORIENTED_EDGE ( 'NONE', *, *, #13500, .F. ) ; +#17548 = CARTESIAN_POINT ( 'NONE', ( -2.197565968990157300E-017, -0.2886751345948123700, -1.562539370078740200 ) ) ; +#17549 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#17550 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.9322916666666625200 ) ) ; +#17551 = DIRECTION ( 'NONE', ( -0.02606405807964018100, 0.1716809671555510300, -0.9848077530122088000 ) ) ; +#17552 = ORIENTED_EDGE ( 'NONE', *, *, #10339, .F. ) ; +#17553 = ORIENTED_EDGE ( 'NONE', *, *, #9735, .T. ) ; +#17554 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.048611111111107600 ) ) ; +#17555 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.170138888888886800 ) ) ; +#17556 = EDGE_CURVE ( 'NONE', #6211, #1668, #7747, .T. ) ; +#17557 = ORIENTED_EDGE ( 'NONE', *, *, #9674, .F. ) ; +#17558 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.204861111111109200 ) ) ; +#17559 = VECTOR ( 'NONE', #13277, 39.37007874015748100 ) ; +#17560 = VERTEX_POINT ( 'NONE', #4546 ) ; +#17561 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#17562 = PLANE ( 'NONE', #5282 ) ; +#17563 = EDGE_LOOP ( 'NONE', ( #9498, #15547, #510, #10075, #5599, #18687 ) ) ; +#17564 = CARTESIAN_POINT ( 'NONE', ( -0.1034502481550446100, -0.4492562999771352900, 1.484375000000000200 ) ) ; +#17565 = DIRECTION ( 'NONE', ( -0.2118799300407856500, -0.9772957051199558900, 0.0000000000000000000 ) ) ; +#17566 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.06944444444445656300 ) ) ; +#17567 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.9392361111111067200 ) ) ; +#17568 = EDGE_CURVE ( 'NONE', #11586, #16144, #16498, .T. ) ; +#17569 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -1.170138888888886200 ) ) ; +#17570 = CARTESIAN_POINT ( 'NONE', ( 0.4624991113355815800, -0.07629635976766452300, 1.589564174286821600 ) ) ; +#17571 = CARTESIAN_POINT ( 'NONE', ( 0.1034502481550414700, 0.4492562999771360100, 1.143750000000000000 ) ) ; +#17572 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, 0.1197916666666794400 ) ) ; +#17573 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.187499999999997300 ) ) ; +#17574 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#17575 = CARTESIAN_POINT ( 'NONE', ( -0.1711194507417709300, -0.2440386591219060600, 0.1418781710318873000 ) ) ; +#17576 = ORIENTED_EDGE ( 'NONE', *, *, #10232, .F. ) ; +#17577 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.5104166666666593000 ) ) ; +#17578 = VERTEX_POINT ( 'NONE', #3209 ) ; +#17579 = ORIENTED_EDGE ( 'NONE', *, *, #15907, .F. ) ; +#17580 = CARTESIAN_POINT ( 'NONE', ( 0.4418741004648792400, -0.1314551491986520900, 1.590985962198545200 ) ) ; +#17581 = ORIENTED_EDGE ( 'NONE', *, *, #8061, .T. ) ; +#17582 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.9131944444444398700 ) ) ; +#17583 = ADVANCED_FACE ( 'NONE', ( #3827 ), #19031, .T. ) ; +#17584 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.7708333333333277100 ) ) ; +#17585 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.3298611111111016100 ) ) ; +#17586 = ORIENTED_EDGE ( 'NONE', *, *, #3182, .F. ) ; +#17587 = EDGE_CURVE ( 'NONE', #6068, #8338, #17892, .T. ) ; +#17588 = CARTESIAN_POINT ( 'NONE', ( -0.3953002468276895500, 0.2372148641431517400, 1.484375000000000200 ) ) ; +#17589 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.3437499999999910600 ) ) ; +#17590 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676387000 ) ) ; +#17591 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.281249999999998200 ) ) ; +#17592 = EDGE_CURVE ( 'NONE', #8578, #3642, #7283, .T. ) ; +#17593 = AXIS2_PLACEMENT_3D ( 'NONE', #9611, #18562, #18504 ) ; +#17594 = VERTEX_POINT ( 'NONE', #1724 ) ; +#17595 = CARTESIAN_POINT ( 'NONE', ( -0.4624991113355804700, -0.07629635976767085200, 1.484375000000000200 ) ) ; +#17596 = PLANE ( 'NONE', #10606 ) ; +#17597 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.527777777777778600 ) ) ; +#17598 = ORIENTED_EDGE ( 'NONE', *, *, #18740, .F. ) ; +#17599 = AXIS2_PLACEMENT_3D ( 'NONE', #6606, #629, #16866 ) ; +#17600 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.4479166666666586900 ) ) ; +#17601 = LINE ( 'NONE', #5762, #551 ) ; +#17602 = ORIENTED_EDGE ( 'NONE', *, *, #11975, .F. ) ; +#17603 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.7465277777777717900 ) ) ; +#17604 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.322916666666665200 ) ) ; +#17605 = ORIENTED_EDGE ( 'NONE', *, *, #15291, .F. ) ; +#17606 = DIRECTION ( 'NONE', ( -0.9685831611286308500, -0.2486898871648553500, 0.0000000000000000000 ) ) ; +#17607 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#17608 = CIRCLE ( 'NONE', #5290, 0.4610132068742565100 ) ; +#17609 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.9565972222222181000 ) ) ; +#17610 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#17611 = ORIENTED_EDGE ( 'NONE', *, *, #1562, .T. ) ; +#17612 = EDGE_CURVE ( 'NONE', #9126, #6942, #16594, .T. ) ; +#17613 = EDGE_CURVE ( 'NONE', #16925, #13139, #11209, .T. ) ; +#17614 = DIRECTION ( 'NONE', ( 0.1589208555515848300, 0.06998465030130827900, 0.9848077530122089100 ) ) ; +#17615 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.114583333333330600 ) ) ; +#17617 = EDGE_CURVE ( 'NONE', #13336, #11006, #12354, .T. ) ; +#17616 = VECTOR ( 'NONE', #5439, 39.37007874015748100 ) ; +#17618 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.253472222222220800 ) ) ; +#17619 = ADVANCED_FACE ( 'NONE', ( #10515 ), #16330, .F. ) ; +#17620 = DIRECTION ( 'NONE', ( -0.1697056182357932200, -0.03679256373578169300, -0.9848077530122088000 ) ) ; +#17621 = AXIS2_PLACEMENT_3D ( 'NONE', #12804, #2377, #1032 ) ; +#17622 = PLANE ( 'NONE', #9509 ) ; +#17623 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#17624 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#17625 = CARTESIAN_POINT ( 'NONE', ( 2.169277186090589500E-016, 1.660490876335776200E-016, 3.802149639073315200 ) ) ; +#17626 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.144097222222219400 ) ) ; +#17627 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.249999999999997800 ) ) ; +#17628 = LINE ( 'NONE', #17021, #823 ) ; +#17629 = VERTEX_POINT ( 'NONE', #11832 ) ; +#17630 = CARTESIAN_POINT ( 'NONE', ( 0.01152533017185643000, 0.4608691177296606000, 1.187613820323598600 ) ) ; +#17631 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#17632 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.027777777777773900 ) ) ; +#17633 = DIRECTION ( 'NONE', ( 0.9866647708492382000, 0.1627655675043718200, 0.0000000000000000000 ) ) ; +#17634 = FACE_OUTER_BOUND ( 'NONE', #15063, .T. ) ; +#17635 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.4131944444444362000 ) ) ; +#17636 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #13881, #7954, #9620, #798, #18378, #12327, #3504, #11112, #15222 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2954545454545454700, 0.2992424242424242500, 0.3030303030303030400, 0.3068181818181818200, 0.3106060606060606100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#17637 = CONICAL_SURFACE ( 'NONE', #18229, 0.4610132068742565100, 0.1745329251994302300 ) ; +#17638 = EDGE_CURVE ( 'NONE', #13929, #18933, #3164, .T. ) ; +#17639 = CARTESIAN_POINT ( 'NONE', ( -0.2615678826637217700, -0.3796253675287039600, 1.440511179676397900 ) ) ; +#17640 = AXIS2_PLACEMENT_3D ( 'NONE', #16206, #264, #10554 ) ; +#17641 = VECTOR ( 'NONE', #374, 39.37007874015748900 ) ; +#17642 = VERTEX_POINT ( 'NONE', #7587 ) ; +#17643 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.2604166666666568600 ) ) ; +#17644 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.003472222222210275400 ) ) ; +#17645 = CIRCLE ( 'NONE', #252, 0.4687475818742578600 ) ; +#17646 = CARTESIAN_POINT ( 'NONE', ( -0.4190133544667908300, -0.2101240212147320900, 1.143750000000000000 ) ) ; +#17647 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.06250000000001251800 ) ) ; +#17648 = CARTESIAN_POINT ( 'NONE', ( 0.2226962501188589900, -0.1905450603542779300, 0.1282528369516952300 ) ) ; +#17649 = ORIENTED_EDGE ( 'NONE', *, *, #15809, .F. ) ; +#17650 = CARTESIAN_POINT ( 'NONE', ( -0.3535935602980385700, -0.3077269725401383100, 1.143750000000000000 ) ) ; +#17651 = CARTESIAN_POINT ( 'NONE', ( -0.04632776727398118400, -0.4586795339797645200, 1.143750000000000000 ) ) ; +#17652 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.468750000000000000 ) ) ; +#17653 = CYLINDRICAL_SURFACE ( 'NONE', #12887, 0.3125000000000008300 ) ; +#17654 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#17655 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#17656 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.2048611111111012000 ) ) ; +#17657 = CARTESIAN_POINT ( 'NONE', ( -0.1561762219985437000, 0.2615164365774882400, 0.1598583108407009000 ) ) ; +#17658 = ORIENTED_EDGE ( 'NONE', *, *, #5287, .F. ) ; +#17659 = CYLINDRICAL_SURFACE ( 'NONE', #13169, 0.3125000000000008300 ) ; +#17660 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.6805555555555489200 ) ) ; +#17661 = EDGE_CURVE ( 'NONE', #17727, #12597, #17419, .T. ) ; +#17662 = CARTESIAN_POINT ( 'NONE', ( 0.2659561823096086000, 0.3859943064402109900, 1.484375000000000200 ) ) ; +#17663 = LINE ( 'NONE', #11013, #5889 ) ; +#17664 = CIRCLE ( 'NONE', #18679, 0.4687499999999995000 ) ; +#17665 = ORIENTED_EDGE ( 'NONE', *, *, #4270, .T. ) ; +#17666 = CARTESIAN_POINT ( 'NONE', ( 1.101004508550800100E-016, 2.500156501629102900E-016, 3.802149639073269400 ) ) ; +#17667 = ORIENTED_EDGE ( 'NONE', *, *, #14385, .F. ) ; +#17668 = LINE ( 'NONE', #14922, #5894 ) ; +#17669 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.8906249999999952300 ) ) ; +#17670 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.6631944444444379800 ) ) ; +#17671 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.069444444444441300 ) ) ; +#17672 = AXIS2_PLACEMENT_3D ( 'NONE', #10014, #3001, #1196 ) ; +#17673 = ORIENTED_EDGE ( 'NONE', *, *, #17936, .T. ) ; +#17674 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.249999999999998400 ) ) ; +#17675 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#17676 = VECTOR ( 'NONE', #6583, 39.37007874015748100 ) ; +#17677 = CARTESIAN_POINT ( 'NONE', ( 0.3685350091390558500, 0.2896696558821369400, 1.484375000000000200 ) ) ; +#17678 = VECTOR ( 'NONE', #4267, 39.37007874015748900 ) ; +#17679 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#17680 = VECTOR ( 'NONE', #16911, 39.37007874015748100 ) ; +#17681 = CARTESIAN_POINT ( 'NONE', ( -0.3893757946457717100, -0.2609847755022762200, 1.484375000000000200 ) ) ; +#17682 = ORIENTED_EDGE ( 'NONE', *, *, #5250, .F. ) ; +#17683 = CARTESIAN_POINT ( 'NONE', ( 0.1278868739221158400, -0.4509647912990442700, 1.484375000000000200 ) ) ; +#17684 = FACE_OUTER_BOUND ( 'NONE', #4355, .T. ) ; +#17685 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.9670138888888847300 ) ) ; +#17686 = CIRCLE ( 'NONE', #2392, 0.4687499999999996700 ) ; +#17687 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.180555555555552900 ) ) ; +#17688 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.08680555555554456100 ) ) ; +#17689 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#17690 = ORIENTED_EDGE ( 'NONE', *, *, #15683, .F. ) ; +#17691 = CARTESIAN_POINT ( 'NONE', ( 0.2849188901020641700, 0.3722200808164538000, 1.484375000000000200 ) ) ; +#17692 = CARTESIAN_POINT ( 'NONE', ( -0.2072971172780909700, 0.1891959400883646000, 0.09274151116466962400 ) ) ; +#17693 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.9479166666666621900 ) ) ; +#17694 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.190972222222219900 ) ) ; +#17695 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.347222222222221200 ) ) ; +#17696 = ORIENTED_EDGE ( 'NONE', *, *, #4137, .T. ) ; +#17697 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.5208333333333259300 ) ) ; +#17698 = ADVANCED_FACE ( 'NONE', ( #13518 ), #5196, .T. ) ; +#17699 = ORIENTED_EDGE ( 'NONE', *, *, #13565, .F. ) ; +#17700 = EDGE_CURVE ( 'NONE', #9532, #9034, #8436, .T. ) ; +#17701 = EDGE_LOOP ( 'NONE', ( #1191, #12973, #17718, #4899 ) ) ; +#17702 = ORIENTED_EDGE ( 'NONE', *, *, #3539, .T. ) ; +#17703 = VECTOR ( 'NONE', #4429, 39.37007874015748100 ) ; +#17704 = DIRECTION ( 'NONE', ( -1.000000000000000000, -3.730349362740526000E-014, 0.0000000000000000000 ) ) ; +#17705 = LINE ( 'NONE', #3134, #6193 ) ; +#17706 = FACE_OUTER_BOUND ( 'NONE', #1236, .T. ) ; +#17707 = ORIENTED_EDGE ( 'NONE', *, *, #11198, .F. ) ; +#17708 = CARTESIAN_POINT ( 'NONE', ( -0.3060868967590813500, -0.06298461425138629500, 0.1823163490354292900 ) ) ; +#17709 = LINE ( 'NONE', #7974, #15625 ) ; +#17710 = DIRECTION ( 'NONE', ( 0.9992845593168625500, -0.03782022621434159800, 0.0000000000000000000 ) ) ; +#17711 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.1215277777777666600 ) ) ; +#17712 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, 0.02430555555556781300 ) ) ; +#17713 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.02777777777776606700 ) ) ; +#17714 = CARTESIAN_POINT ( 'NONE', ( -0.2131992450667983500, -0.1916175321103446800, 0.1092650834255563100 ) ) ; +#17715 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.402777777777777200 ) ) ; +#17716 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.4930555555555476400 ) ) ; +#17717 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.322916666666665400 ) ) ; +#17718 = ORIENTED_EDGE ( 'NONE', *, *, #9918, .T. ) ; +#17719 = VERTEX_POINT ( 'NONE', #18082 ) ; +#17720 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#17721 = CARTESIAN_POINT ( 'NONE', ( -0.2321251145655892600, 0.3983103163368959500, 1.592561465728329600 ) ) ; +#17722 = ORIENTED_EDGE ( 'NONE', *, *, #3431, .T. ) ; +#17723 = ORIENTED_EDGE ( 'NONE', *, *, #6637, .T. ) ; +#17724 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.1180555555555449200 ) ) ; +#17725 = VECTOR ( 'NONE', #16717, 39.37007874015748100 ) ; +#17726 = VECTOR ( 'NONE', #1843, 39.37007874015748100 ) ; +#17727 = VERTEX_POINT ( 'NONE', #12285 ) ; +#17728 = ORIENTED_EDGE ( 'NONE', *, *, #2658, .T. ) ; +#17729 = EDGE_CURVE ( 'NONE', #9427, #12380, #613, .T. ) ; +#17730 = CARTESIAN_POINT ( 'NONE', ( 0.1946414668062773600, 0.2282839181766284400, 0.1458502653768885000 ) ) ; +#17731 = VECTOR ( 'NONE', #2903, 39.37007874015748900 ) ; +#17732 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.5138888888888809600 ) ) ; +#17733 = EDGE_CURVE ( 'NONE', #924, #14318, #4510, .T. ) ; +#17734 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#17735 = EDGE_CURVE ( 'NONE', #6787, #11135, #1755, .T. ) ; +#17736 = AXIS2_PLACEMENT_3D ( 'NONE', #3097, #5776, #16087 ) ; +#17737 = AXIS2_PLACEMENT_3D ( 'NONE', #3536, #7799, #9280 ) ; +#17738 = DIRECTION ( 'NONE', ( 0.1219978065221453700, 0.1235727510854635500, 0.9848077530122085800 ) ) ; +#17739 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.7083333333333271500 ) ) ; +#17740 = ORIENTED_EDGE ( 'NONE', *, *, #17355, .F. ) ; +#17741 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.6927083333333271500 ) ) ; +#17742 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#17743 = CARTESIAN_POINT ( 'NONE', ( -0.001560055270997910800, -0.2803076579694083200, -1.553820456223459400 ) ) ; +#17744 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.4930555555555477500 ) ) ; +#17745 = ORIENTED_EDGE ( 'NONE', *, *, #15435, .T. ) ; +#17746 = FACE_OUTER_BOUND ( 'NONE', #6221, .T. ) ; +#17747 = LINE ( 'NONE', #17564, #18436 ) ; +#17748 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#17749 = ORIENTED_EDGE ( 'NONE', *, *, #16069, .F. ) ; +#17750 = ORIENTED_EDGE ( 'NONE', *, *, #15634, .F. ) ; +#17751 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.131944444444442000 ) ) ; +#17752 = FACE_OUTER_BOUND ( 'NONE', #9455, .T. ) ; +#17753 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.201388888888886800 ) ) ; +#17754 = CARTESIAN_POINT ( 'NONE', ( 0.4548654901190624100, -0.07503707624388920900, 1.484375000000000200 ) ) ; +#17755 = DIRECTION ( 'NONE', ( 1.000000000000000000, 2.131628207280300600E-014, 0.0000000000000000000 ) ) ; +#17756 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.118055555555552500 ) ) ; +#17757 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#17758 = EDGE_CURVE ( 'NONE', #6075, #8086, #9138, .T. ) ; +#17759 = ORIENTED_EDGE ( 'NONE', *, *, #7136, .T. ) ; +#17760 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.8454861111111060500 ) ) ; +#17761 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.4131944444444360400 ) ) ; +#17762 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#17763 = AXIS2_PLACEMENT_3D ( 'NONE', #13374, #3127, #7448 ) ; +#17764 = CARTESIAN_POINT ( 'NONE', ( -0.2829032728445126700, 0.009425911912909985800, 0.1006887056116323000 ) ) ; +#17765 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.9548611111111067200 ) ) ; +#17766 = CARTESIAN_POINT ( 'NONE', ( -0.3477592364557806600, -0.3026494512999792800, 1.143750000000000000 ) ) ; +#17767 = VERTEX_POINT ( 'NONE', #7778 ) ; +#17768 = EDGE_CURVE ( 'NONE', #14959, #17502, #9596, .T. ) ; +#17769 = VERTEX_POINT ( 'NONE', #13760 ) ; +#17770 = LINE ( 'NONE', #12118, #8772 ) ; +#17771 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.3298611111111021700 ) ) ; +#17772 = ORIENTED_EDGE ( 'NONE', *, *, #14310, .F. ) ; +#17773 = EDGE_LOOP ( 'NONE', ( #10397, #16371, #8035, #17295 ) ) ; +#17774 = AXIS2_PLACEMENT_3D ( 'NONE', #651, #10955, #5083 ) ; +#17775 = CARTESIAN_POINT ( 'NONE', ( -0.1803732187963043300, 0.4242625117230446300, 1.187613820323602900 ) ) ; +#17776 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #14211, #15620, #5504, #11390, #6809, #12800, #3850, #14153, #8415 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4469696969696970200, 0.4507575757575758000, 0.4545454545454545900, 0.4583333333333333700, 0.4621212121212121500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#17777 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.4288194444444360900 ) ) ; +#17778 = CARTESIAN_POINT ( 'NONE', ( -0.4347510546871054000, -0.1533776299234526100, 1.143750000000000000 ) ) ; +#17779 = VERTEX_POINT ( 'NONE', #7714 ) ; +#17780 = ORIENTED_EDGE ( 'NONE', *, *, #19127, .T. ) ; +#17781 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.8854166666666620800 ) ) ; +#17782 = VERTEX_POINT ( 'NONE', #504 ) ; +#17783 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.03472222222221038600 ) ) ; +#17784 = CARTESIAN_POINT ( 'NONE', ( 0.2615678826637189400, 0.3796253675287058500, 1.593193105402742800 ) ) ; +#17785 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.1284722222222112700 ) ) ; +#17786 = CARTESIAN_POINT ( 'NONE', ( 0.2653800163583947500, -0.1279184445384239100, 0.1311651594529277800 ) ) ; +#17787 = LINE ( 'NONE', #1814, #980 ) ; +#17788 = VERTEX_POINT ( 'NONE', #1979 ) ; +#17789 = EDGE_CURVE ( 'NONE', #8575, #2237, #6107, .T. ) ; +#17790 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.9374999999999956700 ) ) ; +#17791 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676348100 ) ) ; +#17792 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.402777777777777000 ) ) ; +#17793 = CARTESIAN_POINT ( 'NONE', ( 1.101004508550800100E-016, 2.500156501629102900E-016, -1.174024639073305800 ) ) ; +#17794 = AXIS2_PLACEMENT_3D ( 'NONE', #10127, #16028, #8703 ) ; +#17795 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.288194444444443100 ) ) ; +#17796 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.2222222222222124100 ) ) ; +#17797 = CARTESIAN_POINT ( 'NONE', ( -0.2918024971356704100, 0.09696653062330197500, 0.1678075122925176400 ) ) ; +#17798 = ORIENTED_EDGE ( 'NONE', *, *, #13721, .F. ) ; +#17799 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.6180555555555484700 ) ) ; +#17800 = AXIS2_PLACEMENT_3D ( 'NONE', #17123, #967, #15499 ) ; +#17801 = DIRECTION ( 'NONE', ( 0.9386889991400950700, -0.3447650836343011900, -0.0000000000000000000 ) ) ; +#17802 = VERTEX_POINT ( 'NONE', #18218 ) ; +#17803 = ADVANCED_FACE ( 'NONE', ( #2894 ), #7975, .T. ) ; +#17804 = VECTOR ( 'NONE', #15718, 39.37007874015748100 ) ; +#17805 = VERTEX_POINT ( 'NONE', #16719 ) ; +#17806 = APPROVAL_ROLE ( '' ) ; +#17807 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.7378472222222164400 ) ) ; +#17808 = ORIENTED_EDGE ( 'NONE', *, *, #2203, .T. ) ; +#17809 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#17810 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.6927083333333271500 ) ) ; +#17811 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995600, 0.1443375672974060700, 1.548179320649367500 ) ) ; +#17812 = DIRECTION ( 'NONE', ( 0.1697056182357964400, -0.03679256373577876500, 0.9848077530122082400 ) ) ; +#17813 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#17814 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.7847222222222168800 ) ) ; +#17815 = EDGE_CURVE ( 'NONE', #18346, #14479, #10274, .T. ) ; +#17816 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.263888888888887300 ) ) ; +#17817 = VERTEX_POINT ( 'NONE', #7915 ) ; +#17818 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323616000 ) ) ; +#17819 = FACE_OUTER_BOUND ( 'NONE', #19107, .T. ) ; +#17820 = CARTESIAN_POINT ( 'NONE', ( 0.4592360163321199100, -0.04044079890273024500, 1.143750000000000000 ) ) ; +#17821 = ORIENTED_EDGE ( 'NONE', *, *, #4410, .F. ) ; +#17822 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.7552083333333276000 ) ) ; +#17823 = EDGE_CURVE ( 'NONE', #13599, #14411, #2654, .T. ) ; +#17824 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.4270833333333249900 ) ) ; +#17825 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -0.5763888888888817300 ) ) ; +#17826 = ORIENTED_EDGE ( 'NONE', *, *, #4864, .F. ) ; +#17827 = PLANE ( 'NONE', #17098 ) ; +#17828 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#17829 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.8888888888888839500 ) ) ; +#17830 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#17831 = CIRCLE ( 'NONE', #3546, 0.4687499999999995600 ) ; +#17832 = ORIENTED_EDGE ( 'NONE', *, *, #3434, .T. ) ; +#17833 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.4999999999999925100 ) ) ; +#17834 = ORIENTED_EDGE ( 'NONE', *, *, #3072, .T. ) ; +#17835 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#17836 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.2378472222222123300 ) ) ; +#17837 = ORIENTED_EDGE ( 'NONE', *, *, #312, .F. ) ; +#17838 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676388100 ) ) ; +#17839 = DIRECTION ( 'NONE', ( -1.000000000000000000, -1.224646799147353200E-016, 0.0000000000000000000 ) ) ; +#17840 = VECTOR ( 'NONE', #4885, 39.37007874015748100 ) ; +#17841 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.006944444444432569900 ) ) ; +#17842 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, 0.9375000000000000000 ) ) ; +#17843 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.01388888888890092700 ) ) ; +#17844 = CARTESIAN_POINT ( 'NONE', ( -0.2692677662602559500, -0.09342075199019712900, 0.1047629090686570800 ) ) ; +#17845 = EDGE_CURVE ( 'NONE', #4157, #4452, #9352, .T. ) ; +#17846 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.5017361111111031700 ) ) ; +#17847 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.01388888888887717000 ) ) ; +#17848 = DIRECTION ( 'NONE', ( -0.9430338398216168100, 0.3326968243781375800, 0.0000000000000000000 ) ) ; +#17849 = DIRECTION ( 'NONE', ( 0.1156686028357384000, 0.1295162689590429700, -0.9848077530122094600 ) ) ; +#17850 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.298611111111109400 ) ) ; +#17851 = EDGE_CURVE ( 'NONE', #9715, #9917, #13679, .T. ) ; +#17852 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#17853 = AXIS2_PLACEMENT_3D ( 'NONE', #14723, #4614, #11890 ) ; +#17854 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, 0.1736111111111243200 ) ) ; +#17855 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.319444444444443500 ) ) ; +#17856 = AXIS2_PLACEMENT_3D ( 'NONE', #14351, #9920, #14107 ) ; +#17857 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.2638888888888794000 ) ) ; +#17858 = FACE_OUTER_BOUND ( 'NONE', #10325, .T. ) ; +#17859 = CARTESIAN_POINT ( 'NONE', ( -0.2976926513403310700, 0.07806980191735760100, 0.1685429483255860600 ) ) ; +#17860 = CIRCLE ( 'NONE', #17900, 0.4610132068742565100 ) ; +#17861 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.5486111111111035000 ) ) ; +#17862 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#17863 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#17864 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.7829861111111056100 ) ) ; +#17865 = EDGE_CURVE ( 'NONE', #17805, #30, #7045, .T. ) ; +#17866 = CARTESIAN_POINT ( 'NONE', ( 0.04085285010641864100, -0.2804074838590309700, -1.550756009495297000 ) ) ; +#17867 = CARTESIAN_POINT ( 'NONE', ( 0.4289947181748867700, 0.1889182211382724200, 1.484375000000000200 ) ) ; +#17868 = CYLINDRICAL_SURFACE ( 'NONE', #3076, 0.3125000000000008300 ) ; +#17869 = EDGE_CURVE ( 'NONE', #675, #12394, #13962, .T. ) ; +#17870 = ORIENTED_EDGE ( 'NONE', *, *, #7870, .F. ) ; +#17871 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#17872 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.7604166666666611900 ) ) ; +#17873 = EDGE_CURVE ( 'NONE', #16446, #11110, #13258, .T. ) ; +#17874 = CIRCLE ( 'NONE', #17028, 0.4687499999999995000 ) ; +#17875 = AXIS2_PLACEMENT_3D ( 'NONE', #1752, #6262, #18053 ) ; +#17876 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.031249999999996700 ) ) ; +#17877 = VERTEX_POINT ( 'NONE', #3902 ) ; +#17878 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #8114, #11144, #14096, #1028, #6810, #5263, #8416, #3851, #15556 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4772727272727272900, 0.4810606060606060800, 0.4848484848484848600, 0.4886363636363636500, 0.4924242424242424300 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#17879 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#17880 = VECTOR ( 'NONE', #6982, 39.37007874015748100 ) ; +#17881 = CARTESIAN_POINT ( 'NONE', ( 0.01152533017185641800, -0.4608691177296606000, 1.187613820323598600 ) ) ; +#17882 = CARTESIAN_POINT ( 'NONE', ( -0.4581049985510755000, -0.09931820485431147600, 1.484375000000000200 ) ) ; +#17883 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -1.491319444444444400 ) ) ; +#17884 = CARTESIAN_POINT ( 'NONE', ( 0.2295898801003941900, -0.1561213555156358800, 1.265525726069368600 ) ) ; +#17885 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.8072916666666611900 ) ) ; +#17886 = DIRECTION ( 'NONE', ( 0.9961450333403966100, -0.08772156263576201500, 0.0000000000000000000 ) ) ; +#17887 = CARTESIAN_POINT ( 'NONE', ( -0.4418741004648784100, 0.1314551491986550900, 1.590985962198545200 ) ) ; +#17888 = CARTESIAN_POINT ( 'NONE', ( -0.06919666627598859700, 0.4557905201830941800, 1.588758826628429600 ) ) ; +#17889 = CARTESIAN_POINT ( 'NONE', ( 0.4219140922835683000, 0.1858000959230613500, 1.592116737595687900 ) ) ; +#17890 = CARTESIAN_POINT ( 'NONE', ( -0.2724538761460788000, 0.07501709182554819300, 0.09807112493117119100 ) ) ; +#17891 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.9513888888888844000 ) ) ; +#17892 = CIRCLE ( 'NONE', #13051, 0.4610132068742565100 ) ; +#17893 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.2638888888888794000 ) ) ; +#17894 = ADVANCED_FACE ( 'NONE', ( #5862 ), #17868, .T. ) ; +#17895 = CONICAL_SURFACE ( 'NONE', #18719, 0.2500000000000001100, 1.047197551196593400 ) ; +#17896 = ORIENTED_EDGE ( 'NONE', *, *, #8619, .F. ) ; +#17897 = EDGE_CURVE ( 'NONE', #8952, #18868, #6814, .T. ) ; +#17898 = FACE_OUTER_BOUND ( 'NONE', #3044, .T. ) ; +#17899 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.3524305555555467000 ) ) ; +#17900 = AXIS2_PLACEMENT_3D ( 'NONE', #3524, #13762, #10879 ) ; +#17901 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#17902 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.1770833333333228800 ) ) ; +#17903 = ORIENTED_EDGE ( 'NONE', *, *, #1766, .T. ) ; +#17904 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.104166666666663900 ) ) ; +#17905 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 1.202013117212275700E-014 ) ) ; +#17906 = CARTESIAN_POINT ( 'NONE', ( -0.2830319157922539000, -3.414450508579332300E-016, 0.1010421492057234800 ) ) ; +#17907 = CONICAL_SURFACE ( 'NONE', #1947, 0.4610132068742565100, 0.1745329251994297600 ) ; +#17908 = ADVANCED_FACE ( 'NONE', ( #16241 ), #14194, .F. ) ; +#17909 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.6197916666666597500 ) ) ; +#17910 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.322916666666665600 ) ) ; +#17911 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#17912 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.197916666666664300 ) ) ; +#17913 = CIRCLE ( 'NONE', #12798, 0.4610132068742565100 ) ; +#17914 = CIRCLE ( 'NONE', #12371, 0.4610132068742565100 ) ; +#17915 = CIRCLE ( 'NONE', #16508, 0.4687475818742549700 ) ; +#17916 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.406250000000000200 ) ) ; +#17917 = ORIENTED_EDGE ( 'NONE', *, *, #6642, .T. ) ; +#17918 = LINE ( 'NONE', #3625, #14003 ) ; +#17919 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.1284722222222118300 ) ) ; +#17920 = DIRECTION ( 'NONE', ( 0.06279051952930256300, 0.9980267284282722300, 0.0000000000000000000 ) ) ; +#17921 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.5520833333333257100 ) ) ; +#17922 = VERTEX_POINT ( 'NONE', #2362 ) ; +#17923 = EDGE_CURVE ( 'NONE', #17922, #8309, #13495, .T. ) ; +#17924 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#17925 = ORIENTED_EDGE ( 'NONE', *, *, #8173, .T. ) ; +#17926 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#17927 = EDGE_LOOP ( 'NONE', ( #1861, #15835, #13590, #4904 ) ) ; +#17928 = LINE ( 'NONE', #13001, #6168 ) ; +#17929 = LINE ( 'NONE', #9759, #10092 ) ; +#17930 = FACE_OUTER_BOUND ( 'NONE', #14596, .T. ) ; +#17931 = ORIENTED_EDGE ( 'NONE', *, *, #16897, .F. ) ; +#17932 = CARTESIAN_POINT ( 'NONE', ( -0.1561548111811891500, 0.2288060563310687900, 0.08286399342893258100 ) ) ; +#17933 = CARTESIAN_POINT ( 'NONE', ( 0.2136251051454184900, -0.2057989629292871800, -1.536895911680666600 ) ) ; +#17934 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.277777777777776100 ) ) ; +#17935 = VECTOR ( 'NONE', #9531, 39.37007874015748100 ) ; +#17936 = EDGE_CURVE ( 'NONE', #1593, #17125, #18118, .T. ) ; +#17937 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, 0.1423611111111239300 ) ) ; +#17938 = CARTESIAN_POINT ( 'NONE', ( 0.3624522803384100900, 0.2848886122504243900, 1.440511179676400100 ) ) ; +#17939 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.7673611111111056100 ) ) ; +#17940 = AXIS2_PLACEMENT_3D ( 'NONE', #6841, #5293, #17153 ) ; +#17941 = VERTEX_POINT ( 'NONE', #14140 ) ; +#17942 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.9479166666666628500 ) ) ; +#17943 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.1874999999999897300 ) ) ; +#17944 = VERTEX_POINT ( 'NONE', #3716 ) ; +#17945 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#17946 = PLANE ( 'NONE', #4553 ) ; +#17947 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.4930555555555476400 ) ) ; +#17948 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#17949 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.7899305555555500300 ) ) ; +#17950 = ORIENTED_EDGE ( 'NONE', *, *, #2055, .T. ) ; +#17951 = ORIENTED_EDGE ( 'NONE', *, *, #18081, .T. ) ; +#17952 = VECTOR ( 'NONE', #15752, 39.37007874015748100 ) ; +#17953 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#17954 = VECTOR ( 'NONE', #6022, 39.37007874015748100 ) ; +#17955 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#17956 = ORIENTED_EDGE ( 'NONE', *, *, #9804, .T. ) ; +#17957 = ORIENTED_EDGE ( 'NONE', *, *, #1369, .T. ) ; +#17958 = CARTESIAN_POINT ( 'NONE', ( 0.1039275991893301000, 0.2894461476892142300, 0.1668213716931701600 ) ) ; +#17959 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.8368055555555501400 ) ) ; +#17960 = FACE_OUTER_BOUND ( 'NONE', #14361, .T. ) ; +#17961 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.1736111111111008400 ) ) ; +#17962 = EDGE_CURVE ( 'NONE', #902, #6801, #6349, .T. ) ; +#17963 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#17964 = EDGE_LOOP ( 'NONE', ( #268, #7174, #10196, #18469 ) ) ; +#17965 = EDGE_CURVE ( 'NONE', #6141, #18684, #6604, .T. ) ; +#17966 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.2552083333333235400 ) ) ; +#17967 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#17968 = AXIS2_PLACEMENT_3D ( 'NONE', #13172, #10273, #5802 ) ; +#17969 = ORIENTED_EDGE ( 'NONE', *, *, #10969, .F. ) ; +#17970 = FACE_OUTER_BOUND ( 'NONE', #90, .T. ) ; +#17971 = VECTOR ( 'NONE', #1777, 39.37007874015748100 ) ; +#17972 = EDGE_LOOP ( 'NONE', ( #12402, #511, #4781, #8271 ) ) ; +#17973 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.593467001493433100 ) ) ; +#17974 = ORIENTED_EDGE ( 'NONE', *, *, #6387, .T. ) ; +#17975 = LINE ( 'NONE', #8267, #10142 ) ; +#17976 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, 0.1145833333333461100 ) ) ; +#17977 = CARTESIAN_POINT ( 'NONE', ( 0.2119256669269656800, 0.4094150566479534100, 1.440511179676399600 ) ) ; +#17978 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.4739583333333252700 ) ) ; +#17979 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.9236111111111066100 ) ) ; +#17980 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.1874999999999897300 ) ) ; +#17981 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.416666666666666300 ) ) ; +#17982 = CARTESIAN_POINT ( 'NONE', ( 0.04632776727398758100, -0.4586795339797638500, 1.588758826628429600 ) ) ; +#17983 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -1.079861111111107800 ) ) ; +#17984 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.152777777777775000 ) ) ; +#17985 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.222222222222220300 ) ) ; +#17986 = ORIENTED_EDGE ( 'NONE', *, *, #7136, .F. ) ; +#17987 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, 0.1180555555555681400 ) ) ; +#17988 = EDGE_CURVE ( 'NONE', #18178, #3531, #13026, .T. ) ; +#17989 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.5277777777777703500 ) ) ; +#17990 = ORIENTED_EDGE ( 'NONE', *, *, #10175, .F. ) ; +#17991 = ORIENTED_EDGE ( 'NONE', *, *, #9228, .F. ) ; +#17992 = LINE ( 'NONE', #8113, #14076 ) ; +#17993 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.6631944444444377600 ) ) ; +#17994 = EDGE_CURVE ( 'NONE', #13348, #5945, #5180, .T. ) ; +#17995 = ORIENTED_EDGE ( 'NONE', *, *, #10346, .F. ) ; +#17996 = ORIENTED_EDGE ( 'NONE', *, *, #8385, .F. ) ; +#17997 = LINE ( 'NONE', #14452, #3009 ) ; +#17998 = CARTESIAN_POINT ( 'NONE', ( 0.2499999999999995800, 0.1209958264051836500, 1.265590919175520800 ) ) ; +#17999 = EDGE_CURVE ( 'NONE', #4195, #12156, #10496, .T. ) ; +#18000 = ADVANCED_FACE ( 'NONE', ( #10033 ), #2434, .T. ) ; +#18001 = AXIS2_PLACEMENT_3D ( 'NONE', #2348, #18519, #15532 ) ; +#18002 = AXIS2_PLACEMENT_3D ( 'NONE', #836, #14284, #2630 ) ; +#18003 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, 0.06250000000001224000 ) ) ; +#18004 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18005 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.520833333333333700 ) ) ; +#18006 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.593193105402742800 ) ) ; +#18007 = ORIENTED_EDGE ( 'NONE', *, *, #4640, .T. ) ; +#18008 = ORIENTED_EDGE ( 'NONE', *, *, #14368, .F. ) ; +#18009 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#18010 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#18011 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.8472222222222173200 ) ) ; +#18012 = VERTEX_POINT ( 'NONE', #8349 ) ; +#18013 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.062499999999996900 ) ) ; +#18014 = LINE ( 'NONE', #6966, #8790 ) ; +#18015 = ADVANCED_FACE ( 'NONE', ( #18345 ), #14404, .T. ) ; +#18016 = EDGE_LOOP ( 'NONE', ( #8352, #10865, #9052, #542 ) ) ; +#18017 = CARTESIAN_POINT ( 'NONE', ( -0.4581073617749780700, -0.09931871720662460700, 1.143750000000000000 ) ) ; +#18018 = CARTESIAN_POINT ( 'NONE', ( 0.2119256669269656800, 0.4094150566479534100, 1.592561465728329600 ) ) ; +#18019 = CARTESIAN_POINT ( 'NONE', ( -0.3829490853735665900, -0.2566771803726130600, 1.484375000000000200 ) ) ; +#18020 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.293402777777776600 ) ) ; +#18021 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -1.385416666666666100 ) ) ; +#18022 = EDGE_CURVE ( 'NONE', #896, #4121, #2209, .T. ) ; +#18023 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #4073, #18892, #5913, #1494, #2789, #11801, #13089, #7297, #8784 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1590909090909090900, 0.1628787878787878700, 0.1666666666666666600, 0.1704545454545454400, 0.1742424242424242500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#18024 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.7968749999999944500 ) ) ; +#18025 = AXIS2_PLACEMENT_3D ( 'NONE', #16071, #1345, #11837 ) ; +#18026 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -5.157534287635060100E-016, 1.249999999999999800 ) ) ; +#18027 = CARTESIAN_POINT ( 'NONE', ( -0.2802162586133502000, -0.3660765293230667200, 1.143750000000000000 ) ) ; +#18028 = CARTESIAN_POINT ( 'NONE', ( 0.04034633890771764000, 0.3050335967488569400, 0.1683980106166440600 ) ) ; +#18029 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.7361111111111050500 ) ) ; +#18030 = CARTESIAN_POINT ( 'NONE', ( -0.2648746886247911300, -0.1630256528579511800, 0.1775939163327631400 ) ) ; +#18031 = AXIS2_PLACEMENT_3D ( 'NONE', #13401, #17963, #5893 ) ; +#18032 = EDGE_LOOP ( 'NONE', ( #15616, #15173, #16038, #19114 ) ) ; +#18033 = ORIENTED_EDGE ( 'NONE', *, *, #17304, .F. ) ; +#18034 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.1180555555555449200 ) ) ; +#18035 = ORIENTED_EDGE ( 'NONE', *, *, #11195, .F. ) ; +#18036 = VECTOR ( 'NONE', #4970, 39.37007874015748900 ) ; +#18037 = ORIENTED_EDGE ( 'NONE', *, *, #9086, .T. ) ; +#18038 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.2447916666666569200 ) ) ; +#18039 = EDGE_LOOP ( 'NONE', ( #8540, #15827, #7087, #3910 ) ) ; +#18040 = CARTESIAN_POINT ( 'NONE', ( -0.3624522803384120900, -0.2848886122504218900, 1.187613820323599700 ) ) ; +#18041 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.1562500000000131300 ) ) ; +#18042 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#18043 = CARTESIAN_POINT ( 'NONE', ( -0.2321251145655865700, -0.3983103163368976200, 1.440511179676387400 ) ) ; +#18044 = EDGE_LOOP ( 'NONE', ( #293, #15698, #12958, #14141 ) ) ; +#18045 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.5989583333333262600 ) ) ; +#18046 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -0.9305555555555510300 ) ) ; +#18047 = EDGE_CURVE ( 'NONE', #9314, #14778, #593, .T. ) ; +#18048 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.9479166666666624100 ) ) ; +#18049 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.041666666666663000 ) ) ; +#18050 = ORIENTED_EDGE ( 'NONE', *, *, #2711, .T. ) ; +#18051 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961700, -0.8333333333333281500 ) ) ; +#18052 = LINE ( 'NONE', #14838, #14124 ) ; +#18053 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18054 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.402777777777777500 ) ) ; +#18055 = EDGE_LOOP ( 'NONE', ( #16003, #18373, #13468, #3263 ) ) ; +#18056 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 1.147376157338990600E-014 ) ) ; +#18057 = ORIENTED_EDGE ( 'NONE', *, *, #3714, .F. ) ; +#18058 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#18059 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.4236111111111025600 ) ) ; +#18060 = AXIS2_PLACEMENT_3D ( 'NONE', #15423, #6600, #12539 ) ; +#18061 = DIRECTION ( 'NONE', ( 0.4596954355469866600, -0.8880766332571002900, 0.0000000000000000000 ) ) ; +#18062 = VERTEX_POINT ( 'NONE', #3969 ) ; +#18063 = CARTESIAN_POINT ( 'NONE', ( -0.01152533017185641800, 0.4608691177296606000, 1.587227003692501100 ) ) ; +#18064 = ORIENTED_EDGE ( 'NONE', *, *, #12814, .T. ) ; +#18065 = DATE_AND_TIME ( #15294, #2852 ) ; +#18066 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -1.017361111111107600 ) ) ; +#18067 = VERTEX_POINT ( 'NONE', #2608 ) ; +#18068 = PLANE ( 'NONE', #16587 ) ; +#18069 = DIRECTION ( 'NONE', ( 0.6374239897486934100, -0.7705132427757860300, 0.0000000000000000000 ) ) ; +#18070 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18071 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.6215277777777709100 ) ) ; +#18072 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.9444444444444404200 ) ) ; +#18073 = EDGE_CURVE ( 'NONE', #12242, #4814, #15672, .T. ) ; +#18074 = VECTOR ( 'NONE', #13525, 39.37007874015748900 ) ; +#18075 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.020833333333329900 ) ) ; +#18076 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#18077 = EDGE_LOOP ( 'NONE', ( #5543, #2124, #3976, #1146, #9497, #17016 ) ) ; +#18078 = CARTESIAN_POINT ( 'NONE', ( -2.532093440179764400E-017, 3.844143680069225700E-018, -1.174024639073293100 ) ) ; +#18079 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.446180555555555400 ) ) ; +#18080 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#18081 = EDGE_CURVE ( 'NONE', #4172, #2598, #13731, .T. ) ; +#18082 = CARTESIAN_POINT ( 'NONE', ( -0.4418741004648775200, -0.1314551491986582500, 1.440511179676384800 ) ) ; +#18083 = CIRCLE ( 'NONE', #5887, 0.4610132068742565100 ) ; +#18084 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -0.6562499999999934500 ) ) ; +#18085 = CARTESIAN_POINT ( 'NONE', ( -0.1776760863113862600, 0.1860937983343742800, 1.529910848479152400 ) ) ; +#18086 = CARTESIAN_POINT ( 'NONE', ( 0.2689038487804940000, 0.1442888480554033700, 0.1614696481150902400 ) ) ; +#18087 = VERTEX_POINT ( 'NONE', #15851 ) ; +#18088 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.6493055555555487000 ) ) ; +#18089 = AXIS2_PLACEMENT_3D ( 'NONE', #1851, #10880, #2121 ) ; +#18090 = DIRECTION ( 'NONE', ( 0.9866647708492394300, 0.1627655675043647200, -0.0000000000000000000 ) ) ; +#18091 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.2395833333333236000 ) ) ; +#18092 = LINE ( 'NONE', #11277, #11628 ) ; +#18093 = ADVANCED_FACE ( 'NONE', ( #1985 ), #3067, .F. ) ; +#18094 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.2031249999999899800 ) ) ; +#18095 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18096 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18097 = CIRCLE ( 'NONE', #17149, 0.4610132068742565100 ) ; +#18098 = ORIENTED_EDGE ( 'NONE', *, *, #1559, .F. ) ; +#18099 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.2395833333333233800 ) ) ; +#18100 = EDGE_CURVE ( 'NONE', #18433, #12491, #8421, .T. ) ; +#18101 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, 0.07986111111112370600 ) ) ; +#18102 = LINE ( 'NONE', #2562, #11865 ) ; +#18103 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, 0.1979166666666804000 ) ) ; +#18104 = ADVANCED_FACE ( 'NONE', ( #17182 ), #15778, .T. ) ; +#18105 = EDGE_CURVE ( 'NONE', #16448, #3616, #2183, .T. ) ; +#18106 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -0.5156249999999922300 ) ) ; +#18107 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.04166666666665525700 ) ) ; +#18108 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.1944444444444343200 ) ) ; +#18109 = DIRECTION ( 'NONE', ( -0.8090169943749465600, -0.5877852522924741400, 0.0000000000000000000 ) ) ; +#18110 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.128472222222219200 ) ) ; +#18112 = EDGE_CURVE ( 'NONE', #12380, #15915, #5408, .T. ) ; +#18111 = CYLINDRICAL_SURFACE ( 'NONE', #3278, 0.4610132068742565100 ) ; +#18113 = AXIS2_PLACEMENT_3D ( 'NONE', #1465, #17565, #2749 ) ; +#18114 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#18115 = AXIS2_PLACEMENT_3D ( 'NONE', #10482, #1661, #16259 ) ; +#18116 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.045138888888885700 ) ) ; +#18117 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, 0.06944444444445656300 ) ) ; +#18118 = LINE ( 'NONE', #12540, #8892 ) ; +#18119 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.3576388888888797400 ) ) ; +#18120 = ORIENTED_EDGE ( 'NONE', *, *, #225, .F. ) ; +#18121 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.9652777777777737900 ) ) ; +#18122 = FACE_BOUND ( 'NONE', #10782, .T. ) ; +#18123 = ORIENTED_EDGE ( 'NONE', *, *, #13157, .F. ) ; +#18124 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -1.385416666666666100 ) ) ; +#18125 = DIRECTION ( 'NONE', ( 0.7458544667682640600, -0.6661089358369458600, -0.0000000000000000000 ) ) ; +#18126 = EDGE_CURVE ( 'NONE', #9539, #8262, #1508, .T. ) ; +#18127 = CARTESIAN_POINT ( 'NONE', ( 0.4375000000000001100, -4.908777906464881800E-016, 0.9375000000000000000 ) ) ; +#18128 = CARTESIAN_POINT ( 'NONE', ( -0.2321251145655892600, 0.3983103163368959500, 1.484375000000000200 ) ) ; +#18129 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#18130 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.6041666666666599700 ) ) ; +#18131 = EDGE_CURVE ( 'NONE', #17629, #16951, #12835, .T. ) ; +#18132 = VERTEX_POINT ( 'NONE', #13437 ) ; +#18133 = AXIS2_PLACEMENT_3D ( 'NONE', #17141, #7028, #3937 ) ; +#18134 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.093749999999997300 ) ) ; +#18135 = VECTOR ( 'NONE', #11483, 39.37007874015748100 ) ; +#18136 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#18137 = LINE ( 'NONE', #6752, #13993 ) ; +#18138 = VECTOR ( 'NONE', #4081, 39.37007874015748900 ) ; +#18139 = CARTESIAN_POINT ( 'NONE', ( 0.3134792788290102800, 0.0000000000000000000, 1.562500000000000000 ) ) ; +#18140 = VERTEX_POINT ( 'NONE', #13625 ) ; +#18141 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.376736111111110500 ) ) ; +#18142 = ORIENTED_EDGE ( 'NONE', *, *, #6125, .T. ) ; +#18143 = CARTESIAN_POINT ( 'NONE', ( 0.2802162586133554700, -0.3660765293230626700, 1.440511179676401600 ) ) ; +#18144 = CONICAL_SURFACE ( 'NONE', #13252, 0.4687475818742551400, 0.1745329251994280900 ) ; +#18145 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323601700 ) ) ; +#18146 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#18147 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18148 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.6631944444444377600 ) ) ; +#18149 = CARTESIAN_POINT ( 'NONE', ( -0.4548654901190614100, -0.07503707624389545400, 1.589564174286821800 ) ) ; +#18150 = ORIENTED_EDGE ( 'NONE', *, *, #11975, .T. ) ; +#18151 = EDGE_CURVE ( 'NONE', #3978, #7872, #9811, .T. ) ; +#18152 = VECTOR ( 'NONE', #930, 39.37007874015748900 ) ; +#18153 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.08506944444443354000 ) ) ; +#18154 = VECTOR ( 'NONE', #12536, 39.37007874015747400 ) ; +#18155 = AXIS2_PLACEMENT_3D ( 'NONE', #181, #9017, #4803 ) ; +#18156 = VECTOR ( 'NONE', #3500, 39.37007874015748100 ) ; +#18157 = VERTEX_POINT ( 'NONE', #8926 ) ; +#18158 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.9930555555555516900 ) ) ; +#18159 = DIRECTION ( 'NONE', ( -0.9866647708492382000, -0.1627655675043718200, 0.0000000000000000000 ) ) ; +#18160 = VECTOR ( 'NONE', #3563, 39.37007874015748100 ) ; +#18161 = ORIENTED_EDGE ( 'NONE', *, *, #4440, .F. ) ; +#18162 = DIRECTION ( 'NONE', ( 0.6661089358369403100, 0.7458544667682689400, -0.0000000000000000000 ) ) ; +#18163 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.09027777777779059900 ) ) ; +#18164 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18165 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 0.1597222222222354200 ) ) ; +#18166 = DIRECTION ( 'NONE', ( 0.9430338398216099300, 0.3326968243781567300, 0.0000000000000000000 ) ) ; +#18167 = ORIENTED_EDGE ( 'NONE', *, *, #14644, .T. ) ; +#18168 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485616300, -0.3155070326520302300, -0.2482638888888789900 ) ) ; +#18169 = CARTESIAN_POINT ( 'NONE', ( -0.06919666627598859700, 0.4557905201830941800, 1.440511179676402700 ) ) ; +#18170 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#18171 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.1909722222222121100 ) ) ; +#18172 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.06944444444443334500 ) ) ; +#18173 = AXIS2_PLACEMENT_3D ( 'NONE', #390, #1926, #13913 ) ; +#18174 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.9548611111111067200 ) ) ; +#18175 = ORIENTED_EDGE ( 'NONE', *, *, #14039, .T. ) ; +#18176 = DIRECTION ( 'NONE', ( -0.1488963146160712200, -0.08935086513736474600, 0.9848077530122091300 ) ) ; +#18177 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.159722222222219900 ) ) ; +#18178 = VERTEX_POINT ( 'NONE', #17867 ) ; +#18179 = ORIENTED_EDGE ( 'NONE', *, *, #11278, .F. ) ; +#18180 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.02430555555554432200 ) ) ; +#18181 = CONICAL_SURFACE ( 'NONE', #6261, 0.4610132068742565100, 0.1745329251994253400 ) ; +#18182 = VECTOR ( 'NONE', #8176, 39.37007874015748900 ) ; +#18183 = VECTOR ( 'NONE', #14537, 39.37007874015748100 ) ; +#18184 = VERTEX_POINT ( 'NONE', #298 ) ; +#18185 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, -1.256944444444442600 ) ) ; +#18186 = CYLINDRICAL_SURFACE ( 'NONE', #347, 0.3125000000000008300 ) ; +#18187 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.2916666666666569700 ) ) ; +#18188 = EDGE_CURVE ( 'NONE', #4834, #9895, #4955, .T. ) ; +#18189 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.9513888888888846200 ) ) ; +#18190 = ADVANCED_FACE ( 'NONE', ( #1056 ), #14861, .T. ) ; +#18191 = DIRECTION ( 'NONE', ( -0.06794052811688383600, -0.1598054262102629200, 0.9848077530122085800 ) ) ; +#18192 = ORIENTED_EDGE ( 'NONE', *, *, #2836, .F. ) ; +#18193 = EDGE_LOOP ( 'NONE', ( #9714, #5392, #7170, #7384, #1707, #11333 ) ) ; +#18194 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.6388888888888819600 ) ) ; +#18195 = CARTESIAN_POINT ( 'NONE', ( -9.737125754760135900E-018, 3.273043095098432000E-017, -1.174024639073326000 ) ) ; +#18196 = CARTESIAN_POINT ( 'NONE', ( -0.3953002468276878300, -0.2372148641431544900, 1.440511179676379900 ) ) ; +#18197 = EDGE_CURVE ( 'NONE', #1668, #15947, #11422, .T. ) ; +#18198 = ORIENTED_EDGE ( 'NONE', *, *, #18340, .F. ) ; +#18199 = ORIENTED_EDGE ( 'NONE', *, *, #6554, .F. ) ; +#18200 = VECTOR ( 'NONE', #6728, 39.37007874015747400 ) ; +#18201 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.437499999999999600 ) ) ; +#18202 = CONICAL_SURFACE ( 'NONE', #1128, 0.4687475818742575800, 0.1745329251994292000 ) ; +#18203 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18204 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925000, 0.3125000000000002800, -0.6145833333333264900 ) ) ; +#18205 = ORIENTED_EDGE ( 'NONE', *, *, #1591, .T. ) ; +#18206 = ORIENTED_EDGE ( 'NONE', *, *, #18694, .T. ) ; +#18207 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.6770833333333272600 ) ) ; +#18208 = AXIS2_PLACEMENT_3D ( 'NONE', #9749, #932, #12648 ) ; +#18209 = CONICAL_SURFACE ( 'NONE', #11925, 0.4687475818742572500, 0.1745329251994323400 ) ; +#18210 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.9131944444444400900 ) ) ; +#18211 = ADVANCED_FACE ( 'NONE', ( #16723 ), #4911, .F. ) ; +#18212 = CARTESIAN_POINT ( 'NONE', ( -0.3893737859852236000, -0.2609834291684018400, 1.484375000000000200 ) ) ; +#18213 = ADVANCED_FACE ( 'NONE', ( #7505 ), #2028, .F. ) ; +#18214 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#18215 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -1.401041666666666300 ) ) ; +#18216 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.3472222222222131100 ) ) ; +#18217 = ORIENTED_EDGE ( 'NONE', *, *, #11329, .T. ) ; +#18218 = CARTESIAN_POINT ( 'NONE', ( -0.2849174203000337500, -0.3722181606565374600, 1.484375000000000200 ) ) ; +#18219 = CARTESIAN_POINT ( 'NONE', ( -0.2615678826637217700, -0.3796253675287039600, 1.187613820323598600 ) ) ; +#18220 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.7256944444444383100 ) ) ; +#18221 = DIRECTION ( 'NONE', ( 0.2243975804000302200, 0.9744976787610178900, -0.0000000000000000000 ) ) ; +#18222 = ORIENTED_EDGE ( 'NONE', *, *, #3654, .F. ) ; +#18223 = VECTOR ( 'NONE', #6424, 39.37007874015748100 ) ; +#18224 = CIRCLE ( 'NONE', #611, 0.4610132068742565100 ) ; +#18225 = EDGE_LOOP ( 'NONE', ( #10439, #9605, #3285, #15712 ) ) ; +#18226 = ORIENTED_EDGE ( 'NONE', *, *, #18789, .T. ) ; +#18227 = EDGE_CURVE ( 'NONE', #10393, #18132, #4030, .T. ) ; +#18228 = EDGE_CURVE ( 'NONE', #7168, #12161, #1962, .T. ) ; +#18229 = AXIS2_PLACEMENT_3D ( 'NONE', #17265, #11651, #2583 ) ; +#18230 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.1475694444444340400 ) ) ; +#18231 = DIRECTION ( 'NONE', ( 0.1309892141416675000, -0.1139978744783992400, 0.9848077530122088000 ) ) ; +#18232 = CARTESIAN_POINT ( 'NONE', ( 0.01568268249781316200, 0.2912363481426460400, 0.1230467815043513000 ) ) ; +#18233 = AXIS2_PLACEMENT_3D ( 'NONE', #14365, #5649, #2649 ) ; +#18234 = ORIENTED_EDGE ( 'NONE', *, *, #13907, .T. ) ; +#18235 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18236 = ORIENTED_EDGE ( 'NONE', *, *, #17661, .F. ) ; +#18237 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, 0.1076388888889018000 ) ) ; +#18238 = ORIENTED_EDGE ( 'NONE', *, *, #17304, .T. ) ; +#18239 = CARTESIAN_POINT ( 'NONE', ( 0.06919666627598218500, 0.4557905201830951300, 1.588758826628429200 ) ) ; +#18240 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, 0.1423611111111242300 ) ) ; +#18241 = VECTOR ( 'NONE', #7475, 39.37007874015748100 ) ; +#18242 = ORIENTED_EDGE ( 'NONE', *, *, #386, .T. ) ; +#18243 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -0.2968749999999906200 ) ) ; +#18244 = VERTEX_POINT ( 'NONE', #4847 ) ; +#18245 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#18246 = CARTESIAN_POINT ( 'NONE', ( 4.029647775533519700E-017, 2.442722720788988100E-016, -1.174024639073269800 ) ) ; +#18247 =( BOUNDED_SURFACE ( ) B_SPLINE_SURFACE ( 1, 2, ( + ( #7456, #246, #13384, #10478, #8869, #14785, #53, #13447, #3014, #1657, #5948, #13308, #7580, #16255, #11958, #3137, #14912, #6091, #9070, #16400, #17883, #10536, #14979, #16660, #3383, #6414, #9185, #3458, #1976, #10876, #16780, #7911, #9453, #18079, #6341, #12281, #13573, #13696, #4980, #6219, #7772, #15163, #12144, #3517, #7841, #12337, #18215, #4861, #1844, #13832, #556, #16716, #15290, #18141, #9261, #9317, #4732, #10731, #9379, #4923, #3270, #2039, #6479, #7969, #6288, #18282, #619, #501, #10928, #12084, #1906, #15043, #372, #10797, #13754, #16524, #7712, #18020, #10674, #15234, #3331, #13636, #4794, #15101, #16592, #429, #12219, #12598, #9522, #14012, #5050, #6727, #8162, #2228, #17353, #10020, #5557, #12397, #6598, #8538, #5172, #15344, #9634, #9573, #18836, #8213, #11061, #18462, #18772, #12538, #7057, #9961, #13954, #1199, #5235, #758, #815, #4093, #6662, #18396, #3639, #3713, #14384, #16973, #1145, #11436, #687, #2116, #16918, #2614, #8094, #15484, #6542, #5110, #3576, #3770, #13895, #11126, #15421, #16858, #17038, #2176, #8023, #2291, #14081, #15537, #12920, #10988, #15862, #18338, #12477, #16048, #2803, #5800, #8603, #2866, #1391, #10272, #16175, #7309, #8857, #17487, #5735, #11678, #12982, #13106, #4409, #5615, #7198, #14587, #11563, #2928, #7254, #11751, #17609, #4279, #1261, #13231, #19098, #16114, #14704, #17550, #8664, #8728, #4153, #10150, #8797, #4344, #2668, #1453, #5860, #7379, #5667, #17669, #38, #19028, #10336, #11499, #1323, #14451, #18905, #10218, #13171, #15926, #7126, #17417, #10079, #14636, #2734, #13038, #4219, #14525, #15985, #18969, #11623, #10465, #5932, #14835, #2999, #13434, #7503, #13368, #231, #12008, #17864, #1506, #1575, #1705, #6006, #13290, #159, #4523, #11816, #7565, #16309, #1642, #9059, #17807, #4467, #10522, #3062, #14771, #16236, #8995, #4596, #7442, #14893, #11941, #3121, #6077, #17741, #16385, #8924, #97, #10402, #11871, #9998, #2776, #1179, #17392, #8437, #7033, #6973, #15958, #15768, #2706, #8511, #17267, #10123, #5532, #18748, #17326, #11470, #8640, #11601, #12890, #13013, #8577, #18943, #10049, #15901, #1296, #2587, #7175, #14495, #4252, #10188, #13076, #2843, #2645, #18880, #5644, #9933, #7096, #17528, #1108, #12959, #1237, #15826, #16024, #11539, #5707, #14564, #4196, #14362, #7232, #8700, #19006, #1365, #17454, #4132, #11654, #11410, #14421, #13143, #4316, #4062, #5458, #18802, #5591, #7673, #901, #16530, #3337, #4807, #7602, #17777, #6044, #13523, #3223, #128, #1611, #15118, #16346, #12043, #16613, #3092, #16539, #13591, #3155, #4561, #4747, #9145, #7529, #10557, #11903, #3286, #4690, #17899, #13654, #6304, #1865, #8958, #13465, #4816, #1735, #13403, #6169, #6105, #10431, #15061, #9087, #14999, #6240, #265, #3344, #7724, #10494, #14859, #1795, #16416, #16473, #388, #7670, #14934, #193, #17966, #10688, #326, #18038, #9208, #17836, #9031, #4626, #12158, #10629, #12100, #1674, #11978, #9275, #18297, #18094, #4995, #10814, #451, #12417, #7858, #10750, #9331, #13768, #10941, #13909, #15182, #15302, #10888, #2129, #12349, #18230, #3589, #4876, #9472, #16798, #6555, #12493, #5065, #5123, #4935, #2060, #7983, #1922, #9394, #707, #12238, #3474, #3529, #18153, #18350, #13849, #8042, #15357, #568, #16672, #9534, #16874, #11003, #2188, #6495, #15249, #633, #3400, #6433, #3657, #13967, #13708, #15436, #6613, #7790, #1991, #6358, #515, #12296, #16728, #7923, #6742, #16930, #5186, #12680, #2370, #18410, #770, #14273, #15495, #11200, #15743, #2240, #15684, #12741, #2310, #3726, #3916, #8297, #6678, #9718, #11079, #2425, #3842, #17057, #12797, #5426, #1024, #8110, #12612, #3979, #890, #12549, #5321, #5253, #9588, #14205, #8226, #14149, #5375, #18537, #2485, #6872, #9650, #14029, #965, #15552, #15613, #18661, #6805, #14092, #18478, #17118, #9832, #18593, #17175, #8355, #16985, #8174, #3784, #11327, #9774, #11262, #828, #11138, #8411, #17423, #17232, #4165 ), + ( #1267, #4035, #8610, #15934, #5673, #11629, #2743, #4286, #12928, #1208, #7137, #18717, #8548, #18979, #1076, #2622, #10024, #7007, #17495, #11508, #7205, #13048, #18842, #15797, #8671, #14535, #11569, #10163, #2673, #4100, #12989, #9903, #5562, #4227, #18916, #11385, #15993, #1328, #2814, #1152, #13112, #14593, #5750, #6945, #12855, #15868, #2561, #14336, #14457, #5620, #5501, #17305, #8474, #18777, #10087, #9968, #11444, #14394, #7064, #17362, #2870, #3074, #7451, #4353, #8865, #19036, #1583, #3010, #16183, #11952, #4608, #167, #7260, #1460, #3131, #47, #10223, #4473, #4421, #13440, #13379, #5867, #13300, #4531, #7395, #1652, #14843, #8804, #14902, #109, #14712, #14780, #17816, #1513, #13240, #17618, #17674, #9010, #11821, #6019, #16319, #14646, #16052, #11763, #7510, #2933, #10348, #1403, #19104, #17558, #17753, #8739, #5942, #10281, #11687, #11881, #16126, #13177, #16247, #8932, #10412, #10475, #5806, #7314, #9182, #424, #10667, #16515, #10727, #3199, #16589, #15095, #4855, #10791, #1901, #3456, #12081, #365, #6283, #7576, #7709, #18134, #242, #1771, #1840, #6142, #16652, #12138, #6338, #12214, #18013, #14976, #7838, #13692, #3376, #9310, #3326, #3264, #13632, #17876, #4726, #15158, #18075, #16395, #497, #1970, #12275, #302, #13747, #4918, #6088, #9066, #12019, #15037, #10529, #13502, #4789, #7765, #1718, #4665, #16455, #7644, #9256, #17942, #9124, #10607, #13567, #6214, #2035, #2224, #6591, #3511, #8020, #18210, #754, #2169, #15340, #11122, #3765, #18457, #6407, #612, #2289, #18335, #9371, #3635, #3572, #12590, #12534, #5046, #12471, #3706, #6535, #808, #14007, #7962, #14074, #18389, #13889, #13949, #16967, #685, #12390, #16774, #16850, #8156, #10983, #5169, #15477, #13828, #15230, #10924, #6661, #2110, #9515, #552, #18276, #16713, #16914, #7904, #5103, #9450, #10868, #11056, #15283, #12335, #15418, #8088, #9570, #9632, #4974, #6474, #8337, #18701, #9810, #15664, #9880, #2352, #15722, #14251, #4017, #9947, #1055, #2602, #11243, #18643, #5407, #6721, #6849, #17282, #18523, #942, #1006, #5301, #15777, #11306, #5479, #11367, #17161, #14135, #6986, #12833, #2534, #8450, #2466, #2407, #12776, #17034, #3894, #14321, #17210, #15534, #18760, #1129, #11421, #18575, #12902, #4076, #5230, #8208, #11183, #14183, #9695, #12662, #3960, #6923, #871, #3826, #15594, #6789, #8395, #17100, #8281, #9758, #12727, #5357, #1190, #1379, #5724, #2653, #7187, #17341, #19015, #1309, #14508, #10261, #2911, #17600, #5544, #18894, #1443, #17471, #8523, #2793, #2723, #11737, #11668, #4209, #11614, #2856, #5655, #7044, #13156, #13222, #8653, #13025, #13092, #16099, #18958, #11550, #15916, #15974, #7298, #10136, #4332, #14628, #12971, #14373, #10064, #5791, #1250, #4264, #18813, #7115, #15842, #16036, #10009, #14579, #17403, #11486, #10203, #14434, #4142, #8591, #7244, #17542, #8787, #5603, #8718, #19081, #17857, #8984, #14827, #9049, #1495, #14882, #13421, #3178, #9106, #213, #1754, #10391, #17796, #4584, #5845, #5995, #16436, #17656, #87, #7492, #4456, #14954, #147, #4645, #10513, #16295, #13280, #6124, #11996, #1695, #7626, #10447, #1557, #1630, #16166, #3054, #13485, #16368, #14689, #17919, #285, #10582, #17724, #12061, #3244, #4401, #7366, #10324, #13355, #8843, #11802, #11928, #3110, #28, #2987, #14757, #5917, #6064, #16227, #7432, #8910, #11861, #4507, #7551, #534, #4898, #1818, #6320, #16496, #18180, #474, #13673, #9423, #2085, #16754, #4709, #18056, #591, #16630, #7690, #1948, #1885, #10906, #10842, #3360, #10775, #2014, #4835, #18254, #6191, #12316, #12368, #7816, #12188, #12259, #15265, #18117, #10708, #15079, #15142, #6454, #9293, #3493, #13797, #12121, #13547, #9234, #4954, #408, #3426, #17987, #6265, #15018, #15208, #9165, #13729, #16563, #348, #9349, #13614, #10650, #7744, #6381, #16693, #7944, #3308, #7885, #4771, #12447, #659, #18319, #3612, #5018, #2149, #10961, #13927, #15389, #5086, #6570, #16824, #9495 ) ), + .UNSPECIFIED., .F., .F., .F. ) + B_SPLINE_SURFACE_WITH_KNOTS ( ( 2, 2 ), + ( 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3 ), + ( 0.0000000000000000000, 1.000000000000000000 ), + ( 0.0000000000000000000, 0.003787878787878788000, 0.007575757575757576000, 0.01136363636363636400, 0.01515151515151515200, 0.01893939393939394000, 0.02272727272727272800, 0.02651515151515151600, 0.03030303030303030400, 0.03409090909090908800, 0.03787878787878788000, 0.04166666666666666400, 0.04545454545454545600, 0.04924242424242424000, 0.05303030303030303200, 0.05681818181818181600, 0.06060606060606060800, 0.06439393939393939200, 0.06818181818181817700, 0.07196969696969697500, 0.07575757575757576000, 0.07954545454545454400, 0.08333333333333332900, 0.08712121212121212700, 0.09090909090909091200, 0.09469696969696969600, 0.09848484848484848100, 0.1022727272727272800, 0.1060606060606060600, 0.1098484848484848500, 0.1136363636363636300, 0.1174242424242424300, 0.1212121212121212200, 0.1250000000000000000, 0.1287878787878787800, 0.1325757575757575700, 0.1363636363636363500, 0.1401515151515151400, 0.1439393939393939500, 0.1477272727272727300, 0.1515151515151515200, 0.1553030303030303000, 0.1590909090909090900, 0.1628787878787878700, 0.1666666666666666600, 0.1704545454545454400, 0.1742424242424242500, 0.1780303030303030400, 0.1818181818181818200, 0.1856060606060606100, 0.1893939393939393900, 0.1931818181818181800, 0.1969696969696969600, 0.2007575757575757500, 0.2045454545454545600, 0.2083333333333333400, 0.2121212121212121300, 0.2159090909090909100, 0.2196969696969697000, 0.2234848484848484800, 0.2272727272727272700, 0.2310606060606060500, 0.2348484848484848600, 0.2386363636363636500, 0.2424242424242424300, 0.2462121212121212200, 0.2500000000000000000, 0.2537878787878787800, 0.2575757575757575700, 0.2613636363636363500, 0.2651515151515151400, 0.2689393939393939200, 0.2727272727272727100, 0.2765151515151514900, 0.2803030303030302800, 0.2840909090909091200, 0.2878787878787879000, 0.2916666666666666900, 0.2954545454545454700, 0.2992424242424242500, 0.3030303030303030400, 0.3068181818181818200, 0.3106060606060606100, 0.3143939393939393900, 0.3181818181818181800, 0.3219696969696969600, 0.3257575757575757500, 0.3295454545454545300, 0.3333333333333333100, 0.3371212121212121000, 0.3409090909090908800, 0.3446969696969697200, 0.3484848484848485100, 0.3522727272727272900, 0.3560606060606060800, 0.3598484848484848600, 0.3636363636363636500, 0.3674242424242424300, 0.3712121212121212200, 0.3750000000000000000, 0.3787878787878787800, 0.3825757575757575700, 0.3863636363636363500, 0.3901515151515151400, 0.3939393939393939200, 0.3977272727272727100, 0.4015151515151514900, 0.4053030303030302800, 0.4090909090909091200, 0.4128787878787879000, 0.4166666666666666900, 0.4204545454545454700, 0.4242424242424242500, 0.4280303030303030400, 0.4318181818181818200, 0.4356060606060606100, 0.4393939393939393900, 0.4431818181818181800, 0.4469696969696969600, 0.4507575757575757500, 0.4545454545454545300, 0.4583333333333333100, 0.4621212121212121000, 0.4659090909090908800, 0.4696969696969697200, 0.4734848484848485100, 0.4772727272727272900, 0.4810606060606060800, 0.4848484848484848600, 0.4886363636363636500, 0.4924242424242424300, 0.4962121212121212200, 0.5000000000000000000, 0.5037878787878787800, 0.5075757575757575700, 0.5113636363636363500, 0.5151515151515151400, 0.5189393939393939200, 0.5227272727272727100, 0.5265151515151514900, 0.5303030303030302800, 0.5340909090909090600, 0.5378787878787878500, 0.5416666666666666300, 0.5454545454545454100, 0.5492424242424242000, 0.5530303030303029800, 0.5568181818181817700, 0.5606060606060605500, 0.5643939393939394500, 0.5681818181818182300, 0.5719696969696970200, 0.5757575757575758000, 0.5795454545454545900, 0.5833333333333333700, 0.5871212121212121500, 0.5909090909090909400, 0.5946969696969697200, 0.5984848484848485100, 0.6022727272727272900, 0.6060606060606060800, 0.6098484848484848600, 0.6136363636363636500, 0.6174242424242424300, 0.6212121212121212200, 0.6250000000000000000, 0.6287878787878787800, 0.6325757575757575700, 0.6363636363636363500, 0.6401515151515151400, 0.6439393939393939200, 0.6477272727272727100, 0.6515151515151514900, 0.6553030303030302800, 0.6590909090909090600, 0.6628787878787878500, 0.6666666666666666300, 0.6704545454545454100, 0.6742424242424242000, 0.6780303030303029800, 0.6818181818181817700, 0.6856060606060605500, 0.6893939393939394500, 0.6931818181818182300, 0.6969696969696970200, 0.7007575757575758000, 0.7045454545454545900, 0.7083333333333333700, 0.7121212121212121500, 0.7159090909090909400, 0.7196969696969697200, 0.7234848484848485100, 0.7272727272727272900, 0.7310606060606060800, 0.7348484848484848600, 0.7386363636363636500, 0.7424242424242424300, 0.7462121212121212200, 0.7500000000000000000, 0.7537878787878787800, 0.7575757575757575700, 0.7613636363636363500, 0.7651515151515151400, 0.7689393939393939200, 0.7727272727272727100, 0.7765151515151514900, 0.7803030303030302800, 0.7840909090909090600, 0.7878787878787878500, 0.7916666666666666300, 0.7954545454545454100, 0.7992424242424242000, 0.8030303030303029800, 0.8068181818181817700, 0.8106060606060605500, 0.8143939393939394500, 0.8181818181818182300, 0.8219696969696970200, 0.8257575757575758000, 0.8295454545454545900, 0.8333333333333333700, 0.8371212121212121500, 0.8409090909090909400, 0.8446969696969697200, 0.8484848484848485100, 0.8522727272727272900, 0.8560606060606060800, 0.8598484848484848600, 0.8636363636363636500, 0.8674242424242424300, 0.8712121212121212200, 0.8750000000000000000, 0.8787878787878787800, 0.8825757575757575700, 0.8863636363636363500, 0.8901515151515151400, 0.8939393939393939200, 0.8977272727272727100, 0.9015151515151514900, 0.9053030303030302800, 0.9090909090909090600, 0.9128787878787878500, 0.9166666666666666300, 0.9204545454545454100, 0.9242424242424242000, 0.9280303030303029800, 0.9318181818181817700, 0.9356060606060605500, 0.9393939393939394500, 0.9431818181818182300, 0.9469696969696970200, 0.9507575757575758000, 0.9545454545454545900, 0.9583333333333333700, 0.9621212121212121500, 0.9659090909090909400, 0.9696969696969697200, 0.9734848484848485100, 0.9772727272727272900, 0.9810606060606060800, 0.9848484848484848600 ), + .UNSPECIFIED. ) + GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_SURFACE ( ( + ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000), + ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000) ) ) + REPRESENTATION_ITEM ( '' ) SURFACE ( ) ); +#18248 = CARTESIAN_POINT ( 'NONE', ( 8.520723301649261500E-017, -2.415211034319540900E-016, -1.174024639073326000 ) ) ; +#18249 = CARTESIAN_POINT ( 'NONE', ( 0.4492873804855391800, 0.1336605598125498200, 1.143750000000000000 ) ) ; +#18250 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.027777777777773900 ) ) ; +#18251 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18252 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, -0.1294417382415930200, -0.7465277777777717900 ) ) ; +#18253 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.079861111111108100 ) ) ; +#18254 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.04166666666667846700 ) ) ; +#18255 = EDGE_CURVE ( 'NONE', #9653, #5944, #13246, .T. ) ; +#18256 = CARTESIAN_POINT ( 'NONE', ( 0.01171874999999998800, -0.4686034927296605600, 1.587227003692501100 ) ) ; +#18257 = ORIENTED_EDGE ( 'NONE', *, *, #6325, .T. ) ; +#18258 = ORIENTED_EDGE ( 'NONE', *, *, #6082, .T. ) ; +#18259 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -0.2465277777777676600 ) ) ; +#18260 = EDGE_CURVE ( 'NONE', #18140, #6656, #15085, .T. ) ; +#18261 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.048611111111107600 ) ) ; +#18262 = EDGE_LOOP ( 'NONE', ( #18533, #1904, #5502, #13924, #15571, #6693 ) ) ; +#18263 = EDGE_CURVE ( 'NONE', #1464, #492, #2878, .T. ) ; +#18264 = AXIS2_PLACEMENT_3D ( 'NONE', #3702, #13887, #750 ) ; +#18265 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, 0.09375000000001264300 ) ) ; +#18266 = LINE ( 'NONE', #655, #8342 ) ; +#18267 = EDGE_LOOP ( 'NONE', ( #8775, #4621, #11149, #6151, #11500, #19065 ) ) ; +#18268 = AXIS2_PLACEMENT_3D ( 'NONE', #10289, #8559, #7216 ) ; +#18269 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.6493055555555487000 ) ) ; +#18270 = CARTESIAN_POINT ( 'NONE', ( 1.530746258681777000E-017, 3.052497858073515500E-017, 3.802149639073269400 ) ) ; +#18271 = PLANE ( 'NONE', #1800 ) ; +#18272 = PLANE ( 'NONE', #4724 ) ; +#18273 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #15103, #10930, #6544, #3578, #16596, #16782, #16860, #3461, #7914 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.9469696969696970200, 0.9507575757575758000, 0.9545454545454545900, 0.9583333333333333700, 0.9621212121212121500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#18274 = CARTESIAN_POINT ( 'NONE', ( 0.4418741004648765700, 0.1314551491986613600, 1.187613820323601700 ) ) ; +#18275 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.5763888888888818500 ) ) ; +#18276 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.7638888888888834000 ) ) ; +#18277 = ORIENTED_EDGE ( 'NONE', *, *, #6609, .T. ) ; +#18278 = PLANE ( 'NONE', #5406 ) ; +#18279 = ORIENTED_EDGE ( 'NONE', *, *, #8704, .F. ) ; +#18280 = VECTOR ( 'NONE', #16709, 39.37007874015748900 ) ; +#18281 = DIRECTION ( 'NONE', ( -0.8306683619109804800, -0.5567675210715225000, 0.0000000000000000000 ) ) ; +#18282 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.335069444444443500 ) ) ; +#18283 = CARTESIAN_POINT ( 'NONE', ( -0.1589412568245233400, 0.4327480257511604500, 1.591590229135180400 ) ) ; +#18284 = ORIENTED_EDGE ( 'NONE', *, *, #17873, .T. ) ; +#18285 = EDGE_CURVE ( 'NONE', #12305, #7357, #8654, .T. ) ; +#18286 = CARTESIAN_POINT ( 'NONE', ( 0.1748588541305849400, -0.2594936790943843100, -1.521884023442542800 ) ) ; +#18287 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323601300 ) ) ; +#18288 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#18289 = AXIS2_PLACEMENT_3D ( 'NONE', #19042, #8617, #8677 ) ; +#18290 = ORIENTED_EDGE ( 'NONE', *, *, #18711, .F. ) ; +#18291 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#18292 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.4374999999999914500 ) ) ; +#18293 = CARTESIAN_POINT ( 'NONE', ( 0.3893757946457697700, 0.2609847755022788900, 1.484375000000000200 ) ) ; +#18294 = AXIS2_PLACEMENT_3D ( 'NONE', #11368, #2290, #1008 ) ; +#18295 = ADVANCED_FACE ( 'NONE', ( #16228 ), #7030, .T. ) ; +#18296 = EDGE_LOOP ( 'NONE', ( #13067, #261, #17957, #6494 ) ) ; +#18297 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.2065972222222122200 ) ) ; +#18298 = VECTOR ( 'NONE', #3126, 39.37007874015748100 ) ; +#18299 = VERTEX_POINT ( 'NONE', #18196 ) ; +#18300 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.9999999999999961100 ) ) ; +#18301 = CARTESIAN_POINT ( 'NONE', ( 0.2093233515965529600, 0.1995290387065445900, 0.1175165044053912000 ) ) ; +#18302 = ORIENTED_EDGE ( 'NONE', *, *, #15522, .F. ) ; +#18303 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335486900E-017, -0.3125000000000009400, -0.8124999999999946700 ) ) ; +#18304 = FACE_OUTER_BOUND ( 'NONE', #9772, .T. ) ; +#18305 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.532986111111111400 ) ) ; +#18306 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -5.157534287635060100E-016, 1.249999999999999800 ) ) ; +#18307 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, -0.1041666666666557600 ) ) ; +#18308 = ORIENTED_EDGE ( 'NONE', *, *, #7613, .T. ) ; +#18309 = ADVANCED_FACE ( 'NONE', ( #1496 ), #1896, .F. ) ; +#18310 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -0.3663194444444355900 ) ) ; +#18311 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.513888888888889300 ) ) ; +#18312 = EDGE_CURVE ( 'NONE', #16243, #13107, #12787, .T. ) ; +#18313 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.538194444444444900 ) ) ; +#18314 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.9999999999999958900 ) ) ; +#18315 = ORIENTED_EDGE ( 'NONE', *, *, #3772, .T. ) ; +#18316 = CARTESIAN_POINT ( 'NONE', ( -0.2849188901020669500, -0.3722200808164516900, 1.593193105402742800 ) ) ; +#18317 = ADVANCED_FACE ( 'NONE', ( #6800 ), #16475, .T. ) ; +#18318 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.059027777777774600 ) ) ; +#18319 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, 0.1875000000000129600 ) ) ; +#18320 = LOCAL_TIME ( 13, 36, 41.00000000000000000, #7700 ) ; +#18321 = ORIENTED_EDGE ( 'NONE', *, *, #7836, .T. ) ; +#18322 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.159722222222219700 ) ) ; +#18323 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.4479166666666581900 ) ) ; +#18324 = CARTESIAN_POINT ( 'NONE', ( -0.3070850166377885900, -0.3438487595863262100, 1.143750000000000000 ) ) ; +#18325 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, 0.09722222222223493600 ) ) ; +#18326 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.5833333333333259300 ) ) ; +#18327 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18328 = DIRECTION ( 'NONE', ( -0.9584846895403595900, -0.2851439985633930600, 0.0000000000000000000 ) ) ; +#18329 = CIRCLE ( 'NONE', #17517, 0.4687499999999997200 ) ; +#18330 = CARTESIAN_POINT ( 'NONE', ( -0.2849174203000358100, 0.3722181606565347900, 1.484375000000000200 ) ) ; +#18331 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#18332 = DIRECTION ( 'NONE', ( 0.1873813145857150300, 0.9822872507286905000, 0.0000000000000000000 ) ) ; +#18333 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.6666666666666604100 ) ) ; +#18334 = CYLINDRICAL_SURFACE ( 'NONE', #11611, 0.3125000000000008300 ) ; +#18335 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.8784722222222177700 ) ) ; +#18336 = CARTESIAN_POINT ( 'NONE', ( -0.1051858231909509200, -0.4567934304613015000, 1.484375000000000200 ) ) ; +#18337 = PLANE ( 'NONE', #18388 ) ; +#18338 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -1.043402777777774300 ) ) ; +#18339 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.4583333333333252100 ) ) ; +#18340 = EDGE_CURVE ( 'NONE', #12758, #12996, #7726, .T. ) ; +#18341 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, 0.1443375672974061600, 1.272329099369260400 ) ) ; +#18342 = PERSON ( 'UNSPECIFIED', 'UNSPECIFIED', 'UNSPECIFIED', ('UNSPECIFIED'), ('UNSPECIFIED'), ('UNSPECIFIED') ) ; +#18343 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.6354166666666597500 ) ) ; +#18344 = AXIS2_PLACEMENT_3D ( 'NONE', #6203, #16504, #11872 ) ; +#18345 = FACE_OUTER_BOUND ( 'NONE', #9213, .T. ) ; +#18346 = VERTEX_POINT ( 'NONE', #9802 ) ; +#18347 = VECTOR ( 'NONE', #4433, 39.37007874015748100 ) ; +#18348 = ORIENTED_EDGE ( 'NONE', *, *, #1203, .F. ) ; +#18349 = VECTOR ( 'NONE', #13817, 39.37007874015748100 ) ; +#18350 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -0.08159722222221123300 ) ) ; +#18351 = CARTESIAN_POINT ( 'NONE', ( 0.3685350091390618400, -0.2896696558821292300, 1.484375000000000200 ) ) ; +#18352 = PLANE ( 'NONE', #13227 ) ; +#18353 = EDGE_CURVE ( 'NONE', #1681, #2087, #9462, .T. ) ; +#18354 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, -1.505208333333333900 ) ) ; +#18355 = DIRECTION ( 'NONE', ( 0.9202827715058562500, 0.3912539079287261100, -0.0000000000000000000 ) ) ; +#18356 = CARTESIAN_POINT ( 'NONE', ( -0.1278868739221094300, -0.4509647912990463200, 1.484375000000000200 ) ) ; +#18357 = CARTESIAN_POINT ( 'NONE', ( -0.2090309484230969700, 0.1679910602537744700, 1.259918511167947400 ) ) ; +#18358 = LINE ( 'NONE', #18545, #4061 ) ; +#18359 = EDGE_CURVE ( 'NONE', #16922, #206, #8404, .T. ) ; +#18360 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.4357638888888805100 ) ) ; +#18361 = DIRECTION ( 'NONE', ( -0.5035107695491675100, -0.8639889495520213200, 0.0000000000000000000 ) ) ; +#18362 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#18363 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18364 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.8680555555555504700 ) ) ; +#18365 = EDGE_CURVE ( 'NONE', #8070, #10612, #17628, .T. ) ; +#18366 = FACE_OUTER_BOUND ( 'NONE', #5368, .T. ) ; +#18367 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18368 = VERTEX_POINT ( 'NONE', #5222 ) ; +#18369 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.038194444444441100 ) ) ; +#18370 = LINE ( 'NONE', #16554, #4522 ) ; +#18371 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.1840277777777672400 ) ) ; +#18372 = ADVANCED_FACE ( 'NONE', ( #4719 ), #4010, .F. ) ; +#18373 = ORIENTED_EDGE ( 'NONE', *, *, #14929, .F. ) ; +#18374 = CARTESIAN_POINT ( 'NONE', ( 0.4548654901190624100, -0.07503707624388920900, 1.143750000000000000 ) ) ; +#18375 = CYLINDRICAL_SURFACE ( 'NONE', #18002, 0.3125000000000008300 ) ; +#18376 = LINE ( 'NONE', #5073, #6611 ) ; +#18377 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.7395833333333272600 ) ) ; +#18378 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.055555555555552200 ) ) ; +#18379 = CIRCLE ( 'NONE', #14350, 0.4610132068742565100 ) ; +#18380 = CYLINDRICAL_SURFACE ( 'NONE', #9859, 0.3125000000000008300 ) ; +#18381 = ORIENTED_EDGE ( 'NONE', *, *, #18263, .F. ) ; +#18382 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#18383 = EDGE_CURVE ( 'NONE', #5376, #67, #571, .T. ) ; +#18384 = CARTESIAN_POINT ( 'NONE', ( -0.2967933461348855100, 0.03790841194492856900, -1.534728735447390000 ) ) ; +#18385 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.3229166666666576400 ) ) ; +#18386 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18387 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756482500, -0.5520833333333262600 ) ) ; +#18388 = AXIS2_PLACEMENT_3D ( 'NONE', #686, #13953, #5109 ) ; +#18389 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.8298611111111061600 ) ) ; +#18390 = ADVANCED_FACE ( 'NONE', ( #15305 ), #15088, .T. ) ; +#18391 = ORIENTED_EDGE ( 'NONE', *, *, #5717, .F. ) ; +#18392 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18393 = ORIENTED_EDGE ( 'NONE', *, *, #5052, .T. ) ; +#18394 = ADVANCED_FACE ( 'NONE', ( #8190 ), #15832, .F. ) ; +#18395 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -0.6788194444444379800 ) ) ; +#18396 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.147569444444442000 ) ) ; +#18397 = CARTESIAN_POINT ( 'NONE', ( -0.01152533017185643900, -0.4608691177296606000, 1.143750000000000000 ) ) ; +#18398 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -0.8854166666666620800 ) ) ; +#18399 = ORIENTED_EDGE ( 'NONE', *, *, #14310, .T. ) ; +#18400 = CONICAL_SURFACE ( 'NONE', #5798, 0.4687475818742550800, 0.1745329251994287300 ) ; +#18401 = CARTESIAN_POINT ( 'NONE', ( -0.4347510546871054000, -0.1533776299234526100, 1.187613820323599100 ) ) ; +#18402 = CIRCLE ( 'NONE', #2995, 0.4687499999999995600 ) ; +#18403 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18404 = VECTOR ( 'NONE', #13571, 39.37007874015748900 ) ; +#18405 = ORIENTED_EDGE ( 'NONE', *, *, #17869, .F. ) ; +#18406 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.5208333333333254900 ) ) ; +#18407 = VECTOR ( 'NONE', #3651, 39.37007874015748100 ) ; +#18408 = EDGE_CURVE ( 'NONE', #8789, #4815, #4265, .T. ) ; +#18409 = ORIENTED_EDGE ( 'NONE', *, *, #6448, .F. ) ; +#18410 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, 0.02951388888890084700 ) ) ; +#18411 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18412 = CARTESIAN_POINT ( 'NONE', ( -0.1321544734841751700, 0.2615533361241428300, 0.1268554317252818500 ) ) ; +#18413 = ORIENTED_EDGE ( 'NONE', *, *, #15891, .T. ) ; +#18414 = EDGE_LOOP ( 'NONE', ( #1422, #10620, #9435, #2144 ) ) ; +#18415 = VECTOR ( 'NONE', #9663, 39.37007874015748900 ) ; +#18416 = CIRCLE ( 'NONE', #7939, 0.4687475818742588000 ) ; +#18417 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18418 = ORIENTED_EDGE ( 'NONE', *, *, #13698, .F. ) ; +#18419 = CARTESIAN_POINT ( 'NONE', ( 2.110222581992091100E-017, -2.684751000830857200E-017, 3.802149639073319600 ) ) ; +#18420 = ORIENTED_EDGE ( 'NONE', *, *, #3871, .T. ) ; +#18421 = LINE ( 'NONE', #18690, #2287 ) ; +#18422 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -1.383680555555554700 ) ) ; +#18423 = DIRECTION ( 'NONE', ( 0.9866647708492394300, 0.1627655675043647200, -0.0000000000000000000 ) ) ; +#18424 = CIRCLE ( 'NONE', #6612, 0.4610132068742565100 ) ; +#18425 = CARTESIAN_POINT ( 'NONE', ( -0.1039342647883890100, 0.2286686588412101000, 1.250514193469174100 ) ) ; +#18426 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.3246527777777686300 ) ) ; +#18427 = CARTESIAN_POINT ( 'NONE', ( -0.2321251145655865700, -0.3983103163368976200, 1.592561465728329600 ) ) ; +#18428 = CARTESIAN_POINT ( 'NONE', ( -0.06919666627598859700, 0.4557905201830941800, 1.588758826628429600 ) ) ; +#18429 = AXIS2_PLACEMENT_3D ( 'NONE', #733, #18434, #15518 ) ; +#18430 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.8715277777777726800 ) ) ; +#18431 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#18432 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.9548611111111072700 ) ) ; +#18433 = VERTEX_POINT ( 'NONE', #5465 ) ; +#18434 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18435 = ORIENTED_EDGE ( 'NONE', *, *, #7805, .T. ) ; +#18436 = VECTOR ( 'NONE', #17428, 39.37007874015748900 ) ; +#18437 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.08333333333332197700 ) ) ; +#18438 = ORIENTED_EDGE ( 'NONE', *, *, #7948, .T. ) ; +#18439 = ORIENTED_EDGE ( 'NONE', *, *, #17897, .T. ) ; +#18440 = EDGE_CURVE ( 'NONE', #12656, #18542, #10722, .T. ) ; +#18441 = VECTOR ( 'NONE', #9686, 39.37007874015748100 ) ; +#18442 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#18443 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.7743055555555497000 ) ) ; +#18444 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #9821, #17292, #11189, #18708, #9891, #10016, #8796, #10269, #15980, #1449, #17414, #11493 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 4 ), + ( 2.380733176192017300E-007, 0.001851555320830853400, 0.003702872568344087800, 0.004628531192100703400, 0.005554189815857319400, 0.007405507063370554000 ), + .UNSPECIFIED. ) ; +#18445 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.7465277777777720200 ) ) ; +#18446 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.1319444444444335700 ) ) ; +#18447 = CARTESIAN_POINT ( 'NONE', ( 0.03091887602113983100, 0.2884141921930774600, -1.543424361568637200 ) ) ; +#18448 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.01388888888887743400 ) ) ; +#18449 = ORIENTED_EDGE ( 'NONE', *, *, #11585, .F. ) ; +#18450 = EDGE_CURVE ( 'NONE', #16349, #5413, #4484, .T. ) ; +#18451 = DIRECTION ( 'NONE', ( -1.000000000000000000, -2.309263891220325900E-014, 0.0000000000000000000 ) ) ; +#18452 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#18453 = CARTESIAN_POINT ( 'NONE', ( 5.271282967173048500E-017, -8.784185871103603900E-017, 3.802149639073307600 ) ) ; +#18454 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.4826388888888811200 ) ) ; +#18455 = ORIENTED_EDGE ( 'NONE', *, *, #16732, .T. ) ; +#18456 = ORIENTED_EDGE ( 'NONE', *, *, #16512, .F. ) ; +#18457 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.8923611111111066100 ) ) ; +#18458 = VECTOR ( 'NONE', #12099, 39.37007874015748100 ) ; +#18459 = ORIENTED_EDGE ( 'NONE', *, *, #12063, .F. ) ; +#18460 = ORIENTED_EDGE ( 'NONE', *, *, #2782, .T. ) ; +#18461 = LINE ( 'NONE', #5616, #2778 ) ; +#18462 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.189236111111108900 ) ) ; +#18463 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#18464 = CARTESIAN_POINT ( 'NONE', ( -0.2753906735342689900, -0.04615230323217178700, 0.09017392064880643000 ) ) ; +#18465 = DIRECTION ( 'NONE', ( -0.9151887321064339200, 0.4030255384282960300, 0.0000000000000000000 ) ) ; +#18466 = CARTESIAN_POINT ( 'NONE', ( 0.2295898801003941900, 0.1561213555156358000, 1.541375947349477200 ) ) ; +#18467 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.6249999999999928900 ) ) ; +#18468 = VERTEX_POINT ( 'NONE', #4069 ) ; +#18469 = ORIENTED_EDGE ( 'NONE', *, *, #18227, .F. ) ; +#18470 = ORIENTED_EDGE ( 'NONE', *, *, #2016, .T. ) ; +#18471 = ADVANCED_FACE ( 'NONE', ( #5391 ), #9794, .T. ) ; +#18472 = CONICAL_SURFACE ( 'NONE', #13566, 0.4610132068742565100, 0.1745329251994305300 ) ; +#18473 = EDGE_CURVE ( 'NONE', #7, #4666, #17170, .T. ) ; +#18474 = ORIENTED_EDGE ( 'NONE', *, *, #1650, .T. ) ; +#18475 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2448, #11349, #15461, #928, #17195, #8379, #853, #6907, #4003 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.09848484848484850800, 0.1022727272727272900, 0.1060606060606060800, 0.1098484848484848600, 0.1136363636363636500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#18476 = EDGE_CURVE ( 'NONE', #6801, #5376, #16707, .T. ) ; +#18477 = AXIS2_PLACEMENT_3D ( 'NONE', #16573, #1759, #18061 ) ; +#18478 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, 0.1857638888889019700 ) ) ; +#18479 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -1.524305555555556200 ) ) ; +#18480 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.000000000000000000, 0.0000000000000000000 ) ) ; +#18481 = AXIS2_PLACEMENT_3D ( 'NONE', #15733, #7056, #17294 ) ; +#18482 = DIRECTION ( 'NONE', ( -0.1365235898527157300, -0.1073079634545883600, 0.9848077530122091300 ) ) ; +#18483 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.588541666666667400 ) ) ; +#18484 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#18485 = VERTEX_POINT ( 'NONE', #8648 ) ; +#18486 = CARTESIAN_POINT ( 'NONE', ( -0.2499999999999995300, -0.04863749728649600900, 1.252098685671724900 ) ) ; +#18487 = ORIENTED_EDGE ( 'NONE', *, *, #13875, .T. ) ; +#18488 = ADVANCED_FACE ( 'NONE', ( #8876, #118 ), #6915, .T. ) ; +#18489 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3155070326520294500, -0.1684027777777672400 ) ) ; +#18490 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#18491 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.472222222222222100 ) ) ; +#18492 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965300, 0.2209708691207961400, 0.006944444444456328600 ) ) ; +#18493 = EDGE_LOOP ( 'NONE', ( #4234, #5507, #393, #5444 ) ) ; +#18494 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18495 = VECTOR ( 'NONE', #17208, 39.37007874015748100 ) ; +#18496 = ADVANCED_FACE ( 'NONE', ( #4938 ), #3346, .T. ) ; +#18497 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.8576388888888840700 ) ) ; +#18498 = ORIENTED_EDGE ( 'NONE', *, *, #9382, .T. ) ; +#18499 = EDGE_LOOP ( 'NONE', ( #17821, #13463, #13221, #10377 ) ) ; +#18500 = EDGE_CURVE ( 'NONE', #16170, #1015, #14169, .T. ) ; +#18501 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.187499999999997600 ) ) ; +#18502 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.07638888888887737600 ) ) ; +#18503 = AXIS2_PLACEMENT_3D ( 'NONE', #16650, #18129, #9568 ) ; +#18504 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18505 = EDGE_CURVE ( 'NONE', #4384, #9532, #15762, .T. ) ; +#18506 = DIRECTION ( 'NONE', ( 0.004341204441673057100, -0.1735939041298396300, -0.9848077530122088000 ) ) ; +#18507 = ORIENTED_EDGE ( 'NONE', *, *, #7805, .F. ) ; +#18508 = AXIS2_PLACEMENT_3D ( 'NONE', #10314, #4503, #11660 ) ; +#18509 = ORIENTED_EDGE ( 'NONE', *, *, #248, .F. ) ; +#18510 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.3819444444444355400 ) ) ; +#18511 = CARTESIAN_POINT ( 'NONE', ( -0.4120995984523162500, -0.2066569569792553700, 1.143750000000000000 ) ) ; +#18512 = CYLINDRICAL_SURFACE ( 'NONE', #16641, 0.4610132068742565100 ) ; +#18513 = CARTESIAN_POINT ( 'NONE', ( -2.360286478381774800E-016, -1.375514885581257700E-016, -1.174024639073302500 ) ) ; +#18514 = VERTEX_POINT ( 'NONE', #14501 ) ; +#18515 = CARTESIAN_POINT ( 'NONE', ( -0.2992921959121974100, -1.191649978057174000E-012, -1.534041137421136900 ) ) ; +#18516 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, 0.07291666666667885600 ) ) ; +#18517 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.589564174286821600 ) ) ; +#18518 = ORIENTED_EDGE ( 'NONE', *, *, #15027, .F. ) ; +#18519 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#18520 = CARTESIAN_POINT ( 'NONE', ( 0.3829490853735647600, 0.2566771803726157200, 1.143750000000000000 ) ) ; +#18521 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.3888888888888804000 ) ) ; +#18522 = LINE ( 'NONE', #15365, #16913 ) ; +#18523 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.6458333333333269300 ) ) ; +#18524 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -1.364583333333332600 ) ) ; +#18525 = EDGE_LOOP ( 'NONE', ( #1002, #17576, #14482, #5244 ) ) ; +#18526 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18527 = EDGE_CURVE ( 'NONE', #17944, #10001, #14848, .T. ) ; +#18528 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, 0.1701388888889020500 ) ) ; +#18529 = EDGE_LOOP ( 'NONE', ( #4151, #3028, #14090, #1986 ) ) ; +#18530 = AXIS2_PLACEMENT_3D ( 'NONE', #17888, #15051, #6096 ) ; +#18531 = CARTESIAN_POINT ( 'NONE', ( -0.07035793515936446300, 0.4634396653935766200, 1.484375000000000200 ) ) ; +#18532 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.097222222222219400 ) ) ; +#18533 = ORIENTED_EDGE ( 'NONE', *, *, #1369, .F. ) ; +#18534 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.4930555555555474800 ) ) ; +#18535 = CARTESIAN_POINT ( 'NONE', ( -1.663862205346097300E-017, -3.831375498743707300E-018, 3.802149639073262800 ) ) ; +#18536 = VECTOR ( 'NONE', #17710, 39.37007874015747400 ) ; +#18537 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, 0.1475694444444572400 ) ) ; +#18538 = CARTESIAN_POINT ( 'NONE', ( 0.04632776727397798500, 0.4586795339797648000, 1.484375000000000200 ) ) ; +#18539 = LINE ( 'NONE', #10018, #17156 ) ; +#18540 = CARTESIAN_POINT ( 'NONE', ( -1.602722286859731900E-017, -5.886536262574331800E-018, -1.174024639073311800 ) ) ; +#18541 = CARTESIAN_POINT ( 'NONE', ( 0.1257767296168668100, -0.4435238338571802500, 1.187613820323596900 ) ) ; +#18542 = VERTEX_POINT ( 'NONE', #13020 ) ; +#18543 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, -1.411458333333332800 ) ) ; +#18544 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.513888888888889100 ) ) ; +#18545 = CARTESIAN_POINT ( 'NONE', ( 0.4684146371797789400, -0.01772823103797234500, 1.587900241027141200 ) ) ; +#18546 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676400100 ) ) ; +#18547 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.2170138888888788500 ) ) ; +#18548 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18549 = EDGE_CURVE ( 'NONE', #33, #16602, #18097, .T. ) ; +#18550 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.392361111111110100 ) ) ; +#18551 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18552 = CARTESIAN_POINT ( 'NONE', ( 0.4347510546871043400, 0.1533776299234556600, 1.484375000000000200 ) ) ; +#18553 = CONICAL_SURFACE ( 'NONE', #2416, 0.4687475818742588000, 0.1745329251994265600 ) ; +#18554 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.8506944444444394200 ) ) ; +#18555 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.9652777777777739000 ) ) ; +#18556 = DIRECTION ( 'NONE', ( -0.09852382856602201500, -0.1429921145089369500, -0.9848077530122091300 ) ) ; +#18557 = EDGE_CURVE ( 'NONE', #2353, #2557, #6332, .T. ) ; +#18558 = LINE ( 'NONE', #19011, #12570 ) ; +#18559 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.2118055555555452600 ) ) ; +#18560 = ORIENTED_EDGE ( 'NONE', *, *, #18863, .F. ) ; +#18561 = AXIS2_PLACEMENT_3D ( 'NONE', #13345, #7487, #2848 ) ; +#18562 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18563 = ADVANCED_FACE ( 'NONE', ( #11192 ), #10441, .F. ) ; +#18564 = VECTOR ( 'NONE', #8947, 39.37007874015748100 ) ; +#18565 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#18566 = FACE_OUTER_BOUND ( 'NONE', #7211, .T. ) ; +#18567 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.4722222222222139900 ) ) ; +#18568 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.7361111111111052800 ) ) ; +#18569 = CARTESIAN_POINT ( 'NONE', ( 0.2121358102010645900, 0.1925142337218707400, -1.547508823200074000 ) ) ; +#18570 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, 0.02430555555556727200 ) ) ; +#18571 = DIRECTION ( 'NONE', ( -0.01745011258364900400, 0.1727691615360282800, 0.9848077530122088000 ) ) ; +#18572 = CARTESIAN_POINT ( 'NONE', ( -0.2615678826637244400, 0.3796253675287022400, 1.143750000000000000 ) ) ; +#18573 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18574 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.3090277777777686900 ) ) ; +#18575 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.5590277777777706800 ) ) ; +#18576 = VECTOR ( 'NONE', #11251, 39.37007874015748100 ) ; +#18577 = ADVANCED_FACE ( 'NONE', ( #3111 ), #11406, .T. ) ; +#18578 = ORIENTED_EDGE ( 'NONE', *, *, #1660, .F. ) ; +#18579 = ADVANCED_FACE ( 'NONE', ( #11638 ), #16002, .T. ) ; +#18580 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.052083333333329700 ) ) ; +#18581 = EDGE_CURVE ( 'NONE', #6398, #1206, #10262, .T. ) ; +#18582 = VERTEX_POINT ( 'NONE', #8705 ) ; +#18583 = CARTESIAN_POINT ( 'NONE', ( 1.711129764798747200E-016, -2.552917160122753800E-016, -1.174024639073346900 ) ) ; +#18585 = EDGE_CURVE ( 'NONE', #16152, #2164, #7493, .T. ) ; +#18584 = LINE ( 'NONE', #1257, #13984 ) ; +#18586 = DIRECTION ( 'NONE', ( -0.04737586595177674400, -0.1670605187719815800, 0.9848077530122088000 ) ) ; +#18587 = AXIS2_PLACEMENT_3D ( 'NONE', #7680, #16148, #4315 ) ; +#18588 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.3472222222222128800 ) ) ; +#18589 = DIRECTION ( 'NONE', ( 0.3326968243781439100, 0.9430338398216144800, 0.0000000000000000000 ) ) ; +#18590 = ORIENTED_EDGE ( 'NONE', *, *, #10685, .F. ) ; +#18591 = CIRCLE ( 'NONE', #228, 0.4687499999999995600 ) ; +#18592 = LINE ( 'NONE', #4569, #14907 ) ; +#18593 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002956900, -0.2230971623002961400, 0.1961805555555688200 ) ) ; +#18594 = LINE ( 'NONE', #12839, #4785 ) ; +#18595 = EDGE_LOOP ( 'NONE', ( #82, #14577, #3997, #12208 ) ) ; +#18596 = VERTEX_POINT ( 'NONE', #16285 ) ; +#18597 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #3983, #11509, #5565, #14275, #2624, #1081, #8612, #15937, #2675 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.8409090909090909400, 0.8446969696969697200, 0.8484848484848485100, 0.8522727272727272900, 0.8560606060606060800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#18598 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -1.458333333333333500 ) ) ; +#18599 = CARTESIAN_POINT ( 'NONE', ( -0.04124363823827094400, 0.2887696725827484900, 0.1244290306872815100 ) ) ; +#18600 = LINE ( 'NONE', #14792, #6844 ) ; +#18601 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#18602 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#18603 = EDGE_CURVE ( 'NONE', #14170, #17944, #7957, .T. ) ; +#18604 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.289930555555553800 ) ) ; +#18605 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.541666666666666700 ) ) ; +#18606 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#18607 = EDGE_CURVE ( 'NONE', #9753, #3055, #18558, .T. ) ; +#18608 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -0.1649305555555449500 ) ) ; +#18609 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.399305555555554500 ) ) ; +#18610 = EDGE_CURVE ( 'NONE', #1061, #4990, #3564, .T. ) ; +#18611 = ORIENTED_EDGE ( 'NONE', *, *, #4041, .T. ) ; +#18612 = AXIS2_PLACEMENT_3D ( 'NONE', #8608, #15988, #5617 ) ; +#18613 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.7743055555555500300 ) ) ; +#18614 = TOROIDAL_SURFACE ( 'NONE', #14455, 0.4375000000000000600, 0.03125000000000004200 ) ; +#18615 = CIRCLE ( 'NONE', #12817, 0.4687475818742584100 ) ; +#18616 = ORIENTED_EDGE ( 'NONE', *, *, #2217, .F. ) ; +#18617 = CIRCLE ( 'NONE', #14398, 0.4610132068742565100 ) ; +#18618 = VECTOR ( 'NONE', #11187, 39.37007874015748900 ) ; +#18619 = DIRECTION ( 'NONE', ( 0.8763066800438597000, 0.4817536741017223700, 0.0000000000000000000 ) ) ; +#18620 = ORIENTED_EDGE ( 'NONE', *, *, #18228, .T. ) ; +#18621 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.215277777777775700 ) ) ; +#18622 = ORIENTED_EDGE ( 'NONE', *, *, #10857, .T. ) ; +#18623 = ORIENTED_EDGE ( 'NONE', *, *, #3562, .T. ) ; +#18624 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -0.5729166666666591900 ) ) ; +#18625 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#18626 = EDGE_CURVE ( 'NONE', #4815, #4203, #12101, .T. ) ; +#18627 = PLANE ( 'NONE', #17940 ) ; +#18628 = CARTESIAN_POINT ( 'NONE', ( 0.1466905107878500300, 0.2474059451302783900, -1.545864856606758500 ) ) ; +#18629 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.04166666666667846700 ) ) ; +#18630 = ORIENTED_EDGE ( 'NONE', *, *, #8969, .F. ) ; +#18631 = ORIENTED_EDGE ( 'NONE', *, *, #12573, .F. ) ; +#18632 = CIRCLE ( 'NONE', #11921, 0.4610132068742565100 ) ; +#18633 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.02083333333332174400 ) ) ; +#18634 = LINE ( 'NONE', #7794, #436 ) ; +#18635 = AXIS2_PLACEMENT_3D ( 'NONE', #17512, #7156, #11777 ) ; +#18636 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18637 = ORIENTED_EDGE ( 'NONE', *, *, #15435, .F. ) ; +#18638 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18639 = EDGE_LOOP ( 'NONE', ( #18050, #6411 ) ) ; +#18640 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.3749999999999915100 ) ) ; +#18641 = VECTOR ( 'NONE', #7523, 39.37007874015748100 ) ; +#18642 = AXIS2_PLACEMENT_3D ( 'NONE', #6681, #15441, #2191 ) ; +#18643 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.6631944444444380900 ) ) ; +#18644 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.069444444444440900 ) ) ; +#18645 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.1597222222222119100 ) ) ; +#18646 = ORIENTED_EDGE ( 'NONE', *, *, #1878, .T. ) ; +#18647 = CARTESIAN_POINT ( 'NONE', ( 0.07035793515935794000, 0.4634396653935775600, 1.143750000000000000 ) ) ; +#18648 = EDGE_LOOP ( 'NONE', ( #1780, #11754, #6294, #13196 ) ) ; +#18649 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -0.3090277777777681900 ) ) ; +#18650 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.06249999999998873800 ) ) ; +#18651 = ORIENTED_EDGE ( 'NONE', *, *, #6908, .T. ) ; +#18652 = VERTEX_POINT ( 'NONE', #8904 ) ; +#18653 = CIRCLE ( 'NONE', #5910, 0.4610132068742565100 ) ; +#18654 = LINE ( 'NONE', #17778, #16805 ) ; +#18655 = EDGE_LOOP ( 'NONE', ( #12191, #459, #1141, #18949, #3057, #9524 ) ) ; +#18656 = ORIENTED_EDGE ( 'NONE', *, *, #2381, .T. ) ; +#18657 = CIRCLE ( 'NONE', #3157, 0.4687499999999995600 ) ; +#18658 = ADVANCED_FACE ( 'NONE', ( #19016 ), #5714, .F. ) ; +#18659 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.270833333333331900 ) ) ; +#18660 = EDGE_CURVE ( 'NONE', #9421, #8575, #18083, .T. ) ; +#18661 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, 0.1753472222222353400 ) ) ; +#18662 = DIRECTION ( 'NONE', ( -0.8763066800438699100, 0.4817536741017036100, 0.0000000000000000000 ) ) ; +#18663 = EDGE_LOOP ( 'NONE', ( #2941, #16414, #8522, #17527 ) ) ; +#18664 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18665 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18666 = EDGE_LOOP ( 'NONE', ( #4439, #412, #18841, #7855 ) ) ; +#18667 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.199652777777775700 ) ) ; +#18668 = ORIENTED_EDGE ( 'NONE', *, *, #3739, .T. ) ; +#18669 = VECTOR ( 'NONE', #16800, 39.37007874015748900 ) ; +#18670 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965800, 0.2209708691207961400, -0.6805555555555491400 ) ) ; +#18671 = VECTOR ( 'NONE', #7240, 39.37007874015748100 ) ; +#18672 = ADVANCED_FACE ( 'NONE', ( #1042 ), #23, .F. ) ; +#18673 = ORIENTED_EDGE ( 'NONE', *, *, #4992, .T. ) ; +#18674 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.1475694444444337600 ) ) ; +#18675 = ORIENTED_EDGE ( 'NONE', *, *, #13039, .T. ) ; +#18676 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#18677 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.333333333333331900 ) ) ; +#18678 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#18679 = AXIS2_PLACEMENT_3D ( 'NONE', #10340, #2607, #1134 ) ; +#18680 = CARTESIAN_POINT ( 'NONE', ( -0.3535953843793249200, 0.3077285600096894600, 1.484375000000000200 ) ) ; +#18681 = CIRCLE ( 'NONE', #17340, 0.4687499999999996100 ) ; +#18682 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.9444444444444404200 ) ) ; +#18683 = ORIENTED_EDGE ( 'NONE', *, *, #8646, .T. ) ; +#18684 = VERTEX_POINT ( 'NONE', #469 ) ; +#18685 = ORIENTED_EDGE ( 'NONE', *, *, #11032, .T. ) ; +#18686 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18687 = ORIENTED_EDGE ( 'NONE', *, *, #666, .F. ) ; +#18688 = EDGE_LOOP ( 'NONE', ( #18123, #12287, #7667, #14964, #9075, #15026 ) ) ; +#18689 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.4305555555555469800 ) ) ; +#18690 = CARTESIAN_POINT ( 'NONE', ( -0.4548654901190618500, 0.07503707624389219200, 1.484375000000000200 ) ) ; +#18691 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.587900241027141200 ) ) ; +#18692 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.4374999999999995000, 1.484375000000000200 ) ) ; +#18693 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.09722222222221142700 ) ) ; +#18694 = EDGE_CURVE ( 'NONE', #9767, #2851, #16933, .T. ) ; +#18695 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.8472222222222172100 ) ) ; +#18696 = PLANE ( 'NONE', #3800 ) ; +#18697 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#18698 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.4270833333333252100 ) ) ; +#18699 = ORIENTED_EDGE ( 'NONE', *, *, #3372, .F. ) ; +#18700 = ORIENTED_EDGE ( 'NONE', *, *, #6726, .T. ) ; +#18701 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.7048611111111051700 ) ) ; +#18702 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#18703 = ORIENTED_EDGE ( 'NONE', *, *, #14011, .T. ) ; +#18704 = CIRCLE ( 'NONE', #4917, 0.4610132068742565100 ) ; +#18705 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -0.9791666666666624100 ) ) ; +#18706 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.2118055555555458700 ) ) ; +#18707 = CARTESIAN_POINT ( 'NONE', ( 0.1758827207316751600, -0.2245229102652255600, 0.1053543799244329900 ) ) ; +#18708 = CARTESIAN_POINT ( 'NONE', ( -0.1674842983648653100, -0.1919780298488218700, 1.528000917050756700 ) ) ; +#18709 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.3055555555555458700 ) ) ; +#18710 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -1.006944444444440600 ) ) ; +#18711 = EDGE_CURVE ( 'NONE', #8575, #17767, #9107, .T. ) ; +#18712 = ORIENTED_EDGE ( 'NONE', *, *, #10966, .T. ) ; +#18713 = EDGE_CURVE ( 'NONE', #5561, #9126, #13441, .T. ) ; +#18714 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756474800, -1.305555555555554200 ) ) ; +#18715 = EDGE_LOOP ( 'NONE', ( #13124, #1514, #7095, #6927 ) ) ; +#18716 = EDGE_CURVE ( 'NONE', #10773, #2093, #8856, .T. ) ; +#18717 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.545138888888889900 ) ) ; +#18718 = LINE ( 'NONE', #18572, #4652 ) ; +#18719 = AXIS2_PLACEMENT_3D ( 'NONE', #15255, #4823, #14177 ) ; +#18720 = ORIENTED_EDGE ( 'NONE', *, *, #14414, .T. ) ; +#18721 = PLANE ( 'NONE', #10995 ) ; +#18722 = CARTESIAN_POINT ( 'NONE', ( -0.2321251145655865700, -0.3983103163368976200, 1.592561465728329600 ) ) ; +#18723 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#18724 = ORIENTED_EDGE ( 'NONE', *, *, #10030, .F. ) ; +#18725 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415924700, 0.3125000000000002800, -1.218749999999998000 ) ) ; +#18726 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.3194444444444353200 ) ) ; +#18727 = CARTESIAN_POINT ( 'NONE', ( -0.2360206732261749000, 0.4049948201025079200, 1.484375000000000200 ) ) ; +#18728 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.251736111111109200 ) ) ; +#18729 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.374999999999998900 ) ) ; +#18730 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000002800, -0.6736111111111046100 ) ) ; +#18731 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -3.394565234622201700E-016, -0.04340277777776625800 ) ) ; +#18732 = DIRECTION ( 'NONE', ( -0.03896623090933498700, 0.1692197460574993700, 0.9848077530122089100 ) ) ; +#18733 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -1.395833333333332400 ) ) ; +#18734 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#18735 = DIRECTION ( 'NONE', ( 0.7289686274214054500, 0.6845471059286951700, 0.0000000000000000000 ) ) ; +#18736 = EDGE_LOOP ( 'NONE', ( #9466, #12712, #15900, #18759 ) ) ; +#18737 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.7083333333333274900 ) ) ; +#18738 = EDGE_LOOP ( 'NONE', ( #1629, #2184, #824, #16139 ) ) ; +#18739 = ORIENTED_EDGE ( 'NONE', *, *, #8129, .T. ) ; +#18740 = EDGE_CURVE ( 'NONE', #5275, #3315, #18329, .T. ) ; +#18741 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, 0.01736111111112294300 ) ) ; +#18742 = AXIS2_PLACEMENT_3D ( 'NONE', #12016, #6014, #10277 ) ; +#18743 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18744 = VECTOR ( 'NONE', #17127, 39.37007874015747400 ) ; +#18745 = ADVANCED_FACE ( 'NONE', ( #10247 ), #3168, .F. ) ; +#18746 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18747 = ORIENTED_EDGE ( 'NONE', *, *, #248, .T. ) ; +#18748 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.6232638888888821800 ) ) ; +#18749 = AXIS2_PLACEMENT_3D ( 'NONE', #10078, #15792, #15983 ) ; +#18750 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.4444444444444360400 ) ) ; +#18751 = CARTESIAN_POINT ( 'NONE', ( -0.2321251145655865700, -0.3983103163368976200, 1.187613820323600600 ) ) ; +#18752 = VERTEX_POINT ( 'NONE', #12254 ) ; +#18753 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.9756944444444405300 ) ) ; +#18754 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#18755 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, 0.1701388888889017700 ) ) ; +#18756 = APPROVAL_PERSON_ORGANIZATION ( #5149, #7786, #17806 ) ; +#18757 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18758 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.2569444444444348200 ) ) ; +#18759 = ORIENTED_EDGE ( 'NONE', *, *, #761, .T. ) ; +#18760 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.5694444444444374300 ) ) ; +#18761 = FACE_OUTER_BOUND ( 'NONE', #14227, .T. ) ; +#18762 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.9340277777777732400 ) ) ; +#18763 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.1041666666666560100 ) ) ; +#18764 = EDGE_CURVE ( 'NONE', #18346, #5469, #1483, .T. ) ; +#18765 = CARTESIAN_POINT ( 'NONE', ( -0.3070850166377911400, 0.3438487595863240500, 1.440511179676399000 ) ) ; +#18766 = CARTESIAN_POINT ( 'NONE', ( 0.02195703601413558400, -0.2827734599505272700, 0.1010076664661478800 ) ) ; +#18767 = AXIS2_PLACEMENT_3D ( 'NONE', #6446, #9406, #10699 ) ; +#18768 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.354166666666665600 ) ) ; +#18769 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -0.2638888888888788500 ) ) ; +#18770 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18771 = VECTOR ( 'NONE', #7427, 39.37007874015748900 ) ; +#18772 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, -1.185763888888886600 ) ) ; +#18773 = LINE ( 'NONE', #12197, #16009 ) ; +#18774 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.208333333333331500 ) ) ; +#18775 = AXIS2_PLACEMENT_3D ( 'NONE', #17818, #244, #10530 ) ; +#18776 = LINE ( 'NONE', #1747, #4491 ) ; +#18777 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.399305555555555100 ) ) ; +#18778 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323599700 ) ) ; +#18779 = CARTESIAN_POINT ( 'NONE', ( -5.138489171004225700E-018, 0.2886751345948123700, 1.272329099369260400 ) ) ; +#18780 = CARTESIAN_POINT ( 'NONE', ( -0.1051863658125202500, 0.4567957869192252300, 1.484375000000000200 ) ) ; +#18781 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.484375000000000200 ) ) ; +#18782 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, 0.1306872919485614100, -1.234374999999998000 ) ) ; +#18783 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.326388888888887500 ) ) ; +#18784 = DIRECTION ( 'NONE', ( 0.09852382856602126500, 0.1429921145089359000, -0.9848077530122092400 ) ) ; +#18785 = VECTOR ( 'NONE', #11874, 39.37007874015748900 ) ; +#18786 = VERTEX_POINT ( 'NONE', #3298 ) ; +#18787 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, 0.1684027777777910000 ) ) ; +#18788 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#18789 = EDGE_CURVE ( 'NONE', #7561, #17719, #9322, .T. ) ; +#18790 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.281249999999998200 ) ) ; +#18791 = DIRECTION ( 'NONE', ( -0.5673761158323411500, 0.8234587683563795400, 0.0000000000000000000 ) ) ; +#18792 = CARTESIAN_POINT ( 'NONE', ( 0.1778866455189107300, -0.2432854368717364500, 0.1510186413011303000 ) ) ; +#18793 = LINE ( 'NONE', #11523, #13501 ) ; +#18794 = ORIENTED_EDGE ( 'NONE', *, *, #6282, .T. ) ; +#18795 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -0.6180555555555489200 ) ) ; +#18796 = CIRCLE ( 'NONE', #10548, 0.4687499999999995600 ) ; +#18797 = CARTESIAN_POINT ( 'NONE', ( -0.3070850166377910900, 0.3438487595863241000, 1.484375000000000200 ) ) ; +#18798 = EDGE_CURVE ( 'NONE', #4203, #6476, #803, .T. ) ; +#18799 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18800 = CARTESIAN_POINT ( 'NONE', ( -0.4505462270817873200, -0.09767944602040194700, 1.440511179676388100 ) ) ; +#18801 = TOROIDAL_SURFACE ( 'NONE', #6392, 0.4375000000000001100, 0.03124999999999987200 ) ; +#18802 = CARTESIAN_POINT ( 'NONE', ( 0.2230971623002957800, 0.2230971623002952800, -0.4565972222222142200 ) ) ; +#18803 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #396, #12169, #9282, #16680, #7867, #13661, #16621, #13718, #4824 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4318181818181818800, 0.4356060606060606600, 0.4393939393939394500, 0.4431818181818182300, 0.4469696969696970200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#18804 = FACE_OUTER_BOUND ( 'NONE', #10429, .T. ) ; +#18805 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.2256944444444341500 ) ) ; +#18806 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18807 = ORIENTED_EDGE ( 'NONE', *, *, #12212, .F. ) ; +#18808 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#18809 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, 0.1631944444444571900 ) ) ; +#18810 = CIRCLE ( 'NONE', #8319, 0.4687499999999995600 ) ; +#18811 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.8368055555555505800 ) ) ; +#18812 = DIRECTION ( 'NONE', ( 0.6661089358369508600, -0.7458544667682596200, -0.0000000000000000000 ) ) ; +#18813 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -0.3263888888888799000 ) ) ; +#18814 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005600, 0.1294417382415921600, -0.3993055555555470300 ) ) ; +#18815 = ORIENTED_EDGE ( 'NONE', *, *, #7668, .F. ) ; +#18816 = LINE ( 'NONE', #14100, #13530 ) ; +#18817 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.9965277777777736800 ) ) ; +#18818 = EDGE_CURVE ( 'NONE', #8091, #138, #6782, .T. ) ; +#18819 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.02430555555554431800 ) ) ; +#18820 = CARTESIAN_POINT ( 'NONE', ( -0.01152533017185643900, -0.4608691177296606000, 1.484375000000000200 ) ) ; +#18821 = EDGE_CURVE ( 'NONE', #11445, #3075, #5614, .T. ) ; +#18822 = VECTOR ( 'NONE', #13602, 39.37007874015748900 ) ; +#18823 = CARTESIAN_POINT ( 'NONE', ( -0.06998902345795673900, -0.2739704869952490100, 0.09866625091156604200 ) ) ; +#18824 = AXIS2_PLACEMENT_3D ( 'NONE', #3940, #14232, #15704 ) ; +#18825 = CYLINDRICAL_SURFACE ( 'NONE', #13734, 0.4610132068742565100 ) ; +#18826 = AXIS2_PLACEMENT_3D ( 'NONE', #819, #5116, #2296 ) ; +#18827 = LINE ( 'NONE', #9614, #7792 ) ; +#18828 = CARTESIAN_POINT ( 'NONE', ( 0.3953002468276861100, 0.2372148641431572100, 1.187613820323634800 ) ) ; +#18829 = ORIENTED_EDGE ( 'NONE', *, *, #13776, .T. ) ; +#18830 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.3784722222222132700 ) ) ; +#18831 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #6099, #14854, #7596, #4434, #7406, #5964, #7333, #10549, #1730 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.05303030303030309400, 0.05681818181818187900, 0.06060606060606066300, 0.06439393939393944800, 0.06818181818181823200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#18832 = AXIS2_PLACEMENT_3D ( 'NONE', #7023, #9847, #6961 ) ; +#18833 = PLANE ( 'NONE', #12185 ) ; +#18834 = LINE ( 'NONE', #7756, #14201 ) ; +#18835 = LINE ( 'NONE', #8386, #14917 ) ; +#18836 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -1.199652777777775500 ) ) ; +#18837 = ORIENTED_EDGE ( 'NONE', *, *, #13292, .F. ) ; +#18838 = ADVANCED_FACE ( 'NONE', ( #3786 ), #1949, .T. ) ; +#18839 = ORIENTED_EDGE ( 'NONE', *, *, #6013, .F. ) ; +#18840 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.239583333333331700 ) ) ; +#18841 = ORIENTED_EDGE ( 'NONE', *, *, #6760, .F. ) ; +#18842 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.506944444444445100 ) ) ; +#18843 = ORIENTED_EDGE ( 'NONE', *, *, #3072, .F. ) ; +#18844 = ORIENTED_EDGE ( 'NONE', *, *, #18607, .F. ) ; +#18845 = CYLINDRICAL_SURFACE ( 'NONE', #2665, 0.3125000000000008300 ) ; +#18846 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323599700 ) ) ; +#18847 = FACE_BOUND ( 'NONE', #16638, .T. ) ; +#18848 = FACE_OUTER_BOUND ( 'NONE', #11943, .T. ) ; +#18849 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924100, -0.3125000000000010500, -0.2465277777777679600 ) ) ; +#18850 = ORIENTED_EDGE ( 'NONE', *, *, #17002, .F. ) ; +#18851 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18852 = EDGE_CURVE ( 'NONE', #17064, #10635, #14152, .T. ) ; +#18853 = VECTOR ( 'NONE', #767, 39.37007874015748100 ) ; +#18854 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.241319444444442400 ) ) ; +#18855 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.385416666666665900 ) ) ; +#18856 = CARTESIAN_POINT ( 'NONE', ( 0.4420471124163823400, -0.1559516364272518200, 1.484375000000000200 ) ) ; +#18857 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.7916666666666611900 ) ) ; +#18858 = AXIS2_PLACEMENT_3D ( 'NONE', #18846, #15995, #6948 ) ; +#18859 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297800, -4.167334589913777200E-016, 0.1510416666666798100 ) ) ; +#18860 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.180555555555552900 ) ) ; +#18861 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.270833333333331700 ) ) ; +#18862 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18863 = EDGE_CURVE ( 'NONE', #10296, #9126, #1726, .T. ) ; +#18864 = AXIS2_PLACEMENT_3D ( 'NONE', #17449, #14230, #1230 ) ; +#18865 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.5555555555555483600 ) ) ; +#18866 = AXIS2_PLACEMENT_3D ( 'NONE', #8663, #14450, #5613 ) ; +#18867 = ORIENTED_EDGE ( 'NONE', *, *, #11627, .T. ) ; +#18868 = VERTEX_POINT ( 'NONE', #7875 ) ; +#18869 = ORIENTED_EDGE ( 'NONE', *, *, #5685, .T. ) ; +#18870 = LINE ( 'NONE', #10000, #17025 ) ; +#18871 = CARTESIAN_POINT ( 'NONE', ( 0.4669429843783098900, 0.04111948248552014400, 1.587900241027141400 ) ) ; +#18872 = FACE_OUTER_BOUND ( 'NONE', #12593, .T. ) ; +#18873 = ORIENTED_EDGE ( 'NONE', *, *, #6223, .T. ) ; +#18874 = ORIENTED_EDGE ( 'NONE', *, *, #17114, .F. ) ; +#18875 = PLANE ( 'NONE', #12095 ) ; +#18876 = FACE_OUTER_BOUND ( 'NONE', #10520, .T. ) ; +#18877 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#18878 = ORIENTED_EDGE ( 'NONE', *, *, #16636, .F. ) ; +#18879 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18880 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.5538194444444370900 ) ) ; +#18881 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.1597222222222113900 ) ) ; +#18882 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.1770833333333228800 ) ) ; +#18883 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000008300, -5.080993862594977100E-016, -1.562500000000000000 ) ) ; +#18884 = EDGE_CURVE ( 'NONE', #6526, #514, #2190, .T. ) ; +#18885 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207965500, -0.2209708691207968900, 0.06944444444445684000 ) ) ; +#18886 = CARTESIAN_POINT ( 'NONE', ( -5.788237617796993100E-017, 2.669823311248641500E-016, 3.802149639073292500 ) ) ; +#18887 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.527777777777777900 ) ) ; +#18888 = VERTEX_POINT ( 'NONE', #12437 ) ; +#18889 = CARTESIAN_POINT ( 'NONE', ( -0.2677510345425845300, 0.07696339992920814300, 0.08696750253309623600 ) ) ; +#18890 = AXIS2_PLACEMENT_3D ( 'NONE', #10166, #13117, #14400 ) ; +#18891 = CARTESIAN_POINT ( 'NONE', ( 0.4581073617749772400, 0.09931871720662788200, 1.143750000000000000 ) ) ; +#18892 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -0.1294417382415928300, -1.315972222222221000 ) ) ; +#18893 = ORIENTED_EDGE ( 'NONE', *, *, #15538, .F. ) ; +#18894 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -0.4409722222222141600 ) ) ; +#18895 = LINE ( 'NONE', #3204, #3683 ) ; +#18896 = VECTOR ( 'NONE', #2820, 39.37007874015748900 ) ; +#18897 = ORIENTED_EDGE ( 'NONE', *, *, #15715, .F. ) ; +#18898 = ORIENTED_EDGE ( 'NONE', *, *, #18764, .T. ) ; +#18899 = DIRECTION ( 'NONE', ( -0.5035107695491730700, 0.8639889495520179900, 0.0000000000000000000 ) ) ; +#18900 = FACE_OUTER_BOUND ( 'NONE', #17972, .T. ) ; +#18901 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.8541666666666614100 ) ) ; +#18902 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, 1.147376157338990600E-014 ) ) ; +#18903 = CARTESIAN_POINT ( 'NONE', ( 0.09439170609494516900, -0.2677202178342216700, 0.1029339622586920900 ) ) ; +#18904 = EDGE_LOOP ( 'NONE', ( #2705, #8087, #16389, #1211 ) ) ; +#18905 = CARTESIAN_POINT ( 'NONE', ( -3.863846776457877300E-017, -0.3155070326520301200, -0.8663194444444395300 ) ) ; +#18906 = DIRECTION ( 'NONE', ( -0.7940695057417605000, -0.6078269655510820700, 0.0000000000000000000 ) ) ; +#18907 = ORIENTED_EDGE ( 'NONE', *, *, #2360, .T. ) ; +#18908 = VERTEX_POINT ( 'NONE', #18249 ) ; +#18909 = VECTOR ( 'NONE', #6043, 39.37007874015748100 ) ; +#18910 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -1.354166666666665600 ) ) ; +#18911 = ORIENTED_EDGE ( 'NONE', *, *, #11461, .T. ) ; +#18912 = VERTEX_POINT ( 'NONE', #15318 ) ; +#18913 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603800, -1.350694444444443500 ) ) ; +#18914 = EDGE_CURVE ( 'NONE', #1821, #18514, #2404, .T. ) ; +#18915 = LINE ( 'NONE', #10080, #14994 ) ; +#18916 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.465277777777777900 ) ) ; +#18917 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18918 = CARTESIAN_POINT ( 'NONE', ( -0.3086320542674450600, -3.398774944758646100E-016, 0.1713779516012225400 ) ) ; +#18919 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18920 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.2361111111111013300 ) ) ; +#18921 = ORIENTED_EDGE ( 'NONE', *, *, #13933, .T. ) ; +#18922 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, -1.109374999999996900 ) ) ; +#18923 = EDGE_CURVE ( 'NONE', #12567, #17274, #7253, .T. ) ; +#18924 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.267361111111109200 ) ) ; +#18925 = ORIENTED_EDGE ( 'NONE', *, *, #17514, .T. ) ; +#18926 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18927 = CARTESIAN_POINT ( 'NONE', ( -0.3685331079892096300, 0.2896681615724754400, 1.143750000000000000 ) ) ; +#18928 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485616800, 0.3155070326520294500, 0.05729166666667893900 ) ) ; +#18929 = CARTESIAN_POINT ( 'NONE', ( 0.3238882248696998100, 0.3280694967582948900, 1.484375000000000200 ) ) ; +#18930 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -1.093749999999996900 ) ) ; +#18931 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207965300, -0.2209708691207969700, -1.194444444444442200 ) ) ; +#18932 = CARTESIAN_POINT ( 'NONE', ( 0.2082409431327302300, -0.2183341571159192200, 0.1519499074792250700 ) ) ; +#18933 = VERTEX_POINT ( 'NONE', #18172 ) ; +#18934 = VECTOR ( 'NONE', #16275, 39.37007874015748100 ) ; +#18935 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.7222222222222163300 ) ) ; +#18936 = VERTEX_POINT ( 'NONE', #10834 ) ; +#18937 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#18938 = CARTESIAN_POINT ( 'NONE', ( 0.4548654901190624100, -0.07503707624388920900, 1.589564174286821600 ) ) ; +#18939 = ADVANCED_FACE ( 'NONE', ( #14383 ), #3488, .F. ) ; +#18940 = ORIENTED_EDGE ( 'NONE', *, *, #3587, .F. ) ; +#18941 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#18942 = ORIENTED_EDGE ( 'NONE', *, *, #18450, .F. ) ; +#18943 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002957200, -0.2230971623002960800, -0.5954861111111040600 ) ) ; +#18944 = ORIENTED_EDGE ( 'NONE', *, *, #2139, .F. ) ; +#18945 = CARTESIAN_POINT ( 'NONE', ( 0.07035793515936764100, -0.4634396653935760600, 1.484375000000000200 ) ) ; +#18946 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.2465277777777676600 ) ) ; +#18947 = LINE ( 'NONE', #5473, #17804 ) ; +#18948 = EDGE_CURVE ( 'NONE', #13408, #16023, #17608, .T. ) ; +#18949 = ORIENTED_EDGE ( 'NONE', *, *, #14219, .T. ) ; +#18950 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#18951 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668043000, 0.1954553509668038300, -1.541666666666666700 ) ) ; +#18952 = EDGE_CURVE ( 'NONE', #12983, #2569, #19002, .T. ) ; +#18953 = CARTESIAN_POINT ( 'NONE', ( -0.2494545350996411300, 0.1218028626695053400, 0.08565990033266612800 ) ) ; +#18954 = ORIENTED_EDGE ( 'NONE', *, *, #12042, .T. ) ; +#18955 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323598600 ) ) ; +#18956 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.510416666666667000 ) ) ; +#18957 = AXIS2_PLACEMENT_3D ( 'NONE', #10647, #13539, #17852 ) ; +#18958 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.3749999999999915100 ) ) ; +#18959 = ORIENTED_EDGE ( 'NONE', *, *, #17994, .F. ) ; +#18960 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -0.7881944444444387600 ) ) ; +#18961 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, 0.04166666666667846700 ) ) ; +#18962 = CARTESIAN_POINT ( 'NONE', ( -0.1034502481550478400, 0.4492562999771345100, 1.590308733529502500 ) ) ; +#18963 = ORIENTED_EDGE ( 'NONE', *, *, #8707, .F. ) ; +#18964 = LINE ( 'NONE', #7142, #13910 ) ; +#18965 = CARTESIAN_POINT ( 'NONE', ( 0.4019342351530952900, -0.2411958397483171000, 1.592921120922338200 ) ) ; +#18966 = ORIENTED_EDGE ( 'NONE', *, *, #9354, .F. ) ; +#18967 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18968 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.03819444444443295000 ) ) ; +#18969 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, -0.1306872919485620200, -0.8211805555555503600 ) ) ; +#18970 = EDGE_LOOP ( 'NONE', ( #9422, #18498, #5973, #18308, #9888, #6943 ) ) ; +#18971 = EDGE_CURVE ( 'NONE', #7419, #8578, #13701, .T. ) ; +#18972 = LINE ( 'NONE', #4040, #11145 ) ; +#18973 = VERTEX_POINT ( 'NONE', #13866 ) ; +#18974 = EDGE_CURVE ( 'NONE', #2265, #16023, #16694, .T. ) ; +#18975 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.7152777777777716800 ) ) ; +#18976 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.062499999999996900 ) ) ; +#18977 = EDGE_CURVE ( 'NONE', #8825, #17125, #12771, .T. ) ; +#18978 = AXIS2_PLACEMENT_3D ( 'NONE', #12898, #15774, #9806 ) ; +#18979 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -1.538194444444445100 ) ) ; +#18980 = EDGE_LOOP ( 'NONE', ( #16854, #13753, #11686, #15701 ) ) ; +#18981 = ADVANCED_FACE ( 'NONE', ( #9565 ), #5830, .T. ) ; +#18982 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415925200, -0.3125000000000009400, -0.3715277777777688500 ) ) ; +#18983 = AXIS2_PLACEMENT_3D ( 'NONE', #11207, #2433, #12938 ) ; +#18984 = EDGE_LOOP ( 'NONE', ( #8045, #154, #13822, #9672 ) ) ; +#18985 = CARTESIAN_POINT ( 'NONE', ( -0.2119256669269687600, -0.4094150566479519100, 1.187613820323600600 ) ) ; +#18986 = CARTESIAN_POINT ( 'NONE', ( 0.2360206732261691000, 0.4049948201025113700, 1.484375000000000200 ) ) ; +#18987 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#18988 = ORIENTED_EDGE ( 'NONE', *, *, #2978, .T. ) ; +#18989 = CARTESIAN_POINT ( 'NONE', ( 0.3155070326520297300, -0.1306872919485622400, -1.019097222222218500 ) ) ; +#18990 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -0.1144950937579610600, -1.406249999999999300 ) ) ; +#18991 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#18992 = CARTESIAN_POINT ( 'NONE', ( 0.1306872919485618800, 0.3155070326520294000, 0.1059027777777905200 ) ) ; +#18993 = CARTESIAN_POINT ( 'NONE', ( -0.4492896982220442300, 0.1336612493265871800, 1.484375000000000200 ) ) ; +#18994 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -1.107638888888886000 ) ) ; +#18995 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18996 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#18997 = VECTOR ( 'NONE', #14605, 39.37007874015748100 ) ; +#18998 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, -3.418501828551757400E-016, -0.5694444444444374300 ) ) ; +#18999 = EDGE_CURVE ( 'NONE', #3985, #1321, #6558, .T. ) ; +#19000 = CARTESIAN_POINT ( 'NONE', ( -2.321531631723995200E-017, 2.636275660394280800E-016, 3.802149639073331100 ) ) ; +#19001 = CARTESIAN_POINT ( 'NONE', ( -0.3535953843793249200, 0.3077285600096894600, 1.143750000000000000 ) ) ; +#19002 = CIRCLE ( 'NONE', #13940, 0.4687499999999995600 ) ; +#19003 = CARTESIAN_POINT ( 'NONE', ( -0.1034502481550478400, 0.4492562999771345100, 1.484375000000000200 ) ) ; +#19004 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.592921120922338200 ) ) ; +#19005 = AXIS2_PLACEMENT_3D ( 'NONE', #6881, #8361, #18664 ) ; +#19006 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.4947916666666590200 ) ) ; +#19007 = VECTOR ( 'NONE', #11398, 39.37007874015748100 ) ; +#19008 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866761000E-017, -0.2764156081756482000, -0.2847222222222123800 ) ) ; +#19009 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323634600 ) ) ; +#19010 = CARTESIAN_POINT ( 'NONE', ( -0.3238882248697022000, -0.3280694967582925000, 1.187613820323615500 ) ) ; +#19011 = CARTESIAN_POINT ( 'NONE', ( -0.4505462270817873200, -0.09767944602040194700, 1.484375000000000200 ) ) ; +#19012 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607700, -0.2764156081756482000, -1.399305555555554500 ) ) ; +#19013 = PLANE ( 'NONE', #1539 ) ; +#19014 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.520833333333333900 ) ) ; +#19015 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -0.4652777777777699600 ) ) ; +#19016 = FACE_OUTER_BOUND ( 'NONE', #12137, .T. ) ; +#19017 = ORIENTED_EDGE ( 'NONE', *, *, #6897, .T. ) ; +#19018 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#19019 = CIRCLE ( 'NONE', #2363, 0.4610132068742565100 ) ; +#19020 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579609100, 0.2764156081756474200, -0.7604166666666606300 ) ) ; +#19021 = ORIENTED_EDGE ( 'NONE', *, *, #7412, .F. ) ; +#19022 = EDGE_CURVE ( 'NONE', #14038, #8325, #5980, .T. ) ; +#19023 = CARTESIAN_POINT ( 'NONE', ( 0.01238870033902915400, 0.3081080304432429200, 0.1690545525949465100 ) ) ; +#19024 = VECTOR ( 'NONE', #14962, 39.37007874015748100 ) ; +#19025 = AXIS2_PLACEMENT_3D ( 'NONE', #7100, #7036, #19067 ) ; +#19026 = CARTESIAN_POINT ( 'NONE', ( -0.4219140922835695200, -0.1858000959230583500, 1.143750000000000000 ) ) ; +#19027 = PLANE ( 'NONE', #8477 ) ; +#19028 = CARTESIAN_POINT ( 'NONE', ( -0.3155070326520297800, 0.1306872919485613800, -0.8836805555555508100 ) ) ; +#19029 = DIRECTION ( 'NONE', ( 0.7862080194966573100, 0.6179619325485540300, -0.0000000000000000000 ) ) ; +#19030 = ADVANCED_FACE ( 'NONE', ( #4926 ), #15984, .T. ) ; +#19031 = CYLINDRICAL_SURFACE ( 'NONE', #2099, 0.4610132068742565100 ) ; +#19032 = ORIENTED_EDGE ( 'NONE', *, *, #3628, .T. ) ; +#19033 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.173611111111108900 ) ) ; +#19034 = AXIS2_PLACEMENT_3D ( 'NONE', #12912, #8347, #16178 ) ; +#19035 = CIRCLE ( 'NONE', #17276, 0.4610132068742565100 ) ; +#19036 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607300, 0.2764156081756474800, -1.357638888888888000 ) ) ; +#19037 = ORIENTED_EDGE ( 'NONE', *, *, #4410, .T. ) ; +#19038 = VECTOR ( 'NONE', #14727, 39.37007874015748900 ) ; +#19039 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -0.1041666666666557500 ) ) ; +#19040 = DIRECTION ( 'NONE', ( 0.9151887321064339200, -0.4030255384282960300, 0.0000000000000000000 ) ) ; +#19041 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000006100, -4.161810760545418600E-016, -0.4652777777777696900 ) ) ; +#19042 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.187613820323601700 ) ) ; +#19043 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.9947916666666627400 ) ) ; +#19044 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042800, -0.1954553509668046100, -1.236111111111108900 ) ) ; +#19045 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#19046 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#19047 = EDGE_CURVE ( 'NONE', #6526, #6972, #8638, .T. ) ; +#19048 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579606600, -0.2764156081756483100, -1.170138888888886200 ) ) ; +#19049 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#19050 = CARTESIAN_POINT ( 'NONE', ( -0.1789926541814410900, -0.2382183946970082600, 0.1416384839396063200 ) ) ; +#19051 = ORIENTED_EDGE ( 'NONE', *, *, #4041, .F. ) ; +#19052 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.3749999999999915100 ) ) ; +#19053 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1204, #10083, #8801, #11683, #14530, #10276, #17420, #4283, #17554 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6893939393939394500, 0.6931818181818181200, 0.6969696969696970200, 0.7007575757575756900, 0.7045454545454545900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#19054 = FACE_OUTER_BOUND ( 'NONE', #6054, .T. ) ; +#19055 = CIRCLE ( 'NONE', #165, 0.4687475818742553600 ) ; +#19056 = ORIENTED_EDGE ( 'NONE', *, *, #11658, .F. ) ; +#19057 = ORIENTED_EDGE ( 'NONE', *, *, #4664, .T. ) ; +#19058 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.440511179676390300 ) ) ; +#19060 = EDGE_CURVE ( 'NONE', #13181, #3921, #10483, .T. ) ; +#19059 = VECTOR ( 'NONE', #2904, 39.37007874015748900 ) ; +#19061 = CARTESIAN_POINT ( 'NONE', ( -0.3953002468276895500, 0.2372148641431517400, 1.143750000000000000 ) ) ; +#19062 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, 0.1631944444444574600 ) ) ; +#19063 = AXIS2_PLACEMENT_3D ( 'NONE', #5610, #15924, #11560 ) ; +#19064 = CARTESIAN_POINT ( 'NONE', ( -0.2304765432135487400, 0.2076897510325758600, 0.1754312362138601700 ) ) ; +#19065 = ORIENTED_EDGE ( 'NONE', *, *, #6082, .F. ) ; +#19066 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756478100, 0.1144950937579603700, -0.3020833333333238800 ) ) ; +#19067 = DIRECTION ( 'NONE', ( -0.6374239897486883000, -0.7705132427757904700, 0.0000000000000000000 ) ) ; +#19068 = ADVANCED_FACE ( 'NONE', ( #17858 ), #3335, .T. ) ; +#19069 = CARTESIAN_POINT ( 'NONE', ( 0.1257767296168668100, -0.4435238338571802500, 1.590308733529502700 ) ) ; +#19070 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415926900, 0.3125000000000002200, -0.5104166666666588600 ) ) ; +#19071 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -3.585550491684345600E-016, 1.827040330732674400 ) ) ; +#19072 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668042500, 0.1954553509668039100, -1.472222222222222100 ) ) ; +#19073 = VECTOR ( 'NONE', #6976, 39.37007874015748100 ) ; +#19074 = CONICAL_SURFACE ( 'NONE', #18775, 0.4610132068742565100, 0.1745329251994285300 ) ; +#19075 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#19076 = FACE_OUTER_BOUND ( 'NONE', #3306, .T. ) ; +#19077 = CARTESIAN_POINT ( 'NONE', ( 0.4289947181748867700, 0.1889182211382723600, 1.143750000000000000 ) ) ; +#19078 = EDGE_LOOP ( 'NONE', ( #12755, #15264, #6301, #14058 ) ) ; +#19079 = LINE ( 'NONE', #5927, #13311 ) ; +#19080 = VECTOR ( 'NONE', #16755, 39.37007874015748900 ) ; +#19081 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756477500, -0.1144950937579612400, -0.2673611111111017800 ) ) ; +#19082 = ORIENTED_EDGE ( 'NONE', *, *, #4606, .T. ) ; +#19083 = EDGE_CURVE ( 'NONE', #735, #8918, #6321, .T. ) ; +#19084 = CARTESIAN_POINT ( 'NONE', ( 0.07343078112157044900, 0.2928323466088515500, 0.1510849271056137500 ) ) ; +#19085 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579607100, 0.2764156081756474800, -0.6979166666666601900 ) ) ; +#19086 = EDGE_CURVE ( 'NONE', #7313, #11528, #13230, .T. ) ; +#19087 = VERTEX_POINT ( 'NONE', #2613 ) ; +#19088 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, -3.396406511078320900E-016, -1.326388888888887500 ) ) ; +#19089 = EDGE_CURVE ( 'NONE', #12985, #4611, #18539, .T. ) ; +#19090 = EDGE_LOOP ( 'NONE', ( #7305, #3222, #14957, #6831 ) ) ; +#19091 = AXIS2_PLACEMENT_3D ( 'NONE', #6032, #1525, #8948 ) ; +#19092 = AXIS2_PLACEMENT_3D ( 'NONE', #7846, #18146, #559 ) ; +#19093 = CARTESIAN_POINT ( 'NONE', ( 0.4592360163321189100, 0.04044079890274024400, 1.187613820323634800 ) ) ; +#19094 = ORIENTED_EDGE ( 'NONE', *, *, #15402, .T. ) ; +#19095 = ORIENTED_EDGE ( 'NONE', *, *, #15987, .T. ) ; +#19096 = LINE ( 'NONE', #5817, #17703 ) ; +#19098 = CARTESIAN_POINT ( 'NONE', ( -0.2230971623002956900, 0.2230971623002953600, -0.9427083333333291500 ) ) ; +#19097 = LINE ( 'NONE', #13656, #5472 ) ; +#19099 = EDGE_LOOP ( 'NONE', ( #17101, #13823, #8768, #3247 ) ) ; +#19100 = ORIENTED_EDGE ( 'NONE', *, *, #6778, .T. ) ; +#19101 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#19102 = LINE ( 'NONE', #6230, #5025 ) ; +#19103 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, 0.1144950937579604200, -0.9826388888888851800 ) ) ; +#19104 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -1.208333333333331500 ) ) ; +#19105 = PLANE ( 'NONE', #7043 ) ; +#19106 = ORIENTED_EDGE ( 'NONE', *, *, #18818, .T. ) ; +#19107 = EDGE_LOOP ( 'NONE', ( #11082, #13808, #17363, #10338 ) ) ; +#19108 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000008300, -5.463695987328526400E-016, -1.562500000000000000 ) ) ; +#19109 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000006100, 0.1294417382415921600, -0.4409722222222138800 ) ) ; +#19110 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#19111 = DIRECTION ( 'NONE', ( 0.5035107695491609600, 0.8639889495520248800, 0.0000000000000000000 ) ) ; +#19112 = EDGE_CURVE ( 'NONE', #67, #10560, #10019, .T. ) ; +#19113 = CARTESIAN_POINT ( 'NONE', ( -0.1306872919485617400, -0.3155070326520301200, -1.032986111111107600 ) ) ; +#19114 = ORIENTED_EDGE ( 'NONE', *, *, #16182, .F. ) ; +#19115 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668042500, -0.1954553509668046900, -1.166666666666663900 ) ) ; +#19116 = VECTOR ( 'NONE', #5111, 39.37007874015748900 ) ; +#19117 = LINE ( 'NONE', #18019, #7831 ) ; +#19118 = AXIS2_PLACEMENT_3D ( 'NONE', #8414, #5566, #11389 ) ; +#19119 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.143750000000000000 ) ) ; +#19120 = ORIENTED_EDGE ( 'NONE', *, *, #13292, .T. ) ; +#19121 = CARTESIAN_POINT ( 'NONE', ( 0.1589412568245171800, 0.4327480257511626700, 1.440511179676401200 ) ) ; +#19122 = ORIENTED_EDGE ( 'NONE', *, *, #10342, .F. ) ; +#19123 = CARTESIAN_POINT ( 'NONE', ( -0.2830319157922539000, -3.414450508579332300E-016, 0.1010421492057234800 ) ) ; +#19124 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756478100, -4.095524808125109700E-016, -0.8819444444444395300 ) ) ; +#19125 = CARTESIAN_POINT ( 'NONE', ( 2.828331723309818400E-016, 1.202451978811941600E-016, 3.802149639073296100 ) ) ; +#19126 = VECTOR ( 'NONE', #18004, 39.37007874015748100 ) ; +#19127 = EDGE_CURVE ( 'NONE', #17779, #11653, #12554, .T. ) ; +ENDSEC; +END-ISO-10303-21; diff --git a/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/9472k188-gasket.step b/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/9472k188-gasket.step new file mode 100644 index 000000000..c41d84c98 --- /dev/null +++ b/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/9472k188-gasket.step @@ -0,0 +1,269 @@ +ISO-10303-21; +HEADER; +FILE_DESCRIPTION (( 'STEP AP203' ), + '1' ); +FILE_NAME ('9472K188_Oil-Resistant Aramid-Buna-N Gasket.STEP', + '2022-11-17T21:46:33', + ( 'Administrator' ), + ( 'Managed by Terraform' ), + 'SwSTEP 2.0', + 'SolidWorks 2017', + '' ); +FILE_SCHEMA (( 'CONFIG_CONTROL_DESIGN' )); +ENDSEC; + +DATA; +#1 = EDGE_CURVE ( 'NONE', #251, #149, #124, .T. ) ; +#2 = PERSON_AND_ORGANIZATION ( #159, #138 ) ; +#3 = SECURITY_CLASSIFICATION ( '', '', #150 ) ; +#4 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#5 = AXIS2_PLACEMENT_3D ( 'NONE', #243, #143, #82 ) ; +#6 = DATE_AND_TIME ( #211, #125 ) ; +#7 =( NAMED_UNIT ( * ) SI_UNIT ( $, .STERADIAN. ) SOLID_ANGLE_UNIT ( ) ); +#8 =( GEOMETRIC_REPRESENTATION_CONTEXT ( 3 ) GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT ( ( #87 ) ) GLOBAL_UNIT_ASSIGNED_CONTEXT ( ( #64, #168, #7 ) ) REPRESENTATION_CONTEXT ( 'NONE', 'WORKASPACE' ) ); +#9 = EDGE_LOOP ( 'NONE', ( #55, #200 ) ) ; +#10 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.01562500000000000000 ) ) ; +#11 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#12 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01562500000000000000 ) ) ; +#13 = CALENDAR_DATE ( 2022, 17, 11 ) ; +#14 = APPLICATION_PROTOCOL_DEFINITION ( 'international standard', 'config_control_design', 1994, #172 ) ; +#15 = CIRCLE ( 'NONE', #186, 1.187500000000000000 ) ; +#16 = DIMENSIONAL_EXPONENTS ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ; +#17 = EDGE_CURVE ( 'NONE', #149, #114, #236, .T. ) ; +#18 = ORIENTED_EDGE ( 'NONE', *, *, #178, .T. ) ; +#19 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#20 = AXIS2_PLACEMENT_3D ( 'NONE', #135, #198, #19 ) ; +#21 = CIRCLE ( 'NONE', #91, 2.062500000000000000 ) ; +#22 = LOCAL_TIME ( 15, 46, 33.00000000000000000, #221 ) ; +#23 = CARTESIAN_POINT ( 'NONE', ( -2.062500000000000000, 0.0000000000000000000, -0.01562500000000000000 ) ) ; +#24 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#25 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.01562500000000000000 ) ) ; +#26 = CARTESIAN_POINT ( 'NONE', ( 2.062500000000000000, 2.525834023241416400E-016, -0.01562500000000000000 ) ) ; +#27 = PERSON_AND_ORGANIZATION_ROLE ( 'design_supplier' ) ; +#28 = PERSON_AND_ORGANIZATION_ROLE ( 'creator' ) ; +#29 = ADVANCED_BREP_SHAPE_REPRESENTATION ( '9472K188_Oil-Resistant Aramid-Buna-N Gasket', ( #118, #194 ), #8 ) ; +#30 = AXIS2_PLACEMENT_3D ( 'NONE', #235, #39, #216 ) ; +#31 = ADVANCED_FACE ( 'NONE', ( #40 ), #192, .F. ) ; +#32 = CC_DESIGN_DATE_AND_TIME_ASSIGNMENT ( #6, #212, ( #3 ) ) ; +#33 = ORIENTED_EDGE ( 'NONE', *, *, #171, .F. ) ; +#34 = PERSON_AND_ORGANIZATION ( #159, #138 ) ; +#35 = ADVANCED_FACE ( 'NONE', ( #232 ), #132, .T. ) ; +#36 = CIRCLE ( 'NONE', #44, 1.187500000000000000 ) ; +#37 = PERSON_AND_ORGANIZATION ( #159, #138 ) ; +#38 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#39 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#40 = FACE_OUTER_BOUND ( 'NONE', #54, .T. ) ; +#41 = PERSON_AND_ORGANIZATION ( #159, #138 ) ; +#42 = PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE ( 'ANY', '', #139, .NOT_KNOWN. ) ; +#43 = EDGE_LOOP ( 'NONE', ( #242, #57 ) ) ; +#44 = AXIS2_PLACEMENT_3D ( 'NONE', #131, #134, #38 ) ; +#45 = ORIENTED_EDGE ( 'NONE', *, *, #71, .T. ) ; +#46 = APPLICATION_CONTEXT ( 'configuration controlled 3d designs of mechanical parts and assemblies' ) ; +#47 = PERSON_AND_ORGANIZATION_ROLE ( 'classification_officer' ) ; +#48 = ORIENTED_EDGE ( 'NONE', *, *, #99, .F. ) ; +#49 = PERSON_AND_ORGANIZATION ( #159, #138 ) ; +#50 = DATE_TIME_ROLE ( 'creation_date' ) ; +#51 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #41, #210, ( #42 ) ) ; +#52 = ORIENTED_EDGE ( 'NONE', *, *, #115, .T. ) ; +#53 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #58, #148, ( #139 ) ) ; +#54 = EDGE_LOOP ( 'NONE', ( #116, #188, #179, #48 ) ) ; +#55 = ORIENTED_EDGE ( 'NONE', *, *, #59, .T. ) ; +#56 = PRODUCT_DEFINITION ( 'UNKNOWN', '', #42, #225 ) ; +#57 = ORIENTED_EDGE ( 'NONE', *, *, #140, .F. ) ; +#58 = PERSON_AND_ORGANIZATION ( #159, #138 ) ; +#59 = EDGE_CURVE ( 'NONE', #149, #251, #103, .T. ) ; +#60 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#61 = FACE_BOUND ( 'NONE', #80, .T. ) ; +#62 = ORIENTED_EDGE ( 'NONE', *, *, #99, .T. ) ; +#63 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#64 =( CONVERSION_BASED_UNIT ( 'INCH', #155 ) LENGTH_UNIT ( ) NAMED_UNIT ( #16 ) ); +#65 = ORIENTED_EDGE ( 'NONE', *, *, #111, .F. ) ; +#66 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01562500000000000000 ) ) ; +#67 = DATE_AND_TIME ( #13, #183 ) ; +#68 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01562500000000000000 ) ) ; +#69 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#70 = APPROVAL_ROLE ( '' ) ; +#71 = EDGE_CURVE ( 'NONE', #251, #176, #249, .T. ) ; +#72 = LINE ( 'NONE', #189, #201 ) ; +#73 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#74 = CC_DESIGN_DATE_AND_TIME_ASSIGNMENT ( #67, #50, ( #56 ) ) ; +#75 = ORIENTED_EDGE ( 'NONE', *, *, #17, .T. ) ; +#76 = PERSON_AND_ORGANIZATION ( #159, #138 ) ; +#77 = EDGE_CURVE ( 'NONE', #160, #213, #36, .T. ) ; +#78 = ADVANCED_FACE ( 'NONE', ( #141 ), #128, .F. ) ; +#79 = FACE_BOUND ( 'NONE', #43, .T. ) ; +#80 = EDGE_LOOP ( 'NONE', ( #52, #62 ) ) ; +#81 = PLANE ( 'NONE', #157 ) ; +#82 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#83 = FACE_OUTER_BOUND ( 'NONE', #9, .T. ) ; +#84 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#85 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #244, #27, ( #42 ) ) ; +#86 = CLOSED_SHELL ( 'NONE', ( #78, #35, #92, #177, #130, #31 ) ) ; +#87 = UNCERTAINTY_MEASURE_WITH_UNIT (LENGTH_MEASURE( 1.000000000000000100E-005 ), #64, 'distance_accuracy_value', 'NONE'); +#88 = APPROVAL_ROLE ( '' ) ; +#89 = CIRCLE ( 'NONE', #203, 1.187500000000000000 ) ; +#90 = APPROVAL_PERSON_ORGANIZATION ( #76, #153, #88 ) ; +#91 = AXIS2_PLACEMENT_3D ( 'NONE', #165, #208, #205 ) ; +#92 = ADVANCED_FACE ( 'NONE', ( #83, #79 ), #81, .T. ) ; +#93 = ORIENTED_EDGE ( 'NONE', *, *, #71, .F. ) ; +#94 = DATE_AND_TIME ( #145, #120 ) ; +#95 = ORIENTED_EDGE ( 'NONE', *, *, #115, .F. ) ; +#96 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#97 = AXIS2_PLACEMENT_3D ( 'NONE', #12, #63, #162 ) ; +#98 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#99 = EDGE_CURVE ( 'NONE', #163, #107, #89, .T. ) ; +#100 =( LENGTH_UNIT ( ) NAMED_UNIT ( * ) SI_UNIT ( $, .METRE. ) ); +#101 = CARTESIAN_POINT ( 'NONE', ( 2.062500000000000000, 2.525834023241416400E-016, 0.01562500000000000000 ) ) ; +#102 = CARTESIAN_POINT ( 'NONE', ( 1.187500000000000000, 1.454268073987481900E-016, 0.01562500000000000000 ) ) ; +#103 = CIRCLE ( 'NONE', #105, 2.062500000000000000 ) ; +#104 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#105 = AXIS2_PLACEMENT_3D ( 'NONE', #147, #73, #152 ) ; +#106 = CYLINDRICAL_SURFACE ( 'NONE', #97, 2.062500000000000000 ) ; +#107 = VERTEX_POINT ( 'NONE', #240 ) ; +#108 = AXIS2_PLACEMENT_3D ( 'NONE', #174, #127, #245 ) ; +#109 = PRODUCT_DEFINITION_SHAPE ( 'NONE', 'NONE', #56 ) ; +#110 = ORIENTED_EDGE ( 'NONE', *, *, #1, .F. ) ; +#111 = EDGE_CURVE ( 'NONE', #114, #176, #21, .T. ) ; +#112 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#113 = FACE_OUTER_BOUND ( 'NONE', #209, .T. ) ; +#114 = VERTEX_POINT ( 'NONE', #23 ) ; +#115 = EDGE_CURVE ( 'NONE', #107, #163, #246, .T. ) ; +#116 = ORIENTED_EDGE ( 'NONE', *, *, #193, .F. ) ; +#117 = CALENDAR_DATE ( 2022, 17, 11 ) ; +#118 = MANIFOLD_SOLID_BREP ( 'Boss-Extrude1', #86 ) ; +#119 = AXIS2_PLACEMENT_3D ( 'NONE', #234, #4, #112 ) ; +#120 = LOCAL_TIME ( 15, 46, 33.00000000000000000, #96 ) ; +#121 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.01562500000000000000 ) ) ; +#122 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#123 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#124 = CIRCLE ( 'NONE', #30, 2.062500000000000000 ) ; +#125 = LOCAL_TIME ( 15, 46, 33.00000000000000000, #233 ) ; +#126 = MECHANICAL_CONTEXT ( 'NONE', #46, 'mechanical' ) ; +#127 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#128 = CYLINDRICAL_SURFACE ( 'NONE', #108, 1.187500000000000000 ) ; +#129 = EDGE_LOOP ( 'NONE', ( #182, #202, #95, #33 ) ) ; +#130 = ADVANCED_FACE ( 'NONE', ( #238 ), #106, .T. ) ; +#131 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01562500000000000000 ) ) ; +#132 = CYLINDRICAL_SURFACE ( 'NONE', #20, 2.062500000000000000 ) ; +#133 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#134 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#135 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01562500000000000000 ) ) ; +#136 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #37, #47, ( #3 ) ) ; +#137 = EDGE_LOOP ( 'NONE', ( #110, #45, #18, #227 ) ) ; +#138 = ORGANIZATION ( 'UNSPECIFIED', 'UNSPECIFIED', '' ) ; +#139 = PRODUCT ( '9472K188_Oil-Resistant Aramid-Buna-N Gasket', '9472K188_Oil-Resistant Aramid-Buna-N Gasket', '', ( #126 ) ) ; +#140 = EDGE_CURVE ( 'NONE', #213, #160, #15, .T. ) ; +#141 = FACE_OUTER_BOUND ( 'NONE', #129, .T. ) ; +#142 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#143 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#144 = ORIENTED_EDGE ( 'NONE', *, *, #59, .F. ) ; +#145 = CALENDAR_DATE ( 2022, 17, 11 ) ; +#146 = CARTESIAN_POINT ( 'NONE', ( -1.187500000000000000, 0.0000000000000000000, 0.01562500000000000000 ) ) ; +#147 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01562500000000000000 ) ) ; +#148 = PERSON_AND_ORGANIZATION_ROLE ( 'design_owner' ) ; +#149 = VERTEX_POINT ( 'NONE', #167 ) ; +#150 = SECURITY_CLASSIFICATION_LEVEL ( 'unclassified' ) ; +#151 = APPROVAL_DATE_TIME ( #180, #153 ) ; +#152 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#153 = APPROVAL ( #170, 'UNSPECIFIED' ) ; +#154 = ORIENTED_EDGE ( 'NONE', *, *, #178, .F. ) ; +#155 = LENGTH_MEASURE_WITH_UNIT ( LENGTH_MEASURE( 0.02539999999999999900 ), #100 ); +#156 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#157 = AXIS2_PLACEMENT_3D ( 'NONE', #68, #185, #206 ) ; +#158 = CARTESIAN_POINT ( 'NONE', ( -2.062500000000000000, 0.0000000000000000000, 0.01562500000000000000 ) ) ; +#159 = PERSON ( 'UNSPECIFIED', 'UNSPECIFIED', 'UNSPECIFIED', ('UNSPECIFIED'), ('UNSPECIFIED'), ('UNSPECIFIED') ) ; +#160 = VERTEX_POINT ( 'NONE', #146 ) ; +#161 = SHAPE_DEFINITION_REPRESENTATION ( #109, #29 ) ; +#162 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#163 = VERTEX_POINT ( 'NONE', #226 ) ; +#164 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#165 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.01562500000000000000 ) ) ; +#166 = APPROVAL ( #229, 'UNSPECIFIED' ) ; +#167 = CARTESIAN_POINT ( 'NONE', ( -2.062500000000000000, 0.0000000000000000000, 0.01562500000000000000 ) ) ; +#168 =( NAMED_UNIT ( * ) PLANE_ANGLE_UNIT ( ) SI_UNIT ( $, .RADIAN. ) ); +#169 = VECTOR ( 'NONE', #156, 39.37007874015748100 ) ; +#170 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#171 = EDGE_CURVE ( 'NONE', #160, #107, #217, .T. ) ; +#172 = APPLICATION_CONTEXT ( 'configuration controlled 3d designs of mechanical parts and assemblies' ) ; +#173 = VECTOR ( 'NONE', #122, 39.37007874015748100 ) ; +#174 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01562500000000000000 ) ) ; +#175 = APPROVAL ( #69, 'UNSPECIFIED' ) ; +#176 = VERTEX_POINT ( 'NONE', #26 ) ; +#177 = ADVANCED_FACE ( 'NONE', ( #113, #61 ), #247, .F. ) ; +#178 = EDGE_CURVE ( 'NONE', #176, #114, #252, .T. ) ; +#179 = ORIENTED_EDGE ( 'NONE', *, *, #171, .T. ) ; +#180 = DATE_AND_TIME ( #228, #22 ) ; +#181 = AXIS2_PLACEMENT_3D ( 'NONE', #25, #187, #11 ) ; +#182 = ORIENTED_EDGE ( 'NONE', *, *, #77, .T. ) ; +#183 = LOCAL_TIME ( 15, 46, 33.00000000000000000, #133 ) ; +#184 = APPROVAL_DATE_TIME ( #94, #175 ) ; +#185 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#186 = AXIS2_PLACEMENT_3D ( 'NONE', #66, #224, #142 ) ; +#187 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#188 = ORIENTED_EDGE ( 'NONE', *, *, #140, .T. ) ; +#189 = CARTESIAN_POINT ( 'NONE', ( 1.187500000000000000, 1.454268073987481900E-016, 0.01562500000000000000 ) ) ; +#190 = APPLICATION_PROTOCOL_DEFINITION ( 'international standard', 'config_control_design', 1994, #46 ) ; +#191 = APPROVAL_ROLE ( '' ) ; +#192 = CYLINDRICAL_SURFACE ( 'NONE', #119, 1.187500000000000000 ) ; +#193 = EDGE_CURVE ( 'NONE', #213, #163, #72, .T. ) ; +#194 = AXIS2_PLACEMENT_3D ( 'NONE', #84, #98, #123 ) ; +#195 = LOCAL_TIME ( 15, 46, 33.00000000000000000, #237 ) ; +#196 = VECTOR ( 'NONE', #104, 39.37007874015748100 ) ; +#197 = APPROVAL_DATE_TIME ( #214, #166 ) ; +#198 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#199 = PRODUCT_RELATED_PRODUCT_CATEGORY ( 'detail', '', ( #139 ) ) ; +#200 = ORIENTED_EDGE ( 'NONE', *, *, #1, .T. ) ; +#201 = VECTOR ( 'NONE', #222, 39.37007874015748100 ) ; +#202 = ORIENTED_EDGE ( 'NONE', *, *, #193, .T. ) ; +#203 = AXIS2_PLACEMENT_3D ( 'NONE', #121, #248, #164 ) ; +#204 = CARTESIAN_POINT ( 'NONE', ( 2.062500000000000000, 2.525834023241416400E-016, 0.01562500000000000000 ) ) ; +#205 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#206 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#207 = CC_DESIGN_APPROVAL ( #166, ( #56 ) ) ; +#208 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#209 = EDGE_LOOP ( 'NONE', ( #65, #154 ) ) ; +#210 = PERSON_AND_ORGANIZATION_ROLE ( 'creator' ) ; +#211 = CALENDAR_DATE ( 2022, 17, 11 ) ; +#212 = DATE_TIME_ROLE ( 'classification_date' ) ; +#213 = VERTEX_POINT ( 'NONE', #102 ) ; +#214 = DATE_AND_TIME ( #117, #195 ) ; +#215 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #34, #28, ( #56 ) ) ; +#216 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#217 = LINE ( 'NONE', #241, #173 ) ; +#218 = ORIENTED_EDGE ( 'NONE', *, *, #111, .T. ) ; +#219 = CC_DESIGN_SECURITY_CLASSIFICATION ( #3, ( #42 ) ) ; +#220 = EDGE_LOOP ( 'NONE', ( #93, #144, #75, #218 ) ) ; +#221 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#222 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#223 = CC_DESIGN_APPROVAL ( #153, ( #3 ) ) ; +#224 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#225 = DESIGN_CONTEXT ( 'detailed design', #172, 'design' ) ; +#226 = CARTESIAN_POINT ( 'NONE', ( 1.187500000000000000, 1.454268073987481900E-016, -0.01562500000000000000 ) ) ; +#227 = ORIENTED_EDGE ( 'NONE', *, *, #17, .F. ) ; +#228 = CALENDAR_DATE ( 2022, 17, 11 ) ; +#229 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#230 = APPROVAL_PERSON_ORGANIZATION ( #2, #175, #191 ) ; +#231 = AXIS2_PLACEMENT_3D ( 'NONE', #10, #24, #60 ) ; +#232 = FACE_OUTER_BOUND ( 'NONE', #137, .T. ) ; +#233 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#234 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01562500000000000000 ) ) ; +#235 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01562500000000000000 ) ) ; +#236 = LINE ( 'NONE', #158, #169 ) ; +#237 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#238 = FACE_OUTER_BOUND ( 'NONE', #220, .T. ) ; +#239 = APPROVAL_PERSON_ORGANIZATION ( #49, #166, #70 ) ; +#240 = CARTESIAN_POINT ( 'NONE', ( -1.187500000000000000, 0.0000000000000000000, -0.01562500000000000000 ) ) ; +#241 = CARTESIAN_POINT ( 'NONE', ( -1.187500000000000000, 0.0000000000000000000, 0.01562500000000000000 ) ) ; +#242 = ORIENTED_EDGE ( 'NONE', *, *, #77, .F. ) ; +#243 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.01562500000000000000 ) ) ; +#244 = PERSON_AND_ORGANIZATION ( #159, #138 ) ; +#245 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#246 = CIRCLE ( 'NONE', #231, 1.187500000000000000 ) ; +#247 = PLANE ( 'NONE', #181 ) ; +#248 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#249 = LINE ( 'NONE', #101, #196 ) ; +#250 = CC_DESIGN_APPROVAL ( #175, ( #42 ) ) ; +#251 = VERTEX_POINT ( 'NONE', #204 ) ; +#252 = CIRCLE ( 'NONE', #5, 2.062500000000000000 ) ; +ENDSEC; +END-ISO-10303-21; diff --git a/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/95479a127-hex-nut.step b/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/95479a127-hex-nut.step new file mode 100644 index 000000000..b2adbbf64 --- /dev/null +++ b/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/95479a127-hex-nut.step @@ -0,0 +1,4009 @@ +ISO-10303-21; +HEADER; +FILE_DESCRIPTION (( 'STEP AP203' ), + '1' ); +FILE_NAME ('95479A127_Medium-Strength Steel Hex Nut.STEP', + '2021-09-08T11:05:08', + ( 'Administrator' ), + ( 'Managed by Terraform' ), + 'SwSTEP 2.0', + 'SolidWorks 2017', + '' ); +FILE_SCHEMA (( 'CONFIG_CONTROL_DESIGN' )); +ENDSEC; + +DATA; +#1 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.2456597222222222700 ) ) ; +#2 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.2039930555555556100 ) ) ; +#3 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.07899305555555558000 ) ) ; +#4 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.3133680555555555200 ) ) ; +#5 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, -0.1032986111111111600 ) ) ; +#7 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.06684027777777774800 ) ) ; +#6 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.000000000000000000, 1.143564276417598300E-016 ) ) ; +#8 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -0.2986111111111111600, -0.2595486111111110500 ) ) ; +#9 = CARTESIAN_POINT ( 'NONE', ( -3.611355980669890100E-017, -0.2948895945495678100, -0.2558270945495677000 ) ) ; +#10 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.2421875000000000300 ) ) ; +#11 = ORIENTED_EDGE ( 'NONE', *, *, #333, .F. ) ; +#12 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.1588541666666667400 ) ) ; +#13 = ORIENTED_EDGE ( 'NONE', *, *, #874, .T. ) ; +#14 = CARTESIAN_POINT ( 'NONE', ( 0.1428126888804908100, -0.2553975586051691100, -0.2529524503136121900 ) ) ; +#15 = VECTOR ( 'NONE', #1791, 39.37007874015748100 ) ; +#16 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.04427083333333334300 ) ) ; +#17 = EDGE_CURVE ( 'NONE', #2565, #1840, #3502, .T. ) ; +#18 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.1918402777777777300 ) ) ; +#19 = ORIENTED_EDGE ( 'NONE', *, *, #2639, .F. ) ; +#20 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#21 = CARTESIAN_POINT ( 'NONE', ( -0.09787247057140245600, -0.2803372679702896800, -0.2577017546359836000 ) ) ; +#22 = VERTEX_POINT ( 'NONE', #2309 ) ; +#23 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.01649305555555559400 ) ) ; +#24 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000600, 0.06216011480583872500, 0.3810076976911436200 ) ) ; +#25 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.1050347222222222100 ) ) ; +#26 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.06510416666666669900 ) ) ; +#27 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.1814236111111111000 ) ) ; +#28 = AXIS2_PLACEMENT_3D ( 'NONE', #1639, #577, #340 ) ; +#29 = CYLINDRICAL_SURFACE ( 'NONE', #2569, 0.3125000000000000000 ) ; +#31 = CARTESIAN_POINT ( 'NONE', ( 0.2155633456467681000, -0.1739542174251845500, 0.2373531081756480300 ) ) ; +#30 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.390706609902761100E-016, 1.000000000000000000 ) ) ; +#32 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.03559027777777777600 ) ) ; +#33 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, 0.2230902777777777600 ) ) ; +#34 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.09982638888888893700 ) ) ; +#35 = AXIS2_PLACEMENT_3D ( 'NONE', #1135, #325, #1686 ) ; +#36 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.2873263888888889000 ) ) ; +#37 = CARTESIAN_POINT ( 'NONE', ( 0.03734021231349108500, -0.2924184850070905000, -0.2551396771723565800 ) ) ; +#38 = EDGE_CURVE ( 'NONE', #3205, #315, #62, .T. ) ; +#39 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.04253472222222219600 ) ) ; +#40 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.1692708333333333400 ) ) ; +#41 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.1414930555555555500 ) ) ; +#43 = CARTESIAN_POINT ( 'NONE', ( 0.2542656236088642300, -0.3944655511290283700, -0.2734375000000002200 ) ) ; +#42 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000095500, 0.1294417382415827800, -0.1449652777777774600 ) ) ; +#44 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #3513, #2178, #3233, #2456, #1865, #2731 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 2.380729676757611700E-007, 0.003477957935430242700, 0.006955677797892809500 ), + .UNSPECIFIED. ) ; +#45 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.1501736111111111000 ) ) ; +#46 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000000000, 5.914624404477006300E-017, -0.2734375000000000000 ) ) ; +#47 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.2126736111111110800 ) ) ; +#48 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.1484375000000000600 ) ) ; +#49 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.1553819444444445000 ) ) ; +#50 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#51 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.2821180555555555200 ) ) ; +#52 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, 0.04947916666666666400 ) ) ; +#53 = CARTESIAN_POINT ( 'NONE', ( 7.867357284603775100E-013, 0.2960692680293277600, -0.2570067680293277000 ) ) ; +#55 = CARTESIAN_POINT ( 'NONE', ( -0.4304093251952709200, -0.2927689376020594600, 0.2443506636175589200 ) ) ; +#54 = DIRECTION ( 'NONE', ( -1.000000000000000000, -1.261786539621761300E-016, 0.0000000000000000000 ) ) ; +#56 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.1571180555555555500 ) ) ; +#57 = CARTESIAN_POINT ( 'NONE', ( -0.01118946907265934300, 0.2953196867162342600, -0.2562571867162045100 ) ) ; +#58 = CARTESIAN_POINT ( 'NONE', ( -0.3020047892227545300, -0.03270913907651065700, -0.2640512161495972000 ) ) ; +#59 = ORIENTED_EDGE ( 'NONE', *, *, #1849, .F. ) ; +#60 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.07899305555555560800 ) ) ; +#61 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.07031249999999995800 ) ) ; +#62 = CIRCLE ( 'NONE', #2509, 0.4687500000000000000 ) ; +#63 = CARTESIAN_POINT ( 'NONE', ( 0.1882091580963735100, -0.2220503705173431400, -0.2518680235230414400 ) ) ; +#64 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.2265624999999999400 ) ) ; +#65 = ORIENTED_EDGE ( 'NONE', *, *, #3177, .F. ) ; +#66 = AXIS2_PLACEMENT_3D ( 'NONE', #2645, #1780, #3172 ) ; +#67 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.01822916666666664000 ) ) ; +#69 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#68 = CARTESIAN_POINT ( 'NONE', ( -0.4305050704707040800, 0.2927136590415143600, -0.2443187485257420900 ) ) ; +#70 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #2940, #2665, #3216, #2691, #1085, #1649, #543, #31, #3278, #3269, #1062, #3255 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 4 ), + ( 1.478453870244612300E-013, 0.001386135995595427200, 0.002079203993319218900, 0.002772271991043010000, 0.004158407986490591700, 0.005544543981938171300 ), + .UNSPECIFIED. ) ; +#71 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, 0.2230902777777777300 ) ) ; +#72 = CARTESIAN_POINT ( 'NONE', ( -0.3015783454907086700, 0.04673387162043750300, -0.2654696509259861800 ) ) ; +#73 = CYLINDRICAL_SURFACE ( 'NONE', #35, 0.3125000000000000000 ) ; +#74 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.03906249999999993100 ) ) ; +#75 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.08420138888888882600 ) ) ; +#76 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.05121527777777779700 ) ) ; +#77 = EDGE_CURVE ( 'NONE', #2825, #2535, #3412, .T. ) ; +#78 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.1467013888888888700 ) ) ; +#79 = VECTOR ( 'NONE', #2117, 39.37007874015748100 ) ; +#80 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.2734375000000000000 ) ) ; +#81 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #2495, #3120, ( #1416 ) ) ; +#82 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.09199845610902265800, -0.2685885371339591900 ) ) ; +#83 = ORIENTED_EDGE ( 'NONE', *, *, #77, .T. ) ; +#84 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#85 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#87 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.1258680555555555000 ) ) ; +#86 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.1015624999999999400 ) ) ; +#88 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.02170138888888886700 ) ) ; +#89 = EDGE_CURVE ( 'NONE', #648, #2393, #1650, .T. ) ; +#90 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.1571180555555555500 ) ) ; +#91 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.1623263888888889000 ) ) ; +#92 = CARTESIAN_POINT ( 'NONE', ( -0.1740514841028246200, 0.2149265075874564900, -0.2373531081756482000 ) ) ; +#93 = CARTESIAN_POINT ( 'NONE', ( -0.2962807695705224100, -0.06211950008644598300, -0.2634956147724248900 ) ) ; +#95 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.1223958333333333100 ) ) ; +#94 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.2092013888888889200 ) ) ; +#96 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.01475694444444441300 ) ) ; +#97 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.2508680555555555200 ) ) ; +#98 = EDGE_LOOP ( 'NONE', ( #3287, #1671, #2086, #1747 ) ) ; +#99 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.3376736111111111600 ) ) ; +#100 = EDGE_LOOP ( 'NONE', ( #1705, #1536, #654 ) ) ; +#101 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.1901041666666667100 ) ) ; +#102 = CARTESIAN_POINT ( 'NONE', ( -0.2959819205467964500, -0.01660447300301363600, 0.2572279661314961800 ) ) ; +#103 = EDGE_LOOP ( 'NONE', ( #1926, #2711, #3045, #3080 ) ) ; +#104 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#105 = ORIENTED_EDGE ( 'NONE', *, *, #1214, .F. ) ; +#107 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.2821180555555554700 ) ) ; +#106 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.07378472222222219600 ) ) ; +#108 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.1328124999999999200 ) ) ; +#109 = VERTEX_POINT ( 'NONE', #386 ) ; +#110 = DATE_AND_TIME ( #2457, #2544 ) ; +#111 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.1623263888888889000 ) ) ; +#112 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.1206597222222222400 ) ) ; +#113 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608500, 0.2764156081756481400, 0.03559027777777774200 ) ) ; +#114 = LINE ( 'NONE', #1818, #2756 ) ; +#115 = CARTESIAN_POINT ( 'NONE', ( 0.2343750000000000800, 0.4059494080239557900, 0.2734375000000000000 ) ) ; +#116 = CARTESIAN_POINT ( 'NONE', ( -0.2130914527635425200, 0.1769992489074203300, -0.2373531081756481100 ) ) ; +#118 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.09809027777777772100 ) ) ; +#117 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, 0.1119791666666666600 ) ) ; +#119 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.2717013888888888400 ) ) ; +#120 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, -0.1380208333333333100 ) ) ; +#121 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.08593750000000002800 ) ) ; +#122 = CARTESIAN_POINT ( 'NONE', ( -0.2520734058161877000, 0.1496121362273774000, 0.2539066454477265100 ) ) ; +#123 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.1501736111111110500 ) ) ; +#124 = CARTESIAN_POINT ( 'NONE', ( -0.2237736071878999900, 0.1622681766990339000, -0.2373531081756481100 ) ) ; +#126 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.1883680555555555000 ) ) ; +#125 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.1501736111111110500 ) ) ; +#127 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.3064236111111110500 ) ) ; +#128 = EDGE_CURVE ( 'NONE', #3297, #1152, #692, .T. ) ; +#129 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.1276041666666666900 ) ) ; +#130 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.2387152777777777900 ) ) ; +#131 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.2057291666666666300 ) ) ; +#133 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.1657986111111111000 ) ) ; +#132 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.2960069444444444800 ) ) ; +#134 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1837, #1050, #3185, #2384, #1851, #757, #2969, #2678, #1606, #529, #2938, #1023, #204, #517, #482, #2415, #1305, #2427, #3495, #3214, #1279, #2153, #3483, #3238, #2436, #2127, #792, #504, #766, #1000, #2916, #2690, #1037, #2954, #1318, #3228, #1592, #2162, #1615, #5, #1070, #1342, #1888, #3268, #3254, #1623, #3520, #803, #541, #2716, #2992, #265, #2452, #1060, #2726, #1354, #2979, #485, #209, #1266, #2120, #3189, #3463, #1556, #508, #770, #2653, #3179, #1853, #1595, #783, #741, #3232, #2706, #474, #1003, #3501, #2400, #1829, #247, #2110, #1546, #2388, #2919, #3450, #2144, #1283, #2694, #2419, #1819, #750, #521, #1580, #1054, #2683, #1029, #2669, #1864, #1042, #197, #1013, #1843, #759, #2930, #1296, #221, #2430, #3204, #2962, #1565, #2132, #1321, #2094, #2377, #3474, #235, #497, #2942, #1311, #3219, #3486, #1640, #2204, #3018, #2441, #3259, #2751, #1609, #795, #279, #2719, #1383, #2984, #33, #2486, #1358, #1064, #2156, #288 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3 ), + ( 0.08545473460203016600, 0.09375000000000000000, 0.1041666666666666700, 0.1145833333333333300, 0.1250000000000000000, 0.1354166666666666600, 0.1458333333333333400, 0.1562500000000000000, 0.1666666666666666600, 0.1770833333333333700, 0.1875000000000000000, 0.1979166666666666300, 0.2083333333333333400, 0.2187500000000000000, 0.2291666666666666900, 0.2395833333333333700, 0.2500000000000000000, 0.2604166666666666900, 0.2708333333333333100, 0.2812500000000000000, 0.2916666666666666300, 0.3020833333333333100, 0.3124999999999999400, 0.3229166666666666900, 0.3333333333333333100, 0.3437500000000000000, 0.3541666666666666900, 0.3645833333333333100, 0.3750000000000000000, 0.3854166666666666900, 0.3958333333333333100, 0.4062500000000000000, 0.4166666666666666900, 0.4270833333333333100, 0.4375000000000000000, 0.4479166666666667400, 0.4583333333333332600, 0.4687500000000000000, 0.4791666666666667400, 0.4895833333333332600, 0.5000000000000000000, 0.5104166666666666300, 0.5208333333333333700, 0.5312500000000000000, 0.5416666666666666300, 0.5520833333333333700, 0.5625000000000000000, 0.5729166666666666300, 0.5833333333333332600, 0.5937500000000000000, 0.6041666666666666300, 0.6145833333333333700, 0.6250000000000000000, 0.6354166666666666300, 0.6458333333333333700, 0.6562500000000000000, 0.6666666666666666300, 0.6770833333333333700, 0.6875000000000000000, 0.6979166666666666300, 0.7083333333333333700, 0.7187500000000000000, 0.7291666666666666300, 0.7395833333333333700, 0.7500000000000000000, 0.7604166666666666300, 0.7708333333333333700, 0.7812500000000000000, 0.7916666666666666300, 0.7974147931221766700 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9753096629729471900, 0.9393818099165045500, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9579951929941444800, 0.9623485829308073800 ) ) + REPRESENTATION_ITEM ( '' ) ); +#135 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.1710069444444444200 ) ) ; +#136 = VERTEX_POINT ( 'NONE', #398 ) ; +#137 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.09982638888888890900 ) ) ; +#138 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #3038, #42, #2817, #3314, #3076, #622, #91, #2496, #3326 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7135416666666410900, 0.7239583333333078400, 0.7343749999999744600, 0.7447916666666410900, 0.7552083333333078400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000007300, 0.9238795325112794100, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112940700, 0.9999999999999926700 ) ) + REPRESENTATION_ITEM ( '' ) ); +#139 = ORIENTED_EDGE ( 'NONE', *, *, #1146, .T. ) ; +#140 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, -0.2560763888888889500 ) ) ; +#141 = CARTESIAN_POINT ( 'NONE', ( -0.03879931603792689100, -0.3017719165131221300, 0.2650381420467940500 ) ) ; +#142 = VERTEX_POINT ( 'NONE', #2289 ) ; +#143 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#144 = DATE_AND_TIME ( #2102, #2911 ) ; +#146 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.3098958333333333100 ) ) ; +#145 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, 0.2786458333333333100 ) ) ; +#147 = EDGE_CURVE ( 'NONE', #1464, #1828, #2858, .T. ) ; +#148 = VECTOR ( 'NONE', #1910, 39.37007874015748100 ) ; +#149 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.1883680555555555000 ) ) ; +#150 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.1119791666666666700 ) ) ; +#151 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, -0.3046875000000000600 ) ) ; +#152 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.05642361111111107000 ) ) ; +#153 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.1623263888888889000 ) ) ; +#154 = VECTOR ( 'NONE', #2611, 39.37007874015748100 ) ; +#155 = ADVANCED_FACE ( 'NONE', ( #271 ), #2355, .F. ) ; +#156 = CARTESIAN_POINT ( 'NONE', ( -0.1549801845465362000, -0.4517880260982736800, -0.2686183538591386300 ) ) ; +#158 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.2213541666666666600 ) ) ; +#157 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.1935763888888889000 ) ) ; +#159 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, 0.02864583333333331800 ) ) ; +#160 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.1015624999999999400 ) ) ; +#161 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.2178819444444444500 ) ) ; +#162 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.1015624999999999400 ) ) ; +#163 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001100, -0.09121345827264477900, 0.2694998449491767300 ) ) ; +#165 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.3411458333333333100 ) ) ; +#164 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.2248263888888889000 ) ) ; +#166 = AXIS2_PLACEMENT_3D ( 'NONE', #1793, #471, #1467 ) ; +#167 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.3515624999999998900 ) ) ; +#168 = EDGE_CURVE ( 'NONE', #734, #2137, #1927, .T. ) ; +#169 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#170 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, -0.08940972222222221000 ) ) ; +#171 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, -0.06163194444444446800 ) ) ; +#172 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.2699652777777777900 ) ) ; +#173 = ORIENTED_EDGE ( 'NONE', *, *, #2700, .F. ) ; +#174 = VERTEX_POINT ( 'NONE', #2635 ) ; +#175 = ORIENTED_EDGE ( 'NONE', *, *, #714, .T. ) ; +#176 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.1571180555555555200 ) ) ; +#177 = VERTEX_POINT ( 'NONE', #2623 ) ; +#178 = ORIENTED_EDGE ( 'NONE', *, *, #214, .F. ) ; +#179 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.1640624999999999700 ) ) ; +#180 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.05498248300264053200, 0.3601743643578103100 ) ) ; +#181 = EDGE_CURVE ( 'NONE', #605, #2823, #813, .T. ) ; +#182 = CARTESIAN_POINT ( 'NONE', ( 0.1494563098256079500, 0.2426168558611580300, 0.2450059893881026400 ) ) ; +#183 = ORIENTED_EDGE ( 'NONE', *, *, #1577, .T. ) ; +#184 = CARTESIAN_POINT ( 'NONE', ( 0.1162145979915523800, -0.2507982369490968600, 0.2373531081758390700 ) ) ; +#185 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, -0.03385416666666669900 ) ) ; +#186 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.05468750000000002100 ) ) ; +#187 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#188 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.2873263888888889000 ) ) ; +#189 = ADVANCED_FACE ( 'NONE', ( #527 ), #1458, .F. ) ; +#190 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.09461805555555556600 ) ) ; +#191 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.08246527777777780400 ) ) ; +#192 = AXIS2_PLACEMENT_3D ( 'NONE', #1392, #266, #828 ) ; +#194 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, 3.827021247335478900E-017, 0.2734375000000000000 ) ) ; +#193 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.09982638888888890900 ) ) ; +#195 = EDGE_CURVE ( 'NONE', #1464, #2830, #978, .T. ) ; +#196 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#197 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, 0.1050347222222221700 ) ) ; +#198 = CYLINDRICAL_SURFACE ( 'NONE', #3519, 0.3125000000000000000 ) ; +#199 = CARTESIAN_POINT ( 'NONE', ( 0.08728820497726254300, -0.2942286109917697800, 0.2673347278874688700 ) ) ; +#200 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, 0.09809027777777772100 ) ) ; +#201 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.1032986111111111300 ) ) ; +#202 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.08593750000000002800 ) ) ; +#203 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.05989583333333332900 ) ) ; +#204 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.1970486111111111600 ) ) ; +#205 =( BOUNDED_SURFACE ( ) B_SPLINE_SURFACE ( 1, 2, ( + ( #3337, #2841, #1249, #2075, #188, #973, #1237, #2343, #3159, #172, #2634, #3147, #2890, #456, #476, #1517, #2368, #2066, #468, #2644, #2660, #3455, #2380, #2085, #161, #997, #1006, #1779, #1822, #733, #2357, #2880, #2912, #1550, #3140, #1813, #3443, #709, #2621, #964, #153, #2052, #2923, #1505, #1787, #1271, #1527, #3407, #1259, #442, #701, #2605, #3434, #718, #988, #430, #2899, #201, #3182, #3170, #2333, #3420, #1538, #2103, #1289, #3466, #3211, #3012, #569, #582, #2408, #3490, #3479, #844, #2196, #306, #1091, #2757, #1106, #2478, #3193, #2124, #2114, #1857, #2698, #1559, #3022, #1389, #489, #835, #3296, #1375, #762, #1833, #754, #2934, #1656, #3283, #502, #39, #1936, #2674, #212, #1847, #1645, #2392, #2492, #2208, #2768, #1018, #1301, #1122, #2424, #1570, #225, #2686, #1033, #25, #2949, #1587, #1315, #1921, #3225, #239, #2136, #513, #776, #292, #1145, #78, #3065, #1973, #90, #875, #1133, #2237, #1426, #345, #2532, #3052, #2793, #2248, #373, #1413, #2259, #1959, #359, #2545, #2553, #3356, #2270, #1986, #64, #896, #642, #1670, #1721, #633, #1694, #2780, #2815, #1448, #3035, #1706, #3346, #603, #2519, #858, #51, #1947, #912, #2824, #1685, #1169, #3334, #3312, #1158, #334, #592, #619, #3324, #1399, #320, #883, #99, #3086, #2803, #2220, #3074, #2507, #1995 ), + ( #1438, #3389, #3376, #698, #2041, #151, #946, #2595, #955, #418, #1179, #2019, #2003, #1755, #2585, #3095, #2866, #1223, #382, #2319, #685, #1216, #2294, #1459, #655, #2839, #3138, #3128, #393, #1502, #3405, #2562, #3365, #1743, #2856, #1733, #2331, #1777, #2603, #2284, #927, #2049, #2305, #1474, #428, #3105, #111, #1492, #666, #1484, #1190, #3397, #962, #120, #2574, #934, #129, #2030, #2847, #407, #1204, #677, #1767, #3116, #137, #2888, #1525, #170, #2354, #439, #3157, #2073, #2642, #2341, #1535, #2618, #3167, #3441, #2908, #466, #995, #1811, #707, #185, #1268, #3144, #2365, #2083, #1798, #2064, #730, #2878, #1234, #1515, #3418, #3431, #453, #971, #1246, #716, #1785, #159, #2631, #986, #2897, #1257, #1738, #2264, #1164, #3081, #1999, #1716, #1488, #1210, #106, #2301, #3384, #1455, #3394, #367, #1444, #1749, #86, #2254, #1990, #117, #2844, #2852, #1176, #2279, #638, #3122, #931, #2581, #3371, #1481, #125, #1199, #1981, #907, #889, #650, #1469, #352, #2025, #402, #2811, #3111, #673, #2013, #3091, #628, #3353, #94, #941, #388, #2818, #2540, #2550, #3361, #1729, #378, #2291, #2559, #920, #2834, #1186, #3102, #662, #2567, #2884, #2044, #723, #145, #1762, #1794, #2599, #2058, #132, #2069, #2638, #2361, #423, #3162, #433, #2337, #3413, #704, #1782, #2612, #2346 ) ), + .UNSPECIFIED., .F., .F., .T. ) + B_SPLINE_SURFACE_WITH_KNOTS ( ( 2, 2 ), + ( 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3 ), + ( 0.0000000000000000000, 1.000000000000000000 ), + ( 0.0000000000000000000, 0.01041666666666666600, 0.02083333333333333200, 0.03125000000000000000, 0.04166666666666666400, 0.05208333333333333600, 0.06250000000000000000, 0.07291666666666667100, 0.08333333333333332900, 0.09375000000000000000, 0.1041666666666666700, 0.1145833333333333300, 0.1250000000000000000, 0.1354166666666666600, 0.1458333333333333400, 0.1562500000000000000, 0.1666666666666666600, 0.1770833333333333400, 0.1875000000000000000, 0.1979166666666666600, 0.2083333333333333400, 0.2187500000000000000, 0.2291666666666666600, 0.2395833333333333400, 0.2500000000000000000, 0.2604166666666666900, 0.2708333333333333100, 0.2812500000000000000, 0.2916666666666666900, 0.3020833333333333100, 0.3125000000000000000, 0.3229166666666666900, 0.3333333333333333100, 0.3437500000000000000, 0.3541666666666666900, 0.3645833333333333100, 0.3750000000000000000, 0.3854166666666666900, 0.3958333333333333100, 0.4062500000000000000, 0.4166666666666666900, 0.4270833333333333100, 0.4375000000000000000, 0.4479166666666666900, 0.4583333333333333100, 0.4687500000000000000, 0.4791666666666666900, 0.4895833333333333100, 0.5000000000000000000, 0.5104166666666666300, 0.5208333333333333700, 0.5312500000000000000, 0.5416666666666666300, 0.5520833333333333700, 0.5625000000000000000, 0.5729166666666666300, 0.5833333333333333700, 0.5937500000000000000, 0.6041666666666666300, 0.6145833333333333700, 0.6250000000000000000, 0.6354166666666666300, 0.6458333333333333700, 0.6562500000000000000, 0.6666666666666666300, 0.6770833333333333700, 0.6875000000000000000, 0.6979166666666666300, 0.7083333333333333700, 0.7187500000000000000, 0.7291666666666666300, 0.7395833333333333700, 0.7500000000000000000, 0.7604166666666666300, 0.7708333333333333700, 0.7812500000000000000, 0.7916666666666666300, 0.8020833333333333700, 0.8125000000000000000, 0.8229166666666666300, 0.8333333333333333700, 0.8437500000000000000, 0.8541666666666666300, 0.8645833333333333700, 0.8750000000000000000, 0.8854166666666666300, 0.8958333333333333700, 0.9062500000000000000, 0.9166666666666666300, 0.9270833333333333700, 0.9375000000000000000, 0.9479166666666666300, 0.9583333333333333700, 0.9687500000000000000, 0.9791666666666666300, 0.9843749999999758000 ), + .UNSPECIFIED. ) + GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_SURFACE ( ( + ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9619397662558202300, 0.9619397662556433700), + ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9619397662558202300, 0.9619397662556433700) ) ) + REPRESENTATION_ITEM ( '' ) SURFACE ( ) ); +#207 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.02290461294865955500, 0.2734375000000000000 ) ) ; +#206 = CARTESIAN_POINT ( 'NONE', ( -0.2343749999999999700, -0.4059494080239557400, 0.2734375000000000000 ) ) ; +#208 = CARTESIAN_POINT ( 'NONE', ( 0.2772010700451431600, 0.03802272024483136600, 0.2400569583340087500 ) ) ; +#209 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.03732638888888892300 ) ) ; +#210 = SECURITY_CLASSIFICATION ( '', '', #672 ) ; +#211 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.3376736111111111000 ) ) ; +#212 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.05295138888888887400 ) ) ; +#213 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.2144097222222222100 ) ) ; +#214 = EDGE_CURVE ( 'NONE', #2657, #2487, #731, .T. ) ; +#215 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.07031249999999994400 ) ) ; +#216 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#218 = DIRECTION ( 'NONE', ( 1.000000000000000000, 1.776356839400250500E-015, 0.0000000000000000000 ) ) ; +#217 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.1293402777777777600 ) ) ; +#219 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#220 = ORIENTED_EDGE ( 'NONE', *, *, #725, .F. ) ; +#221 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.1258680555555555000 ) ) ; +#222 = CARTESIAN_POINT ( 'NONE', ( 0.2836944762139514400, -0.1291259300954577500, 0.2721388244374726700 ) ) ; +#223 = ORIENTED_EDGE ( 'NONE', *, *, #911, .F. ) ; +#224 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.1467013888888888400 ) ) ; +#225 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.09461805555555552500 ) ) ; +#226 = VERTEX_POINT ( 'NONE', #690 ) ; +#227 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#228 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.06510416666666669900 ) ) ; +#230 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#229 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#231 = ORIENTED_EDGE ( 'NONE', *, *, #1352, .T. ) ; +#232 = APPROVAL_DATE_TIME ( #144, #3016 ) ; +#233 = CARTESIAN_POINT ( 'NONE', ( -0.01451465360659664900, 0.2770009972162949000, -0.2379384972162948700 ) ) ; +#234 = CARTESIAN_POINT ( 'NONE', ( 0.2343750000000000800, 0.4059494080239557900, 0.2734375000000000000 ) ) ; +#235 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, 0.1605902777777777300 ) ) ; +#236 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.1831597222222222400 ) ) ; +#237 = CYLINDRICAL_SURFACE ( 'NONE', #2654, 0.3125000000000000000 ) ; +#238 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.2890625000000000000 ) ) ; +#239 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.1258680555555555200 ) ) ; +#240 = CONICAL_SURFACE ( 'NONE', #922, 0.4687500000000000000, 1.047197551196600100 ) ; +#241 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.04427083333333334300 ) ) ; +#242 = CARTESIAN_POINT ( 'NONE', ( 0.2343749999999999400, 0.4059494080239556300, -0.2734375000000000000 ) ) ; +#244 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, -0.2706329386826372100, 0.2315704386826372700 ) ) ; +#243 = CARTESIAN_POINT ( 'NONE', ( 1.643166561121255400E-016, -0.5412658773652743200, 0.2315704386826372100 ) ) ; +#245 = CARTESIAN_POINT ( 'NONE', ( -0.02901186122359627000, 0.2755810741471187400, -0.2376508157215096700 ) ) ; +#246 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#247 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756481400, 0.03559027777777770700 ) ) ; +#248 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.2630208333333333700 ) ) ; +#249 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1862, #3217, #1842, #1578, #2534, #2295, #935, #2145, #2431 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4791666666666668000, 0.4895833333333333700, 0.5000000000000000000, 0.5104166666666666300, 0.5208333333333333700 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9999999999999992200, 0.9238795325112875200, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#250 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.2751736111111111000 ) ) ; +#251 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000000000, 5.914624404477006300E-017, -0.2734375000000000000 ) ) ; +#252 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.1710069444444443900 ) ) ; +#254 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.2387152777777777900 ) ) ; +#253 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.1293402777777777600 ) ) ; +#255 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.007812499999999994800 ) ) ; +#256 = CARTESIAN_POINT ( 'NONE', ( -0.02003547141447111300, -0.2947411374710192100, -0.2561916630851061000 ) ) ; +#257 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.1657986111111111600 ) ) ; +#258 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.2630208333333333700 ) ) ; +#259 = PLANE ( 'NONE', #1212 ) ; +#260 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.02343750000000001400 ) ) ; +#261 = EDGE_CURVE ( 'NONE', #671, #3338, #1509, .T. ) ; +#262 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.2404513888888888700 ) ) ; +#263 = ORIENTED_EDGE ( 'NONE', *, *, #2886, .T. ) ; +#264 = ORIENTED_EDGE ( 'NONE', *, *, #214, .T. ) ; +#265 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, -0.06163194444444446800 ) ) ; +#267 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.05989583333333329400 ) ) ; +#266 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#268 = ORIENTED_EDGE ( 'NONE', *, *, #3322, .F. ) ; +#269 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#270 = CARTESIAN_POINT ( 'NONE', ( -0.009987484229415068100, -0.2950695859315691800, -0.2560070859315690700 ) ) ; +#271 = FACE_OUTER_BOUND ( 'NONE', #2701, .T. ) ; +#272 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.1206597222222222700 ) ) ; +#273 = VERTEX_POINT ( 'NONE', #1518 ) ; +#274 = CARTESIAN_POINT ( 'NONE', ( 0.2969962316056814500, -0.03236027277745193200, 0.2589397693955113900 ) ) ; +#275 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.1553819444444444800 ) ) ; +#276 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.3168402777777777900 ) ) ; +#277 = PERSON_AND_ORGANIZATION ( #3475, #860 ) ; +#278 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000001700, -0.1294417382415920000, -0.2560763888888889000 ) ) ; +#279 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608500, 0.2764156081756481400, 0.2092013888888889200 ) ) ; +#280 = LINE ( 'NONE', #194, #3055 ) ; +#281 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.1345486111111111300 ) ) ; +#282 = CARTESIAN_POINT ( 'NONE', ( 0.09173155901683433000, -0.2785528122904682400, -0.2540546773080469800 ) ) ; +#283 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.03038194444444446800 ) ) ; +#284 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.2092013888888889200 ) ) ; +#286 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.1484375000000000000 ) ) ; +#285 = PLANE ( 'NONE', #446 ) ; +#287 = CARTESIAN_POINT ( 'NONE', ( -0.08789723892552457600, 0.2769535043509220900, -0.2506368109158443900 ) ) ; +#288 = CARTESIAN_POINT ( 'NONE', ( 0.1162145979915523800, -0.2507982369490968600, 0.2373531081758390700 ) ) ; +#289 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.04947916666666661600 ) ) ; +#290 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.2699652777777777900 ) ) ; +#291 = CARTESIAN_POINT ( 'NONE', ( 0.2484795699748181800, 0.1363094815631381900, -0.2441943389642061400 ) ) ; +#292 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.1397569444444443900 ) ) ; +#293 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, -0.06857638888888889500 ) ) ; +#294 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.2265624999999999400 ) ) ; +#296 = CARTESIAN_POINT ( 'NONE', ( -1.313478095563946000E-016, 0.5412658773652743200, 0.2734375000000000000 ) ) ; +#295 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.1206597222222222400 ) ) ; +#297 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.1015624999999999900 ) ) ; +#298 = CARTESIAN_POINT ( 'NONE', ( 0.3137698154534637200, -0.3601107899496376300, 0.2686183538591386300 ) ) ; +#299 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -0.2986111111111111600, 0.2595486111111110500 ) ) ; +#300 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.1345486111111111300 ) ) ; +#301 = ORIENTED_EDGE ( 'NONE', *, *, #3427, .T. ) ; +#302 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.2526041666666667400 ) ) ; +#303 = VERTEX_POINT ( 'NONE', #2891 ) ; +#304 = CARTESIAN_POINT ( 'NONE', ( 0.01881297564840292100, -0.2945505528641210700, -0.2554880528641209100 ) ) ; +#305 = VERTEX_POINT ( 'NONE', #2608 ) ; +#306 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.04079861111111114700 ) ) ; +#307 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, -0.1102430555555555800 ) ) ; +#308 = EDGE_CURVE ( 'NONE', #688, #2901, #2937, .T. ) ; +#309 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#310 = CARTESIAN_POINT ( 'NONE', ( -3.611355980669890100E-017, -0.2948895945495678100, -0.2558270945495677000 ) ) ; +#311 = ORIENTED_EDGE ( 'NONE', *, *, #1949, .F. ) ; +#312 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #607, #2521, #584, #2772, #2795, #361, #68, #2211 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 4 ), + ( 0.006955677797892809500, 0.008688035829550249900, 0.01042039386120768900, 0.01388510992452257300 ), + .UNSPECIFIED. ) ; +#313 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, 0.1675347222222222400 ) ) ; +#314 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, 3.827021247335478900E-017, 0.2734375000000000000 ) ) ; +#315 = VERTEX_POINT ( 'NONE', #1802 ) ; +#316 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.02517361111111109500 ) ) ; +#317 = CYLINDRICAL_SURFACE ( 'NONE', #28, 0.3125000000000000000 ) ; +#318 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.04600694444444438500 ) ) ; +#319 = CARTESIAN_POINT ( 'NONE', ( 0.2720213489732817800, 0.08508827081771143400, -0.2453365964888341900 ) ) ; +#320 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.3307291666666667400 ) ) ; +#321 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.1144950937579609200, 0.02170138888888883300 ) ) ; +#322 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.1015624999999999400 ) ) ; +#323 = CC_DESIGN_SECURITY_CLASSIFICATION ( #210, ( #1416 ) ) ; +#324 = FACE_OUTER_BOUND ( 'NONE', #3256, .T. ) ; +#326 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999902300, -0.1294417382416019600, 0.2508680555555558600 ) ) ; +#325 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#327 = CARTESIAN_POINT ( 'NONE', ( -0.1733009429236611600, 0.2229573216001672900, -0.2431037951466045500 ) ) ; +#328 = CARTESIAN_POINT ( 'NONE', ( -0.2720941079647003500, 0.1412064160399314200, -0.2673280723702559100 ) ) ; +#329 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.1032986111111111600 ) ) ; +#330 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #2467, #2705, #1357, #2454, #520, #2941, #2961, #507 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 4 ), + ( 0.006955677797892807800, 0.008688035829550251600, 0.01042039386120769500, 0.01388510992452258000 ), + .UNSPECIFIED. ) ; +#331 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.08940972222222226500 ) ) ; +#332 = CARTESIAN_POINT ( 'NONE', ( 0.1751425600399423600, 0.2206145265972393200, -0.2420022519538982700 ) ) ; +#333 = EDGE_CURVE ( 'NONE', #2830, #564, #1480, .T. ) ; +#334 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.3133680555555555200 ) ) ; +#335 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.01475694444444441300 ) ) ; +#337 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, -0.2706329386826372100, 0.2315704386826372700 ) ) ; +#336 = CARTESIAN_POINT ( 'NONE', ( 0.2604956724701250100, 0.1726217095974237900, 0.2734375000000000600 ) ) ; +#338 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #1820, #743, #2641, #994, #199, #2121, #3180, #2390, #1548, #752, #2671, #3452, #1566, #499, #222, #2098, #2403, #2656 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 2, 2, 4 ), + ( 0.03725695000951884800, 0.03859610720687845600, 0.03993526440423807200, 0.04127442160159768000, 0.04261357879895728800, 0.04395273599631690400, 0.04529189319367651200, 0.04663105039103612000, 0.04797020758839572900 ), + .UNSPECIFIED. ) ; +#339 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#340 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#341 = CARTESIAN_POINT ( 'NONE', ( -0.1848475707299830400, 0.2482632130785976400, -0.2698255820161652400 ) ) ; +#342 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.08246527777777784600 ) ) ; +#343 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.09461805555555549700 ) ) ; +#344 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.1987847222222221500 ) ) ; +#345 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.1744791666666666000 ) ) ; +#346 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.3376736111111111600 ) ) ; +#347 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#348 = CARTESIAN_POINT ( 'NONE', ( -0.1522048859638101500, 0.2309107413216026600, -0.2373531081756481700 ) ) ; +#349 = CARTESIAN_POINT ( 'NONE', ( -0.2815308136503371600, -0.1095746491732169800, -0.2625553791670144900 ) ) ; +#350 = ORIENTED_EDGE ( 'NONE', *, *, #1048, .T. ) ; +#351 = ORIENTED_EDGE ( 'NONE', *, *, #449, .T. ) ; +#353 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.2196180555555555200 ) ) ; +#352 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.1744791666666666300 ) ) ; +#354 = ORIENTED_EDGE ( 'NONE', *, *, #2386, .F. ) ; +#355 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.1189236111111110800 ) ) ; +#356 = ORIENTED_EDGE ( 'NONE', *, *, #2071, .F. ) ; +#357 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999905100, -0.1294417382416017100, 0.1953125000000003600 ) ) ; +#358 = ADVANCED_FACE ( 'NONE', ( #1434 ), #1386, .F. ) ; +#359 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.2057291666666666600 ) ) ; +#360 = ORIENTED_EDGE ( 'NONE', *, *, #2952, .T. ) ; +#361 = CARTESIAN_POINT ( 'NONE', ( -0.3919410589494880500, 0.3149786014743203900, -0.2548427262045494000 ) ) ; +#362 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #47, #3318, #2798, #2810, #365, #2230, #2525, #598, #637 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7291666666666667400, 0.7395833333333334800, 0.7500000000000000000, 0.7604166666666666300, 0.7708333333333333700 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9999999999999992200, 0.9238795325112875200, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#363 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#364 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.03038194444444446800 ) ) ; +#365 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.2265624999999999700 ) ) ; +#366 = LINE ( 'NONE', #878, #2233 ) ; +#368 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.08420138888888882600 ) ) ; +#367 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.09114583333333332900 ) ) ; +#369 = CIRCLE ( 'NONE', #893, 0.3125000000000000000 ) ; +#370 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.02690972222222227600 ) ) ; +#371 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000001100, -0.09121345827287624700, -0.2694998449491513000 ) ) ; +#372 = EDGE_CURVE ( 'NONE', #531, #3453, #3480, .T. ) ; +#373 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.1918402777777777300 ) ) ; +#374 = CYLINDRICAL_SURFACE ( 'NONE', #2802, 0.3125000000000000000 ) ; +#375 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.1276041666666666900 ) ) ; +#376 = CARTESIAN_POINT ( 'NONE', ( -0.1730176426305037900, 0.2339010773457998700, 0.2517154029754680700 ) ) ; +#377 = ADVANCED_FACE ( 'NONE', ( #2920 ), #1599, .T. ) ; +#379 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.2300347222222221500 ) ) ; +#378 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.2369791666666666600 ) ) ; +#380 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.1779513888888888100 ) ) ; +#381 = EDGE_CURVE ( 'NONE', #1067, #564, #667, .T. ) ; +#382 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.2595486111111111000 ) ) ; +#383 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.1102430555555555800 ) ) ; +#384 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.05295138888888887400 ) ) ; +#385 = CARTESIAN_POINT ( 'NONE', ( -0.1958862073290613400, 0.2158603224868199900, 0.2522662519650955000 ) ) ; +#386 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.2526041666666666900 ) ) ; +#387 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.02517361111111109500 ) ) ; +#389 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.1154513888888888500 ) ) ; +#388 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, 0.2161458333333332900 ) ) ; +#390 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.2473958333333332900 ) ) ; +#391 = ORIENTED_EDGE ( 'NONE', *, *, #3230, .T. ) ; +#392 = CC_DESIGN_DATE_AND_TIME_ASSIGNMENT ( #2363, #3422, ( #210 ) ) ; +#393 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.2248263888888889000 ) ) ; +#394 = ORIENTED_EDGE ( 'NONE', *, *, #1401, .T. ) ; +#395 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.004340277777777732000 ) ) ; +#396 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.1953125000000000000 ) ) ; +#397 = ORIENTED_EDGE ( 'NONE', *, *, #2439, .T. ) ; +#398 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, -0.2706329386826372100, -0.2315704386826372700 ) ) ; +#399 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.01302083333333333400 ) ) ; +#400 = AXIS2_PLACEMENT_3D ( 'NONE', #1961, #885, #2547 ) ; +#401 = EDGE_LOOP ( 'NONE', ( #1063, #1373, #1884, #2225 ) ) ; +#403 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.2022569444444443900 ) ) ; +#402 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.1814236111111111600 ) ) ; +#404 = EDGE_CURVE ( 'NONE', #226, #305, #1987, .T. ) ; +#405 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.2682291666666666300 ) ) ; +#406 = ORIENTED_EDGE ( 'NONE', *, *, #801, .T. ) ; +#407 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, -0.1171875000000000000 ) ) ; +#408 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1601, #3506, #1867, #2123, #501, #2433, #1057, #537, #3263 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1302083333333078100, 0.1406249999999744400, 0.1510416666666410700, 0.1614583333333078100, 0.1718749999999744400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000007500, 0.9238795325112791900, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112942900, 0.9999999999999924500 ) ) + REPRESENTATION_ITEM ( '' ) ); +#409 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.2144097222222222100 ) ) ; +#410 = FACE_OUTER_BOUND ( 'NONE', #1605, .T. ) ; +#411 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.2126736111111110800 ) ) ; +#412 = ADVANCED_FACE ( 'NONE', ( #3467 ), #2192, .T. ) ; +#413 = CONICAL_SURFACE ( 'NONE', #1350, 0.4687500000000000000, 1.047197551196600100 ) ; +#415 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.2282986111111111600 ) ) ; +#414 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.09288194444444444800 ) ) ; +#416 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.2612847222222222100 ) ) ; +#417 = ORIENTED_EDGE ( 'NONE', *, *, #261, .T. ) ; +#418 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.2907986111111111000 ) ) ; +#419 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.04774305555555556600 ) ) ; +#420 = CARTESIAN_POINT ( 'NONE', ( -0.2703483262305100800, 0.1152480881191507600, 0.2546674716328353700 ) ) ; +#421 = CARTESIAN_POINT ( 'NONE', ( 1.643166561121255400E-016, -0.5412658773652743200, 0.2315704386826372100 ) ) ; +#422 = VERTEX_POINT ( 'NONE', #2125 ) ; +#424 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.2734375000000000000 ) ) ; +#423 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.3098958333333333700 ) ) ; +#425 = AXIS2_PLACEMENT_3D ( 'NONE', #761, #2998, #1846 ) ; +#426 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.2265624999999999200 ) ) ; +#427 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.2682291666666666300 ) ) ; +#428 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.1692708333333333400 ) ) ; +#429 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.09114583333333332900 ) ) ; +#430 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.1102430555555555800 ) ) ; +#431 = CARTESIAN_POINT ( 'NONE', ( 0.1944444454972853700, -0.4290033244149891200, 0.2734375000000002800 ) ) ; +#432 = CARTESIAN_POINT ( 'NONE', ( -0.07680894105051197500, -0.4969202145735912000, -0.2548427262045495100 ) ) ; +#434 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.3203124999999999400 ) ) ; +#433 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.3168402777777777900 ) ) ; +#435 = CARTESIAN_POINT ( 'NONE', ( 0.04483170022892262600, 0.2837087815048942000, 0.2472709864685902200 ) ) ; +#436 = ORIENTED_EDGE ( 'NONE', *, *, #515, .T. ) ; +#437 = ORIENTED_EDGE ( 'NONE', *, *, #2759, .T. ) ; +#438 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.2543402777777777300 ) ) ; +#439 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, -0.08246527777777780400 ) ) ; +#440 = ORIENTED_EDGE ( 'NONE', *, *, #195, .F. ) ; +#441 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, 0.1258680555555555200 ) ) ; +#442 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.1310763888888889000 ) ) ; +#443 = EDGE_LOOP ( 'NONE', ( #977, #3370, #406, #139 ) ) ; +#444 = ADVANCED_FACE ( 'NONE', ( #1807 ), #1343, .F. ) ; +#445 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.09114583333333334300 ) ) ; +#446 = AXIS2_PLACEMENT_3D ( 'NONE', #2980, #804, #1365 ) ; +#447 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#448 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.3515624999999998900 ) ) ; +#449 = EDGE_CURVE ( 'NONE', #671, #2864, #1298, .T. ) ; +#450 = APPROVAL_PERSON_ORGANIZATION ( #277, #1596, #680 ) ; +#451 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.2526041666666666900 ) ) ; +#452 = PLANE ( 'NONE', #3194 ) ; +#453 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.01128472222222218600 ) ) ; +#454 = CIRCLE ( 'NONE', #1529, 0.3125000000000000000 ) ; +#455 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.009548611111111141400 ) ) ; +#456 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.2560763888888889500 ) ) ; +#457 = CONICAL_SURFACE ( 'NONE', #1870, 0.4687500000000000000, 1.047197551196600100 ) ; +#458 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.1640624999999999700 ) ) ; +#459 = APPLICATION_CONTEXT ( 'configuration controlled 3d designs of mechanical parts and assemblies' ) ; +#460 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#462 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.3550347222222222100 ) ) ; +#461 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.1762152777777777900 ) ) ; +#463 = CARTESIAN_POINT ( 'NONE', ( 0.07773086470708570600, 0.2751122259318038400, 0.2465953408541865200 ) ) ; +#464 = ADVANCED_FACE ( 'NONE', ( #1894 ), #2111, .F. ) ; +#465 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#466 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.04774305555555556600 ) ) ; +#467 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.02343750000000001400 ) ) ; +#468 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.2387152777777778200 ) ) ; +#469 = CARTESIAN_POINT ( 'NONE', ( -0.2343750000000002200, 0.4059494080239556300, 0.2734375000000000000 ) ) ; +#470 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.04079861111111114700 ) ) ; +#471 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#472 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#473 = CARTESIAN_POINT ( 'NONE', ( -0.3917885952323239600, -0.3150666264424668600, -0.2548796692176172900 ) ) ; +#474 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.01822916666666664000 ) ) ; +#475 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.2855902777777777900 ) ) ; +#476 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.2526041666666666900 ) ) ; +#477 = ORIENTED_EDGE ( 'NONE', *, *, #2759, .F. ) ; +#478 = ORIENTED_EDGE ( 'NONE', *, *, #2039, .T. ) ; +#479 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#480 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.01822916666666667500 ) ) ; +#481 = ORIENTED_EDGE ( 'NONE', *, *, #2462, .T. ) ; +#482 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.1901041666666667100 ) ) ; +#483 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#484 = CARTESIAN_POINT ( 'NONE', ( 0.2423726567538608500, 0.1448102801358190900, 0.2423581327062353500 ) ) ; +#485 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.04079861111111114700 ) ) ; +#486 = ORIENTED_EDGE ( 'NONE', *, *, #740, .F. ) ; +#487 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.1710069444444444200 ) ) ; +#488 = ORIENTED_EDGE ( 'NONE', *, *, #1521, .F. ) ; +#489 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.004340277777777766700 ) ) ; +#490 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.06857638888888889500 ) ) ; +#491 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.07725694444444440600 ) ) ; +#492 = AXIS2_PLACEMENT_3D ( 'NONE', #2142, #494, #2399 ) ; +#494 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#493 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#495 = EDGE_CURVE ( 'NONE', #3335, #1376, #2594, .T. ) ; +#496 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.04427083333333334300 ) ) ; +#497 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.1640624999999999700 ) ) ; +#498 = VECTOR ( 'NONE', #2684, 39.37007874015748100 ) ; +#499 = CARTESIAN_POINT ( 'NONE', ( 0.2756935308652284100, -0.1447328427162128100, 0.2718151609298640200 ) ) ; +#500 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.3237847222222222100 ) ) ; +#501 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.2335069444444444500 ) ) ; +#502 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.03906249999999996500 ) ) ; +#503 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.1067708333333333600 ) ) ; +#504 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, -0.1144950937579609900, -0.1449652777777778500 ) ) ; +#505 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#506 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#507 = CARTESIAN_POINT ( 'NONE', ( -1.313478095563946000E-016, 0.5412658773652743200, -0.2315704386826372100 ) ) ; +#508 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.01649305555555559400 ) ) ; +#509 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.1796875000000000600 ) ) ; +#510 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #3241, #3499, #1319, #2704, #496, #2681, #3485, #2417, #1028 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5468749999999745800, 0.5572916666666412100, 0.5677083333333079500, 0.5781249999999745800, 0.5885416666666412100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000006400, 0.9238795325112803000, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112931800, 0.9999999999999935600 ) ) + REPRESENTATION_ITEM ( '' ) ); +#511 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.3585069444444444800 ) ) ; +#512 = CARTESIAN_POINT ( 'NONE', ( 0.2604956724701250100, 0.1726217095974237900, 0.2734375000000000600 ) ) ; +#513 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.1328124999999999700 ) ) ; +#514 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#515 = EDGE_CURVE ( 'NONE', #3156, #22, #1250, .T. ) ; +#516 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.09461805555555552500 ) ) ; +#517 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.1144950937579609200, -0.1935763888888889200 ) ) ; +#519 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#518 = CARTESIAN_POINT ( 'NONE', ( 0.4304093251952710900, 0.2927689376020594100, 0.2443506636175588900 ) ) ; +#520 = CARTESIAN_POINT ( 'NONE', ( 0.1353502125380837400, 0.4631213957215384900, -0.2657820503820232900 ) ) ; +#521 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, -0.1144950937579609900, 0.07725694444444436400 ) ) ; +#522 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999999400, 0.1294417382415923900, -0.2074652777777778700 ) ) ; +#523 = VERTEX_POINT ( 'NONE', #2228 ) ; +#524 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.2335069444444444500 ) ) ; +#525 = VERTEX_POINT ( 'NONE', #1150 ) ; +#526 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.1640624999999999700 ) ) ; +#527 = FACE_OUTER_BOUND ( 'NONE', #2016, .T. ) ; +#528 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.2751736111111110500 ) ) ; +#529 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.2074652777777778500 ) ) ; +#530 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#531 = VERTEX_POINT ( 'NONE', #596 ) ; +#532 = CARTESIAN_POINT ( 'NONE', ( -0.05947691602064214500, -0.2904668552212538700, -0.2569364546917712900 ) ) ; +#533 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.2144097222222222700 ) ) ; +#534 = LINE ( 'NONE', #2037, #2583 ) ; +#535 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2664, #2926, #1563, #3472, #193, #758, #3239, #1024, #2939 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6302083333333078400, 0.6406249999999744600, 0.6510416666666410900, 0.6614583333333078400, 0.6718749999999744600 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000007300, 0.9238795325112794100, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112940700, 0.9999999999999926700 ) ) + REPRESENTATION_ITEM ( '' ) ); +#536 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.2317708333333333700 ) ) ; +#537 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999901200, 0.1294417382416020400, 0.2230902777777781000 ) ) ; +#538 = CYLINDRICAL_SURFACE ( 'NONE', #712, 0.3125000000000000000 ) ; +#539 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, -0.1657986111111111000 ) ) ; +#540 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.2925347222222222100 ) ) ; +#541 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.07204861111111116000 ) ) ; +#542 = VECTOR ( 'NONE', #1823, 39.37007874015748100 ) ; +#543 = CARTESIAN_POINT ( 'NONE', ( 0.1973371881492212200, -0.1937630819901021400, 0.2373531081756480900 ) ) ; +#544 = ADVANCED_FACE ( 'NONE', ( #2369 ), #3060, .T. ) ; +#545 = EDGE_CURVE ( 'NONE', #273, #1278, #2549, .T. ) ; +#546 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.03732638888888892300 ) ) ; +#547 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.1935763888888889200 ) ) ; +#548 = CARTESIAN_POINT ( 'NONE', ( 0.2485269069328910100, -0.1486589563065656100, 0.2497681589955352000 ) ) ; +#549 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, -0.06163194444444446800 ) ) ; +#550 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.2057291666666666600 ) ) ; +#552 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#551 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999996700, 0.1294417382415925500, -0.1171875000000000300 ) ) ; +#553 = CARTESIAN_POINT ( 'NONE', ( 0.2743055545027148200, 0.3828954916329223000, 0.2734375000000002800 ) ) ; +#554 = CARTESIAN_POINT ( 'NONE', ( -0.1351255844245243800, -0.2658338525310466900, -0.2584756705726091700 ) ) ; +#555 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.2317708333333333700 ) ) ; +#556 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.1727430555555556100 ) ) ; +#557 = CARTESIAN_POINT ( 'NONE', ( 0.07376745014672843300, -0.2842184767070860000, -0.2544219300491861700 ) ) ; +#558 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.007812499999999994800 ) ) ; +#559 = EDGE_CURVE ( 'NONE', #1067, #1464, #2413, .T. ) ; +#560 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.2369791666666666600 ) ) ; +#561 = VERTEX_POINT ( 'NONE', #647 ) ; +#562 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.2317708333333333700 ) ) ; +#563 = EDGE_LOOP ( 'NONE', ( #301, #360, #1495 ) ) ; +#564 = VERTEX_POINT ( 'NONE', #3360 ) ; +#565 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.01822916666666664000 ) ) ; +#566 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.1796875000000000600 ) ) ; +#567 = VERTEX_POINT ( 'NONE', #2372 ) ; +#568 = CARTESIAN_POINT ( 'NONE', ( 0.2860137763505492000, -0.02581024905078616700, -0.2475052274563833100 ) ) ; +#569 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.06510416666666669900 ) ) ; +#570 = VERTEX_POINT ( 'NONE', #2360 ) ; +#571 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.01822916666666667500 ) ) ; +#572 = CARTESIAN_POINT ( 'NONE', ( 0.2553747228603364100, 0.1057796736954687400, 0.3550347222222054500 ) ) ; +#573 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#574 = AXIS2_PLACEMENT_3D ( 'NONE', #483, #1575, #2141 ) ; +#575 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.1831597222222222400 ) ) ; +#576 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608500, 0.2764156081756481400, 0.2022569444444444200 ) ) ; +#577 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#578 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.02690972222222227600 ) ) ; +#579 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.2144097222222222700 ) ) ; +#580 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#581 = EDGE_CURVE ( 'NONE', #3453, #2743, #1078, .T. ) ; +#582 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.06163194444444446800 ) ) ; +#583 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.1831597222222222400 ) ) ; +#585 = CARTESIAN_POINT ( 'NONE', ( -0.2743055545027147700, -0.3828954916329225200, 0.2734375000000002800 ) ) ; +#584 = CARTESIAN_POINT ( 'NONE', ( -0.2742454859208599000, 0.3829301722448262300, -0.2724479197730277400 ) ) ; +#586 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #1939, #3301, #2251, #1697, #82, #1440, #1976, #347 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 4 ), + ( 0.04008594190778851100, 0.04356577904936951400, 0.04530569762016001300, 0.04704561619095051100 ), + .UNSPECIFIED. ) ; +#587 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.09461805555555552500 ) ) ; +#588 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.2664930555555555800 ) ) ; +#589 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#590 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.1241319444444444900 ) ) ; +#591 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.04774305555555560100 ) ) ; +#592 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.3168402777777777900 ) ) ; +#593 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756481400, 0.02864583333333328700 ) ) ; +#594 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.08420138888888892300 ) ) ; +#595 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.2578125000000000000 ) ) ; +#596 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.05815972222222225200 ) ) ; +#597 = CARTESIAN_POINT ( 'NONE', ( 0.2343750000000002200, -0.4059494080239556300, 0.2734375000000000000 ) ) ; +#598 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, 0.2369791666666666600 ) ) ; +#599 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.09288194444444448900 ) ) ; +#600 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.01128472222222218600 ) ) ; +#601 = AXIS2_PLACEMENT_3D ( 'NONE', #3155, #1030, #2896 ) ; +#602 = ORIENTED_EDGE ( 'NONE', *, *, #3114, .T. ) ; +#603 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.2717013888888887800 ) ) ; +#604 = AXIS2_PLACEMENT_3D ( 'NONE', #2882, #143, #1226 ) ; +#605 = VERTEX_POINT ( 'NONE', #2637 ) ; +#606 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.3515624999999999400 ) ) ; +#608 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#607 = CARTESIAN_POINT ( 'NONE', ( -0.2343750000000002200, 0.4059494080239555200, -0.2734375000000000000 ) ) ; +#609 = VECTOR ( 'NONE', #3359, 39.37007874015748100 ) ; +#610 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #337, #55, #2241, #2212, #585, #849 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 2.380729676765279200E-007, 0.003477957935430242200, 0.006955677797892807800 ), + .UNSPECIFIED. ) ; +#611 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.2057291666666666600 ) ) ; +#612 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, 6.829619984160658000E-017, 0.2734375000000000000 ) ) ; +#613 = CARTESIAN_POINT ( 'NONE', ( -0.2410508137930720000, 0.1919232411162573900, -0.2684254147315004400 ) ) ; +#614 = ORIENTED_EDGE ( 'NONE', *, *, #1341, .F. ) ; +#615 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.08940972222222226500 ) ) ; +#616 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.03732638888888892300 ) ) ; +#617 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#618 = CIRCLE ( 'NONE', #1909, 0.4687500000000000000 ) ; +#619 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.3203124999999999400 ) ) ; +#620 = CARTESIAN_POINT ( 'NONE', ( 0.09897852740308522900, 0.2870530443728883100, -0.2639244698349547100 ) ) ; +#621 = CYLINDRICAL_SURFACE ( 'NONE', #1897, 0.3125000000000000000 ) ; +#622 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.1588541666666666900 ) ) ; +#623 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #843, #1119, #892, #97, #438, #1437, #2329, #1985, #427 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7708333333333333700, 0.7812500000000000000, 0.7916666666666667400, 0.8020833333333334800, 0.8125000000000001100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112859600, 1.000000000000000900 ) ) + REPRESENTATION_ITEM ( '' ) ); +#624 = ADVANCED_FACE ( 'NONE', ( #3352 ), #1513, .F. ) ; +#625 = CARTESIAN_POINT ( 'NONE', ( -0.1292612123523788900, 0.2449880909914745900, -0.2373531081756482000 ) ) ; +#626 = CARTESIAN_POINT ( 'NONE', ( -0.07886522647263168000, 0.3015752298266553600, -0.2720233272415622500 ) ) ; +#627 = FACE_OUTER_BOUND ( 'NONE', #3196, .T. ) ; +#629 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.1918402777777777100 ) ) ; +#628 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.2022569444444443900 ) ) ; +#630 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.01996527777777782100 ) ) ; +#631 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#632 = EDGE_CURVE ( 'NONE', #2487, #1059, #1404, .T. ) ; +#633 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.2439236111111110500 ) ) ; +#634 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, -0.1796875000000000600 ) ) ; +#635 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000005000, 0.1294417382415917200, -0.09635416666666667100 ) ) ; +#636 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, -0.2706329386826369400, 0.2734375000000000000 ) ) ; +#637 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.2404513888888889000 ) ) ; +#639 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.2508680555555555200 ) ) ; +#638 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.1293402777777777600 ) ) ; +#640 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.04427083333333337700 ) ) ; +#641 = ADVANCED_FACE ( 'NONE', ( #627 ), #2629, .F. ) ; +#642 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.2335069444444443900 ) ) ; +#643 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.2734375000000000000 ) ) ; +#644 = CARTESIAN_POINT ( 'NONE', ( -0.2861837520851097100, -0.08381342016684728600, 0.2585092938868017700 ) ) ; +#645 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, 1.000000000000000000 ) ) ; +#646 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000002200, 0.2268628408710126900, 0.2442057775596361300 ) ) ; +#647 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001100, 0.2706329386826371600, 0.2315704386826372700 ) ) ; +#648 = VERTEX_POINT ( 'NONE', #2558 ) ; +#649 = ORIENTED_EDGE ( 'NONE', *, *, #2928, .T. ) ; +#651 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.2925347222222221500 ) ) ; +#650 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, 0.1675347222222221800 ) ) ; +#652 = ORIENTED_EDGE ( 'NONE', *, *, #495, .T. ) ; +#653 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.2196180555555555200 ) ) ; +#654 = ORIENTED_EDGE ( 'NONE', *, *, #1073, .F. ) ; +#655 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.2387152777777778200 ) ) ; +#656 = ORIENTED_EDGE ( 'NONE', *, *, #128, .T. ) ; +#657 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.1067708333333333600 ) ) ; +#658 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.05989583333333332900 ) ) ; +#659 = CARTESIAN_POINT ( 'NONE', ( -0.1808124525400207100, 0.2281684160233493400, 0.2519002566198183500 ) ) ; +#660 = EDGE_LOOP ( 'NONE', ( #311, #478, #1918, #178 ) ) ; +#661 = CARTESIAN_POINT ( 'NONE', ( -0.1131021043575953100, 0.2528723995670166800, -0.2373531081756480300 ) ) ; +#663 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.1085069444444444100 ) ) ; +#662 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.2612847222222222100 ) ) ; +#664 = VECTOR ( 'NONE', #780, 39.37007874015748100 ) ; +#665 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.2126736111111110800 ) ) ; +#666 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.1553819444444444800 ) ) ; +#667 = LINE ( 'NONE', #2676, #542 ) ; +#668 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #295, #551, #862, #901, #2807, #2261, #848, #635, #1661 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2291666666666666900, 0.2395833333333333700, 0.2500000000000000600, 0.2604166666666667400, 0.2708333333333333700 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9999999999999997800, 0.9238795325112869600, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112862900, 1.000000000000000400 ) ) + REPRESENTATION_ITEM ( '' ) ); +#669 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.1553819444444444800 ) ) ; +#670 = CARTESIAN_POINT ( 'NONE', ( -0.01949648274281735200, 0.2870524300654359600, 0.2484867953653569200 ) ) ; +#671 = VERTEX_POINT ( 'NONE', #2832 ) ; +#672 = SECURITY_CLASSIFICATION_LEVEL ( 'unclassified' ) ; +#674 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.2057291666666666300 ) ) ; +#673 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.1918402777777777900 ) ) ; +#675 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.1432291666666666000 ) ) ; +#676 = AXIS2_PLACEMENT_3D ( 'NONE', #514, #3251, #2935 ) ; +#677 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, -0.1102430555555555800 ) ) ; +#678 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.2109375000000000000 ) ) ; +#679 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.1987847222222221500 ) ) ; +#680 = APPROVAL_ROLE ( '' ) ; +#682 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.2977430555555555800 ) ) ; +#681 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.04600694444444445400 ) ) ; +#683 = EDGE_CURVE ( 'NONE', #1278, #2864, #2201, .T. ) ; +#684 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.3133680555555555200 ) ) ; +#685 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.2526041666666666900 ) ) ; +#686 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.002604166666666687300 ) ) ; +#687 = CARTESIAN_POINT ( 'NONE', ( -0.07663761879782751700, -0.2941801397708417900, 0.2643241118434316300 ) ) ; +#688 = VERTEX_POINT ( 'NONE', #3149 ) ; +#689 = ADVANCED_FACE ( 'NONE', ( #2804 ), #29, .F. ) ; +#690 = CARTESIAN_POINT ( 'NONE', ( 3.827021247335479500E-017, 0.3125000000000000000, 0.2734375000000000000 ) ) ; +#691 = APPROVAL_ROLE ( '' ) ; +#692 = LINE ( 'NONE', #2011, #609 ) ; +#693 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.3272569444444443600 ) ) ; +#694 = EDGE_CURVE ( 'NONE', #2950, #3249, #2484, .T. ) ; +#695 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.3342013888888888400 ) ) ; +#696 = ORIENTED_EDGE ( 'NONE', *, *, #2714, .F. ) ; +#697 = CARTESIAN_POINT ( 'NONE', ( -0.4687499999999999400, -0.2265741587664557900, -0.2442891129050253600 ) ) ; +#698 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, -0.3116319444444444200 ) ) ; +#699 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.06684027777777774800 ) ) ; +#700 = CONICAL_SURFACE ( 'NONE', #2409, 0.4687500000000000000, 1.047197551196600100 ) ; +#701 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.1276041666666666900 ) ) ; +#702 = CYLINDRICAL_SURFACE ( 'NONE', #2883, 0.3125000000000000000 ) ; +#703 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#705 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.1588541666666667100 ) ) ; +#704 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, 0.3272569444444444200 ) ) ; +#706 = FACE_OUTER_BOUND ( 'NONE', #2995, .T. ) ; +#707 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.03732638888888892300 ) ) ; +#708 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.08767361111111110500 ) ) ; +#709 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.1727430555555555800 ) ) ; +#710 = CARTESIAN_POINT ( 'NONE', ( -1.313478095563946000E-016, 0.5412658773652743200, 0.2734375000000000000 ) ) ; +#711 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.2421875000000000300 ) ) ; +#712 = AXIS2_PLACEMENT_3D ( 'NONE', #530, #2728, #552 ) ; +#713 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.3585069444444443100 ) ) ; +#714 = EDGE_CURVE ( 'NONE', #1943, #174, #2328, .T. ) ; +#715 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#716 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, 0.02170138888888886700 ) ) ; +#717 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.08072916666666665700 ) ) ; +#718 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.1171875000000000000 ) ) ; +#719 = ADVANCED_FACE ( 'NONE', ( #706 ), #457, .T. ) ; +#720 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.1744791666666666600 ) ) ; +#721 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.08593750000000002800 ) ) ; +#722 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000002200, -0.1294417382415921600, -0.1241319444444444500 ) ) ; +#724 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.2560763888888889500 ) ) ; +#723 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.2751736111111111000 ) ) ; +#725 = EDGE_CURVE ( 'NONE', #525, #315, #1228, .T. ) ; +#726 = CARTESIAN_POINT ( 'NONE', ( 0.2595172643670272100, -0.09516500374910928700, 0.2373531081756481100 ) ) ; +#727 = ORIENTED_EDGE ( 'NONE', *, *, #1048, .F. ) ; +#728 = ORIENTED_EDGE ( 'NONE', *, *, #1949, .T. ) ; +#729 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#730 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.009548611111111106700 ) ) ; +#731 = LINE ( 'NONE', #3421, #15 ) ; +#732 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.01822916666666664000 ) ) ; +#733 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.2005208333333333700 ) ) ; +#734 = VERTEX_POINT ( 'NONE', #747 ) ; +#735 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.02690972222222223800 ) ) ; +#736 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.1380208333333333400 ) ) ; +#738 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#737 = CARTESIAN_POINT ( 'NONE', ( -0.1945045140791401600, -0.4289686438030852500, 0.2724479197730277400 ) ) ; +#739 = ORIENTED_EDGE ( 'NONE', *, *, #1303, .T. ) ; +#740 = EDGE_CURVE ( 'NONE', #2393, #1235, #787, .T. ) ; +#741 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, 0.007812499999999959200 ) ) ; +#742 = ADVANCED_FACE ( 'NONE', ( #3514, #1170 ), #1329, .F. ) ; +#743 = CARTESIAN_POINT ( 'NONE', ( 0.01764418446326928100, -0.3051030914151981500, 0.2660405914151555100 ) ) ; +#744 = LINE ( 'NONE', #2872, #868 ) ; +#745 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.2126736111111110800 ) ) ; +#746 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.04253472222222219600 ) ) ; +#747 = CARTESIAN_POINT ( 'NONE', ( -0.2343750000000002200, 0.4059494080239556300, 0.2734375000000000000 ) ) ; +#748 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001100, -0.09121345827264477900, -0.2694998449491767300 ) ) ; +#749 = PLANE ( 'NONE', #3383 ) ; +#750 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.07378472222222219600 ) ) ; +#751 = CC_DESIGN_APPROVAL ( #2707, ( #210 ) ) ; +#752 = CARTESIAN_POINT ( 'NONE', ( 0.2101263504005498900, -0.2272292683002669600, 0.2699297548883203300 ) ) ; +#753 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, 0.2717013888888888400 ) ) ; +#754 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.02517361111111106000 ) ) ; +#755 = EDGE_CURVE ( 'NONE', #2137, #422, #2067, .T. ) ; +#756 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.09288194444444444800 ) ) ; +#757 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, -0.2213541666666667400 ) ) ; +#758 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.1032986111111111300 ) ) ; +#759 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.1154513888888888500 ) ) ; +#760 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.2230902777777777600 ) ) ; +#761 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#762 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.01822916666666667500 ) ) ; +#763 = CARTESIAN_POINT ( 'NONE', ( 1.654959094771973200E-016, -0.5412658773652743200, 0.2734375000000000000 ) ) ; +#764 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.06163194444444446800 ) ) ; +#765 = ORIENTED_EDGE ( 'NONE', *, *, #897, .F. ) ; +#766 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.1414930555555555800 ) ) ; +#768 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.009548611111111141400 ) ) ; +#767 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.390706609902761100E-016, -1.000000000000000000 ) ) ; +#769 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000600, -5.740531871003217500E-017, -0.009548611111111141400 ) ) ; +#770 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608500, 0.2764156081756481400, -0.01302083333333336900 ) ) ; +#771 = ORIENTED_EDGE ( 'NONE', *, *, #2616, .T. ) ; +#772 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.2526041666666667400 ) ) ; +#773 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.2404513888888889000 ) ) ; +#774 = ORIENTED_EDGE ( 'NONE', *, *, #2928, .F. ) ; +#775 = CARTESIAN_POINT ( 'NONE', ( 0.2702029024876463300, -0.1124982335530002500, 0.2528681456699977700 ) ) ; +#776 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.1362847222222221800 ) ) ; +#777 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.1779513888888888700 ) ) ; +#778 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.2022569444444444500 ) ) ; +#779 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#781 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#780 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#782 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.004340277777777766700 ) ) ; +#783 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.004340277777777732000 ) ) ; +#784 = FACE_OUTER_BOUND ( 'NONE', #3030, .T. ) ; +#785 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.2838541666666666900 ) ) ; +#786 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1912, #839, #3017, #1382, #3288, #32, #2763, #1114, #3028 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4218749999999745200, 0.4322916666666411500, 0.4427083333333078400, 0.4531249999999744600, 0.4635416666666410900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000006900, 0.9238795325112798600, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112940700, 0.9999999999999926700 ) ) + REPRESENTATION_ITEM ( '' ) ); +#787 = LINE ( 'NONE', #710, #2843 ) ; +#788 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, 0.2161458333333332900 ) ) ; +#789 = CARTESIAN_POINT ( 'NONE', ( 0.2358082833125333100, -0.1654773329193544300, 0.2482263574686357200 ) ) ; +#790 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, -0.2282986111111111600 ) ) ; +#791 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.2647569444444444200 ) ) ; +#792 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.1484375000000000600 ) ) ; +#793 = CARTESIAN_POINT ( 'NONE', ( -0.2343750000000002200, 0.4059494080239556300, 0.2734375000000000000 ) ) ; +#794 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#795 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.2057291666666666300 ) ) ; +#796 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.1553819444444445000 ) ) ; +#797 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.1831597222222222400 ) ) ; +#798 = CARTESIAN_POINT ( 'NONE', ( 0.2710723997258328600, 0.1540588758305756500, 0.2720001994534483900 ) ) ; +#799 = AXIS2_PLACEMENT_3D ( 'NONE', #169, #465, #2082 ) ; +#800 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, -0.01302083333333336900 ) ) ; +#801 = EDGE_CURVE ( 'NONE', #1789, #1709, #134, .T. ) ; +#802 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.2960069444444444200 ) ) ; +#803 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756481400, -0.07552083333333338400 ) ) ; +#804 = DIRECTION ( 'NONE', ( -0.4999999999999999400, -0.8660254037844387100, 0.0000000000000000000 ) ) ; +#805 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.2526041666666666900 ) ) ; +#806 = CARTESIAN_POINT ( 'NONE', ( 0.1944444454972854300, -0.4290033244149891200, -0.2734375000000002200 ) ) ; +#807 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.2942708333333333700 ) ) ; +#808 = VERTEX_POINT ( 'NONE', #2189 ) ; +#809 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.2282986111111112200 ) ) ; +#810 = ORIENTED_EDGE ( 'NONE', *, *, #1120, .T. ) ; +#811 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.07204861111111111900 ) ) ; +#812 = ORIENTED_EDGE ( 'NONE', *, *, #38, .T. ) ; +#813 = CIRCLE ( 'NONE', #604, 0.4687500000000000000 ) ; +#814 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, 0.0008680555555555396800 ) ) ; +#815 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.3203124999999999400 ) ) ; +#817 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.1970486111111111300 ) ) ; +#816 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.1692708333333333400 ) ) ; +#818 = ORIENTED_EDGE ( 'NONE', *, *, #17, .F. ) ; +#819 = CARTESIAN_POINT ( 'NONE', ( 0.2542656236088641200, -0.3944655511290284200, 0.2734375000000002200 ) ) ; +#820 = CARTESIAN_POINT ( 'NONE', ( -0.1857233393463736900, -0.2347369367536191700, -0.2596034766799809000 ) ) ; +#821 = EDGE_LOOP ( 'NONE', ( #1534, #2483, #1194, #2578 ) ) ; +#822 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.2282986111111112200 ) ) ; +#823 = DATE_AND_TIME ( #1544, #3002 ) ; +#824 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.1449652777777778500 ) ) ; +#825 = CARTESIAN_POINT ( 'NONE', ( 0.2267801231068361500, -0.1815593669493089900, -0.2508300067573216400 ) ) ; +#826 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.01128472222222222000 ) ) ; +#827 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.1501736111111111000 ) ) ; +#829 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.2421875000000000000 ) ) ; +#828 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#830 = CARTESIAN_POINT ( 'NONE', ( -0.1083770542787872700, 0.2678283183927536700, -0.2489776618421037400 ) ) ; +#831 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.7071067811865475700, 0.7071067811865474600 ) ) ; +#832 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.05121527777777783200 ) ) ; +#833 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.1276041666666667100 ) ) ; +#834 = CARTESIAN_POINT ( 'NONE', ( 0.2613247718226793200, 0.1111587186114084000, -0.2447661482729041600 ) ) ; +#835 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.007812499999999993100 ) ) ; +#836 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, -0.1144950937579609900, -0.1519097222222222400 ) ) ; +#837 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.1432291666666666900 ) ) ; +#838 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#839 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000088800, -0.1294417382415834200, 0.04947916666666695600 ) ) ; +#840 = CARTESIAN_POINT ( 'NONE', ( 1.643166561121255400E-016, -0.5412658773652743200, -0.2315704386826372100 ) ) ; +#841 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.1171875000000000400 ) ) ; +#842 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.1067708333333334000 ) ) ; +#843 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.2404513888888889000 ) ) ; +#844 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.04774305555555556600 ) ) ; +#845 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.1144950937579609200, -0.2005208333333333400 ) ) ; +#846 = EDGE_CURVE ( 'NONE', #3119, #2786, #2036, .T. ) ; +#847 = ORIENTED_EDGE ( 'NONE', *, *, #372, .F. ) ; +#849 = CARTESIAN_POINT ( 'NONE', ( -0.2343749999999999700, -0.4059494080239557400, 0.2734375000000000000 ) ) ; +#848 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.09982638888888890900 ) ) ; +#850 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #251, #2712, #2194, #1655, #1361, #1668, #2235, #1103 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 4 ), + ( 0.01959550571214544900, 0.02133620036425898000, 0.02307689501637251100, 0.02655828432059957300 ), + .UNSPECIFIED. ) ; +#851 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.1293402777777777300 ) ) ; +#852 = CARTESIAN_POINT ( 'NONE', ( -0.02235195367503627100, 0.2939166298154259900, -0.2554861939192972800 ) ) ; +#853 = ORIENTED_EDGE ( 'NONE', *, *, #1808, .T. ) ; +#854 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.06336805555555553900 ) ) ; +#855 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.0008680555555555054200 ) ) ; +#856 = ORIENTED_EDGE ( 'NONE', *, *, #2198, .T. ) ; +#857 = CARTESIAN_POINT ( 'NONE', ( 0.2761379071332624200, -0.08118621110848836500, -0.2486100966456183400 ) ) ; +#858 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.2786458333333332600 ) ) ; +#859 = VERTEX_POINT ( 'NONE', #1334 ) ; +#860 = ORGANIZATION ( 'UNSPECIFIED', 'UNSPECIFIED', '' ) ; +#861 =( GEOMETRIC_REPRESENTATION_CONTEXT ( 3 ) GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT ( ( #2652 ) ) GLOBAL_UNIT_ASSIGNED_CONTEXT ( ( #2276, #1184, #1466 ) ) REPRESENTATION_CONTEXT ( 'NONE', 'WORKASPACE' ) ); +#863 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2871850421650035100, 0.2481225421650035700 ) ) ; +#862 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.1137152777777777800 ) ) ; +#864 = ADVANCED_FACE ( 'NONE', ( #1636 ), #374, .F. ) ; +#865 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.1223958333333332700 ) ) ; +#866 = CARTESIAN_POINT ( 'NONE', ( 0.2742454859208598400, -0.3829301722448260600, 0.2724479197730276200 ) ) ; +#867 = CARTESIAN_POINT ( 'NONE', ( -0.2001638947220315000, 0.2356453577752191400, -0.2694700792280809700 ) ) ; +#868 = VECTOR ( 'NONE', #2589, 39.37007874015748100 ) ; +#869 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.04774305555555560100 ) ) ; +#870 = AXIS2_PLACEMENT_3D ( 'NONE', #3025, #30, #1607 ) ; +#871 = FACE_OUTER_BOUND ( 'NONE', #2997, .T. ) ; +#872 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.08246527777777784600 ) ) ; +#873 = CARTESIAN_POINT ( 'NONE', ( 0.2572893991687880700, 0.1197483978488055900, -0.2445738500560249400 ) ) ; +#874 = EDGE_CURVE ( 'NONE', #2864, #273, #2336, .T. ) ; +#875 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.1605902777777777600 ) ) ; +#876 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #80, #2760, #2223, #2210, #884, #620, #1108, #1134, #1708, #53 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 4 ), + ( 0.0000000000000000000, 0.001520414177049171600, 0.003040828354098343300, 0.004561242531147514100, 0.006081656708196684000 ), + .UNSPECIFIED. ) ; +#877 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.1189236111111110500 ) ) ; +#878 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#879 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#880 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.009548611111111176100 ) ) ; +#881 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.1015624999999999400 ) ) ; +#882 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.05468750000000002100 ) ) ; +#883 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.3342013888888889000 ) ) ; +#884 = CARTESIAN_POINT ( 'NONE', ( 0.1367176667978097800, 0.2742468225875447400, -0.2667281879437994900 ) ) ; +#885 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#886 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, 0.1050347222222222100 ) ) ; +#887 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000002200, 0.1147904691439571400, 0.2657218507835638100 ) ) ; +#888 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.1310763888888889000 ) ) ; +#890 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.1710069444444444200 ) ) ; +#889 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.1640624999999999700 ) ) ; +#891 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.06163194444444446800 ) ) ; +#892 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.2473958333333332900 ) ) ; +#893 = AXIS2_PLACEMENT_3D ( 'NONE', #1125, #608, #69 ) ; +#894 = EDGE_LOOP ( 'NONE', ( #1105, #2481, #983 ) ) ; +#895 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #3100, #1713, #2024, #399, #2252, #1151, #2299, #3078, #364 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5052083333333078400, 0.5156249999999744600, 0.5260416666666412100, 0.5364583333333079500, 0.5468749999999745800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000007300, 0.9238795325112794100, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112931800, 0.9999999999999935600 ) ) + REPRESENTATION_ITEM ( '' ) ); +#896 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.2300347222222221800 ) ) ; +#897 = EDGE_CURVE ( 'NONE', #1274, #1943, #3303, .T. ) ; +#898 = EDGE_LOOP ( 'NONE', ( #2311, #3294, #2304, #2741, #2659, #2749 ) ) ; +#899 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.2317708333333333700 ) ) ; +#900 = ORIENTED_EDGE ( 'NONE', *, *, #3252, .T. ) ; +#901 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.1102430555555555800 ) ) ; +#902 = ORIENTED_EDGE ( 'NONE', *, *, #581, .T. ) ; +#903 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#904 =( LENGTH_UNIT ( ) NAMED_UNIT ( * ) SI_UNIT ( $, .METRE. ) ); +#905 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.1189236111111110900 ) ) ; +#906 = EDGE_LOOP ( 'NONE', ( #1104, #2571, #264, #2828 ) ) ; +#908 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.2647569444444444200 ) ) ; +#907 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, 0.1605902777777777300 ) ) ; +#909 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.07378472222222219600 ) ) ; +#910 = PERSON_AND_ORGANIZATION ( #3475, #860 ) ; +#911 = EDGE_CURVE ( 'NONE', #3286, #305, #2881, .T. ) ; +#912 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.2890624999999999400 ) ) ; +#913 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, -0.1727430555555555800 ) ) ; +#914 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, 0.05642361111111110500 ) ) ; +#915 = CARTESIAN_POINT ( 'NONE', ( -0.04847850309550162700, 0.2841654550294572800, 0.2490470254894963700 ) ) ; +#916 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#917 = CARTESIAN_POINT ( 'NONE', ( -0.07898507028623780200, 0.2655143972457527100, -0.2373531081756480300 ) ) ; +#918 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#919 = LINE ( 'NONE', #519, #3009 ) ; +#921 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.07378472222222219600 ) ) ; +#920 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.2473958333333332900 ) ) ; +#922 = AXIS2_PLACEMENT_3D ( 'NONE', #781, #1625, #2748 ) ; +#923 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.1397569444444443900 ) ) ; +#924 = EDGE_CURVE ( 'NONE', #22, #1756, #362, .T. ) ; +#925 = ADVANCED_FACE ( 'NONE', ( #3096 ), #198, .F. ) ; +#926 = DESIGN_CONTEXT ( 'detailed design', #459, 'design' ) ; +#927 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.1831597222222222400 ) ) ; +#928 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.2213541666666666600 ) ) ; +#929 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#930 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#932 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.1293402777777777100 ) ) ; +#931 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.1362847222222222100 ) ) ; +#933 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.1362847222222221500 ) ) ; +#934 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.1310763888888889000 ) ) ; +#935 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.06684027777777774800 ) ) ; +#936 = CARTESIAN_POINT ( 'NONE', ( -0.07694366750601792900, 0.2789016435974026000, 0.2496140752599675100 ) ) ; +#937 = ADVANCED_FACE ( 'NONE', ( #3171 ), #1728, .T. ) ; +#938 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999899500, -0.1294417382416022400, 0.1397569444444448100 ) ) ; +#939 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#940 = VERTEX_POINT ( 'NONE', #314 ) ; +#942 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.2873263888888889000 ) ) ; +#941 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.2126736111111110800 ) ) ; +#943 = EDGE_CURVE ( 'NONE', #1828, #688, #3265, .T. ) ; +#944 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.3029513888888888400 ) ) ; +#945 = ORIENTED_EDGE ( 'NONE', *, *, #3073, .F. ) ; +#946 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.3012152777777777900 ) ) ; +#947 = ORIENTED_EDGE ( 'NONE', *, *, #2692, .F. ) ; +#948 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, -0.2282986111111111600 ) ) ; +#949 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#950 = VERTEX_POINT ( 'NONE', #2428 ) ; +#952 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.3237847222222222100 ) ) ; +#951 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000095500, 0.1294417382415827800, -0.2005208333333330400 ) ) ; +#953 = VECTOR ( 'NONE', #2994, 39.37007874015748100 ) ; +#954 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.1293402777777777100 ) ) ; +#955 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.2942708333333333100 ) ) ; +#956 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.03906250000000000000 ) ) ; +#957 = CARTESIAN_POINT ( 'NONE', ( -0.2954631210505143100, -0.02625476694058976500, 0.2574059560448838100 ) ) ; +#958 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.2456597222222222400 ) ) ; +#959 = ORIENTED_EDGE ( 'NONE', *, *, #714, .F. ) ; +#960 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.2786458333333332600 ) ) ; +#961 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#962 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.1414930555555555500 ) ) ; +#963 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.03211805555555554600 ) ) ; +#964 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.1657986111111111000 ) ) ; +#965 = CARTESIAN_POINT ( 'NONE', ( 0.2343750000000002200, -0.4059494080239556300, 0.2734375000000000000 ) ) ; +#967 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.1727430555555555800 ) ) ; +#966 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, -0.1796875000000000300 ) ) ; +#968 = CARTESIAN_POINT ( 'NONE', ( 0.1095614568886727300, 0.2633132155140466300, 0.2459122183686822400 ) ) ; +#969 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000097700, -0.1294417382415826400, 0.2161458333333337000 ) ) ; +#970 = AXIS2_PLACEMENT_3D ( 'NONE', #3231, #1878, #2693 ) ; +#971 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.01475694444444441300 ) ) ; +#972 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.03732638888888892300 ) ) ; +#973 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.2838541666666666900 ) ) ; +#974 = ORIENTED_EDGE ( 'NONE', *, *, #89, .F. ) ; +#975 = ORIENTED_EDGE ( 'NONE', *, *, #1168, .F. ) ; +#976 = ORIENTED_EDGE ( 'NONE', *, *, #1766, .T. ) ; +#977 = ORIENTED_EDGE ( 'NONE', *, *, #495, .F. ) ; +#978 = LINE ( 'NONE', #3410, #3084 ) ; +#979 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001100, -0.04577619060140410800, 0.2734375000000000000 ) ) ; +#980 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.2039930555555555800 ) ) ; +#981 = EDGE_CURVE ( 'NONE', #3205, #273, #2464, .T. ) ; +#982 = CARTESIAN_POINT ( 'NONE', ( -0.2743055545027147700, -0.3828954916329225200, -0.2734375000000002800 ) ) ; +#983 = ORIENTED_EDGE ( 'NONE', *, *, #1603, .T. ) ; +#984 = ADVANCED_FACE ( 'NONE', ( #993 ), #3429, .F. ) ; +#985 = CARTESIAN_POINT ( 'NONE', ( 1.654959094771973200E-016, -0.5412658773652743200, 0.2734375000000000000 ) ) ; +#986 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.03559027777777777600 ) ) ; +#987 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, 0.1328125000000000000 ) ) ; +#988 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.1137152777777778200 ) ) ; +#989 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.05468750000000002100 ) ) ; +#990 = CARTESIAN_POINT ( 'NONE', ( -0.2343749999999999400, -0.4059494080239556800, -0.2734375000000000000 ) ) ; +#991 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#992 = DIRECTION ( 'NONE', ( -0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#993 = FACE_OUTER_BOUND ( 'NONE', #2096, .T. ) ; +#994 = CARTESIAN_POINT ( 'NONE', ( 0.06989709940742146200, -0.2984937459549448200, 0.2670014088846111600 ) ) ; +#995 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.04427083333333334300 ) ) ; +#996 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.04600694444444445400 ) ) ; +#997 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.2144097222222222100 ) ) ; +#998 = CARTESIAN_POINT ( 'NONE', ( 0.03834067480472926100, -0.5191298784458521200, 0.2443506636175588100 ) ) ; +#999 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.01649305555555559400 ) ) ; +#1000 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.1144950937579609200, -0.1380208333333333700 ) ) ; +#1001 = CARTESIAN_POINT ( 'NONE', ( 0.3137397276145919000, 0.3601281611715098100, 0.2694473453760668500 ) ) ; +#1002 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.3550347222222222100 ) ) ; +#1003 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, -0.1144950937579609900, 0.02170138888888886700 ) ) ; +#1004 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.1362847222222222100 ) ) ; +#1005 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.2612847222222222100 ) ) ; +#1006 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.2109375000000000000 ) ) ; +#1007 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.06510416666666667100 ) ) ; +#1008 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.004340277777777766700 ) ) ; +#1009 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001100, 0.2706329386826371600, -0.2315704386826372700 ) ) ; +#1010 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001100, -0.2265741587663208400, -0.2442891129050641400 ) ) ; +#1011 = CARTESIAN_POINT ( 'NONE', ( 0.2733413812256148500, -0.05212009538837521900, 0.2382875544367778500 ) ) ; +#1012 = ORIENTED_EDGE ( 'NONE', *, *, #2616, .F. ) ; +#1013 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.1085069444444444100 ) ) ; +#1014 = ORIENTED_EDGE ( 'NONE', *, *, #1146, .F. ) ; +#1015 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000001100, -0.04577619060156053200, 0.2734375000000000000 ) ) ; +#1016 = ORIENTED_EDGE ( 'NONE', *, *, #3473, .F. ) ; +#1017 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.1779513888888888700 ) ) ; +#1018 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.07725694444444440600 ) ) ; +#1019 = EDGE_LOOP ( 'NONE', ( #1191, #1326, #477 ) ) ; +#1020 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.07204861111111111900 ) ) ; +#1021 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.002604166666666687300 ) ) ; +#1022 = AXIS2_PLACEMENT_3D ( 'NONE', #2092, #472, #738 ) ; +#1023 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, -0.1144950937579609900, -0.2005208333333334300 ) ) ; +#1025 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1024 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999904500, 0.1294417382416017700, -0.1102430555555552100 ) ) ; +#1026 = VERTEX_POINT ( 'NONE', #244 ) ; +#1027 = EDGE_CURVE ( 'NONE', #3494, #3119, #919, .T. ) ; +#1028 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.05815972222222225200 ) ) ; +#1029 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756481400, 0.09114583333333327300 ) ) ; +#1030 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1031 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.1640624999999999700 ) ) ; +#1032 = CARTESIAN_POINT ( 'NONE', ( 0.2925476663214338100, 0.09437145216095005300, 0.2676032129314578900 ) ) ; +#1033 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.1015624999999999900 ) ) ; +#1034 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, -0.2213541666666666900 ) ) ; +#1035 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.04774305555555556600 ) ) ; +#1036 = EDGE_CURVE ( 'NONE', #2823, #3338, #2285, .T. ) ; +#1037 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.1276041666666667100 ) ) ; +#1039 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000001100, 0.2268628408709682000, 0.2442057775596488700 ) ) ; +#1038 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#1040 = EDGE_LOOP ( 'NONE', ( #2958, #1153, #2610, #2870 ) ) ; +#1041 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#1042 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.1015624999999999400 ) ) ; +#1043 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.2039930555555555800 ) ) ; +#1044 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.1987847222222221500 ) ) ; +#1045 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, -0.2706329386826372100, 0.2734375000000000000 ) ) ; +#1046 = AXIS2_PLACEMENT_3D ( 'NONE', #1624, #2465, #6 ) ; +#1047 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#1048 = EDGE_CURVE ( 'NONE', #1840, #1152, #1925, .T. ) ; +#1049 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.1293402777777777300 ) ) ; +#1050 = CARTESIAN_POINT ( 'NONE', ( -0.1320469797879068300, 0.2588637221457021900, -0.2344902905469430100 ) ) ; +#1052 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.06336805555555553900 ) ) ; +#1051 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.07378472222222219600 ) ) ; +#1053 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.01128472222222218600 ) ) ; +#1054 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.1144950937579609200, 0.08420138888888881200 ) ) ; +#1055 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.2039930555555556100 ) ) ; +#1056 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.3168402777777777300 ) ) ; +#1057 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.2265624999999999700 ) ) ; +#1058 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.1883680555555555200 ) ) ; +#1059 = VERTEX_POINT ( 'NONE', #3447 ) ; +#1060 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, -0.05468750000000005600 ) ) ; +#1062 = CARTESIAN_POINT ( 'NONE', ( 0.2532525285051033800, -0.1122490897977443700, 0.2373531081756480900 ) ) ; +#1061 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.1762152777777777900 ) ) ; +#1063 = ORIENTED_EDGE ( 'NONE', *, *, #128, .F. ) ; +#1064 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.2335069444444443600 ) ) ; +#1065 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.2213541666666666900 ) ) ; +#1066 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.2803819444444444800 ) ) ; +#1067 = VERTEX_POINT ( 'NONE', #2118 ) ; +#1068 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756481400, -0.1935763888888889200 ) ) ; +#1069 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.1397569444444443900 ) ) ; +#1070 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.09982638888888893700 ) ) ; +#1072 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.1692708333333333400 ) ) ; +#1071 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.1553819444444444800 ) ) ; +#1073 = EDGE_CURVE ( 'NONE', #3338, #3249, #2420, .T. ) ; +#1074 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999993300, 0.1294417382415928000, -0.006076388888888895100 ) ) ; +#1075 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1076 = CONICAL_SURFACE ( 'NONE', #1398, 0.4687500000000000000, 1.047197551196600100 ) ; +#1077 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.2907986111111111600 ) ) ; +#1078 = LINE ( 'NONE', #3101, #154 ) ; +#1079 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.2456597222222222700 ) ) ; +#1080 = CARTESIAN_POINT ( 'NONE', ( 0.2925327998078600100, -0.05291191661835963100, 0.2574723143393060100 ) ) ; +#1081 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, -0.1144950937579609900, -0.09635416666666667100 ) ) ; +#1082 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.1571180555555555500 ) ) ; +#1083 = EDGE_CURVE ( 'NONE', #2493, #2833, #280, .T. ) ; +#1085 = CARTESIAN_POINT ( 'NONE', ( 0.1774506657824545800, -0.2121286967750847200, 0.2373531081756480900 ) ) ; +#1084 = CARTESIAN_POINT ( 'NONE', ( -0.03834067480472922600, 0.5191298784458521200, 0.2443506636175588100 ) ) ; +#1086 = CARTESIAN_POINT ( 'NONE', ( -0.2237736071878999900, 0.1622681766990339000, -0.2373531081756481100 ) ) ; +#1087 = CARTESIAN_POINT ( 'NONE', ( -0.2013892514701089700, -0.2219358561159502600, -0.2599696753707286300 ) ) ; +#1088 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.04079861111111114700 ) ) ; +#1089 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.1380208333333333700 ) ) ; +#1090 = AXIS2_PLACEMENT_3D ( 'NONE', #85, #879, #1420 ) ; +#1091 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.03732638888888892300 ) ) ; +#1092 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, -0.1241319444444444600 ) ) ; +#1093 = EDGE_CURVE ( 'NONE', #2137, #605, #2513, .T. ) ; +#1094 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.1328124999999999700 ) ) ; +#1096 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.1796875000000000300 ) ) ; +#1095 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415923000, -0.1727430555555555800 ) ) ; +#1097 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1098 = CARTESIAN_POINT ( 'NONE', ( 0.1550102723854084000, -0.4517706548764014500, -0.2694473453760667400 ) ) ; +#1099 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.1206597222222222700 ) ) ; +#1100 = ORIENTED_EDGE ( 'NONE', *, *, #1826, .T. ) ; +#1101 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, 0.3758680555555555800 ) ) ; +#1102 = ORIENTED_EDGE ( 'NONE', *, *, #1784, .T. ) ; +#1103 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001100, 0.2706329386826371600, -0.2315704386826372700 ) ) ; +#1104 = ORIENTED_EDGE ( 'NONE', *, *, #1083, .F. ) ; +#1105 = ORIENTED_EDGE ( 'NONE', *, *, #1808, .F. ) ; +#1106 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.03038194444444446800 ) ) ; +#1107 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, -0.05468750000000002100 ) ) ; +#1108 = CARTESIAN_POINT ( 'NONE', ( 0.07956085915312056900, 0.2915878427014977300, -0.2625179304193354700 ) ) ; +#1109 = AXIS2_PLACEMENT_3D ( 'NONE', #1041, #794, #269 ) ; +#1111 = CARTESIAN_POINT ( 'NONE', ( 0.3062602379128575600, -0.06213627502214449200, 0.2734375000003249600 ) ) ; +#1110 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.1571180555555555200 ) ) ; +#1112 = ORIENTED_EDGE ( 'NONE', *, *, #1521, .T. ) ; +#1113 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1114 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999905100, -0.1294417382416017100, 0.02864583333333367900 ) ) ; +#1115 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.1154513888888888500 ) ) ; +#1116 = ORIENTED_EDGE ( 'NONE', *, *, #2151, .T. ) ; +#1117 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.0008680555555555054200 ) ) ; +#1118 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.1901041666666667100 ) ) ; +#1119 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, 0.2439236111111111000 ) ) ; +#1120 = EDGE_CURVE ( 'NONE', #1278, #570, #1768, .T. ) ; +#1121 = CYLINDRICAL_SURFACE ( 'NONE', #574, 0.3125000000000000000 ) ; +#1122 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.08420138888888885300 ) ) ; +#1123 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, -0.1171875000000000000 ) ) ; +#1125 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#1124 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, -0.2706329386826369400, 0.2734375000000000000 ) ) ; +#1126 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #726, #2376, #1011, #1827, #1522, #2072, #208, #3164, #2348, #2628, #3448, #484, #1532, #3203, #1564, #182, #3439, #968, #3188, #463, #435, #1806, #2081 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 4 ), + ( 5.895029651514015400E-017, 0.001713990833982676600, 0.002570986250973985400, 0.003427981667965294300, 0.004284977084956603100, 0.005141972501947911000, 0.006855963335930527000, 0.008569954169913143700, 0.01028394500389576000, 0.01114094042088706700, 0.01199793583787837600, 0.01371192667186098800 ), + .UNSPECIFIED. ) ; +#1127 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, 0.1536458333333333100 ) ) ; +#1128 = CARTESIAN_POINT ( 'NONE', ( -0.2637730136353608800, -0.1450521284337502600, -0.2617988552011179500 ) ) ; +#1129 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.06684027777777774800 ) ) ; +#1130 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.08072916666666658800 ) ) ; +#1131 = CARTESIAN_POINT ( 'NONE', ( 0.2841001396210051100, -0.04436407704658834600, -0.2478657678587504500 ) ) ; +#1132 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1349, #2977, #1314, #3235, #2168, #2988, #811, #2148, #2446 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2708333333333333700, 0.2812500000000000600, 0.2916666666666667400, 0.3020833333333333700, 0.3125000000000000600 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9999999999999995600, 0.9238795325112871800, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112862900, 1.000000000000000400 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1133 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.1640625000000000000 ) ) ; +#1134 = CARTESIAN_POINT ( 'NONE', ( 0.03966881969532027500, 0.2967972543592104500, -0.2597009200209275900 ) ) ; +#1135 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#1136 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #3143, #969, #2865, #1514, #3417, #1692, #344, #357, #2528 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1718749999999744400, 0.1822916666666410700, 0.1927083333333078400, 0.2031249999999744600, 0.2135416666666410900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000007500, 0.9238795325112791900, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112940700, 0.9999999999999926700 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1137 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, 0.1605902777777777600 ) ) ; +#1138 = CARTESIAN_POINT ( 'NONE', ( -0.1974091812116254300, 0.1994402455730477600, -0.2406611717807828100 ) ) ; +#1139 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.1362847222222222100 ) ) ; +#1140 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.004340277777777732000 ) ) ; +#1141 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #597, #819, #866, #298, #3059, #2515, #3005, #1929 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 4 ), + ( 0.006955677797892809500, 0.008688035829550251600, 0.01042039386120769700, 0.01388510992452258000 ), + .UNSPECIFIED. ) ; +#1142 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.01302083333333336900 ) ) ; +#1143 = CARTESIAN_POINT ( 'NONE', ( 0.2844849681656819200, 0.03053664914343354200, -0.2464460692888935700 ) ) ; +#1144 = AXIS2_PLACEMENT_3D ( 'NONE', #296, #3026, #3056 ) ; +#1145 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.1432291666666666300 ) ) ; +#1146 = EDGE_CURVE ( 'NONE', #1709, #1376, #70, .T. ) ; +#1147 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, 0.09809027777777772100 ) ) ; +#1148 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.1484375000000000000 ) ) ; +#1149 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #1265, #2061, #473, #3151, #982, #1545 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 2.380729676765279200E-007, 0.003477957935430242200, 0.006955677797892807800 ), + .UNSPECIFIED. ) ; +#1150 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001100, 0.2706329386826371600, -0.2315704386826372700 ) ) ; +#1151 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.01996527777777778700 ) ) ; +#1152 = VERTEX_POINT ( 'NONE', #1307 ) ; +#1153 = ORIENTED_EDGE ( 'NONE', *, *, #943, .F. ) ; +#1154 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.1640624999999999700 ) ) ; +#1155 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.1050347222222221700 ) ) ; +#1156 = ORIENTED_EDGE ( 'NONE', *, *, #2700, .T. ) ; +#1157 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.1189236111111110900 ) ) ; +#1158 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.3098958333333333700 ) ) ; +#1159 = EDGE_LOOP ( 'NONE', ( #3208, #1156, #1412, #2566, #2533 ) ) ; +#1160 = AXIS2_PLACEMENT_3D ( 'NONE', #1479, #1699, #104 ) ; +#1161 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.1154513888888889000 ) ) ; +#1162 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001100, 0.2706329386826371600, 0.2315704386826372700 ) ) ; +#1163 = LENGTH_MEASURE_WITH_UNIT ( LENGTH_MEASURE( 0.02539999999999999900 ), #904 ); +#1165 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.2404513888888888100 ) ) ; +#1164 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.05295138888888884000 ) ) ; +#1166 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.08593750000000002800 ) ) ; +#1167 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415923000, 0.1050347222222221700 ) ) ; +#1168 = EDGE_CURVE ( 'NONE', #2837, #3223, #3145, .T. ) ; +#1169 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.2994791666666666900 ) ) ; +#1170 = FACE_BOUND ( 'NONE', #2101, .T. ) ; +#1171 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.1831597222222222400 ) ) ; +#1172 = PLANE ( 'NONE', #3174 ) ; +#1173 = CARTESIAN_POINT ( 'NONE', ( 0.07680894105051204500, 0.4969202145735909800, 0.2548427262045494000 ) ) ; +#1174 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#1175 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.1484375000000000000 ) ) ; +#1177 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.2717013888888888400 ) ) ; +#1176 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.1223958333333333100 ) ) ; +#1178 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.06510416666666669900 ) ) ; +#1179 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.2873263888888889000 ) ) ; +#1180 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.2664930555555555800 ) ) ; +#1181 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.06684027777777777600 ) ) ; +#1182 = CARTESIAN_POINT ( 'NONE', ( -0.2805166261922350000, -0.1022464516464733100, 0.2588807332337591000 ) ) ; +#1183 = ADVANCED_FACE ( 'NONE', ( #3131 ), #2460, .F. ) ; +#1184 =( NAMED_UNIT ( * ) PLANE_ANGLE_UNIT ( ) SI_UNIT ( $, .RADIAN. ) ); +#1185 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.1744791666666666600 ) ) ; +#1187 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.1779513888888888100 ) ) ; +#1186 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.2543402777777777300 ) ) ; +#1188 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.2335069444444443600 ) ) ; +#1189 = ORIENTED_EDGE ( 'NONE', *, *, #3134, .T. ) ; +#1190 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.1484375000000000000 ) ) ; +#1191 = ORIENTED_EDGE ( 'NONE', *, *, #1784, .F. ) ; +#1192 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, -0.09635416666666668500 ) ) ; +#1193 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999989500, -0.1294417382415932700, 0.1883680555555556400 ) ) ; +#1194 = ORIENTED_EDGE ( 'NONE', *, *, #2339, .F. ) ; +#1195 = ORIENTED_EDGE ( 'NONE', *, *, #168, .F. ) ; +#1196 = ORIENTED_EDGE ( 'NONE', *, *, #2130, .F. ) ; +#1197 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, 6.829619984160658000E-017, 0.2734375000000000000 ) ) ; +#1198 = ORIENTED_EDGE ( 'NONE', *, *, #2591, .T. ) ; +#1200 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.1536458333333332600 ) ) ; +#1199 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.1536458333333332600 ) ) ; +#1201 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.1744791666666666300 ) ) ; +#1202 = ORIENTED_EDGE ( 'NONE', *, *, #1093, .F. ) ; +#1203 = ADVANCED_FACE ( 'NONE', ( #1597 ), #240, .T. ) ; +#1204 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.1137152777777777800 ) ) ; +#1205 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.2456597222222222400 ) ) ; +#1206 = FACE_OUTER_BOUND ( 'NONE', #2907, .T. ) ; +#1207 = CARTESIAN_POINT ( 'NONE', ( -0.2563081325380270300, -0.1553033117505187600, 0.2600026528950359900 ) ) ; +#1208 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1209 = FACE_OUTER_BOUND ( 'NONE', #1325, .T. ) ; +#1211 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.1970486111111111300 ) ) ; +#1210 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.07031249999999995800 ) ) ; +#1212 = AXIS2_PLACEMENT_3D ( 'NONE', #1045, #1856, #2423 ) ; +#1213 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.2439236111111110200 ) ) ; +#1214 = EDGE_CURVE ( 'NONE', #2901, #950, #1769, .T. ) ; +#1215 = ORIENTED_EDGE ( 'NONE', *, *, #1972, .F. ) ; +#1216 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, -0.2491319444444444800 ) ) ; +#1217 = CARTESIAN_POINT ( 'NONE', ( -0.2813442368703451500, 0.08847500083356831000, 0.2552336656075912000 ) ) ; +#1218 = ADVANCED_FACE ( 'NONE', ( #3093 ), #538, .F. ) ; +#1219 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1221 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.1935763888888889200 ) ) ; +#1220 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.1970486111111111300 ) ) ; +#1222 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.1640624999999999700 ) ) ; +#1223 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.2630208333333333100 ) ) ; +#1224 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, -0.04079861111111111200 ) ) ; +#1225 = CARTESIAN_POINT ( 'NONE', ( -0.2571015891286222400, 0.1411957529795945800, 0.2540975111564511300 ) ) ; +#1226 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1227 = APPLICATION_PROTOCOL_DEFINITION ( 'international standard', 'config_control_design', 1994, #459 ) ; +#1228 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #1009, #2397, #1574, #1872, #2925, #242 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 2.380729676765279200E-007, 0.003477957935430242200, 0.006955677797892807800 ), + .UNSPECIFIED. ) ; +#1229 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.2005208333333333700 ) ) ; +#1230 = EDGE_CURVE ( 'NONE', #2493, #2825, #3402, .T. ) ; +#1231 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.2230902777777777600 ) ) ; +#1232 = ORIENTED_EDGE ( 'NONE', *, *, #1036, .T. ) ; +#1233 = ORIENTED_EDGE ( 'NONE', *, *, #2258, .F. ) ; +#1234 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.002604166666666653100 ) ) ; +#1235 = VERTEX_POINT ( 'NONE', #3240 ) ; +#1236 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.04427083333333334300 ) ) ; +#1237 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.2803819444444444800 ) ) ; +#1238 = ORIENTED_EDGE ( 'NONE', *, *, #2886, .F. ) ; +#1239 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1240 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001100, -0.2265741587663208400, 0.2442891129050641400 ) ) ; +#1242 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.2803819444444444800 ) ) ; +#1241 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1243 = VECTOR ( 'NONE', #1402, 39.37007874015748100 ) ; +#1244 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#1245 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#1246 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.01822916666666664000 ) ) ; +#1247 = LINE ( 'NONE', #1244, #3349 ) ; +#1248 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.1154513888888888500 ) ) ; +#1249 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.2942708333333333100 ) ) ; +#1250 = LINE ( 'NONE', #3027, #1475 ) ; +#1251 = ADVANCED_FACE ( 'NONE', ( #324 ), #1381, .F. ) ; +#1252 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1253 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.1310763888888889200 ) ) ; +#1254 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.3585069444444443100 ) ) ; +#1255 = EDGE_CURVE ( 'NONE', #177, #3223, #3264, .T. ) ; +#1256 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.2404513888888889000 ) ) ; +#1257 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.04253472222222223100 ) ) ; +#1258 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, -0.06857638888888889500 ) ) ; +#1259 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.1345486111111111300 ) ) ; +#1260 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.08072916666666665700 ) ) ; +#1261 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.007812499999999993100 ) ) ; +#1262 = CARTESIAN_POINT ( 'NONE', ( -0.2144843763911360400, -0.4174332649188828800, -0.2734375000000002800 ) ) ; +#1264 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.02690972222222224100 ) ) ; +#1263 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.1831597222222222400 ) ) ; +#1265 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, -0.2706329386826372100, -0.2315704386826372700 ) ) ; +#1266 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, -0.1144950937579609900, -0.03385416666666673400 ) ) ; +#1267 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#1268 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.03038194444444446800 ) ) ; +#1269 = ORIENTED_EDGE ( 'NONE', *, *, #2080, .F. ) ; +#1270 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.05989583333333329400 ) ) ; +#1271 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.1449652777777777900 ) ) ; +#1272 = ORIENTED_EDGE ( 'NONE', *, *, #1695, .T. ) ; +#1273 = MANIFOLD_SOLID_BREP ( 'Mirror1', #3040 ) ; +#1274 = VERTEX_POINT ( 'NONE', #310 ) ; +#1275 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.1085069444444444100 ) ) ; +#1276 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.07378472222222216800 ) ) ; +#1277 = AXIS2_PLACEMENT_3D ( 'NONE', #3200, #1562, #3470 ) ; +#1278 = VERTEX_POINT ( 'NONE', #3039 ) ; +#1279 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.1692708333333333700 ) ) ; +#1280 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.2595486111111111600 ) ) ; +#1281 = EDGE_CURVE ( 'NONE', #940, #2575, #369, .T. ) ; +#1282 = CARTESIAN_POINT ( 'NONE', ( 0.2553747228603391300, 0.1057796736954622200, 0.3619791666666496400 ) ) ; +#1283 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.05989583333333329400 ) ) ; +#1284 = ORIENTED_EDGE ( 'NONE', *, *, #943, .T. ) ; +#1285 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1286 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, 0.3272569444444444200 ) ) ; +#1287 = ORIENTED_EDGE ( 'NONE', *, *, #694, .F. ) ; +#1288 = PERSON_AND_ORGANIZATION ( #3475, #860 ) ; +#1289 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.07899305555555558000 ) ) ; +#1290 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2806, #3075, #3300, #1439, #3348, #2520, #1950, #1658, #41 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6718749999999744600, 0.6822916666666410900, 0.6927083333333078400, 0.7031249999999744600, 0.7135416666666410900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000007300, 0.9238795325112794100, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112940700, 0.9999999999999926700 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1291 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.03906249999999996500 ) ) ; +#1292 = LINE ( 'NONE', #2511, #1243 ) ; +#1293 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#1294 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.01649305555555555900 ) ) ; +#1295 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.000000000000000000, -1.143564276417598300E-016 ) ) ; +#1296 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.1223958333333333100 ) ) ; +#1297 = AXIS2_PLACEMENT_3D ( 'NONE', #1038, #2398, #2373 ) ; +#1298 = LINE ( 'NONE', #763, #2243 ) ; +#1299 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#1300 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.1432291666666666900 ) ) ; +#1301 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.08072916666666661600 ) ) ; +#1302 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1303 = EDGE_CURVE ( 'NONE', #1026, #2823, #610, .T. ) ; +#1304 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.05121527777777779700 ) ) ; +#1305 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.1831597222222222400 ) ) ; +#1307 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.009548611111111141400 ) ) ; +#1306 = PLANE ( 'NONE', #1660 ) ; +#1308 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.1848958333333333100 ) ) ; +#1309 = CARTESIAN_POINT ( 'NONE', ( -0.04349090697847191700, 0.2729727632078031700, -0.2373531081756481700 ) ) ; +#1310 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.002604166666666687300 ) ) ; +#1311 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.1710069444444444200 ) ) ; +#1312 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.2491319444444445000 ) ) ; +#1313 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.3446180555555555800 ) ) ; +#1314 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.08593750000000002800 ) ) ; +#1315 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.1154513888888889000 ) ) ; +#1316 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, -0.1144950937579609900, -0.2074652777777778500 ) ) ; +#1317 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.09114583333333330100 ) ) ; +#1318 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.1206597222222222700 ) ) ; +#1319 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.03732638888888892300 ) ) ; +#1320 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#1321 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756481400, 0.1467013888888888400 ) ) ; +#1322 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.2178819444444444500 ) ) ; +#1323 = ORIENTED_EDGE ( 'NONE', *, *, #2249, .F. ) ; +#1324 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.1744791666666666300 ) ) ; +#1325 = EDGE_LOOP ( 'NONE', ( #1571, #1016, #2087 ) ) ; +#1326 = ORIENTED_EDGE ( 'NONE', *, *, #1281, .T. ) ; +#1327 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.07899305555555558000 ) ) ; +#1328 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.1779513888888888400 ) ) ; +#1329 = PLANE ( 'NONE', #1277 ) ; +#1330 = CARTESIAN_POINT ( 'NONE', ( -0.1353502125380836300, -0.4631213957215386500, 0.2657820503820233500 ) ) ; +#1331 = ORIENTED_EDGE ( 'NONE', *, *, #874, .F. ) ; +#1332 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#1333 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.01822916666666664000 ) ) ; +#1334 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.06510416666666667100 ) ) ; +#1335 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.1762152777777778200 ) ) ; +#1336 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.1953125000000000000 ) ) ; +#1337 = CARTESIAN_POINT ( 'NONE', ( 0.3919410589494881600, -0.3149786014743202700, -0.2548427262045494000 ) ) ; +#1338 = FACE_OUTER_BOUND ( 'NONE', #894, .T. ) ; +#1339 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.07552083333333335600 ) ) ; +#1340 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.2161458333333333100 ) ) ; +#1341 = EDGE_CURVE ( 'NONE', #1368, #226, #1848, .T. ) ; +#1342 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.09635416666666671300 ) ) ; +#1343 = CONICAL_SURFACE ( 'NONE', #2982, 0.2986111111111111600, 0.7853981633974482800 ) ; +#1345 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -2.446791525458581000E-017, -0.2595486111111110500 ) ) ; +#1344 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.1588541666666666600 ) ) ; +#1346 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.04600694444444445400 ) ) ; +#1347 = CC_DESIGN_DATE_AND_TIME_ASSIGNMENT ( #1800, #3161, ( #2838 ) ) ; +#1348 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.09982638888888893700 ) ) ; +#1349 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000600, 1.913510623667739500E-017, -0.09288194444444444800 ) ) ; +#1350 = AXIS2_PLACEMENT_3D ( 'NONE', #1797, #3476, #2112 ) ; +#1351 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608500, 0.2764156081756481400, -0.1310763888888889200 ) ) ; +#1352 = EDGE_CURVE ( 'NONE', #523, #1881, #1880, .T. ) ; +#1353 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.3064236111111111600 ) ) ; +#1354 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, -0.04774305555555560100 ) ) ; +#1356 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.2526041666666666900 ) ) ; +#1355 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.2734375000000000000 ) ) ; +#1357 = CARTESIAN_POINT ( 'NONE', ( 0.1945045140791402400, 0.4289686438030851400, -0.2724479197730276200 ) ) ; +#1358 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, 0.2300347222222221500 ) ) ; +#1359 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.2699652777777777900 ) ) ; +#1360 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.2664930555555555800 ) ) ; +#1361 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000002200, 0.1147904691439571400, -0.2657218507835638100 ) ) ; +#1362 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.1206597222222222400 ) ) ; +#1363 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.1154513888888889000 ) ) ; +#1364 = ORIENTED_EDGE ( 'NONE', *, *, #1073, .T. ) ; +#1366 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000099900, 0.1294417382415822000, 0.07725694444444482200 ) ) ; +#1365 = DIRECTION ( 'NONE', ( 0.8660254037844386000, -0.4999999999999998900, 0.0000000000000000000 ) ) ; +#1367 = EDGE_LOOP ( 'NONE', ( #1012, #2453, #3199, #223 ) ) ; +#1368 = VERTEX_POINT ( 'NONE', #863 ) ; +#1369 = CARTESIAN_POINT ( 'NONE', ( -0.2419975723156072000, -0.1786042502190487400, -0.2610437370545612400 ) ) ; +#1370 = ORIENTED_EDGE ( 'NONE', *, *, #2375, .T. ) ; +#1371 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.03211805555555547600 ) ) ; +#1372 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.1970486111111111600 ) ) ; +#1373 = ORIENTED_EDGE ( 'NONE', *, *, #2017, .F. ) ; +#1374 = CARTESIAN_POINT ( 'NONE', ( 0.04675308965588677300, 0.2744069769821749200, -0.2391399609187724000 ) ) ; +#1375 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.01475694444444444800 ) ) ; +#1376 = VERTEX_POINT ( 'NONE', #2761 ) ; +#1377 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.1414930555555555500 ) ) ; +#1378 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.2717013888888887800 ) ) ; +#1379 = VECTOR ( 'NONE', #2797, 39.37007874015748100 ) ; +#1381 = PLANE ( 'NONE', #1144 ) ; +#1380 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.1484375000000000000 ) ) ; +#1382 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.04253472222222223100 ) ) ; +#1383 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, 0.2161458333333333100 ) ) ; +#1384 = LINE ( 'NONE', #493, #664 ) ; +#1385 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.05295138888888884000 ) ) ; +#1386 = CYLINDRICAL_SURFACE ( 'NONE', #1875, 0.3125000000000000000 ) ; +#1387 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.2769097222222222700 ) ) ; +#1388 = CARTESIAN_POINT ( 'NONE', ( 0.2149092686636289400, -0.1959618696209120300, -0.2511773815629318500 ) ) ; +#1389 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.0008680555555555396800 ) ) ; +#1390 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608500, 0.2764156081756481400, -0.1866319444444444800 ) ) ; +#1391 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.3411458333333333700 ) ) ; +#1392 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#1393 = CARTESIAN_POINT ( 'NONE', ( 0.2595172643670272100, -0.09516500374910928700, 0.2373531081756481100 ) ) ; +#1394 = CARTESIAN_POINT ( 'NONE', ( -0.2881562149474714000, -0.09091309120680581000, -0.2629316826968308200 ) ) ; +#1395 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.04600694444444438500 ) ) ; +#1396 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.2178819444444444800 ) ) ; +#1397 = CARTESIAN_POINT ( 'NONE', ( 0.07450287424619564400, 0.2692925430608553700, -0.2397123687179358900 ) ) ; +#1398 = AXIS2_PLACEMENT_3D ( 'NONE', #580, #1631, #50 ) ; +#1399 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.3272569444444444200 ) ) ; +#1400 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.1762152777777777900 ) ) ; +#1401 = EDGE_CURVE ( 'NONE', #273, #3456, #1952, .T. ) ; +#1403 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.2612847222222222100 ) ) ; +#1402 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1404 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1175, #3437, #1542, #736, #2277, #1253, #1727, #722, #3424 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1875000000000000300, 0.1979166666666666900, 0.2083333333333333700, 0.2187500000000000300, 0.2291666666666666900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9999999999999997800, 0.9238795325112869600, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112865200, 1.000000000000000200 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1405 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #512, #798, #2723, #1032, #3209, #2159, #1896, #2733, #2948, #274, #1080, #2406, #775, #548, #789, #2697, #2459, #2966, #3478, #1612 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 2, 2, 2, 4 ), + ( 6.441292463987601000E-017, 0.001614485608909882100, 0.003228971217819700000, 0.004036214022274608100, 0.004843456826729517600, 0.006457942435639334900, 0.008072428044549152100, 0.009686913653458971100, 0.01130139926236878800, 0.01291588487127860600 ), + .UNSPECIFIED. ) ; +#1406 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.1918402777777777300 ) ) ; +#1407 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, 3.827021247335478900E-017, 0.2734375000000000000 ) ) ; +#1408 = CARTESIAN_POINT ( 'NONE', ( -0.1517858528924624400, 0.2700383493823375600, -0.2705508843004312800 ) ) ; +#1409 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.03385416666666673400 ) ) ; +#1410 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.03211805555555547600 ) ) ; +#1411 = CARTESIAN_POINT ( 'NONE', ( 0.1951301026660770300, -0.2157541295803136500, -0.2516927864250861300 ) ) ; +#1412 = ORIENTED_EDGE ( 'NONE', *, *, #1899, .F. ) ; +#1413 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.1953124999999999700 ) ) ; +#1414 = ORIENTED_EDGE ( 'NONE', *, *, #1719, .F. ) ; +#1415 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.08767361111111110500 ) ) ; +#1416 = PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE ( 'ANY', '', #2670, .NOT_KNOWN. ) ; +#1417 = ORIENTED_EDGE ( 'NONE', *, *, #1899, .T. ) ; +#1418 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.1640625000000000000 ) ) ; +#1419 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.2595486111111111600 ) ) ; +#1420 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1421 = ORIENTED_EDGE ( 'NONE', *, *, #2269, .T. ) ; +#1422 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.08593750000000002800 ) ) ; +#1423 = AXIS2_PLACEMENT_3D ( 'NONE', #1245, #1299, #729 ) ; +#1424 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.009548611111111176100 ) ) ; +#1425 = EDGE_CURVE ( 'NONE', #2743, #859, #1132, .T. ) ; +#1426 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.1710069444444443900 ) ) ; +#1427 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.007812499999999959200 ) ) ; +#1428 = CIRCLE ( 'NONE', #3050, 0.3125000000000000000 ) ; +#1429 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, -0.2706329386826369400, 0.2315704386826372700 ) ) ; +#1430 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #2352, #1015, #1524, #3430, #3166, #2921 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 0.04704561619095051100, 0.05052294385006563700, 0.05400027150918076300 ), + .UNSPECIFIED. ) ; +#1431 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756481400, 0.1953124999999999700 ) ) ; +#1432 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, 0.02290461294846864900, 0.2734374999999999400 ) ) ; +#1433 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.1258680555555555200 ) ) ; +#1434 = FACE_OUTER_BOUND ( 'NONE', #401, .T. ) ; +#1435 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.2161458333333332900 ) ) ; +#1436 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.04253472222222216100 ) ) ; +#1437 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.2578125000000000000 ) ) ; +#1438 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.3220486111111111000 ) ) ; +#1439 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.1241319444444444600 ) ) ; +#1440 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000001100, 0.04592516829954297600, -0.2724602772382586600 ) ) ; +#1441 = ADVANCED_FACE ( 'NONE', ( #1682 ), #259, .F. ) ; +#1442 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.1144950937579609200, 0.1883680555555555200 ) ) ; +#1443 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#1445 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.09114583333333325900 ) ) ; +#1444 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.09461805555555556600 ) ) ; +#1446 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.07552083333333338400 ) ) ; +#1447 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.05815972222222225200 ) ) ; +#1448 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.2578125000000000600 ) ) ; +#1449 = EDGE_CURVE ( 'NONE', #2575, #1709, #1405, .T. ) ; +#1450 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, -0.1519097222222222400 ) ) ; +#1451 = CARTESIAN_POINT ( 'NONE', ( -0.2031580096348596400, 0.2092786972240347800, 0.2524453762079880100 ) ) ; +#1452 = CARTESIAN_POINT ( 'NONE', ( -1.553567824827460700E-016, 0.5412658773652743200, 0.2315704386826372700 ) ) ; +#1453 = ORIENTED_EDGE ( 'NONE', *, *, #1449, .T. ) ; +#1454 = ORIENTED_EDGE ( 'NONE', *, *, #1255, .T. ) ; +#1456 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.08767361111111103600 ) ) ; +#1455 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, 0.08420138888888890900 ) ) ; +#1457 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.07204861111111116000 ) ) ; +#1458 = CYLINDRICAL_SURFACE ( 'NONE', #66, 0.3125000000000000000 ) ; +#1459 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.2421875000000000000 ) ) ; +#1460 = ORIENTED_EDGE ( 'NONE', *, *, #2529, .T. ) ; +#1461 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.1970486111111111300 ) ) ; +#1462 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.08072916666666661600 ) ) ; +#1463 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.1848958333333333100 ) ) ; +#1464 = VERTEX_POINT ( 'NONE', #526 ) ; +#1465 = CARTESIAN_POINT ( 'NONE', ( 0.2144843763911360700, 0.4174332649188828800, 0.2734375000000002800 ) ) ; +#1466 =( NAMED_UNIT ( * ) SI_UNIT ( $, .STERADIAN. ) SOLID_ANGLE_UNIT ( ) ); +#1467 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1468 = LINE ( 'NONE', #636, #1379 ) ; +#1470 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.1362847222222221500 ) ) ; +#1469 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.1710069444444444200 ) ) ; +#1471 = AXIS2_PLACEMENT_3D ( 'NONE', #838, #1113, #3435 ) ; +#1472 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.2057291666666666300 ) ) ; +#1473 = EDGE_CURVE ( 'NONE', #3249, #648, #2366, .T. ) ; +#1474 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, -0.1727430555555555800 ) ) ; +#1475 = VECTOR ( 'NONE', #339, 39.37007874015748100 ) ; +#1476 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.09288194444444444800 ) ) ; +#1477 = CARTESIAN_POINT ( 'NONE', ( -0.009694360747688351300, -0.3046264168516231200, 0.2655639168516459300 ) ) ; +#1478 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.1467013888888889200 ) ) ; +#1479 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#1480 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #176, #2076, #458, #2323, #2359, #720, #777, #3226, #2425 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6458333333333333700, 0.6562500000000000000, 0.6666666666666667400, 0.6770833333333334800, 0.6875000000000001100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112859600, 1.000000000000000900 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1482 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.1848958333333332600 ) ) ; +#1481 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.1467013888888889200 ) ) ; +#1483 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.3168402777777777300 ) ) ; +#1484 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.1519097222222222400 ) ) ; +#1485 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999904500, 0.1294417382416017700, 0.0008680555555558659100 ) ) ; +#1486 = CARTESIAN_POINT ( 'NONE', ( -0.1797364555128558600, -0.2418773094874945900, 0.2621281612304254300 ) ) ; +#1487 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.1571180555555555200 ) ) ; +#1489 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.2664930555555555800 ) ) ; +#1488 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.06684027777777774800 ) ) ; +#1490 = EDGE_CURVE ( 'NONE', #1881, #3156, #408, .T. ) ; +#1491 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.1467013888888888400 ) ) ; +#1492 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.1588541666666667100 ) ) ; +#1493 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.002604166666666653100 ) ) ; +#1494 = ORIENTED_EDGE ( 'NONE', *, *, #1255, .F. ) ; +#1495 = ORIENTED_EDGE ( 'NONE', *, *, #1473, .F. ) ; +#1496 = ORIENTED_EDGE ( 'NONE', *, *, #1120, .F. ) ; +#1498 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.2248263888888889000 ) ) ; +#1497 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.2144097222222222100 ) ) ; +#1499 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.1536458333333332600 ) ) ; +#1500 = ORIENTED_EDGE ( 'NONE', *, *, #515, .F. ) ; +#1501 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000001100, -0.04577619060156053200, -0.2734375000000000000 ) ) ; +#1502 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, -0.2213541666666666600 ) ) ; +#1503 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.05295138888888884000 ) ) ; +#1504 = FACE_OUTER_BOUND ( 'NONE', #3342, .T. ) ; +#1505 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.1519097222222222400 ) ) ; +#1506 = CARTESIAN_POINT ( 'NONE', ( -0.3919410589494880500, 0.3149786014743203900, 0.2548427262045494000 ) ) ; +#1507 = APPLICATION_CONTEXT ( 'configuration controlled 3d designs of mechanical parts and assemblies' ) ; +#1508 = LINE ( 'NONE', #2630, #498 ) ; +#1509 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #421, #998, #2068, #2598, #431, #965 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 2.380729676757422200E-007, 0.003477957935430242700, 0.006955677797892809500 ), + .UNSPECIFIED. ) ; +#1511 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.3168402777777777300 ) ) ; +#1510 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.2039930555555555800 ) ) ; +#1512 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.2300347222222221500 ) ) ; +#1513 = CYLINDRICAL_SURFACE ( 'NONE', #2689, 0.3125000000000000000 ) ; +#1514 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.2092013888888889200 ) ) ; +#1515 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, 0.0008680555555555054200 ) ) ; +#1516 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, -0.006076388888888914100 ) ) ; +#1517 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.2491319444444444800 ) ) ; +#1518 = CARTESIAN_POINT ( 'NONE', ( 0.2343750000000001900, -0.4059494080239555200, -0.2734375000000000000 ) ) ; +#1520 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.2994791666666666300 ) ) ; +#1519 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.2109375000000000000 ) ) ; +#1521 = EDGE_CURVE ( 'NONE', #3205, #525, #850, .T. ) ; +#1522 = CARTESIAN_POINT ( 'NONE', ( 0.2783816866286062400, -0.007134507392979584600, 0.2391801409375612600 ) ) ; +#1523 = ADVANCED_FACE ( 'NONE', ( #871 ), #1076, .T. ) ; +#1524 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000001100, -0.09121345827287624700, 0.2694998449491513000 ) ) ; +#1525 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.09288194444444444800 ) ) ; +#1526 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.06336805555555553900 ) ) ; +#1527 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.1414930555555555500 ) ) ; +#1528 = PERSON_AND_ORGANIZATION_ROLE ( 'creator' ) ; +#1529 = AXIS2_PLACEMENT_3D ( 'NONE', #1332, #506, #219 ) ; +#1530 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.1866319444444444500 ) ) ; +#1531 = EDGE_CURVE ( 'NONE', #1834, #1274, #2226, .T. ) ; +#1532 = CARTESIAN_POINT ( 'NONE', ( 0.2167182245135458300, 0.1823664472809099200, 0.2432624200265594300 ) ) ; +#1533 = ORIENTED_EDGE ( 'NONE', *, *, #308, .T. ) ; +#1534 = ORIENTED_EDGE ( 'NONE', *, *, #147, .F. ) ; +#1535 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.06510416666666667100 ) ) ; +#1536 = ORIENTED_EDGE ( 'NONE', *, *, #694, .T. ) ; +#1537 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.01649305555555555900 ) ) ; +#1538 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.08593750000000002800 ) ) ; +#1539 = ORIENTED_EDGE ( 'NONE', *, *, #3230, .F. ) ; +#1540 = CARTESIAN_POINT ( 'NONE', ( -0.2542656236088642300, 0.3944655511290284200, 0.2734375000000002200 ) ) ; +#1541 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.1032986111111111300 ) ) ; +#1542 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.1414930555555555800 ) ) ; +#1543 = ORIENTED_EDGE ( 'NONE', *, *, #2269, .F. ) ; +#1544 = CALENDAR_DATE ( 2021, 8, 9 ) ; +#1545 = CARTESIAN_POINT ( 'NONE', ( -0.2343749999999999400, -0.4059494080239556800, -0.2734375000000000000 ) ) ; +#1546 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608500, 0.2764156081756481400, 0.04253472222222216100 ) ) ; +#1547 = AXIS2_PLACEMENT_3D ( 'NONE', #2564, #1174, #1252 ) ; +#1548 = CARTESIAN_POINT ( 'NONE', ( 0.1825547525567883200, -0.2491436587492629500, 0.2693022036417733700 ) ) ; +#1549 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, 0.04253472222222223100 ) ) ; +#1550 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.1866319444444444500 ) ) ; +#1551 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999899500, -0.1294417382416022400, 0.08420138888888927000 ) ) ; +#1552 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.06857638888888889500 ) ) ; +#1553 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#1555 = CARTESIAN_POINT ( 'NONE', ( -0.4687499999999999400, 0.1147904691442290400, 0.2657218507835240600 ) ) ; +#1554 = CARTESIAN_POINT ( 'NONE', ( -0.03824492952929584700, -0.5191851570063972200, 0.2443187485257420600 ) ) ; +#1556 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756481400, -0.01996527777777782100 ) ) ; +#1557 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, 0.1294417382415921400, -0.2282986111111111000 ) ) ; +#1558 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.2960069444444443600 ) ) ; +#1559 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.006076388888888914100 ) ) ; +#1560 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.05815972222222225200 ) ) ; +#1561 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.04600694444444442000 ) ) ; +#1562 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#1563 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.09288194444444444800 ) ) ; +#1564 = CARTESIAN_POINT ( 'NONE', ( 0.1682799824041650300, 0.2293989551153308400, 0.2445491385691584700 ) ) ; +#1565 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.1144950937579609200, 0.1397569444444444200 ) ) ; +#1566 = CARTESIAN_POINT ( 'NONE', ( 0.2570485884717656500, -0.1745854217509843800, 0.2711703926256323100 ) ) ; +#1567 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #769, #1074, #1310, #3500, #782, #255, #1053, #3258, #1333 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3958333333333333700, 0.4062500000000000600, 0.4166666666666667400, 0.4270833333333333700, 0.4375000000000000600 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9999999999999995600, 0.9238795325112871800, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112862900, 1.000000000000000400 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1568 = ORIENTED_EDGE ( 'NONE', *, *, #3000, .F. ) ; +#1569 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.2508680555555555200 ) ) ; +#1570 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.09114583333333330100 ) ) ; +#1571 = ORIENTED_EDGE ( 'NONE', *, *, #2386, .T. ) ; +#1572 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.04947916666666666400 ) ) ; +#1573 = ORIENTED_EDGE ( 'NONE', *, *, #2779, .T. ) ; +#1574 = CARTESIAN_POINT ( 'NONE', ( 0.3917885952323240100, 0.3150666264424668600, -0.2548796692176173400 ) ) ; +#1576 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.01996527777777778700 ) ) ; +#1575 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1577 = EDGE_CURVE ( 'NONE', #1756, #303, #623, .T. ) ; +#1578 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.05642361111111107000 ) ) ; +#1579 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.2352430555555555800 ) ) ; +#1580 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.08072916666666658800 ) ) ; +#1581 = ORIENTED_EDGE ( 'NONE', *, *, #2591, .F. ) ; +#1582 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.2074652777777778200 ) ) ; +#1583 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, 0.1536458333333332600 ) ) ; +#1584 = ORIENTED_EDGE ( 'NONE', *, *, #1766, .F. ) ; +#1585 = CARTESIAN_POINT ( 'NONE', ( 0.3137698154534637700, -0.3601107899496375200, -0.2686183538591385700 ) ) ; +#1586 = SHAPE_DEFINITION_REPRESENTATION ( #2530, #2053 ) ; +#1587 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.1119791666666666600 ) ) ; +#1588 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1589 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.01475694444444444800 ) ) ; +#1590 = CYLINDRICAL_SURFACE ( 'NONE', #400, 0.3125000000000000000 ) ; +#1591 = EDGE_CURVE ( 'NONE', #570, #136, #3057, .T. ) ; +#1592 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.1137152777777778200 ) ) ; +#1593 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, -0.2706329386826369400, -0.2315704386826372700 ) ) ; +#1594 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.2421875000000000000 ) ) ; +#1595 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, 0.0008680555555555055300 ) ) ; +#1596 = APPROVAL ( #2624, 'UNSPECIFIED' ) ; +#1597 = FACE_OUTER_BOUND ( 'NONE', #2263, .T. ) ; +#1598 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.2352430555555555800 ) ) ; +#1599 = CONICAL_SURFACE ( 'NONE', #676, 0.4687500000000000000, 1.047197551196600100 ) ; +#1600 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.1848958333333333100 ) ) ; +#1601 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.2473958333333332900 ) ) ; +#1602 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#1603 = EDGE_CURVE ( 'NONE', #305, #523, #1428, .T. ) ; +#1604 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.2612847222222222100 ) ) ; +#1605 = EDGE_LOOP ( 'NONE', ( #2350, #1102, #1930, #356, #2349 ) ) ; +#1606 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.2109375000000000600 ) ) ; +#1607 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.000000000000000000, -1.143564276417598300E-016 ) ) ; +#1608 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.2664930555555555800 ) ) ; +#1609 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756481400, 0.2022569444444443900 ) ) ; +#1610 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.1727430555555556100 ) ) ; +#1611 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, 0.1883680555555555500 ) ) ; +#1612 = CARTESIAN_POINT ( 'NONE', ( 0.1162145979915523800, -0.2507982369490968600, 0.2373531081758390700 ) ) ; +#1613 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.1588541666666666900 ) ) ; +#1614 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.1640625000000000000 ) ) ; +#1615 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.1067708333333334000 ) ) ; +#1616 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.2664930555555555800 ) ) ; +#1617 = ORIENTED_EDGE ( 'NONE', *, *, #3064, .T. ) ; +#1618 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.2352430555555555800 ) ) ; +#1619 = ORIENTED_EDGE ( 'NONE', *, *, #1168, .T. ) ; +#1620 = EDGE_LOOP ( 'NONE', ( #268, #1323, #2174, #2974 ) ) ; +#1621 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608500, 0.2764156081756481400, -0.07552083333333335600 ) ) ; +#1622 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.3098958333333333700 ) ) ; +#1623 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.1144950937579609200, -0.08246527777777783200 ) ) ; +#1625 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#1624 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -2.446791525458581000E-017, -0.2595486111111110500 ) ) ; +#1626 = ORIENTED_EDGE ( 'NONE', *, *, #740, .T. ) ; +#1627 = EDGE_CURVE ( 'NONE', #808, #2787, #2632, .T. ) ; +#1628 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.2560763888888889500 ) ) ; +#1629 = LINE ( 'NONE', #1407, #2667 ) ; +#1630 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.1241319444444444900 ) ) ; +#1631 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#1632 = VECTOR ( 'NONE', #2482, 39.37007874015748100 ) ; +#1633 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.1137152777777778200 ) ) ; +#1634 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.1467013888888888700 ) ) ; +#1635 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1801, #2860, #1220, #157, #3400, #3176, #1263, #966, #461 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1041666666666666600, 0.1145833333333333100, 0.1250000000000000000, 0.1354166666666666600, 0.1458333333333333400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112866300, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1636 = FACE_OUTER_BOUND ( 'NONE', #1751, .T. ) ; +#1638 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.1901041666666667100 ) ) ; +#1637 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000002800, 0.1294417382415920000, -0.1519097222222222100 ) ) ; +#1639 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#1640 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.1814236111111110200 ) ) ; +#1641 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.01996527777777782100 ) ) ; +#1642 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.2942708333333333700 ) ) ; +#1643 = CARTESIAN_POINT ( 'NONE', ( 0.01866537819991497000, 0.2771706855050155000, -0.2385778175350158900 ) ) ; +#1644 = AXIS2_PLACEMENT_3D ( 'NONE', #1345, #2717, #3522 ) ; +#1645 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.05989583333333332900 ) ) ; +#1646 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.07204861111111111900 ) ) ; +#1647 = EDGE_CURVE ( 'NONE', #859, #1840, #1993, .T. ) ; +#1648 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.1258680555555555200 ) ) ; +#1649 = CARTESIAN_POINT ( 'NONE', ( 0.1909327449783783700, -0.2000800081896084200, 0.2373531081756480300 ) ) ; +#1650 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #115, #1465, #3108, #2842, #2298, #1173, #2034, #1452 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 4 ), + ( 0.006955677797892807800, 0.008688035829550251600, 0.01042039386120769500, 0.01388510992452258000 ), + .UNSPECIFIED. ) ; +#1651 = CARTESIAN_POINT ( 'NONE', ( -0.1648257449208821200, 0.2303082668307278300, -0.2439278642712511500 ) ) ; +#1652 = CARTESIAN_POINT ( 'NONE', ( 0.07696140476767643300, -0.4968321896054448400, -0.2548796692176171800 ) ) ; +#1653 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.07552083333333338400 ) ) ; +#1654 = CARTESIAN_POINT ( 'NONE', ( 0.2887123539100012200, 0.1195885726135495200, 0.3828124999999829000 ) ) ; +#1655 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, 0.09199845610862313100, -0.2685885371340084300 ) ) ; +#1656 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.03211805555555551100 ) ) ; +#1657 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.1970486111111111300 ) ) ; +#1658 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999905100, -0.1294417382416017100, -0.1380208333333329500 ) ) ; +#1659 = ORIENTED_EDGE ( 'NONE', *, *, #2339, .T. ) ; +#1660 = AXIS2_PLACEMENT_3D ( 'NONE', #3459, #229, #2917 ) ; +#1661 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.09288194444444444800 ) ) ; +#1662 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #451, #2364, #2340, #2614, #1608, #2131, #2971 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 3 ), + ( 0.8802083333333079500, 0.8906249999999745800, 0.9010416666666410900, 0.9114583333333078400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000006400, 0.9238795325112803000, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112940700, 0.9999999999999926700 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1663 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, 0.09809027777777779000 ) ) ; +#1664 = ORIENTED_EDGE ( 'NONE', *, *, #77, .F. ) ; +#1665 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.1276041666666667100 ) ) ; +#1666 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.2109375000000000600 ) ) ; +#1667 = EDGE_LOOP ( 'NONE', ( #2739, #1198, #3245, #696, #1414, #1202 ) ) ; +#1668 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, 0.1825358244430620400, -0.2547220505730512000 ) ) ; +#1669 = EDGE_CURVE ( 'NONE', #3156, #1067, #1136, .T. ) ; +#1670 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.2369791666666666600 ) ) ; +#1671 = ORIENTED_EDGE ( 'NONE', *, *, #3347, .T. ) ; +#1672 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, -0.1144950937579609900, 0.07031249999999994400 ) ) ; +#1673 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.05498248300264053200, 0.3532299199133658900 ) ) ; +#1674 = APPROVAL_DATE_TIME ( #823, #2707 ) ; +#1675 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.1692708333333333400 ) ) ; +#1676 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #3391, #2296, #670, #2273, #915, #936, #2043, #1745, #1997, #376, #659, #385, #1451, #2577, #3129, #122, #1225, #3358, #420, #1217, #2597, #2007, #2849, #102, #957, #3399, #2869, #644, #1182, #1770, #1207, #1736, #2322, #3368, #1724, #1486, #2288, #2022, #2829, #1758, #687, #2307, #141, #3099, #1477, #3107 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ), + ( 0.01371192667186098800, 0.01444770865116279600, 0.01518349063046460200, 0.01665505458906821700, 0.01812661854767183200, 0.01886240052697364000, 0.01959818250627545100, 0.02106974646487907000, 0.02180552844418087700, 0.02254131042348268500, 0.02401287438208630400, 0.02548443834068991900, 0.02622022031999173000, 0.02695600229929353400, 0.02842756625789715300, 0.02989913021650077200, 0.03137069417510438700, 0.03210647615440619100, 0.03284225813370800200, 0.03431382209231161700, 0.03578538605091523300, 0.03652116803021703700, 0.03725695000951884800 ), + .UNSPECIFIED. ) ; +#1677 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, 0.1119791666666666700 ) ) ; +#1678 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.2734375000000000000 ) ) ; +#1679 = CARTESIAN_POINT ( 'NONE', ( -0.2938701473056258800, -0.07187828279571351100, -0.2633072124914915300 ) ) ; +#1680 = CYLINDRICAL_SURFACE ( 'NONE', #1109, 0.3125000000000000000 ) ; +#1681 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.1449652777777778500 ) ) ; +#1682 = FACE_OUTER_BOUND ( 'NONE', #898, .T. ) ; +#1683 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.03385416666666673400 ) ) ; +#1684 = CARTESIAN_POINT ( 'NONE', ( 0.009329201107784615100, 0.2774579951589916100, -0.2383954951589916400 ) ) ; +#1685 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.2960069444444444200 ) ) ; +#1687 = DIRECTION ( 'NONE', ( 8.659560562354931600E-017, 0.7071067811865473500, 0.7071067811865476800 ) ) ; +#1686 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1688 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, 0.2161458333333333400 ) ) ; +#1689 = CARTESIAN_POINT ( 'NONE', ( -0.3038328689934381400, -0.01299779049572127700, -0.2644024079861561100 ) ) ; +#1690 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.01475694444444441300 ) ) ; +#1691 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.05989583333333329400 ) ) ; +#1692 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.2022569444444443900 ) ) ; +#1693 = AXIS2_PLACEMENT_3D ( 'NONE', #1293, #2107, #779 ) ; +#1694 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.2473958333333333100 ) ) ; +#1695 = EDGE_CURVE ( 'NONE', #567, #315, #2586, .T. ) ; +#1696 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.3446180555555554700 ) ) ; +#1697 = CARTESIAN_POINT ( 'NONE', ( -0.4687499999999999400, 0.1147904691442290400, -0.2657218507835240600 ) ) ; +#1698 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1699 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#1700 = CARTESIAN_POINT ( 'NONE', ( -0.2936839806361542000, 0.08563261044846569300, -0.2662070565833162300 ) ) ; +#1701 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.2369791666666666600 ) ) ; +#1702 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.1154513888888888500 ) ) ; +#1703 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.03732638888888892300 ) ) ; +#1704 = EDGE_CURVE ( 'NONE', #2575, #226, #3168, .T. ) ; +#1705 = ORIENTED_EDGE ( 'NONE', *, *, #3177, .T. ) ; +#1706 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.2647569444444444200 ) ) ; +#1707 = EDGE_LOOP ( 'NONE', ( #3079, #3392, #947, #1664 ) ) ; +#1708 = CARTESIAN_POINT ( 'NONE', ( 0.01979829271009823600, 0.2973955534990527200, -0.2583330534991054000 ) ) ; +#1709 = VERTEX_POINT ( 'NONE', #184 ) ; +#1710 = AXIS2_PLACEMENT_3D ( 'NONE', #1320, #2983, #2474 ) ; +#1711 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.2039930555555555800 ) ) ; +#1712 = VECTOR ( 'NONE', #1208, 39.37007874015748100 ) ; +#1713 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000094400, -0.1294417382415829200, -0.006076388888888520400 ) ) ; +#1714 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.1293402777777777600 ) ) ; +#1715 = ORIENTED_EDGE ( 'NONE', *, *, #2039, .F. ) ; +#1717 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.2439236111111110200 ) ) ; +#1716 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.06336805555555553900 ) ) ; +#1718 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.03038194444444450300 ) ) ; +#1719 = EDGE_CURVE ( 'NONE', #605, #1026, #1430, .T. ) ; +#1720 = PERSON_AND_ORGANIZATION ( #3475, #860 ) ; +#1721 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.2404513888888888700 ) ) ; +#1722 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.1484375000000000000 ) ) ; +#1723 = FACE_OUTER_BOUND ( 'NONE', #443, .T. ) ; +#1724 = CARTESIAN_POINT ( 'NONE', ( -0.1946996817505054200, -0.2295372812942998200, 0.2617718692215260700 ) ) ; +#1725 = ADVANCED_FACE ( 'NONE', ( #3007 ), #2504, .T. ) ; +#1726 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000099400, -0.1294417382415823700, 0.1605902777777781000 ) ) ; +#1727 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.1276041666666666900 ) ) ; +#1728 = CONICAL_SURFACE ( 'NONE', #1090, 0.4687500000000000000, 1.047197551196600100 ) ; +#1730 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.2786458333333332600 ) ) ; +#1729 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.2335069444444444500 ) ) ; +#1731 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.007812499999999958400 ) ) ; +#1732 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1463, #1193, #3379, #396, #679, #3118, #131, #2033, #411 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6875000000000001100, 0.6979166666666667400, 0.7083333333333334800, 0.7187500000000001100, 0.7291666666666667400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9999999999999992200, 0.9238795325112875200, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112859600, 1.000000000000000900 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1733 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, -0.2005208333333333700 ) ) ; +#1734 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.1935763888888889000 ) ) ; +#1735 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.03211805555555551100 ) ) ; +#1736 = CARTESIAN_POINT ( 'NONE', ( -0.2347979156124473400, -0.1873951000741438400, 0.2607273813136794000 ) ) ; +#1737 = CARTESIAN_POINT ( 'NONE', ( -0.2010053209760638300, 0.1906065644010116200, -0.2373531081756481100 ) ) ; +#1739 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.2612847222222222100 ) ) ; +#1738 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.04600694444444445400 ) ) ; +#1740 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.1848958333333332600 ) ) ; +#1741 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #1593, #1010, #2108, #748, #2679, #3496 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 0.01263774830727110000, 0.01611662700970827400, 0.01959550571214544900 ), + .UNSPECIFIED. ) ; +#1742 = ADVANCED_FACE ( 'NONE', ( #2675 ), #452, .F. ) ; +#1743 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.2074652777777778200 ) ) ; +#1744 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.1380208333333333400 ) ) ; +#1745 = CARTESIAN_POINT ( 'NONE', ( -0.1317888814312931100, 0.2588808416671007400, 0.2507746354452815000 ) ) ; +#1746 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001100, 0.04592516829879963300, 0.2724602772383053500 ) ) ; +#1747 = ORIENTED_EDGE ( 'NONE', *, *, #3134, .F. ) ; +#1748 = EDGE_LOOP ( 'NONE', ( #2606, #263, #1112, #2219, #2134, #1287 ) ) ; +#1750 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.1015624999999999400 ) ) ; +#1749 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.09809027777777772100 ) ) ; +#1751 = EDGE_LOOP ( 'NONE', ( #2910, #1970, #1215, #1584 ) ) ; +#1752 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.2994791666666666300 ) ) ; +#1753 = ORIENTED_EDGE ( 'NONE', *, *, #545, .F. ) ; +#1754 = ORIENTED_EDGE ( 'NONE', *, *, #3073, .T. ) ; +#1755 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, -0.2769097222222222100 ) ) ; +#1756 = VERTEX_POINT ( 'NONE', #1256 ) ; +#1757 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.2595486111111111600 ) ) ; +#1758 = CARTESIAN_POINT ( 'NONE', ( -0.09505576063294581000, -0.2883878581626261300, 0.2639599997848367500 ) ) ; +#1759 = EDGE_LOOP ( 'NONE', ( #765, #1617, #959 ) ) ; +#1760 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.1362847222222222100 ) ) ; +#1761 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#1763 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.1796875000000000600 ) ) ; +#1762 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.2821180555555555200 ) ) ; +#1764 = CONICAL_SURFACE ( 'NONE', #1297, 0.4687500000000000000, 1.047197551196600100 ) ; +#1765 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.3307291666666666300 ) ) ; +#1766 = EDGE_CURVE ( 'NONE', #2901, #2900, #2239, .T. ) ; +#1767 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.1067708333333333600 ) ) ; +#1768 = CIRCLE ( 'NONE', #2247, 0.4687500000000000000 ) ; +#1769 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2438, #1366, #1874, #1890, #7, #1052, #267, #2164, #2702 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3802083333333077800, 0.3906249999999744600, 0.4010416666666410900, 0.4114583333333078400, 0.4218749999999745200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000007800, 0.9238795325112790800, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112936200, 0.9999999999999931200 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1770 = CARTESIAN_POINT ( 'NONE', ( -0.2656335776272867900, -0.1379399709324173900, 0.2596261153322979000 ) ) ; +#1771 = ORIENTED_EDGE ( 'NONE', *, *, #3252, .F. ) ; +#1772 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.2706329386826370500, 0.2315704386826373300 ) ) ; +#1774 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.1762152777777777900 ) ) ; +#1773 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001100, 0.2706329386826371600, 0.2315704386826372700 ) ) ; +#1775 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.1571180555555555200 ) ) ; +#1776 = ADVANCED_FACE ( 'NONE', ( #1209 ), #413, .T. ) ; +#1777 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, -0.1935763888888889000 ) ) ; +#1778 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.02517361111111109500 ) ) ; +#1779 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.2074652777777778200 ) ) ; +#1780 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1781 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999899000, 0.1294417382416023200, 0.1675347222222225700 ) ) ; +#1783 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.3307291666666666300 ) ) ; +#1782 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.3307291666666665700 ) ) ; +#1784 = EDGE_CURVE ( 'NONE', #940, #303, #1508, .T. ) ; +#1785 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.02517361111111109500 ) ) ; +#1786 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.1362847222222222100 ) ) ; +#1787 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.1484375000000000000 ) ) ; +#1788 = ORIENTED_EDGE ( 'NONE', *, *, #2071, .T. ) ; +#1789 = VERTEX_POINT ( 'NONE', #1810 ) ; +#1790 = ORIENTED_EDGE ( 'NONE', *, *, #1425, .F. ) ; +#1791 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1792 = ORIENTED_EDGE ( 'NONE', *, *, #2779, .F. ) ; +#1793 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#1795 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.3480902777777777900 ) ) ; +#1794 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.2855902777777777900 ) ) ; +#1796 = EDGE_LOOP ( 'NONE', ( #3250, #739, #2182 ) ) ; +#1797 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#1798 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.01649305555555555900 ) ) ; +#1799 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, -0.03385416666666669900 ) ) ; +#1800 = DATE_AND_TIME ( #1887, #2580 ) ; +#1801 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.2039930555555555800 ) ) ; +#1802 = CARTESIAN_POINT ( 'NONE', ( 0.2343749999999999400, 0.4059494080239556300, -0.2734375000000000000 ) ) ; +#1803 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.1085069444444444100 ) ) ; +#1805 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.3342013888888888400 ) ) ; +#1804 = CARTESIAN_POINT ( 'NONE', ( 0.2604956724701250100, 0.1726217095974237900, 0.2734375000000000600 ) ) ; +#1806 = CARTESIAN_POINT ( 'NONE', ( 0.02257558911413663100, 0.2867672768986475600, 0.2477047768986476200 ) ) ; +#1807 = FACE_OUTER_BOUND ( 'NONE', #1367, .T. ) ; +#1808 = EDGE_CURVE ( 'NONE', #3286, #523, #338, .T. ) ; +#1809 = ADVANCED_FACE ( 'NONE', ( #784 ), #702, .F. ) ; +#1810 = CARTESIAN_POINT ( 'NONE', ( -0.04349090697847191700, 0.2729727632078031700, -0.2373531081756481700 ) ) ; +#1811 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.04079861111111111200 ) ) ; +#1812 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.05815972222222225200 ) ) ; +#1813 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.1796875000000000600 ) ) ; +#1814 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1815 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.1015624999999999900 ) ) ; +#1816 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1817 = CARTESIAN_POINT ( 'NONE', ( 0.3917885952323240100, 0.3150666264424668600, 0.2548796692176173400 ) ) ; +#1818 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, 3.827021247335478900E-017, 0.2734375000000000000 ) ) ; +#1819 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.07031249999999998600 ) ) ; +#1820 = CARTESIAN_POINT ( 'NONE', ( -7.310197353693474300E-013, -0.3047954476154233200, 0.2657329476154229900 ) ) ; +#1821 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, 0.04947916666666661600 ) ) ; +#1822 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.2039930555555555800 ) ) ; +#1823 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1824 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.08940972222222226500 ) ) ; +#1825 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000001100, 0.04592516829954297600, 0.2724602772382586600 ) ) ; +#1826 = EDGE_CURVE ( 'NONE', #3223, #2535, #2032, .T. ) ; +#1827 = CARTESIAN_POINT ( 'NONE', ( 0.2776323901689201600, -0.01854622791324351700, 0.2389599200605651300 ) ) ; +#1828 = VERTEX_POINT ( 'NONE', #1004 ) ; +#1829 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.03211805555555547600 ) ) ; +#1830 = ORIENTED_EDGE ( 'NONE', *, *, #1036, .F. ) ; +#1831 = ORIENTED_EDGE ( 'NONE', *, *, #404, .F. ) ; +#1832 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.2265624999999999700 ) ) ; +#1833 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.02170138888888883300 ) ) ; +#1834 = VERTEX_POINT ( 'NONE', #2738 ) ; +#1835 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.2248263888888889000 ) ) ; +#1836 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.01996527777777778700 ) ) ; +#1837 = CARTESIAN_POINT ( 'NONE', ( -0.04349090697847191700, 0.2729727632078031700, -0.2373531081756481700 ) ) ; +#1839 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#1838 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.08072916666666665700 ) ) ; +#1840 = VERTEX_POINT ( 'NONE', #546 ) ; +#1841 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#1842 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.05295138888888884000 ) ) ; +#1843 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, 0.1119791666666666700 ) ) ; +#1844 = FACE_OUTER_BOUND ( 'NONE', #1920, .T. ) ; +#1845 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.2786458333333333100 ) ) ; +#1846 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1847 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.05642361111111109800 ) ) ; +#1848 = LINE ( 'NONE', #3315, #3308 ) ; +#1849 = EDGE_CURVE ( 'NONE', #1235, #567, #44, .T. ) ; +#1850 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.09982638888888890900 ) ) ; +#1851 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.2248263888888889500 ) ) ; +#1852 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#1853 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.002604166666666721600 ) ) ; +#1854 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.1866319444444444500 ) ) ; +#1855 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, 0.3550347222222222100 ) ) ; +#1856 = DIRECTION ( 'NONE', ( 0.4999999999999998900, 0.8660254037844387100, -0.0000000000000000000 ) ) ; +#1857 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.01302083333333336900 ) ) ; +#1858 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.08420138888888885300 ) ) ; +#1859 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.2706329386826370500, 0.2734375000000000000 ) ) ; +#1861 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.1825358244430589600, 0.2547220505730428100 ) ) ; +#1860 = CARTESIAN_POINT ( 'NONE', ( -0.1549801845465362000, -0.4517880260982736800, 0.2686183538591386300 ) ) ; +#1862 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.04600694444444445400 ) ) ; +#1863 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.2387152777777778200 ) ) ; +#1864 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608500, 0.2764156081756481400, 0.09809027777777772100 ) ) ; +#1865 = CARTESIAN_POINT ( 'NONE', ( -0.1944444454972853700, 0.4290033244149891200, -0.2734375000000002800 ) ) ; +#1866 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.2300347222222222400 ) ) ; +#1867 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.2404513888888889000 ) ) ; +#1868 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.000000000000000000, -1.143564276417598300E-016 ) ) ; +#1869 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.2126736111111111000 ) ) ; +#1870 = AXIS2_PLACEMENT_3D ( 'NONE', #1553, #3458, #216 ) ; +#1871 = ORIENTED_EDGE ( 'NONE', *, *, #3299, .T. ) ; +#1872 = CARTESIAN_POINT ( 'NONE', ( 0.3137397276145919000, 0.3601281611715098100, -0.2694473453760668500 ) ) ; +#1874 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.07378472222222219600 ) ) ; +#1873 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.1657986111111111000 ) ) ; +#1875 = AXIS2_PLACEMENT_3D ( 'NONE', #227, #479, #2381 ) ; +#1876 = EDGE_LOOP ( 'NONE', ( #173, #1233, #3087, #1539 ) ) ; +#1877 = ORIENTED_EDGE ( 'NONE', *, *, #2952, .F. ) ; +#1878 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#1879 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999993900, -0.1294417382415927500, 0.02170138888888888500 ) ) ; +#1880 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1111, #2497, #2522, #2773, #1403, #595, #3302, #326, #2224 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.09122159042343180900, 0.09895833333330862600, 0.1093749999999749900, 0.1197916666666413400, 0.1302083333333078100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9709092771504725900, 0.9434632492345769200, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112942900, 0.9999999999999924500 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1881 = VERTEX_POINT ( 'NONE', #2695 ) ; +#1882 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.1692708333333333700 ) ) ; +#1883 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.2682291666666666300 ) ) ; +#1884 = ORIENTED_EDGE ( 'NONE', *, *, #1027, .T. ) ; +#1885 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.1144950937579609200, -0.03385416666666669200 ) ) ; +#1886 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.1675347222222222400 ) ) ; +#1887 = CALENDAR_DATE ( 2021, 8, 9 ) ; +#1888 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.09288194444444448900 ) ) ; +#1890 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.07031249999999998600 ) ) ; +#1889 = CARTESIAN_POINT ( 'NONE', ( -1.553567824827460700E-016, 0.5412658773652743200, 0.2315704386826372700 ) ) ; +#1891 = ADVANCED_FACE ( 'NONE', ( #1723 ), #2300, .F. ) ; +#1892 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.02864583333333332200 ) ) ; +#1893 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.1970486111111111600 ) ) ; +#1894 = FACE_OUTER_BOUND ( 'NONE', #906, .T. ) ; +#1895 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.2560763888888889500 ) ) ; +#1896 = CARTESIAN_POINT ( 'NONE', ( 0.3008353311967869600, 0.03122554208016202800, 0.2632039426452420500 ) ) ; +#1897 = AXIS2_PLACEMENT_3D ( 'NONE', #3024, #1938, #309 ) ; +#1898 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.1901041666666667100 ) ) ; +#1899 = EDGE_CURVE ( 'NONE', #2396, #2485, #876, .T. ) ; +#1900 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.2230902777777777300 ) ) ; +#1902 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.1762152777777777900 ) ) ; +#1901 = CARTESIAN_POINT ( 'NONE', ( -0.1550102723854083500, 0.4517706548764016700, 0.2694473453760668500 ) ) ; +#1903 = CARTESIAN_POINT ( 'NONE', ( -0.1073888513354332200, -0.2770411633425874900, -0.2578967095471865800 ) ) ; +#1904 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.2144097222222222100 ) ) ; +#1905 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.1414930555555555800 ) ) ; +#1906 = CARTESIAN_POINT ( 'NONE', ( 0.1006002111285006900, -0.2752748423617575300, -0.2538694195063365100 ) ) ; +#1907 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.1345486111111111300 ) ) ; +#1908 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.1223958333333332700 ) ) ; +#1909 = AXIS2_PLACEMENT_3D ( 'NONE', #2729, #2718, #246 ) ; +#1911 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000094400, -0.1294417382415829200, -0.1727430555555552200 ) ) ; +#1910 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1912 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.05295138888888884000 ) ) ; +#1913 = CARTESIAN_POINT ( 'NONE', ( -0.2586168133566643700, -0.1536872661912172300, -0.2616080747476943200 ) ) ; +#1914 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.04253472222222216100 ) ) ; +#1915 = ORIENTED_EDGE ( 'NONE', *, *, #1704, .T. ) ; +#1916 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #206, #3201, #737, #1860, #1330, #2648, #1554, #243 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 4 ), + ( 0.006955677797892807800, 0.008688035829550251600, 0.01042039386120769500, 0.01388510992452258000 ), + .UNSPECIFIED. ) ; +#1917 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.2248263888888889500 ) ) ; +#1918 = ORIENTED_EDGE ( 'NONE', *, *, #632, .F. ) ; +#1919 = CARTESIAN_POINT ( 'NONE', ( 0.1440110639356617100, 0.2412192034274493700, -0.2412544630006218100 ) ) ; +#1920 = EDGE_LOOP ( 'NONE', ( #1496, #1269, #3154 ) ) ; +#1921 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.1189236111111110500 ) ) ; +#1922 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756481400, -0.1380208333333333700 ) ) ; +#1923 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.1050347222222222100 ) ) ; +#1924 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.2456597222222222400 ) ) ; +#1925 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #3187, #2416, #3497, #1264, #3229, #1576, #1294, #2374, #768 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3541666666666666900, 0.3645833333333333100, 0.3750000000000000000, 0.3854166666666667400, 0.3958333333333333700 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112862900, 1.000000000000000400 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1926 = ORIENTED_EDGE ( 'NONE', *, *, #3299, .F. ) ; +#1927 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #469, #1540, #3148, #3183, #2055, #1506, #3444, #1772 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 4 ), + ( 0.006955677797892809500, 0.008688035829550249900, 0.01042039386120768900, 0.01388510992452257300 ), + .UNSPECIFIED. ) ; +#1928 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000095500, 0.1294417382415827800, 0.1883680555555559700 ) ) ; +#1929 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, -0.2706329386826369400, 0.2315704386826372700 ) ) ; +#1930 = ORIENTED_EDGE ( 'NONE', *, *, #1577, .F. ) ; +#1931 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.02170138888888886700 ) ) ; +#1932 = CYLINDRICAL_SURFACE ( 'NONE', #2029, 0.3125000000000000000 ) ; +#1933 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.2838541666666666900 ) ) ; +#1934 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2772791890991354000, -0.2382166890991354300 ) ) ; +#1935 = FACE_BOUND ( 'NONE', #3451, .T. ) ; +#1936 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.04600694444444442000 ) ) ; +#1937 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.08593750000000002800 ) ) ; +#1938 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#1939 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.2706329386826370500, -0.2315704386826373300 ) ) ; +#1940 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.1085069444444444300 ) ) ; +#1941 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.002604166666666653100 ) ) ; +#1942 = CARTESIAN_POINT ( 'NONE', ( -0.3036433705719217000, 0.02662632995407207900, -0.2651016883581830400 ) ) ; +#1943 = VERTEX_POINT ( 'NONE', #2250 ) ; +#1944 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.1137152777777778200 ) ) ; +#1945 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.02343750000000004900 ) ) ; +#1946 = CARTESIAN_POINT ( 'NONE', ( 0.09242831711924610900, 0.2640766233361970800, -0.2400957286738259500 ) ) ; +#1947 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.2855902777777777900 ) ) ; +#1948 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.03906249999999996500 ) ) ; +#1949 = EDGE_CURVE ( 'NONE', #142, #2657, #1290, .T. ) ; +#1950 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.1345486111111111300 ) ) ; +#1951 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.03038194444444446800 ) ) ; +#1952 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #1962, #43, #3489, #1585, #3224, #1337, #3516, #3248 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 4 ), + ( 0.006955677797892810400, 0.008688035829550253300, 0.01042039386120769700, 0.01388510992452258000 ), + .UNSPECIFIED. ) ; +#1953 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.1710069444444443900 ) ) ; +#1954 = CARTESIAN_POINT ( 'NONE', ( 7.867357284603775100E-013, 0.2960692680293277600, -0.2570067680293277000 ) ) ; +#1955 = CARTESIAN_POINT ( 'NONE', ( -0.1252193114401881600, 0.2839431606834181300, -0.2711059848002226900 ) ) ; +#1956 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.09635416666666669900 ) ) ; +#1957 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.09114583333333325900 ) ) ; +#1958 = CARTESIAN_POINT ( 'NONE', ( 0.2388988382660772200, 0.1523447677745358200, -0.2438179418909080500 ) ) ; +#1959 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.2022569444444444500 ) ) ; +#1960 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.3272569444444444200 ) ) ; +#1962 = CARTESIAN_POINT ( 'NONE', ( 0.2343750000000001900, -0.4059494080239555200, -0.2734375000000000000 ) ) ; +#1961 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#1963 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.2265624999999999400 ) ) ; +#1964 = CARTESIAN_POINT ( 'NONE', ( -0.2575571340372314100, 0.1672645072192382200, -0.2678825940600461100 ) ) ; +#1965 = ORIENTED_EDGE ( 'NONE', *, *, #381, .T. ) ; +#1966 = EDGE_LOOP ( 'NONE', ( #1364, #3408, #3125, #602, #2267, #1232 ) ) ; +#1967 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.1102430555555555800 ) ) ; +#1968 = ORIENTED_EDGE ( 'NONE', *, *, #981, .T. ) ; +#1969 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.04947916666666661600 ) ) ; +#1970 = ORIENTED_EDGE ( 'NONE', *, *, #2411, .T. ) ; +#1971 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.04774305555555556600 ) ) ; +#1972 = EDGE_CURVE ( 'NONE', #2900, #808, #2931, .T. ) ; +#1973 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.1536458333333333100 ) ) ; +#1974 = ORIENTED_EDGE ( 'NONE', *, *, #981, .F. ) ; +#1975 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.3342013888888889000 ) ) ; +#1976 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.02290461294865955500, -0.2734375000000000000 ) ) ; +#1977 = CARTESIAN_POINT ( 'NONE', ( 0.2385398891419389400, -0.1523708127916701400, 0.2353547534317600200 ) ) ; +#1978 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#1979 = CARTESIAN_POINT ( 'NONE', ( -0.09772751020754240300, 0.2956246284725955700, -0.2716595063629423400 ) ) ; +#1980 = CIRCLE ( 'NONE', #192, 0.3125000000000000000 ) ; +#1982 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.1467013888888888400 ) ) ; +#1981 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.1571180555555555200 ) ) ; +#1983 = VECTOR ( 'NONE', #2929, 39.37007874015748100 ) ; +#1984 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.08767361111111103600 ) ) ; +#1985 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000009400, -0.1294417382415913300, 0.2647569444444444200 ) ) ; +#1986 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.2230902777777777300 ) ) ; +#1987 = CIRCLE ( 'NONE', #2062, 0.3125000000000000000 ) ; +#1988 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, 0.09199845610862313100, 0.2685885371340084300 ) ) ; +#1989 = CARTESIAN_POINT ( 'NONE', ( -0.1602565217420818500, 0.2648832382743888100, -0.2703683204417946500 ) ) ; +#1991 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.1814236111111110500 ) ) ; +#1990 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.1085069444444444100 ) ) ; +#1992 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.05642361111111107000 ) ) ; +#1993 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2877, #2543, #1447, #882, #76, #1971, #2617, #3063, #1703 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3125000000000000600, 0.3229166666666667400, 0.3333333333333333700, 0.3437500000000000000, 0.3541666666666666900 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9999999999999995600, 0.9238795325112871800, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#1994 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.1085069444444444100 ) ) ; +#1995 = CARTESIAN_POINT ( 'NONE', ( 0.2553747228603364100, 0.1057796736954687400, 0.3550347222222054500 ) ) ; +#1996 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.2178819444444444500 ) ) ; +#1997 = CARTESIAN_POINT ( 'NONE', ( -0.1488790745760171000, 0.2498670190026765200, 0.2511553266188480400 ) ) ; +#1998 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, -0.2706329386826369400, -0.2315704386826372700 ) ) ; +#2000 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.2855902777777777300 ) ) ; +#1999 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.05989583333333329400 ) ) ; +#2001 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.1501736111111110500 ) ) ; +#2002 = EDGE_LOOP ( 'NONE', ( #1494, #1792, #83, #3247 ) ) ; +#2003 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.2803819444444444800 ) ) ; +#2004 = ORIENTED_EDGE ( 'NONE', *, *, #3153, .T. ) ; +#2005 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.1137152777777777800 ) ) ; +#2006 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.04600694444444442000 ) ) ; +#2007 = CARTESIAN_POINT ( 'NONE', ( -0.2943629242382596600, 0.03163820498046361600, 0.2563512196265601600 ) ) ; +#2008 = ORIENTED_EDGE ( 'NONE', *, *, #1281, .F. ) ; +#2009 = ORIENTED_EDGE ( 'NONE', *, *, #2249, .T. ) ; +#2010 = ADVANCED_FACE ( 'NONE', ( #3220 ), #621, .F. ) ; +#2011 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, 3.827021247335478900E-017, 0.2734375000000000000 ) ) ; +#2012 = ORIENTED_EDGE ( 'NONE', *, *, #1972, .T. ) ; +#2014 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.07725694444444435000 ) ) ; +#2013 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, 0.1953125000000000000 ) ) ; +#2015 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.2543402777777777300 ) ) ; +#2016 = EDGE_LOOP ( 'NONE', ( #1568, #1454, #975, #3409 ) ) ; +#2017 = EDGE_CURVE ( 'NONE', #3494, #3297, #2790, .T. ) ; +#2018 = PERSON_AND_ORGANIZATION ( #3475, #860 ) ; +#2019 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, -0.2838541666666666900 ) ) ; +#2020 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.08246527777777780400 ) ) ; +#2021 = FACE_OUTER_BOUND ( 'NONE', #1759, .T. ) ; +#2022 = CARTESIAN_POINT ( 'NONE', ( -0.1480254342067575700, -0.2638397603141621800, 0.2628501704145612100 ) ) ; +#2023 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.1432291666666666900 ) ) ; +#2024 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.009548611111111106700 ) ) ; +#2026 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.08072916666666658800 ) ) ; +#2025 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.1779513888888888700 ) ) ; +#2027 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.3237847222222222100 ) ) ; +#2028 = ADVANCED_FACE ( 'NONE', ( #3423 ), #3043, .F. ) ; +#2029 = AXIS2_PLACEMENT_3D ( 'NONE', #2499, #2524, #1978 ) ; +#2030 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.1241319444444444600 ) ) ; +#2031 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.2248263888888889000 ) ) ; +#2032 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #3191, #1557, #3260, #1065, #1322, #1904, #2166, #522, #1043 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.06249999999999998600, 0.07291666666666665700, 0.08333333333333331500, 0.09374999999999998600, 0.1041666666666666600 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112866300, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112868500, 0.9999999999999998900 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2033 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000009400, -0.1294417382415913300, 0.2092013888888889000 ) ) ; +#2034 = CARTESIAN_POINT ( 'NONE', ( 0.03824492952929587500, 0.5191851570063968900, 0.2443187485257419200 ) ) ; +#2035 = AXIS2_PLACEMENT_3D ( 'NONE', #2906, #3178, #1295 ) ; +#2036 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #3512, #1879, #2165, #1892, #2973, #2176, #3289, #2737, #1346 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4375000000000000600, 0.4479166666666667400, 0.4583333333333333700, 0.4687500000000001100, 0.4791666666666668000 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9999999999999995600, 0.9238795325112871800, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112859600, 1.000000000000000900 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2038 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.1901041666666667100 ) ) ; +#2037 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, -0.2706329386826372100, 0.2734375000000000000 ) ) ; +#2039 = EDGE_CURVE ( 'NONE', #142, #1059, #2720, .T. ) ; +#2040 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.1918402777777777100 ) ) ; +#2041 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.3081597222222222100 ) ) ; +#2042 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, -0.2352430555555555800 ) ) ; +#2043 = CARTESIAN_POINT ( 'NONE', ( -0.09553244508125453800, 0.2735168163191164500, 0.2499978094589375700 ) ) ; +#2045 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.2769097222222222100 ) ) ; +#2044 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, 0.2717013888888888400 ) ) ; +#2046 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.2022569444444443900 ) ) ; +#2047 = EDGE_LOOP ( 'NONE', ( #2708, #2703, #2402, #2180, #3115, #1619, #1100, #3034, #1370, #3380, #397, #2651, #2222, #350, #2004, #2615, #1421, #2012, #2791, #1659, #3152, #2262, #2447, #183, #437, #1453 ) ) ; +#2048 = ORIENTED_EDGE ( 'NONE', *, *, #1695, .F. ) ; +#2049 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.1796875000000000600 ) ) ; +#2050 = VECTOR ( 'NONE', #363, 39.37007874015748100 ) ; +#2051 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.004340277777777766700 ) ) ; +#2052 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.1588541666666667100 ) ) ; +#2053 = ADVANCED_BREP_SHAPE_REPRESENTATION ( '95479A127_Medium-Strength Steel Hex Nut', ( #1273, #1547 ), #861 ) ; +#2054 = ORIENTED_EDGE ( 'NONE', *, *, #2130, .T. ) ; +#2055 = CARTESIAN_POINT ( 'NONE', ( -0.3333997874619165100, 0.3487774203263728200, 0.2657820503820232900 ) ) ; +#2056 = MECHANICAL_CONTEXT ( 'NONE', #1507, 'mechanical' ) ; +#2057 = CARTESIAN_POINT ( 'NONE', ( -0.1353502125380836300, -0.4631213957215386500, -0.2657820503820233500 ) ) ; +#2059 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.1623263888888889000 ) ) ; +#2058 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.2925347222222222100 ) ) ; +#2060 = FACE_OUTER_BOUND ( 'NONE', #1748, .T. ) ; +#2061 = CARTESIAN_POINT ( 'NONE', ( -0.4304093251952709200, -0.2927689376020594600, -0.2443506636175589200 ) ) ; +#2062 = AXIS2_PLACEMENT_3D ( 'NONE', #1047, #2967, #1302 ) ; +#2063 = ADVANCED_FACE ( 'NONE', ( #2324 ), #749, .F. ) ; +#2064 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.01302083333333333400 ) ) ; +#2065 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.1189236111111110800 ) ) ; +#2066 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.2421875000000000300 ) ) ; +#2067 = LINE ( 'NONE', #1859, #79 ) ; +#2068 = CARTESIAN_POINT ( 'NONE', ( 0.07696140476767646100, -0.4968321896054448400, 0.2548796692176172900 ) ) ; +#2070 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.2942708333333333100 ) ) ; +#2069 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, 0.2994791666666666300 ) ) ; +#2071 = EDGE_CURVE ( 'NONE', #1881, #1756, #1247, .T. ) ; +#2072 = CARTESIAN_POINT ( 'NONE', ( 0.2784754081791114300, 0.01552316406867124000, 0.2396151348636650900 ) ) ; +#2073 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.07552083333333334300 ) ) ; +#2074 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.03559027777777777600 ) ) ; +#2075 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.2907986111111111000 ) ) ; +#2076 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415923000, 0.1605902777777777300 ) ) ; +#2077 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.1710069444444444200 ) ) ; +#2079 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.2595486111111111600 ) ) ; +#2078 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.1970486111111111300 ) ) ; +#2080 = EDGE_CURVE ( 'NONE', #136, #1278, #1149, .T. ) ; +#2081 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2871850421650035100, 0.2481225421650035700 ) ) ; +#2082 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2083 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.01996527777777778700 ) ) ; +#2084 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.02690972222222223800 ) ) ; +#2085 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.2213541666666666600 ) ) ; +#2086 = ORIENTED_EDGE ( 'NONE', *, *, #3237, .F. ) ; +#2087 = ORIENTED_EDGE ( 'NONE', *, *, #89, .T. ) ; +#2088 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.05815972222222225200 ) ) ; +#2089 = ORIENTED_EDGE ( 'NONE', *, *, #1704, .F. ) ; +#2090 = ORIENTED_EDGE ( 'NONE', *, *, #924, .F. ) ; +#2092 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#2091 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.1970486111111111300 ) ) ; +#2093 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2094 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.1501736111111110500 ) ) ; +#2095 = AXIS2_PLACEMENT_3D ( 'NONE', #20, #1097, #3279 ) ; +#2096 = EDGE_LOOP ( 'NONE', ( #3290, #436, #19, #2274 ) ) ; +#2097 = ADVANCED_FACE ( 'NONE', ( #1338 ), #3386, .F. ) ; +#2098 = CARTESIAN_POINT ( 'NONE', ( 0.2970507307379664500, -0.09654952662181848200, 0.2727886670607774200 ) ) ; +#2099 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.1814236111111111600 ) ) ; +#2100 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, 0.2369791666666666600 ) ) ; +#2101 = EDGE_LOOP ( 'NONE', ( #1189, #175, #856 ) ) ; +#2102 = CALENDAR_DATE ( 2021, 8, 9 ) ; +#2103 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.08246527777777780400 ) ) ; +#2104 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.390706609902761100E-016, 1.000000000000000000 ) ) ; +#2105 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.05295138888888887400 ) ) ; +#2106 = FACE_OUTER_BOUND ( 'NONE', #1966, .T. ) ; +#2107 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#2108 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, -0.1815124092407255900, -0.2549373133074033800 ) ) ; +#2109 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, 3.827021247335478900E-017, 0.2734375000000000000 ) ) ; +#2110 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.03906249999999993100 ) ) ; +#2111 = CYLINDRICAL_SURFACE ( 'NONE', #2314, 0.3125000000000000000 ) ; +#2112 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2113 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.1571180555555555200 ) ) ; +#2114 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.01649305555555559400 ) ) ; +#2115 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.2039930555555555800 ) ) ; +#2116 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.1171875000000000000 ) ) ; +#2117 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2118 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.1918402777777777900 ) ) ; +#2119 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#2120 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.03038194444444450300 ) ) ; +#2121 = CARTESIAN_POINT ( 'NONE', ( 0.1206644326381667400, -0.2829041598465197900, 0.2679948626623902000 ) ) ; +#2122 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.3133680555555555200 ) ) ; +#2123 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.2369791666666666600 ) ) ; +#2124 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.01996527777777778700 ) ) ; +#2125 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.2706329386826370500, -0.2315704386826373300 ) ) ; +#2126 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.1102430555555555800 ) ) ; +#2127 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.1519097222222222700 ) ) ; +#2129 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#2128 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.1571180555555555200 ) ) ; +#2130 = EDGE_CURVE ( 'NONE', #1376, #1368, #1126, .T. ) ; +#2131 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415789800, 0.3124999999999999400, -0.2699652777777774000 ) ) ; +#2132 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.1432291666666666000 ) ) ; +#2133 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.2248263888888889500 ) ) ; +#2134 = ORIENTED_EDGE ( 'NONE', *, *, #3427, .F. ) ; +#2135 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.3515625000000000000 ) ) ; +#2136 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.1293402777777777300 ) ) ; +#2137 = VERTEX_POINT ( 'NONE', #2387 ) ; +#2138 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000083300, -0.1294417382415839500, -0.06163194444444416300 ) ) ; +#2139 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.03385416666666669900 ) ) ; +#2140 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #253, #3521, #3277, #2747, #837, #2727, #2172, #2163, #1110 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.6041666666666667400, 0.6145833333333334800, 0.6250000000000000000, 0.6354166666666666300, 0.6458333333333333700 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9999999999999992200, 0.9238795325112875200, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2142 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#2141 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2143 = ORIENTED_EDGE ( 'NONE', *, *, #1093, .T. ) ; +#2144 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, 0.05642361111111107000 ) ) ; +#2145 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, 0.07031249999999998600 ) ) ; +#2146 = LINE ( 'NONE', #8, #953 ) ; +#2147 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.2821180555555555200 ) ) ; +#2148 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005000, -0.1294417382415918600, -0.06857638888888888100 ) ) ; +#2149 = VECTOR ( 'NONE', #715, 39.37007874015748100 ) ; +#2150 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#2151 = EDGE_CURVE ( 'NONE', #109, #2396, #1662, .T. ) ; +#2152 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.1432291666666666300 ) ) ; +#2153 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, -0.1657986111111111600 ) ) ; +#2154 = VECTOR ( 'NONE', #831, 39.37007874015748100 ) ; +#2155 = CARTESIAN_POINT ( 'NONE', ( -1.553567824827460700E-016, 0.5412658773652743200, 0.2315704386826372700 ) ) ; +#2156 = CARTESIAN_POINT ( 'NONE', ( 0.06093073821899080300, -0.2764156081756482000, 0.2353547534318550500 ) ) ; +#2157 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.1623263888888889500 ) ) ; +#2158 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.2907986111111111600 ) ) ; +#2159 = CARTESIAN_POINT ( 'NONE', ( 0.3002776322244936600, 0.04178427585254935300, 0.2639248834049640100 ) ) ; +#2160 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608500, 0.2764156081756481400, -0.01996527777777778700 ) ) ; +#2161 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.2786458333333332600 ) ) ; +#2162 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, -0.1102430555555555800 ) ) ; +#2164 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999910100, 0.1294417382416012700, 0.05642361111111142400 ) ) ; +#2163 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, 0.1536458333333332600 ) ) ; +#2165 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.02517361111111109500 ) ) ; +#2166 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.2109375000000000000 ) ) ; +#2167 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.1866319444444444500 ) ) ; +#2168 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.07899305555555558000 ) ) ; +#2169 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756481400, -0.08246527777777780400 ) ) ; +#2170 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.2994791666666666900 ) ) ; +#2171 = ORIENTED_EDGE ( 'NONE', *, *, #168, .T. ) ; +#2173 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999905100, -0.1294417382416017100, -0.1935763888888885100 ) ) ; +#2172 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.1501736111111110500 ) ) ; +#2174 = ORIENTED_EDGE ( 'NONE', *, *, #17, .T. ) ; +#2175 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2176 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.03559027777777777600 ) ) ; +#2177 = ORIENTED_EDGE ( 'NONE', *, *, #261, .F. ) ; +#2178 = CARTESIAN_POINT ( 'NONE', ( -0.03834067480472922600, 0.5191298784458521200, -0.2443506636175588100 ) ) ; +#2179 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.1137152777777778200 ) ) ; +#2180 = ORIENTED_EDGE ( 'NONE', *, *, #897, .T. ) ; +#2181 = CARTESIAN_POINT ( 'NONE', ( 0.2784818958029189300, -0.07199578971268880100, -0.2484218518945502100 ) ) ; +#2182 = ORIENTED_EDGE ( 'NONE', *, *, #181, .F. ) ; +#2183 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.1144950937579609200, -0.08940972222222225200 ) ) ; +#2184 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.1987847222222222100 ) ) ; +#2185 = CIRCLE ( 'NONE', #1160, 0.4687500000000000000 ) ; +#2187 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.2595486111111111600 ) ) ; +#2186 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.1623263888888889000 ) ) ; +#2188 = CARTESIAN_POINT ( 'NONE', ( -0.2118363546510670900, 0.1816507733967263300, -0.2390676877859503900 ) ) ; +#2189 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.1015624999999999400 ) ) ; +#2190 = FACE_OUTER_BOUND ( 'NONE', #1040, .T. ) ; +#2191 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.05642361111111107000 ) ) ; +#2192 = CONICAL_SURFACE ( 'NONE', #2805, 0.4687500000000000000, 1.047197551196600100 ) ; +#2193 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.2491319444444445000 ) ) ; +#2194 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001100, 0.04592516829879963300, -0.2724602772383053500 ) ) ; +#2195 = AXIS2_PLACEMENT_3D ( 'NONE', #3491, #84, #1698 ) ; +#2196 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.04427083333333334300 ) ) ; +#2197 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.004340277777777766700 ) ) ; +#2198 = EDGE_CURVE ( 'NONE', #174, #2396, #454, .T. ) ; +#2199 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.1848958333333332900 ) ) ; +#2200 = CARTESIAN_POINT ( 'NONE', ( -0.07696140476767639200, 0.4968321896054448400, 0.2548796692176172900 ) ) ; +#2201 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #990, #1262, #3446, #156, #2057, #432, #2647, #2335 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 4 ), + ( 0.006955677797892807800, 0.008688035829550251600, 0.01042039386120769500, 0.01388510992452258000 ), + .UNSPECIFIED. ) ; +#2202 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608500, 0.2764156081756481400, 0.09114583333333330100 ) ) ; +#2203 = CARTESIAN_POINT ( 'NONE', ( -0.04462116755633551600, 0.2897631471346011600, -0.2538983642905291400 ) ) ; +#2204 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.1848958333333332600 ) ) ; +#2205 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.03038194444444450300 ) ) ; +#2206 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.2387152777777778200 ) ) ; +#2207 = CARTESIAN_POINT ( 'NONE', ( 0.2773550401088198900, 0.06722273397967050400, -0.2457105207054723100 ) ) ; +#2208 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.07031249999999994400 ) ) ; +#2209 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, -0.1144950937579609900, -0.04079861111111114700 ) ) ; +#2210 = CARTESIAN_POINT ( 'NONE', ( 0.1551724472852629200, 0.2658722480046461500, -0.2681363257278980800 ) ) ; +#2212 = CARTESIAN_POINT ( 'NONE', ( -0.3137397276145917300, -0.3601281611715098600, 0.2694473453760668500 ) ) ; +#2211 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.2706329386826370500, -0.2315704386826373300 ) ) ; +#2213 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, -0.1144950937579609900, 0.1258680555555555200 ) ) ; +#2214 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000099900, 0.1294417382415822000, 0.1328125000000003600 ) ) ; +#2215 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.05989583333333329400 ) ) ; +#2216 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.06336805555555553900 ) ) ; +#2217 = CARTESIAN_POINT ( 'NONE', ( 0.2862435532026334500, 0.01155799070468376500, -0.2468045531914246400 ) ) ; +#2218 = EDGE_CURVE ( 'NONE', #950, #2786, #114, .T. ) ; +#2219 = ORIENTED_EDGE ( 'NONE', *, *, #2572, .F. ) ; +#2220 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.3480902777777777900 ) ) ; +#2221 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.02517361111111106000 ) ) ; +#2222 = ORIENTED_EDGE ( 'NONE', *, *, #1647, .T. ) ; +#2223 = CARTESIAN_POINT ( 'NONE', ( 0.1896694581591808200, 0.2458973050826452900, -0.2708480772289201800 ) ) ; +#2224 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000600, 1.913510623667739500E-017, 0.2473958333333332900 ) ) ; +#2225 = ORIENTED_EDGE ( 'NONE', *, *, #3153, .F. ) ; +#2226 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #1934, #1684, #1643, #3282, #1374, #1397, #1946, #3311, #1919, #332, #2506, #2477, #3011, #3021, #1958, #291, #873, #834, #319, #2207, #1143, #2217, #568, #1131, #2181, #857, #2778, #3049, #2755, #3274, #825, #1388, #1411, #63, #3295, #2792, #14, #2742, #1906, #282, #557, #2471, #37, #304, #2491 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ), + ( 0.001106413523597487100, 0.001817553765023737500, 0.002528694006449987800, 0.003950974489302488600, 0.005373254972154989400, 0.006795535455007491900, 0.007506675696433743100, 0.008217815937859994400, 0.008928956179286249100, 0.009640096420712503800, 0.01106237690356501200, 0.01248465738641751600, 0.01390693786927002200, 0.01461807811069627500, 0.01532921835212252800, 0.01675149883497503000, 0.01817377931782753600, 0.01888491955925378200, 0.01959605980068003500, 0.02101834028353253400, 0.02172948052495878700, 0.02244062076638504000, 0.02386290124923753900 ), + .UNSPECIFIED. ) ; +#2227 = ADVANCED_FACE ( 'NONE', ( #3464 ), #700, .T. ) ; +#2228 = CARTESIAN_POINT ( 'NONE', ( 0.3062602379128575600, -0.06213627502214449200, 0.2734375000003249600 ) ) ; +#2229 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999998300, 0.1294417382415924400, -0.2630208333333333100 ) ) ; +#2230 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.2300347222222222400 ) ) ; +#2231 = ORIENTED_EDGE ( 'NONE', *, *, #1849, .T. ) ; +#2232 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.05815972222222228600 ) ) ; +#2233 = VECTOR ( 'NONE', #930, 39.37007874015748100 ) ; +#2234 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.06684027777777774800 ) ) ; +#2235 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000002200, 0.2268628408710126900, -0.2442057775596361300 ) ) ; +#2236 = CYLINDRICAL_SURFACE ( 'NONE', #3130, 0.3125000000000000000 ) ; +#2237 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.1675347222222222400 ) ) ; +#2238 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.01128472222222218600 ) ) ; +#2239 = LINE ( 'NONE', #1267, #2149 ) ; +#2241 = CARTESIAN_POINT ( 'NONE', ( -0.3917885952323239600, -0.3150666264424668600, 0.2548796692176172900 ) ) ; +#2240 = CARTESIAN_POINT ( 'NONE', ( 7.867357284603775100E-013, 0.2960692680293277600, -0.2570067680293277000 ) ) ; +#2242 = CARTESIAN_POINT ( 'NONE', ( -0.04008588580326900200, 0.3098506615398875500, -0.2727408986606403900 ) ) ; +#2243 = VECTOR ( 'NONE', #1588, 39.37007874015748100 ) ; +#2244 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.06857638888888892300 ) ) ; +#2245 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.09809027777777772100 ) ) ; +#2246 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, -0.2706329386826372100, -0.2315704386826372700 ) ) ; +#2247 = AXIS2_PLACEMENT_3D ( 'NONE', #2927, #3484, #218 ) ; +#2248 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.1883680555555555200 ) ) ; +#2249 = EDGE_CURVE ( 'NONE', #2565, #531, #510, .T. ) ; +#2250 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.2734375000000000000 ) ) ; +#2251 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.1825358244430589600, -0.2547220505730428100 ) ) ; +#2252 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.01649305555555555900 ) ) ; +#2253 = CARTESIAN_POINT ( 'NONE', ( -0.1342857678180483500, 0.2795626838614993500, -0.2709193609352236200 ) ) ; +#2255 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.1675347222222221800 ) ) ; +#2254 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, 0.1050347222222221700 ) ) ; +#2256 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.01649305555555559400 ) ) ; +#2257 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.1223958333333333100 ) ) ; +#2258 = EDGE_CURVE ( 'NONE', #1789, #1834, #2782, .T. ) ; +#2259 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.1987847222222222100 ) ) ; +#2260 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, -0.2074652777777778200 ) ) ; +#2261 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.1032986111111111300 ) ) ; +#2262 = ORIENTED_EDGE ( 'NONE', *, *, #2639, .T. ) ; +#2263 = EDGE_LOOP ( 'NONE', ( #3291, #417, #1830 ) ) ; +#2265 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.1605902777777777300 ) ) ; +#2264 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, 0.04947916666666661600 ) ) ; +#2266 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.06857638888888892300 ) ) ; +#2267 = ORIENTED_EDGE ( 'NONE', *, *, #181, .T. ) ; +#2268 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.1293402777777777600 ) ) ; +#2269 = EDGE_CURVE ( 'NONE', #2786, #2900, #249, .T. ) ; +#2270 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.2196180555555555000 ) ) ; +#2271 = EDGE_LOOP ( 'NONE', ( #614, #1196, #1014, #3195, #1915 ) ) ; +#2272 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, -0.1241319444444444600 ) ) ; +#2273 = CARTESIAN_POINT ( 'NONE', ( -0.03888776268069415300, 0.2854493762316218700, 0.2488593492866288400 ) ) ; +#2274 = ORIENTED_EDGE ( 'NONE', *, *, #381, .F. ) ; +#2275 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#2276 =( CONVERSION_BASED_UNIT ( 'INCH', #1163 ) LENGTH_UNIT ( ) NAMED_UNIT ( #2449 ) ); +#2277 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.1345486111111111300 ) ) ; +#2278 = CALENDAR_DATE ( 2021, 8, 9 ) ; +#2280 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.2890624999999999400 ) ) ; +#2279 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.1258680555555555200 ) ) ; +#2281 = FACE_OUTER_BOUND ( 'NONE', #2271, .T. ) ; +#2282 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.2092013888888889200 ) ) ; +#2283 = AXIS2_PLACEMENT_3D ( 'NONE', #2385, #767, #2956 ) ; +#2284 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.1866319444444444500 ) ) ; +#2285 = CIRCLE ( 'NONE', #492, 0.4687500000000000000 ) ; +#2286 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.1310763888888889000 ) ) ; +#2287 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756481400, 0.08420138888888885300 ) ) ; +#2288 = CARTESIAN_POINT ( 'NONE', ( -0.1719980000476849000, -0.2476561945328587800, 0.2623076723403131000 ) ) ; +#2289 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.1137152777777777800 ) ) ; +#2290 = CARTESIAN_POINT ( 'NONE', ( -0.04349090697847191700, 0.2729727632078031700, -0.2373531081756481700 ) ) ; +#2292 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.1501736111111110500 ) ) ; +#2291 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.2404513888888889000 ) ) ; +#2293 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.3203124999999999400 ) ) ; +#2294 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.2456597222222222400 ) ) ; +#2295 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.06336805555555553900 ) ) ; +#2296 = CARTESIAN_POINT ( 'NONE', ( -0.009691248817070551400, 0.2873643804371042700, 0.2483018804371043000 ) ) ; +#2297 = ADVANCED_FACE ( 'NONE', ( #3306 ), #285, .F. ) ; +#2298 = CARTESIAN_POINT ( 'NONE', ( 0.1353502125380837400, 0.4631213957215384900, 0.2657820503820232900 ) ) ; +#2299 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.02343750000000001400 ) ) ; +#2300 =( BOUNDED_SURFACE ( ) B_SPLINE_SURFACE ( 1, 2, ( + ( #807, #1077, #2985, #785, #2944, #2421, #2963, #1359, #1616, #248, #3272, #1628, #772, #1312, #1, #10, #2469, #1598, #555, #822, #2133, #3503, #3221, #533, #2709, #1582, #1055, #3487, #1893, #2975, #3244, #1854, #236, #509, #1335, #1610, #1882, #257, #2157, #2442, #796, #2721, #48, #1681, #2488, #2753, #300, #2765, #1665, #590, #1099, #841, #1944, #1967, #3019, #329, #34, #1956, #599, #615, #1422, #342, #60, #1653, #2517, #2244, #3280, #3331, #2232, #3307, #832, #869, #3061, #1088, #3319, #1409, #2205, #578, #2475, #1641, #23, #2526, #880, #3292, #2788, #1117, #1140, #3008, #2776, #1690, #565, #1931, #316, #2503, #1371, #3031, #74, #1914, #1395, #289, #1385, #2191, #2215, #854, #1129, #3046, #921, #2014, #2026, #368, #1456, #1445, #2302, #118, #1750, #2560, #663, #2568, #389, #2800, #95, #87, #932, #3385, #1470, #3082, #2845, #1982, #2292, #1200, #2835, #2265, #1154, #2255, #890, #3112, #1187, #1991, #1482, #126, #629, #3070, #3372, #403, #674, #2541, #2582, #1435, #353, #2812, #3343, #379, #3354, #1701, #1165, #1717, #3103, #639, #3092, #2551, #1739, #908, #2819, #1177, #3362, #1730, #107, #2000, #2280, #651, #3414, #1520, #2326, #2590, #146, #2600, #1511, #434, #952, #693, #1783, #1805, #2861, #165, #3401, #1795, #448, #462, #1254, #180, #3426 ), + ( #3141, #682, #2070, #2894, #942, #3150, #1242, #2045, #424, #2313, #1489, #3395, #2079, #724, #3133, #2347, #958, #711, #2853, #2613, #2627, #415, #1498, #158, #2338, #2362, #2873, #3163, #980, #1229, #1211, #1221, #2038, #1530, #3123, #1763, #1774, #967, #3438, #133, #2059, #705, #2885, #2918, #286, #2512, #3321, #3072, #3137, #888, #3069, #3351, #3110, #2116, #2636, #2126, #503, #1541, #1850, #3482, #756, #1824, #721, #191, #2371, #2412, #2677, #1552, #228, #764, #2088, #989, #1304, #1035, #241, #470, #2688, #2139, #3445, #735, #2953, #1836, #999, #3227, #2646, #2903, #1021, #3457, #1008, #1261, #2936, #1589, #480, #3493, #3212, #3198, #2924, #2382, #1291, #746, #1561, #1572, #2105, #2914, #203, #2663, #3469, #215, #1276, #491, #2395, #1858, #3184, #1317, #516, #3173, #1815, #1923, #2746, #3285, #1363, #2978, #1908, #1648, #1049, #1094, #3276, #1069, #2152, #1634, #827, #2426, #1082, #2735, #1614, #1886, #252, #2968, #1328, #27, #2199, #1058, #18, #3518, #2184, #778, #550, #284, #1869, #1340, #3267, #1900, #294, #2451, #3014, #560, #262, #2699, #2715, #3508, #2473, #3236, #1604, #791, #2463, #1378, #528, #2161, #2990, #3253, #2435, #540, #802, #2170, #2725, #1353, #1622, #4, #276, #815, #3001, #1960, #2480, #1975, #346, #1391, #1696, #3336, #606, #1673, #572 ) ), + .UNSPECIFIED., .F., .F., .T. ) + B_SPLINE_SURFACE_WITH_KNOTS ( ( 2, 2 ), + ( 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3 ), + ( 0.0000000000000000000, 1.000000000000000000 ), + ( 0.0000000000000000000, 0.01041666666666666600, 0.02083333333333333200, 0.03125000000000000000, 0.04166666666666666400, 0.05208333333333333600, 0.06250000000000000000, 0.07291666666666667100, 0.08333333333333332900, 0.09375000000000000000, 0.1041666666666666700, 0.1145833333333333300, 0.1250000000000000000, 0.1354166666666666600, 0.1458333333333333400, 0.1562500000000000000, 0.1666666666666666600, 0.1770833333333333400, 0.1875000000000000000, 0.1979166666666666600, 0.2083333333333333400, 0.2187500000000000000, 0.2291666666666666600, 0.2395833333333333400, 0.2500000000000000000, 0.2604166666666666900, 0.2708333333333333100, 0.2812500000000000000, 0.2916666666666666900, 0.3020833333333333100, 0.3125000000000000000, 0.3229166666666666900, 0.3333333333333333100, 0.3437500000000000000, 0.3541666666666666900, 0.3645833333333333100, 0.3750000000000000000, 0.3854166666666666900, 0.3958333333333333100, 0.4062500000000000000, 0.4166666666666666900, 0.4270833333333333100, 0.4375000000000000000, 0.4479166666666666900, 0.4583333333333333100, 0.4687500000000000000, 0.4791666666666666900, 0.4895833333333333100, 0.5000000000000000000, 0.5104166666666666300, 0.5208333333333333700, 0.5312500000000000000, 0.5416666666666666300, 0.5520833333333333700, 0.5625000000000000000, 0.5729166666666666300, 0.5833333333333333700, 0.5937500000000000000, 0.6041666666666666300, 0.6145833333333333700, 0.6250000000000000000, 0.6354166666666666300, 0.6458333333333333700, 0.6562500000000000000, 0.6666666666666666300, 0.6770833333333333700, 0.6875000000000000000, 0.6979166666666666300, 0.7083333333333333700, 0.7187500000000000000, 0.7291666666666666300, 0.7395833333333333700, 0.7500000000000000000, 0.7604166666666666300, 0.7708333333333333700, 0.7812500000000000000, 0.7916666666666666300, 0.8020833333333333700, 0.8125000000000000000, 0.8229166666666666300, 0.8333333333333333700, 0.8437500000000000000, 0.8541666666666666300, 0.8645833333333333700, 0.8750000000000000000, 0.8854166666666666300, 0.8958333333333333700, 0.9062500000000000000, 0.9166666666666666300, 0.9270833333333333700, 0.9375000000000000000, 0.9479166666666666300, 0.9583333333333333700, 0.9687500000000000000, 0.9791666666666666300, 0.9843749999999758000 ), + .UNSPECIFIED. ) + GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_SURFACE ( ( + ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9619397662558202300, 0.9619397662556433700), + ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9619397662558202300, 0.9619397662556433700) ) ) + REPRESENTATION_ITEM ( '' ) SURFACE ( ) ); +#2302 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.09461805555555549700 ) ) ; +#2301 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, 0.07725694444444443400 ) ) ; +#2303 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.2960069444444443600 ) ) ; +#2304 = ORIENTED_EDGE ( 'NONE', *, *, #683, .T. ) ; +#2305 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.1762152777777777900 ) ) ; +#2306 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.1692708333333333400 ) ) ; +#2307 = CARTESIAN_POINT ( 'NONE', ( -0.04834291347505449000, -0.3002087773203828100, 0.2648608234094855800 ) ) ; +#2308 = ORIENTED_EDGE ( 'NONE', *, *, #559, .F. ) ; +#2309 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.2126736111111110800 ) ) ; +#2310 = APPLICATION_PROTOCOL_DEFINITION ( 'international standard', 'config_control_design', 1994, #1507 ) ; +#2311 = ORIENTED_EDGE ( 'NONE', *, *, #2714, .T. ) ; +#2313 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.2699652777777777900 ) ) ; +#2312 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999992800, 0.09414431354542038300, 0.2707545497620184600 ) ) ; +#2314 = AXIS2_PLACEMENT_3D ( 'NONE', #2150, #2410, #3468 ) ; +#2315 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.2751736111111110500 ) ) ; +#2316 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #1954, #57, #852, #2203, #2736, #287, #830, #2784, #2774, #1651, #327, #1138, #2188, #1086 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 2, 4 ), + ( 0.006081656708196684000, 0.006940954409402975100, 0.007800252110609266200, 0.009518847513021847600, 0.01037814521422813700, 0.01123744291543442800, 0.01295603831784701200 ), + .UNSPECIFIED. ) ; +#2317 = ORIENTED_EDGE ( 'NONE', *, *, #1669, .T. ) ; +#2318 = EDGE_CURVE ( 'NONE', #523, #940, #1980, .T. ) ; +#2319 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, -0.2560763888888889500 ) ) ; +#2320 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.03038194444444446800 ) ) ; +#2321 = CIRCLE ( 'NONE', #970, 0.3125000000000000000 ) ; +#2322 = CARTESIAN_POINT ( 'NONE', ( -0.2225616521215727500, -0.2023032360611971600, 0.2610749935015083100 ) ) ; +#2323 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.1675347222222221800 ) ) ; +#2324 = FACE_OUTER_BOUND ( 'NONE', #1667, .T. ) ; +#2326 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.3029513888888888400 ) ) ; +#2325 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.2178819444444444500 ) ) ; +#2327 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.2404513888888888100 ) ) ; +#2328 = CIRCLE ( 'NONE', #1693, 0.3125000000000000000 ) ; +#2329 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.2612847222222222100 ) ) ; +#2330 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #2018, #2609, ( #2670 ) ) ; +#2331 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.1970486111111111300 ) ) ; +#2332 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.07378472222222219600 ) ) ; +#2333 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.09288194444444444800 ) ) ; +#2334 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000088800, -0.1294417382415834200, 0.1050347222222225000 ) ) ; +#2335 = CARTESIAN_POINT ( 'NONE', ( 1.643166561121255400E-016, -0.5412658773652743200, -0.2315704386826372100 ) ) ; +#2336 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #840, #3271, #1652, #1098, #806, #2764 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 2.380729676757422200E-007, 0.003477957935430243100, 0.006955677797892810400 ), + .UNSPECIFIED. ) ; +#2338 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.2178819444444444500 ) ) ; +#2337 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.3203124999999999400 ) ) ; +#2339 = EDGE_CURVE ( 'NONE', #2787, #2830, #2140, .T. ) ; +#2340 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.2595486111111111000 ) ) ; +#2341 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.06857638888888889500 ) ) ; +#2342 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.1397569444444444200 ) ) ; +#2343 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.2769097222222222100 ) ) ; +#2344 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.08767361111111110500 ) ) ; +#2345 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, -0.2706329386826369400, 0.2315704386826372700 ) ) ; +#2347 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.2491319444444444800 ) ) ; +#2346 = CARTESIAN_POINT ( 'NONE', ( 0.2887123539099982800, 0.1195885726135568600, 0.3342013888888721900 ) ) ; +#2348 = CARTESIAN_POINT ( 'NONE', ( 0.2679261156983956400, 0.08224444744919562300, 0.2409735246822963800 ) ) ; +#2349 = ORIENTED_EDGE ( 'NONE', *, *, #1352, .F. ) ; +#2350 = ORIENTED_EDGE ( 'NONE', *, *, #2318, .T. ) ; +#2351 = ADVANCED_FACE ( 'NONE', ( #2281 ), #2915, .F. ) ; +#2352 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#2353 = ORIENTED_EDGE ( 'NONE', *, *, #1490, .T. ) ; +#2354 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.08593750000000002800 ) ) ; +#2355 = CYLINDRICAL_SURFACE ( 'NONE', #3053, 0.3125000000000000000 ) ; +#2356 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.01128472222222218600 ) ) ; +#2357 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.1970486111111111300 ) ) ; +#2358 = EDGE_LOOP ( 'NONE', ( #1771, #1581, #2655 ) ) ; +#2359 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.1710069444444444200 ) ) ; +#2360 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#2362 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.2144097222222222100 ) ) ; +#2361 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, 0.3064236111111110500 ) ) ; +#2363 = DATE_AND_TIME ( #2278, #3090 ) ; +#2364 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000084900, 0.1294417382415838100, -0.2560763888888886200 ) ) ; +#2365 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.02343750000000001400 ) ) ; +#2366 = CIRCLE ( 'NONE', #425, 0.4687500000000000000 ) ; +#2367 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.007812499999999993100 ) ) ; +#2368 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.2456597222222222400 ) ) ; +#2369 = FACE_OUTER_BOUND ( 'NONE', #2358, .T. ) ; +#2370 = ADVANCED_FACE ( 'NONE', ( #2021 ), #2501, .F. ) ; +#2371 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.07899305555555558000 ) ) ; +#2372 = CARTESIAN_POINT ( 'NONE', ( -0.2343750000000002200, 0.4059494080239555200, -0.2734375000000000000 ) ) ; +#2374 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000005000, -0.1294417382415918600, -0.01302083333333335000 ) ) ; +#2373 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2375 = EDGE_CURVE ( 'NONE', #2833, #2487, #3310, .T. ) ; +#2376 = CARTESIAN_POINT ( 'NONE', ( 0.2678069314935716500, -0.07393502314288903600, 0.2378268894938379600 ) ) ; +#2377 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608500, 0.2764156081756481400, 0.1536458333333332600 ) ) ; +#2378 = DIRECTION ( 'NONE', ( -0.8660254037844383700, -0.5000000000000003300, 0.0000000000000000000 ) ) ; +#2379 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.3098958333333333100 ) ) ; +#2380 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.2248263888888889000 ) ) ; +#2381 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2382 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.03559027777777774800 ) ) ; +#2383 = AXIS2_PLACEMENT_3D ( 'NONE', #230, #3202, #2957 ) ; +#2384 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, -0.2282986111111111900 ) ) ; +#2385 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -2.446791525458581000E-017, -0.2595486111111110500 ) ) ; +#2386 = EDGE_CURVE ( 'NONE', #2393, #734, #3328, .T. ) ; +#2387 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.2706329386826370500, 0.2315704386826373300 ) ) ; +#2388 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.04600694444444438500 ) ) ; +#2389 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #1197, #1432, #1746, #1988, #887, #3109, #646, #1162 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 4 ), + ( 0.01959550571214544900, 0.02133620036425898000, 0.02307689501637251100, 0.02655828432059957300 ), + .UNSPECIFIED. ) ; +#2390 = CARTESIAN_POINT ( 'NONE', ( 0.1676195507059613200, -0.2590370647385506500, 0.2689753118293774500 ) ) ; +#2391 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.3307291666666666300 ) ) ; +#2392 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.06336805555555555200 ) ) ; +#2393 = VERTEX_POINT ( 'NONE', #2155 ) ; +#2394 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999905100, -0.1294417382416017100, -0.08246527777777744300 ) ) ; +#2395 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.08072916666666661600 ) ) ; +#2396 = VERTEX_POINT ( 'NONE', #1355 ) ; +#2397 = CARTESIAN_POINT ( 'NONE', ( 0.4304093251952710900, 0.2927689376020594100, -0.2443506636175588900 ) ) ; +#2399 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2398 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#2400 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.1144950937579609200, 0.02864583333333325900 ) ) ; +#2401 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #3126, #1528, ( #1416 ) ) ; +#2402 = ORIENTED_EDGE ( 'NONE', *, *, #1531, .T. ) ; +#2403 = CARTESIAN_POINT ( 'NONE', ( 0.3024092427033539000, -0.07950130486288938000, 0.2731161929945186700 ) ) ; +#2404 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, 0.3411458333333333700 ) ) ; +#2405 = ORIENTED_EDGE ( 'NONE', *, *, #38, .F. ) ; +#2406 = CARTESIAN_POINT ( 'NONE', ( 0.2792030177578843600, -0.09291626704904357200, 0.2544431115971748100 ) ) ; +#2407 = APPROVAL_PERSON_ORGANIZATION ( #910, #2707, #3436 ) ; +#2408 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.05815972222222225200 ) ) ; +#2409 = AXIS2_PLACEMENT_3D ( 'NONE', #2119, #1852, #3510 ) ; +#2410 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2411 = EDGE_CURVE ( 'NONE', #688, #808, #2799, .T. ) ; +#2412 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.07552083333333334300 ) ) ; +#2413 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2536, #1928, #1308, #2099, #3041, #1185, #2077, #1781, #179 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2135416666666410900, 0.2239583333333078400, 0.2343749999999744400, 0.2447916666666410400, 0.2552083333333077800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000007300, 0.9238795325112794100, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112944000, 0.9999999999999923400 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2414 = FACE_OUTER_BOUND ( 'NONE', #103, .T. ) ; +#2415 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756481400, -0.1866319444444444800 ) ) ; +#2416 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, -0.03385416666666669200 ) ) ; +#2417 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999915600, 0.1294417382416007400, -0.05468749999999970200 ) ) ; +#2418 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.01822916666666664000 ) ) ; +#2419 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.06684027777777774800 ) ) ; +#2420 = CIRCLE ( 'NONE', #1022, 0.4687500000000000000 ) ; +#2421 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.2769097222222222700 ) ) ; +#2422 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, 0.2439236111111111300 ) ) ; +#2423 = DIRECTION ( 'NONE', ( -0.8660254037844386000, 0.4999999999999998300, 0.0000000000000000000 ) ) ; +#2424 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.08767361111111107700 ) ) ; +#2425 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.1848958333333333100 ) ) ; +#2426 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.1536458333333333100 ) ) ; +#2427 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608500, 0.2764156081756481400, -0.1796875000000000300 ) ) ; +#2428 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.05295138888888884000 ) ) ; +#2429 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#2430 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.1293402777777777100 ) ) ; +#2431 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.07378472222222219600 ) ) ; +#2432 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.1918402777777777900 ) ) ; +#2433 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.2300347222222222400 ) ) ; +#2434 = CARTESIAN_POINT ( 'NONE', ( -0.2237736071878999900, 0.1622681766990339000, -0.2373531081756481100 ) ) ; +#2435 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.2890624999999999400 ) ) ; +#2436 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.1553819444444445000 ) ) ; +#2438 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.08072916666666665700 ) ) ; +#2437 = CARTESIAN_POINT ( 'NONE', ( -0.1944444454972853700, 0.4290033244149891200, 0.2734375000000002800 ) ) ; +#2439 = EDGE_CURVE ( 'NONE', #1059, #2743, #668, .T. ) ; +#2440 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.2196180555555555200 ) ) ; +#2441 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.1918402777777777100 ) ) ; +#2442 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.1588541666666667400 ) ) ; +#2443 = EDGE_LOOP ( 'NONE', ( #2171, #2143, #2448 ) ) ; +#2444 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.2213541666666667400 ) ) ; +#2445 = ORIENTED_EDGE ( 'NONE', *, *, #2017, .T. ) ; +#2446 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.06510416666666667100 ) ) ; +#2447 = ORIENTED_EDGE ( 'NONE', *, *, #924, .T. ) ; +#2448 = ORIENTED_EDGE ( 'NONE', *, *, #3114, .F. ) ; +#2449 = DIMENSIONAL_EXPONENTS ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ; +#2450 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756481400, -0.02690972222222224100 ) ) ; +#2451 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.2300347222222221800 ) ) ; +#2452 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.05815972222222228600 ) ) ; +#2453 = ORIENTED_EDGE ( 'NONE', *, *, #1341, .T. ) ; +#2454 = CARTESIAN_POINT ( 'NONE', ( 0.1549801845465363400, 0.4517880260982736800, -0.2686183538591386300 ) ) ; +#2455 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2456 = CARTESIAN_POINT ( 'NONE', ( -0.1550102723854083500, 0.4517706548764016700, -0.2694473453760668500 ) ) ; +#2457 = CALENDAR_DATE ( 2021, 8, 9 ) ; +#2458 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.3689236111111111000 ) ) ; +#2459 = CARTESIAN_POINT ( 'NONE', ( 0.1903749396999101200, -0.2101579798401146900, 0.2437236330194998700 ) ) ; +#2460 = CONICAL_SURFACE ( 'NONE', #1644, 0.2986111111111111600, 0.7853981633974482800 ) ; +#2461 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.03732638888888892300 ) ) ; +#2462 = EDGE_CURVE ( 'NONE', #567, #422, #312, .T. ) ; +#2463 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.2682291666666666300 ) ) ; +#2464 = CIRCLE ( 'NONE', #2383, 0.4687500000000000000 ) ; +#2466 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.1866319444444444800 ) ) ; +#2465 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.390706609902761100E-016, -1.000000000000000000 ) ) ; +#2467 = CARTESIAN_POINT ( 'NONE', ( 0.2343749999999999400, 0.4059494080239556300, -0.2734375000000000000 ) ) ; +#2468 = CARTESIAN_POINT ( 'NONE', ( -0.1526351130175024300, -0.2566143042024930400, -0.2588555360752962100 ) ) ; +#2469 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.2387152777777778200 ) ) ; +#2470 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.3654513888888889000 ) ) ; +#2471 = CARTESIAN_POINT ( 'NONE', ( 0.06471322926752960700, -0.2865984697623287800, -0.2546031257007521600 ) ) ; +#2472 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.1276041666666666900 ) ) ; +#2473 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.2543402777777777900 ) ) ; +#2474 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2475 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.02343750000000004900 ) ) ; +#2476 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.1657986111111111600 ) ) ; +#2477 = CARTESIAN_POINT ( 'NONE', ( 0.2095964188418688900, 0.1888377909129643500, -0.2428978218413986000 ) ) ; +#2478 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.02690972222222223800 ) ) ; +#2479 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.01649305555555559400 ) ) ; +#2480 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.3307291666666667400 ) ) ; +#2481 = ORIENTED_EDGE ( 'NONE', *, *, #911, .T. ) ; +#2482 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2483 = ORIENTED_EDGE ( 'NONE', *, *, #195, .T. ) ; +#2484 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #2345, #1240, #2905, #163, #979, #2892 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 0.01263774830727110000, 0.01611662700970827400, 0.01959550571214544900 ), + .UNSPECIFIED. ) ; +#2485 = VERTEX_POINT ( 'NONE', #2240 ) ; +#2486 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.2265624999999999200 ) ) ; +#2487 = VERTEX_POINT ( 'NONE', #1148 ) ; +#2488 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.1414930555555555800 ) ) ; +#2489 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.2005208333333334300 ) ) ; +#2490 = ORIENTED_EDGE ( 'NONE', *, *, #559, .T. ) ; +#2491 = CARTESIAN_POINT ( 'NONE', ( -3.611355980669890100E-017, -0.2948895945495678100, -0.2558270945495677000 ) ) ; +#2492 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.06684027777777777600 ) ) ; +#2493 = VERTEX_POINT ( 'NONE', #1675 ) ; +#2494 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.05815972222222225200 ) ) ; +#2495 = PERSON_AND_ORGANIZATION ( #3475, #860 ) ; +#2497 = CARTESIAN_POINT ( 'NONE', ( 0.2875409516447752200, -0.1544007865968170800, 0.2707545497622406700 ) ) ; +#2496 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999904500, 0.1294417382416017700, -0.1657986111111107400 ) ) ; +#2498 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.1848958333333332900 ) ) ; +#2499 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#2500 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.1223958333333333100 ) ) ; +#2501 = CONICAL_SURFACE ( 'NONE', #1046, 0.2986111111111111600, 0.7853981633974482800 ) ; +#2502 = ORIENTED_EDGE ( 'NONE', *, *, #1230, .T. ) ; +#2503 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.02864583333333325900 ) ) ; +#2504 = CONICAL_SURFACE ( 'NONE', #799, 0.4687500000000000000, 1.047197551196600100 ) ; +#2505 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.002604166666666721600 ) ) ; +#2506 = CARTESIAN_POINT ( 'NONE', ( 0.1896018826057046200, 0.2088185244640765300, -0.2423607793244080800 ) ) ; +#2507 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.05498248300264053200, 0.3532299199133658900 ) ) ; +#2508 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.06336805555555555200 ) ) ; +#2509 = AXIS2_PLACEMENT_3D ( 'NONE', #2275, #645, #1219 ) ; +#2510 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.09114583333333334300 ) ) ; +#2512 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.1449652777777777900 ) ) ; +#2511 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001100, 0.2706329386826371600, 0.2734375000000000000 ) ) ; +#2513 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #2649, #1039, #1861, #1555, #3460, #1825, #207, #1839 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 4 ), + ( 0.04008594190778851100, 0.04356577904936951400, 0.04530569762016001300, 0.04704561619095051100 ), + .UNSPECIFIED. ) ; +#2514 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.1144950937579609200, 0.1328124999999999400 ) ) ; +#2515 = CARTESIAN_POINT ( 'NONE', ( 0.3919410589494881600, -0.3149786014743202700, 0.2548427262045494000 ) ) ; +#2516 = CARTESIAN_POINT ( 'NONE', ( -0.2878927717603482200, 0.1045476829623014100, -0.2665784311739687900 ) ) ; +#2517 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.07204861111111116000 ) ) ; +#2518 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.05815972222222228600 ) ) ; +#2519 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.2751736111111110500 ) ) ; +#2520 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.1310763888888889200 ) ) ; +#2522 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.2682291666666666300 ) ) ; +#2521 = CARTESIAN_POINT ( 'NONE', ( -0.2542656236088642300, 0.3944655511290284200, -0.2734375000000002200 ) ) ; +#2523 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.1432291666666666300 ) ) ; +#2524 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2525 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.2335069444444444500 ) ) ; +#2526 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.01302083333333336900 ) ) ; +#2527 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.09635416666666669900 ) ) ; +#2528 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.1918402777777777900 ) ) ; +#2529 = EDGE_CURVE ( 'NONE', #2657, #2493, #138, .T. ) ; +#2530 = PRODUCT_DEFINITION_SHAPE ( 'NONE', 'NONE', #2838 ) ; +#2531 = ORIENTED_EDGE ( 'NONE', *, *, #1603, .F. ) ; +#2532 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.1779513888888888400 ) ) ; +#2533 = ORIENTED_EDGE ( 'NONE', *, *, #3064, .F. ) ; +#2534 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.05989583333333329400 ) ) ; +#2535 = VERTEX_POINT ( 'NONE', #1711 ) ; +#2536 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.1918402777777777900 ) ) ; +#2537 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2538 = CARTESIAN_POINT ( 'NONE', ( -0.2731080660280513200, -0.1275001853386172300, -0.2621775128783956900 ) ) ; +#2539 = ORIENTED_EDGE ( 'NONE', *, *, #2318, .F. ) ; +#2541 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.2092013888888889200 ) ) ; +#2540 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, 0.2230902777777777600 ) ) ; +#2542 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.1223958333333333100 ) ) ; +#2543 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999993300, 0.1294417382415928000, -0.06163194444444443400 ) ) ; +#2544 = LOCAL_TIME ( 6, 5, 8.000000000000000000, #1841 ) ; +#2545 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.2092013888888889200 ) ) ; +#2546 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.1762152777777777900 ) ) ; +#2547 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2548 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2549 = CIRCLE ( 'NONE', #1471, 0.4687500000000000000 ) ; +#2551 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.2578125000000000000 ) ) ; +#2550 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.2265624999999999700 ) ) ; +#2552 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.05295138888888884000 ) ) ; +#2553 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.2126736111111111000 ) ) ; +#2554 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, -0.1171875000000000000 ) ) ; +#2555 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2556 = ADVANCED_FACE ( 'NONE', ( #2060 ), #1172, .F. ) ; +#2557 = CARTESIAN_POINT ( 'NONE', ( -0.1810505014595871800, 0.2090655581795550200, -0.2373531081756480300 ) ) ; +#2558 = CARTESIAN_POINT ( 'NONE', ( 0.2343750000000000800, 0.4059494080239557900, 0.2734375000000000000 ) ) ; +#2560 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.1050347222222221700 ) ) ; +#2559 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, 0.2439236111111111300 ) ) ; +#2561 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.2578125000000000000 ) ) ; +#2562 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.2144097222222222100 ) ) ; +#2563 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.1032986111111111300 ) ) ; +#2564 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2565 = VERTEX_POINT ( 'NONE', #1951 ) ; +#2566 = ORIENTED_EDGE ( 'NONE', *, *, #2198, .F. ) ; +#2568 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.1119791666666666600 ) ) ; +#2567 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.2647569444444444200 ) ) ; +#2569 = AXIS2_PLACEMENT_3D ( 'NONE', #447, #703, #918 ) ; +#2570 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.3376736111111111000 ) ) ; +#2571 = ORIENTED_EDGE ( 'NONE', *, *, #2529, .F. ) ; +#2572 = EDGE_CURVE ( 'NONE', #561, #525, #1292, .T. ) ; +#2573 = ADVANCED_FACE ( 'NONE', ( #1206 ), #73, .F. ) ; +#2574 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.1345486111111111300 ) ) ; +#2575 = VERTEX_POINT ( 'NONE', #336 ) ; +#2576 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, -0.2005208333333333700 ) ) ; +#2577 = CARTESIAN_POINT ( 'NONE', ( -0.2237175917294260700, 0.1887175388788713800, 0.2529790003600168600 ) ) ; +#2578 = ORIENTED_EDGE ( 'NONE', *, *, #2821, .F. ) ; +#2579 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#2580 = LOCAL_TIME ( 6, 5, 8.000000000000000000, #3382 ) ; +#2582 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.2126736111111110800 ) ) ; +#2581 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, 0.1397569444444444200 ) ) ; +#2583 = VECTOR ( 'NONE', #1241, 39.37007874015748100 ) ; +#2584 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.2925347222222221500 ) ) ; +#2585 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.2734375000000000000 ) ) ; +#2586 = CIRCLE ( 'NONE', #601, 0.4687500000000000000 ) ; +#2587 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.2526041666666666900 ) ) ; +#2588 = ADVANCED_FACE ( 'NONE', ( #2190 ), #1590, .F. ) ; +#2590 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.3064236111111110500 ) ) ; +#2589 = DIRECTION ( 'NONE', ( -8.659560562354931600E-017, 0.7071067811865473500, -0.7071067811865476800 ) ) ; +#2591 = EDGE_CURVE ( 'NONE', #422, #570, #586, .T. ) ; +#2592 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.2890624999999999400 ) ) ; +#2593 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #3340, #116, #1737, #2557, #92, #3068, #348, #625, #661, #917, #3350, #2290 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 2, 2, 2, 4 ), + ( 0.0000000000000000000, 0.001386135995484568600, 0.002079203993226853100, 0.002772271990969137200, 0.004158407986453707200, 0.005544543981938277100 ), + .UNSPECIFIED. ) ; +#2594 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2434, #2687, #3197, #790, #1835, #1034, #2713, #213, #2951, #1316, #2115, #845, #1657, #1068, #1898, #1390, #583, #3284, #1400, #3013, #40, #539, #2769, #1613, #275, #836, #2734, #3517, #1377, #1922, #1907, #1351, #2472, #1092, #1362, #1123, #1633, #307, #3298, #2999, #3036, #1081, #2758, #2183, #1937, #2169, #3, #1621, #1646, #293, #26, #549, #2494, #1107, #3275, #3266, #16, #2209, #2461, #1885, #283, #2450, #260, #2160, #2479, #800, #2724, #2989, #3023, #814, #2197, #558, #826, #2745, #571, #321, #2221, #593, #1735, #113, #1948, #2827, #2006, #52, #384, #914, #658, #2508, #1181, #1672, #3098, #3367, #1462, #2287, #3313, #2202, #587, #1663, #297, #886, #1940, #1677, #1161, #877, #865, #2213, #851, #2514, #2762, #2783, #2523, #3316, #45, #1127, #56, #1137, #1418, #313, #1953, #3058, #2809, #3067, #2498, #1442, #1406, #1431, #3329, #576, #611, #3304, #3042, #1688, #3339, #71, #1963, #2796, #3077, #1977, #1393 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3 ), + ( 0.09587140126869687900, 0.1041666666666666700, 0.1145833333333333300, 0.1250000000000000000, 0.1354166666666666600, 0.1458333333333333400, 0.1562500000000000000, 0.1666666666666666600, 0.1770833333333333400, 0.1875000000000000000, 0.1979166666666666600, 0.2083333333333333400, 0.2187500000000000000, 0.2291666666666666300, 0.2395833333333333100, 0.2500000000000000000, 0.2604166666666666900, 0.2708333333333333100, 0.2812500000000000000, 0.2916666666666667400, 0.3020833333333333100, 0.3125000000000000000, 0.3229166666666666900, 0.3333333333333333100, 0.3437500000000000000, 0.3541666666666666900, 0.3645833333333333100, 0.3750000000000000000, 0.3854166666666666900, 0.3958333333333333100, 0.4062500000000000000, 0.4166666666666666900, 0.4270833333333333100, 0.4375000000000000000, 0.4479166666666666900, 0.4583333333333333100, 0.4687500000000000000, 0.4791666666666666900, 0.4895833333333332600, 0.5000000000000000000, 0.5104166666666667400, 0.5208333333333333700, 0.5312500000000000000, 0.5416666666666666300, 0.5520833333333333700, 0.5625000000000000000, 0.5729166666666667400, 0.5833333333333333700, 0.5937500000000000000, 0.6041666666666666300, 0.6145833333333333700, 0.6250000000000000000, 0.6354166666666666300, 0.6458333333333333700, 0.6562500000000000000, 0.6666666666666666300, 0.6770833333333333700, 0.6875000000000000000, 0.6979166666666666300, 0.7083333333333333700, 0.7187500000000000000, 0.7291666666666666300, 0.7395833333333333700, 0.7500000000000000000, 0.7604166666666666300, 0.7708333333333333700, 0.7812500000000000000, 0.7916666666666666300, 0.8020833333333333700, 0.8078314597885599700 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9753096629729469700, 0.9393818099165048800, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9579951929962145000, 0.9623485829303783900 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2595 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.2977430555555555800 ) ) ; +#2596 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.02864583333333331800 ) ) ; +#2597 = CARTESIAN_POINT ( 'NONE', ( -0.2869061906082427400, 0.06997767568312005000, 0.2556081566091369900 ) ) ; +#2598 = CARTESIAN_POINT ( 'NONE', ( 0.1550102723854083800, -0.4517706548764016700, 0.2694473453760668500 ) ) ; +#2600 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.3133680555555555200 ) ) ; +#2599 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.2890625000000000000 ) ) ; +#2601 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.2508680555555555200 ) ) ; +#2602 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#2603 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.1901041666666667100 ) ) ; +#2604 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.07552083333333334300 ) ) ; +#2605 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.1241319444444444600 ) ) ; +#2606 = ORIENTED_EDGE ( 'NONE', *, *, #3364, .T. ) ; +#2607 = EDGE_LOOP ( 'NONE', ( #945, #2048, #59 ) ) ; +#2608 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -0.3125000000000001700, 0.2734375000000000000 ) ) ; +#2609 = PERSON_AND_ORGANIZATION_ROLE ( 'design_owner' ) ; +#2610 = ORIENTED_EDGE ( 'NONE', *, *, #2821, .T. ) ; +#2611 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2613 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.2352430555555555800 ) ) ; +#2612 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.06216011480584286000, 0.3323965865800325700 ) ) ; +#2614 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.2630208333333333100 ) ) ; +#2615 = ORIENTED_EDGE ( 'NONE', *, *, #846, .T. ) ; +#2616 = EDGE_CURVE ( 'NONE', #1368, #3286, #1676, .T. ) ; +#2617 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.04427083333333334300 ) ) ; +#2618 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, -0.06163194444444446800 ) ) ; +#2619 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.07899305555555558000 ) ) ; +#2620 = CIRCLE ( 'NONE', #2095, 0.4687500000000000000 ) ; +#2621 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.1692708333333333400 ) ) ; +#2622 = ADVANCED_FACE ( 'NONE', ( #2672 ), #2236, .F. ) ; +#2623 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.2248263888888889000 ) ) ; +#2624 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#2625 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2627 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.2317708333333333700 ) ) ; +#2626 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.1414930555555555500 ) ) ; +#2628 = CARTESIAN_POINT ( 'NONE', ( 0.2645705564887913000, 0.09317066722938052700, 0.2412075158799062400 ) ) ; +#2629 = CYLINDRICAL_SURFACE ( 'NONE', #166, 0.3125000000000000000 ) ; +#2630 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, 3.827021247335478900E-017, 0.2734375000000000000 ) ) ; +#2631 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.03211805555555554600 ) ) ; +#2632 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2767, #1167, #1994, #150, #2814, #1157, #2257, #3085, #2268 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5625000000000000000, 0.5729166666666666300, 0.5833333333333334800, 0.5937500000000001100, 0.6041666666666667400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112859600, 1.000000000000000900 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2633 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.09461805555555556600 ) ) ; +#2634 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.2664930555555555800 ) ) ; +#2635 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -0.3125000000000001700, -0.2734375000000000000 ) ) ; +#2636 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.1137152777777778200 ) ) ; +#2637 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#2638 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.3029513888888889000 ) ) ; +#2639 = EDGE_CURVE ( 'NONE', #564, #22, #1732, .T. ) ; +#2640 = ADVANCED_FACE ( 'NONE', ( #3051 ), #205, .F. ) ; +#2641 = CARTESIAN_POINT ( 'NONE', ( 0.03515183810877028900, -0.3038976077725161200, 0.2663559067377483900 ) ) ; +#2642 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.07204861111111111900 ) ) ; +#2643 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, 0.02170138888888886700 ) ) ; +#2644 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.2352430555555555800 ) ) ; +#2645 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#2646 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.009548611111111141400 ) ) ; +#2647 = CARTESIAN_POINT ( 'NONE', ( -0.03824492952929584700, -0.5191851570063972200, -0.2443187485257420600 ) ) ; +#2649 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.2706329386826370500, 0.2315704386826373300 ) ) ; +#2648 = CARTESIAN_POINT ( 'NONE', ( -0.07680894105051197500, -0.4969202145735912000, 0.2548427262045495100 ) ) ; +#2650 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.05498248300263687500, 0.3601743643578101900 ) ) ; +#2651 = ORIENTED_EDGE ( 'NONE', *, *, #1425, .T. ) ; +#2652 = UNCERTAINTY_MEASURE_WITH_UNIT (LENGTH_MEASURE( 1.000000000000000100E-005 ), #2276, 'distance_accuracy_value', 'NONE'); +#2653 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.009548611111111176100 ) ) ; +#2654 = AXIS2_PLACEMENT_3D ( 'NONE', #2429, #3242, #2175 ) ; +#2655 = ORIENTED_EDGE ( 'NONE', *, *, #2462, .F. ) ; +#2656 = CARTESIAN_POINT ( 'NONE', ( 0.3062602379128575600, -0.06213627502214449200, 0.2734375000003249600 ) ) ; +#2657 = VERTEX_POINT ( 'NONE', #2626 ) ; +#2658 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.2578125000000000000 ) ) ; +#2659 = ORIENTED_EDGE ( 'NONE', *, *, #2875, .F. ) ; +#2660 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.2317708333333333700 ) ) ; +#2661 = ORIENTED_EDGE ( 'NONE', *, *, #2218, .F. ) ; +#2662 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#2663 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.06336805555555555200 ) ) ; +#2665 = CARTESIAN_POINT ( 'NONE', ( 0.1327247082919427200, -0.2431478010664893400, 0.2373531081756480900 ) ) ; +#2664 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.08593750000000002800 ) ) ; +#2666 = ORIENTED_EDGE ( 'NONE', *, *, #683, .F. ) ; +#2667 = VECTOR ( 'NONE', #2537, 39.37007874015748100 ) ; +#2668 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.3480902777777777900 ) ) ; +#2669 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.09461805555555549700 ) ) ; +#2670 = PRODUCT ( '95479A127_Medium-Strength Steel Hex Nut', '95479A127_Medium-Strength Steel Hex Nut', '', ( #2056 ) ) ; +#2671 = CARTESIAN_POINT ( 'NONE', ( 0.2228665051833735600, -0.2151733232901081900, 0.2702261135102618200 ) ) ; +#2672 = FACE_OUTER_BOUND ( 'NONE', #1620, .T. ) ; +#2673 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.2022569444444443900 ) ) ; +#2674 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.04947916666666666400 ) ) ; +#2675 = FACE_OUTER_BOUND ( 'NONE', #3461, .T. ) ; +#2676 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#2677 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.07204861111111111900 ) ) ; +#2678 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, -0.2144097222222222700 ) ) ; +#2680 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2679 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001100, -0.04577619060140410800, -0.2734375000000000000 ) ) ; +#2681 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.04774305555555556600 ) ) ; +#2682 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.2456597222222222400 ) ) ; +#2683 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.08767361111111103600 ) ) ; +#2684 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2685 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.1501736111111110500 ) ) ; +#2686 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.09809027777777779000 ) ) ; +#2687 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.08967297848918393000, -0.2344902905469430400 ) ) ; +#2688 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.03732638888888892300 ) ) ; +#2689 = AXIS2_PLACEMENT_3D ( 'NONE', #3175, #1816, #460 ) ; +#2690 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756481400, -0.1310763888888889500 ) ) ; +#2691 = CARTESIAN_POINT ( 'NONE', ( 0.1703533447609798000, -0.2178702127975265200, 0.2373531081756481100 ) ) ; +#2692 = EDGE_CURVE ( 'NONE', #2535, #2833, #1635, .T. ) ; +#2693 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2694 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, 0.06336805555555553900 ) ) ; +#2695 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.2473958333333332900 ) ) ; +#2696 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.3619791666666666300 ) ) ; +#2697 = CARTESIAN_POINT ( 'NONE', ( 0.2064656246358755900, -0.1964937101895735700, 0.2451635117179172500 ) ) ; +#2698 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.009548611111111141400 ) ) ; +#2699 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.2439236111111110500 ) ) ; +#2700 = EDGE_CURVE ( 'NONE', #1834, #2485, #744, .T. ) ; +#2701 = EDGE_LOOP ( 'NONE', ( #847, #3369, #1790, #2945 ) ) ; +#2702 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.05295138888888884000 ) ) ; +#2703 = ORIENTED_EDGE ( 'NONE', *, *, #2258, .T. ) ; +#2704 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.04079861111111111200 ) ) ; +#2705 = CARTESIAN_POINT ( 'NONE', ( 0.2144843763911360700, 0.4174332649188828800, -0.2734375000000002800 ) ) ; +#2706 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.01475694444444441300 ) ) ; +#2707 = APPROVAL ( #2579, 'UNSPECIFIED' ) ; +#2708 = ORIENTED_EDGE ( 'NONE', *, *, #801, .F. ) ; +#2709 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.2109375000000000600 ) ) ; +#2710 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, 0.2925347222222222100 ) ) ; +#2711 = ORIENTED_EDGE ( 'NONE', *, *, #2218, .T. ) ; +#2712 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, 0.02290461294846864900, -0.2734374999999999400 ) ) ; +#2713 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.2178819444444444500 ) ) ; +#2714 = EDGE_CURVE ( 'NONE', #1026, #136, #534, .T. ) ; +#2715 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.2473958333333333100 ) ) ; +#2716 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608500, 0.2764156081756481400, -0.06857638888888893700 ) ) ; +#2717 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.390706609902761100E-016, -1.000000000000000000 ) ) ; +#2718 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#2719 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.2126736111111110800 ) ) ; +#2720 = LINE ( 'NONE', #2109, #1983 ) ; +#2721 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.1519097222222222700 ) ) ; +#2722 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.1692708333333333700 ) ) ; +#2723 = CARTESIAN_POINT ( 'NONE', ( 0.2795767430862896600, 0.1346878542011716900, 0.2705464869153174600 ) ) ; +#2724 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.009548611111111141400 ) ) ; +#2725 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.3029513888888889000 ) ) ; +#2726 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.05121527777777783200 ) ) ; +#2728 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2727 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.1467013888888888400 ) ) ; +#2729 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#2730 = CARTESIAN_POINT ( 'NONE', ( -0.07876289193271067400, -0.2858958340186134000, -0.2573173906397956400 ) ) ; +#2731 = CARTESIAN_POINT ( 'NONE', ( -0.2343750000000002200, 0.4059494080239555200, -0.2734375000000000000 ) ) ; +#2732 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.1032986111111111600 ) ) ; +#2733 = CARTESIAN_POINT ( 'NONE', ( 0.3008578173705978000, 0.01001816745712017800, 0.2617760968042129900 ) ) ; +#2734 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.1484375000000000000 ) ) ; +#2735 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.1605902777777777600 ) ) ; +#2736 = CARTESIAN_POINT ( 'NONE', ( -0.05568424215272386300, 0.2870101920474506000, -0.2530842367672788700 ) ) ; +#2737 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000009400, -0.1294417382415913300, 0.04253472222222226500 ) ) ; +#2738 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2772791890991354000, -0.2382166890991354300 ) ) ; +#2739 = ORIENTED_EDGE ( 'NONE', *, *, #755, .T. ) ; +#2740 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.1484375000000000600 ) ) ; +#2741 = ORIENTED_EDGE ( 'NONE', *, *, #449, .F. ) ; +#2742 = CARTESIAN_POINT ( 'NONE', ( 0.1264357633274039200, -0.2642923551819372200, -0.2533179436909360200 ) ) ; +#2743 = VERTEX_POINT ( 'NONE', #414 ) ; +#2744 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #3270, #2972, #3218, #1579, #1863, #1594, #2682, #3511, #805 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.8385416666666412100, 0.8489583333333079500, 0.8593749999999745800, 0.8697916666666412100, 0.8802083333333079500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000006400, 0.9238795325112803000, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112931800, 0.9999999999999935600 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2745 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, -0.1144950937579609900, 0.01475694444444444800 ) ) ; +#2746 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.1085069444444444300 ) ) ; +#2748 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2747 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.1397569444444444500 ) ) ; +#2749 = ORIENTED_EDGE ( 'NONE', *, *, #1303, .F. ) ; +#2750 = CARTESIAN_POINT ( 'NONE', ( -7.310197353693474300E-013, -0.3047954476154233200, 0.2657329476154229900 ) ) ; +#2751 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.1987847222222221500 ) ) ; +#2752 = ORIENTED_EDGE ( 'NONE', *, *, #755, .F. ) ; +#2753 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.1380208333333333700 ) ) ; +#2754 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.1519097222222222700 ) ) ; +#2755 = CARTESIAN_POINT ( 'NONE', ( 0.2566658152294344900, -0.1336764795377248000, -0.2497271960650785100 ) ) ; +#2756 = VECTOR ( 'NONE', #2093, 39.37007874015748100 ) ; +#2757 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.03385416666666669900 ) ) ; +#2758 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.09288194444444444800 ) ) ; +#2759 = EDGE_CURVE ( 'NONE', #303, #2575, #3428, .T. ) ; +#2760 = CARTESIAN_POINT ( 'NONE', ( 0.2058631696928691400, 0.2342753157388623400, -0.2721624077099538100 ) ) ; +#2761 = CARTESIAN_POINT ( 'NONE', ( 0.2595172643670272100, -0.09516500374910928700, 0.2373531081756481100 ) ) ; +#2762 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.1362847222222221800 ) ) ; +#2763 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.03211805555555554600 ) ) ; +#2764 = CARTESIAN_POINT ( 'NONE', ( 0.2343750000000001900, -0.4059494080239555200, -0.2734375000000000000 ) ) ; +#2765 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.1310763888888889800 ) ) ; +#2766 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.3793402777777776800 ) ) ; +#2767 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.1015624999999999400 ) ) ; +#2768 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.07378472222222216800 ) ) ; +#2769 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.1623263888888889000 ) ) ; +#2770 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.02517361111111109500 ) ) ; +#2771 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #1720, #3411, ( #210 ) ) ; +#2773 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.2647569444444444200 ) ) ; +#2772 = CARTESIAN_POINT ( 'NONE', ( -0.3137698154534637200, 0.3601107899496377400, -0.2686183538591386300 ) ) ; +#2774 = CARTESIAN_POINT ( 'NONE', ( -0.1469910586646925000, 0.2440273711953958600, -0.2455949283783589200 ) ) ; +#2775 = CARTESIAN_POINT ( 'NONE', ( -0.2764148925048403000, 0.1321115965094292200, -0.2671394675341667300 ) ) ; +#2776 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.01128472222222218600 ) ) ; +#2777 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.07725694444444435000 ) ) ; +#2778 = CARTESIAN_POINT ( 'NONE', ( 0.2706232636831506500, -0.09910311065238362700, -0.2489835998143196100 ) ) ; +#2779 = EDGE_CURVE ( 'NONE', #2825, #177, #2955, .T. ) ; +#2780 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.2508680555555555200 ) ) ; +#2781 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.08072916666666665700 ) ) ; +#2782 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #1309, #245, #233, #2960 ), + .UNSPECIFIED., .F., .F., + ( 4, 4 ), + ( 0.0000000000000000000, 0.001106413523597487100 ), + .UNSPECIFIED. ) ; +#2783 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756481400, 0.1397569444444444200 ) ) ; +#2784 = CARTESIAN_POINT ( 'NONE', ( -0.1375707149225063000, 0.2504304136574575500, -0.2464431547437052100 ) ) ; +#2785 = CARTESIAN_POINT ( 'NONE', ( -0.2626689127751382100, 0.1587675739441794000, -0.2676993418122085600 ) ) ; +#2786 = VERTEX_POINT ( 'NONE', #681 ) ; +#2787 = VERTEX_POINT ( 'NONE', #217 ) ; +#2788 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.002604166666666721600 ) ) ; +#2789 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.02517361111111109500 ) ) ; +#2790 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2770, #3037, #67, #335, #2238, #1427, #395, #1485, #1493 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.4635416666666410900, 0.4739583333333078400, 0.4843749999999744600, 0.4947916666666411500, 0.5052083333333078400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000007300, 0.9238795325112794100, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112940700, 0.9999999999999926700 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2791 = ORIENTED_EDGE ( 'NONE', *, *, #1627, .T. ) ; +#2792 = CARTESIAN_POINT ( 'NONE', ( 0.1661051295448940600, -0.2396904810756966300, -0.2524075315974201900 ) ) ; +#2793 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.1848958333333332900 ) ) ; +#2794 = ORIENTED_EDGE ( 'NONE', *, *, #3000, .T. ) ; +#2795 = CARTESIAN_POINT ( 'NONE', ( -0.3333997874619165100, 0.3487774203263728200, -0.2657820503820232900 ) ) ; +#2796 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.2300347222222221800 ) ) ; +#2797 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2798 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.2196180555555555200 ) ) ; +#2799 = LINE ( 'NONE', #3003, #148 ) ; +#2800 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.1189236111111110800 ) ) ; +#2801 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.03906249999999993100 ) ) ; +#2802 = AXIS2_PLACEMENT_3D ( 'NONE', #3523, #2455, #1075 ) ; +#2803 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.3446180555555554700 ) ) ; +#2804 = FACE_OUTER_BOUND ( 'NONE', #3032, .T. ) ; +#2805 = AXIS2_PLACEMENT_3D ( 'NONE', #2662, #1602, #3507 ) ; +#2806 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.1137152777777777800 ) ) ; +#2807 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.1067708333333333600 ) ) ; +#2808 = ADVANCED_FACE ( 'NONE', ( #1935, #2106 ), #1306, .T. ) ; +#2809 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.1779513888888888400 ) ) ; +#2810 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.2230902777777777600 ) ) ; +#2812 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.2230902777777777600 ) ) ; +#2811 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.1848958333333333100 ) ) ; +#2813 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.07899305555555560800 ) ) ; +#2814 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.1154513888888888500 ) ) ; +#2815 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.2543402777777777900 ) ) ; +#2816 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.1866319444444444500 ) ) ; +#2817 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.1484375000000000000 ) ) ; +#2819 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.2682291666666666300 ) ) ; +#2818 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.2196180555555555200 ) ) ; +#2820 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.09288194444444448900 ) ) ; +#2821 = EDGE_CURVE ( 'NONE', #1828, #2787, #1384, .T. ) ; +#2822 = ADVANCED_FACE ( 'NONE', ( #2964 ), #2874, .F. ) ; +#2823 = VERTEX_POINT ( 'NONE', #3215 ) ; +#2824 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.2925347222222222100 ) ) ; +#2825 = VERTEX_POINT ( 'NONE', #2091 ) ; +#2826 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.2421875000000000000 ) ) ; +#2827 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, 0.04253472222222219600 ) ) ; +#2828 = ORIENTED_EDGE ( 'NONE', *, *, #2375, .F. ) ; +#2829 = CARTESIAN_POINT ( 'NONE', ( -0.1309706719899470000, -0.2731318798161916900, 0.2632185310028424800 ) ) ; +#2830 = VERTEX_POINT ( 'NONE', #2128 ) ; +#2831 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.08593750000000002800 ) ) ; +#2832 = CARTESIAN_POINT ( 'NONE', ( 1.643166561121255400E-016, -0.5412658773652743200, 0.2315704386826372100 ) ) ; +#2833 = VERTEX_POINT ( 'NONE', #3186 ) ; +#2835 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.1571180555555555200 ) ) ; +#2834 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, 0.2508680555555555200 ) ) ; +#2836 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.1605902777777777300 ) ) ; +#2837 = VERTEX_POINT ( 'NONE', #1280 ) ; +#2838 = PRODUCT_DEFINITION ( 'UNKNOWN', '', #1416, #926 ) ; +#2839 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.2352430555555555800 ) ) ; +#2840 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.09982638888888890900 ) ) ; +#2841 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.2977430555555555800 ) ) ; +#2842 = CARTESIAN_POINT ( 'NONE', ( 0.1549801845465363400, 0.4517880260982736800, 0.2686183538591386300 ) ) ; +#2843 = VECTOR ( 'NONE', #2625, 39.37007874015748100 ) ; +#2845 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.1432291666666666000 ) ) ; +#2844 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.1154513888888888500 ) ) ; +#2846 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.1953124999999999200 ) ) ; +#2847 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.1206597222222222400 ) ) ; +#2848 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.2039930555555555800 ) ) ; +#2849 = CARTESIAN_POINT ( 'NONE', ( -0.2961380148579522100, 0.01232543709372743900, 0.2567039251873857200 ) ) ; +#2850 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.1536458333333332600 ) ) ; +#2851 = PERSON_AND_ORGANIZATION_ROLE ( 'creator' ) ; +#2853 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.2387152777777778200 ) ) ; +#2852 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.1189236111111110800 ) ) ; +#2854 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.3098958333333333100 ) ) ; +#2855 = ADVANCED_FACE ( 'NONE', ( #1844 ), #1764, .T. ) ; +#2856 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.2039930555555555800 ) ) ; +#2857 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.1623263888888889000 ) ) ; +#2858 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #3393, #1726, #1487, #2850, #123, #1478, #2023, #938, #1760 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2552083333333077800, 0.2656249999999744100, 0.2760416666666410400, 0.2864583333333077800, 0.2968749999999744100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000007800, 0.9238795325112790800, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112944000, 0.9999999999999923400 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2859 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#2861 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.3376736111111111000 ) ) ; +#2860 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000600, -0.1294417382415920800, -0.2005208333333333100 ) ) ; +#2862 = AXIS2_PLACEMENT_3D ( 'NONE', #2129, #505, #2680 ) ; +#2863 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.1675347222222221800 ) ) ; +#2864 = VERTEX_POINT ( 'NONE', #2970 ) ; +#2865 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.2126736111111110800 ) ) ; +#2866 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.2664930555555555800 ) ) ; +#2867 = EDGE_LOOP ( 'NONE', ( #1974, #1238, #2991 ) ) ; +#2868 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, 0.07725694444444443400 ) ) ; +#2869 = CARTESIAN_POINT ( 'NONE', ( -0.2919895903918489100, -0.05527347680655880100, 0.2579541054707095700 ) ) ; +#2870 = ORIENTED_EDGE ( 'NONE', *, *, #1627, .F. ) ; +#2871 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2873 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.2109375000000000000 ) ) ; +#2872 = CARTESIAN_POINT ( 'NONE', ( -3.656931414120569000E-017, 0.2986111111111111000, -0.2595486111111111000 ) ) ; +#2874 = CONICAL_SURFACE ( 'NONE', #2283, 0.2986111111111111600, 0.7853981633974482800 ) ; +#2875 = EDGE_CURVE ( 'NONE', #2823, #671, #1916, .T. ) ; +#2876 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.2855902777777777300 ) ) ; +#2877 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000600, -5.740531871003217500E-017, -0.06510416666666667100 ) ) ; +#2878 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, -0.006076388888888879400 ) ) ; +#2879 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, 0.1050347222222221700 ) ) ; +#2880 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.1935763888888889200 ) ) ; +#2881 = LINE ( 'NONE', #299, #2154 ) ; +#2882 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#2883 = AXIS2_PLACEMENT_3D ( 'NONE', #2932, #3440, #1285 ) ; +#2885 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.1553819444444444800 ) ) ; +#2884 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.2682291666666666300 ) ) ; +#2886 = EDGE_CURVE ( 'NONE', #3456, #3205, #1741, .T. ) ; +#2887 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, -0.1815124092409752500, -0.2549373133073513700 ) ) ; +#2888 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.09635416666666668500 ) ) ; +#2889 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.1119791666666666600 ) ) ; +#2890 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.2595486111111111600 ) ) ; +#2891 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.2682291666666666300 ) ) ; +#2892 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, 6.829619984160658000E-017, 0.2734375000000000000 ) ) ; +#2894 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.2907986111111111000 ) ) ; +#2893 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.2682291666666666300 ) ) ; +#2895 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.2706329386826370500, 0.2734375000000000000 ) ) ; +#2896 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2897 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.03906250000000000000 ) ) ; +#2898 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.1085069444444444100 ) ) ; +#2899 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.1067708333333333600 ) ) ; +#2900 = VERTEX_POINT ( 'NONE', #1051 ) ; +#2901 = VERTEX_POINT ( 'NONE', #1838 ) ; +#2902 = ADVANCED_FACE ( 'NONE', ( #3213 ), #1121, .F. ) ; +#2903 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.006076388888888914100 ) ) ; +#2904 = ORIENTED_EDGE ( 'NONE', *, *, #2572, .T. ) ; +#2905 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, -0.1815124092407255900, 0.2549373133074033800 ) ) ; +#2906 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -2.446791525458581000E-017, 0.2595486111111110500 ) ) ; +#2907 = EDGE_LOOP ( 'NONE', ( #440, #2308, #1965, #11 ) ) ; +#2908 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.05121527777777779700 ) ) ; +#2909 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.06510416666666667100 ) ) ; +#2910 = ORIENTED_EDGE ( 'NONE', *, *, #308, .F. ) ; +#2911 = LOCAL_TIME ( 6, 5, 8.000000000000000000, #573 ) ; +#2912 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.1901041666666667100 ) ) ; +#2913 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.09809027777777772100 ) ) ; +#2914 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.05642361111111109800 ) ) ; +#2915 = CONICAL_SURFACE ( 'NONE', #870, 0.2986111111111111600, 0.7853981633974482800 ) ; +#2916 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.1345486111111111300 ) ) ; +#2918 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.1519097222222222400 ) ) ; +#2917 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#2919 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, 0.04947916666666661600 ) ) ; +#2920 = FACE_OUTER_BOUND ( 'NONE', #1796, .T. ) ; +#2921 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, -0.2706329386826372100, 0.2315704386826372700 ) ) ; +#2922 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, 0.3203124999999999400 ) ) ; +#2923 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.1553819444444444800 ) ) ; +#2924 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.03211805555555551100 ) ) ; +#2925 = CARTESIAN_POINT ( 'NONE', ( 0.2743055545027148200, 0.3828954916329223000, -0.2734375000000002800 ) ) ; +#2927 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#2926 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000095500, 0.1294417382415827800, -0.08940972222222186300 ) ) ; +#2928 = EDGE_CURVE ( 'NONE', #3453, #142, #535, .T. ) ; +#2929 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#2930 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, 0.1189236111111110900 ) ) ; +#2931 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #3066, #3054, #2781, #594, #1415, #2510, #3325, #1147, #322 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5208333333333333700, 0.5312500000000000000, 0.5416666666666666300, 0.5520833333333333700, 0.5625000000000000000 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2932 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#2933 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, 0.2994791666666666300 ) ) ; +#2934 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.02864583333333328700 ) ) ; +#2935 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2936 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.01128472222222222000 ) ) ; +#2937 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1275, #2334, #162, #2913, #190, #445, #2344, #1551, #1260 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.3385416666666411500, 0.3489583333333078400, 0.3593749999999744600, 0.3697916666666410900, 0.3802083333333077800 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000006900, 0.9238795325112798600, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112944000, 0.9999999999999923400 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2938 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.2039930555555556100 ) ) ; +#2940 = CARTESIAN_POINT ( 'NONE', ( 0.1162145979915523800, -0.2507982369490968600, 0.2373531081758390700 ) ) ; +#2939 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.1137152777777777800 ) ) ; +#2941 = CARTESIAN_POINT ( 'NONE', ( 0.07680894105051204500, 0.4969202145735909800, -0.2548427262045494000 ) ) ; +#2942 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, 0.1675347222222221800 ) ) ; +#2943 = CC_DESIGN_APPROVAL ( #3016, ( #2838 ) ) ; +#2944 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.2803819444444444800 ) ) ; +#2945 = ORIENTED_EDGE ( 'NONE', *, *, #581, .F. ) ; +#2946 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.3029513888888888400 ) ) ; +#2947 = ORIENTED_EDGE ( 'NONE', *, *, #372, .T. ) ; +#2948 = CARTESIAN_POINT ( 'NONE', ( 0.3003239209581355400, -0.0006927936437657705400, 0.2610754489390975100 ) ) ; +#2949 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.1085069444444444300 ) ) ; +#2950 = VERTEX_POINT ( 'NONE', #1429 ) ; +#2951 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.2109375000000000000 ) ) ; +#2952 = EDGE_CURVE ( 'NONE', #561, #648, #3388, .T. ) ; +#2953 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.02343750000000001400 ) ) ; +#2954 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608500, 0.2764156081756481400, -0.1241319444444444900 ) ) ; +#2955 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2078, #951, #1510, #3132, #1519, #1497, #2325, #3425, #164 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7968749999999744600, 0.8072916666666410900, 0.8177083333333079500, 0.8281249999999745800, 0.8385416666666412100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000007300, 0.9238795325112794100, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112931800, 0.9999999999999935600 ) ) + REPRESENTATION_ITEM ( '' ) ); +#2957 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#2956 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.000000000000000000, 1.143564276417598300E-016 ) ) ; +#2958 = ORIENTED_EDGE ( 'NONE', *, *, #2411, .F. ) ; +#2959 = APPROVAL_PERSON_ORGANIZATION ( #3261, #3016, #691 ) ; +#2960 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2772791890991354000, -0.2382166890991354300 ) ) ; +#2961 = CARTESIAN_POINT ( 'NONE', ( 0.03824492952929587500, 0.5191851570063968900, -0.2443187485257419200 ) ) ; +#2962 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.1362847222222221500 ) ) ; +#2963 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.2734375000000000600 ) ) ; +#2964 = FACE_OUTER_BOUND ( 'NONE', #1159, .T. ) ; +#2965 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, 0.1814236111111111600 ) ) ; +#2966 = CARTESIAN_POINT ( 'NONE', ( 0.1553454166961355000, -0.2335347204405011400, 0.2406331685607031900 ) ) ; +#2967 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#2968 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.1744791666666666000 ) ) ; +#2969 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.2178819444444444800 ) ) ; +#2970 = CARTESIAN_POINT ( 'NONE', ( 1.643166561121255400E-016, -0.5412658773652743200, -0.2315704386826372100 ) ) ; +#2971 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.2734375000000000000 ) ) ; +#2972 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000083300, -0.1294417382415839500, -0.2282986111111108300 ) ) ; +#2973 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.03211805555555554600 ) ) ; +#2974 = ORIENTED_EDGE ( 'NONE', *, *, #1647, .F. ) ; +#2975 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.1935763888888889200 ) ) ; +#2976 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.1675347222222221800 ) ) ; +#2977 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999993900, -0.1294417382415927500, -0.08940972222222221000 ) ) ; +#2978 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.1189236111111110500 ) ) ; +#2979 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.04427083333333337700 ) ) ; +#2981 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999998300, -0.1294417382415925200, -0.2352430555555555500 ) ) ; +#2980 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001100, 0.2706329386826371600, 0.2734375000000000000 ) ) ; +#2982 = AXIS2_PLACEMENT_3D ( 'NONE', #3481, #2104, #1868 ) ; +#2983 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#2984 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.2196180555555555200 ) ) ; +#2985 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.2873263888888889000 ) ) ; +#2986 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.2074652777777778200 ) ) ; +#2987 = ADVANCED_FACE ( 'NONE', ( #410 ), #1680, .F. ) ; +#2988 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.07552083333333335600 ) ) ; +#2989 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, -0.006076388888888914100 ) ) ; +#2990 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.2821180555555555200 ) ) ; +#2991 = ORIENTED_EDGE ( 'NONE', *, *, #1401, .F. ) ; +#2992 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.06510416666666669900 ) ) ; +#2993 = ORIENTED_EDGE ( 'NONE', *, *, #2439, .F. ) ; +#2994 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -0.7071067811865475700, -0.7071067811865474600 ) ) ; +#2995 = EDGE_LOOP ( 'NONE', ( #812, #220, #488 ) ) ; +#2996 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.1762152777777778200 ) ) ; +#2997 = EDGE_LOOP ( 'NONE', ( #1753, #1331, #2666 ) ) ; +#2998 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#2999 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.1032986111111111300 ) ) ; +#3000 = EDGE_CURVE ( 'NONE', #177, #109, #2744, .T. ) ; +#3001 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.3237847222222222700 ) ) ; +#3002 = LOCAL_TIME ( 6, 5, 8.000000000000000000, #187 ) ; +#3004 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.2491319444444444500 ) ) ; +#3003 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, 3.827021247335478900E-017, 0.2734375000000000000 ) ) ; +#3005 = CARTESIAN_POINT ( 'NONE', ( 0.4305050704707043000, -0.2927136590415142500, 0.2443187485257420600 ) ) ; +#3006 = CARTESIAN_POINT ( 'NONE', ( -0.2294314783610018600, -0.1939039531077082200, -0.2606784437548544400 ) ) ; +#3007 = FACE_OUTER_BOUND ( 'NONE', #2607, .T. ) ; +#3008 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.007812499999999958400 ) ) ; +#3009 = VECTOR ( 'NONE', #991, 39.37007874015748100 ) ; +#3010 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.1310763888888889800 ) ) ; +#3011 = CARTESIAN_POINT ( 'NONE', ( 0.2159426071169829300, 0.1818271058558463300, -0.2430806392507047200 ) ) ; +#3012 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.06857638888888889500 ) ) ; +#3013 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, -0.1144950937579608400, -0.1727430555555555800 ) ) ; +#3014 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.2335069444444443900 ) ) ; +#3015 = ORIENTED_EDGE ( 'NONE', *, *, #3492, .F. ) ; +#3016 = APPROVAL ( #939, 'UNSPECIFIED' ) ; +#3017 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.04600694444444445400 ) ) ; +#3018 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, -0.1144950937579609900, 0.1883680555555555000 ) ) ; +#3019 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.1067708333333334000 ) ) ; +#3020 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.2734375000000000600 ) ) ; +#3021 = CARTESIAN_POINT ( 'NONE', ( 0.2278036704259941700, 0.1673471271925167600, -0.2434477091482591400 ) ) ; +#3022 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.002604166666666687300 ) ) ; +#3023 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.002604166666666687300 ) ) ; +#3024 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#3026 = DIRECTION ( 'NONE', ( 0.5000000000000004400, -0.8660254037844384900, 0.0000000000000000000 ) ) ; +#3025 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -2.446791525458581000E-017, 0.2595486111111110500 ) ) ; +#3027 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, 3.827021247335478900E-017, 0.2734375000000000000 ) ) ; +#3028 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.02517361111111109500 ) ) ; +#3029 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999910100, 0.1294417382416012700, 0.1119791666666669900 ) ) ; +#3030 = EDGE_LOOP ( 'NONE', ( #1715, #774, #902, #2993 ) ) ; +#3031 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.03559027777777770000 ) ) ; +#3032 = EDGE_LOOP ( 'NONE', ( #3015, #656, #727, #818 ) ) ; +#3033 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.1623263888888889500 ) ) ; +#3034 = ORIENTED_EDGE ( 'NONE', *, *, #2692, .T. ) ; +#3035 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.2612847222222222100 ) ) ; +#3036 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.09982638888888890900 ) ) ; +#3037 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000095500, 0.1294417382415827800, 0.02170138888888923200 ) ) ; +#3039 = CARTESIAN_POINT ( 'NONE', ( -0.2343749999999999400, -0.4059494080239556800, -0.2734375000000000000 ) ) ; +#3038 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.1414930555555555500 ) ) ; +#3040 = CLOSED_SHELL ( 'NONE', ( #2822, #2370, #444, #2097, #2987, #984, #1218, #864, #3136, #689, #155, #925, #3257, #189, #641, #2573, #2588, #3323, #358, #2622, #1809, #464, #2010, #2902, #2808, #1251, #2063, #1441, #1742, #2556, #2297, #624, #742, #2028, #1891, #2640, #2351, #1776, #3165, #2227, #1203, #377, #937, #1183, #719, #1725, #544, #2855, #1523, #412 ) ) ; +#3041 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, 0.1779513888888888700 ) ) ; +#3042 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.2126736111111111000 ) ) ; +#3043 =( BOUNDED_SURFACE ( ) B_SPLINE_SURFACE ( 1, 2, ( + ( #643, #3390, #1180, #3117, #1757, #140, #2587, #3398, #1205, #2826, #130, #2042, #899, #948, #2031, #928, #1996, #409, #678, #2260, #2848, #2576, #1461, #1734, #101, #2816, #1171, #634, #2546, #913, #2306, #3366, #2857, #3088, #669, #1450, #1722, #3097, #3106, #1744, #3357, #2286, #375, #2272, #112, #2554, #2005, #383, #657, #2563, #2840, #1192, #1476, #3378, #121, #2020, #2619, #2604, #3454, #1258, #2909, #171, #1812, #186, #3169, #419, #1236, #1224, #972, #1799, #2320, #2084, #467, #3139, #1537, #3442, #455, #1516, #686, #3406, #2051, #2367, #2356, #3146, #732, #2643, #1778, #2596, #963, #2074, #956, #1549, #996, #1821, #1503, #152, #1270, #1526, #699, #3181, #2332, #2868, #717, #3419, #708, #429, #2633, #200, #160, #2879, #2898, #2889, #1248, #2065, #3158, #441, #3432, #987, #1786, #2342, #1300, #224, #2685, #1583, #2113, #3477, #1031, #2976, #487, #1324, #1017, #2965, #1600, #1611, #2432, #1336, #1044, #2673, #3504, #3246, #745, #788, #3234, #760, #1832, #1866, #524, #2100, #773, #2422, #3207, #1569, #3465, #2658, #1005, #3515, #1883, #753, #250, #1845, #2147, #475, #238, #2710, #1558, #2933, #2946, #3488, #2379, #2122, #1056, #2922, #500, #1286, #2391, #3192, #211, #2404, #1313, #3222, #2135, #1855, #511, #2696, #2470, #2458, #3309, #1101, #2766, #24, #1654 ), + ( #1642, #2158, #36, #1933, #1066, #1387, #3020, #290, #1360, #258, #3262, #1895, #302, #2193, #1079, #3293, #2206, #1618, #536, #809, #1917, #2444, #1396, #579, #1666, #2986, #2, #2489, #1372, #547, #1118, #2167, #797, #566, #2996, #556, #2722, #2476, #3033, #12, #49, #2754, #2740, #824, #1905, #1089, #281, #3010, #833, #1630, #272, #3273, #2179, #3281, #842, #2732, #1348, #2527, #2820, #331, #1166, #872, #2813, #1446, #1457, #2266, #1178, #891, #2518, #3355, #3094, #591, #640, #3083, #616, #1683, #1718, #370, #1945, #630, #2256, #1142, #1424, #3320, #2505, #855, #3363, #1731, #600, #96, #3062, #88, #2789, #3048, #1410, #3332, #2801, #1436, #318, #1969, #2552, #1992, #1691, #2216, #2234, #61, #909, #2777, #1130, #75, #1984, #1957, #343, #2245, #881, #1155, #3071, #3344, #1702, #355, #2542, #3403, #954, #108, #933, #923, #675, #1491, #2001, #1499, #1775, #2836, #1222, #2863, #135, #1201, #380, #3104, #1740, #149, #2040, #2846, #3135, #2046, #1472, #2282, #665, #3396, #653, #1231, #426, #1512, #1188, #3373, #2327, #1213, #390, #2601, #2015, #2561, #416, #3113, #405, #119, #2315, #960, #3387, #2876, #2592, #2584, #2303, #1752, #944, #127, #2854, #684, #1483, #2293, #2027, #3124, #1765, #695, #2570, #3142, #3415, #2668, #167, #1002, #713, #2650, #1282 ) ), + .UNSPECIFIED., .F., .F., .T. ) + B_SPLINE_SURFACE_WITH_KNOTS ( ( 2, 2 ), + ( 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3 ), + ( 0.0000000000000000000, 1.000000000000000000 ), + ( 0.0000000000000000000, 0.01041666666666666600, 0.02083333333333333200, 0.03125000000000000000, 0.04166666666666666400, 0.05208333333333333600, 0.06250000000000000000, 0.07291666666666667100, 0.08333333333333332900, 0.09375000000000000000, 0.1041666666666666700, 0.1145833333333333300, 0.1250000000000000000, 0.1354166666666666600, 0.1458333333333333400, 0.1562500000000000000, 0.1666666666666666600, 0.1770833333333333400, 0.1875000000000000000, 0.1979166666666666600, 0.2083333333333333400, 0.2187500000000000000, 0.2291666666666666600, 0.2395833333333333400, 0.2500000000000000000, 0.2604166666666666900, 0.2708333333333333100, 0.2812500000000000000, 0.2916666666666666900, 0.3020833333333333100, 0.3125000000000000000, 0.3229166666666666900, 0.3333333333333333100, 0.3437500000000000000, 0.3541666666666666900, 0.3645833333333333100, 0.3750000000000000000, 0.3854166666666666900, 0.3958333333333333100, 0.4062500000000000000, 0.4166666666666666900, 0.4270833333333333100, 0.4375000000000000000, 0.4479166666666666900, 0.4583333333333333100, 0.4687500000000000000, 0.4791666666666666900, 0.4895833333333333100, 0.5000000000000000000, 0.5104166666666666300, 0.5208333333333333700, 0.5312500000000000000, 0.5416666666666666300, 0.5520833333333333700, 0.5625000000000000000, 0.5729166666666666300, 0.5833333333333333700, 0.5937500000000000000, 0.6041666666666666300, 0.6145833333333333700, 0.6250000000000000000, 0.6354166666666666300, 0.6458333333333333700, 0.6562500000000000000, 0.6666666666666666300, 0.6770833333333333700, 0.6875000000000000000, 0.6979166666666666300, 0.7083333333333333700, 0.7187500000000000000, 0.7291666666666666300, 0.7395833333333333700, 0.7500000000000000000, 0.7604166666666666300, 0.7708333333333333700, 0.7812500000000000000, 0.7916666666666666300, 0.8020833333333333700, 0.8125000000000000000, 0.8229166666666666300, 0.8333333333333333700, 0.8437500000000000000, 0.8541666666666666300, 0.8645833333333333700, 0.8750000000000000000, 0.8854166666666666300, 0.8958333333333333700, 0.9062500000000000000, 0.9166666666666666300, 0.9270833333333333700, 0.9375000000000000000, 0.9479166666666666300, 0.9583333333333333700, 0.9687500000000000000, 0.9791666666666666300, 0.9843749999999754600 ), + .UNSPECIFIED. ) + GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_SURFACE ( ( + ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9619397662558226700, 0.9619397662556433700), + ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9619397662558226700, 0.9619397662556433700) ) ) + REPRESENTATION_ITEM ( '' ) SURFACE ( ) ); +#3044 = CARTESIAN_POINT ( 'NONE', ( -0.2284931837474921100, 0.2072586767945289200, -0.2687740267142819100 ) ) ; +#3045 = ORIENTED_EDGE ( 'NONE', *, *, #846, .F. ) ; +#3046 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.07031249999999995800 ) ) ; +#3047 = CONICAL_SURFACE ( 'NONE', #1710, 0.4687500000000000000, 1.047197551196600100 ) ; +#3048 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.02864583333333325900 ) ) ; +#3049 = CARTESIAN_POINT ( 'NONE', ( 0.2674445315240987500, -0.1078801638568529600, -0.2491698608861757400 ) ) ; +#3050 = AXIS2_PLACEMENT_3D ( 'NONE', #2602, #617, #961 ) ; +#3051 = FACE_OUTER_BOUND ( 'NONE', #3433, .T. ) ; +#3052 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.1814236111111111000 ) ) ; +#3053 = AXIS2_PLACEMENT_3D ( 'NONE', #916, #2871, #1814 ) ; +#3054 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, 0.07725694444444443400 ) ) ; +#3055 = VECTOR ( 'NONE', #1025, 39.37007874015748100 ) ; +#3056 = DIRECTION ( 'NONE', ( 0.8660254037844383700, 0.5000000000000003300, 0.0000000000000000000 ) ) ; +#3057 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #631, #1501, #371, #2887, #697, #2246 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 0.04704561619095051100, 0.05052294385006563700, 0.05400027150918076300 ), + .UNSPECIFIED. ) ; +#3058 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.1744791666666666000 ) ) ; +#3059 = CARTESIAN_POINT ( 'NONE', ( 0.3333997874619165600, -0.3487774203263729300, 0.2657820503820233500 ) ) ; +#3060 = CONICAL_SURFACE ( 'NONE', #2195, 0.4687500000000000000, 1.047197551196600100 ) ; +#3061 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.04427083333333337700 ) ) ; +#3062 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.01822916666666664000 ) ) ; +#3063 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, -0.04079861111111111200 ) ) ; +#3064 = EDGE_CURVE ( 'NONE', #1274, #174, #2146, .T. ) ; +#3065 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.1501736111111111000 ) ) ; +#3066 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.07378472222222219600 ) ) ; +#3067 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, -0.1144950937579609900, 0.1814236111111111000 ) ) ; +#3068 = CARTESIAN_POINT ( 'NONE', ( -0.1596353546350258200, 0.2258403779944726500, -0.2373531081756482000 ) ) ; +#3069 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.1276041666666666900 ) ) ; +#3070 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.1953124999999999200 ) ) ; +#3071 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.1085069444444444100 ) ) ; +#3072 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.1380208333333333700 ) ) ; +#3073 = EDGE_CURVE ( 'NONE', #315, #1235, #330, .T. ) ; +#3074 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.3515624999999999400 ) ) ; +#3075 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000094400, -0.1294417382415829200, -0.1171874999999996500 ) ) ; +#3076 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.1553819444444444800 ) ) ; +#3077 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.2335069444444443900 ) ) ; +#3078 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999915600, -0.1294417382416006600, -0.02690972222222191800 ) ) ; +#3079 = ORIENTED_EDGE ( 'NONE', *, *, #1230, .F. ) ; +#3080 = ORIENTED_EDGE ( 'NONE', *, *, #1027, .F. ) ; +#3082 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.1397569444444443900 ) ) ; +#3081 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, 0.05642361111111107000 ) ) ; +#3083 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.04079861111111114700 ) ) ; +#3084 = VECTOR ( 'NONE', #1239, 39.37007874015748100 ) ; +#3085 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000010500, 0.1294417382415911900, 0.1258680555555555800 ) ) ; +#3086 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.3411458333333333700 ) ) ; +#3087 = ORIENTED_EDGE ( 'NONE', *, *, #3404, .F. ) ; +#3088 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.1588541666666666600 ) ) ; +#3089 = DIRECTION ( 'NONE', ( 1.261786539621761300E-016, -1.000000000000000000, 0.0000000000000000000 ) ) ; +#3090 = LOCAL_TIME ( 6, 5, 8.000000000000000000, #1761 ) ; +#3092 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.2543402777777777300 ) ) ; +#3091 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.1987847222222221500 ) ) ; +#3093 = FACE_OUTER_BOUND ( 'NONE', #821, .T. ) ; +#3094 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.05121527777777783200 ) ) ; +#3095 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.2699652777777777900 ) ) ; +#3096 = FACE_OUTER_BOUND ( 'NONE', #660, .T. ) ; +#3097 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, -0.1449652777777777900 ) ) ; +#3098 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.07378472222222216800 ) ) ; +#3099 = CARTESIAN_POINT ( 'NONE', ( -0.01948257526437411500, -0.3039835099435717100, 0.2653895800204923400 ) ) ; +#3100 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.002604166666666653100 ) ) ; +#3101 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#3103 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.2473958333333332900 ) ) ; +#3102 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.2578125000000000000 ) ) ; +#3104 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.1814236111111110500 ) ) ; +#3105 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, -0.1657986111111111000 ) ) ; +#3106 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.1414930555555555800 ) ) ; +#3107 = CARTESIAN_POINT ( 'NONE', ( -7.310197353693474300E-013, -0.3047954476154233200, 0.2657329476154229900 ) ) ; +#3108 = CARTESIAN_POINT ( 'NONE', ( 0.1945045140791402400, 0.4289686438030851400, 0.2724479197730276200 ) ) ; +#3109 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, 0.1825358244430620400, 0.2547220505730512000 ) ) ; +#3110 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.1206597222222222400 ) ) ; +#3112 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.1744791666666666300 ) ) ; +#3111 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, 0.1883680555555555500 ) ) ; +#3113 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.2647569444444444200 ) ) ; +#3114 = EDGE_CURVE ( 'NONE', #734, #605, #618, .T. ) ; +#3115 = ORIENTED_EDGE ( 'NONE', *, *, #3237, .T. ) ; +#3116 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.1032986111111111300 ) ) ; +#3117 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, -0.2630208333333333100 ) ) ; +#3118 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, 0.2022569444444443900 ) ) ; +#3119 = VERTEX_POINT ( 'NONE', #2418 ) ; +#3120 = PERSON_AND_ORGANIZATION_ROLE ( 'design_supplier' ) ; +#3121 = ORIENTED_EDGE ( 'NONE', *, *, #545, .T. ) ; +#3123 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.1831597222222222400 ) ) ; +#3122 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, 0.1328125000000000000 ) ) ; +#3124 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.3272569444444443600 ) ) ; +#3125 = ORIENTED_EDGE ( 'NONE', *, *, #3473, .T. ) ; +#3126 = PERSON_AND_ORGANIZATION ( #3475, #860 ) ; +#3127 = PRODUCT_RELATED_PRODUCT_CATEGORY ( 'detail', '', ( #2670 ) ) ; +#3128 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, -0.2282986111111111600 ) ) ; +#3129 = CARTESIAN_POINT ( 'NONE', ( -0.2359461916932331900, 0.1738006967757323400, 0.2533444004086389300 ) ) ; +#3130 = AXIS2_PLACEMENT_3D ( 'NONE', #929, #949, #2555 ) ; +#3131 = FACE_OUTER_BOUND ( 'NONE', #1876, .T. ) ; +#3133 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.2526041666666666900 ) ) ; +#3132 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.2074652777777778500 ) ) ; +#3134 = EDGE_CURVE ( 'NONE', #2396, #1943, #2321, .T. ) ; +#3135 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.1987847222222221500 ) ) ; +#3136 = ADVANCED_FACE ( 'NONE', ( #2414 ), #237, .F. ) ; +#3137 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.1345486111111111300 ) ) ; +#3138 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.2317708333333333700 ) ) ; +#3139 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.01996527777777778700 ) ) ; +#3140 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.1831597222222222400 ) ) ; +#3141 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.3012152777777777900 ) ) ; +#3142 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.3411458333333333100 ) ) ; +#3143 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.2196180555555555200 ) ) ; +#3144 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, -0.02690972222222223800 ) ) ; +#3145 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2187, #278, #1356, #3004, #1924, #829, #254, #2981, #562 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.02083333333333331100, 0.03124999999999997900, 0.04166666666666664400, 0.05208333333333331500, 0.06249999999999998600 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000200, 0.9238795325112866300, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112868500, 0.9999999999999998900 ) ) + REPRESENTATION_ITEM ( '' ) ); +#3146 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, 0.01475694444444441300 ) ) ; +#3147 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.2630208333333333100 ) ) ; +#3148 = CARTESIAN_POINT ( 'NONE', ( -0.2742454859208599000, 0.3829301722448262300, 0.2724479197730277400 ) ) ; +#3149 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.1085069444444444100 ) ) ; +#3150 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.2838541666666666900 ) ) ; +#3151 = CARTESIAN_POINT ( 'NONE', ( -0.3137397276145917300, -0.3601281611715098600, -0.2694473453760668500 ) ) ; +#3152 = ORIENTED_EDGE ( 'NONE', *, *, #333, .T. ) ; +#3153 = EDGE_CURVE ( 'NONE', #1152, #3119, #1567, .T. ) ; +#3154 = ORIENTED_EDGE ( 'NONE', *, *, #1591, .F. ) ; +#3155 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#3156 = VERTEX_POINT ( 'NONE', #2440 ) ; +#3157 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.07899305555555558000 ) ) ; +#3158 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, 0.1223958333333333100 ) ) ; +#3159 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.2734375000000000000 ) ) ; +#3160 = ORIENTED_EDGE ( 'NONE', *, *, #147, .T. ) ; +#3161 = DATE_TIME_ROLE ( 'creation_date' ) ; +#3163 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.2074652777777778200 ) ) ; +#3162 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.3133680555555555200 ) ) ; +#3164 = CARTESIAN_POINT ( 'NONE', ( 0.2732483509031983200, 0.06021272372200701900, 0.2405119192156181800 ) ) ; +#3165 = ADVANCED_FACE ( 'NONE', ( #3509 ), #3047, .T. ) ; +#3166 = CARTESIAN_POINT ( 'NONE', ( -0.4687499999999999400, -0.2265741587664557900, 0.2442891129050253600 ) ) ; +#3167 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.05815972222222225200 ) ) ; +#3168 = CIRCLE ( 'NONE', #1423, 0.3125000000000000000 ) ; +#3169 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.05121527777777779700 ) ) ; +#3170 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.09635416666666668500 ) ) ; +#3171 = FACE_OUTER_BOUND ( 'NONE', #2443, .T. ) ; +#3172 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3173 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.09809027777777779000 ) ) ; +#3174 = AXIS2_PLACEMENT_3D ( 'NONE', #1124, #54, #3089 ) ; +#3175 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#3176 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415921600, -0.3125000000000000600, -0.1866319444444444800 ) ) ; +#3177 = EDGE_CURVE ( 'NONE', #3338, #2950, #1141, .T. ) ; +#3178 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.390706609902761100E-016, 1.000000000000000000 ) ) ; +#3179 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, -0.006076388888888948000 ) ) ; +#3180 = CARTESIAN_POINT ( 'NONE', ( 0.1367292239985552800, -0.2758625798312240300, 0.2683229623689677400 ) ) ; +#3181 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, 0.07031249999999995800 ) ) ; +#3182 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.09982638888888890900 ) ) ; +#3183 = CARTESIAN_POINT ( 'NONE', ( -0.3137698154534637200, 0.3601107899496377400, 0.2686183538591386300 ) ) ; +#3184 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.08767361111111107700 ) ) ; +#3185 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.2317708333333333700 ) ) ; +#3187 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.03732638888888892300 ) ) ; +#3186 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.1762152777777777900 ) ) ; +#3188 = CARTESIAN_POINT ( 'NONE', ( 0.08858633484097636100, 0.2715678703688334000, 0.2463664311660883100 ) ) ; +#3189 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.1144950937579609200, -0.02690972222222227600 ) ) ; +#3190 = CC_DESIGN_APPROVAL ( #1596, ( #1416 ) ) ; +#3191 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.2317708333333333700 ) ) ; +#3192 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.3342013888888889000 ) ) ; +#3193 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.02343750000000001400 ) ) ; +#3194 = AXIS2_PLACEMENT_3D ( 'NONE', #985, #3206, #2378 ) ; +#3195 = ORIENTED_EDGE ( 'NONE', *, *, #1449, .F. ) ; +#3196 = EDGE_LOOP ( 'NONE', ( #1500, #3505, #1788, #2090 ) ) ; +#3197 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.2317708333333333700 ) ) ; +#3198 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.02864583333333328700 ) ) ; +#3199 = ORIENTED_EDGE ( 'NONE', *, *, #404, .T. ) ; +#3200 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.2706329386826370500, -0.2734375000000000000 ) ) ; +#3202 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3201 = CARTESIAN_POINT ( 'NONE', ( -0.2144843763911360400, -0.4174332649188828800, 0.2734375000000002800 ) ) ; +#3203 = CARTESIAN_POINT ( 'NONE', ( 0.2017852126795073600, 0.1993317089790677700, 0.2436810776574971400 ) ) ; +#3204 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, -0.1144950937579609900, 0.1328124999999999200 ) ) ; +#3205 = VERTEX_POINT ( 'NONE', #46 ) ; +#3206 = DIRECTION ( 'NONE', ( -0.5000000000000004400, 0.8660254037844384900, 0.0000000000000000000 ) ) ; +#3207 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.2473958333333332900 ) ) ; +#3208 = ORIENTED_EDGE ( 'NONE', *, *, #1531, .F. ) ; +#3209 = CARTESIAN_POINT ( 'NONE', ( 0.2969795300689242500, 0.07332686841301590300, 0.2661075516598642200 ) ) ; +#3210 = APPROVAL_DATE_TIME ( #110, #1596 ) ; +#3211 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.07204861111111111900 ) ) ; +#3212 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.02517361111111106000 ) ) ; +#3213 = FACE_OUTER_BOUND ( 'NONE', #98, .T. ) ; +#3214 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, -0.1727430555555556100 ) ) ; +#3216 = CARTESIAN_POINT ( 'NONE', ( 0.1484019781928299600, -0.2339035149840318600, 0.2373531081756481100 ) ) ; +#3215 = CARTESIAN_POINT ( 'NONE', ( -0.2343749999999999700, -0.4059494080239557400, 0.2734375000000000000 ) ) ; +#3217 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999989500, 0.1294417382415933300, 0.04947916666666665700 ) ) ; +#3218 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.2317708333333333700 ) ) ; +#3219 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, 0.1744791666666666600 ) ) ; +#3220 = FACE_OUTER_BOUND ( 'NONE', #2002, .T. ) ; +#3221 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.2178819444444444800 ) ) ; +#3222 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, 0.3480902777777777900 ) ) ; +#3223 = VERTEX_POINT ( 'NONE', #3317 ) ; +#3224 = CARTESIAN_POINT ( 'NONE', ( 0.3333997874619166200, -0.3487774203263729300, -0.2657820503820233500 ) ) ; +#3225 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.1223958333333332700 ) ) ; +#3226 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000010500, 0.1294417382415911900, 0.1814236111111111300 ) ) ; +#3227 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.01302083333333336900 ) ) ; +#3228 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, -0.1171875000000000400 ) ) ; +#3229 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.02343750000000001400 ) ) ; +#3230 = EDGE_CURVE ( 'NONE', #2485, #3335, #2316, .T. ) ; +#3231 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#3232 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.01128472222222218600 ) ) ; +#3233 = CARTESIAN_POINT ( 'NONE', ( -0.07696140476767639200, 0.4968321896054448400, -0.2548796692176172900 ) ) ; +#3234 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.2196180555555555200 ) ) ; +#3235 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.08246527777777780400 ) ) ; +#3236 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.2578125000000000600 ) ) ; +#3237 = EDGE_CURVE ( 'NONE', #1943, #2837, #3471, .T. ) ; +#3238 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608800, -0.2764156081756481400, -0.1588541666666667400 ) ) ; +#3240 = CARTESIAN_POINT ( 'NONE', ( -1.313478095563946000E-016, 0.5412658773652743200, -0.2315704386826372100 ) ) ; +#3239 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.1067708333333333600 ) ) ; +#3241 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, -0.03038194444444446800 ) ) ; +#3242 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3243 = CARTESIAN_POINT ( 'NONE', ( -0.03984406284312666500, -0.2930959199058277300, -0.2565623132276221900 ) ) ; +#3244 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.1901041666666667100 ) ) ; +#3245 = ORIENTED_EDGE ( 'NONE', *, *, #1591, .T. ) ; +#3246 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, 0.2092013888888889200 ) ) ; +#3247 = ORIENTED_EDGE ( 'NONE', *, *, #1826, .F. ) ; +#3248 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000001700, -0.2706329386826369400, -0.2315704386826372700 ) ) ; +#3249 = VERTEX_POINT ( 'NONE', #612 ) ; +#3250 = ORIENTED_EDGE ( 'NONE', *, *, #1719, .T. ) ; +#3251 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3252 = EDGE_CURVE ( 'NONE', #570, #567, #2620, .T. ) ; +#3253 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.2855902777777777900 ) ) ; +#3254 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, -0.08593750000000002800 ) ) ; +#3255 = CARTESIAN_POINT ( 'NONE', ( 0.2595172643670272100, -0.09516500374910928700, 0.2373531081756481100 ) ) ; +#3256 = EDGE_LOOP ( 'NONE', ( #1626, #2231, #481, #2752, #1195, #354 ) ) ; +#3257 = ADVANCED_FACE ( 'NONE', ( #3345 ), #317, .F. ) ; +#3258 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000005000, 0.1294417382415917200, 0.01475694444444443200 ) ) ; +#3259 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.1144950937579609200, 0.1953124999999999400 ) ) ; +#3260 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.2248263888888889000 ) ) ; +#3261 = PERSON_AND_ORGANIZATION ( #3475, #860 ) ; +#3262 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.2595486111111111600 ) ) ; +#3263 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000600, -5.740531871003217500E-017, 0.2196180555555555200 ) ) ; +#3264 = LINE ( 'NONE', #3327, #1632 ) ; +#3265 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1139, #2214, #1714, #1433, #2500, #905, #1115, #3029, #1803 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.2968749999999744100, 0.3072916666666410900, 0.3177083333333078400, 0.3281249999999744600, 0.3385416666666411500 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000007800, 0.9238795325112790800, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112936200, 0.9999999999999931200 ) ) + REPRESENTATION_ITEM ( '' ) ); +#3266 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, -0.04774305555555556600 ) ) ; +#3267 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.2196180555555555000 ) ) ; +#3268 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, -0.1144950937579609900, -0.08940972222222225200 ) ) ; +#3269 = CARTESIAN_POINT ( 'NONE', ( 0.2453734551061159100, -0.1285628406739954500, 0.2373531081756480300 ) ) ; +#3270 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.2248263888888889000 ) ) ; +#3271 = CARTESIAN_POINT ( 'NONE', ( 0.03834067480472929500, -0.5191298784458521200, -0.2443506636175588100 ) ) ; +#3272 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.2595486111111111600 ) ) ; +#3273 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.1171875000000000400 ) ) ; +#3274 = CARTESIAN_POINT ( 'NONE', ( 0.2477842050372099900, -0.1502414252716368900, -0.2500985894367240300 ) ) ; +#3275 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.05121527777777779700 ) ) ; +#3276 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.1362847222222221800 ) ) ; +#3278 = CARTESIAN_POINT ( 'NONE', ( 0.2264075203531881500, -0.1596125659226143600, 0.2373531081756481100 ) ) ; +#3277 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.1362847222222222100 ) ) ; +#3279 = DIRECTION ( 'NONE', ( 1.000000000000000000, 1.776356839400250500E-015, 0.0000000000000000000 ) ) ; +#3280 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.06510416666666669900 ) ) ; +#3281 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.1102430555555555800 ) ) ; +#3282 = CARTESIAN_POINT ( 'NONE', ( 0.03735188102885449900, 0.2756507917952321600, -0.2389495189991981100 ) ) ; +#3283 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, 0.03559027777777774800 ) ) ; +#3284 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, -0.1796875000000000300 ) ) ; +#3285 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.1119791666666666600 ) ) ; +#3286 = VERTEX_POINT ( 'NONE', #2750 ) ; +#3287 = ORIENTED_EDGE ( 'NONE', *, *, #2151, .F. ) ; +#3288 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.03906250000000000000 ) ) ; +#3289 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.03906250000000000000 ) ) ; +#3290 = ORIENTED_EDGE ( 'NONE', *, *, #1669, .F. ) ; +#3291 = ORIENTED_EDGE ( 'NONE', *, *, #2875, .T. ) ; +#3292 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.006076388888888948000 ) ) ; +#3293 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.2421875000000000300 ) ) ; +#3294 = ORIENTED_EDGE ( 'NONE', *, *, #2080, .T. ) ; +#3295 = CARTESIAN_POINT ( 'NONE', ( 0.1736941781090318400, -0.2340245937407493800, -0.2522254902495993900 ) ) ; +#3296 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.01128472222222222000 ) ) ; +#3297 = VERTEX_POINT ( 'NONE', #1941 ) ; +#3298 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.1067708333333333600 ) ) ; +#3299 = EDGE_CURVE ( 'NONE', #950, #3494, #786, .T. ) ; +#3300 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.1206597222222222400 ) ) ; +#3302 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.2543402777777777300 ) ) ; +#3301 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000001100, 0.2268628408709682000, -0.2442057775596488700 ) ) ; +#3303 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #9, #270, #256, #3243, #532, #2730, #21, #1903, #554, #2468, #820, #1087, #3006, #1369, #1913, #1128, #2538, #349, #1394, #1679, #93, #58, #1689, #1942, #72, #1700, #2516, #2775, #328, #2785, #1964, #613, #3044, #867, #341, #1989, #1408, #2253, #1955, #1979, #626, #2242, #3305, #3341 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ), + ( 0.02386290124923754300, 0.02461796542184758000, 0.02537302959445762000, 0.02612809376706765700, 0.02688315793967769800, 0.02839328628489777600, 0.02990341463011785000, 0.03141354297533793100, 0.03216860714794796800, 0.03292367132055800500, 0.03367873549316804200, 0.03443379966577808600, 0.03594392801099816100, 0.03745405635621823500, 0.03896418470143830900, 0.03971924887404834600, 0.04047431304665838300, 0.04198444139187845800, 0.04349456973709853200, 0.04424963390970856900, 0.04500469808231861300, 0.04651482642753868700, 0.04802495477275876100 ), + .UNSPECIFIED. ) ; +#3304 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756481400, 0.1144950937579608500, 0.2092013888888889200 ) ) ; +#3305 = CARTESIAN_POINT ( 'NONE', ( -0.02005592740831561900, 0.3121589266548189200, -0.2730964266548189800 ) ) ; +#3306 = FACE_OUTER_BOUND ( 'NONE', #3416, .T. ) ; +#3307 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.05468750000000005600 ) ) ; +#3308 = VECTOR ( 'NONE', #1687, 39.37007874015748100 ) ; +#3309 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.3723958333333332600 ) ) ; +#3310 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1061, #1095, #816, #1873, #2186, #1344, #1071, #1637, #1380 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.1458333333333333400, 0.1562500000000000000, 0.1666666666666666900, 0.1770833333333333700, 0.1875000000000000300 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112865200, 1.000000000000000200 ) ) + REPRESENTATION_ITEM ( '' ) ); +#3311 = CARTESIAN_POINT ( 'NONE', ( 0.1271477569385281400, 0.2500868372599982000, -0.2408657731404105800 ) ) ; +#3312 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.3064236111111111600 ) ) ; +#3313 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.08767361111111107700 ) ) ; +#3315 = CARTESIAN_POINT ( 'NONE', ( 3.656931414120569000E-017, 0.2986111111111111000, 0.2595486111111111000 ) ) ; +#3314 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.1519097222222222400 ) ) ; +#3316 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608500, 0.2764156081756481400, 0.1467013888888888700 ) ) ; +#3317 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.2317708333333333700 ) ) ; +#3318 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999989500, 0.1294417382415933300, 0.2161458333333333700 ) ) ; +#3319 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, -0.03732638888888892300 ) ) ; +#3320 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.006076388888888948000 ) ) ; +#3321 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.1414930555555555500 ) ) ; +#3322 = EDGE_CURVE ( 'NONE', #531, #859, #1629, .T. ) ; +#3323 = ADVANCED_FACE ( 'NONE', ( #1504 ), #1932, .F. ) ; +#3324 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.3237847222222222700 ) ) ; +#3325 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.09461805555555556600 ) ) ; +#3327 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, 3.827021247335478900E-017, 0.2734375000000000000 ) ) ; +#3326 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.1692708333333333400 ) ) ; +#3328 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #1889, #1084, #2200, #1901, #2437, #793 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 2.380729676762359600E-007, 0.003477957935430242700, 0.006955677797892809500 ), + .UNSPECIFIED. ) ; +#3329 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, 0.1987847222222222100 ) ) ; +#3330 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.2699652777777777900 ) ) ; +#3331 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.06163194444444446800 ) ) ; +#3332 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.03559027777777770000 ) ) ; +#3333 = ORIENTED_EDGE ( 'NONE', *, *, #3364, .F. ) ; +#3334 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.3029513888888889000 ) ) ; +#3335 = VERTEX_POINT ( 'NONE', #124 ) ; +#3336 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.3480902777777777900 ) ) ; +#3337 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2764156081756482000, -0.3012152777777777900 ) ) ; +#3338 = VERTEX_POINT ( 'NONE', #3381 ) ; +#3339 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.2196180555555555000 ) ) ; +#3340 = CARTESIAN_POINT ( 'NONE', ( -0.2237736071878999900, 0.1622681766990339000, -0.2373531081756481100 ) ) ; +#3341 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.2734375000000000000 ) ) ; +#3342 = EDGE_LOOP ( 'NONE', ( #2661, #105, #976, #1543 ) ) ; +#3343 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.2265624999999999200 ) ) ; +#3344 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.1119791666666666600 ) ) ; +#3345 = FACE_OUTER_BOUND ( 'NONE', #1707, .T. ) ; +#3346 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.2682291666666666300 ) ) ; +#3347 = EDGE_CURVE ( 'NONE', #109, #2837, #366, .T. ) ; +#3348 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.1276041666666666900 ) ) ; +#3349 = VECTOR ( 'NONE', #3462, 39.37007874015748100 ) ; +#3350 = CARTESIAN_POINT ( 'NONE', ( -0.06146077186231708300, 0.2701097459862493700, -0.2373531081756481400 ) ) ; +#3351 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, -0.1241319444444444600 ) ) ; +#3352 = FACE_OUTER_BOUND ( 'NONE', #1019, .T. ) ; +#3354 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.2335069444444443600 ) ) ; +#3353 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.2057291666666666300 ) ) ; +#3355 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.05468750000000005600 ) ) ; +#3356 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, 0.2161458333333333100 ) ) ; +#3357 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.1345486111111111300 ) ) ; +#3358 = CARTESIAN_POINT ( 'NONE', ( -0.2662375675351103000, 0.1240090933584906700, 0.2544779945691824100 ) ) ; +#3359 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3360 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.1848958333333333100 ) ) ; +#3362 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.2751736111111110500 ) ) ; +#3361 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.2300347222222222400 ) ) ; +#3363 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.004340277777777732000 ) ) ; +#3364 = EDGE_CURVE ( 'NONE', #2950, #3456, #1468, .T. ) ; +#3365 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.3125000000000000000, -0.2109375000000000000 ) ) ; +#3366 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, -0.1657986111111111000 ) ) ; +#3367 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.1144950937579609200, 0.07725694444444439200 ) ) ; +#3368 = CARTESIAN_POINT ( 'NONE', ( -0.2019591563587176100, -0.2229380774647722100, 0.2615941877572766100 ) ) ; +#3369 = ORIENTED_EDGE ( 'NONE', *, *, #3322, .T. ) ; +#3370 = ORIENTED_EDGE ( 'NONE', *, *, #3404, .T. ) ; +#3372 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, 0.1987847222222221500 ) ) ; +#3371 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.1432291666666666900 ) ) ; +#3373 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.2369791666666666600 ) ) ; +#3374 = ORIENTED_EDGE ( 'NONE', *, *, #3492, .T. ) ; +#3375 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #1288, #2851, ( #2838 ) ) ; +#3376 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207960800, 0.2209708691207961100, -0.3151041666666666900 ) ) ; +#3377 = EDGE_LOOP ( 'NONE', ( #2405, #1968, #3121, #810, #900, #1272 ) ) ; +#3378 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, -0.1294417382415922200, -0.08940972222222221000 ) ) ; +#3379 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.1918402777777777900 ) ) ; +#3380 = ORIENTED_EDGE ( 'NONE', *, *, #632, .T. ) ; +#3381 = CARTESIAN_POINT ( 'NONE', ( 0.2343750000000002200, -0.4059494080239556300, 0.2734375000000000000 ) ) ; +#3382 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#3383 = AXIS2_PLACEMENT_3D ( 'NONE', #2895, #196, #992 ) ; +#3385 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, 0.1328124999999999200 ) ) ; +#3384 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.08072916666666665700 ) ) ; +#3386 = CONICAL_SURFACE ( 'NONE', #2035, 0.2986111111111111600, 0.7853981633974482800 ) ; +#3387 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, 0.2821180555555554700 ) ) ; +#3388 = B_SPLINE_CURVE_WITH_KNOTS ( 'NONE', 3, + ( #1773, #518, #1817, #1001, #553, #234 ), + .UNSPECIFIED., .F., .F., + ( 4, 2, 4 ), + ( 2.380729676765279200E-007, 0.003477957935430242200, 0.006955677797892807800 ), + .UNSPECIFIED. ) ; +#3389 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.3185763888888889000 ) ) ; +#3390 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.2699652777777777900 ) ) ; +#3391 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.2871850421650035100, 0.2481225421650035700 ) ) ; +#3392 = ORIENTED_EDGE ( 'NONE', *, *, #1083, .T. ) ; +#3393 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, 0.1640624999999999700 ) ) ; +#3395 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.2630208333333333100 ) ) ; +#3394 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, 0.08767361111111110500 ) ) ; +#3396 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 0.1144950937579608800, 0.2161458333333332900 ) ) ; +#3397 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.1294417382415922500, -0.1449652777777777900 ) ) ; +#3398 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, -0.2491319444444444800 ) ) ; +#3399 = CARTESIAN_POINT ( 'NONE', ( -0.2934729164447703600, -0.04556962266835051800, 0.2577686303390475700 ) ) ; +#3401 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.3446180555555555800 ) ) ; +#3400 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, -0.1901041666666667100 ) ) ; +#3402 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1072, #1911, #1902, #1096, #575, #2466, #1638, #2173, #817 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.7552083333333078400, 0.7656249999999744600, 0.7760416666666410900, 0.7864583333333078400, 0.7968749999999744600 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000007300, 0.9238795325112794100, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112940700, 0.9999999999999926700 ) ) + REPRESENTATION_ITEM ( '' ) ); +#3403 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579608000, -0.2764156081756482500, 0.1258680555555555000 ) ) ; +#3404 = EDGE_CURVE ( 'NONE', #3335, #1789, #2593, .T. ) ; +#3405 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.2178819444444444500 ) ) ; +#3406 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.0008680555555555396800 ) ) ; +#3407 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, -0.1380208333333333700 ) ) ; +#3408 = ORIENTED_EDGE ( 'NONE', *, *, #1473, .T. ) ; +#3409 = ORIENTED_EDGE ( 'NONE', *, *, #3347, .F. ) ; +#3410 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, 3.827021247335478900E-017, 0.2734375000000000000 ) ) ; +#3411 = PERSON_AND_ORGANIZATION_ROLE ( 'classification_officer' ) ; +#3412 = LINE ( 'NONE', #903, #1712 ) ; +#3414 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.2960069444444443600 ) ) ; +#3413 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.3237847222222221500 ) ) ; +#3415 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.3446180555555555800 ) ) ; +#3416 = EDGE_LOOP ( 'NONE', ( #2904, #3498, #1754, #486, #974, #1877 ) ) ; +#3417 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.2057291666666666300 ) ) ; +#3418 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, 0.004340277777777732000 ) ) ; +#3419 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.08420138888888890900 ) ) ; +#3420 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, -0.08940972222222226500 ) ) ; +#3421 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +#3422 = DATE_TIME_ROLE ( 'classification_date' ) ; +#3423 = FACE_OUTER_BOUND ( 'NONE', #2047, .T. ) ; +#3424 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.1206597222222222400 ) ) ; +#3426 = CARTESIAN_POINT ( 'NONE', ( 0.2553747228603364100, 0.1057796736954687400, 0.3619791666666498100 ) ) ; +#3425 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999915600, 0.1294417382416007400, -0.2213541666666663800 ) ) ; +#3427 = EDGE_CURVE ( 'NONE', #3249, #561, #2389, .T. ) ; +#3428 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #2893, #2312, #1804 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 3 ), + ( 0.8125000000000001100, 0.8202367429092343200 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 0.9999999999999992200, 0.9434632492392733800, 0.9709092771459134600 ) ) + REPRESENTATION_ITEM ( '' ) ); +#3429 = CYLINDRICAL_SURFACE ( 'NONE', #2862, 0.3125000000000000000 ) ; +#3430 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, -0.1815124092409752500, 0.2549373133073513700 ) ) ; +#3431 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.007812499999999958400 ) ) ; +#3432 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000000, 1.913510623667739500E-017, 0.1293402777777777600 ) ) ; +#3433 = EDGE_LOOP ( 'NONE', ( #231, #2353, #2317, #2490, #3160, #1284, #1533, #3449, #1871, #2445, #3374, #2009, #2947, #649, #728, #1460, #2502, #1573, #2794, #1116, #1417, #391, #652, #2054, #771, #853 ) ) ; +#3434 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.1206597222222222400 ) ) ; +#3435 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3436 = APPROVAL_ROLE ( '' ) ; +#3437 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999997200, -0.1294417382415924700, -0.1449652777777777600 ) ) ; +#3438 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.1692708333333333400 ) ) ; +#3439 = CARTESIAN_POINT ( 'NONE', ( 0.1197543968799156400, 0.2585857137771878100, 0.2456854267420206800 ) ) ; +#3440 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3441 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, -0.05468750000000002100 ) ) ; +#3442 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, -0.01302083333333336900 ) ) ; +#3443 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, -0.1762152777777777900 ) ) ; +#3444 = CARTESIAN_POINT ( 'NONE', ( -0.4305050704707040800, 0.2927136590415143600, 0.2443187485257420900 ) ) ; +#3445 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.03038194444444446800 ) ) ; +#3446 = CARTESIAN_POINT ( 'NONE', ( -0.1945045140791401600, -0.4289686438030852500, -0.2724479197730277400 ) ) ; +#3447 = CARTESIAN_POINT ( 'NONE', ( 0.3125000000000000000, -5.740531871003217500E-017, -0.1206597222222222400 ) ) ; +#3448 = CARTESIAN_POINT ( 'NONE', ( 0.2527090155872150900, 0.1248475014398749700, 0.2419009531555731400 ) ) ; +#3449 = ORIENTED_EDGE ( 'NONE', *, *, #1214, .T. ) ; +#3450 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, 1.692557448933382400E-017, 0.05295138888888884000 ) ) ; +#3451 = EDGE_LOOP ( 'NONE', ( #2089, #2008, #2539, #2531, #1831 ) ) ; +#3452 = CARTESIAN_POINT ( 'NONE', ( 0.2463022638521997500, -0.1889146522822671100, 0.2708470985676927300 ) ) ; +#3453 = VERTEX_POINT ( 'NONE', #2831 ) ; +#3454 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, -0.07204861111111111900 ) ) ; +#3455 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.2282986111111111600 ) ) ; +#3456 = VERTEX_POINT ( 'NONE', #1998 ) ; +#3457 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, 0.0008680555555555396800 ) ) ; +#3458 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#3460 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.09199845610902265800, 0.2685885371339591900 ) ) ; +#3459 = CARTESIAN_POINT ( 'NONE', ( -0.4687500000000000000, 0.2706329386826370500, 0.2734375000000000000 ) ) ; +#3461 = EDGE_LOOP ( 'NONE', ( #351, #13, #394, #3333, #65, #2177 ) ) ; +#3462 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3463 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.02343750000000004900 ) ) ; +#3464 = FACE_OUTER_BOUND ( 'NONE', #100, .T. ) ; +#3465 = CARTESIAN_POINT ( 'NONE', ( -3.827021247335478900E-017, -0.3125000000000000000, 0.2543402777777777300 ) ) ; +#3466 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608400, 0.2764156081756482000, -0.07552083333333334300 ) ) ; +#3467 = FACE_OUTER_BOUND ( 'NONE', #2867, .T. ) ; +#3468 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3469 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668044700, -0.1954553509668045500, 0.06684027777777777600 ) ) ; +#3470 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#3471 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1678, #3330, #588, #2229, #1419 ), + .UNSPECIFIED., .F., .F. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 3 ), + ( 0.0000000000000000000, 0.01041666666666665600, 0.02083333333333331100 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112868500, 0.9999999999999998900 ) ) + REPRESENTATION_ITEM ( '' ) ); +#3472 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, 0.3125000000000000000, -0.09635416666666667100 ) ) ; +#3473 = EDGE_CURVE ( 'NONE', #648, #734, #2185, .T. ) ; +#3474 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, 0.1571180555555555200 ) ) ; +#3475 = PERSON ( 'UNSPECIFIED', 'UNSPECIFIED', 'UNSPECIFIED', ('UNSPECIFIED'), ('UNSPECIFIED'), ('UNSPECIFIED') ) ; +#3476 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#3477 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, 0.1294417382415922700, 0.1605902777777777300 ) ) ; +#3478 = CARTESIAN_POINT ( 'NONE', ( 0.1362364153552184700, -0.2433423188163112400, 0.2390060406437335400 ) ) ; +#3479 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, -0.05121527777777779700 ) ) ; +#3480 =( BOUNDED_CURVE ( ) B_SPLINE_CURVE ( 2, ( #1560, #2138, #1007, #490, #1020, #1339, #1327, #2394, #202 ), + .UNSPECIFIED., .F., .T. ) + B_SPLINE_CURVE_WITH_KNOTS ( ( 3, 2, 2, 2, 3 ), + ( 0.5885416666666412100, 0.5989583333333079500, 0.6093749999999744600, 0.6197916666666410900, 0.6302083333333078400 ), + .UNSPECIFIED. ) + CURVE ( ) GEOMETRIC_REPRESENTATION_ITEM ( ) RATIONAL_B_SPLINE_CURVE ( ( 1.000000000000006400, 0.9238795325112803000, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112867400, 1.000000000000000000, 0.9238795325112940700, 0.9999999999999926700 ) ) + REPRESENTATION_ITEM ( '' ) ); +#3481 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, -2.446791525458581000E-017, 0.2595486111111110500 ) ) ; +#3482 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.09635416666666668500 ) ) ; +#3483 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668045300, -0.1954553509668044700, -0.1623263888888889500 ) ) ; +#3484 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#3485 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207961400, 0.2209708691207960500, -0.05121527777777779700 ) ) ; +#3486 = CARTESIAN_POINT ( 'NONE', ( -3.385114897866764700E-017, -0.2764156081756482000, 0.1779513888888888100 ) ) ; +#3487 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -0.1144950937579609900, -0.2005208333333334300 ) ) ; +#3488 = CARTESIAN_POINT ( 'NONE', ( -0.1294417382415922500, -0.3125000000000000000, 0.3064236111111110500 ) ) ; +#3489 = CARTESIAN_POINT ( 'NONE', ( 0.2742454859208599500, -0.3829301722448259500, -0.2724479197730276200 ) ) ; +#3490 = CARTESIAN_POINT ( 'NONE', ( -0.1144950937579608900, -0.2764156081756482000, -0.05468750000000002100 ) ) ; +#3491 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.2734375000000000000 ) ) ; +#3492 = EDGE_CURVE ( 'NONE', #3297, #2565, #895, .T. ) ; +#3493 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, 0.1144950937579609200, 0.02170138888888883300 ) ) ; +#3494 = VERTEX_POINT ( 'NONE', #387 ) ; +#3495 = CARTESIAN_POINT ( 'NONE', ( -0.1954553509668044700, 0.1954553509668045300, -0.1762152777777778200 ) ) ; +#3497 = CARTESIAN_POINT ( 'NONE', ( -0.2209708691207961100, -0.2209708691207960800, -0.03038194444444446800 ) ) ; +#3496 = CARTESIAN_POINT ( 'NONE', ( 0.4687500000000000000, 5.914624404477006300E-017, -0.2734375000000000000 ) ) ; +#3498 = ORIENTED_EDGE ( 'NONE', *, *, #725, .T. ) ; +#3499 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000084900, 0.1294417382415838100, -0.03385416666666637300 ) ) ; +#3500 = CARTESIAN_POINT ( 'NONE', ( 0.1294417382415924400, 0.3124999999999999400, 0.0008680555555555396800 ) ) ; +#3501 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756482000, -5.077672346800147400E-017, 0.02517361111111109500 ) ) ; +#3502 = LINE ( 'NONE', #2859, #2050 ) ; +#3503 = CARTESIAN_POINT ( 'NONE', ( -0.2764156081756482000, -0.1144950937579608300, -0.2213541666666667400 ) ) ; +#3504 = CARTESIAN_POINT ( 'NONE', ( 0.2209708691207960800, -0.2209708691207961400, 0.2057291666666666300 ) ) ; +#3505 = ORIENTED_EDGE ( 'NONE', *, *, #1490, .F. ) ; +#3506 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000098300, 0.1294417382415825000, 0.2439236111111115200 ) ) ; +#3507 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3508 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.2508680555555555200 ) ) ; +#3509 = FACE_OUTER_BOUND ( 'NONE', #563, .T. ) ; +#3510 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3511 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999915600, -0.1294417382416006600, -0.2491319444444441400 ) ) ; +#3512 = CARTESIAN_POINT ( 'NONE', ( -0.3125000000000000600, 1.913510623667739500E-017, 0.01822916666666664000 ) ) ; +#3513 = CARTESIAN_POINT ( 'NONE', ( -1.313478095563946000E-016, 0.5412658773652743200, -0.2315704386826372100 ) ) ; +#3514 = FACE_OUTER_BOUND ( 'NONE', #3377, .T. ) ; +#3515 = CARTESIAN_POINT ( 'NONE', ( 0.3124999999999999400, -0.1294417382415923900, 0.2647569444444444200 ) ) ; +#3516 = CARTESIAN_POINT ( 'NONE', ( 0.4305050704707043000, -0.2927136590415142500, -0.2443187485257420600 ) ) ; +#3517 = CARTESIAN_POINT ( 'NONE', ( 0.2764156081756481400, 0.1144950937579609200, -0.1449652777777777900 ) ) ; +#3518 = CARTESIAN_POINT ( 'NONE', ( 0.1144950937579610300, 0.2764156081756482000, 0.1953124999999999700 ) ) ; +#3519 = AXIS2_PLACEMENT_3D ( 'NONE', #1443, #2548, #589 ) ; +#3520 = CARTESIAN_POINT ( 'NONE', ( 0.1954553509668045500, 0.1954553509668044700, -0.07899305555555560800 ) ) ; +#3522 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.000000000000000000, 1.143564276417598300E-016 ) ) ; +#3521 = CARTESIAN_POINT ( 'NONE', ( -0.3124999999999989500, -0.1294417382415932700, 0.1328125000000000600 ) ) ; +#3523 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.2734375000000000000 ) ) ; +ENDSEC; +END-ISO-10303-21; diff --git a/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/98017a257-washer.step b/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/98017a257-washer.step new file mode 100644 index 000000000..0eb243514 --- /dev/null +++ b/public/kcl-samples/pipe-flange-assembly/mcmaster-parts/98017a257-washer.step @@ -0,0 +1,373 @@ +ISO-10303-21; +HEADER; +FILE_DESCRIPTION (( 'STEP AP203' ), + '1' ); +FILE_NAME ('98017A257_18-8 Stainless Steel Mil. Spec. Washer.STEP', + '2023-09-12T13:39:25', + ( 'Administrator' ), + ( 'Managed by Terraform' ), + 'SwSTEP 2.0', + 'SolidWorks 2017', + '' ); +FILE_SCHEMA (( 'CONFIG_CONTROL_DESIGN' )); +ENDSEC; + +DATA; +#1 = CARTESIAN_POINT ( 'NONE', ( 0.3200000000000000100, 3.918869757271530800E-017, -0.01600000000000001800 ) ) ; +#2 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#3 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01280000000000027500 ) ) ; +#4 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#5 = FACE_BOUND ( 'NONE', #226, .T. ) ; +#6 = APPROVAL ( #354, 'UNSPECIFIED' ) ; +#7 = LOCAL_TIME ( 8, 39, 25.00000000000000000, #120 ) ; +#8 = CARTESIAN_POINT ( 'NONE', ( -0.3200000000000000100, 0.0000000000000000000, 0.01599999999999998300 ) ) ; +#9 = CIRCLE ( 'NONE', #260, 0.3200000000000000100 ) ; +#10 = VERTEX_POINT ( 'NONE', #20 ) ; +#11 = AXIS2_PLACEMENT_3D ( 'NONE', #108, #220, #275 ) ; +#12 = CYLINDRICAL_SURFACE ( 'NONE', #11, 0.3200000000000000100 ) ; +#13 = FACE_OUTER_BOUND ( 'NONE', #312, .T. ) ; +#14 = VERTEX_POINT ( 'NONE', #1 ) ; +#15 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#16 = ORIENTED_EDGE ( 'NONE', *, *, #31, .T. ) ; +#17 = AXIS2_PLACEMENT_3D ( 'NONE', #130, #23, #272 ) ; +#18 = ORIENTED_EDGE ( 'NONE', *, *, #188, .T. ) ; +#19 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01599999999999998300 ) ) ; +#20 = CARTESIAN_POINT ( 'NONE', ( 0.3200000000000000100, 3.918869757271530800E-017, 0.01280000000000027500 ) ) ; +#21 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#22 = PRODUCT_RELATED_PRODUCT_CATEGORY ( 'detail', '', ( #84 ) ) ; +#23 = DIRECTION ( 'NONE', ( 1.224646799147353200E-016, 1.000000000000000000, -0.0000000000000000000 ) ) ; +#24 = CALENDAR_DATE ( 2023, 12, 9 ) ; +#25 = FACE_OUTER_BOUND ( 'NONE', #137, .T. ) ; +#26 = AXIS2_PLACEMENT_3D ( 'NONE', #131, #306, #147 ) ; +#27 = CARTESIAN_POINT ( 'NONE', ( -0.3200000000000000100, 0.0000000000000000000, -0.01600000000000001800 ) ) ; +#28 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#29 = CIRCLE ( 'NONE', #250, 0.5939999999999999700 ) ; +#30 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#31 = EDGE_CURVE ( 'NONE', #223, #296, #29, .T. ) ; +#32 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#33 = CALENDAR_DATE ( 2023, 12, 9 ) ; +#34 = VERTEX_POINT ( 'NONE', #27 ) ; +#35 = PERSON_AND_ORGANIZATION ( #203, #57 ) ; +#36 = CALENDAR_DATE ( 2023, 12, 9 ) ; +#37 = ORIENTED_EDGE ( 'NONE', *, *, #230, .F. ) ; +#38 = ORIENTED_EDGE ( 'NONE', *, *, #341, .T. ) ; +#39 = AXIS2_PLACEMENT_3D ( 'NONE', #182, #123, #21 ) ; +#40 = VERTEX_POINT ( 'NONE', #346 ) ; +#41 =( GEOMETRIC_REPRESENTATION_CONTEXT ( 3 ) GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT ( ( #54 ) ) GLOBAL_UNIT_ASSIGNED_CONTEXT ( ( #73, #214, #268 ) ) REPRESENTATION_CONTEXT ( 'NONE', 'WORKASPACE' ) ); +#42 = ADVANCED_FACE ( 'NONE', ( #5, #25 ), #238, .T. ) ; +#43 = TOROIDAL_SURFACE ( 'NONE', #200, 0.3271554175279990400, 0.009600000000000000900 ) ; +#44 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01280000000000013800 ) ) ; +#45 = DIRECTION ( 'NONE', ( -1.000000000000000000, -1.224646799147356200E-016, 0.0000000000000000000 ) ) ; +#46 = EDGE_CURVE ( 'NONE', #223, #271, #286, .T. ) ; +#47 = LOCAL_TIME ( 8, 39, 25.00000000000000000, #169 ) ; +#48 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#49 = APPLICATION_PROTOCOL_DEFINITION ( 'international standard', 'config_control_design', 1994, #241 ) ; +#50 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#51 = CYLINDRICAL_SURFACE ( 'NONE', #274, 0.5939999999999999700 ) ; +#52 = CC_DESIGN_DATE_AND_TIME_ASSIGNMENT ( #90, #126, ( #248 ) ) ; +#53 = ORIENTED_EDGE ( 'NONE', *, *, #349, .F. ) ; +#54 = UNCERTAINTY_MEASURE_WITH_UNIT (LENGTH_MEASURE( 1.000000000000000100E-005 ), #73, 'distance_accuracy_value', 'NONE'); +#55 = CARTESIAN_POINT ( 'NONE', ( 0.3200000000000000100, 3.918869757271530800E-017, 0.01599999999999998300 ) ) ; +#56 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#57 = ORGANIZATION ( 'UNSPECIFIED', 'UNSPECIFIED', '' ) ; +#58 = ORIENTED_EDGE ( 'NONE', *, *, #93, .F. ) ; +#59 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#60 = DATE_AND_TIME ( #36, #7 ) ; +#61 = EDGE_CURVE ( 'NONE', #34, #14, #235, .T. ) ; +#62 = EDGE_LOOP ( 'NONE', ( #282, #38, #82, #141 ) ) ; +#63 = VERTEX_POINT ( 'NONE', #320 ) ; +#64 = APPROVAL_PERSON_ORGANIZATION ( #281, #114, #75 ) ; +#65 = ORIENTED_EDGE ( 'NONE', *, *, #313, .F. ) ; +#66 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#67 = EDGE_CURVE ( 'NONE', #63, #315, #342, .T. ) ; +#68 = CIRCLE ( 'NONE', #256, 0.3271554175279990400 ) ; +#69 = DATE_TIME_ROLE ( 'creation_date' ) ; +#70 = TOROIDAL_SURFACE ( 'NONE', #138, 0.5868445824720007800, 0.009600000000000000900 ) ; +#71 = CLOSED_SHELL ( 'NONE', ( #155, #292, #326, #295, #42, #247, #101, #179, #344, #97 ) ) ; +#72 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#73 =( CONVERSION_BASED_UNIT ( 'INCH', #333 ) LENGTH_UNIT ( ) NAMED_UNIT ( #262 ) ); +#74 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#75 = APPROVAL_ROLE ( '' ) ; +#76 = PRODUCT_DEFINITION ( 'UNKNOWN', '', #186, #285 ) ; +#77 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#78 = CYLINDRICAL_SURFACE ( 'NONE', #26, 0.5939999999999999700 ) ; +#79 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.01600000000000001800 ) ) ; +#80 = CIRCLE ( 'NONE', #219, 0.009600000000000000900 ) ; +#81 = APPROVAL ( #294, 'UNSPECIFIED' ) ; +#82 = ORIENTED_EDGE ( 'NONE', *, *, #31, .F. ) ; +#83 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#84 = PRODUCT ( '98017A257_18-8 Stainless Steel Mil. Spec. Washer', '98017A257_18-8 Stainless Steel Mil. Spec. Washer', '', ( #100 ) ) ; +#85 = LOCAL_TIME ( 8, 39, 25.00000000000000000, #15 ) ; +#86 = CIRCLE ( 'NONE', #17, 0.009600000000000014800 ) ; +#87 = SHAPE_DEFINITION_REPRESENTATION ( #206, #345 ) ; +#88 = CIRCLE ( 'NONE', #193, 0.5939999999999999700 ) ; +#89 = EDGE_LOOP ( 'NONE', ( #58, #183, #174, #287 ) ) ; +#90 = DATE_AND_TIME ( #113, #261 ) ; +#91 = APPROVAL_DATE_TIME ( #196, #6 ) ; +#92 = FACE_OUTER_BOUND ( 'NONE', #252, .T. ) ; +#93 = EDGE_CURVE ( 'NONE', #296, #40, #228, .T. ) ; +#94 = CIRCLE ( 'NONE', #172, 0.3271554175279990400 ) ; +#95 = CARTESIAN_POINT ( 'NONE', ( -0.5939999999999999700, 0.0000000000000000000, 0.01280000000000013800 ) ) ; +#96 = ORIENTED_EDGE ( 'NONE', *, *, #154, .F. ) ; +#97 = ADVANCED_FACE ( 'NONE', ( #311 ), #70, .T. ) ; +#98 = PERSON_AND_ORGANIZATION_ROLE ( 'creator' ) ; +#99 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #103, #297, ( #76 ) ) ; +#100 = MECHANICAL_CONTEXT ( 'NONE', #241, 'mechanical' ) ; +#101 = ADVANCED_FACE ( 'NONE', ( #236 ), #51, .T. ) ; +#102 = EDGE_CURVE ( 'NONE', #173, #10, #304, .T. ) ; +#103 = PERSON_AND_ORGANIZATION ( #203, #57 ) ; +#104 = ORIENTED_EDGE ( 'NONE', *, *, #341, .F. ) ; +#105 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#106 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#107 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#108 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01599999999999998300 ) ) ; +#109 = ORIENTED_EDGE ( 'NONE', *, *, #234, .T. ) ; +#110 = AXIS2_PLACEMENT_3D ( 'NONE', #240, #276, #356 ) ; +#111 = CARTESIAN_POINT ( 'NONE', ( -0.5868445824720007800, 0.0000000000000000000, 0.006399999999999983000 ) ) ; +#112 = ORIENTED_EDGE ( 'NONE', *, *, #171, .F. ) ; +#113 = CALENDAR_DATE ( 2023, 12, 9 ) ; +#114 = APPROVAL ( #4, 'UNSPECIFIED' ) ; +#115 = EDGE_CURVE ( 'NONE', #135, #34, #153, .T. ) ; +#116 = VECTOR ( 'NONE', #288, 39.37007874015748100 ) ; +#117 = EDGE_LOOP ( 'NONE', ( #216, #337 ) ) ; +#118 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01599999999999998300 ) ) ; +#119 = PERSON_AND_ORGANIZATION ( #203, #57 ) ; +#120 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#121 = AXIS2_PLACEMENT_3D ( 'NONE', #267, #124, #218 ) ; +#122 = AXIS2_PLACEMENT_3D ( 'NONE', #300, #217, #72 ) ; +#123 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#124 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#125 = LOCAL_TIME ( 8, 39, 25.00000000000000000, #347 ) ; +#126 = DATE_TIME_ROLE ( 'classification_date' ) ; +#127 = EDGE_LOOP ( 'NONE', ( #104, #317, #157, #96 ) ) ; +#128 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#129 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#130 = CARTESIAN_POINT ( 'NONE', ( -0.3271554175279990400, 4.006498348993799500E-017, 0.006399999999999983000 ) ) ; +#131 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01599999999999998300 ) ) ; +#132 = CC_DESIGN_APPROVAL ( #114, ( #76 ) ) ; +#133 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#134 = PERSON_AND_ORGANIZATION_ROLE ( 'design_owner' ) ; +#135 = VERTEX_POINT ( 'NONE', #162 ) ; +#136 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01599999999999998300 ) ) ; +#137 = EDGE_LOOP ( 'NONE', ( #245, #145 ) ) ; +#138 = AXIS2_PLACEMENT_3D ( 'NONE', #178, #352, #310 ) ; +#139 = CC_DESIGN_DATE_AND_TIME_ASSIGNMENT ( #314, #69, ( #76 ) ) ; +#140 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.01600000000000001800 ) ) ; +#141 = ORIENTED_EDGE ( 'NONE', *, *, #212, .F. ) ; +#142 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#143 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01599999999999998300 ) ) ; +#144 = ORIENTED_EDGE ( 'NONE', *, *, #188, .F. ) ; +#145 = ORIENTED_EDGE ( 'NONE', *, *, #67, .T. ) ; +#146 = APPROVAL_DATE_TIME ( #60, #81 ) ; +#147 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#148 = EDGE_CURVE ( 'NONE', #135, #10, #231, .T. ) ; +#149 = CIRCLE ( 'NONE', #338, 0.3200000000000000100 ) ; +#150 = ORIENTED_EDGE ( 'NONE', *, *, #93, .T. ) ; +#151 = CARTESIAN_POINT ( 'NONE', ( 0.5939999999999999700, 7.274401986935278000E-017, 0.01599999999999998300 ) ) ; +#152 = APPROVAL_DATE_TIME ( #207, #114 ) ; +#153 = LINE ( 'NONE', #8, #170 ) ; +#154 = EDGE_CURVE ( 'NONE', #296, #223, #191, .T. ) ; +#155 = ADVANCED_FACE ( 'NONE', ( #225 ), #283, .T. ) ; +#156 = AXIS2_PLACEMENT_3D ( 'NONE', #190, #249, #77 ) ; +#157 = ORIENTED_EDGE ( 'NONE', *, *, #212, .T. ) ; +#158 = ORIENTED_EDGE ( 'NONE', *, *, #308, .F. ) ; +#159 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #194, #350, ( #248 ) ) ; +#160 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01599999999999998300 ) ) ; +#161 = CARTESIAN_POINT ( 'NONE', ( -0.5939999999999999700, 0.0000000000000000000, 0.01599999999999998300 ) ) ; +#162 = CARTESIAN_POINT ( 'NONE', ( -0.3200000000000000100, 0.0000000000000000000, 0.01280000000000027500 ) ) ; +#163 = DIRECTION ( 'NONE', ( -1.224646799147353200E-016, 1.000000000000000000, 0.0000000000000000000 ) ) ; +#164 = LINE ( 'NONE', #55, #167 ) ; +#165 = CARTESIAN_POINT ( 'NONE', ( -0.5868445824720007800, 0.0000000000000000000, 0.01599999999999998300 ) ) ; +#166 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01280000000000013800 ) ) ; +#167 = VECTOR ( 'NONE', #105, 39.37007874015748100 ) ; +#168 = ORIENTED_EDGE ( 'NONE', *, *, #115, .F. ) ; +#169 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#170 = VECTOR ( 'NONE', #302, 39.37007874015748100 ) ; +#171 = EDGE_CURVE ( 'NONE', #173, #211, #94, .T. ) ; +#172 = AXIS2_PLACEMENT_3D ( 'NONE', #136, #327, #279 ) ; +#173 = VERTEX_POINT ( 'NONE', #301 ) ; +#174 = ORIENTED_EDGE ( 'NONE', *, *, #46, .T. ) ; +#175 = AXIS2_PLACEMENT_3D ( 'NONE', #143, #59, #229 ) ; +#176 = PERSON_AND_ORGANIZATION ( #203, #57 ) ; +#177 = EDGE_LOOP ( 'NONE', ( #144, #109, #343, #158 ) ) ; +#178 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.006399999999999983000 ) ) ; +#179 = ADVANCED_FACE ( 'NONE', ( #293 ), #12, .F. ) ; +#180 = FACE_OUTER_BOUND ( 'NONE', #202, .T. ) ; +#181 = AXIS2_PLACEMENT_3D ( 'NONE', #50, #222, #246 ) ; +#182 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01599999999999998300 ) ) ; +#183 = ORIENTED_EDGE ( 'NONE', *, *, #154, .T. ) ; +#184 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#185 = PERSON_AND_ORGANIZATION_ROLE ( 'design_supplier' ) ; +#186 = PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE ( 'ANY', '', #84, .NOT_KNOWN. ) ; +#187 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#188 = EDGE_CURVE ( 'NONE', #10, #14, #164, .T. ) ; +#189 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.006399999999999983000 ) ) ; +#190 = CARTESIAN_POINT ( 'NONE', ( 0.3271554175279990400, 0.0000000000000000000, 0.006399999999999983000 ) ) ; +#191 = CIRCLE ( 'NONE', #284, 0.5939999999999999700 ) ; +#192 = ORIENTED_EDGE ( 'NONE', *, *, #318, .T. ) ; +#193 = AXIS2_PLACEMENT_3D ( 'NONE', #195, #30, #227 ) ; +#194 = PERSON_AND_ORGANIZATION ( #203, #57 ) ; +#195 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.01600000000000001800 ) ) ; +#196 = DATE_AND_TIME ( #269, #47 ) ; +#197 = CARTESIAN_POINT ( 'NONE', ( -0.5939999999999999700, 0.0000000000000000000, -0.01600000000000001800 ) ) ; +#198 = ORIENTED_EDGE ( 'NONE', *, *, #313, .T. ) ; +#199 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -1.000000000000000000 ) ) ; +#200 = AXIS2_PLACEMENT_3D ( 'NONE', #257, #128, #353 ) ; +#201 = TOROIDAL_SURFACE ( 'NONE', #110, 0.3271554175279990400, 0.009600000000000000900 ) ; +#202 = EDGE_LOOP ( 'NONE', ( #37, #53 ) ) ; +#203 = PERSON ( 'UNSPECIFIED', 'UNSPECIFIED', 'UNSPECIFIED', ('UNSPECIFIED'), ('UNSPECIFIED'), ('UNSPECIFIED') ) ; +#204 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.01600000000000001800 ) ) ; +#205 = AXIS2_PLACEMENT_3D ( 'NONE', #118, #233, #66 ) ; +#206 = PRODUCT_DEFINITION_SHAPE ( 'NONE', 'NONE', #76 ) ; +#207 = DATE_AND_TIME ( #24, #85 ) ; +#208 = ORIENTED_EDGE ( 'NONE', *, *, #318, .F. ) ; +#209 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #119, #98, ( #186 ) ) ; +#210 = CIRCLE ( 'NONE', #175, 0.5868445824720007800 ) ; +#211 = VERTEX_POINT ( 'NONE', #291 ) ; +#212 = EDGE_CURVE ( 'NONE', #315, #223, #80, .T. ) ; +#213 = VECTOR ( 'NONE', #270, 39.37007874015748100 ) ; +#214 =( NAMED_UNIT ( * ) PLANE_ANGLE_UNIT ( ) SI_UNIT ( $, .RADIAN. ) ); +#215 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #273, #185, ( #186 ) ) ; +#216 = ORIENTED_EDGE ( 'NONE', *, *, #61, .T. ) ; +#217 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#218 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, -0.0000000000000000000 ) ) ; +#219 = AXIS2_PLACEMENT_3D ( 'NONE', #111, #305, #199 ) ; +#220 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#221 = SECURITY_CLASSIFICATION_LEVEL ( 'unclassified' ) ; +#222 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#223 = VERTEX_POINT ( 'NONE', #95 ) ; +#224 = ORIENTED_EDGE ( 'NONE', *, *, #148, .T. ) ; +#225 = FACE_OUTER_BOUND ( 'NONE', #62, .T. ) ; +#226 = EDGE_LOOP ( 'NONE', ( #258, #192 ) ) ; +#227 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#228 = LINE ( 'NONE', #151, #116 ) ; +#229 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#230 = EDGE_CURVE ( 'NONE', #271, #40, #88, .T. ) ; +#231 = CIRCLE ( 'NONE', #265, 0.3200000000000000100 ) ; +#232 = CC_DESIGN_SECURITY_CLASSIFICATION ( #248, ( #186 ) ) ; +#233 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#234 = EDGE_CURVE ( 'NONE', #10, #135, #9, .T. ) ; +#235 = CIRCLE ( 'NONE', #322, 0.3200000000000000100 ) ; +#236 = FACE_OUTER_BOUND ( 'NONE', #89, .T. ) ; +#237 = APPLICATION_CONTEXT ( 'configuration controlled 3d designs of mechanical parts and assemblies' ) ; +#238 = PLANE ( 'NONE', #121 ) ; +#239 = AXIS2_PLACEMENT_3D ( 'NONE', #324, #163, #45 ) ; +#240 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.006399999999999983000 ) ) ; +#241 = APPLICATION_CONTEXT ( 'configuration controlled 3d designs of mechanical parts and assemblies' ) ; +#242 = PERSON_AND_ORGANIZATION ( #203, #57 ) ; +#243 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#244 = CC_DESIGN_APPROVAL ( #6, ( #186 ) ) ; +#245 = ORIENTED_EDGE ( 'NONE', *, *, #289, .T. ) ; +#246 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#247 = ADVANCED_FACE ( 'NONE', ( #180, #299 ), #332, .F. ) ; +#248 = SECURITY_CLASSIFICATION ( '', '', #221 ) ; +#249 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.000000000000000000, 0.0000000000000000000 ) ) ; +#250 = AXIS2_PLACEMENT_3D ( 'NONE', #44, #74, #355 ) ; +#251 = ORIENTED_EDGE ( 'NONE', *, *, #148, .F. ) ; +#252 = EDGE_LOOP ( 'NONE', ( #16, #150, #340, #263 ) ) ; +#253 = CARTESIAN_POINT ( 'NONE', ( 0.5939999999999999700, 7.274401986935278000E-017, 0.01280000000000013800 ) ) ; +#254 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01280000000000027500 ) ) ; +#255 = ORIENTED_EDGE ( 'NONE', *, *, #102, .T. ) ; +#256 = AXIS2_PLACEMENT_3D ( 'NONE', #19, #187, #325 ) ; +#257 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.006399999999999983000 ) ) ; +#258 = ORIENTED_EDGE ( 'NONE', *, *, #171, .T. ) ; +#259 = CC_DESIGN_APPROVAL ( #81, ( #248 ) ) ; +#260 = AXIS2_PLACEMENT_3D ( 'NONE', #254, #56, #142 ) ; +#261 = LOCAL_TIME ( 8, 39, 25.00000000000000000, #335 ) ; +#262 = DIMENSIONAL_EXPONENTS ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ; +#263 = ORIENTED_EDGE ( 'NONE', *, *, #46, .F. ) ; +#264 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#265 = AXIS2_PLACEMENT_3D ( 'NONE', #3, #243, #107 ) ; +#266 = APPROVAL_ROLE ( '' ) ; +#267 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 0.01599999999999998300 ) ) ; +#268 =( NAMED_UNIT ( * ) SI_UNIT ( $, .STERADIAN. ) SOLID_ANGLE_UNIT ( ) ); +#269 = CALENDAR_DATE ( 2023, 12, 9 ) ; +#270 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#271 = VERTEX_POINT ( 'NONE', #197 ) ; +#272 = DIRECTION ( 'NONE', ( -1.000000000000000000, 1.224646799147348300E-016, 0.0000000000000000000 ) ) ; +#273 = PERSON_AND_ORGANIZATION ( #203, #57 ) ; +#274 = AXIS2_PLACEMENT_3D ( 'NONE', #160, #264, #129 ) ; +#275 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#276 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#277 = FACE_OUTER_BOUND ( 'NONE', #278, .T. ) ; +#278 = EDGE_LOOP ( 'NONE', ( #65, #112, #255, #251 ) ) ; +#279 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#280 = AXIS2_PLACEMENT_3D ( 'NONE', #140, #330, #32 ) ; +#281 = PERSON_AND_ORGANIZATION ( #203, #57 ) ; +#282 = ORIENTED_EDGE ( 'NONE', *, *, #67, .F. ) ; +#283 = TOROIDAL_SURFACE ( 'NONE', #303, 0.5868445824720007800, 0.009600000000000000900 ) ; +#284 = AXIS2_PLACEMENT_3D ( 'NONE', #166, #106, #184 ) ; +#285 = DESIGN_CONTEXT ( 'detailed design', #237, 'design' ) ; +#286 = LINE ( 'NONE', #161, #213 ) ; +#287 = ORIENTED_EDGE ( 'NONE', *, *, #230, .T. ) ; +#288 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#289 = EDGE_CURVE ( 'NONE', #315, #63, #210, .T. ) ; +#290 = FACE_OUTER_BOUND ( 'NONE', #348, .T. ) ; +#291 = CARTESIAN_POINT ( 'NONE', ( -0.3271554175279990400, 4.006498348993799500E-017, 0.01599999999999998300 ) ) ; +#292 = ADVANCED_FACE ( 'NONE', ( #13 ), #43, .T. ) ; +#293 = FACE_OUTER_BOUND ( 'NONE', #177, .T. ) ; +#294 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#295 = ADVANCED_FACE ( 'NONE', ( #92 ), #78, .T. ) ; +#296 = VERTEX_POINT ( 'NONE', #253 ) ; +#297 = PERSON_AND_ORGANIZATION_ROLE ( 'creator' ) ; +#298 =( LENGTH_UNIT ( ) NAMED_UNIT ( * ) SI_UNIT ( $, .METRE. ) ); +#299 = FACE_BOUND ( 'NONE', #117, .T. ) ; +#300 = CARTESIAN_POINT ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, -0.01600000000000001800 ) ) ; +#301 = CARTESIAN_POINT ( 'NONE', ( 0.3271554175279990400, 0.0000000000000000000, 0.01599999999999998300 ) ) ; +#302 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#303 = AXIS2_PLACEMENT_3D ( 'NONE', #189, #28, #48 ) ; +#304 = CIRCLE ( 'NONE', #156, 0.009600000000000000900 ) ; +#305 = DIRECTION ( 'NONE', ( 0.0000000000000000000, -1.000000000000000000, 0.0000000000000000000 ) ) ; +#306 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#307 = MANIFOLD_SOLID_BREP ( 'Fillet1', #71 ) ; +#308 = EDGE_CURVE ( 'NONE', #14, #34, #149, .T. ) ; +#309 = CYLINDRICAL_SURFACE ( 'NONE', #39, 0.3200000000000000100 ) ; +#310 = DIRECTION ( 'NONE', ( -1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#311 = FACE_OUTER_BOUND ( 'NONE', #127, .T. ) ; +#312 = EDGE_LOOP ( 'NONE', ( #208, #198, #329, #316 ) ) ; +#313 = EDGE_CURVE ( 'NONE', #211, #135, #86, .T. ) ; +#314 = DATE_AND_TIME ( #33, #125 ) ; +#315 = VERTEX_POINT ( 'NONE', #165 ) ; +#316 = ORIENTED_EDGE ( 'NONE', *, *, #102, .F. ) ; +#317 = ORIENTED_EDGE ( 'NONE', *, *, #289, .F. ) ; +#318 = EDGE_CURVE ( 'NONE', #211, #173, #68, .T. ) ; +#319 = APPROVAL_ROLE ( '' ) ; +#320 = CARTESIAN_POINT ( 'NONE', ( 0.5868445824720007800, 7.230587691074144000E-017, 0.01599999999999998300 ) ) ; +#321 = APPLICATION_PROTOCOL_DEFINITION ( 'international standard', 'config_control_design', 1994, #237 ) ; +#322 = AXIS2_PLACEMENT_3D ( 'NONE', #79, #323, #2 ) ; +#323 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#324 = CARTESIAN_POINT ( 'NONE', ( 0.5868445824720007800, 7.186773395213007500E-017, 0.006399999999999983000 ) ) ; +#325 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#326 = ADVANCED_FACE ( 'NONE', ( #290 ), #309, .F. ) ; +#327 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#328 = CIRCLE ( 'NONE', #239, 0.009600000000000014800 ) ; +#329 = ORIENTED_EDGE ( 'NONE', *, *, #234, .F. ) ; +#330 = DIRECTION ( 'NONE', ( 0.0000000000000000000, 0.0000000000000000000, 1.000000000000000000 ) ) ; +#331 = CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT ( #176, #134, ( #84 ) ) ; +#332 = PLANE ( 'NONE', #280 ) ; +#333 = LENGTH_MEASURE_WITH_UNIT ( LENGTH_MEASURE( 0.02539999999999999900 ), #298 ); +#334 = ORIENTED_EDGE ( 'NONE', *, *, #61, .F. ) ; +#335 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#336 = CIRCLE ( 'NONE', #122, 0.5939999999999999700 ) ; +#337 = ORIENTED_EDGE ( 'NONE', *, *, #308, .T. ) ; +#338 = AXIS2_PLACEMENT_3D ( 'NONE', #204, #133, #83 ) ; +#339 = APPROVAL_PERSON_ORGANIZATION ( #242, #6, #266 ) ; +#340 = ORIENTED_EDGE ( 'NONE', *, *, #349, .T. ) ; +#341 = EDGE_CURVE ( 'NONE', #63, #296, #328, .T. ) ; +#342 = CIRCLE ( 'NONE', #205, 0.5868445824720007800 ) ; +#343 = ORIENTED_EDGE ( 'NONE', *, *, #115, .T. ) ; +#344 = ADVANCED_FACE ( 'NONE', ( #277 ), #201, .T. ) ; +#345 = ADVANCED_BREP_SHAPE_REPRESENTATION ( '98017A257_18-8 Stainless Steel Mil. Spec. Washer', ( #307, #181 ), #41 ) ; +#346 = CARTESIAN_POINT ( 'NONE', ( 0.5939999999999999700, 7.274401986935278000E-017, -0.01600000000000001800 ) ) ; +#347 = COORDINATED_UNIVERSAL_TIME_OFFSET ( 6, 0, .BEHIND. ) ; +#348 = EDGE_LOOP ( 'NONE', ( #224, #18, #334, #168 ) ) ; +#349 = EDGE_CURVE ( 'NONE', #40, #271, #336, .T. ) ; +#350 = PERSON_AND_ORGANIZATION_ROLE ( 'classification_officer' ) ; +#351 = APPROVAL_PERSON_ORGANIZATION ( #35, #81, #319 ) ; +#352 = DIRECTION ( 'NONE', ( -0.0000000000000000000, -0.0000000000000000000, -1.000000000000000000 ) ) ; +#353 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#354 = APPROVAL_STATUS ( 'not_yet_approved' ) ; +#355 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +#356 = DIRECTION ( 'NONE', ( 1.000000000000000000, 0.0000000000000000000, 0.0000000000000000000 ) ) ; +ENDSEC; +END-ISO-10303-21; diff --git a/public/kcl-samples/screenshots/pipe-flange-assembly.png b/public/kcl-samples/screenshots/pipe-flange-assembly.png index 33b93e60cfc5e4def527f9310e977cb5e5478866..aeb18226d612d908929e73809747ec379928f11f 100644 GIT binary patch literal 79966 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%0AVhxT*YFC0YVuhfzQrWF zKDFZBNTh*~6sUSXbXHBFtbKXgNI6$s9ZbZ zAs{&QTPR|4O2H9fBuLG@u%HG55i*41UN)Z?2p)f&bK$G zuTA$d+Ek?u*JkKXXYsY)7pKVOg~{sQoZ)-l9D;P&gd}f8(`nzBFFoT{KnVmT3dS%C zhGGFk(B2l-v26R8r82Qac98m3a?>);&iwt2%j++_T~XUF z9Y=DmLNiSkS%k?B{h}ygMuybBrR+$aAsp!4B60DKk#w0v%Nq;aqk-3gOHp?usx1(UN$#vk@#U|`($h0<-8t$M z{`JE*AebNDhW^<%Ib3?yDLYE-QiD8o;GjEPAb&{KV)3g%{p6^aigYe=y<=0FTo-Zix~YZnkMCfYHRq`Rme9xH zPM#4zf8?R~0-;?_%+S-*!;jorBg!7=T5g_=;6|~pKiz&*6QG7+fzG=9$+z(^q)?6R z9YIeZ3y-o!XjOT`<%%Id4!e0?YqQ|g59%d@Fsa}l+UQ`e{aokVe%?vb&%I-od#=Iq z9;&nZ876^Q;qA_Crs`ZD^-ScJ>!l(B?a)uJ(v++Bkll`#oL#19i&Tb&ea$Os&7GrM z*{13P&{WyV4F`}1+}vI;3CJqsKZ+SA{Y%Tr*KI&ZNFgzW6(X8P2ft>~WZf%ZkHdOb zD9id0{E)d|E5<8=iHyRR3_86NmjpLETKArnZshUvuX%=(xT@m9Oq@GDbiQ@dR=Y|2 z67@~MJDSSy34X*}fp5Ck?wtFw&i^ub3rNafg^B9c?x9XgH>q<>2I z*_@8>j%&YD(J^_OM(1@jo+^|GLcSN=2celWLBhhWk-8xha=vEofOWDH`lV7e(Ue&{0cEmnv_)J1xS_* z)gwSVzOIYdcF^wJG2lW_Ig&NkIH??tw!5YPJD{6cJI_8?&I(6t219_JOZr-Xh59EO zskC4bRoO1i4& zUo#5)YI(lWK3I`s0XuVjhno_75;$EviBs4W`HtUwUXVLih3x1uVf=Ou*jG4Rq?pna zkYQ#W-uc+GdQ_47F$4#j;guSSzPBK}G57FhcA9qxI0-m(lBX_2pV~U6>#Glo%O1gh z!Tzbk>5)V5XO3LfvFr%VEf!fhzhN8~Rx?^Oy||Pukrq%yj2D1XXJ;2`^9##5C);(U zSh~UQE>JHUtW*8x_+ssID1=QQACa?hYIIDh2u>SXw$0}56D!97(aO&}IF|+JznNrz ze%UA{qTyOXL_@k+@U0ywzHW&j&)b7-UsjqK6Iu-%jz%$9{1dk8U{InoBm5ef{!v9C zB~{l&7&ZA%(FPO}Q9=Y<2u*p6Y=|5imMvO+ZTZFY%l+sU-$R*%3Q;;+MMbW9Jg{T| z+P6)_io-vhfG)-0!7S=gqjbbvM~m zW`(PO!c5O0J4h zeGXe`OVE-vUAxD`Wr44sMN`1}2m4EQ45BZTcwLpjZp%`s^=)HVy$3B_P&2UGWu1fZzMEM9>c9Q+;Po;%b8If

?C(N>j#YSGIK(TG* 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 MPgg&ebxsLQ0Llq2vH$=8 literal 59676 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 close() // Create the antenna top sketch -loftPlane = offsetPlane('XY', offset = height / 2 + 3) +loftPlane = offsetPlane('XY', offset = height / 2 + 2) sketch002 = startSketchOn(loftPlane) |> startProfileAt([ diff --git a/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/artifact_commands.snap b/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/artifact_commands.snap index f3f4e236e..c344e925e 100644 --- a/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/artifact_commands.snap +++ b/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/artifact_commands.snap @@ -62,8 +62,8 @@ description: Artifact commands pipe-flange-assembly.kcl }, "y_axis": { "x": 0.0, - "y": 0.0, - "z": 1.0 + "y": 1.0, + "z": 0.0 }, "size": 60.0, "clobber": false, @@ -81,8 +81,8 @@ description: Artifact commands pipe-flange-assembly.kcl "adjust_camera": false, "planar_normal": { "x": 0.0, - "y": -1.0, - "z": 0.0 + "y": 0.0, + "z": 1.0 } } }, @@ -100,8 +100,8 @@ description: Artifact commands pipe-flange-assembly.kcl "type": "move_path_pen", "path": "[uuid]", "to": { - "x": 0.1975, - "y": 1.375, + "x": 0.375, + "y": 2.375, "z": 0.0 } } @@ -123,9 +123,9 @@ description: Artifact commands pipe-flange-assembly.kcl "type": "arc", "center": { "x": 0.0, - "y": 1.375 + "y": 2.375 }, - "radius": 0.1975, + "radius": 0.375, "start": { "unit": "degrees", "value": 0.0 @@ -162,9 +162,9 @@ description: Artifact commands pipe-flange-assembly.kcl "y": 0.0, "z": 0.0 }, - "num_repetitions": 6, + "num_repetitions": 3, "arc_degrees": 360.0, - "rotate_duplicates": true + "rotate_duplicates": false } }, { @@ -222,833 +222,7 @@ description: Artifact commands pipe-flange-assembly.kcl "type": "move_path_pen", "path": "[uuid]", "to": { - "x": 0.49, - "y": 0.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.0, - "y": -2.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.25, - "y": -0.433, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": -0.125, - "y": 0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": -0.25, - "y": 0.433, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.0, - "y": 5.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.25, - "y": 0.433, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.125, - "y": 0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": -0.25, - "y": -0.433, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "close_path", - "path_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "revolve", - "target": "[uuid]", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "axis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "axis_is_2d": true, - "angle": { - "unit": "degrees", - "value": 360.0 - }, - "tolerance": 0.0000001 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.48235294, - "g": 0.4745098, - "b": 0.84313726, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "make_plane", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "x_axis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "y_axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "size": 60.0, - "clobber": false, - "hide": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "start_path" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "move_path_pen", - "path": "[uuid]", - "to": { - "x": -4.0, - "y": -4.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.0, - "y": 8.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 8.0, - "y": 0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.0, - "y": -8.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "close_path", - "path_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "start_path" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "move_path_pen", - "path": "[uuid]", - "to": { - "x": 0.5, + "x": 3.0, "y": 0.0, "z": 0.0 } @@ -1073,7 +247,7 @@ description: Artifact commands pipe-flange-assembly.kcl "x": 0.0, "y": 0.0 }, - "radius": 0.5, + "radius": 3.0, "start": { "unit": "degrees", "value": 0.0 @@ -1112,6 +286,60 @@ description: Artifact commands pipe-flange-assembly.kcl "hidden": true } }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid2d_add_hole", + "object_id": "[uuid]", + "hole_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid2d_add_hole", + "object_id": "[uuid]", + "hole_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid2d_add_hole", + "object_id": "[uuid]", + "hole_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, { "cmdId": "[uuid]", "range": [], @@ -1123,8 +351,8 @@ description: Artifact commands pipe-flange-assembly.kcl "adjust_camera": false, "planar_normal": { "x": 0.0, - "y": -1.0, - "z": 0.0 + "y": 0.0, + "z": 1.0 } } }, @@ -1134,7 +362,7 @@ description: Artifact commands pipe-flange-assembly.kcl "command": { "type": "extrude", "target": "[uuid]", - "distance": 0.5, + "distance": 0.69, "faces": null } }, @@ -1262,188 +490,6 @@ description: Artifact commands pipe-flange-assembly.kcl "face_id": "[uuid]" } }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.78039217, - "g": 0.6666667, - "b": 0.56078434, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "make_plane", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "x_axis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "y_axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "size": 60.0, - "clobber": false, - "hide": true - } - }, { "cmdId": "[uuid]", "range": [], @@ -1453,11 +499,7 @@ description: Artifact commands pipe-flange-assembly.kcl "ortho": false, "animated": false, "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - } + "planar_normal": null } }, { @@ -1474,7 +516,7 @@ description: Artifact commands pipe-flange-assembly.kcl "type": "move_path_pen", "path": "[uuid]", "to": { - "x": 2.0, + "x": 1.81, "y": 0.0, "z": 0.0 } @@ -1499,7 +541,7 @@ description: Artifact commands pipe-flange-assembly.kcl "x": 0.0, "y": 0.0 }, - "radius": 2.0, + "radius": 1.81, "start": { "unit": "degrees", "value": 0.0 @@ -1520,132 +562,6 @@ description: Artifact commands pipe-flange-assembly.kcl "path_id": "[uuid]" } }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, { "cmdId": "[uuid]", "range": [], @@ -1655,105 +571,7 @@ description: Artifact commands pipe-flange-assembly.kcl "ortho": false, "animated": false, "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "start_path" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "move_path_pen", - "path": "[uuid]", - "to": { - "x": 0.5, - "y": 0.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "arc", - "center": { - "x": 0.0, - "y": 0.0 - }, - "radius": 0.5, - "start": { - "unit": "degrees", - "value": 0.0 - }, - "end": { - "unit": "degrees", - "value": 360.0 - }, - "relative": false - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "close_path", - "path_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - } + "planar_normal": null } }, { @@ -1762,780 +580,7 @@ description: Artifact commands pipe-flange-assembly.kcl "command": { "type": "extrude", "target": "[uuid]", - "distance": -0.125, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.60784316, - "g": 0.5921569, - "b": 0.5921569, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "make_plane", - "origin": { - "x": 0.0, - "y": 0.125, - "z": 0.0 - }, - "x_axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "y_axis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "size": 60.0, - "clobber": false, - "hide": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "start_path" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "move_path_pen", - "path": "[uuid]", - "to": { - "x": 1.6875, - "y": 0.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "arc", - "center": { - "x": 1.375, - "y": 0.0 - }, - "radius": 0.3125, - "start": { - "unit": "degrees", - "value": 0.0 - }, - "end": { - "unit": "degrees", - "value": 360.0 - }, - "relative": false - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "close_path", - "path_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "start_path" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "move_path_pen", - "path": "[uuid]", - "to": { - "x": 1.5675, - "y": 0.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "arc", - "center": { - "x": 1.375, - "y": 0.0 - }, - "radius": 0.1925, - "start": { - "unit": "degrees", - "value": 0.0 - }, - "end": { - "unit": "degrees", - "value": 360.0 - }, - "relative": false - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "close_path", - "path_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 0.0625, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "entity_circular_pattern", - "entity_id": "[uuid]", - "axis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "center": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "num_repetitions": 6, - "arc_degrees": 360.0, - "rotate_duplicates": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.84705883, - "g": 0.85490197, - "b": 0.3647059, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.84705883, - "g": 0.85490197, - "b": 0.3647059, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.84705883, - "g": 0.85490197, - "b": 0.3647059, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.84705883, - "g": 0.85490197, - "b": 0.3647059, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.84705883, - "g": 0.85490197, - "b": 0.3647059, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.84705883, - "g": 0.85490197, - "b": 0.3647059, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.84705883, - "g": 0.85490197, - "b": 0.3647059, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "make_plane", - "origin": { - "x": 0.0, - "y": 0.1875, - "z": 1.375 - }, - "x_axis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "y_axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "size": 60.0, - "clobber": false, - "hide": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "start_path" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "move_path_pen", - "path": "[uuid]", - "to": { - "x": 0.3088815789473684, - "y": 0.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "arc", - "center": { - "x": 0.0, - "y": 0.0 - }, - "radius": 0.3088815789473684, - "start": { - "unit": "degrees", - "value": 0.0 - }, - "end": { - "unit": "degrees", - "value": 360.0 - }, - "relative": false - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "close_path", - "path_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 0.375, + "distance": 0.06, "faces": null } }, @@ -2609,8 +654,2312 @@ description: Artifact commands pipe-flange-assembly.kcl "type": "move_path_pen", "path": "[uuid]", "to": { - "x": 0.15419407894736842, - "y": 1.375, + "x": 1.53, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.0, + "y": 0.0 + }, + "radius": 1.53, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.25, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 1.22, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.0, + "y": 0.0 + }, + "radius": 1.22, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": -1.0, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.7294118, + "g": 0.6901961, + "b": 0.6901961, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.375, + "y": 2.375, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.0, + "y": 2.375 + }, + "radius": 0.375, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_circular_pattern", + "entity_id": "[uuid]", + "axis": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "center": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "num_repetitions": 3, + "arc_degrees": 360.0, + "rotate_duplicates": false + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 3.0, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.0, + "y": 0.0 + }, + "radius": 3.0, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid2d_add_hole", + "object_id": "[uuid]", + "hole_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid2d_add_hole", + "object_id": "[uuid]", + "hole_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid2d_add_hole", + "object_id": "[uuid]", + "hole_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid2d_add_hole", + "object_id": "[uuid]", + "hole_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.69, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 1.81, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.0, + "y": 0.0 + }, + "radius": 1.81, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.06, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 1.53, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.0, + "y": 0.0 + }, + "radius": 1.53, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.25, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 1.22, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.0, + "y": 0.0 + }, + "radius": 1.22, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": -1.0, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.7294118, + "g": 0.6901961, + "b": 0.6901961, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": null, + "rotate_rpy": null, + "rotate_angle_axis": { + "property": { + "x": 0.0, + "y": 1.0, + "z": 0.0, + "w": 180.0 + }, + "set": false, + "is_local": true + }, + "scale": null + } + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": { + "property": { + "x": 0.0, + "y": 0.0, + "z": 0.151 + }, + "set": false, + "is_local": true + }, + "rotate_rpy": null, + "rotate_angle_axis": null, + "scale": null + } + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 2.0625, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.0, + "y": 0.0 + }, + "radius": 2.0625, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.031, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 1.1875, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.0, + "y": 0.0 + }, + "radius": 1.1875, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": -0.031, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.8156863, + "g": 0.79607844, + "b": 0.24313726, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": { + "property": { + "x": 0.0, + "y": 0.0, + "z": -0.091 + }, + "set": false, + "is_local": true + }, + "rotate_rpy": null, + "rotate_angle_axis": null, + "scale": null + } + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.594, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.0, + "y": 0.0 + }, + "radius": 0.594, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.032, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.32, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.0, + "y": 0.0 + }, + "radius": 0.32, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": -0.032, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.93333334, + "g": 0.30980393, + "b": 0.30980393, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": { + "property": { + "x": 2.375, + "y": 0.0, + "z": 0.69 + }, + "set": false, + "is_local": true + }, + "rotate_rpy": null, + "rotate_angle_axis": null, + "scale": null + } + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_circular_pattern", + "entity_id": "[uuid]", + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "center": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "num_repetitions": 3, + "arc_degrees": 360.0, + "rotate_duplicates": false + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [ + [ + { + "translate": { + "x": -0.0, + "y": -0.0, + "z": -1.563 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ] + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [ + [ + { + "translate": { + "x": -0.0, + "y": -0.0, + "z": -1.563 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ] + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [ + [ + { + "translate": { + "x": -0.0, + "y": -0.0, + "z": -1.563 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ] + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [ + [ + { + "translate": { + "x": -0.0, + "y": -0.0, + "z": -1.563 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ] + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.469, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.0, + "y": 0.0 + }, + "radius": 0.469, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": -0.625, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.02, + "tolerance": 0.0000001, + "cut_type": "fillet" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.02, + "tolerance": 0.0000001, + "cut_type": "fillet" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.25, + "y": 0.14433756729740643, "z": 0.0 } } @@ -2631,8 +2980,8 @@ description: Artifact commands pipe-flange-assembly.kcl "segment": { "type": "line", "end": { - "x": 0.0, - "y": -0.089, + "x": -0.0, + "y": -0.2887, "z": 0.0 }, "relative": true @@ -2648,8 +2997,8 @@ description: Artifact commands pipe-flange-assembly.kcl "segment": { "type": "line", "end": { - "x": -0.1542, - "y": -0.089, + "x": -0.25, + "y": -0.1443, "z": 0.0 }, "relative": true @@ -2665,8 +3014,8 @@ description: Artifact commands pipe-flange-assembly.kcl "segment": { "type": "line", "end": { - "x": -0.1542, - "y": 0.089, + "x": -0.25, + "y": 0.1443, "z": 0.0 }, "relative": true @@ -2683,7 +3032,7 @@ description: Artifact commands pipe-flange-assembly.kcl "type": "line", "end": { "x": 0.0, - "y": 0.178, + "y": 0.2887, "z": 0.0 }, "relative": true @@ -2699,25 +3048,8 @@ description: Artifact commands pipe-flange-assembly.kcl "segment": { "type": "line", "end": { - "x": 0.1542, - "y": 0.089, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.1542, - "y": -0.089, + "x": 0.25, + "y": 0.1443, "z": 0.0 }, "relative": true @@ -2750,7 +3082,7 @@ description: Artifact commands pipe-flange-assembly.kcl "command": { "type": "extrude", "target": "[uuid]", - "distance": -0.28125, + "distance": -0.46875, "faces": null } }, @@ -2898,191 +3230,6 @@ description: Artifact commands pipe-flange-assembly.kcl "face_id": "[uuid]" } }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "entity_circular_pattern", - "entity_id": "[uuid]", - "axis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "center": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "num_repetitions": 6, - "arc_degrees": 360.0, - "rotate_duplicates": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.29803923, - "g": 0.83137256, - "b": 0.06666667, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.29803923, - "g": 0.83137256, - "b": 0.06666667, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.29803923, - "g": 0.83137256, - "b": 0.06666667, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.29803923, - "g": 0.83137256, - "b": 0.06666667, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.29803923, - "g": 0.83137256, - "b": 0.06666667, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.29803923, - "g": 0.83137256, - "b": 0.06666667, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.29803923, - "g": 0.83137256, - "b": 0.06666667, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "make_plane", - "origin": { - "x": 0.0, - "y": 0.1875, - "z": 1.375 - }, - "x_axis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "y_axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "size": 60.0, - "clobber": false, - "hide": true - } - }, { "cmdId": "[uuid]", "range": [], @@ -3092,11 +3239,7 @@ description: Artifact commands pipe-flange-assembly.kcl "ortho": false, "animated": false, "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - } + "planar_normal": null } }, { @@ -3113,7 +3256,7 @@ description: Artifact commands pipe-flange-assembly.kcl "type": "move_path_pen", "path": "[uuid]", "to": { - "x": 0.1875, + "x": 0.3125, "y": 0.0, "z": 0.0 } @@ -3138,317 +3281,6 @@ description: Artifact commands pipe-flange-assembly.kcl "x": 0.0, "y": 0.0 }, - "radius": 0.1875, - "start": { - "unit": "degrees", - "value": 0.0 - }, - "end": { - "unit": "degrees", - "value": 360.0 - }, - "relative": false - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "close_path", - "path_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": -1.125, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "entity_circular_pattern", - "entity_id": "[uuid]", - "axis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "center": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "num_repetitions": 6, - "arc_degrees": 360.0, - "rotate_duplicates": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.29803923, - "g": 0.83137256, - "b": 0.06666667, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.29803923, - "g": 0.83137256, - "b": 0.06666667, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.29803923, - "g": 0.83137256, - "b": 0.06666667, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.29803923, - "g": 0.83137256, - "b": 0.06666667, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.29803923, - "g": 0.83137256, - "b": 0.06666667, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.29803923, - "g": 0.83137256, - "b": 0.06666667, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.29803923, - "g": 0.83137256, - "b": 0.06666667, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "make_plane", - "origin": { - "x": 0.0, - "y": -0.5625, - "z": 0.0 - }, - "x_axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "y_axis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "size": 60.0, - "clobber": false, - "hide": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "start_path" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "move_path_pen", - "path": "[uuid]", - "to": { - "x": 1.6875, - "y": 0.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "arc", - "center": { - "x": 1.375, - "y": 0.0 - }, "radius": 0.3125, "start": { "unit": "degrees", @@ -3479,10 +3311,187 @@ description: Artifact commands pipe-flange-assembly.kcl "ortho": false, "animated": false, "adjust_camera": false, - "planar_normal": { + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 2.5, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.3019608, + "g": 0.8156863, + "b": 0.2627451, + "a": 100.0 + }, + "metalness": 0.9, + "roughness": 0.9, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": { + "property": { + "x": 2.375, + "y": 0.0, + "z": 0.722 + }, + "set": false, + "is_local": true + }, + "rotate_rpy": null, + "rotate_angle_axis": null, + "scale": null + } + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": null, + "rotate_rpy": { + "property": { + "x": 90.0, + "y": 0.0, + "z": 0.0 + }, + "set": false, + "is_local": true + }, + "rotate_angle_axis": null, + "scale": null + } + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_circular_pattern", + "entity_id": "[uuid]", + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "center": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "num_repetitions": 3, + "arc_degrees": 360.0, + "rotate_duplicates": false + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { "x": 0.0, "y": 1.0, "z": 0.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 } } }, @@ -3500,8 +3509,8 @@ description: Artifact commands pipe-flange-assembly.kcl "type": "move_path_pen", "path": "[uuid]", "to": { - "x": 1.5675, - "y": 0.0, + "x": 0.46875, + "y": 0.27063293868263705, "z": 0.0 } } @@ -3520,21 +3529,81 @@ description: Artifact commands pipe-flange-assembly.kcl "type": "extend_path", "path": "[uuid]", "segment": { - "type": "arc", - "center": { - "x": 1.375, - "y": 0.0 - }, - "radius": 0.1925, - "start": { - "unit": "degrees", - "value": 0.0 - }, + "type": "line", "end": { - "unit": "degrees", - "value": 360.0 + "x": -0.0, + "y": -0.5413, + "z": 0.0 }, - "relative": false + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.4687, + "y": -0.2706, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.4688, + "y": 0.2706, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.5413, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.4688, + "y": 0.2706, + "z": 0.0 + }, + "relative": true } } }, @@ -3546,24 +3615,6 @@ description: Artifact commands pipe-flange-assembly.kcl "path_id": "[uuid]" } }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, { "cmdId": "[uuid]", "range": [], @@ -3575,8 +3626,8 @@ description: Artifact commands pipe-flange-assembly.kcl "adjust_camera": false, "planar_normal": { "x": 0.0, - "y": 1.0, - "z": 0.0 + "y": 0.0, + "z": 1.0 } } }, @@ -3586,7 +3637,7 @@ description: Artifact commands pipe-flange-assembly.kcl "command": { "type": "extrude", "target": "[uuid]", - "distance": 0.0625, + "distance": 0.546875, "faces": null } }, @@ -3654,6 +3705,265 @@ description: Artifact commands pipe-flange-assembly.kcl "face_id": "[uuid]" } }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.3125, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.0, + "y": 0.0 + }, + "radius": 0.3125, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": -0.546875, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.30588236, + "g": 0.8745098, + "b": 0.8352941, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": { + "property": { + "x": 2.375, + "y": 0.0, + "z": -1.419875 + }, + "set": false, + "is_local": true + }, + "rotate_rpy": null, + "rotate_angle_axis": null, + "scale": null + } + ] + } + }, { "cmdId": "[uuid]", "range": [], @@ -3662,136 +3972,17 @@ description: Artifact commands pipe-flange-assembly.kcl "entity_id": "[uuid]", "axis": { "x": 0.0, - "y": 1.0, - "z": 0.0 + "y": 0.0, + "z": 1.0 }, "center": { "x": 0.0, "y": 0.0, "z": 0.0 }, - "num_repetitions": 6, + "num_repetitions": 3, "arc_degrees": 360.0, - "rotate_duplicates": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.9098039, - "g": 0.9254902, - "b": 0.03529412, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.9098039, - "g": 0.9254902, - "b": 0.03529412, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.9098039, - "g": 0.9254902, - "b": 0.03529412, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.9098039, - "g": 0.9254902, - "b": 0.03529412, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.9098039, - "g": 0.9254902, - "b": 0.03529412, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.9098039, - "g": 0.9254902, - "b": 0.03529412, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.9098039, - "g": 0.9254902, - "b": 0.03529412, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 + "rotate_duplicates": false } }, { @@ -3801,8 +3992,8 @@ description: Artifact commands pipe-flange-assembly.kcl "type": "make_plane", "origin": { "x": 0.0, - "y": -0.5625, - "z": 1.375 + "y": 0.0, + "z": 0.0 }, "x_axis": { "x": 1.0, @@ -3830,7 +4021,7 @@ description: Artifact commands pipe-flange-assembly.kcl "adjust_camera": false, "planar_normal": { "x": 0.0, - "y": 1.0, + "y": -1.0, "z": 0.0 } } @@ -3849,143 +4040,7 @@ description: Artifact commands pipe-flange-assembly.kcl "type": "move_path_pen", "path": "[uuid]", "to": { - "x": 0.34650000000000003, - "y": 0.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": -0.1733, - "y": -0.3001, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": -0.3465, - "y": 0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": -0.1732, - "y": 0.3001, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.1733, - "y": 0.3001, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.3465, - "y": 0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "close_path", - "path_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "start_path" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "move_path_pen", - "path": "[uuid]", - "to": { - "x": 0.1925, + "x": 1.1875, "y": 0.0, "z": 0.0 } @@ -4010,7 +4065,7 @@ description: Artifact commands pipe-flange-assembly.kcl "x": 0.0, "y": 0.0 }, - "radius": 0.1925, + "radius": 1.1875, "start": { "unit": "degrees", "value": 0.0 @@ -4031,24 +4086,6 @@ description: Artifact commands pipe-flange-assembly.kcl "path_id": "[uuid]" } }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, { "cmdId": "[uuid]", "range": [], @@ -4060,7 +4097,7 @@ description: Artifact commands pipe-flange-assembly.kcl "adjust_camera": false, "planar_normal": { "x": 0.0, - "y": 1.0, + "y": -1.0, "z": 0.0 } } @@ -4071,7 +4108,7 @@ description: Artifact commands pipe-flange-assembly.kcl "command": { "type": "extrude", "target": "[uuid]", - "distance": -0.25, + "distance": 6.0, "faces": null } }, @@ -4123,141 +4160,512 @@ description: Artifact commands pipe-flange-assembly.kcl "cmdId": "[uuid]", "range": [], "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "entity_circular_pattern", + "type": "enable_sketch_mode", "entity_id": "[uuid]", - "axis": { - "x": 0.0, - "y": 1.0, + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 1.0, + "y": 0.0, "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.0, + "y": 0.0 + }, + "radius": 1.0, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": -6.0, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.63529414, + "g": 0.30588236, + "b": 0.8156863, + "a": 100.0 }, - "center": { + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": null, + "rotate_rpy": { + "property": { + "x": -90.0, + "y": 0.0, + "z": 0.0 + }, + "set": false, + "is_local": true + }, + "rotate_angle_axis": null, + "scale": null + } + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": { + "property": { + "x": 0.0, + "y": 0.0, + "z": 0.43999999999999995 + }, + "set": false, + "is_local": false + }, + "rotate_rpy": null, + "rotate_angle_axis": null, + "scale": null + } + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { "x": 0.0, "y": 0.0, "z": 0.0 }, - "num_repetitions": 6, - "arc_degrees": 360.0, - "rotate_duplicates": true + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 1.1875, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.0, + "y": 0.0 + }, + "radius": 1.1875, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 6.0, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.0, + "y": 0.0 + }, + "radius": 1.0, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": -6.0, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" } }, { @@ -4267,9 +4675,9 @@ description: Artifact commands pipe-flange-assembly.kcl "type": "object_set_material_params_pbr", "object_id": "[uuid]", "color": { - "r": 0.7372549, - "g": 0.20392157, - "b": 0.20392157, + "r": 0.63529414, + "g": 0.30588236, + "b": 0.8156863, "a": 100.0 }, "metalness": 0.0, @@ -4281,174 +4689,48 @@ description: Artifact commands pipe-flange-assembly.kcl "cmdId": "[uuid]", "range": [], "command": { - "type": "object_set_material_params_pbr", + "type": "set_object_transform", "object_id": "[uuid]", - "color": { - "r": 0.7372549, - "g": 0.20392157, - "b": 0.20392157, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 + "transforms": [ + { + "translate": null, + "rotate_rpy": { + "property": { + "x": 90.0, + "y": 0.0, + "z": 0.0 + }, + "set": false, + "is_local": true + }, + "rotate_angle_axis": null, + "scale": null + } + ] } }, { "cmdId": "[uuid]", "range": [], "command": { - "type": "object_set_material_params_pbr", + "type": "set_object_transform", "object_id": "[uuid]", - "color": { - "r": 0.7372549, - "g": 0.20392157, - "b": 0.20392157, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.7372549, - "g": 0.20392157, - "b": 0.20392157, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.7372549, - "g": 0.20392157, - "b": 0.20392157, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.7372549, - "g": 0.20392157, - "b": 0.20392157, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.7372549, - "g": 0.20392157, - "b": 0.20392157, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true + "transforms": [ + { + "translate": { + "property": { + "x": 0.0, + "y": 0.0, + "z": -0.591 + }, + "set": false, + "is_local": false + }, + "rotate_rpy": null, + "rotate_angle_axis": null, + "scale": null + } + ] } } ] diff --git a/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/artifact_graph_flowchart.snap.md b/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/artifact_graph_flowchart.snap.md index c04afea4f..b0f46162b 100644 --- a/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/artifact_graph_flowchart.snap.md +++ b/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/artifact_graph_flowchart.snap.md @@ -1,521 +1,612 @@ ```mermaid flowchart LR subgraph path2 [Path] - 2["Path
[4357, 4454, 0]"] - 3["Segment
[4357, 4454, 0]"] + 2["Path
[466, 559, 4]"] + 3["Segment
[466, 559, 4]"] 4[Solid2d] end subgraph path6 [Path] - 6["Path
[4652, 4699, 0]"] - 7["Segment
[4705, 4724, 0]"] - 8["Segment
[4730, 4773, 0]"] - 9["Segment
[4779, 4798, 0]"] - 10["Segment
[4804, 4837, 0]"] - 11["Segment
[4843, 4861, 0]"] - 12["Segment
[4867, 4911, 0]"] - 13["Segment
[4917, 4935, 0]"] - 14["Segment
[4941, 4983, 0]"] - 15["Segment
[4989, 5007, 0]"] - 16["Segment
[5013, 5045, 0]"] - 17["Segment
[5051, 5070, 0]"] - 18["Segment
[5076, 5119, 0]"] - 19["Segment
[5125, 5132, 0]"] - 20[Solid2d] + 6["Path
[790, 845, 4]"] + 7["Segment
[790, 845, 4]"] + 8[Solid2d] end - subgraph path48 [Path] - 48["Path
[5257, 5284, 0]"] - 49["Segment
[5290, 5308, 0]"] - 50["Segment
[5314, 5332, 0]"] - 51["Segment
[5338, 5357, 0]"] - 52["Segment
[5363, 5370, 0]"] - 53[Solid2d] + subgraph path15 [Path] + 15["Path
[1060, 1119, 4]"] + 16["Segment
[1060, 1119, 4]"] + 17[Solid2d] end - subgraph path54 [Path] - 54["Path
[5415, 5487, 0]"] - 55["Segment
[5415, 5487, 0]"] - 56[Solid2d] + subgraph path23 [Path] + 23["Path
[1221, 1281, 4]"] + 24["Segment
[1221, 1281, 4]"] + 25[Solid2d] end - subgraph path73 [Path] - 73["Path
[5636, 5704, 0]"] - 74["Segment
[5636, 5704, 0]"] - 75[Solid2d] + subgraph path31 [Path] + 31["Path
[1438, 1491, 4]"] + 32["Segment
[1438, 1491, 4]"] + 33[Solid2d] + end + subgraph path39 [Path] + 39["Path
[466, 559, 4]"] + 40["Segment
[466, 559, 4]"] + 41[Solid2d] + end + subgraph path43 [Path] + 43["Path
[790, 845, 4]"] + 44["Segment
[790, 845, 4]"] + 45[Solid2d] + end + subgraph path52 [Path] + 52["Path
[1060, 1119, 4]"] + 53["Segment
[1060, 1119, 4]"] + 54[Solid2d] + end + subgraph path60 [Path] + 60["Path
[1221, 1281, 4]"] + 61["Segment
[1221, 1281, 4]"] + 62[Solid2d] + end + subgraph path68 [Path] + 68["Path
[1438, 1491, 4]"] + 69["Segment
[1438, 1491, 4]"] + 70[Solid2d] end subgraph path76 [Path] - 76["Path
[5749, 5821, 0]"] - 77["Segment
[5749, 5821, 0]"] + 76["Path
[314, 376, 5]"] + 77["Segment
[314, 376, 5]"] 78[Solid2d] end - subgraph path86 [Path] - 86["Path
[2978, 3065, 0]"] - 87["Segment
[2978, 3065, 0]"] - 88[Solid2d] + subgraph path85 [Path] + 85["Path
[526, 586, 5]"] + 86["Segment
[526, 586, 5]"] + 87[Solid2d] end - subgraph path89 [Path] - 89["Path
[3078, 3165, 0]"] - 90["Segment
[3078, 3165, 0]"] - 91[Solid2d] + subgraph path93 [Path] + 93["Path
[303, 355, 6]"] + 94["Segment
[303, 355, 6]"] + 95[Solid2d] end - subgraph path99 [Path] - 99["Path
[1554, 1626, 0]"] - 100["Segment
[1554, 1626, 0]"] - 101[Solid2d] + subgraph path102 [Path] + 102["Path
[488, 540, 6]"] + 103["Segment
[488, 540, 6]"] + 104[Solid2d] end - subgraph path108 [Path] - 108["Path
[1837, 1927, 0]"] - 109["Segment
[1935, 1969, 0]"] - 110["Segment
[1977, 2069, 0]"] - 111["Segment
[2077, 2186, 0]"] - 112["Segment
[2194, 2309, 0]"] - 113["Segment
[2317, 2432, 0]"] - 114["Segment
[2440, 2555, 0]"] - 115["Segment
[2563, 2570, 0]"] - 116[Solid2d] + subgraph path110 [Path] + 110["Path
[379, 449, 7]"] + 111["Segment
[379, 449, 7]"] + 112[Solid2d] end - subgraph path141 [Path] - 141["Path
[6641, 6708, 0]"] - 142["Segment
[6641, 6708, 0]"] - 143[Solid2d] + subgraph path121 [Path] + 121["Path
[713, 800, 7]"] + 122["Segment
[808, 891, 7]"] + 123["Segment
[899, 982, 7]"] + 124["Segment
[990, 1073, 7]"] + 125["Segment
[1081, 1163, 7]"] + 126["Segment
[1171, 1253, 7]"] + 127["Segment
[1261, 1268, 7]"] + 128[Solid2d] end - subgraph path151 [Path] - 151["Path
[2978, 3065, 0]"] - 152["Segment
[2978, 3065, 0]"] - 153[Solid2d] + subgraph path149 [Path] + 149["Path
[1402, 1471, 7]"] + 150["Segment
[1402, 1471, 7]"] + 151[Solid2d] end - subgraph path154 [Path] - 154["Path
[3078, 3165, 0]"] - 155["Segment
[3078, 3165, 0]"] - 156[Solid2d] + subgraph path158 [Path] + 158["Path
[326, 416, 8]"] + 159["Segment
[424, 506, 8]"] + 160["Segment
[514, 596, 8]"] + 161["Segment
[604, 686, 8]"] + 162["Segment
[694, 775, 8]"] + 163["Segment
[783, 864, 8]"] + 164["Segment
[872, 879, 8]"] + 165[Solid2d] end - subgraph path164 [Path] - 164["Path
[3629, 3679, 0]"] - 165["Segment
[3687, 3775, 0]"] - 166["Segment
[3783, 3871, 0]"] - 167["Segment
[3879, 3967, 0]"] - 168["Segment
[3975, 4062, 0]"] - 169["Segment
[4070, 4123, 0]"] - 170["Segment
[4131, 4138, 0]"] - 171[Solid2d] + subgraph path187 [Path] + 187["Path
[1023, 1075, 8]"] + 188["Segment
[1023, 1075, 8]"] + 189[Solid2d] end - subgraph path172 [Path] - 172["Path
[4151, 4224, 0]"] - 173["Segment
[4151, 4224, 0]"] - 174[Solid2d] + subgraph path195 [Path] + 195["Path
[285, 343, 9]"] + 196["Segment
[285, 343, 9]"] + 197[Solid2d] end - 1["Plane
[4332, 4351, 0]"] - 5["Plane
[4627, 4646, 0]"] - 21["Sweep Revolve
[5138, 5157, 0]"] - 22[Wall] - 23[Wall] - 24[Wall] - 25[Wall] - 26[Wall] + subgraph path204 [Path] + 204["Path
[482, 537, 9]"] + 205["Segment
[482, 537, 9]"] + 206[Solid2d] + end + subgraph path212 [Path] + 212["Path
[285, 343, 9]"] + 213["Segment
[285, 343, 9]"] + 214[Solid2d] + end + subgraph path221 [Path] + 221["Path
[482, 537, 9]"] + 222["Segment
[482, 537, 9]"] + 223[Solid2d] + end + 1["Plane
[439, 458, 4]"] + 5["Plane
[763, 782, 4]"] + 9["Sweep Extrusion
[883, 923, 4]"] + 10[Wall] + 11["Cap Start"] + 12["Cap End"] + 13["SweepEdge Opposite"] + 14["SweepEdge Adjacent"] + 18["Sweep Extrusion
[1127, 1164, 4]"] + 19[Wall] + 20["Cap End"] + 21["SweepEdge Opposite"] + 22["SweepEdge Adjacent"] + 26["Sweep Extrusion
[1289, 1327, 4]"] 27[Wall] - 28[Wall] - 29[Wall] - 30[Wall] - 31[Wall] - 32[Wall] - 33[Wall] - 34[Wall] - 35["SweepEdge Adjacent"] - 36["SweepEdge Adjacent"] + 28["Cap End"] + 29["SweepEdge Opposite"] + 30["SweepEdge Adjacent"] + 34["Sweep Extrusion
[1499, 1541, 4]"] + 35[Wall] + 36["SweepEdge Opposite"] 37["SweepEdge Adjacent"] - 38["SweepEdge Adjacent"] - 39["SweepEdge Adjacent"] - 40["SweepEdge Adjacent"] - 41["SweepEdge Adjacent"] - 42["SweepEdge Adjacent"] - 43["SweepEdge Adjacent"] - 44["SweepEdge Adjacent"] - 45["SweepEdge Adjacent"] - 46["SweepEdge Adjacent"] - 47["Plane
[5232, 5251, 0]"] - 57["Sweep Extrusion
[5497, 5528, 0]"] - 58[Wall] - 59[Wall] - 60[Wall] - 61[Wall] - 62["Cap Start"] - 63["Cap End"] - 64["SweepEdge Opposite"] - 65["SweepEdge Adjacent"] + 38["Plane
[439, 458, 4]"] + 42["Plane
[763, 782, 4]"] + 46["Sweep Extrusion
[883, 923, 4]"] + 47[Wall] + 48["Cap Start"] + 49["Cap End"] + 50["SweepEdge Opposite"] + 51["SweepEdge Adjacent"] + 55["Sweep Extrusion
[1127, 1164, 4]"] + 56[Wall] + 57["Cap End"] + 58["SweepEdge Opposite"] + 59["SweepEdge Adjacent"] + 63["Sweep Extrusion
[1289, 1327, 4]"] + 64[Wall] + 65["Cap End"] 66["SweepEdge Opposite"] 67["SweepEdge Adjacent"] - 68["SweepEdge Opposite"] - 69["SweepEdge Adjacent"] - 70["SweepEdge Opposite"] - 71["SweepEdge Adjacent"] - 72["Plane
[5611, 5630, 0]"] - 79["Sweep Extrusion
[5831, 5865, 0]"] + 71["Sweep Extrusion
[1499, 1541, 4]"] + 72[Wall] + 73["SweepEdge Opposite"] + 74["SweepEdge Adjacent"] + 75["Plane
[287, 306, 5]"] + 79["Sweep Extrusion
[384, 420, 5]"] 80[Wall] 81["Cap Start"] 82["Cap End"] 83["SweepEdge Opposite"] 84["SweepEdge Adjacent"] - 85["Plane
[2950, 2970, 0]"] - 92["Sweep Extrusion
[3177, 3198, 0]"] - 93[Wall] - 94["Cap Start"] - 95["Cap End"] - 96["SweepEdge Opposite"] - 97["SweepEdge Adjacent"] - 98["Plane
[1521, 1546, 0]"] - 102["Sweep Extrusion
[1677, 1715, 0]"] - 103[Wall] - 104["Cap Start"] - 105["Cap End"] - 106["SweepEdge Opposite"] - 107["SweepEdge Adjacent"] - 117["Sweep Extrusion
[2586, 2640, 0]"] - 118[Wall] - 119[Wall] - 120[Wall] - 121[Wall] - 122[Wall] - 123[Wall] - 124[Wall] - 125["Cap Start"] - 126["SweepEdge Opposite"] - 127["SweepEdge Adjacent"] - 128["SweepEdge Opposite"] - 129["SweepEdge Adjacent"] - 130["SweepEdge Opposite"] - 131["SweepEdge Adjacent"] - 132["SweepEdge Opposite"] - 133["SweepEdge Adjacent"] - 134["SweepEdge Opposite"] - 135["SweepEdge Adjacent"] - 136["SweepEdge Opposite"] - 137["SweepEdge Adjacent"] - 138["SweepEdge Opposite"] - 139["SweepEdge Adjacent"] - 140["Plane
[6610, 6635, 0]"] - 144["Sweep Extrusion
[6721, 6768, 0]"] - 145[Wall] - 146["Cap Start"] - 147["Cap End"] - 148["SweepEdge Opposite"] - 149["SweepEdge Adjacent"] - 150["Plane
[2950, 2970, 0]"] - 157["Sweep Extrusion
[3177, 3198, 0]"] - 158[Wall] - 159["Cap Start"] - 160["Cap End"] - 161["SweepEdge Opposite"] - 162["SweepEdge Adjacent"] - 163["Plane
[3295, 3621, 0]"] - 175["Sweep Extrusion
[4236, 4258, 0]"] - 176[Wall] - 177[Wall] - 178[Wall] - 179[Wall] - 180[Wall] - 181[Wall] - 182["Cap Start"] - 183["Cap End"] - 184["SweepEdge Opposite"] - 185["SweepEdge Adjacent"] - 186["SweepEdge Opposite"] - 187["SweepEdge Adjacent"] - 188["SweepEdge Opposite"] - 189["SweepEdge Adjacent"] - 190["SweepEdge Opposite"] - 191["SweepEdge Adjacent"] + 88["Sweep Extrusion
[594, 631, 5]"] + 89[Wall] + 90["SweepEdge Opposite"] + 91["SweepEdge Adjacent"] + 92["Plane
[276, 295, 6]"] + 96["Sweep Extrusion
[363, 396, 6]"] + 97[Wall] + 98["Cap Start"] + 99["Cap End"] + 100["SweepEdge Opposite"] + 101["SweepEdge Adjacent"] + 105["Sweep Extrusion
[548, 585, 6]"] + 106[Wall] + 107["SweepEdge Opposite"] + 108["SweepEdge Adjacent"] + 109["Plane
[352, 371, 7]"] + 113["Sweep Extrusion
[457, 490, 7]"] + 114[Wall] + 115["Cap Start"] + 116["Cap End"] + 117["SweepEdge Opposite"] + 118["SweepEdge Adjacent"] + 119["EdgeCut Fillet
[498, 564, 7]"] + 120["EdgeCut Fillet
[498, 564, 7]"] + 129["Sweep Extrusion
[1276, 1316, 7]"] + 130[Wall] + 131[Wall] + 132[Wall] + 133[Wall] + 134[Wall] + 135[Wall] + 136["Cap Start"] + 137["SweepEdge Opposite"] + 138["SweepEdge Adjacent"] + 139["SweepEdge Opposite"] + 140["SweepEdge Adjacent"] + 141["SweepEdge Opposite"] + 142["SweepEdge Adjacent"] + 143["SweepEdge Opposite"] + 144["SweepEdge Adjacent"] + 145["SweepEdge Opposite"] + 146["SweepEdge Adjacent"] + 147["SweepEdge Opposite"] + 148["SweepEdge Adjacent"] + 152["Sweep Extrusion
[1479, 1507, 7]"] + 153[Wall] + 154["Cap End"] + 155["SweepEdge Opposite"] + 156["SweepEdge Adjacent"] + 157["Plane
[299, 318, 8]"] + 166["Sweep Extrusion
[887, 920, 8]"] + 167[Wall] + 168[Wall] + 169[Wall] + 170[Wall] + 171[Wall] + 172[Wall] + 173["Cap Start"] + 174["Cap End"] + 175["SweepEdge Opposite"] + 176["SweepEdge Adjacent"] + 177["SweepEdge Opposite"] + 178["SweepEdge Adjacent"] + 179["SweepEdge Opposite"] + 180["SweepEdge Adjacent"] + 181["SweepEdge Opposite"] + 182["SweepEdge Adjacent"] + 183["SweepEdge Opposite"] + 184["SweepEdge Adjacent"] + 185["SweepEdge Opposite"] + 186["SweepEdge Adjacent"] + 190["Sweep Extrusion
[1083, 1120, 8]"] + 191[Wall] 192["SweepEdge Opposite"] 193["SweepEdge Adjacent"] - 194["SweepEdge Opposite"] - 195["SweepEdge Adjacent"] - 196["StartSketchOnFace
[1798, 1829, 0]"] + 194["Plane
[258, 277, 9]"] + 198["Sweep Extrusion
[351, 382, 9]"] + 199[Wall] + 200["Cap Start"] + 201["Cap End"] + 202["SweepEdge Opposite"] + 203["SweepEdge Adjacent"] + 207["Sweep Extrusion
[545, 577, 9]"] + 208[Wall] + 209["SweepEdge Opposite"] + 210["SweepEdge Adjacent"] + 211["Plane
[258, 277, 9]"] + 215["Sweep Extrusion
[351, 382, 9]"] + 216[Wall] + 217["Cap Start"] + 218["Cap End"] + 219["SweepEdge Opposite"] + 220["SweepEdge Adjacent"] + 224["Sweep Extrusion
[545, 577, 9]"] + 225[Wall] + 226["SweepEdge Opposite"] + 227["SweepEdge Adjacent"] + 228["StartSketchOnFace
[1018, 1052, 4]"] + 229["StartSketchOnFace
[1181, 1213, 4]"] + 230["StartSketchOnFace
[1397, 1430, 4]"] + 231["StartSketchOnFace
[1018, 1052, 4]"] + 232["StartSketchOnFace
[1181, 1213, 4]"] + 233["StartSketchOnFace
[1397, 1430, 4]"] + 234["StartSketchOnFace
[486, 518, 5]"] + 235["StartSketchOnFace
[448, 480, 6]"] + 236["StartSketchOnFace
[673, 705, 7]"] + 237["StartSketchOnFace
[1364, 1394, 7]"] + 238["StartSketchOnFace
[983, 1015, 8]"] + 239["StartSketchOnFace
[444, 474, 9]"] + 240["StartSketchOnFace
[444, 474, 9]"] 1 --- 2 2 --- 3 2 --- 4 5 --- 6 6 --- 7 + 6 ---- 9 6 --- 8 - 6 --- 9 - 6 --- 10 - 6 --- 11 - 6 --- 12 - 6 --- 13 - 6 --- 14 - 6 --- 15 - 6 --- 16 - 6 --- 17 - 6 --- 18 - 6 --- 19 - 6 ---- 21 - 6 --- 20 - 7 --- 22 - 7 x--> 35 - 8 --- 23 - 8 --- 35 - 9 --- 24 - 9 --- 36 - 10 --- 25 - 10 --- 37 - 11 --- 26 - 11 --- 38 - 12 --- 27 - 12 --- 39 - 13 --- 28 - 13 --- 40 - 14 --- 29 - 14 --- 41 - 15 --- 30 - 15 --- 42 - 16 --- 31 - 16 --- 43 - 17 --- 32 - 17 --- 44 - 18 --- 33 - 18 --- 45 - 19 --- 34 - 19 --- 46 - 21 --- 22 - 21 --- 23 - 21 --- 24 - 21 --- 25 - 21 --- 26 - 21 --- 27 - 21 --- 28 - 21 --- 29 - 21 --- 30 - 21 --- 31 - 21 --- 32 - 21 --- 33 - 21 --- 34 - 21 <--x 7 - 21 --- 35 - 21 <--x 8 - 21 <--x 9 - 21 --- 36 - 21 <--x 10 - 21 --- 37 - 21 <--x 11 - 21 --- 38 - 21 <--x 12 - 21 --- 39 - 21 <--x 13 - 21 --- 40 - 21 <--x 14 - 21 --- 41 - 21 <--x 15 - 21 --- 42 - 21 <--x 16 - 21 --- 43 - 21 <--x 17 - 21 --- 44 - 21 <--x 18 - 21 --- 45 - 21 <--x 19 - 21 --- 46 - 47 --- 48 - 47 --- 54 - 48 --- 49 - 48 --- 50 - 48 --- 51 + 7 --- 10 + 7 --- 13 + 7 --- 14 + 9 --- 10 + 9 --- 11 + 9 --- 12 + 9 --- 13 + 9 --- 14 + 11 --- 15 + 12 --- 23 + 15 --- 16 + 15 ---- 18 + 15 --- 17 + 16 --- 19 + 16 --- 21 + 16 --- 22 + 18 --- 19 + 18 --- 20 + 18 --- 21 + 18 --- 22 + 23 --- 24 + 23 ---- 26 + 23 --- 25 + 24 --- 27 + 24 --- 29 + 24 --- 30 + 26 --- 27 + 26 --- 28 + 26 --- 29 + 26 --- 30 + 28 --- 31 + 31 --- 32 + 31 ---- 34 + 31 --- 33 + 32 --- 35 + 32 --- 36 + 32 --- 37 + 34 --- 35 + 34 --- 36 + 34 --- 37 + 38 --- 39 + 39 --- 40 + 39 --- 41 + 42 --- 43 + 43 --- 44 + 43 ---- 46 + 43 --- 45 + 44 --- 47 + 44 --- 50 + 44 --- 51 + 46 --- 47 + 46 --- 48 + 46 --- 49 + 46 --- 50 + 46 --- 51 48 --- 52 - 48 ---- 57 - 48 --- 53 - 49 --- 61 - 49 --- 70 - 49 --- 71 - 50 --- 60 - 50 --- 68 - 50 --- 69 - 51 --- 59 - 51 --- 66 - 51 --- 67 - 52 --- 58 - 52 --- 64 - 52 --- 65 - 54 --- 55 - 54 --- 56 - 57 --- 58 - 57 --- 59 - 57 --- 60 - 57 --- 61 - 57 --- 62 - 57 --- 63 - 57 --- 64 - 57 --- 65 - 57 --- 66 - 57 --- 67 - 57 --- 68 - 57 --- 69 - 57 --- 70 - 57 --- 71 - 72 --- 73 - 72 --- 76 - 73 --- 74 - 73 ---- 79 - 73 --- 75 - 74 --- 80 - 74 --- 83 - 74 --- 84 + 49 --- 60 + 52 --- 53 + 52 ---- 55 + 52 --- 54 + 53 --- 56 + 53 --- 58 + 53 --- 59 + 55 --- 56 + 55 --- 57 + 55 --- 58 + 55 --- 59 + 60 --- 61 + 60 ---- 63 + 60 --- 62 + 61 --- 64 + 61 --- 66 + 61 --- 67 + 63 --- 64 + 63 --- 65 + 63 --- 66 + 63 --- 67 + 65 --- 68 + 68 --- 69 + 68 ---- 71 + 68 --- 70 + 69 --- 72 + 69 --- 73 + 69 --- 74 + 71 --- 72 + 71 --- 73 + 71 --- 74 + 75 --- 76 76 --- 77 + 76 ---- 79 76 --- 78 + 77 --- 80 + 77 --- 83 + 77 --- 84 79 --- 80 79 --- 81 79 --- 82 79 --- 83 79 --- 84 + 82 --- 85 85 --- 86 - 85 --- 89 - 86 --- 87 - 86 ---- 92 - 86 --- 88 - 87 --- 93 - 87 --- 96 - 87 --- 97 - 89 --- 90 - 89 --- 91 + 85 ---- 88 + 85 --- 87 + 86 --- 89 + 86 --- 90 + 86 --- 91 + 88 --- 89 + 88 --- 90 + 88 --- 91 92 --- 93 - 92 --- 94 - 92 --- 95 - 92 --- 96 - 92 --- 97 - 98 --- 99 - 99 --- 100 - 99 ---- 102 - 99 --- 101 - 100 --- 103 - 100 --- 106 - 100 --- 107 + 93 --- 94 + 93 ---- 96 + 93 --- 95 + 94 --- 97 + 94 --- 100 + 94 --- 101 + 96 --- 97 + 96 --- 98 + 96 --- 99 + 96 --- 100 + 96 --- 101 + 99 --- 102 102 --- 103 + 102 ---- 105 102 --- 104 - 102 --- 105 - 102 --- 106 - 102 --- 107 + 103 --- 106 + 103 --- 107 + 103 --- 108 + 105 --- 106 + 105 --- 107 105 --- 108 - 108 --- 109 - 108 --- 110 - 108 --- 111 - 108 --- 112 - 108 --- 113 - 108 --- 114 - 108 --- 115 - 108 ---- 117 - 108 --- 116 - 109 --- 124 - 109 --- 138 - 109 --- 139 - 110 --- 123 - 110 --- 136 - 110 --- 137 - 111 --- 122 - 111 --- 134 - 111 --- 135 - 112 --- 121 - 112 --- 132 - 112 --- 133 - 113 --- 120 - 113 --- 130 - 113 --- 131 - 114 --- 119 - 114 --- 128 - 114 --- 129 - 115 --- 118 - 115 --- 126 - 115 --- 127 - 117 --- 118 - 117 --- 119 - 117 --- 120 - 117 --- 121 - 117 --- 122 - 117 --- 123 - 117 --- 124 - 117 --- 125 - 117 --- 126 - 117 --- 127 - 117 --- 128 - 117 --- 129 - 117 --- 130 - 117 --- 131 - 117 --- 132 - 117 --- 133 - 117 --- 134 - 117 --- 135 - 117 --- 136 - 117 --- 137 - 117 --- 138 - 117 --- 139 - 140 --- 141 - 141 --- 142 - 141 ---- 144 - 141 --- 143 - 142 --- 145 - 142 --- 148 - 142 --- 149 - 144 --- 145 - 144 --- 146 - 144 --- 147 - 144 --- 148 - 144 --- 149 - 150 --- 151 - 150 --- 154 - 151 --- 152 - 151 ---- 157 - 151 --- 153 - 152 --- 158 - 152 --- 161 - 152 --- 162 - 154 --- 155 - 154 --- 156 + 109 --- 110 + 110 --- 111 + 110 ---- 113 + 110 --- 112 + 111 --- 114 + 111 --- 117 + 111 --- 118 + 111 --- 119 + 113 --- 114 + 113 --- 115 + 113 --- 116 + 113 --- 117 + 113 --- 118 + 115 --- 121 + 116 --- 149 + 117 <--x 120 + 121 --- 122 + 121 --- 123 + 121 --- 124 + 121 --- 125 + 121 --- 126 + 121 --- 127 + 121 ---- 129 + 121 --- 128 + 122 --- 135 + 122 --- 147 + 122 --- 148 + 123 --- 134 + 123 --- 145 + 123 --- 146 + 124 --- 133 + 124 --- 143 + 124 --- 144 + 125 --- 132 + 125 --- 141 + 125 --- 142 + 126 --- 131 + 126 --- 139 + 126 --- 140 + 127 --- 130 + 127 --- 137 + 127 --- 138 + 129 --- 130 + 129 --- 131 + 129 --- 132 + 129 --- 133 + 129 --- 134 + 129 --- 135 + 129 --- 136 + 129 --- 137 + 129 --- 138 + 129 --- 139 + 129 --- 140 + 129 --- 141 + 129 --- 142 + 129 --- 143 + 129 --- 144 + 129 --- 145 + 129 --- 146 + 129 --- 147 + 129 --- 148 + 149 --- 150 + 149 ---- 152 + 149 --- 151 + 150 --- 153 + 150 --- 155 + 150 --- 156 + 152 --- 153 + 152 --- 154 + 152 --- 155 + 152 --- 156 157 --- 158 - 157 --- 159 - 157 --- 160 - 157 --- 161 - 157 --- 162 - 163 --- 164 - 163 --- 172 - 164 --- 165 - 164 --- 166 + 158 --- 159 + 158 --- 160 + 158 --- 161 + 158 --- 162 + 158 --- 163 + 158 --- 164 + 158 ---- 166 + 158 --- 165 + 159 --- 172 + 159 --- 185 + 159 --- 186 + 160 --- 171 + 160 --- 183 + 160 --- 184 + 161 --- 170 + 161 --- 181 + 161 --- 182 + 162 --- 169 + 162 --- 179 + 162 --- 180 + 163 --- 168 + 163 --- 177 + 163 --- 178 164 --- 167 - 164 --- 168 - 164 --- 169 - 164 --- 170 - 164 ---- 175 - 164 --- 171 - 165 --- 176 - 165 --- 184 - 165 --- 185 + 164 --- 175 + 164 --- 176 + 166 --- 167 + 166 --- 168 + 166 --- 169 + 166 --- 170 + 166 --- 171 + 166 --- 172 + 166 --- 173 + 166 --- 174 + 166 --- 175 + 166 --- 176 166 --- 177 + 166 --- 178 + 166 --- 179 + 166 --- 180 + 166 --- 181 + 166 --- 182 + 166 --- 183 + 166 --- 184 + 166 --- 185 166 --- 186 - 166 --- 187 - 167 --- 178 - 167 --- 188 - 167 --- 189 - 168 --- 179 - 168 --- 190 - 168 --- 191 - 169 --- 180 - 169 --- 192 - 169 --- 193 - 170 --- 181 - 170 --- 194 - 170 --- 195 - 172 --- 173 - 172 --- 174 - 175 --- 176 - 175 --- 177 - 175 --- 178 - 175 --- 179 - 175 --- 180 - 175 --- 181 - 175 --- 182 - 175 --- 183 - 175 --- 184 - 175 --- 185 - 175 --- 186 - 175 --- 187 - 175 --- 188 - 175 --- 189 - 175 --- 190 - 175 --- 191 - 175 --- 192 - 175 --- 193 - 175 --- 194 - 175 --- 195 - 105 <--x 196 + 174 --- 187 + 187 --- 188 + 187 ---- 190 + 187 --- 189 + 188 --- 191 + 188 --- 192 + 188 --- 193 + 190 --- 191 + 190 --- 192 + 190 --- 193 + 194 --- 195 + 195 --- 196 + 195 ---- 198 + 195 --- 197 + 196 --- 199 + 196 --- 202 + 196 --- 203 + 198 --- 199 + 198 --- 200 + 198 --- 201 + 198 --- 202 + 198 --- 203 + 201 --- 204 + 204 --- 205 + 204 ---- 207 + 204 --- 206 + 205 --- 208 + 205 --- 209 + 205 --- 210 + 207 --- 208 + 207 --- 209 + 207 --- 210 + 211 --- 212 + 212 --- 213 + 212 ---- 215 + 212 --- 214 + 213 --- 216 + 213 --- 219 + 213 --- 220 + 215 --- 216 + 215 --- 217 + 215 --- 218 + 215 --- 219 + 215 --- 220 + 218 --- 221 + 221 --- 222 + 221 ---- 224 + 221 --- 223 + 222 --- 225 + 222 --- 226 + 222 --- 227 + 224 --- 225 + 224 --- 226 + 224 --- 227 + 11 <--x 228 + 12 <--x 229 + 28 <--x 230 + 48 <--x 231 + 49 <--x 232 + 65 <--x 233 + 82 <--x 234 + 99 <--x 235 + 115 <--x 236 + 116 <--x 237 + 174 <--x 238 + 201 <--x 239 + 218 <--x 240 ``` diff --git a/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/ast.snap b/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/ast.snap index a7a9c12f3..407ad860f 100644 --- a/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/ast.snap @@ -6,1344 +6,406 @@ description: Result of parsing pipe-flange-assembly.kcl "Ok": { "body": [ { - "commentStart": 379, - "declaration": { - "commentStart": 402, + "commentStart": 378, + "end": 0, + "path": { + "type": "Kcl", + "filename": "globals.kcl" + }, + "preComments": [ + "// import constants" + ], + "selector": { + "commentStart": 407, "end": 0, - "id": { - "commentStart": 402, + "start": 0, + "type": "Glob" + }, + "start": 0, + "type": "ImportStatement", + "type": "ImportStatement" + }, + { + "commentStart": 427, + "end": 0, + "path": { + "type": "Kcl", + "filename": "68095k348-flange.kcl" + }, + "preComments": [ + "", + "", + "// import parts" + ], + "selector": { + "type": "List", + "items": [ + { + "alias": null, + "commentStart": 452, + "end": 0, + "name": { + "commentStart": 452, + "end": 0, + "name": "flange", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ImportItem" + } + ] + }, + "start": 0, + "type": "ImportStatement", + "type": "ImportStatement" + }, + { + "commentStart": 487, + "end": 0, + "path": { + "type": "Kcl", + "filename": "9472k188-gasket.kcl" + }, + "selector": { + "type": "List", + "items": [ + { + "alias": null, + "commentStart": 494, + "end": 0, + "name": { + "commentStart": 494, + "end": 0, + "name": "gasket", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ImportItem" + } + ] + }, + "start": 0, + "type": "ImportStatement", + "type": "ImportStatement" + }, + { + "commentStart": 528, + "end": 0, + "path": { + "type": "Kcl", + "filename": "98017a257-washer.kcl" + }, + "selector": { + "type": "List", + "items": [ + { + "alias": null, + "commentStart": 535, + "end": 0, + "name": { + "commentStart": 535, + "end": 0, + "name": "washer", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ImportItem" + } + ] + }, + "start": 0, + "type": "ImportStatement", + "type": "ImportStatement" + }, + { + "commentStart": 570, + "end": 0, + "path": { + "type": "Kcl", + "filename": "91251a404-bolt.kcl" + }, + "selector": { + "type": "List", + "items": [ + { + "alias": null, + "commentStart": 577, + "end": 0, + "name": { + "commentStart": 577, + "end": 0, + "name": "bolt", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ImportItem" + } + ] + }, + "start": 0, + "type": "ImportStatement", + "type": "ImportStatement" + }, + { + "commentStart": 608, + "end": 0, + "path": { + "type": "Kcl", + "filename": "95479a127-hex-nut.kcl" + }, + "selector": { + "type": "List", + "items": [ + { + "alias": null, + "commentStart": 615, + "end": 0, + "name": { + "commentStart": 615, + "end": 0, + "name": "hexNut", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ImportItem" + } + ] + }, + "start": 0, + "type": "ImportStatement", + "type": "ImportStatement" + }, + { + "commentStart": 651, + "end": 0, + "path": { + "type": "Kcl", + "filename": "1120t74-pipe.kcl" + }, + "selector": { + "type": "List", + "items": [ + { + "alias": null, + "commentStart": 658, + "end": 0, + "name": { + "commentStart": 658, + "end": 0, + "name": "pipe", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ImportItem" + } + ] + }, + "start": 0, + "type": "ImportStatement", + "type": "ImportStatement" + }, + { + "commentStart": 686, + "end": 0, + "expression": { + "arguments": [], + "callee": { + "commentStart": 705, "end": 0, - "name": "flangeThickness", + "name": "flange", "start": 0, "type": "Identifier" }, - "init": { - "commentStart": 420, - "end": 0, - "raw": ".125", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.125, - "suffix": "None" - } - }, + "commentStart": 705, + "end": 0, "start": 0, - "type": "VariableDeclarator" + "type": "CallExpression", + "type": "CallExpression" }, - "end": 0, - "kind": "const", "preComments": [ - "// Define constants" + "", + "", + "// place flanges" ], "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" + "type": "ExpressionStatement", + "type": "ExpressionStatement" }, { - "commentStart": 425, - "declaration": { - "commentStart": 425, - "end": 0, - "id": { - "commentStart": 425, - "end": 0, - "name": "flangeBaseDia", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 441, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, + "commentStart": 714, "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 443, - "declaration": { - "commentStart": 443, - "end": 0, - "id": { - "commentStart": 443, - "end": 0, - "name": "boreHeight", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 456, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 458, - "declaration": { - "commentStart": 458, - "end": 0, - "id": { - "commentStart": 458, - "end": 0, - "name": "flangePipeDia", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 474, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 476, - "declaration": { - "commentStart": 476, - "end": 0, - "id": { - "commentStart": 476, - "end": 0, - "name": "mountingHoleDia", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 494, - "end": 0, - "raw": "0.425", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.425, - "suffix": "None" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 500, - "declaration": { - "commentStart": 500, - "end": 0, - "id": { - "commentStart": 500, - "end": 0, - "name": "screwDia", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 511, - "end": 0, - "raw": "0.375", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.375, - "suffix": "None" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 517, - "declaration": { - "commentStart": 517, - "end": 0, - "id": { - "commentStart": 517, - "end": 0, - "name": "tol", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 523, - "end": 0, - "raw": "0.010", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.01, - "suffix": "None" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 529, - "declaration": { - "commentStart": 529, - "end": 0, - "id": { - "commentStart": 529, - "end": 0, - "name": "hexNutScale", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 543, - "end": 0, - "raw": "0.90", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.9, - "suffix": "None" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 548, - "declaration": { - "commentStart": 548, - "end": 0, - "id": { - "commentStart": 548, - "end": 0, - "name": "wallThickness", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 564, - "end": 0, - "raw": "0.5", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.5, - "suffix": "None" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 568, - "declaration": { - "commentStart": 568, - "end": 0, - "id": { - "commentStart": 568, - "end": 0, - "name": "screwLength", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 582, - "end": 0, - "raw": "1.125", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.125, - "suffix": "None" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 588, - "declaration": { - "commentStart": 588, - "end": 0, - "id": { - "commentStart": 588, - "end": 0, - "name": "washerThickness", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 606, - "end": 0, - "raw": "0.0625", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0625, - "suffix": "None" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 613, - "declaration": { - "commentStart": 613, - "end": 0, - "id": { - "commentStart": 613, - "end": 0, - "name": "screwStart", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 626, - "elements": [ - { - "commentStart": 630, + "expression": { + "body": [ + { + "arguments": [], + "callee": { + "commentStart": 714, "end": 0, - "raw": "0", + "name": "flange", "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } + "type": "Identifier" }, - { - "commentStart": 635, - "end": 0, - "left": { - "commentStart": 635, - "end": 0, - "name": "flangeThickness", - "start": 0, - "type": "Identifier", - "type": "Identifier" + "commentStart": 714, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 735, + "end": 0, + "name": "axis", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 742, + "elements": [ + { + "commentStart": 743, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 746, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + { + "commentStart": 749, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } }, - "operator": "+", - "right": { - "commentStart": 653, - "end": 0, - "name": "washerThickness", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - { - "commentStart": 672, - "end": 0, - "raw": "1.375", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.375, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 680, - "declaration": { - "commentStart": 680, - "end": 0, - "id": { - "commentStart": 680, - "end": 0, - "name": "capRatio", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 691, - "end": 0, - "left": { - "commentStart": 691, - "end": 0, - "raw": ".190", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.19, - "suffix": "None" - } - }, - "operator": "/", - "right": { - "commentStart": 698, - "end": 0, - "raw": ".313", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.313, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 702, - "declaration": { - "commentStart": 739, - "end": 0, - "id": { - "commentStart": 739, - "end": 0, - "name": "hexRatio", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 750, - "end": 0, - "left": { - "commentStart": 750, - "end": 0, - "left": { - "commentStart": 750, - "end": 0, - "raw": "5", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 5.0, - "suffix": "None" - } - }, - "operator": "/", - "right": { - "commentStart": 754, - "end": 0, - "raw": "32", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 32.0, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "operator": "/", - "right": { - "commentStart": 759, - "end": 0, - "raw": ".190", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.19, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 763, - "declaration": { - "commentStart": 800, - "end": 0, - "id": { - "commentStart": 800, - "end": 0, - "name": "hexStartingAngle", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 819, - "end": 0, - "raw": "210", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 210.0, - "suffix": "None" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 822, - "declaration": { - "commentStart": 863, - "end": 0, - "id": { - "commentStart": 863, - "end": 0, - "name": "hexInteriorAngle", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 882, - "end": 0, - "raw": "120", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 120.0, - "suffix": "None" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 885, - "declaration": { - "commentStart": 897, - "end": 0, - "id": { - "commentStart": 897, - "end": 0, - "name": "hexChangeAngle", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 914, - "end": 0, - "left": { - "commentStart": 914, - "end": 0, - "raw": "180", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 180.0, - "suffix": "None" - } - }, - "operator": "-", - "right": { - "commentStart": 920, - "end": 0, - "name": "hexInteriorAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 936, - "declaration": { - "commentStart": 950, - "end": 0, - "id": { - "commentStart": 950, - "end": 0, - "name": "screwPlane", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 963, - "end": 0, - "properties": [ - { - "commentStart": 967, - "end": 0, - "key": { - "commentStart": 967, - "end": 0, - "name": "plane", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 975, - "end": 0, - "properties": [ - { - "commentStart": 981, - "end": 0, - "key": { - "commentStart": 981, - "end": 0, - "name": "origin", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 990, - "end": 0, - "properties": [ - { - "commentStart": 998, - "end": 0, - "key": { - "commentStart": 998, - "end": 0, - "name": "x", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1002, - "computed": false, - "end": 0, - "object": { - "commentStart": 1002, - "end": 0, - "name": "screwStart", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 1013, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - } - }, - { - "commentStart": 1023, - "end": 0, - "key": { - "commentStart": 1023, - "end": 0, - "name": "y", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1027, - "computed": false, - "end": 0, - "object": { - "commentStart": 1027, - "end": 0, - "name": "screwStart", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 1038, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - } - }, - { - "commentStart": 1048, - "end": 0, - "key": { - "commentStart": 1048, - "end": 0, - "name": "z", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1052, - "computed": false, - "end": 0, - "object": { - "commentStart": 1052, - "end": 0, - "name": "screwStart", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 1063, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - }, - { - "commentStart": 1077, - "end": 0, - "key": { - "commentStart": 1077, - "end": 0, - "name": "xAxis", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1085, - "end": 0, - "properties": [ - { - "commentStart": 1087, - "end": 0, - "key": { - "commentStart": 1087, - "end": 0, - "name": "x", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1091, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - } - }, - { - "commentStart": 1094, - "end": 0, - "key": { - "commentStart": 1094, - "end": 0, - "name": "y", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1098, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 1101, - "end": 0, - "key": { - "commentStart": 1101, - "end": 0, - "name": "z", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1105, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - }, - { - "commentStart": 1114, - "end": 0, - "key": { - "commentStart": 1114, - "end": 0, - "name": "yAxis", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1122, - "end": 0, - "properties": [ - { - "commentStart": 1124, - "end": 0, - "key": { - "commentStart": 1124, - "end": 0, - "name": "x", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1128, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 1131, - "end": 0, - "key": { - "commentStart": 1131, - "end": 0, - "name": "y", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1135, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 1138, - "end": 0, - "key": { - "commentStart": 1138, - "end": 0, - "name": "z", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1142, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - }, - { - "commentStart": 1151, - "end": 0, - "key": { - "commentStart": 1151, - "end": 0, - "name": "zAxis", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1159, - "end": 0, - "properties": [ - { - "commentStart": 1161, - "end": 0, - "key": { - "commentStart": 1161, - "end": 0, - "name": "x", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1165, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 1168, - "end": 0, - "key": { - "commentStart": 1168, - "end": 0, - "name": "y", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1172, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - } - }, - { - "commentStart": 1175, - "end": 0, - "key": { - "commentStart": 1175, - "end": 0, - "name": "z", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1179, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } + { + "type": "LabeledArg", + "label": { + "commentStart": 753, + "end": 0, + "name": "angle", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 761, + "end": 0, + "raw": "180", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 180.0, + "suffix": "None" } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" + } } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 1188, - "declaration": { - "commentStart": 1193, - "end": 0, - "id": { - "commentStart": 1193, - "end": 0, - "name": "capScrew", - "start": 0, - "type": "Identifier" - }, - "init": { - "body": { - "body": [ + ], + "callee": { + "commentStart": 728, + "end": 0, + "name": "rotate", + "start": 0, + "type": "Identifier" + }, + "commentStart": 728, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ { - "commentStart": 1226, - "declaration": { - "commentStart": 1226, + "type": "LabeledArg", + "label": { + "commentStart": 781, "end": 0, - "id": { - "commentStart": 1226, - "end": 0, - "name": "headLength", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 1239, - "end": 0, - "name": "dia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, + "name": "translate", "start": 0, - "type": "VariableDeclarator" + "type": "Identifier" }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 1242, - "declaration": { - "commentStart": 1253, - "end": 0, - "id": { - "commentStart": 1253, - "end": 0, - "name": "wallToWallLength", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 1272, - "end": 0, - "left": { - "commentStart": 1272, + "arg": { + "commentStart": 793, + "elements": [ + { + "commentStart": 794, "end": 0, - "name": "hexRatio", + "raw": "0", "start": 0, - "type": "Identifier", - "type": "Identifier" + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } }, - "operator": "*", - "right": { - "commentStart": 1283, + { + "commentStart": 797, "end": 0, - "name": "dia", + "raw": "0", "start": 0, - "type": "Identifier", - "type": "Identifier" + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 1289, - "declaration": { - "commentStart": 1289, - "end": 0, - "id": { - "commentStart": 1289, - "end": 0, - "name": "headDia", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 1299, - "end": 0, - "left": { - "commentStart": 1299, - "end": 0, - "name": "dia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 1305, - "end": 0, - "name": "capRatio", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 1316, - "declaration": { - "commentStart": 1316, - "end": 0, - "id": { - "commentStart": 1316, - "end": 0, - "name": "hexWallLength", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 1332, - "end": 0, - "left": { - "commentStart": 1332, + { + "commentStart": 800, "end": 0, "left": { - "commentStart": 1332, + "commentStart": 800, "end": 0, "left": { - "commentStart": 1332, + "commentStart": 800, "end": 0, - "name": "wallToWallLength", + "name": "flangeBackHeight", "start": 0, "type": "Identifier", "type": "Identifier" }, - "operator": "/", + "operator": "*", "right": { - "commentStart": 1351, + "commentStart": 817, "end": 0, "raw": "2", "start": 0, @@ -1358,3734 +420,259 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, - "operator": "*", + "operator": "+", "right": { - "commentStart": 1355, + "commentStart": 821, "end": 0, - "raw": "1", + "name": "gasketThickness", "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } + "type": "Identifier", + "type": "Identifier" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" - }, - "operator": "/", - "right": { - "arguments": [ - { - "arguments": [ - { - "commentStart": 1373, - "end": 0, - "raw": "30", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 30.0, - "suffix": "None" - } - } - ], - "callee": { - "commentStart": 1363, - "end": 0, - "name": "toRadians", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1363, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - } - ], - "callee": { - "commentStart": 1359, - "end": 0, - "name": "cos", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1359, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 1377, - "declaration": { - "commentStart": 1442, - "end": 0, - "id": { - "commentStart": 1442, - "end": 0, - "name": "capHeadLength", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 1458, - "end": 0, - "name": "dia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "preComments": [ - "// Length of Cap Head is always equal to diameter" - ], - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 1463, - "declaration": { - "commentStart": 1503, - "end": 0, - "id": { - "commentStart": 1503, - "end": 0, - "name": "screwHeadSketch", - "start": 0, - "type": "Identifier" - }, - "init": { - "body": [ - { - "arguments": [ - { - "commentStart": 1535, - "end": 0, - "name": "screwPlane", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - ], - "callee": { - "commentStart": 1521, - "end": 0, - "name": "startSketchOn", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1521, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 1571, - "end": 0, - "name": "center", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 1580, - "elements": [ - { - "commentStart": 1581, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 1584, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 1597, - "end": 0, - "name": "radius", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 1606, - "end": 0, - "left": { - "commentStart": 1606, - "end": 0, - "name": "headDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 1616, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - } - ], - "callee": { - "commentStart": 1554, - "end": 0, - "name": "circle", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1554, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - } - ], - "commentStart": 1521, - "end": 0, - "nonCodeMeta": { - "nonCodeNodes": { - "1": [ - { - "commentStart": 1628, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Extrude the screw head sketch", - "style": "line" - } - } - ] - }, - "startNodes": [] - }, - "start": 0, - "type": "PipeExpression", - "type": "PipeExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "preComments": [ - "", - "", - "// Create the head of the cap screw" - ], - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 1665, - "declaration": { - "commentStart": 1665, - "end": 0, - "id": { - "commentStart": 1665, - "end": 0, - "name": "screwHead", - "start": 0, - "type": "Identifier" - }, - "init": { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 1702, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 1711, - "end": 0, - "name": "dia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "callee": { - "commentStart": 1677, - "end": 0, - "name": "extrude", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1677, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": { - "commentStart": 1685, - "end": 0, - "name": "screwHeadSketch", - "start": 0, - "type": "Identifier", - "type": "Identifier" } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 1717, - "declaration": { - "commentStart": 1779, + ], "end": 0, - "id": { - "commentStart": 1779, - "end": 0, - "name": "hexPatternSketch", - "start": 0, - "type": "Identifier" - }, - "init": { - "body": [ - { - "arguments": [ - { - "commentStart": 1812, - "end": 0, - "name": "screwHead", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - { - "commentStart": 1823, - "end": 0, - "raw": "'end'", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": "end" - } - ], - "callee": { - "commentStart": 1798, - "end": 0, - "name": "startSketchOn", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1798, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 1852, - "elements": [ - { - "commentStart": 1863, - "end": 0, - "left": { - "argument": { - "commentStart": 1864, - "computed": false, - "end": 0, - "object": { - "commentStart": 1864, - "end": 0, - "name": "start", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 1870, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - }, - "commentStart": 1863, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - }, - "operator": "+", - "right": { - "commentStart": 1875, - "end": 0, - "left": { - "commentStart": 1875, - "end": 0, - "name": "wallToWallLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 1894, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - { - "commentStart": 1906, - "computed": false, - "end": 0, - "object": { - "commentStart": 1906, - "end": 0, - "name": "start", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 1912, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - }, - { - "commentStart": 1925, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 1837, - "end": 0, - "name": "startProfileAt", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1837, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 1941, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 1950, - "end": 0, - "left": { - "argument": { - "commentStart": 1951, - "end": 0, - "name": "hexWallLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "commentStart": 1950, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - }, - "operator": "/", - "right": { - "commentStart": 1967, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - } - ], - "callee": { - "commentStart": 1935, - "end": 0, - "name": "yLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1935, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "commentStart": 1988, - "end": 0, - "properties": [ - { - "commentStart": 1999, - "end": 0, - "key": { - "commentStart": 1999, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2007, - "end": 0, - "name": "hexStartingAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - }, - { - "commentStart": 2034, - "end": 0, - "key": { - "commentStart": 2034, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2043, - "end": 0, - "name": "hexWallLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 2067, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 1977, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1977, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 2088, - "end": 0, - "properties": [ - { - "commentStart": 2099, - "end": 0, - "key": { - "commentStart": 2099, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2107, - "end": 0, - "left": { - "commentStart": 2107, - "end": 0, - "name": "hexStartingAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "-", - "right": { - "commentStart": 2126, - "end": 0, - "name": "hexChangeAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - }, - { - "commentStart": 2151, - "end": 0, - "key": { - "commentStart": 2151, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2160, - "end": 0, - "name": "hexWallLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 2184, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 2077, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 2077, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 2205, - "end": 0, - "properties": [ - { - "commentStart": 2216, - "end": 0, - "key": { - "commentStart": 2216, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2224, - "end": 0, - "left": { - "commentStart": 2224, - "end": 0, - "name": "hexStartingAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "-", - "right": { - "commentStart": 2244, - "end": 0, - "left": { - "commentStart": 2244, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "operator": "*", - "right": { - "commentStart": 2248, - "end": 0, - "name": "hexChangeAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - }, - { - "commentStart": 2274, - "end": 0, - "key": { - "commentStart": 2274, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2283, - "end": 0, - "name": "hexWallLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 2307, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 2194, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 2194, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 2328, - "end": 0, - "properties": [ - { - "commentStart": 2339, - "end": 0, - "key": { - "commentStart": 2339, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2347, - "end": 0, - "left": { - "commentStart": 2347, - "end": 0, - "name": "hexStartingAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "-", - "right": { - "commentStart": 2367, - "end": 0, - "left": { - "commentStart": 2367, - "end": 0, - "raw": "3", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 3.0, - "suffix": "None" - } - }, - "operator": "*", - "right": { - "commentStart": 2371, - "end": 0, - "name": "hexChangeAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - }, - { - "commentStart": 2397, - "end": 0, - "key": { - "commentStart": 2397, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2406, - "end": 0, - "name": "hexWallLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 2430, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 2317, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 2317, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 2451, - "end": 0, - "properties": [ - { - "commentStart": 2462, - "end": 0, - "key": { - "commentStart": 2462, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2470, - "end": 0, - "left": { - "commentStart": 2470, - "end": 0, - "name": "hexStartingAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "-", - "right": { - "commentStart": 2490, - "end": 0, - "left": { - "commentStart": 2490, - "end": 0, - "raw": "4", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 4.0, - "suffix": "None" - } - }, - "operator": "*", - "right": { - "commentStart": 2494, - "end": 0, - "name": "hexChangeAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - }, - { - "commentStart": 2520, - "end": 0, - "key": { - "commentStart": 2520, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2529, - "end": 0, - "name": "hexWallLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 2553, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 2440, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 2440, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [], - "callee": { - "commentStart": 2563, - "end": 0, - "name": "close", - "start": 0, - "type": "Identifier" - }, - "commentStart": 2563, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - } - ], - "commentStart": 1798, - "end": 0, - "start": 0, - "type": "PipeExpression", - "type": "PipeExpression" - }, "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "preComments": [ - "", - "", - "// Define the sketch of the hex pattern on the screw head" - ], - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 2573, - "declaration": { - "commentStart": 2573, - "end": 0, - "id": { - "commentStart": 2573, - "end": 0, - "name": "hexPattern", - "start": 0, - "type": "Identifier" - }, - "init": { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 2612, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 2621, - "end": 0, - "left": { - "argument": { - "commentStart": 2622, - "end": 0, - "name": "headLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "commentStart": 2621, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - }, - "operator": "*", - "right": { - "commentStart": 2635, - "end": 0, - "raw": "0.75", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.75, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - } - ], - "callee": { - "commentStart": 2586, - "end": 0, - "name": "extrude", - "start": 0, - "type": "Identifier" - }, - "commentStart": 2586, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": { - "commentStart": 2594, - "end": 0, - "name": "hexPatternSketch", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "argument": { - "commentStart": 2651, - "end": 0, - "name": "hexPattern", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "commentStart": 2640, - "end": 0, - "start": 0, - "type": "ReturnStatement", - "type": "ReturnStatement" - } - ], - "commentStart": 1222, - "end": 0, - "nonCodeMeta": { - "nonCodeNodes": { - "0": [ - { - "commentStart": 1242, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "inlineComment", - "value": "inch", - "style": "line" - } - } - ], - "3": [ - { - "commentStart": 1377, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "inlineComment", - "value": "inch", - "style": "line" - } - }, - { - "commentStart": 1385, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - } - ], - "8": [ - { - "commentStart": 2640, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - } - ] - }, - "startNodes": [] - }, - "start": 0 - }, - "commentStart": 1201, - "end": 0, - "params": [ - { - "type": "Parameter", - "identifier": { - "commentStart": 1202, - "end": 0, - "name": "start", - "start": 0, - "type": "Identifier" - } - }, - { - "type": "Parameter", - "identifier": { - "commentStart": 1209, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - } - }, - { - "type": "Parameter", - "identifier": { - "commentStart": 1217, - "end": 0, - "name": "dia", - "start": 0, - "type": "Identifier" - } - } - ], - "start": 0, - "type": "FunctionExpression", - "type": "FunctionExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "fn", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 2663, - "declaration": { - "commentStart": 2665, - "end": 0, - "id": { - "commentStart": 2665, - "end": 0, - "name": "workingPlane", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 2680, - "end": 0, - "properties": [ - { - "commentStart": 2684, - "end": 0, - "key": { - "commentStart": 2684, - "end": 0, - "name": "plane", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2692, - "end": 0, - "properties": [ - { - "commentStart": 2698, - "end": 0, - "key": { - "commentStart": 2698, - "end": 0, - "name": "origin", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2707, - "end": 0, - "properties": [ - { - "commentStart": 2709, - "end": 0, - "key": { - "commentStart": 2709, - "end": 0, - "name": "x", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2713, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 2716, - "end": 0, - "key": { - "commentStart": 2716, - "end": 0, - "name": "y", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2720, - "end": 0, - "name": "flangeThickness", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - }, - { - "commentStart": 2737, - "end": 0, - "key": { - "commentStart": 2737, - "end": 0, - "name": "z", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2741, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - }, - { - "commentStart": 2750, - "end": 0, - "key": { - "commentStart": 2750, - "end": 0, - "name": "xAxis", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2758, - "end": 0, - "properties": [ - { - "commentStart": 2760, - "end": 0, - "key": { - "commentStart": 2760, - "end": 0, - "name": "x", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2764, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 2767, - "end": 0, - "key": { - "commentStart": 2767, - "end": 0, - "name": "y", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2771, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 2774, - "end": 0, - "key": { - "commentStart": 2774, - "end": 0, - "name": "z", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2778, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - }, - { - "commentStart": 2787, - "end": 0, - "key": { - "commentStart": 2787, - "end": 0, - "name": "yAxis", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2795, - "end": 0, - "properties": [ - { - "commentStart": 2797, - "end": 0, - "key": { - "commentStart": 2797, - "end": 0, - "name": "x", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2801, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - } - }, - { - "commentStart": 2804, - "end": 0, - "key": { - "commentStart": 2804, - "end": 0, - "name": "y", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2808, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 2811, - "end": 0, - "key": { - "commentStart": 2811, - "end": 0, - "name": "z", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2815, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - }, - { - "commentStart": 2824, - "end": 0, - "key": { - "commentStart": 2824, - "end": 0, - "name": "zAxis", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2832, - "end": 0, - "properties": [ - { - "commentStart": 2834, - "end": 0, - "key": { - "commentStart": 2834, - "end": 0, - "name": "x", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2838, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 2841, - "end": 0, - "key": { - "commentStart": 2841, - "end": 0, - "name": "y", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2845, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - } - }, - { - "commentStart": 2848, - "end": 0, - "key": { - "commentStart": 2848, - "end": 0, - "name": "z", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 2852, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 2861, - "declaration": { - "commentStart": 2885, - "end": 0, - "id": { - "commentStart": 2885, - "end": 0, - "name": "washer", - "start": 0, - "type": "Identifier" - }, - "init": { - "body": { - "body": [ - { - "commentStart": 2935, - "declaration": { - "commentStart": 2935, - "end": 0, - "id": { - "commentStart": 2935, - "end": 0, - "name": "washerSketch", - "start": 0, - "type": "Identifier" - }, - "init": { - "body": [ - { - "arguments": [ - { - "commentStart": 2964, - "end": 0, - "name": "plane", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - ], - "callee": { - "commentStart": 2950, - "end": 0, - "name": "startSketchOn", - "start": 0, - "type": "Identifier" - }, - "commentStart": 2950, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 2995, - "end": 0, - "name": "center", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 3004, - "elements": [ - { - "commentStart": 3005, - "computed": false, - "end": 0, - "object": { - "commentStart": 3005, - "end": 0, - "name": "start", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 3011, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - }, - { - "commentStart": 3015, - "computed": false, - "end": 0, - "object": { - "commentStart": 3015, - "end": 0, - "name": "start", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 3021, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 3035, - "end": 0, - "name": "radius", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 3044, - "end": 0, - "left": { - "commentStart": 3044, - "end": 0, - "name": "outerDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 3055, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - } - ], - "callee": { - "commentStart": 2978, - "end": 0, - "name": "circle", - "start": 0, - "type": "Identifier" - }, - "commentStart": 2978, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 3095, - "end": 0, - "name": "center", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 3104, - "elements": [ - { - "commentStart": 3105, - "computed": false, - "end": 0, - "object": { - "commentStart": 3105, - "end": 0, - "name": "start", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 3111, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - }, - { - "commentStart": 3115, - "computed": false, - "end": 0, - "object": { - "commentStart": 3115, - "end": 0, - "name": "start", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 3121, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 3135, - "end": 0, - "name": "radius", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 3144, - "end": 0, - "left": { - "commentStart": 3144, - "end": 0, - "name": "innerDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 3155, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - } - ], - "callee": { - "commentStart": 3078, - "end": 0, - "name": "circle", - "start": 0, - "type": "Identifier" - }, - "commentStart": 3078, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "commentStart": 3167, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 3073, - "end": 0, - "name": "hole", - "start": 0, - "type": "Identifier" - }, - "commentStart": 3073, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 3185, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 3194, - "end": 0, - "name": "thk", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "callee": { - "commentStart": 3177, - "end": 0, - "name": "extrude", - "start": 0, - "type": "Identifier" - }, - "commentStart": 3177, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - } - ], - "commentStart": 2950, - "end": 0, - "start": 0, - "type": "PipeExpression", - "type": "PipeExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "argument": { - "commentStart": 3208, - "end": 0, - "name": "washerSketch", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "commentStart": 3201, - "end": 0, - "start": 0, - "type": "ReturnStatement", - "type": "ReturnStatement" - } - ], - "commentStart": 2931, - "end": 0, - "start": 0 - }, - "commentStart": 2891, - "end": 0, - "params": [ - { - "type": "Parameter", - "identifier": { - "commentStart": 2892, - "end": 0, - "name": "plane", - "start": 0, - "type": "Identifier" - } - }, - { - "type": "Parameter", - "identifier": { - "commentStart": 2899, - "end": 0, - "name": "start", - "start": 0, - "type": "Identifier" - } - }, - { - "type": "Parameter", - "identifier": { - "commentStart": 2906, - "end": 0, - "name": "thk", - "start": 0, - "type": "Identifier" - } - }, - { - "type": "Parameter", - "identifier": { - "commentStart": 2911, - "end": 0, - "name": "innerDia", - "start": 0, - "type": "Identifier" - } - }, - { - "type": "Parameter", - "identifier": { - "commentStart": 2921, - "end": 0, - "name": "outerDia", - "start": 0, - "type": "Identifier" - } - } - ], - "start": 0, - "type": "FunctionExpression", - "type": "FunctionExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "fn", - "preComments": [ - "", - "", - "// Washer function" - ], - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 3222, - "declaration": { - "commentStart": 3247, - "end": 0, - "id": { - "commentStart": 3247, - "end": 0, - "name": "hexNut", - "start": 0, - "type": "Identifier" - }, - "init": { - "body": { - "body": [ - { - "commentStart": 3280, - "declaration": { - "commentStart": 3280, - "end": 0, - "id": { - "commentStart": 3280, - "end": 0, - "name": "hexNutSketch", - "start": 0, - "type": "Identifier" - }, - "init": { - "body": [ - { - "arguments": [ - { - "commentStart": 3309, - "end": 0, - "properties": [ - { - "commentStart": 3320, - "end": 0, - "key": { - "commentStart": 3320, - "end": 0, - "name": "plane", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3328, - "end": 0, - "properties": [ - { - "commentStart": 3341, - "end": 0, - "key": { - "commentStart": 3341, - "end": 0, - "name": "origin", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3350, - "end": 0, - "properties": [ - { - "commentStart": 3365, - "end": 0, - "key": { - "commentStart": 3365, - "end": 0, - "name": "x", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3369, - "computed": false, - "end": 0, - "object": { - "commentStart": 3369, - "end": 0, - "name": "start", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 3375, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - } - }, - { - "commentStart": 3392, - "end": 0, - "key": { - "commentStart": 3392, - "end": 0, - "name": "y", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3396, - "end": 0, - "left": { - "argument": { - "commentStart": 3397, - "end": 0, - "name": "wallThickness", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "commentStart": 3396, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - }, - "operator": "-", - "right": { - "commentStart": 3413, - "end": 0, - "name": "washerThickness", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - }, - { - "commentStart": 3443, - "end": 0, - "key": { - "commentStart": 3443, - "end": 0, - "name": "z", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3447, - "computed": false, - "end": 0, - "object": { - "commentStart": 3447, - "end": 0, - "name": "start", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 3453, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - }, - { - "commentStart": 3481, - "end": 0, - "key": { - "commentStart": 3481, - "end": 0, - "name": "xAxis", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3489, - "end": 0, - "properties": [ - { - "commentStart": 3491, - "end": 0, - "key": { - "commentStart": 3491, - "end": 0, - "name": "x", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3495, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - } - }, - { - "commentStart": 3498, - "end": 0, - "key": { - "commentStart": 3498, - "end": 0, - "name": "y", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3502, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 3505, - "end": 0, - "key": { - "commentStart": 3505, - "end": 0, - "name": "z", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3509, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - }, - { - "commentStart": 3525, - "end": 0, - "key": { - "commentStart": 3525, - "end": 0, - "name": "yAxis", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3533, - "end": 0, - "properties": [ - { - "commentStart": 3535, - "end": 0, - "key": { - "commentStart": 3535, - "end": 0, - "name": "x", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3539, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 3542, - "end": 0, - "key": { - "commentStart": 3542, - "end": 0, - "name": "y", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3546, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 3549, - "end": 0, - "key": { - "commentStart": 3549, - "end": 0, - "name": "z", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3553, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - }, - { - "commentStart": 3569, - "end": 0, - "key": { - "commentStart": 3569, - "end": 0, - "name": "zAxis", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3577, - "end": 0, - "properties": [ - { - "commentStart": 3579, - "end": 0, - "key": { - "commentStart": 3579, - "end": 0, - "name": "x", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3583, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 3586, - "end": 0, - "key": { - "commentStart": 3586, - "end": 0, - "name": "y", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3590, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - } - }, - { - "commentStart": 3593, - "end": 0, - "key": { - "commentStart": 3593, - "end": 0, - "name": "z", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3597, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - ], - "callee": { - "commentStart": 3295, - "end": 0, - "name": "startSketchOn", - "start": 0, - "type": "Identifier" - }, - "commentStart": 3295, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 3644, - "elements": [ - { - "commentStart": 3645, - "end": 0, - "left": { - "commentStart": 3645, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - "operator": "+", - "right": { - "commentStart": 3649, - "end": 0, - "left": { - "commentStart": 3649, - "end": 0, - "name": "innerDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "*", - "right": { - "commentStart": 3660, - "end": 0, - "name": "hexNutScale", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - { - "commentStart": 3673, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - }, - { - "commentStart": 3677, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 3629, - "end": 0, - "name": "startProfileAt", - "start": 0, - "type": "Identifier" - }, - "commentStart": 3629, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 3698, - "end": 0, - "properties": [ - { - "commentStart": 3709, - "end": 0, - "key": { - "commentStart": 3709, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3717, - "end": 0, - "raw": "240", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 240.0, - "suffix": "None" - } - } - }, - { - "commentStart": 3731, - "end": 0, - "key": { - "commentStart": 3731, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3740, - "end": 0, - "left": { - "commentStart": 3740, - "end": 0, - "name": "innerDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "*", - "right": { - "commentStart": 3751, - "end": 0, - "name": "hexNutScale", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 3773, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 3687, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 3687, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 3794, - "end": 0, - "properties": [ - { - "commentStart": 3805, - "end": 0, - "key": { - "commentStart": 3805, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3813, - "end": 0, - "raw": "180", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 180.0, - "suffix": "None" - } - } - }, - { - "commentStart": 3827, - "end": 0, - "key": { - "commentStart": 3827, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3836, - "end": 0, - "left": { - "commentStart": 3836, - "end": 0, - "name": "innerDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "*", - "right": { - "commentStart": 3847, - "end": 0, - "name": "hexNutScale", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 3869, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 3783, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 3783, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 3890, - "end": 0, - "properties": [ - { - "commentStart": 3901, - "end": 0, - "key": { - "commentStart": 3901, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3909, - "end": 0, - "raw": "120", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 120.0, - "suffix": "None" - } - } - }, - { - "commentStart": 3923, - "end": 0, - "key": { - "commentStart": 3923, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 3932, - "end": 0, - "left": { - "commentStart": 3932, - "end": 0, - "name": "innerDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "*", - "right": { - "commentStart": 3943, - "end": 0, - "name": "hexNutScale", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 3965, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 3879, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 3879, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 3986, - "end": 0, - "properties": [ - { - "commentStart": 3997, - "end": 0, - "key": { - "commentStart": 3997, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 4005, - "end": 0, - "raw": "60", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 60.0, - "suffix": "None" - } - } - }, - { - "commentStart": 4018, - "end": 0, - "key": { - "commentStart": 4018, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 4027, - "end": 0, - "left": { - "commentStart": 4027, - "end": 0, - "name": "innerDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "*", - "right": { - "commentStart": 4038, - "end": 0, - "name": "hexNutScale", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 4060, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 3975, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 3975, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 4081, - "end": 0, - "properties": [ - { - "commentStart": 4083, - "end": 0, - "key": { - "commentStart": 4083, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 4091, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 4094, - "end": 0, - "key": { - "commentStart": 4094, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 4103, - "end": 0, - "left": { - "commentStart": 4103, - "end": 0, - "name": "innerDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "*", - "right": { - "commentStart": 4114, - "end": 0, - "raw": ".90", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.9, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 4121, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 4070, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4070, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [], - "callee": { - "commentStart": 4131, - "end": 0, - "name": "close", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4131, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 4168, - "end": 0, - "name": "center", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 4177, - "elements": [ - { - "commentStart": 4178, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 4181, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 4194, - "end": 0, - "name": "radius", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 4203, - "end": 0, - "left": { - "commentStart": 4203, - "end": 0, - "name": "innerDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 4214, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - } - ], - "callee": { - "commentStart": 4151, - "end": 0, - "name": "circle", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4151, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "commentStart": 4226, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 4146, - "end": 0, - "name": "hole", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4146, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 4244, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "arg": { - "argument": { - "commentStart": 4254, - "end": 0, - "name": "thk", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "commentStart": 4253, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - } - } - ], - "callee": { - "commentStart": 4236, - "end": 0, - "name": "extrude", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4236, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - } - ], - "commentStart": 3295, - "end": 0, - "start": 0, - "type": "PipeExpression", - "type": "PipeExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "argument": { - "commentStart": 4268, - "end": 0, - "name": "hexNutSketch", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "commentStart": 4261, - "end": 0, - "start": 0, - "type": "ReturnStatement", - "type": "ReturnStatement" - } - ], - "commentStart": 3276, - "end": 0, - "start": 0 - }, - "commentStart": 3253, - "end": 0, - "params": [ - { - "type": "Parameter", - "identifier": { - "commentStart": 3254, - "end": 0, - "name": "start", - "start": 0, - "type": "Identifier" - } - }, - { - "type": "Parameter", - "identifier": { - "commentStart": 3261, - "end": 0, - "name": "thk", - "start": 0, - "type": "Identifier" - } - }, - { - "type": "Parameter", - "identifier": { - "commentStart": 3266, - "end": 0, - "name": "innerDia", - "start": 0, - "type": "Identifier" - } - } - ], - "start": 0, - "type": "FunctionExpression", - "type": "FunctionExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "fn", - "preComments": [ - "", - "", - "// Hex nut function" - ], - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 4282, - "declaration": { - "commentStart": 4310, - "end": 0, - "id": { - "commentStart": 4310, - "end": 0, - "name": "mountingHolePattern", - "start": 0, - "type": "Identifier" - }, - "init": { - "body": [ - { - "arguments": [ - { - "commentStart": 4346, - "end": 0, - "raw": "'XZ'", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": "XZ" + "type": "ArrayExpression", + "type": "ArrayExpression" } - ], - "callee": { - "commentStart": 4332, - "end": 0, - "name": "startSketchOn", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4332, + } + ], + "callee": { + "commentStart": 771, "end": 0, + "name": "translate", "start": 0, - "type": "CallExpression", - "type": "CallExpression" + "type": "Identifier" }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 4372, - "end": 0, - "name": "center", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 4381, - "elements": [ - { - "commentStart": 4382, - "computed": false, - "end": 0, - "object": { - "commentStart": 4382, - "end": 0, - "name": "screwStart", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 4393, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - }, - { - "commentStart": 4397, - "computed": false, - "end": 0, - "object": { - "commentStart": 4397, - "end": 0, - "name": "screwStart", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 4408, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } + "commentStart": 771, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + } + ], + "commentStart": 714, + "end": 0, + "nonCodeMeta": { + "nonCodeNodes": { + "2": [ + { + "commentStart": 838, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLineBlockComment", + "value": "place gasket between the flanges", + "style": "line" + } + } + ] + }, + "startNodes": [] + }, + "start": 0, + "type": "PipeExpression", + "type": "PipeExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 876, + "end": 0, + "expression": { + "body": [ + { + "arguments": [], + "callee": { + "commentStart": 876, + "end": 0, + "name": "gasket", + "start": 0, + "type": "Identifier" + }, + "commentStart": 876, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 900, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" }, - { - "type": "LabeledArg", - "label": { - "commentStart": 4420, - "end": 0, - "name": "radius", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 4429, - "end": 0, - "left": { - "commentStart": 4429, + "arg": { + "commentStart": 912, + "elements": [ + { + "commentStart": 913, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 916, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 919, "end": 0, "left": { - "commentStart": 4429, + "argument": { + "commentStart": 920, + "end": 0, + "name": "flangeBackHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "commentStart": 919, "end": 0, - "name": "screwDia", + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + "operator": "-", + "right": { + "commentStart": 939, + "end": 0, + "name": "gasketThickness", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + } + ], + "callee": { + "commentStart": 890, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "commentStart": 890, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + } + ], + "commentStart": 876, + "end": 0, + "nonCodeMeta": { + "nonCodeNodes": { + "1": [ + { + "commentStart": 956, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLineBlockComment", + "value": "place eight washers (four front, four back)", + "style": "line" + } + } + ] + }, + "startNodes": [] + }, + "start": 0, + "type": "PipeExpression", + "type": "PipeExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 1005, + "end": 0, + "expression": { + "body": [ + { + "arguments": [], + "callee": { + "commentStart": 1005, + "end": 0, + "name": "washer", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1005, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 1029, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1041, + "elements": [ + { + "commentStart": 1047, + "end": 0, + "left": { + "commentStart": 1047, + "end": 0, + "name": "mountingHolePlacementDiameter", "start": 0, "type": "Identifier", "type": "Identifier" }, "operator": "/", "right": { - "commentStart": 4440, + "commentStart": 1077, "end": 0, "raw": "2", "start": 0, @@ -5100,2306 +687,8 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, - "operator": "+", - "right": { - "commentStart": 4444, - "end": 0, - "name": "tol", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - } - ], - "callee": { - "commentStart": 4357, - "end": 0, - "name": "circle", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4357, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 4486, - "end": 0, - "name": "arcDegrees", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 4499, - "end": 0, - "raw": "360", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 360.0, - "suffix": "None" - } - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 4511, - "end": 0, - "name": "center", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 4520, - "elements": [ - { - "commentStart": 4521, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 4524, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 4535, - "end": 0, - "name": "instances", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 4547, - "end": 0, - "raw": "7", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 7.0, - "suffix": "None" - } - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 4557, - "end": 0, - "name": "rotateDuplicates", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 4576, - "end": 0, - "raw": "true", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": true - } - } - ], - "callee": { - "commentStart": 4460, - "end": 0, - "name": "patternCircular2d", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4460, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - } - ], - "commentStart": 4332, - "end": 0, - "nonCodeMeta": { - "nonCodeNodes": { - "2": [ - { - "commentStart": 4587, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Sketch and revolve the pipe", - "style": "line" - } - } - ] - }, - "startNodes": [] - }, - "start": 0, - "type": "PipeExpression", - "type": "PipeExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "preComments": [ - "", - "", - "// Mounting holes pattern" - ], - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 4620, - "declaration": { - "commentStart": 4620, - "end": 0, - "id": { - "commentStart": 4620, - "end": 0, - "name": "pipe", - "start": 0, - "type": "Identifier" - }, - "init": { - "body": [ - { - "arguments": [ - { - "commentStart": 4641, - "end": 0, - "raw": "'XY'", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": "XY" - } - ], - "callee": { - "commentStart": 4627, - "end": 0, - "name": "startSketchOn", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4627, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 4667, - "elements": [ { - "commentStart": 4668, - "end": 0, - "left": { - "commentStart": 4668, - "end": 0, - "left": { - "commentStart": 4668, - "end": 0, - "name": "flangePipeDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 4684, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "operator": "-", - "right": { - "commentStart": 4688, - "end": 0, - "name": "tol", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - { - "commentStart": 4693, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - }, - { - "commentStart": 4697, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 4652, - "end": 0, - "name": "startProfileAt", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4652, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 4710, - "end": 0, - "name": "end", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 4716, - "elements": [ - { - "commentStart": 4717, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "argument": { - "commentStart": 4721, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "commentStart": 4720, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - } - ], - "callee": { - "commentStart": 4705, - "end": 0, - "name": "line", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4705, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "commentStart": 4741, - "end": 0, - "properties": [ - { - "commentStart": 4743, - "end": 0, - "key": { - "commentStart": 4743, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "argument": { - "commentStart": 4752, - "end": 0, - "raw": "60", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 60.0, - "suffix": "None" - } - }, - "commentStart": 4751, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - } - }, - { - "commentStart": 4756, - "end": 0, - "key": { - "commentStart": 4756, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 4765, - "end": 0, - "raw": ".5", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.5, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 4771, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 4730, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4730, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 4784, - "end": 0, - "name": "end", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 4790, - "elements": [ - { - "commentStart": 4791, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "argument": { - "commentStart": 4795, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - }, - "commentStart": 4794, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - } - ], - "callee": { - "commentStart": 4779, - "end": 0, - "name": "line", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4779, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 4809, - "end": 0, - "name": "end", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 4815, - "elements": [ - { - "argument": { - "commentStart": 4817, - "end": 0, - "name": "flangeThickness", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "commentStart": 4816, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - }, - { - "commentStart": 4834, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - } - ], - "callee": { - "commentStart": 4804, - "end": 0, - "name": "line", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4804, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 4848, - "end": 0, - "name": "end", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 4854, - "elements": [ - { - "commentStart": 4855, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 4858, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - } - ], - "callee": { - "commentStart": 4843, - "end": 0, - "name": "line", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4843, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "commentStart": 4878, - "end": 0, - "properties": [ - { - "commentStart": 4880, - "end": 0, - "key": { - "commentStart": 4880, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "argument": { - "commentStart": 4889, - "end": 0, - "raw": "240", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 240.0, - "suffix": "None" - } - }, - "commentStart": 4888, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - } - }, - { - "commentStart": 4894, - "end": 0, - "key": { - "commentStart": 4894, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 4903, - "end": 0, - "raw": ".5", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.5, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 4909, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 4867, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4867, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 4922, - "end": 0, - "name": "end", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 4928, - "elements": [ - { - "commentStart": 4929, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 4932, - "end": 0, - "raw": "5", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 5.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - } - ], - "callee": { - "commentStart": 4917, - "end": 0, - "name": "line", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4917, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "commentStart": 4952, - "end": 0, - "properties": [ - { - "commentStart": 4954, - "end": 0, - "key": { - "commentStart": 4954, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 4962, - "end": 0, - "raw": "60", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 60.0, - "suffix": "None" - } - } - }, - { - "commentStart": 4966, - "end": 0, - "key": { - "commentStart": 4966, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 4975, - "end": 0, - "raw": ".5", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.5, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 4981, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 4941, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4941, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 4994, - "end": 0, - "name": "end", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5000, - "elements": [ - { - "commentStart": 5001, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 5004, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - } - ], - "callee": { - "commentStart": 4989, - "end": 0, - "name": "line", - "start": 0, - "type": "Identifier" - }, - "commentStart": 4989, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 5018, - "end": 0, - "name": "end", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5024, - "elements": [ - { - "commentStart": 5025, - "end": 0, - "name": "flangeThickness", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - { - "commentStart": 5042, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - } - ], - "callee": { - "commentStart": 5013, - "end": 0, - "name": "line", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5013, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 5056, - "end": 0, - "name": "end", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5062, - "elements": [ - { - "commentStart": 5063, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "argument": { - "commentStart": 5067, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - }, - "commentStart": 5066, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - } - ], - "callee": { - "commentStart": 5051, - "end": 0, - "name": "line", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5051, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "commentStart": 5087, - "end": 0, - "properties": [ - { - "commentStart": 5089, - "end": 0, - "key": { - "commentStart": 5089, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 5097, - "end": 0, - "raw": "240", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 240.0, - "suffix": "None" - } - } - }, - { - "commentStart": 5102, - "end": 0, - "key": { - "commentStart": 5102, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 5111, - "end": 0, - "raw": ".5", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.5, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 5117, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 5076, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5076, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [], - "callee": { - "commentStart": 5125, - "end": 0, - "name": "close", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5125, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 5146, - "end": 0, - "name": "axis", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5153, - "end": 0, - "raw": "'y'", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": "y" - } - } - ], - "callee": { - "commentStart": 5138, - "end": 0, - "name": "revolve", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5138, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 5174, - "end": 0, - "name": "color", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5182, - "end": 0, - "raw": "\"#7b79d7\"", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": "#7b79d7" - } - } - ], - "callee": { - "commentStart": 5163, - "end": 0, - "name": "appearance", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5163, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - } - ], - "commentStart": 4627, - "end": 0, - "nonCodeMeta": { - "nonCodeNodes": { - "16": [ - { - "commentStart": 5192, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Sketch and extrude the wall", - "style": "line" - } - } - ] - }, - "startNodes": [] - }, - "start": 0, - "type": "PipeExpression", - "type": "PipeExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 5225, - "declaration": { - "commentStart": 5225, - "end": 0, - "id": { - "commentStart": 5225, - "end": 0, - "name": "wall", - "start": 0, - "type": "Identifier" - }, - "init": { - "body": [ - { - "arguments": [ - { - "commentStart": 5246, - "end": 0, - "raw": "'XZ'", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": "XZ" - } - ], - "callee": { - "commentStart": 5232, - "end": 0, - "name": "startSketchOn", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5232, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 5272, - "elements": [ - { - "argument": { - "commentStart": 5274, - "end": 0, - "raw": "4", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 4.0, - "suffix": "None" - } - }, - "commentStart": 5273, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - }, - { - "argument": { - "commentStart": 5278, - "end": 0, - "raw": "4", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 4.0, - "suffix": "None" - } - }, - "commentStart": 5277, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - }, - { - "commentStart": 5282, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 5257, - "end": 0, - "name": "startProfileAt", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5257, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 5295, - "end": 0, - "name": "end", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5301, - "elements": [ - { - "commentStart": 5302, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 5305, - "end": 0, - "raw": "8", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 8.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - } - ], - "callee": { - "commentStart": 5290, - "end": 0, - "name": "line", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5290, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 5319, - "end": 0, - "name": "end", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5325, - "elements": [ - { - "commentStart": 5326, - "end": 0, - "raw": "8", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 8.0, - "suffix": "None" - } - }, - { - "commentStart": 5329, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - } - ], - "callee": { - "commentStart": 5314, - "end": 0, - "name": "line", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5314, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 5343, - "end": 0, - "name": "end", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5349, - "elements": [ - { - "commentStart": 5350, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "argument": { - "commentStart": 5354, - "end": 0, - "raw": "8", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 8.0, - "suffix": "None" - } - }, - "commentStart": 5353, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - } - ], - "callee": { - "commentStart": 5338, - "end": 0, - "name": "line", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5338, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [], - "callee": { - "commentStart": 5363, - "end": 0, - "name": "close", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5363, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 5381, - "end": 0, - "name": "mountingHolePattern", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - { - "commentStart": 5402, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 5376, - "end": 0, - "name": "hole", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5376, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 5430, - "end": 0, - "name": "center", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5439, - "elements": [ - { - "commentStart": 5440, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 5443, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 5454, - "end": 0, - "name": "radius", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5463, - "end": 0, - "left": { - "commentStart": 5463, - "end": 0, - "name": "flangePipeDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 5479, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - } - ], - "callee": { - "commentStart": 5415, - "end": 0, - "name": "circle", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5415, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "commentStart": 5489, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 5410, - "end": 0, - "name": "hole", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5410, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 5505, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5514, - "end": 0, - "name": "wallThickness", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "callee": { - "commentStart": 5497, - "end": 0, - "name": "extrude", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5497, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 5545, - "end": 0, - "name": "color", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5553, - "end": 0, - "raw": "\"#c7aa8f\"", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": "#c7aa8f" - } - } - ], - "callee": { - "commentStart": 5534, - "end": 0, - "name": "appearance", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5534, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - } - ], - "commentStart": 5232, - "end": 0, - "nonCodeMeta": { - "nonCodeNodes": { - "9": [ - { - "commentStart": 5563, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Sketch and revolve the flange", - "style": "line" - } - } - ] - }, - "startNodes": [] - }, - "start": 0, - "type": "PipeExpression", - "type": "PipeExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 5598, - "declaration": { - "commentStart": 5598, - "end": 0, - "id": { - "commentStart": 5598, - "end": 0, - "name": "flangeBase", - "start": 0, - "type": "Identifier" - }, - "init": { - "body": [ - { - "arguments": [ - { - "commentStart": 5625, - "end": 0, - "raw": "'XZ'", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": "XZ" - } - ], - "callee": { - "commentStart": 5611, - "end": 0, - "name": "startSketchOn", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5611, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 5651, - "end": 0, - "name": "center", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5660, - "elements": [ - { - "commentStart": 5661, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 5664, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 5675, - "end": 0, - "name": "radius", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5684, - "end": 0, - "name": "flangeBaseDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "callee": { - "commentStart": 5636, - "end": 0, - "name": "circle", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5636, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "commentStart": 5715, - "end": 0, - "name": "mountingHolePattern", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - { - "commentStart": 5736, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 5710, - "end": 0, - "name": "hole", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5710, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 5764, - "end": 0, - "name": "center", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5773, - "elements": [ - { - "commentStart": 5774, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 5777, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 5788, - "end": 0, - "name": "radius", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5797, - "end": 0, - "left": { - "commentStart": 5797, - "end": 0, - "name": "flangePipeDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 5813, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - } - ], - "callee": { - "commentStart": 5749, - "end": 0, - "name": "circle", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5749, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "commentStart": 5823, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 5744, - "end": 0, - "name": "hole", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5744, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 5839, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "arg": { - "argument": { - "commentStart": 5849, - "end": 0, - "name": "flangeThickness", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "commentStart": 5848, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - } - } - ], - "callee": { - "commentStart": 5831, - "end": 0, - "name": "extrude", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5831, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 5882, - "end": 0, - "name": "color", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 5890, - "end": 0, - "raw": "\"#9b9797\"", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": "#9b9797" - } - } - ], - "callee": { - "commentStart": 5871, - "end": 0, - "name": "appearance", - "start": 0, - "type": "Identifier" - }, - "commentStart": 5871, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - } - ], - "commentStart": 5611, - "end": 0, - "nonCodeMeta": { - "nonCodeNodes": { - "5": [ - { - "commentStart": 5900, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the washer and pattern around the flange", - "style": "line" - } - } - ] - }, - "startNodes": [] - }, - "start": 0, - "type": "PipeExpression", - "type": "PipeExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 5953, - "end": 0, - "expression": { - "body": [ - { - "arguments": [ - { - "commentStart": 5960, - "end": 0, - "name": "workingPlane", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - { - "commentStart": 5974, - "elements": [ - { - "commentStart": 5975, - "computed": false, - "end": 0, - "object": { - "commentStart": 5975, - "end": 0, - "name": "screwStart", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 5986, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - }, - { - "commentStart": 5990, - "computed": false, - "end": 0, - "object": { - "commentStart": 5990, - "end": 0, - "name": "screwStart", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 6001, + "commentStart": 1085, "end": 0, "raw": "0", "start": 0, @@ -7410,94 +699,74 @@ description: Result of parsing pipe-flange-assembly.kcl "suffix": "None" } }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - }, - { - "commentStart": 6006, - "end": 0, - "raw": "0.0625", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0625, - "suffix": "None" - } - }, - { - "commentStart": 6014, - "end": 0, - "left": { - "commentStart": 6014, + { + "commentStart": 1093, + "end": 0, + "name": "flangeBaseThickness", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], "end": 0, - "name": "screwDia", "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "+", - "right": { - "commentStart": 6025, - "end": 0, - "name": "tol", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - { - "commentStart": 6030, - "end": 0, - "raw": "0.625", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.625, - "suffix": "None" + "type": "ArrayExpression", + "type": "ArrayExpression" } } ], "callee": { - "commentStart": 5953, + "commentStart": 1019, "end": 0, - "name": "washer", + "name": "translate", "start": 0, "type": "Identifier" }, - "commentStart": 5953, + "commentStart": 1019, "end": 0, "start": 0, - "type": "CallExpression", - "type": "CallExpression" + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null }, { "arguments": [ { "type": "LabeledArg", "label": { - "commentStart": 6068, + "commentStart": 1144, + "end": 0, + "name": "instances", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1156, + "end": 0, + "raw": "4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 4.0, + "suffix": "None" + } + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1159, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 6075, + "commentStart": 1166, "elements": [ { - "commentStart": 6076, + "commentStart": 1167, "end": 0, "raw": "0", "start": 0, @@ -7509,7 +778,19 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { - "commentStart": 6079, + "commentStart": 1170, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 1173, "end": 0, "raw": "1", "start": 0, @@ -7519,18 +800,6 @@ description: Result of parsing pipe-flange-assembly.kcl "value": 1.0, "suffix": "None" } - }, - { - "commentStart": 6082, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } } ], "end": 0, @@ -7542,17 +811,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { - "commentStart": 6093, + "commentStart": 1177, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 6102, + "commentStart": 1186, "elements": [ { - "commentStart": 6103, + "commentStart": 1187, "end": 0, "raw": "0", "start": 0, @@ -7564,7 +833,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { - "commentStart": 6106, + "commentStart": 1190, "end": 0, "raw": "0", "start": 0, @@ -7576,7 +845,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { - "commentStart": 6109, + "commentStart": 1193, "end": 0, "raw": "0", "start": 0, @@ -7597,36 +866,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { - "commentStart": 6120, - "end": 0, - "name": "instances", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 6132, - "end": 0, - "raw": "7", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 7.0, - "suffix": "None" - } - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 6142, + "commentStart": 1197, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 6155, + "commentStart": 1210, "end": 0, "raw": "360", "start": 0, @@ -7641,138 +888,163 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { - "commentStart": 6167, + "commentStart": 1215, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 6186, + "commentStart": 1234, "end": 0, - "raw": "true", + "raw": "false", "start": 0, "type": "Literal", "type": "Literal", - "value": true + "value": false } } ], "callee": { - "commentStart": 6042, + "commentStart": 1123, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, - "commentStart": 6042, + "commentStart": 1123, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", - "unlabeled": null + "unlabeled": { + "commentStart": 1141, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } }, { "arguments": [ { "type": "LabeledArg", "label": { - "commentStart": 6214, + "commentStart": 1265, "end": 0, - "name": "color", + "name": "instances", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 6222, + "commentStart": 1277, "end": 0, - "raw": "\"#d8da5d\"", + "raw": "2", "start": 0, "type": "Literal", "type": "Literal", - "value": "#d8da5d" + "value": { + "value": 2.0, + "suffix": "None" + } } - } - ], - "callee": { - "commentStart": 6203, - "end": 0, - "name": "appearance", - "start": 0, - "type": "Identifier" - }, - "commentStart": 6203, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - } - ], - "commentStart": 5953, - "end": 0, - "nonCodeMeta": { - "nonCodeNodes": { - "2": [ + }, { - "commentStart": 6232, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create the cap screw and pattern around the flange", - "style": "line" - } - } - ] - }, - "startNodes": [] - }, - "start": 0, - "type": "PipeExpression", - "type": "PipeExpression" - }, - "start": 0, - "type": "ExpressionStatement", - "type": "ExpressionStatement" - }, - { - "commentStart": 6288, - "end": 0, - "expression": { - "body": [ - { - "arguments": [ - { - "commentStart": 6297, - "elements": [ - { - "commentStart": 6306, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 6316, + "type": "LabeledArg", + "label": { + "commentStart": 1280, + "end": 0, + "name": "distance", + "start": 0, + "type": "Identifier" + }, + "arg": { + "argument": { + "commentStart": 1293, "end": 0, "left": { - "commentStart": 6316, + "commentStart": 1293, "end": 0, - "name": "flangeThickness", + "left": { + "commentStart": 1293, + "end": 0, + "left": { + "commentStart": 1293, + "end": 0, + "left": { + "commentStart": 1293, + "end": 0, + "name": "flangeBaseThickness", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 1313, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 1317, + "end": 0, + "left": { + "commentStart": 1317, + "end": 0, + "name": "flangeBackHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 1336, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 1340, + "end": 0, + "name": "gasketThickness", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, "start": 0, - "type": "Identifier", - "type": "Identifier" + "type": "BinaryExpression", + "type": "BinaryExpression" }, "operator": "+", "right": { - "commentStart": 6334, + "commentStart": 1358, "end": 0, "name": "washerThickness", "start": 0, @@ -7783,70 +1055,28 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, - { - "commentStart": 6358, - "end": 0, - "raw": "1.375", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.375, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" + "commentStart": 1291, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + } }, - { - "commentStart": 6372, - "end": 0, - "name": "screwLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - { - "commentStart": 6385, - "end": 0, - "name": "screwDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - ], - "callee": { - "commentStart": 6288, - "end": 0, - "name": "capScrew", - "start": 0, - "type": "Identifier" - }, - "commentStart": 6288, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ { "type": "LabeledArg", "label": { - "commentStart": 6426, + "commentStart": 1376, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 6433, + "commentStart": 1383, "elements": [ { - "commentStart": 6434, + "commentStart": 1384, "end": 0, "raw": "0", "start": 0, @@ -7858,7 +1088,19 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { - "commentStart": 6437, + "commentStart": 1387, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 1390, "end": 0, "raw": "1", "start": 0, @@ -7868,18 +1110,6 @@ description: Result of parsing pipe-flange-assembly.kcl "value": 1.0, "suffix": "None" } - }, - { - "commentStart": 6440, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } } ], "end": 0, @@ -7887,1505 +1117,42 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "ArrayExpression", "type": "ArrayExpression" } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 6451, - "end": 0, - "name": "center", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 6460, - "elements": [ - { - "commentStart": 6461, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 6464, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 6467, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 6478, - "end": 0, - "name": "instances", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 6490, - "end": 0, - "raw": "7", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 7.0, - "suffix": "None" - } - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 6500, - "end": 0, - "name": "arcDegrees", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 6513, - "end": 0, - "raw": "360", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 360.0, - "suffix": "None" - } - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 6525, - "end": 0, - "name": "rotateDuplicates", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 6544, - "end": 0, - "raw": "true", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": true - } } ], "callee": { - "commentStart": 6400, + "commentStart": 1246, "end": 0, - "name": "patternCircular3d", + "name": "patternLinear3d", "start": 0, "type": "Identifier" }, - "commentStart": 6400, + "commentStart": 1246, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 6572, - "end": 0, - "name": "color", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 6580, - "end": 0, - "raw": "\"#4cd411\"", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": "#4cd411" - } - } - ], - "callee": { - "commentStart": 6561, + "unlabeled": { + "commentStart": 1262, "end": 0, - "name": "appearance", "start": 0, - "type": "Identifier" - }, - "commentStart": 6561, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } } ], - "commentStart": 6288, - "end": 0, - "start": 0, - "type": "PipeExpression", - "type": "PipeExpression" - }, - "start": 0, - "type": "ExpressionStatement", - "type": "ExpressionStatement" - }, - { - "commentStart": 6590, - "declaration": { - "commentStart": 6592, - "end": 0, - "id": { - "commentStart": 6592, - "end": 0, - "name": "screwBodySketch", - "start": 0, - "type": "Identifier" - }, - "init": { - "body": [ - { - "arguments": [ - { - "commentStart": 6624, - "end": 0, - "name": "screwPlane", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - ], - "callee": { - "commentStart": 6610, - "end": 0, - "name": "startSketchOn", - "start": 0, - "type": "Identifier" - }, - "commentStart": 6610, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 6656, - "end": 0, - "name": "center", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 6665, - "elements": [ - { - "commentStart": 6666, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 6669, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 6680, - "end": 0, - "name": "radius", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 6689, - "end": 0, - "left": { - "commentStart": 6689, - "end": 0, - "name": "screwDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 6700, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - } - ], - "callee": { - "commentStart": 6641, - "end": 0, - "name": "circle", - "start": 0, - "type": "Identifier" - }, - "commentStart": 6641, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - } - ], - "commentStart": 6610, - "end": 0, - "start": 0, - "type": "PipeExpression", - "type": "PipeExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 6709, - "declaration": { - "commentStart": 6709, - "end": 0, - "id": { - "commentStart": 6709, - "end": 0, - "name": "screwBody", - "start": 0, - "type": "Identifier" - }, - "init": { - "body": [ - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 6746, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "arg": { - "argument": { - "commentStart": 6756, - "end": 0, - "name": "screwLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "commentStart": 6755, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - } - } - ], - "callee": { - "commentStart": 6721, - "end": 0, - "name": "extrude", - "start": 0, - "type": "Identifier" - }, - "commentStart": 6721, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": { - "commentStart": 6729, - "end": 0, - "name": "screwBodySketch", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 6800, - "end": 0, - "name": "axis", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 6807, - "elements": [ - { - "commentStart": 6808, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 6811, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - }, - { - "commentStart": 6814, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 6825, - "end": 0, - "name": "center", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 6834, - "elements": [ - { - "commentStart": 6835, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 6838, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 6841, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 6852, - "end": 0, - "name": "instances", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 6864, - "end": 0, - "raw": "7", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 7.0, - "suffix": "None" - } - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 6874, - "end": 0, - "name": "arcDegrees", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 6887, - "end": 0, - "raw": "360", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 360.0, - "suffix": "None" - } - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 6899, - "end": 0, - "name": "rotateDuplicates", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 6918, - "end": 0, - "raw": "true", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": true - } - } - ], - "callee": { - "commentStart": 6774, - "end": 0, - "name": "patternCircular3d", - "start": 0, - "type": "Identifier" - }, - "commentStart": 6774, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 6946, - "end": 0, - "name": "color", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 6954, - "end": 0, - "raw": "\"#4cd411\"", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": "#4cd411" - } - } - ], - "callee": { - "commentStart": 6935, - "end": 0, - "name": "appearance", - "start": 0, - "type": "Identifier" - }, - "commentStart": 6935, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - } - ], - "commentStart": 6721, - "end": 0, - "nonCodeMeta": { - "nonCodeNodes": { - "2": [ - { - "commentStart": 6964, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLineBlockComment", - "value": "Create a plane for the washers on the back side of the wall", - "style": "line" - } - } - ] - }, - "startNodes": [] - }, - "start": 0, - "type": "PipeExpression", - "type": "PipeExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 7029, - "declaration": { - "commentStart": 7029, - "end": 0, - "id": { - "commentStart": 7029, - "end": 0, - "name": "backSideWasherPlane", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 7051, - "end": 0, - "properties": [ - { - "commentStart": 7055, - "end": 0, - "key": { - "commentStart": 7055, - "end": 0, - "name": "plane", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7063, - "end": 0, - "properties": [ - { - "commentStart": 7069, - "end": 0, - "key": { - "commentStart": 7069, - "end": 0, - "name": "origin", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7078, - "end": 0, - "properties": [ - { - "commentStart": 7086, - "end": 0, - "key": { - "commentStart": 7086, - "end": 0, - "name": "x", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7090, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 7099, - "end": 0, - "key": { - "commentStart": 7099, - "end": 0, - "name": "y", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7103, - "end": 0, - "left": { - "argument": { - "commentStart": 7104, - "end": 0, - "name": "wallThickness", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "commentStart": 7103, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - }, - "operator": "-", - "right": { - "commentStart": 7120, - "end": 0, - "name": "washerThickness", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - }, - { - "commentStart": 7143, - "end": 0, - "key": { - "commentStart": 7143, - "end": 0, - "name": "z", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7147, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - }, - { - "commentStart": 7160, - "end": 0, - "key": { - "commentStart": 7160, - "end": 0, - "name": "xAxis", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7168, - "end": 0, - "properties": [ - { - "commentStart": 7170, - "end": 0, - "key": { - "commentStart": 7170, - "end": 0, - "name": "x", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7174, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 7177, - "end": 0, - "key": { - "commentStart": 7177, - "end": 0, - "name": "y", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7181, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 7184, - "end": 0, - "key": { - "commentStart": 7184, - "end": 0, - "name": "z", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7188, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - }, - { - "commentStart": 7197, - "end": 0, - "key": { - "commentStart": 7197, - "end": 0, - "name": "yAxis", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7205, - "end": 0, - "properties": [ - { - "commentStart": 7207, - "end": 0, - "key": { - "commentStart": 7207, - "end": 0, - "name": "x", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7211, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - } - }, - { - "commentStart": 7214, - "end": 0, - "key": { - "commentStart": 7214, - "end": 0, - "name": "y", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7218, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 7221, - "end": 0, - "key": { - "commentStart": 7221, - "end": 0, - "name": "z", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7225, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - }, - { - "commentStart": 7234, - "end": 0, - "key": { - "commentStart": 7234, - "end": 0, - "name": "zAxis", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7242, - "end": 0, - "properties": [ - { - "commentStart": 7244, - "end": 0, - "key": { - "commentStart": 7244, - "end": 0, - "name": "x", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7248, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - }, - { - "commentStart": 7251, - "end": 0, - "key": { - "commentStart": 7251, - "end": 0, - "name": "y", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7255, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - } - }, - { - "commentStart": 7258, - "end": 0, - "key": { - "commentStart": 7258, - "end": 0, - "name": "z", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 7262, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 7271, - "end": 0, - "expression": { - "body": [ - { - "arguments": [ - { - "commentStart": 7330, - "end": 0, - "name": "backSideWasherPlane", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - { - "commentStart": 7351, - "elements": [ - { - "commentStart": 7352, - "computed": false, - "end": 0, - "object": { - "commentStart": 7352, - "end": 0, - "name": "screwStart", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 7363, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - }, - { - "commentStart": 7367, - "computed": false, - "end": 0, - "object": { - "commentStart": 7367, - "end": 0, - "name": "screwStart", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 7378, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - }, - { - "commentStart": 7383, - "end": 0, - "raw": "0.0625", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0625, - "suffix": "None" - } - }, - { - "commentStart": 7391, - "end": 0, - "left": { - "commentStart": 7391, - "end": 0, - "name": "screwDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "+", - "right": { - "commentStart": 7402, - "end": 0, - "name": "tol", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - { - "commentStart": 7407, - "end": 0, - "raw": "0.625", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.625, - "suffix": "None" - } - } - ], - "callee": { - "commentStart": 7323, - "end": 0, - "name": "washer", - "start": 0, - "type": "Identifier" - }, - "commentStart": 7323, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 7445, - "end": 0, - "name": "axis", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 7452, - "elements": [ - { - "commentStart": 7453, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 7456, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - }, - { - "commentStart": 7459, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 7470, - "end": 0, - "name": "center", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 7479, - "elements": [ - { - "commentStart": 7480, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 7483, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 7486, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 7497, - "end": 0, - "name": "instances", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 7509, - "end": 0, - "raw": "7", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 7.0, - "suffix": "None" - } - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 7519, - "end": 0, - "name": "arcDegrees", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 7532, - "end": 0, - "raw": "360", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 360.0, - "suffix": "None" - } - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 7544, - "end": 0, - "name": "rotateDuplicates", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 7563, - "end": 0, - "raw": "true", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": true - } - } - ], - "callee": { - "commentStart": 7419, - "end": 0, - "name": "patternCircular3d", - "start": 0, - "type": "Identifier" - }, - "commentStart": 7419, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 7591, - "end": 0, - "name": "color", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 7599, - "end": 0, - "raw": "\"#e8ec09\"", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": "#e8ec09" - } - } - ], - "callee": { - "commentStart": 7580, - "end": 0, - "name": "appearance", - "start": 0, - "type": "Identifier" - }, - "commentStart": 7580, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - } - ], - "commentStart": 7323, + "commentStart": 1005, "end": 0, "nonCodeMeta": { "nonCodeNodes": { - "2": [ + "3": [ { - "commentStart": 7609, + "commentStart": 1393, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLineBlockComment", - "value": "Create the hex nut and pattern around the flange", + "value": "place four bolts", "style": "line" } } @@ -9397,160 +1164,25 @@ description: Result of parsing pipe-flange-assembly.kcl "type": "PipeExpression", "type": "PipeExpression" }, - "preComments": [ - "", - "", - "// Create the washers on the backside of the wall" - ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { - "commentStart": 7663, + "commentStart": 1415, "end": 0, "expression": { "body": [ { - "arguments": [ - { - "commentStart": 7670, - "elements": [ - { - "commentStart": 7679, - "computed": false, - "end": 0, - "object": { - "commentStart": 7679, - "end": 0, - "name": "screwStart", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 7690, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - }, - { - "commentStart": 7701, - "computed": false, - "end": 0, - "object": { - "commentStart": 7701, - "end": 0, - "name": "screwStart", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 7712, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - }, - { - "commentStart": 7723, - "computed": false, - "end": 0, - "object": { - "commentStart": 7723, - "end": 0, - "name": "screwStart", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 7734, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - }, - { - "commentStart": 7745, - "end": 0, - "raw": ".25", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.25, - "suffix": "None" - } - }, - { - "commentStart": 7750, - "end": 0, - "left": { - "commentStart": 7750, - "end": 0, - "name": "screwDia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "+", - "right": { - "commentStart": 7761, - "end": 0, - "name": "tol", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - ], + "arguments": [], "callee": { - "commentStart": 7663, + "commentStart": 1415, "end": 0, - "name": "hexNut", + "name": "bolt", "start": 0, "type": "Identifier" }, - "commentStart": 7663, + "commentStart": 1415, "end": 0, "start": 0, "type": "CallExpression", @@ -9561,17 +1193,45 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { - "commentStart": 7797, + "commentStart": 1437, "end": 0, - "name": "axis", + "name": "translate", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 7804, + "commentStart": 1449, "elements": [ { - "commentStart": 7805, + "commentStart": 1455, + "end": 0, + "left": { + "commentStart": 1455, + "end": 0, + "name": "mountingHolePlacementDiameter", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "/", + "right": { + "commentStart": 1485, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 1488, "end": 0, "raw": "0", "start": 0, @@ -9583,7 +1243,196 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { - "commentStart": 7808, + "commentStart": 1491, + "end": 0, + "left": { + "commentStart": 1491, + "end": 0, + "name": "flangeBaseThickness", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "+", + "right": { + "commentStart": 1513, + "end": 0, + "name": "washerThickness", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + } + ], + "callee": { + "commentStart": 1427, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1427, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 1546, + "end": 0, + "name": "roll", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1553, + "end": 0, + "raw": "90", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 90.0, + "suffix": "None" + } + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1557, + "end": 0, + "name": "pitch", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1565, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1568, + "end": 0, + "name": "yaw", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1574, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + } + ], + "callee": { + "commentStart": 1539, + "end": 0, + "name": "rotate", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1539, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 1603, + "end": 0, + "name": "instances", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1615, + "end": 0, + "raw": "4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 4.0, + "suffix": "None" + } + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1618, + "end": 0, + "name": "axis", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1625, + "elements": [ + { + "commentStart": 1626, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 1629, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 1632, "end": 0, "raw": "1", "start": 0, @@ -9593,18 +1442,6 @@ description: Result of parsing pipe-flange-assembly.kcl "value": 1.0, "suffix": "None" } - }, - { - "commentStart": 7811, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } } ], "end": 0, @@ -9616,17 +1453,17 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { - "commentStart": 7822, + "commentStart": 1636, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 7831, + "commentStart": 1645, "elements": [ { - "commentStart": 7832, + "commentStart": 1646, "end": 0, "raw": "0", "start": 0, @@ -9638,7 +1475,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { - "commentStart": 7835, + "commentStart": 1649, "end": 0, "raw": "0", "start": 0, @@ -9650,7 +1487,7 @@ description: Result of parsing pipe-flange-assembly.kcl } }, { - "commentStart": 7838, + "commentStart": 1652, "end": 0, "raw": "0", "start": 0, @@ -9671,36 +1508,14 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { - "commentStart": 7849, - "end": 0, - "name": "instances", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 7861, - "end": 0, - "raw": "7", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 7.0, - "suffix": "None" - } - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 7871, + "commentStart": 1656, "end": 0, "name": "arcDegrees", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 7884, + "commentStart": 1669, "end": 0, "raw": "360", "start": 0, @@ -9715,31 +1530,262 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { - "commentStart": 7896, + "commentStart": 1674, "end": 0, "name": "rotateDuplicates", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 7915, + "commentStart": 1693, "end": 0, - "raw": "true", + "raw": "false", "start": 0, "type": "Literal", "type": "Literal", - "value": true + "value": false } } ], "callee": { - "commentStart": 7771, + "commentStart": 1582, "end": 0, "name": "patternCircular3d", "start": 0, "type": "Identifier" }, - "commentStart": 7771, + "commentStart": 1582, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": { + "commentStart": 1600, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + } + ], + "commentStart": 1415, + "end": 0, + "nonCodeMeta": { + "nonCodeNodes": { + "3": [ + { + "commentStart": 1699, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLineBlockComment", + "value": "place four hex nuts", + "style": "line" + } + } + ] + }, + "startNodes": [] + }, + "start": 0, + "type": "PipeExpression", + "type": "PipeExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 1724, + "end": 0, + "expression": { + "body": [ + { + "arguments": [], + "callee": { + "commentStart": 1724, + "end": 0, + "name": "hexNut", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1724, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 1748, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1760, + "elements": [ + { + "commentStart": 1761, + "end": 0, + "left": { + "commentStart": 1761, + "end": 0, + "name": "mountingHolePlacementDiameter", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "/", + "right": { + "commentStart": 1791, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 1794, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "argument": { + "commentStart": 1799, + "end": 0, + "left": { + "commentStart": 1799, + "end": 0, + "left": { + "commentStart": 1799, + "end": 0, + "left": { + "commentStart": 1799, + "end": 0, + "left": { + "commentStart": 1799, + "end": 0, + "left": { + "commentStart": 1799, + "end": 0, + "name": "flangeBackHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 1818, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 1822, + "end": 0, + "name": "gasketThickness", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 1840, + "end": 0, + "name": "flangeBaseThickness", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 1862, + "end": 0, + "name": "washerThickness", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 1880, + "end": 0, + "name": "hexNutThickness", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "commentStart": 1797, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + } + ], + "callee": { + "commentStart": 1738, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1738, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -9751,39 +1797,783 @@ description: Result of parsing pipe-flange-assembly.kcl { "type": "LabeledArg", "label": { - "commentStart": 7943, + "commentStart": 1925, "end": 0, - "name": "color", + "name": "instances", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 7951, + "commentStart": 1937, "end": 0, - "raw": "\"#bc3434\"", + "raw": "4", "start": 0, "type": "Literal", "type": "Literal", - "value": "#bc3434" + "value": { + "value": 4.0, + "suffix": "None" + } + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1940, + "end": 0, + "name": "axis", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1947, + "elements": [ + { + "commentStart": 1948, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 1951, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 1954, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1958, + "end": 0, + "name": "center", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1967, + "elements": [ + { + "commentStart": 1968, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 1971, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 1974, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1978, + "end": 0, + "name": "arcDegrees", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1991, + "end": 0, + "raw": "360", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 360.0, + "suffix": "None" + } + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1996, + "end": 0, + "name": "rotateDuplicates", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2015, + "end": 0, + "raw": "false", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": false } } ], "callee": { - "commentStart": 7932, + "commentStart": 1904, "end": 0, - "name": "appearance", + "name": "patternCircular3d", "start": 0, "type": "Identifier" }, - "commentStart": 7932, + "commentStart": 1904, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", - "unlabeled": null + "unlabeled": { + "commentStart": 1922, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } } ], - "commentStart": 7663, + "commentStart": 1724, + "end": 0, + "nonCodeMeta": { + "nonCodeNodes": { + "2": [ + { + "commentStart": 2021, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLineBlockComment", + "value": "place both pieces of pipe", + "style": "line" + } + } + ] + }, + "startNodes": [] + }, + "start": 0, + "type": "PipeExpression", + "type": "PipeExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 2052, + "end": 0, + "expression": { + "body": [ + { + "arguments": [], + "callee": { + "commentStart": 2052, + "end": 0, + "name": "pipe", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2052, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 2074, + "end": 0, + "name": "roll", + "start": 0, + "type": "Identifier" + }, + "arg": { + "argument": { + "commentStart": 2082, + "end": 0, + "raw": "90", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 90.0, + "suffix": "None" + } + }, + "commentStart": 2081, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 2086, + "end": 0, + "name": "pitch", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2094, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 2097, + "end": 0, + "name": "yaw", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2103, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + } + ], + "callee": { + "commentStart": 2064, + "end": 0, + "name": "rotate", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2064, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": { + "commentStart": 2071, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 2124, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2136, + "elements": [ + { + "commentStart": 2137, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 2140, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 2143, + "end": 0, + "left": { + "commentStart": 2143, + "end": 0, + "left": { + "commentStart": 2143, + "end": 0, + "name": "flangeBaseThickness", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "+", + "right": { + "commentStart": 2165, + "end": 0, + "name": "flangeFrontHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "-", + "right": { + "commentStart": 2185, + "end": 0, + "raw": "0.5", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.5, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 2191, + "end": 0, + "name": "global", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2200, + "end": 0, + "raw": "true", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": true + } + } + ], + "callee": { + "commentStart": 2111, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2111, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": { + "commentStart": 2121, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + } + ], + "commentStart": 2052, + "end": 0, + "start": 0, + "type": "PipeExpression", + "type": "PipeExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 2205, + "end": 0, + "expression": { + "body": [ + { + "arguments": [], + "callee": { + "commentStart": 2207, + "end": 0, + "name": "pipe", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2207, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 2229, + "end": 0, + "name": "roll", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2236, + "end": 0, + "raw": "90", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 90.0, + "suffix": "None" + } + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 2240, + "end": 0, + "name": "pitch", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2248, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 2251, + "end": 0, + "name": "yaw", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2257, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + } + ], + "callee": { + "commentStart": 2219, + "end": 0, + "name": "rotate", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2219, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": { + "commentStart": 2226, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 2278, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2290, + "elements": [ + { + "commentStart": 2291, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 2294, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "argument": { + "commentStart": 2299, + "end": 0, + "left": { + "commentStart": 2299, + "end": 0, + "left": { + "commentStart": 2299, + "end": 0, + "left": { + "commentStart": 2299, + "end": 0, + "left": { + "commentStart": 2299, + "end": 0, + "left": { + "commentStart": 2299, + "end": 0, + "name": "flangeBackHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 2318, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 2322, + "end": 0, + "name": "gasketThickness", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 2340, + "end": 0, + "name": "flangeBaseThickness", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 2363, + "end": 0, + "name": "flangeFrontHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "-", + "right": { + "commentStart": 2383, + "end": 0, + "raw": "0.5", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.5, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "commentStart": 2297, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 2390, + "end": 0, + "name": "global", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2399, + "end": 0, + "raw": "true", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": true + } + } + ], + "callee": { + "commentStart": 2265, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2265, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": { + "commentStart": 2275, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + } + ], + "commentStart": 2207, "end": 0, "start": 0, "type": "PipeExpression", @@ -9801,7 +2591,7 @@ description: Result of parsing pipe-flange-assembly.kcl "commentStart": 0, "end": 0, "name": { - "commentStart": 347, + "commentStart": 346, "end": 0, "name": "settings", "start": 0, @@ -9812,14 +2602,14 @@ description: Result of parsing pipe-flange-assembly.kcl "// A crucial component in various piping systems, designed to facilitate the connection, disconnection, and access to piping for inspection, cleaning, and modifications. This assembly combines pipes (long cylindrical conduits) with flanges (plate-like fittings) to create a secure yet detachable joint.", "", "", - "// Set units" + "// set units" ], "properties": [ { - "commentStart": 356, + "commentStart": 355, "end": 0, "key": { - "commentStart": 356, + "commentStart": 355, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -9828,7 +2618,7 @@ description: Result of parsing pipe-flange-assembly.kcl "start": 0, "type": "ObjectProperty", "value": { - "commentStart": 376, + "commentStart": 375, "end": 0, "name": "in", "start": 0, @@ -9843,105 +2633,9 @@ description: Result of parsing pipe-flange-assembly.kcl ], "nonCodeMeta": { "nonCodeNodes": { - "12": [ - { - "commentStart": 702, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "inlineComment", - "value": "Ratio grabbed from another screw", - "style": "line" - } - } - ], "13": [ { - "commentStart": 763, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "inlineComment", - "value": "Ratio grabbed from another screw", - "style": "line" - } - } - ], - "14": [ - { - "commentStart": 822, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "inlineComment", - "value": "first angle of hex pattern (degrees)", - "style": "line" - } - } - ], - "15": [ - { - "commentStart": 885, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "inlineComment", - "value": "degrees", - "style": "line" - } - } - ], - "16": [ - { - "commentStart": 936, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "inlineComment", - "value": "degrees", - "style": "line" - } - }, - { - "commentStart": 947, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - } - ], - "17": [ - { - "commentStart": 1188, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - } - ], - "18": [ - { - "commentStart": 2663, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - } - ], - "27": [ - { - "commentStart": 6590, + "commentStart": 2205, "end": 0, "start": 0, "type": "NonCodeNode", @@ -9953,7 +2647,7 @@ description: Result of parsing pipe-flange-assembly.kcl }, "startNodes": [ { - "commentStart": 379, + "commentStart": 378, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/ops.snap b/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/ops.snap index fe9b9c6d9..e4bf113b2 100644 --- a/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/ops.snap +++ b/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/ops.snap @@ -3,12 +3,54 @@ source: kcl-lib/src/simulation_tests.rs description: Operations executed pipe-flange-assembly.kcl --- [ + { + "type": "UserDefinedFunctionCall", + "name": "cos", + "functionSourceRange": [ + 0, + 0, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "cos", + "functionSourceRange": [ + 0, + 0, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "flange", + "functionSourceRange": [ + 377, + 1601, + 4 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, { "labeledArgs": { "data": { "value": { "type": "String", - "value": "XZ" + "value": "XY" }, "sourceRange": [] } @@ -33,44 +75,6 @@ description: Operations executed pipe-flange-assembly.kcl "type": "StdLibCall", "unlabeledArg": null }, - { - "labeledArgs": { - "axis": { - "value": { - "type": "String", - "value": "y" - }, - "sourceRange": [] - } - }, - "name": "revolve", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - { - "labeledArgs": { - "data": { - "value": { - "type": "String", - "value": "XZ" - }, - "sourceRange": [] - } - }, - "name": "startSketchOn", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": null - }, { "labeledArgs": { "holeSketch": { @@ -95,24 +99,6 @@ description: Operations executed pipe-flange-assembly.kcl "artifactId": "[uuid]" } }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, { "type": "Sketch", "value": { @@ -138,38 +124,12 @@ description: Operations executed pipe-flange-assembly.kcl "type": "StdLibCall", "unlabeledArg": null }, - { - "labeledArgs": { - "holeSketch": { - "value": { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - }, - "sketch": { - "value": { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - "name": "hole", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": null - }, { "labeledArgs": { "length": { "value": { "type": "Number", - "value": 0.5, + "value": 0.69, "ty": { "type": "Default", "len": { @@ -199,9 +159,18 @@ description: Operations executed pipe-flange-assembly.kcl { "labeledArgs": { "data": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + }, + "tag": { "value": { "type": "String", - "value": "XZ" + "value": "start" }, "sourceRange": [] } @@ -211,105 +180,12 @@ description: Operations executed pipe-flange-assembly.kcl "type": "StdLibCall", "unlabeledArg": null }, - { - "labeledArgs": { - "holeSketch": { - "value": { - "type": "Array", - "value": [ - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - } - ] - }, - "sourceRange": [] - }, - "sketch": { - "value": { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - "name": "hole", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": null - }, - { - "labeledArgs": { - "holeSketch": { - "value": { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - }, - "sketch": { - "value": { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - "name": "hole", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": null - }, { "labeledArgs": { "length": { "value": { "type": "Number", - "value": -0.125, + "value": 0.06, "ty": { "type": "Default", "len": { @@ -336,13 +212,128 @@ description: Operations executed pipe-flange-assembly.kcl "sourceRange": [] } }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + }, + "tag": { + "value": { + "type": "String", + "value": "end" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.25, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + }, + "tag": { + "value": { + "type": "String", + "value": "end" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": -1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, { "type": "UserDefinedFunctionCall", - "name": "washer", + "name": "flange", "functionSourceRange": [ - 2891, - 3222, - 0 + 377, + 1601, + 4 ], "unlabeledArg": null, "labeledArgs": {}, @@ -352,190 +343,23 @@ description: Operations executed pipe-flange-assembly.kcl "labeledArgs": { "data": { "value": { - "type": "Object", - "value": { - "plane": { - "type": "Object", - "value": { - "origin": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.125, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "xAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "yAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "zAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - } - } - } - } + "type": "String", + "value": "XY" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XY" }, "sourceRange": [] } @@ -549,10 +373,33 @@ description: Operations executed pipe-flange-assembly.kcl "labeledArgs": { "holeSketch": { "value": { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } + "type": "Array", + "value": [ + { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + } + ] }, "sourceRange": [] }, @@ -576,7 +423,411 @@ description: Operations executed pipe-flange-assembly.kcl "length": { "value": { "type": "Number", - "value": 0.0625, + "value": 0.69, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + }, + "tag": { + "value": { + "type": "String", + "value": "start" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.06, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + }, + "tag": { + "value": { + "type": "String", + "value": "end" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.25, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + }, + "tag": { + "value": { + "type": "String", + "value": "end" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": -1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "gasket", + "functionSourceRange": [ + 231, + 690, + 5 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XY" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.031, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + }, + "tag": { + "value": { + "type": "String", + "value": "end" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": -0.031, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "washer", + "functionSourceRange": [ + 220, + 644, + 6 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XY" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.032, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + }, + "tag": { + "value": { + "type": "String", + "value": "end" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": -0.032, "ty": { "type": "Default", "len": { @@ -643,7 +894,7 @@ description: Operations executed pipe-flange-assembly.kcl }, { "type": "Number", - "value": 1.0, + "value": 0.0, "ty": { "type": "Default", "len": { @@ -656,7 +907,7 @@ description: Operations executed pipe-flange-assembly.kcl }, { "type": "Number", - "value": 0.0, + "value": 1.0, "ty": { "type": "Default", "len": { @@ -721,7 +972,7 @@ description: Operations executed pipe-flange-assembly.kcl "instances": { "value": { "type": "Number", - "value": 7.0, + "value": 4.0, "ty": { "type": "Default", "len": { @@ -737,7 +988,7 @@ description: Operations executed pipe-flange-assembly.kcl "rotateDuplicates": { "value": { "type": "Bool", - "value": true + "value": false }, "sourceRange": [] } @@ -755,221 +1006,136 @@ description: Operations executed pipe-flange-assembly.kcl "sourceRange": [] } }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": -1.563, + "ty": { + "type": "Unknown" + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 2.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Array", + "value": [ + { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + } + ] + }, + "sourceRange": [] + } + }, { "type": "UserDefinedFunctionCall", - "name": "capScrew", + "name": "bolt", "functionSourceRange": [ - 1201, - 2663, - 0 + 295, + 1597, + 7 ], "unlabeledArg": null, "labeledArgs": {}, "sourceRange": [] }, - { - "type": "UserDefinedFunctionCall", - "name": "cos", - "functionSourceRange": [ - 0, - 0, - 0 - ], - "unlabeledArg": null, - "labeledArgs": {}, - "sourceRange": [] - }, - { - "type": "UserDefinedFunctionReturn" - }, { "labeledArgs": { "data": { "value": { - "type": "Object", - "value": { - "plane": { - "type": "Object", - "value": { - "origin": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.1875, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 1.375, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "xAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "yAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "zAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - } - } - } - } + "type": "String", + "value": "XZ" }, "sourceRange": [] } @@ -984,7 +1150,7 @@ description: Operations executed pipe-flange-assembly.kcl "length": { "value": { "type": "Number", - "value": 0.375, + "value": -0.625, "ty": { "type": "Default", "len": { @@ -1011,6 +1177,105 @@ description: Operations executed pipe-flange-assembly.kcl "sourceRange": [] } }, + { + "labeledArgs": { + "radius": { + "value": { + "type": "Number", + "value": 0.02, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "tags": { + "value": { + "type": "Array", + "value": [ + { + "type": "TagIdentifier", + "value": "topEdge", + "artifact_id": "[uuid]" + }, + { + "type": "Uuid", + "value": "[uuid]" + } + ] + }, + "sourceRange": [] + } + }, + "name": "fillet", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + }, + "tag": { + "value": { + "type": "String", + "value": "start" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": -0.46875, + "ty": { + "type": "Unknown" + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, { "labeledArgs": { "data": { @@ -1040,7 +1305,268 @@ description: Operations executed pipe-flange-assembly.kcl "length": { "value": { "type": "Number", - "value": -0.28125, + "value": 2.5, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "labeledArgs": { + "arcDegrees": { + "value": { + "type": "Number", + "value": 360.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "center": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 4.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "rotateDuplicates": { + "value": { + "type": "Bool", + "value": false + }, + "sourceRange": [] + } + }, + "name": "patternCircular3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionCall", + "name": "hexNut", + "functionSourceRange": [ + 242, + 1179, + 8 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XY" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.546875, + "ty": { + "type": "Unknown" + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + }, + "tag": { + "value": { + "type": "String", + "value": "end" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": -0.546875, "ty": { "type": "Unknown" } @@ -1101,7 +1627,7 @@ description: Operations executed pipe-flange-assembly.kcl }, { "type": "Number", - "value": 1.0, + "value": 0.0, "ty": { "type": "Default", "len": { @@ -1114,7 +1640,7 @@ description: Operations executed pipe-flange-assembly.kcl }, { "type": "Number", - "value": 0.0, + "value": 1.0, "ty": { "type": "Default", "len": { @@ -1179,7 +1705,7 @@ description: Operations executed pipe-flange-assembly.kcl "instances": { "value": { "type": "Number", - "value": 7.0, + "value": 4.0, "ty": { "type": "Default", "len": { @@ -1195,7 +1721,7 @@ description: Operations executed pipe-flange-assembly.kcl "rotateDuplicates": { "value": { "type": "Bool", - "value": true + "value": false }, "sourceRange": [] } @@ -1213,194 +1739,24 @@ description: Operations executed pipe-flange-assembly.kcl "sourceRange": [] } }, + { + "type": "UserDefinedFunctionCall", + "name": "pipe", + "functionSourceRange": [ + 213, + 630, + 9 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, { "labeledArgs": { "data": { "value": { - "type": "Object", - "value": { - "plane": { - "type": "Object", - "value": { - "origin": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.1875, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 1.375, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "xAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "yAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "zAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - } - } - } - } + "type": "String", + "value": "XZ" }, "sourceRange": [] } @@ -1415,7 +1771,7 @@ description: Operations executed pipe-flange-assembly.kcl "length": { "value": { "type": "Number", - "value": -1.125, + "value": 6.0, "ty": { "type": "Default", "len": { @@ -1442,357 +1798,23 @@ description: Operations executed pipe-flange-assembly.kcl "sourceRange": [] } }, - { - "labeledArgs": { - "arcDegrees": { - "value": { - "type": "Number", - "value": 360.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - }, - "axis": { - "value": { - "type": "Array", - "value": [ - { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - ] - }, - "sourceRange": [] - }, - "center": { - "value": { - "type": "Array", - "value": [ - { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - ] - }, - "sourceRange": [] - }, - "instances": { - "value": { - "type": "Number", - "value": 7.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - }, - "rotateDuplicates": { - "value": { - "type": "Bool", - "value": true - }, - "sourceRange": [] - } - }, - "name": "patternCircular3d", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "Solid", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - { - "type": "UserDefinedFunctionCall", - "name": "washer", - "functionSourceRange": [ - 2891, - 3222, - 0 - ], - "unlabeledArg": null, - "labeledArgs": {}, - "sourceRange": [] - }, { "labeledArgs": { "data": { "value": { - "type": "Object", + "type": "Solid", "value": { - "plane": { - "type": "Object", - "value": { - "origin": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": -0.5625, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "xAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "yAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "zAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - } - } - } + "artifactId": "[uuid]" } }, "sourceRange": [] + }, + "tag": { + "value": { + "type": "String", + "value": "end" + }, + "sourceRange": [] } }, "name": "startSketchOn", @@ -1800,38 +1822,12 @@ description: Operations executed pipe-flange-assembly.kcl "type": "StdLibCall", "unlabeledArg": null }, - { - "labeledArgs": { - "holeSketch": { - "value": { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - }, - "sketch": { - "value": { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - "name": "hole", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": null - }, { "labeledArgs": { "length": { "value": { "type": "Number", - "value": 0.0625, + "value": -6.0, "ty": { "type": "Default", "len": { @@ -1861,162 +1857,13 @@ description: Operations executed pipe-flange-assembly.kcl { "type": "UserDefinedFunctionReturn" }, - { - "labeledArgs": { - "arcDegrees": { - "value": { - "type": "Number", - "value": 360.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - }, - "axis": { - "value": { - "type": "Array", - "value": [ - { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - ] - }, - "sourceRange": [] - }, - "center": { - "value": { - "type": "Array", - "value": [ - { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - ] - }, - "sourceRange": [] - }, - "instances": { - "value": { - "type": "Number", - "value": 7.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - }, - "rotateDuplicates": { - "value": { - "type": "Bool", - "value": true - }, - "sourceRange": [] - } - }, - "name": "patternCircular3d", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "Solid", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, { "type": "UserDefinedFunctionCall", - "name": "hexNut", + "name": "pipe", "functionSourceRange": [ - 3253, - 4282, - 0 + 213, + 630, + 9 ], "unlabeledArg": null, "labeledArgs": {}, @@ -2026,190 +1873,8 @@ description: Operations executed pipe-flange-assembly.kcl "labeledArgs": { "data": { "value": { - "type": "Object", - "value": { - "plane": { - "type": "Object", - "value": { - "origin": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": -0.5625, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 1.375, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "xAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "yAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "zAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - } - } - } - } + "type": "String", + "value": "XZ" }, "sourceRange": [] } @@ -2221,26 +1886,56 @@ description: Operations executed pipe-flange-assembly.kcl }, { "labeledArgs": { - "holeSketch": { + "length": { "value": { - "type": "Sketch", + "type": "Number", + "value": 6.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Solid", "value": { "artifactId": "[uuid]" } }, "sourceRange": [] }, - "sketch": { + "tag": { "value": { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } + "type": "String", + "value": "end" }, "sourceRange": [] } }, - "name": "hole", + "name": "startSketchOn", "sourceRange": [], "type": "StdLibCall", "unlabeledArg": null @@ -2250,7 +1945,7 @@ description: Operations executed pipe-flange-assembly.kcl "length": { "value": { "type": "Number", - "value": -0.25, + "value": -6.0, "ty": { "type": "Default", "len": { @@ -2279,154 +1974,5 @@ description: Operations executed pipe-flange-assembly.kcl }, { "type": "UserDefinedFunctionReturn" - }, - { - "labeledArgs": { - "arcDegrees": { - "value": { - "type": "Number", - "value": 360.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - }, - "axis": { - "value": { - "type": "Array", - "value": [ - { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - ] - }, - "sourceRange": [] - }, - "center": { - "value": { - "type": "Array", - "value": [ - { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - ] - }, - "sourceRange": [] - }, - "instances": { - "value": { - "type": "Number", - "value": 7.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - }, - "rotateDuplicates": { - "value": { - "type": "Bool", - "value": true - }, - "sourceRange": [] - } - }, - "name": "patternCircular3d", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "Solid", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } } ] diff --git a/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/program_memory.snap index d868b7461..5f967cfca 100644 --- a/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/program_memory.snap @@ -3,195 +3,12 @@ source: kcl-lib/src/simulation_tests.rs description: Variables in memory after executing pipe-flange-assembly.kcl --- { - "backSideWasherPlane": { - "type": "Object", - "value": { - "plane": { - "type": "Object", - "value": { - "origin": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": -0.5625, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "xAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "yAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "zAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - } - } - } - } + "bolt": { + "type": "Function" }, - "boreHeight": { + "boltDiameter": { "type": "Number", - "value": 1.0, + "value": 0.625, "ty": { "type": "Default", "len": { @@ -202,125 +19,49 @@ description: Variables in memory after executing pipe-flange-assembly.kcl } } }, - "capRatio": { + "boltHeadDiameter": { "type": "Number", - "value": 0.607, + "value": 0.938, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "boltHeadLength": { + "type": "Number", + "value": 0.625, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "boltHexDrive": { + "type": "Number", + "value": 0.5, "ty": { "type": "Unknown" } }, - "capScrew": { - "type": "Function" - }, - "flangeBase": { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 0.0, - 0.0 - ], - "from": [ - 2.0, - 0.0 - ], - "radius": 2.0, - "tag": null, - "to": [ - 2.0, - 0.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XZ", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 2.0, - 0.0 - ], - "to": [ - 2.0, - 0.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -0.125, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } + "boltHexFlatLength": { + "type": "Number", + "value": 0.2887, + "ty": { + "type": "Unknown" } }, - "flangeBaseDia": { + "boltLength": { "type": "Number", - "value": 2.0, + "value": 2.5, "ty": { "type": "Default", "len": { @@ -331,7 +72,106 @@ description: Variables in memory after executing pipe-flange-assembly.kcl } } }, - "flangePipeDia": { + "boltThreadLength": { + "type": "Number", + "value": 1.75, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "filletEdge": { + "type": "TagIdentifier", + "type": "TagIdentifier", + "value": "filletEdge" + }, + "flange": { + "type": "Function" + }, + "flangeBackDiameter": { + "type": "Number", + "value": 3.62, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "flangeBackHeight": { + "type": "Number", + "value": 0.06, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "flangeBaseThickness": { + "type": "Number", + "value": 0.69, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "flangeDiameter": { + "type": "Number", + "value": 6.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "flangeFrontDiameter": { + "type": "Number", + "value": 3.06, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "flangeFrontHeight": { + "type": "Number", + "value": 0.25, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "flangeTotalThickness": { "type": "Number", "value": 1.0, "ty": { @@ -344,9 +184,12 @@ description: Variables in memory after executing pipe-flange-assembly.kcl } } }, - "flangeThickness": { + "gasket": { + "type": "Function" + }, + "gasketInnerDiameter": { "type": "Number", - "value": 0.125, + "value": 2.375, "ty": { "type": "Default", "len": { @@ -357,9 +200,9 @@ description: Variables in memory after executing pipe-flange-assembly.kcl } } }, - "hexChangeAngle": { + "gasketOutsideDiameter": { "type": "Number", - "value": 60.0, + "value": 4.125, "ty": { "type": "Default", "len": { @@ -370,9 +213,9 @@ description: Variables in memory after executing pipe-flange-assembly.kcl } } }, - "hexInteriorAngle": { + "gasketThickness": { "type": "Number", - "value": 120.0, + "value": 0.031, "ty": { "type": "Default", "len": { @@ -386,29 +229,37 @@ description: Variables in memory after executing pipe-flange-assembly.kcl "hexNut": { "type": "Function" }, - "hexNutScale": { + "hexNutDiameter": { "type": "Number", - "value": 0.9, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "hexRatio": { - "type": "Number", - "value": 0.8224, + "value": 0.625, "ty": { "type": "Unknown" } }, - "hexStartingAngle": { + "hexNutFlatLength": { "type": "Number", - "value": 210.0, + "value": 0.5413, + "ty": { + "type": "Unknown" + } + }, + "hexNutFlatToFlat": { + "type": "Number", + "value": 0.9375, + "ty": { + "type": "Unknown" + } + }, + "hexNutThickness": { + "type": "Number", + "value": 0.5469, + "ty": { + "type": "Unknown" + } + }, + "mountingHoleDiameter": { + "type": "Number", + "value": 0.75, "ty": { "type": "Default", "len": { @@ -419,9 +270,9 @@ description: Variables in memory after executing pipe-flange-assembly.kcl } } }, - "mountingHoleDia": { + "mountingHolePlacementDiameter": { "type": "Number", - "value": 0.425, + "value": 4.75, "ty": { "type": "Default", "len": { @@ -432,1861 +283,12 @@ description: Variables in memory after executing pipe-flange-assembly.kcl } } }, - "mountingHolePattern": { - "type": "HomArray", - "value": [ - { - "type": "Sketch", - "value": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 0.0, - 1.375 - ], - "from": [ - 0.1975, - 1.375 - ], - "radius": 0.1975, - "tag": null, - "to": [ - 0.1975, - 1.375 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XZ", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 0.1975, - 1.375 - ], - "to": [ - 0.1975, - 1.375 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Sketch", - "value": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 0.0, - 1.375 - ], - "from": [ - 0.1975, - 1.375 - ], - "radius": 0.1975, - "tag": null, - "to": [ - 0.1975, - 1.375 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XZ", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 0.1975, - 1.375 - ], - "to": [ - 0.1975, - 1.375 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Sketch", - "value": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 0.0, - 1.375 - ], - "from": [ - 0.1975, - 1.375 - ], - "radius": 0.1975, - "tag": null, - "to": [ - 0.1975, - 1.375 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XZ", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 0.1975, - 1.375 - ], - "to": [ - 0.1975, - 1.375 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Sketch", - "value": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 0.0, - 1.375 - ], - "from": [ - 0.1975, - 1.375 - ], - "radius": 0.1975, - "tag": null, - "to": [ - 0.1975, - 1.375 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XZ", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 0.1975, - 1.375 - ], - "to": [ - 0.1975, - 1.375 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Sketch", - "value": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 0.0, - 1.375 - ], - "from": [ - 0.1975, - 1.375 - ], - "radius": 0.1975, - "tag": null, - "to": [ - 0.1975, - 1.375 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XZ", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 0.1975, - 1.375 - ], - "to": [ - 0.1975, - 1.375 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Sketch", - "value": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 0.0, - 1.375 - ], - "from": [ - 0.1975, - 1.375 - ], - "radius": 0.1975, - "tag": null, - "to": [ - 0.1975, - 1.375 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XZ", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 0.1975, - 1.375 - ], - "to": [ - 0.1975, - 1.375 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Sketch", - "value": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 0.0, - 1.375 - ], - "from": [ - 0.1975, - 1.375 - ], - "radius": 0.1975, - "tag": null, - "to": [ - 0.1975, - 1.375 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XZ", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 0.1975, - 1.375 - ], - "to": [ - 0.1975, - 1.375 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - } - } - ] - }, "pipe": { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.49, - 0.0 - ], - "tag": null, - "to": [ - 0.49, - -2.0 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.49, - -2.0 - ], - "tag": null, - "to": [ - 0.74, - -2.433 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.74, - -2.433 - ], - "tag": null, - "to": [ - 0.74, - -3.433 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.74, - -3.433 - ], - "tag": null, - "to": [ - 0.615, - -3.433 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.615, - -3.433 - ], - "tag": null, - "to": [ - 0.615, - -2.433 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.615, - -2.433 - ], - "tag": null, - "to": [ - 0.365, - -2.0 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.365, - -2.0 - ], - "tag": null, - "to": [ - 0.365, - 3.0 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.365, - 3.0 - ], - "tag": null, - "to": [ - 0.615, - 3.433 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.615, - 3.433 - ], - "tag": null, - "to": [ - 0.615, - 4.433 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.615, - 4.433 - ], - "tag": null, - "to": [ - 0.74, - 4.433 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.74, - 4.433 - ], - "tag": null, - "to": [ - 0.74, - 3.433 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.74, - 3.433 - ], - "tag": null, - "to": [ - 0.49, - 3.0 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.49, - 3.0 - ], - "tag": null, - "to": [ - 0.49, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 0.49, - 0.0 - ], - "to": [ - 0.49, - 0.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 0.0, - "startCapId": null, - "endCapId": null, - "units": { - "type": "Inches" - } - } + "type": "Function" }, - "screwBody": { - "type": "HomArray", - "value": [ - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 0.0, - 0.0 - ], - "from": [ - 0.1875, - 0.0 - ], - "radius": 0.1875, - "tag": null, - "to": [ - 0.1875, - 0.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "Custom", - "origin": { - "x": 0.0, - "y": 0.1875, - "z": 1.375 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 0.1875, - 0.0 - ], - "to": [ - 0.1875, - 0.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.125, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 0.0, - 0.0 - ], - "from": [ - 0.1875, - 0.0 - ], - "radius": 0.1875, - "tag": null, - "to": [ - 0.1875, - 0.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "Custom", - "origin": { - "x": 0.0, - "y": 0.1875, - "z": 1.375 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 0.1875, - 0.0 - ], - "to": [ - 0.1875, - 0.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.125, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 0.0, - 0.0 - ], - "from": [ - 0.1875, - 0.0 - ], - "radius": 0.1875, - "tag": null, - "to": [ - 0.1875, - 0.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "Custom", - "origin": { - "x": 0.0, - "y": 0.1875, - "z": 1.375 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 0.1875, - 0.0 - ], - "to": [ - 0.1875, - 0.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.125, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 0.0, - 0.0 - ], - "from": [ - 0.1875, - 0.0 - ], - "radius": 0.1875, - "tag": null, - "to": [ - 0.1875, - 0.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "Custom", - "origin": { - "x": 0.0, - "y": 0.1875, - "z": 1.375 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 0.1875, - 0.0 - ], - "to": [ - 0.1875, - 0.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.125, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 0.0, - 0.0 - ], - "from": [ - 0.1875, - 0.0 - ], - "radius": 0.1875, - "tag": null, - "to": [ - 0.1875, - 0.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "Custom", - "origin": { - "x": 0.0, - "y": 0.1875, - "z": 1.375 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 0.1875, - 0.0 - ], - "to": [ - 0.1875, - 0.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.125, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 0.0, - 0.0 - ], - "from": [ - 0.1875, - 0.0 - ], - "radius": 0.1875, - "tag": null, - "to": [ - 0.1875, - 0.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "Custom", - "origin": { - "x": 0.0, - "y": 0.1875, - "z": 1.375 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 0.1875, - 0.0 - ], - "to": [ - 0.1875, - 0.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.125, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 0.0, - 0.0 - ], - "from": [ - 0.1875, - 0.0 - ], - "radius": 0.1875, - "tag": null, - "to": [ - 0.1875, - 0.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "Custom", - "origin": { - "x": 0.0, - "y": 0.1875, - "z": 1.375 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 0.1875, - 0.0 - ], - "to": [ - 0.1875, - 0.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.125, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - } - ] - }, - "screwBodySketch": { - "type": "Sketch", - "value": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 0.0, - 0.0 - ], - "from": [ - 0.1875, - 0.0 - ], - "radius": 0.1875, - "tag": null, - "to": [ - 0.1875, - 0.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "Custom", - "origin": { - "x": 0.0, - "y": 0.1875, - "z": 1.375 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - 0.1875, - 0.0 - ], - "to": [ - 0.1875, - 0.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - "screwDia": { + "pipeDiameter": { "type": "Number", - "value": 0.375, + "value": 2.44, "ty": { "type": "Default", "len": { @@ -2297,9 +299,9 @@ description: Variables in memory after executing pipe-flange-assembly.kcl } } }, - "screwLength": { + "pipeInnerDiameter": { "type": "Number", - "value": 1.125, + "value": 2.0, "ty": { "type": "Default", "len": { @@ -2310,239 +312,9 @@ description: Variables in memory after executing pipe-flange-assembly.kcl } } }, - "screwPlane": { - "type": "Object", - "value": { - "plane": { - "type": "Object", - "value": { - "origin": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.1875, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 1.375, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "xAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "yAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "zAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - } - } - } - } - }, - "screwStart": { - "type": "MixedArray", - "value": [ - { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - { - "type": "Number", - "value": 0.1875, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - { - "type": "Number", - "value": 1.375, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - ] - }, - "tol": { + "pipeLength": { "type": "Number", - "value": 0.01, + "value": 6.0, "ty": { "type": "Default", "len": { @@ -2553,187 +325,9 @@ description: Variables in memory after executing pipe-flange-assembly.kcl } } }, - "wall": { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -4.0, - -4.0 - ], - "tag": null, - "to": [ - -4.0, - 4.0 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -4.0, - 4.0 - ], - "tag": null, - "to": [ - 4.0, - 4.0 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 4.0, - 4.0 - ], - "tag": null, - "to": [ - 4.0, - -4.0 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 4.0, - -4.0 - ], - "tag": null, - "to": [ - -4.0, - -4.0 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XZ", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -4.0, - -4.0 - ], - "to": [ - -4.0, - -4.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 0.5, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - "wallThickness": { + "pipeOuterDiameter": { "type": "Number", - "value": 0.5, + "value": 2.375, "ty": { "type": "Default", "len": { @@ -2747,9 +341,9 @@ description: Variables in memory after executing pipe-flange-assembly.kcl "washer": { "type": "Function" }, - "washerThickness": { + "washerInnerDia": { "type": "Number", - "value": 0.0625, + "value": 0.64, "ty": { "type": "Default", "len": { @@ -2760,189 +354,29 @@ description: Variables in memory after executing pipe-flange-assembly.kcl } } }, - "workingPlane": { - "type": "Object", - "value": { - "plane": { - "type": "Object", - "value": { - "origin": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.125, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "xAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "yAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "zAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - } - } + "washerOuterDia": { + "type": "Number", + "value": 1.188, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "washerThickness": { + "type": "Number", + "value": 0.032, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" } } } diff --git a/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/rendered_model.png b/rust/kcl-lib/tests/kcl_samples/pipe-flange-assembly/rendered_model.png index 33b93e60cfc5e4def527f9310e977cb5e5478866..aeb18226d612d908929e73809747ec379928f11f 100644 GIT binary patch literal 79966 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%0AVhxT*YFC0YVuhfzQrWF zKDFZBNTh*~6sUSXbXHBFtbKXgNI6$s9ZbZ zAs{&QTPR|4O2H9fBuLG@u%HG55i*41UN)Z?2p)f&bK$G zuTA$d+Ek?u*JkKXXYsY)7pKVOg~{sQoZ)-l9D;P&gd}f8(`nzBFFoT{KnVmT3dS%C zhGGFk(B2l-v26R8r82Qac98m3a?>);&iwt2%j++_T~XUF z9Y=DmLNiSkS%k?B{h}ygMuybBrR+$aAsp!4B60DKk#w0v%Nq;aqk-3gOHp?usx1(UN$#vk@#U|`($h0<-8t$M z{`JE*AebNDhW^<%Ib3?yDLYE-QiD8o;GjEPAb&{KV)3g%{p6^aigYe=y<=0FTo-Zix~YZnkMCfYHRq`Rme9xH zPM#4zf8?R~0-;?_%+S-*!;jorBg!7=T5g_=;6|~pKiz&*6QG7+fzG=9$+z(^q)?6R z9YIeZ3y-o!XjOT`<%%Id4!e0?YqQ|g59%d@Fsa}l+UQ`e{aokVe%?vb&%I-od#=Iq z9;&nZ876^Q;qA_Crs`ZD^-ScJ>!l(B?a)uJ(v++Bkll`#oL#19i&Tb&ea$Os&7GrM z*{13P&{WyV4F`}1+}vI;3CJqsKZ+SA{Y%Tr*KI&ZNFgzW6(X8P2ft>~WZf%ZkHdOb zD9id0{E)d|E5<8=iHyRR3_86NmjpLETKArnZshUvuX%=(xT@m9Oq@GDbiQ@dR=Y|2 z67@~MJDSSy34X*}fp5Ck?wtFw&i^ub3rNafg^B9c?x9XgH>q<>2I z*_@8>j%&YD(J^_OM(1@jo+^|GLcSN=2celWLBhhWk-8xha=vEofOWDH`lV7e(Ue&{0cEmnv_)J1xS_* z)gwSVzOIYdcF^wJG2lW_Ig&NkIH??tw!5YPJD{6cJI_8?&I(6t219_JOZr-Xh59EO zskC4bRoO1i4& zUo#5)YI(lWK3I`s0XuVjhno_75;$EviBs4W`HtUwUXVLih3x1uVf=Ou*jG4Rq?pna zkYQ#W-uc+GdQ_47F$4#j;guSSzPBK}G57FhcA9qxI0-m(lBX_2pV~U6>#Glo%O1gh z!Tzbk>5)V5XO3LfvFr%VEf!fhzhN8~Rx?^Oy||Pukrq%yj2D1XXJ;2`^9##5C);(U zSh~UQE>JHUtW*8x_+ssID1=QQACa?hYIIDh2u>SXw$0}56D!97(aO&}IF|+JznNrz ze%UA{qTyOXL_@k+@U0ywzHW&j&)b7-UsjqK6Iu-%jz%$9{1dk8U{InoBm5ef{!v9C zB~{l&7&ZA%(FPO}Q9=Y<2u*p6Y=|5imMvO+ZTZFY%l+sU-$R*%3Q;;+MMbW9Jg{T| z+P6)_io-vhfG)-0!7S=gqjbbvM~m zW`(PO!c5O0J4h zeGXe`OVE-vUAxD`Wr44sMN`1}2m4EQ45BZTcwLpjZp%`s^=)HVy$3B_P&2UGWu1fZzMEM9>c9Q+;Po;%b8If

?C(N>j#YSGIK(TG* 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 MPgg&ebxsLQ0Llq2vH$=8 literal 59676 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 Date: Wed, 19 Mar 2025 23:28:07 -0700 Subject: [PATCH 08/20] Create main.kcl (#5898) * Create main.kcl * Update kcl-samples simulation test output * Update kcl-samples simulation test output --------- Co-authored-by: github-actions[bot] Co-authored-by: Josh Gomez <114548659+jgomez720@users.noreply.github.com> --- public/kcl-samples/README.md | 2 + public/kcl-samples/keyboard/main.kcl | 233 + public/kcl-samples/manifest.json | 7 + public/kcl-samples/screenshots/keyboard.png | Bin 0 -> 83859 bytes .../keyboard/artifact_commands.snap | 14206 ++++++++++++++++ .../keyboard/artifact_graph_flowchart.snap | 6 + .../keyboard/artifact_graph_flowchart.snap.md | 2736 +++ .../tests/kcl_samples/keyboard/ast.snap | 10119 +++++++++++ .../tests/kcl_samples/keyboard/ops.snap | 8400 +++++++++ .../kcl_samples/keyboard/program_memory.snap | 2583 +++ .../kcl_samples/keyboard/rendered_model.png | Bin 0 -> 83859 bytes 11 files changed, 38292 insertions(+) create mode 100644 public/kcl-samples/keyboard/main.kcl create mode 100644 public/kcl-samples/screenshots/keyboard.png create mode 100644 rust/kcl-lib/tests/kcl_samples/keyboard/artifact_commands.snap create mode 100644 rust/kcl-lib/tests/kcl_samples/keyboard/artifact_graph_flowchart.snap create mode 100644 rust/kcl-lib/tests/kcl_samples/keyboard/artifact_graph_flowchart.snap.md create mode 100644 rust/kcl-lib/tests/kcl_samples/keyboard/ast.snap create mode 100644 rust/kcl-lib/tests/kcl_samples/keyboard/ops.snap create mode 100644 rust/kcl-lib/tests/kcl_samples/keyboard/program_memory.snap create mode 100644 rust/kcl-lib/tests/kcl_samples/keyboard/rendered_model.png diff --git a/public/kcl-samples/README.md b/public/kcl-samples/README.md index 5c292c8ed..8092f0abd 100644 --- a/public/kcl-samples/README.md +++ b/public/kcl-samples/README.md @@ -69,6 +69,8 @@ When you submit a PR to add or modify KCL samples, images and STEP files will be [![hex-nut](screenshots/hex-nut.png)](hex-nut/main.kcl) #### [i-beam](i-beam/main.kcl) ([screenshot](screenshots/i-beam.png)) [![i-beam](screenshots/i-beam.png)](i-beam/main.kcl) +#### [keyboard](keyboard/main.kcl) ([screenshot](screenshots/keyboard.png)) +[![keyboard](screenshots/keyboard.png)](keyboard/main.kcl) #### [kitt](kitt/main.kcl) ([screenshot](screenshots/kitt.png)) [![kitt](screenshots/kitt.png)](kitt/main.kcl) #### [lego](lego/main.kcl) ([screenshot](screenshots/lego.png)) diff --git a/public/kcl-samples/keyboard/main.kcl b/public/kcl-samples/keyboard/main.kcl new file mode 100644 index 000000000..62688a648 --- /dev/null +++ b/public/kcl-samples/keyboard/main.kcl @@ -0,0 +1,233 @@ +// Zoo Keyboard +// A custom keyboard with Zoo brand lettering + +// Set Units +@settings(defaultLengthUnit = in) + +// Define constants +baseColor = "#0f0f0f" +highlightColor1 = "#b0b0b0" +highlightColor2 = "#23af93" +keyHeight = 0.8 +keyDepth = 0.1 +spacing = 0.1 +row1 = spacing * 3 +row2 = row1 + keyHeight + spacing +row3 = row2 + keyHeight + spacing +row4 = row3 + keyHeight + spacing +row5 = row4 + keyHeight + spacing +row6 = row5 + keyHeight + spacing + +// Sketch the side profile of the keyboard base and extrude to total width +sketch001 = startSketchOn('YZ') + |> startProfileAt([0, 0], %) + |> line(end = [-0.14, 0.68], tag = $seg01) + |> angledLine([7, row6 + 3 * spacing + keyHeight], %, $seg02) + |> line(endAbsolute = [5.13, 0], tag = $seg03) + |> line(endAbsolute = [profileStartX(%), profileStartY(%)], tag = $seg04) + |> close() + |> extrude(length = 13.6) + |> appearance(color = baseColor) + |> fillet( + radius = .6, + tags = [ + getOppositeEdge(seg01), + getOppositeEdge(seg03), + seg01, + seg03 + ], + ) + +// Create a short cylindrical foot at each corner of the keyboard +sketch003 = startSketchOn(sketch001, seg04) +profile001 = circle(sketch003, center = [0.75, 0.75], radius = 0.4) +profile003 = circle(sketch003, center = [4.4, 0.75], radius = 0.4) +profile004 = circle(sketch003, center = [0.73, 13.6 - .75], radius = 0.4) +profile005 = circle(sketch003, center = [4.4, 13.6 - .75], radius = 0.4) +extrude( + [ + profile001, + profile003, + profile004, + profile005 + ], + length = .15, +) + +// Define the plane to sketch keyboard keys on +plane001 = { + plane = { + origin = [0.0, 0.0, 0.7], + xAxis = [1.0, 0.0, 0.0], + yAxis = [0.0, 1.0, sin(toRadians(7))], + zAxis = [0.0, 0.0, 1.0] + } +} + +// Create a function to build a key. Parameterize for position, width, height, number of instances, and appearance color. +fn keyFn(originStart, keyWidth, keyHeight, repeats, color) { + sketch002 = startSketchOn(plane001) + profile002 = startProfileAt([originStart[0], originStart[1]], sketch002) + |> arc({ + angleStart = 180, + angleEnd = 270, + radius = 0.1 + }, %) + |> angledLine([0, keyWidth - .2], %, $rectangleSegmentA001) + |> tangentialArc({ radius = 0.1, offset = 90 }, %) + |> angledLine([ + segAng(rectangleSegmentA001) + 90, + keyHeight - .2 + ], %, $rectangleSegmentB001) + |> tangentialArc({ radius = 0.1, offset = 90 }, %) + |> angledLine([ + segAng(rectangleSegmentA001), + -segLen(rectangleSegmentA001) + ], %, $rectangleSegmentC001) + |> tangentialArc({ radius = 0.1, offset = 90 }, %) + |> line(endAbsolute = [profileStartX(%), profileStartY(%)], tag = $rectangleSegmentD001) + |> close() + |> extrude(length = keyDepth) + |> appearance(color = color) +// Repeat key when desired. This will default to zero + |> patternLinear3d( + %, + instances = repeats + 1, + distance = keyWidth + spacing, + axis = [1, 0, 0], + ) + return sketch001 +} + +// Build the first row of keys +keyFn([0.3, row1], 1.1, keyHeight, 0, highlightColor2) +keyFn([1.5, row1], 0.8, keyHeight, 2, highlightColor1) +keyFn([spacing * 7 + 3.5, row1], 5.2, keyHeight, 0, highlightColor2) +keyFn([spacing * 8 + 8.7, row1], 0.8, keyHeight, 0, highlightColor1) +keyFn([spacing * 8 + 9.6, row1], 0.8, keyHeight, 0, highlightColor1) +keyFn([spacing * 10 + 10.3, row1], 1.1, keyHeight, 0, highlightColor1) +keyFn([spacing * 12 + 10.3 + 1, row1], 0.8, keyHeight, 0, highlightColor2) + +// Build the second row of keys +keyFn([spacing * 3, row2], 1.7, keyHeight, 0, highlightColor2) +keyFn([spacing * 4 + 1.7, row2], 0.8, keyHeight, 9, highlightColor1) +keyFn([spacing * 14 + 1.7 + 0.8 * 10, row2], 2.2, keyHeight, 0, highlightColor2) + +// Build the third row of keys +keyFn([spacing * 3, row3], 1.1 + .1, keyHeight, 0, highlightColor1) +keyFn([spacing * 4 + 1.1 + .1, row3], 0.8, keyHeight, 10, highlightColor1) +keyFn([spacing * 3 + 11.1 + .1, row3], 1.4 + .4, keyHeight, 0, highlightColor2) + +// Build the fourth row of keys +keyFn([spacing * 3, row4], 0.9, keyHeight, 0, highlightColor1) +keyFn([spacing * 4 + 0.9, row4], 0.8, keyHeight, 11, highlightColor1) +keyFn([spacing * 3 + 11.8, row4], 1.2, keyHeight, 0, highlightColor1) + +// Build the fifth row of keys +keyFn([spacing * 3, row5], 0.8, keyHeight, 12, highlightColor1) +keyFn([spacing * 3 + 11.7, row5], 1.3, keyHeight, 0, highlightColor2) + +// Build the sixth row of keys +keyFn([spacing * 3, row6], 1.1, keyHeight * .6, 0, highlightColor2) +keyFn([spacing * 4 + 1.1, row6], 0.8, keyHeight * .6, 11, highlightColor1) +keyFn([spacing * 3 + 12, row6], 1, keyHeight * .6, 0, highlightColor2) + +// Create a plane to sketch ZOO brand letters on +plane002 = { + plane = { + origin = [0.0, 0.0, .81], + xAxis = [1.0, 0.0, 0.0], + yAxis = [0.0, 1.0, sin(toRadians(7))], + zAxis = [0.0, 0.0, 1.0] + } +} + +// Define a function to draw the ZOO 'Z' +fn z(origin, scale, depth) { + z = startSketchOn(plane002) + |> startProfileAt([ + 0 + origin[0], + 0.15 * scale + origin[1] + ], %) + |> yLine(length = -0.15 * scale) + |> xLine(length = 0.15 * scale) + |> angledLineToX({ + angle = 47.15, + to = 0.3 * scale + origin[0] + }, %, $seg1) + |> yLine(endAbsolute = 0 + origin[1], tag = $seg3) + |> xLine(length = 0.63 * scale) + |> yLine(length = 0.225 * scale) + |> xLine(length = -0.57 * scale) + |> angledLineToX({ + angle = 47.15, + to = 0.93 * scale + origin[0] + }, %) + |> yLine(length = 0.15 * scale) + |> xLine(length = -0.15 * scale) + |> angledLine({ + angle = 47.15, + length = -segLen(seg1) + }, %, $seg2) + |> yLine(length = segLen(seg3)) + |> xLine(endAbsolute = 0 + origin[0]) + |> yLine(length = -0.225 * scale) + |> angledLineThatIntersects({ + angle = 0, + intersectTag = seg2, + offset = 0 + }, %) + |> close() + |> extrude(length = -depth) + |> appearance(color = baseColor) + return z +} + +// Define a function to draw the ZOO 'O' +fn o(origin, scale, depth) { + oSketch001 = startSketchOn(plane002) + |> startProfileAt([ + .788 * scale + origin[0], + .921 * scale + origin[1] + ], %) + |> arc({ + angleStart = 47.15 + 6, + angleEnd = 47.15 - 6 + 180, + radius = .525 * scale + }, %) + |> angledLine({ angle = 47.15, length = .24 * scale }, %) + |> arc({ + angleStart = 47.15 - 11 + 180, + angleEnd = 47.15 + 11, + radius = .288 * scale + }, %) + |> close() + |> extrude(length = -depth) + |> appearance(color = baseColor) + + o = startSketchOn(plane002) + |> startProfileAt([ + .16 * scale + origin[0], + .079 * scale + origin[1] + ], %) + |> arc({ + angleStart = 47.15 + 6 - 180, + angleEnd = 47.15 - 6, + radius = .525 * scale + }, %) + |> angledLine({ angle = 47.15, length = -.24 * scale }, %) + |> arc({ + angleStart = 47.15 - 11, + angleEnd = 47.15 + 11 - 180, + radius = .288 * scale + }, %) + |> close() + |> extrude(length = -depth) + |> appearance(color = baseColor) + return o +} + +// Place the Z logo on the Z key. Place the O logo on the O and P keys +z([2.3, 1.3], .4, 0.03) +o([8.71, row4 + .08], 0.4, 0.03) +o([8.71 + 0.9, row4 + .08], 0.4, 0.03) diff --git a/public/kcl-samples/manifest.json b/public/kcl-samples/manifest.json index b6ce2c1e3..f643e9119 100644 --- a/public/kcl-samples/manifest.json +++ b/public/kcl-samples/manifest.json @@ -160,6 +160,13 @@ "title": "I-beam", "description": "A structural metal beam with an I shaped cross section. Often used in construction" }, + { + "file": "main.kcl", + "pathFromProjectDirectoryToFirstFile": "keyboard/main.kcl", + "multipleFiles": false, + "title": "Zoo Keyboard", + "description": "A custom keyboard with Zoo brand lettering" + }, { "file": "main.kcl", "pathFromProjectDirectoryToFirstFile": "kitt/main.kcl", diff --git a/public/kcl-samples/screenshots/keyboard.png b/public/kcl-samples/screenshots/keyboard.png new file mode 100644 index 0000000000000000000000000000000000000000..b9e303a431cfe44a26313a5431ae32c08adbed36 GIT binary patch literal 83859 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 literal 0 HcmV?d00001 diff --git a/rust/kcl-lib/tests/kcl_samples/keyboard/artifact_commands.snap b/rust/kcl-lib/tests/kcl_samples/keyboard/artifact_commands.snap new file mode 100644 index 000000000..704efd8f5 --- /dev/null +++ b/rust/kcl-lib/tests/kcl_samples/keyboard/artifact_commands.snap @@ -0,0 +1,14206 @@ +--- +source: kcl-lib/src/simulation_tests.rs +description: Artifact commands keyboard.kcl +--- +[ + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "edge_lines_visible", + "hidden": false + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_scene_units", + "unit": "mm" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_scene_units", + "unit": "in" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.14, + "y": 0.68, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 5.856, + "y": 0.719, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 5.13, + "y": 0.0, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 13.6, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.05882353, + "g": 0.05882353, + "b": 0.05882353, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.6, + "tolerance": 0.0000001, + "cut_type": "fillet" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.6, + "tolerance": 0.0000001, + "cut_type": "fillet" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.6, + "tolerance": 0.0000001, + "cut_type": "fillet" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.6, + "tolerance": 0.0000001, + "cut_type": "fillet" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 1.15, + "y": 0.75, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.75, + "y": 0.75 + }, + "radius": 0.4, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 4.800000000000001, + "y": 0.75, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 4.4, + "y": 0.75 + }, + "radius": 0.4, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 1.13, + "y": 12.85, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.73, + "y": 12.85 + }, + "radius": 0.4, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 4.800000000000001, + "y": 12.85, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 4.4, + "y": 12.85 + }, + "radius": 0.4, + "start": { + "unit": "degrees", + "value": 0.0 + }, + "end": { + "unit": "degrees", + "value": 360.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.15, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.15, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.15, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.15, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.3, + "y": 0.30000000000000004, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.4, + "y": 0.3 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.9, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.9, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.3, + "y": 0.3, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.13725491, + "g": 0.6862745, + "b": 0.5764706, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 1.5, + "y": 0.30000000000000004, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 1.6, + "y": 0.3 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.6, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.6, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 1.5, + "y": 0.3, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.6901961, + "g": 0.6901961, + "b": 0.6901961, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [ + [ + { + "translate": { + "x": 0.9, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 1.8, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ] + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 4.2, + "y": 0.30000000000000004, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 4.3, + "y": 0.3 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 5.0, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -5.0, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 4.2, + "y": 0.3, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.13725491, + "g": 0.6862745, + "b": 0.5764706, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 9.5, + "y": 0.30000000000000004, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 9.6, + "y": 0.3 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.6, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.6, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 9.5, + "y": 0.3, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.6901961, + "g": 0.6901961, + "b": 0.6901961, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 10.4, + "y": 0.30000000000000004, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 10.5, + "y": 0.3 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.6, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.6, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 10.4, + "y": 0.3, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.6901961, + "g": 0.6901961, + "b": 0.6901961, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 11.3, + "y": 0.30000000000000004, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 11.4, + "y": 0.3 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.9, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.9, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 11.3, + "y": 0.3, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.6901961, + "g": 0.6901961, + "b": 0.6901961, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 12.5, + "y": 0.30000000000000004, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 12.6, + "y": 0.3 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.6, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.6, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 12.5, + "y": 0.3, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.13725491, + "g": 0.6862745, + "b": 0.5764706, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.30000000000000004, + "y": 1.2000000000000002, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.4, + "y": 1.2 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 1.5, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -1.5, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.3, + "y": 1.2, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.13725491, + "g": 0.6862745, + "b": 0.5764706, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 2.1, + "y": 1.2000000000000002, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 2.2, + "y": 1.2 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.6, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.6, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 2.1, + "y": 1.2, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.6901961, + "g": 0.6901961, + "b": 0.6901961, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [ + [ + { + "translate": { + "x": 0.9, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 1.8, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 2.7, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 3.6, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 4.5, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 5.4, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 6.3, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 7.2, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 8.1, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ] + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 11.1, + "y": 1.2000000000000002, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 11.2, + "y": 1.2 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 2.0, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -2.0, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 11.1, + "y": 1.2, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.13725491, + "g": 0.6862745, + "b": 0.5764706, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.30000000000000004, + "y": 2.1, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.4, + "y": 2.1 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -1.0, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.3, + "y": 2.1, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.6901961, + "g": 0.6901961, + "b": 0.6901961, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 1.6, + "y": 2.1, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 1.7, + "y": 2.1 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.6, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.6, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 1.6, + "y": 2.1, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.6901961, + "g": 0.6901961, + "b": 0.6901961, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [ + [ + { + "translate": { + "x": 0.9, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 1.8, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 2.7, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 3.6, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 4.5, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 5.4, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 6.3, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 7.2, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 8.1, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 9.0, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ] + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 11.5, + "y": 2.1, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 11.6, + "y": 2.1 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 1.6, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -1.6, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 11.5, + "y": 2.1, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.13725491, + "g": 0.6862745, + "b": 0.5764706, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.30000000000000004, + "y": 3.0000000000000004, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.4, + "y": 3.0 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.7, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.7, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.3, + "y": 3.0, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.6901961, + "g": 0.6901961, + "b": 0.6901961, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 1.3, + "y": 3.0000000000000004, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 1.4, + "y": 3.0 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.6, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.6, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 1.3, + "y": 3.0, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.6901961, + "g": 0.6901961, + "b": 0.6901961, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [ + [ + { + "translate": { + "x": 0.9, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 1.8, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 2.7, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 3.6, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 4.5, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 5.4, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 6.3, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 7.2, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 8.1, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 9.0, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 9.9, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ] + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 12.100000000000001, + "y": 3.0000000000000004, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 12.2, + "y": 3.0 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -1.0, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 12.1, + "y": 3.0, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.6901961, + "g": 0.6901961, + "b": 0.6901961, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.30000000000000004, + "y": 3.900000000000001, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.4, + "y": 3.9 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.6, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.6, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.3, + "y": 3.9, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.6901961, + "g": 0.6901961, + "b": 0.6901961, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [ + [ + { + "translate": { + "x": 0.9, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 1.8, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 2.7, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 3.6, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 4.5, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 5.4, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 6.3, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 7.2, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 8.1, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 9.0, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 9.9, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 10.8, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ] + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 12.0, + "y": 3.900000000000001, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 12.1, + "y": 3.9 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 1.1, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.6, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -1.1, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 12.0, + "y": 3.9, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.13725491, + "g": 0.6862745, + "b": 0.5764706, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.30000000000000004, + "y": 4.800000000000001, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 0.4, + "y": 4.8 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.9, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.28, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.9, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.3, + "y": 4.8, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.13725491, + "g": 0.6862745, + "b": 0.5764706, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 1.5, + "y": 4.800000000000001, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 1.6, + "y": 4.8 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.6, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.28, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.6, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 1.5, + "y": 4.8, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.6901961, + "g": 0.6901961, + "b": 0.6901961, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [ + [ + { + "translate": { + "x": 0.9, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 1.8, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 2.7, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 3.6, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 4.5, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 5.4, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 6.3, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 7.2, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 8.1, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 9.0, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ], + [ + { + "translate": { + "x": 9.9, + "y": 0.0, + "z": 0.0 + }, + "scale": { + "x": 1.0, + "y": 1.0, + "z": 1.0 + }, + "rotation": { + "axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "angle": { + "unit": "degrees", + "value": 0.0 + }, + "origin": { + "type": "local" + } + }, + "replicate": true + } + ] + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.7 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 12.3, + "y": 4.800000000000001, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 12.4, + "y": 4.8 + }, + "radius": 0.1, + "start": { + "unit": "degrees", + "value": 180.0 + }, + "end": { + "unit": "degrees", + "value": 270.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.8, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.28, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.8, + "y": -0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "tangential_arc", + "radius": 0.1, + "offset": { + "unit": "degrees", + "value": 90.0 + } + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 12.3, + "y": 4.8, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.1, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.13725491, + "g": 0.6862745, + "b": 0.5764706, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.81 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 2.3, + "y": 1.36, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": -0.06, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.06, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 2.42, + "y": 1.3647, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 2.42, + "y": 1.3, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.252, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.09, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.228, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 2.672, + "y": 1.6358, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.06, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.06, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.06, + "y": -0.0647, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": 0.0647, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 2.3, + "y": 1.6958, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": -0.09, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 2.5285, + "y": 1.6058, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": -0.03, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.05882353, + "g": 0.05882353, + "b": 0.05882353, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.81 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 9.025200000000002, + "y": 3.4484000000000004, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 8.8993, + "y": 3.2804 + }, + "radius": 0.21000000000000002, + "start": { + "unit": "degrees", + "value": 53.15 + }, + "end": { + "unit": "degrees", + "value": 221.15 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0653, + "y": 0.0704, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 8.8994, + "y": 3.2805 + }, + "radius": 0.1152, + "start": { + "unit": "degrees", + "value": 216.15 + }, + "end": { + "unit": "degrees", + "value": 58.15 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": -0.03, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.05882353, + "g": 0.05882353, + "b": 0.05882353, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.81 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 8.774000000000001, + "y": 3.1116000000000006, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 8.8999, + "y": 3.2796 + }, + "radius": 0.21000000000000002, + "start": { + "unit": "degrees", + "value": -126.85 + }, + "end": { + "unit": "degrees", + "value": 41.15 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.0653, + "y": -0.0704, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 8.8998, + "y": 3.2795 + }, + "radius": 0.1152, + "start": { + "unit": "degrees", + "value": 36.15 + }, + "end": { + "unit": "degrees", + "value": -121.85 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": -0.03, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.05882353, + "g": 0.05882353, + "b": 0.05882353, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.81 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 9.925200000000002, + "y": 3.4484000000000004, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 9.7993, + "y": 3.2804 + }, + "radius": 0.21000000000000002, + "start": { + "unit": "degrees", + "value": 53.15 + }, + "end": { + "unit": "degrees", + "value": 221.15 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0653, + "y": 0.0704, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 9.7994, + "y": 3.2805 + }, + "radius": 0.1152, + "start": { + "unit": "degrees", + "value": 216.15 + }, + "end": { + "unit": "degrees", + "value": 58.15 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": -0.03, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.05882353, + "g": 0.05882353, + "b": 0.05882353, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.81 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 1.0, + "z": 0.12186934340514748 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 9.674000000000001, + "y": 3.1116000000000006, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 9.7999, + "y": 3.2796 + }, + "radius": 0.21000000000000002, + "start": { + "unit": "degrees", + "value": -126.85 + }, + "end": { + "unit": "degrees", + "value": 41.15 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.0653, + "y": -0.0704, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "arc", + "center": { + "x": 9.7998, + "y": 3.2795 + }, + "radius": 0.1152, + "start": { + "unit": "degrees", + "value": 36.15 + }, + "end": { + "unit": "degrees", + "value": -121.85 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": -0.03, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.05882353, + "g": 0.05882353, + "b": 0.05882353, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + } +] diff --git a/rust/kcl-lib/tests/kcl_samples/keyboard/artifact_graph_flowchart.snap b/rust/kcl-lib/tests/kcl_samples/keyboard/artifact_graph_flowchart.snap new file mode 100644 index 000000000..f2762c805 --- /dev/null +++ b/rust/kcl-lib/tests/kcl_samples/keyboard/artifact_graph_flowchart.snap @@ -0,0 +1,6 @@ +--- +source: kcl-lib/src/simulation_tests.rs +description: Artifact graph flowchart keyboard.kcl +extension: md +snapshot_kind: binary +--- diff --git a/rust/kcl-lib/tests/kcl_samples/keyboard/artifact_graph_flowchart.snap.md b/rust/kcl-lib/tests/kcl_samples/keyboard/artifact_graph_flowchart.snap.md new file mode 100644 index 000000000..e719a3e6b --- /dev/null +++ b/rust/kcl-lib/tests/kcl_samples/keyboard/artifact_graph_flowchart.snap.md @@ -0,0 +1,2736 @@ +```mermaid +flowchart LR + subgraph path2 [Path] + 2["Path
[556, 581, 0]"] + 3["Segment
[587, 626, 0]"] + 4["Segment
[632, 690, 0]"] + 5["Segment
[696, 739, 0]"] + 6["Segment
[745, 815, 0]"] + 7["Segment
[821, 828, 0]"] + 8[Solid2d] + end + subgraph path28 [Path] + 28["Path
[1179, 1233, 0]"] + 29["Segment
[1179, 1233, 0]"] + 30[Solid2d] + end + subgraph path31 [Path] + 31["Path
[1247, 1300, 0]"] + 32["Segment
[1247, 1300, 0]"] + 33[Solid2d] + end + subgraph path34 [Path] + 34["Path
[1314, 1374, 0]"] + 35["Segment
[1314, 1374, 0]"] + 36[Solid2d] + end + subgraph path37 [Path] + 37["Path
[1388, 1447, 0]"] + 38["Segment
[1388, 1447, 0]"] + 39[Solid2d] + end + subgraph path61 [Path] + 61["Path
[1993, 2052, 0]"] + 62["Segment
[2060, 2152, 0]"] + 63["Segment
[2160, 2216, 0]"] + 64["Segment
[2224, 2271, 0]"] + 65["Segment
[2279, 2395, 0]"] + 66["Segment
[2403, 2450, 0]"] + 67["Segment
[2458, 2584, 0]"] + 68["Segment
[2592, 2639, 0]"] + 69["Segment
[2647, 2732, 0]"] + 70["Segment
[2740, 2747, 0]"] + 71[Solid2d] + end + subgraph path100 [Path] + 100["Path
[1993, 2052, 0]"] + 101["Segment
[2060, 2152, 0]"] + 102["Segment
[2160, 2216, 0]"] + 103["Segment
[2224, 2271, 0]"] + 104["Segment
[2279, 2395, 0]"] + 105["Segment
[2403, 2450, 0]"] + 106["Segment
[2458, 2584, 0]"] + 107["Segment
[2592, 2639, 0]"] + 108["Segment
[2647, 2732, 0]"] + 109["Segment
[2740, 2747, 0]"] + 110[Solid2d] + end + subgraph path139 [Path] + 139["Path
[1993, 2052, 0]"] + 140["Segment
[2060, 2152, 0]"] + 141["Segment
[2160, 2216, 0]"] + 142["Segment
[2224, 2271, 0]"] + 143["Segment
[2279, 2395, 0]"] + 144["Segment
[2403, 2450, 0]"] + 145["Segment
[2458, 2584, 0]"] + 146["Segment
[2592, 2639, 0]"] + 147["Segment
[2647, 2732, 0]"] + 148["Segment
[2740, 2747, 0]"] + 149[Solid2d] + end + subgraph path178 [Path] + 178["Path
[1993, 2052, 0]"] + 179["Segment
[2060, 2152, 0]"] + 180["Segment
[2160, 2216, 0]"] + 181["Segment
[2224, 2271, 0]"] + 182["Segment
[2279, 2395, 0]"] + 183["Segment
[2403, 2450, 0]"] + 184["Segment
[2458, 2584, 0]"] + 185["Segment
[2592, 2639, 0]"] + 186["Segment
[2647, 2732, 0]"] + 187["Segment
[2740, 2747, 0]"] + 188[Solid2d] + end + subgraph path217 [Path] + 217["Path
[1993, 2052, 0]"] + 218["Segment
[2060, 2152, 0]"] + 219["Segment
[2160, 2216, 0]"] + 220["Segment
[2224, 2271, 0]"] + 221["Segment
[2279, 2395, 0]"] + 222["Segment
[2403, 2450, 0]"] + 223["Segment
[2458, 2584, 0]"] + 224["Segment
[2592, 2639, 0]"] + 225["Segment
[2647, 2732, 0]"] + 226["Segment
[2740, 2747, 0]"] + 227[Solid2d] + end + subgraph path256 [Path] + 256["Path
[1993, 2052, 0]"] + 257["Segment
[2060, 2152, 0]"] + 258["Segment
[2160, 2216, 0]"] + 259["Segment
[2224, 2271, 0]"] + 260["Segment
[2279, 2395, 0]"] + 261["Segment
[2403, 2450, 0]"] + 262["Segment
[2458, 2584, 0]"] + 263["Segment
[2592, 2639, 0]"] + 264["Segment
[2647, 2732, 0]"] + 265["Segment
[2740, 2747, 0]"] + 266[Solid2d] + end + subgraph path295 [Path] + 295["Path
[1993, 2052, 0]"] + 296["Segment
[2060, 2152, 0]"] + 297["Segment
[2160, 2216, 0]"] + 298["Segment
[2224, 2271, 0]"] + 299["Segment
[2279, 2395, 0]"] + 300["Segment
[2403, 2450, 0]"] + 301["Segment
[2458, 2584, 0]"] + 302["Segment
[2592, 2639, 0]"] + 303["Segment
[2647, 2732, 0]"] + 304["Segment
[2740, 2747, 0]"] + 305[Solid2d] + end + subgraph path334 [Path] + 334["Path
[1993, 2052, 0]"] + 335["Segment
[2060, 2152, 0]"] + 336["Segment
[2160, 2216, 0]"] + 337["Segment
[2224, 2271, 0]"] + 338["Segment
[2279, 2395, 0]"] + 339["Segment
[2403, 2450, 0]"] + 340["Segment
[2458, 2584, 0]"] + 341["Segment
[2592, 2639, 0]"] + 342["Segment
[2647, 2732, 0]"] + 343["Segment
[2740, 2747, 0]"] + 344[Solid2d] + end + subgraph path373 [Path] + 373["Path
[1993, 2052, 0]"] + 374["Segment
[2060, 2152, 0]"] + 375["Segment
[2160, 2216, 0]"] + 376["Segment
[2224, 2271, 0]"] + 377["Segment
[2279, 2395, 0]"] + 378["Segment
[2403, 2450, 0]"] + 379["Segment
[2458, 2584, 0]"] + 380["Segment
[2592, 2639, 0]"] + 381["Segment
[2647, 2732, 0]"] + 382["Segment
[2740, 2747, 0]"] + 383[Solid2d] + end + subgraph path412 [Path] + 412["Path
[1993, 2052, 0]"] + 413["Segment
[2060, 2152, 0]"] + 414["Segment
[2160, 2216, 0]"] + 415["Segment
[2224, 2271, 0]"] + 416["Segment
[2279, 2395, 0]"] + 417["Segment
[2403, 2450, 0]"] + 418["Segment
[2458, 2584, 0]"] + 419["Segment
[2592, 2639, 0]"] + 420["Segment
[2647, 2732, 0]"] + 421["Segment
[2740, 2747, 0]"] + 422[Solid2d] + end + subgraph path451 [Path] + 451["Path
[1993, 2052, 0]"] + 452["Segment
[2060, 2152, 0]"] + 453["Segment
[2160, 2216, 0]"] + 454["Segment
[2224, 2271, 0]"] + 455["Segment
[2279, 2395, 0]"] + 456["Segment
[2403, 2450, 0]"] + 457["Segment
[2458, 2584, 0]"] + 458["Segment
[2592, 2639, 0]"] + 459["Segment
[2647, 2732, 0]"] + 460["Segment
[2740, 2747, 0]"] + 461[Solid2d] + end + subgraph path490 [Path] + 490["Path
[1993, 2052, 0]"] + 491["Segment
[2060, 2152, 0]"] + 492["Segment
[2160, 2216, 0]"] + 493["Segment
[2224, 2271, 0]"] + 494["Segment
[2279, 2395, 0]"] + 495["Segment
[2403, 2450, 0]"] + 496["Segment
[2458, 2584, 0]"] + 497["Segment
[2592, 2639, 0]"] + 498["Segment
[2647, 2732, 0]"] + 499["Segment
[2740, 2747, 0]"] + 500[Solid2d] + end + subgraph path529 [Path] + 529["Path
[1993, 2052, 0]"] + 530["Segment
[2060, 2152, 0]"] + 531["Segment
[2160, 2216, 0]"] + 532["Segment
[2224, 2271, 0]"] + 533["Segment
[2279, 2395, 0]"] + 534["Segment
[2403, 2450, 0]"] + 535["Segment
[2458, 2584, 0]"] + 536["Segment
[2592, 2639, 0]"] + 537["Segment
[2647, 2732, 0]"] + 538["Segment
[2740, 2747, 0]"] + 539[Solid2d] + end + subgraph path568 [Path] + 568["Path
[1993, 2052, 0]"] + 569["Segment
[2060, 2152, 0]"] + 570["Segment
[2160, 2216, 0]"] + 571["Segment
[2224, 2271, 0]"] + 572["Segment
[2279, 2395, 0]"] + 573["Segment
[2403, 2450, 0]"] + 574["Segment
[2458, 2584, 0]"] + 575["Segment
[2592, 2639, 0]"] + 576["Segment
[2647, 2732, 0]"] + 577["Segment
[2740, 2747, 0]"] + 578[Solid2d] + end + subgraph path607 [Path] + 607["Path
[1993, 2052, 0]"] + 608["Segment
[2060, 2152, 0]"] + 609["Segment
[2160, 2216, 0]"] + 610["Segment
[2224, 2271, 0]"] + 611["Segment
[2279, 2395, 0]"] + 612["Segment
[2403, 2450, 0]"] + 613["Segment
[2458, 2584, 0]"] + 614["Segment
[2592, 2639, 0]"] + 615["Segment
[2647, 2732, 0]"] + 616["Segment
[2740, 2747, 0]"] + 617[Solid2d] + end + subgraph path646 [Path] + 646["Path
[1993, 2052, 0]"] + 647["Segment
[2060, 2152, 0]"] + 648["Segment
[2160, 2216, 0]"] + 649["Segment
[2224, 2271, 0]"] + 650["Segment
[2279, 2395, 0]"] + 651["Segment
[2403, 2450, 0]"] + 652["Segment
[2458, 2584, 0]"] + 653["Segment
[2592, 2639, 0]"] + 654["Segment
[2647, 2732, 0]"] + 655["Segment
[2740, 2747, 0]"] + 656[Solid2d] + end + subgraph path685 [Path] + 685["Path
[1993, 2052, 0]"] + 686["Segment
[2060, 2152, 0]"] + 687["Segment
[2160, 2216, 0]"] + 688["Segment
[2224, 2271, 0]"] + 689["Segment
[2279, 2395, 0]"] + 690["Segment
[2403, 2450, 0]"] + 691["Segment
[2458, 2584, 0]"] + 692["Segment
[2592, 2639, 0]"] + 693["Segment
[2647, 2732, 0]"] + 694["Segment
[2740, 2747, 0]"] + 695[Solid2d] + end + subgraph path724 [Path] + 724["Path
[1993, 2052, 0]"] + 725["Segment
[2060, 2152, 0]"] + 726["Segment
[2160, 2216, 0]"] + 727["Segment
[2224, 2271, 0]"] + 728["Segment
[2279, 2395, 0]"] + 729["Segment
[2403, 2450, 0]"] + 730["Segment
[2458, 2584, 0]"] + 731["Segment
[2592, 2639, 0]"] + 732["Segment
[2647, 2732, 0]"] + 733["Segment
[2740, 2747, 0]"] + 734[Solid2d] + end + subgraph path763 [Path] + 763["Path
[1993, 2052, 0]"] + 764["Segment
[2060, 2152, 0]"] + 765["Segment
[2160, 2216, 0]"] + 766["Segment
[2224, 2271, 0]"] + 767["Segment
[2279, 2395, 0]"] + 768["Segment
[2403, 2450, 0]"] + 769["Segment
[2458, 2584, 0]"] + 770["Segment
[2592, 2639, 0]"] + 771["Segment
[2647, 2732, 0]"] + 772["Segment
[2740, 2747, 0]"] + 773[Solid2d] + end + subgraph path802 [Path] + 802["Path
[1993, 2052, 0]"] + 803["Segment
[2060, 2152, 0]"] + 804["Segment
[2160, 2216, 0]"] + 805["Segment
[2224, 2271, 0]"] + 806["Segment
[2279, 2395, 0]"] + 807["Segment
[2403, 2450, 0]"] + 808["Segment
[2458, 2584, 0]"] + 809["Segment
[2592, 2639, 0]"] + 810["Segment
[2647, 2732, 0]"] + 811["Segment
[2740, 2747, 0]"] + 812[Solid2d] + end + subgraph path841 [Path] + 841["Path
[1993, 2052, 0]"] + 842["Segment
[2060, 2152, 0]"] + 843["Segment
[2160, 2216, 0]"] + 844["Segment
[2224, 2271, 0]"] + 845["Segment
[2279, 2395, 0]"] + 846["Segment
[2403, 2450, 0]"] + 847["Segment
[2458, 2584, 0]"] + 848["Segment
[2592, 2639, 0]"] + 849["Segment
[2647, 2732, 0]"] + 850["Segment
[2740, 2747, 0]"] + 851[Solid2d] + end + subgraph path880 [Path] + 880["Path
[4999, 5086, 0]"] + 881["Segment
[5094, 5123, 0]"] + 882["Segment
[5131, 5159, 0]"] + 883["Segment
[5167, 5264, 0]"] + 884["Segment
[5272, 5319, 0]"] + 885["Segment
[5327, 5355, 0]"] + 886["Segment
[5363, 5392, 0]"] + 887["Segment
[5400, 5429, 0]"] + 888["Segment
[5437, 5528, 0]"] + 889["Segment
[5536, 5564, 0]"] + 890["Segment
[5572, 5601, 0]"] + 891["Segment
[5609, 5697, 0]"] + 892["Segment
[5705, 5733, 0]"] + 893["Segment
[5741, 5775, 0]"] + 894["Segment
[5783, 5813, 0]"] + 895["Segment
[5821, 5930, 0]"] + 896["Segment
[5938, 5945, 0]"] + 897[Solid2d] + end + subgraph path950 [Path] + 950["Path
[6145, 6243, 0]"] + 951["Segment
[6251, 6370, 0]"] + 952["Segment
[6378, 6432, 0]"] + 953["Segment
[6440, 6561, 0]"] + 954["Segment
[6569, 6576, 0]"] + 955[Solid2d] + end + subgraph path972 [Path] + 972["Path
[6684, 6781, 0]"] + 973["Segment
[6789, 6908, 0]"] + 974["Segment
[6916, 6971, 0]"] + 975["Segment
[6979, 7100, 0]"] + 976["Segment
[7108, 7115, 0]"] + 977[Solid2d] + end + subgraph path994 [Path] + 994["Path
[6145, 6243, 0]"] + 995["Segment
[6251, 6370, 0]"] + 996["Segment
[6378, 6432, 0]"] + 997["Segment
[6440, 6561, 0]"] + 998["Segment
[6569, 6576, 0]"] + 999[Solid2d] + end + subgraph path1016 [Path] + 1016["Path
[6684, 6781, 0]"] + 1017["Segment
[6789, 6908, 0]"] + 1018["Segment
[6916, 6971, 0]"] + 1019["Segment
[6979, 7100, 0]"] + 1020["Segment
[7108, 7115, 0]"] + 1021[Solid2d] + end + 1["Plane
[531, 550, 0]"] + 9["Sweep Extrusion
[834, 856, 0]"] + 10[Wall] + 11[Wall] + 12[Wall] + 13[Wall] + 14["Cap Start"] + 15["Cap End"] + 16["SweepEdge Opposite"] + 17["SweepEdge Adjacent"] + 18["SweepEdge Opposite"] + 19["SweepEdge Adjacent"] + 20["SweepEdge Opposite"] + 21["SweepEdge Adjacent"] + 22["SweepEdge Opposite"] + 23["SweepEdge Adjacent"] + 24["EdgeCut Fillet
[897, 1054, 0]"] + 25["EdgeCut Fillet
[897, 1054, 0]"] + 26["EdgeCut Fillet
[897, 1054, 0]"] + 27["EdgeCut Fillet
[897, 1054, 0]"] + 40["Sweep Extrusion
[1448, 1546, 0]"] + 41[Wall] + 42["Cap End"] + 43["SweepEdge Opposite"] + 44["SweepEdge Adjacent"] + 45["Sweep Extrusion
[1448, 1546, 0]"] + 46[Wall] + 47["Cap End"] + 48["SweepEdge Opposite"] + 49["SweepEdge Adjacent"] + 50["Sweep Extrusion
[1448, 1546, 0]"] + 51[Wall] + 52["Cap End"] + 53["SweepEdge Opposite"] + 54["SweepEdge Adjacent"] + 55["Sweep Extrusion
[1448, 1546, 0]"] + 56[Wall] + 57["Cap End"] + 58["SweepEdge Opposite"] + 59["SweepEdge Adjacent"] + 60["Plane
[1954, 1977, 0]"] + 72["Sweep Extrusion
[2755, 2781, 0]"] + 73[Wall] + 74[Wall] + 75[Wall] + 76[Wall] + 77[Wall] + 78[Wall] + 79[Wall] + 80[Wall] + 81["Cap Start"] + 82["Cap End"] + 83["SweepEdge Opposite"] + 84["SweepEdge Adjacent"] + 85["SweepEdge Opposite"] + 86["SweepEdge Adjacent"] + 87["SweepEdge Opposite"] + 88["SweepEdge Adjacent"] + 89["SweepEdge Opposite"] + 90["SweepEdge Adjacent"] + 91["SweepEdge Opposite"] + 92["SweepEdge Adjacent"] + 93["SweepEdge Opposite"] + 94["SweepEdge Adjacent"] + 95["SweepEdge Opposite"] + 96["SweepEdge Adjacent"] + 97["SweepEdge Opposite"] + 98["SweepEdge Adjacent"] + 99["Plane
[1954, 1977, 0]"] + 111["Sweep Extrusion
[2755, 2781, 0]"] + 112[Wall] + 113[Wall] + 114[Wall] + 115[Wall] + 116[Wall] + 117[Wall] + 118[Wall] + 119[Wall] + 120["Cap Start"] + 121["Cap End"] + 122["SweepEdge Opposite"] + 123["SweepEdge Adjacent"] + 124["SweepEdge Opposite"] + 125["SweepEdge Adjacent"] + 126["SweepEdge Opposite"] + 127["SweepEdge Adjacent"] + 128["SweepEdge Opposite"] + 129["SweepEdge Adjacent"] + 130["SweepEdge Opposite"] + 131["SweepEdge Adjacent"] + 132["SweepEdge Opposite"] + 133["SweepEdge Adjacent"] + 134["SweepEdge Opposite"] + 135["SweepEdge Adjacent"] + 136["SweepEdge Opposite"] + 137["SweepEdge Adjacent"] + 138["Plane
[1954, 1977, 0]"] + 150["Sweep Extrusion
[2755, 2781, 0]"] + 151[Wall] + 152[Wall] + 153[Wall] + 154[Wall] + 155[Wall] + 156[Wall] + 157[Wall] + 158[Wall] + 159["Cap Start"] + 160["Cap End"] + 161["SweepEdge Opposite"] + 162["SweepEdge Adjacent"] + 163["SweepEdge Opposite"] + 164["SweepEdge Adjacent"] + 165["SweepEdge Opposite"] + 166["SweepEdge Adjacent"] + 167["SweepEdge Opposite"] + 168["SweepEdge Adjacent"] + 169["SweepEdge Opposite"] + 170["SweepEdge Adjacent"] + 171["SweepEdge Opposite"] + 172["SweepEdge Adjacent"] + 173["SweepEdge Opposite"] + 174["SweepEdge Adjacent"] + 175["SweepEdge Opposite"] + 176["SweepEdge Adjacent"] + 177["Plane
[1954, 1977, 0]"] + 189["Sweep Extrusion
[2755, 2781, 0]"] + 190[Wall] + 191[Wall] + 192[Wall] + 193[Wall] + 194[Wall] + 195[Wall] + 196[Wall] + 197[Wall] + 198["Cap Start"] + 199["Cap End"] + 200["SweepEdge Opposite"] + 201["SweepEdge Adjacent"] + 202["SweepEdge Opposite"] + 203["SweepEdge Adjacent"] + 204["SweepEdge Opposite"] + 205["SweepEdge Adjacent"] + 206["SweepEdge Opposite"] + 207["SweepEdge Adjacent"] + 208["SweepEdge Opposite"] + 209["SweepEdge Adjacent"] + 210["SweepEdge Opposite"] + 211["SweepEdge Adjacent"] + 212["SweepEdge Opposite"] + 213["SweepEdge Adjacent"] + 214["SweepEdge Opposite"] + 215["SweepEdge Adjacent"] + 216["Plane
[1954, 1977, 0]"] + 228["Sweep Extrusion
[2755, 2781, 0]"] + 229[Wall] + 230[Wall] + 231[Wall] + 232[Wall] + 233[Wall] + 234[Wall] + 235[Wall] + 236[Wall] + 237["Cap Start"] + 238["Cap End"] + 239["SweepEdge Opposite"] + 240["SweepEdge Adjacent"] + 241["SweepEdge Opposite"] + 242["SweepEdge Adjacent"] + 243["SweepEdge Opposite"] + 244["SweepEdge Adjacent"] + 245["SweepEdge Opposite"] + 246["SweepEdge Adjacent"] + 247["SweepEdge Opposite"] + 248["SweepEdge Adjacent"] + 249["SweepEdge Opposite"] + 250["SweepEdge Adjacent"] + 251["SweepEdge Opposite"] + 252["SweepEdge Adjacent"] + 253["SweepEdge Opposite"] + 254["SweepEdge Adjacent"] + 255["Plane
[1954, 1977, 0]"] + 267["Sweep Extrusion
[2755, 2781, 0]"] + 268[Wall] + 269[Wall] + 270[Wall] + 271[Wall] + 272[Wall] + 273[Wall] + 274[Wall] + 275[Wall] + 276["Cap Start"] + 277["Cap End"] + 278["SweepEdge Opposite"] + 279["SweepEdge Adjacent"] + 280["SweepEdge Opposite"] + 281["SweepEdge Adjacent"] + 282["SweepEdge Opposite"] + 283["SweepEdge Adjacent"] + 284["SweepEdge Opposite"] + 285["SweepEdge Adjacent"] + 286["SweepEdge Opposite"] + 287["SweepEdge Adjacent"] + 288["SweepEdge Opposite"] + 289["SweepEdge Adjacent"] + 290["SweepEdge Opposite"] + 291["SweepEdge Adjacent"] + 292["SweepEdge Opposite"] + 293["SweepEdge Adjacent"] + 294["Plane
[1954, 1977, 0]"] + 306["Sweep Extrusion
[2755, 2781, 0]"] + 307[Wall] + 308[Wall] + 309[Wall] + 310[Wall] + 311[Wall] + 312[Wall] + 313[Wall] + 314[Wall] + 315["Cap Start"] + 316["Cap End"] + 317["SweepEdge Opposite"] + 318["SweepEdge Adjacent"] + 319["SweepEdge Opposite"] + 320["SweepEdge Adjacent"] + 321["SweepEdge Opposite"] + 322["SweepEdge Adjacent"] + 323["SweepEdge Opposite"] + 324["SweepEdge Adjacent"] + 325["SweepEdge Opposite"] + 326["SweepEdge Adjacent"] + 327["SweepEdge Opposite"] + 328["SweepEdge Adjacent"] + 329["SweepEdge Opposite"] + 330["SweepEdge Adjacent"] + 331["SweepEdge Opposite"] + 332["SweepEdge Adjacent"] + 333["Plane
[1954, 1977, 0]"] + 345["Sweep Extrusion
[2755, 2781, 0]"] + 346[Wall] + 347[Wall] + 348[Wall] + 349[Wall] + 350[Wall] + 351[Wall] + 352[Wall] + 353[Wall] + 354["Cap Start"] + 355["Cap End"] + 356["SweepEdge Opposite"] + 357["SweepEdge Adjacent"] + 358["SweepEdge Opposite"] + 359["SweepEdge Adjacent"] + 360["SweepEdge Opposite"] + 361["SweepEdge Adjacent"] + 362["SweepEdge Opposite"] + 363["SweepEdge Adjacent"] + 364["SweepEdge Opposite"] + 365["SweepEdge Adjacent"] + 366["SweepEdge Opposite"] + 367["SweepEdge Adjacent"] + 368["SweepEdge Opposite"] + 369["SweepEdge Adjacent"] + 370["SweepEdge Opposite"] + 371["SweepEdge Adjacent"] + 372["Plane
[1954, 1977, 0]"] + 384["Sweep Extrusion
[2755, 2781, 0]"] + 385[Wall] + 386[Wall] + 387[Wall] + 388[Wall] + 389[Wall] + 390[Wall] + 391[Wall] + 392[Wall] + 393["Cap Start"] + 394["Cap End"] + 395["SweepEdge Opposite"] + 396["SweepEdge Adjacent"] + 397["SweepEdge Opposite"] + 398["SweepEdge Adjacent"] + 399["SweepEdge Opposite"] + 400["SweepEdge Adjacent"] + 401["SweepEdge Opposite"] + 402["SweepEdge Adjacent"] + 403["SweepEdge Opposite"] + 404["SweepEdge Adjacent"] + 405["SweepEdge Opposite"] + 406["SweepEdge Adjacent"] + 407["SweepEdge Opposite"] + 408["SweepEdge Adjacent"] + 409["SweepEdge Opposite"] + 410["SweepEdge Adjacent"] + 411["Plane
[1954, 1977, 0]"] + 423["Sweep Extrusion
[2755, 2781, 0]"] + 424[Wall] + 425[Wall] + 426[Wall] + 427[Wall] + 428[Wall] + 429[Wall] + 430[Wall] + 431[Wall] + 432["Cap Start"] + 433["Cap End"] + 434["SweepEdge Opposite"] + 435["SweepEdge Adjacent"] + 436["SweepEdge Opposite"] + 437["SweepEdge Adjacent"] + 438["SweepEdge Opposite"] + 439["SweepEdge Adjacent"] + 440["SweepEdge Opposite"] + 441["SweepEdge Adjacent"] + 442["SweepEdge Opposite"] + 443["SweepEdge Adjacent"] + 444["SweepEdge Opposite"] + 445["SweepEdge Adjacent"] + 446["SweepEdge Opposite"] + 447["SweepEdge Adjacent"] + 448["SweepEdge Opposite"] + 449["SweepEdge Adjacent"] + 450["Plane
[1954, 1977, 0]"] + 462["Sweep Extrusion
[2755, 2781, 0]"] + 463[Wall] + 464[Wall] + 465[Wall] + 466[Wall] + 467[Wall] + 468[Wall] + 469[Wall] + 470[Wall] + 471["Cap Start"] + 472["Cap End"] + 473["SweepEdge Opposite"] + 474["SweepEdge Adjacent"] + 475["SweepEdge Opposite"] + 476["SweepEdge Adjacent"] + 477["SweepEdge Opposite"] + 478["SweepEdge Adjacent"] + 479["SweepEdge Opposite"] + 480["SweepEdge Adjacent"] + 481["SweepEdge Opposite"] + 482["SweepEdge Adjacent"] + 483["SweepEdge Opposite"] + 484["SweepEdge Adjacent"] + 485["SweepEdge Opposite"] + 486["SweepEdge Adjacent"] + 487["SweepEdge Opposite"] + 488["SweepEdge Adjacent"] + 489["Plane
[1954, 1977, 0]"] + 501["Sweep Extrusion
[2755, 2781, 0]"] + 502[Wall] + 503[Wall] + 504[Wall] + 505[Wall] + 506[Wall] + 507[Wall] + 508[Wall] + 509[Wall] + 510["Cap Start"] + 511["Cap End"] + 512["SweepEdge Opposite"] + 513["SweepEdge Adjacent"] + 514["SweepEdge Opposite"] + 515["SweepEdge Adjacent"] + 516["SweepEdge Opposite"] + 517["SweepEdge Adjacent"] + 518["SweepEdge Opposite"] + 519["SweepEdge Adjacent"] + 520["SweepEdge Opposite"] + 521["SweepEdge Adjacent"] + 522["SweepEdge Opposite"] + 523["SweepEdge Adjacent"] + 524["SweepEdge Opposite"] + 525["SweepEdge Adjacent"] + 526["SweepEdge Opposite"] + 527["SweepEdge Adjacent"] + 528["Plane
[1954, 1977, 0]"] + 540["Sweep Extrusion
[2755, 2781, 0]"] + 541[Wall] + 542[Wall] + 543[Wall] + 544[Wall] + 545[Wall] + 546[Wall] + 547[Wall] + 548[Wall] + 549["Cap Start"] + 550["Cap End"] + 551["SweepEdge Opposite"] + 552["SweepEdge Adjacent"] + 553["SweepEdge Opposite"] + 554["SweepEdge Adjacent"] + 555["SweepEdge Opposite"] + 556["SweepEdge Adjacent"] + 557["SweepEdge Opposite"] + 558["SweepEdge Adjacent"] + 559["SweepEdge Opposite"] + 560["SweepEdge Adjacent"] + 561["SweepEdge Opposite"] + 562["SweepEdge Adjacent"] + 563["SweepEdge Opposite"] + 564["SweepEdge Adjacent"] + 565["SweepEdge Opposite"] + 566["SweepEdge Adjacent"] + 567["Plane
[1954, 1977, 0]"] + 579["Sweep Extrusion
[2755, 2781, 0]"] + 580[Wall] + 581[Wall] + 582[Wall] + 583[Wall] + 584[Wall] + 585[Wall] + 586[Wall] + 587[Wall] + 588["Cap Start"] + 589["Cap End"] + 590["SweepEdge Opposite"] + 591["SweepEdge Adjacent"] + 592["SweepEdge Opposite"] + 593["SweepEdge Adjacent"] + 594["SweepEdge Opposite"] + 595["SweepEdge Adjacent"] + 596["SweepEdge Opposite"] + 597["SweepEdge Adjacent"] + 598["SweepEdge Opposite"] + 599["SweepEdge Adjacent"] + 600["SweepEdge Opposite"] + 601["SweepEdge Adjacent"] + 602["SweepEdge Opposite"] + 603["SweepEdge Adjacent"] + 604["SweepEdge Opposite"] + 605["SweepEdge Adjacent"] + 606["Plane
[1954, 1977, 0]"] + 618["Sweep Extrusion
[2755, 2781, 0]"] + 619[Wall] + 620[Wall] + 621[Wall] + 622[Wall] + 623[Wall] + 624[Wall] + 625[Wall] + 626[Wall] + 627["Cap Start"] + 628["Cap End"] + 629["SweepEdge Opposite"] + 630["SweepEdge Adjacent"] + 631["SweepEdge Opposite"] + 632["SweepEdge Adjacent"] + 633["SweepEdge Opposite"] + 634["SweepEdge Adjacent"] + 635["SweepEdge Opposite"] + 636["SweepEdge Adjacent"] + 637["SweepEdge Opposite"] + 638["SweepEdge Adjacent"] + 639["SweepEdge Opposite"] + 640["SweepEdge Adjacent"] + 641["SweepEdge Opposite"] + 642["SweepEdge Adjacent"] + 643["SweepEdge Opposite"] + 644["SweepEdge Adjacent"] + 645["Plane
[1954, 1977, 0]"] + 657["Sweep Extrusion
[2755, 2781, 0]"] + 658[Wall] + 659[Wall] + 660[Wall] + 661[Wall] + 662[Wall] + 663[Wall] + 664[Wall] + 665[Wall] + 666["Cap Start"] + 667["Cap End"] + 668["SweepEdge Opposite"] + 669["SweepEdge Adjacent"] + 670["SweepEdge Opposite"] + 671["SweepEdge Adjacent"] + 672["SweepEdge Opposite"] + 673["SweepEdge Adjacent"] + 674["SweepEdge Opposite"] + 675["SweepEdge Adjacent"] + 676["SweepEdge Opposite"] + 677["SweepEdge Adjacent"] + 678["SweepEdge Opposite"] + 679["SweepEdge Adjacent"] + 680["SweepEdge Opposite"] + 681["SweepEdge Adjacent"] + 682["SweepEdge Opposite"] + 683["SweepEdge Adjacent"] + 684["Plane
[1954, 1977, 0]"] + 696["Sweep Extrusion
[2755, 2781, 0]"] + 697[Wall] + 698[Wall] + 699[Wall] + 700[Wall] + 701[Wall] + 702[Wall] + 703[Wall] + 704[Wall] + 705["Cap Start"] + 706["Cap End"] + 707["SweepEdge Opposite"] + 708["SweepEdge Adjacent"] + 709["SweepEdge Opposite"] + 710["SweepEdge Adjacent"] + 711["SweepEdge Opposite"] + 712["SweepEdge Adjacent"] + 713["SweepEdge Opposite"] + 714["SweepEdge Adjacent"] + 715["SweepEdge Opposite"] + 716["SweepEdge Adjacent"] + 717["SweepEdge Opposite"] + 718["SweepEdge Adjacent"] + 719["SweepEdge Opposite"] + 720["SweepEdge Adjacent"] + 721["SweepEdge Opposite"] + 722["SweepEdge Adjacent"] + 723["Plane
[1954, 1977, 0]"] + 735["Sweep Extrusion
[2755, 2781, 0]"] + 736[Wall] + 737[Wall] + 738[Wall] + 739[Wall] + 740[Wall] + 741[Wall] + 742[Wall] + 743[Wall] + 744["Cap Start"] + 745["Cap End"] + 746["SweepEdge Opposite"] + 747["SweepEdge Adjacent"] + 748["SweepEdge Opposite"] + 749["SweepEdge Adjacent"] + 750["SweepEdge Opposite"] + 751["SweepEdge Adjacent"] + 752["SweepEdge Opposite"] + 753["SweepEdge Adjacent"] + 754["SweepEdge Opposite"] + 755["SweepEdge Adjacent"] + 756["SweepEdge Opposite"] + 757["SweepEdge Adjacent"] + 758["SweepEdge Opposite"] + 759["SweepEdge Adjacent"] + 760["SweepEdge Opposite"] + 761["SweepEdge Adjacent"] + 762["Plane
[1954, 1977, 0]"] + 774["Sweep Extrusion
[2755, 2781, 0]"] + 775[Wall] + 776[Wall] + 777[Wall] + 778[Wall] + 779[Wall] + 780[Wall] + 781[Wall] + 782[Wall] + 783["Cap Start"] + 784["Cap End"] + 785["SweepEdge Opposite"] + 786["SweepEdge Adjacent"] + 787["SweepEdge Opposite"] + 788["SweepEdge Adjacent"] + 789["SweepEdge Opposite"] + 790["SweepEdge Adjacent"] + 791["SweepEdge Opposite"] + 792["SweepEdge Adjacent"] + 793["SweepEdge Opposite"] + 794["SweepEdge Adjacent"] + 795["SweepEdge Opposite"] + 796["SweepEdge Adjacent"] + 797["SweepEdge Opposite"] + 798["SweepEdge Adjacent"] + 799["SweepEdge Opposite"] + 800["SweepEdge Adjacent"] + 801["Plane
[1954, 1977, 0]"] + 813["Sweep Extrusion
[2755, 2781, 0]"] + 814[Wall] + 815[Wall] + 816[Wall] + 817[Wall] + 818[Wall] + 819[Wall] + 820[Wall] + 821[Wall] + 822["Cap Start"] + 823["Cap End"] + 824["SweepEdge Opposite"] + 825["SweepEdge Adjacent"] + 826["SweepEdge Opposite"] + 827["SweepEdge Adjacent"] + 828["SweepEdge Opposite"] + 829["SweepEdge Adjacent"] + 830["SweepEdge Opposite"] + 831["SweepEdge Adjacent"] + 832["SweepEdge Opposite"] + 833["SweepEdge Adjacent"] + 834["SweepEdge Opposite"] + 835["SweepEdge Adjacent"] + 836["SweepEdge Opposite"] + 837["SweepEdge Adjacent"] + 838["SweepEdge Opposite"] + 839["SweepEdge Adjacent"] + 840["Plane
[1954, 1977, 0]"] + 852["Sweep Extrusion
[2755, 2781, 0]"] + 853[Wall] + 854[Wall] + 855[Wall] + 856[Wall] + 857[Wall] + 858[Wall] + 859[Wall] + 860[Wall] + 861["Cap Start"] + 862["Cap End"] + 863["SweepEdge Opposite"] + 864["SweepEdge Adjacent"] + 865["SweepEdge Opposite"] + 866["SweepEdge Adjacent"] + 867["SweepEdge Opposite"] + 868["SweepEdge Adjacent"] + 869["SweepEdge Opposite"] + 870["SweepEdge Adjacent"] + 871["SweepEdge Opposite"] + 872["SweepEdge Adjacent"] + 873["SweepEdge Opposite"] + 874["SweepEdge Adjacent"] + 875["SweepEdge Opposite"] + 876["SweepEdge Adjacent"] + 877["SweepEdge Opposite"] + 878["SweepEdge Adjacent"] + 879["Plane
[4968, 4991, 0]"] + 898["Sweep Extrusion
[5953, 5977, 0]"] + 899[Wall] + 900[Wall] + 901[Wall] + 902[Wall] + 903[Wall] + 904[Wall] + 905[Wall] + 906[Wall] + 907[Wall] + 908[Wall] + 909[Wall] + 910[Wall] + 911[Wall] + 912[Wall] + 913[Wall] + 914[Wall] + 915["Cap Start"] + 916["Cap End"] + 917["SweepEdge Opposite"] + 918["SweepEdge Adjacent"] + 919["SweepEdge Opposite"] + 920["SweepEdge Adjacent"] + 921["SweepEdge Opposite"] + 922["SweepEdge Adjacent"] + 923["SweepEdge Opposite"] + 924["SweepEdge Adjacent"] + 925["SweepEdge Opposite"] + 926["SweepEdge Adjacent"] + 927["SweepEdge Opposite"] + 928["SweepEdge Adjacent"] + 929["SweepEdge Opposite"] + 930["SweepEdge Adjacent"] + 931["SweepEdge Opposite"] + 932["SweepEdge Adjacent"] + 933["SweepEdge Opposite"] + 934["SweepEdge Adjacent"] + 935["SweepEdge Opposite"] + 936["SweepEdge Adjacent"] + 937["SweepEdge Opposite"] + 938["SweepEdge Adjacent"] + 939["SweepEdge Opposite"] + 940["SweepEdge Adjacent"] + 941["SweepEdge Opposite"] + 942["SweepEdge Adjacent"] + 943["SweepEdge Opposite"] + 944["SweepEdge Adjacent"] + 945["SweepEdge Opposite"] + 946["SweepEdge Adjacent"] + 947["SweepEdge Opposite"] + 948["SweepEdge Adjacent"] + 949["Plane
[6114, 6137, 0]"] + 956["Sweep Extrusion
[6584, 6608, 0]"] + 957[Wall] + 958[Wall] + 959[Wall] + 960[Wall] + 961["Cap Start"] + 962["Cap End"] + 963["SweepEdge Opposite"] + 964["SweepEdge Adjacent"] + 965["SweepEdge Opposite"] + 966["SweepEdge Adjacent"] + 967["SweepEdge Opposite"] + 968["SweepEdge Adjacent"] + 969["SweepEdge Opposite"] + 970["SweepEdge Adjacent"] + 971["Plane
[6653, 6676, 0]"] + 978["Sweep Extrusion
[7123, 7147, 0]"] + 979[Wall] + 980[Wall] + 981[Wall] + 982[Wall] + 983["Cap Start"] + 984["Cap End"] + 985["SweepEdge Opposite"] + 986["SweepEdge Adjacent"] + 987["SweepEdge Opposite"] + 988["SweepEdge Adjacent"] + 989["SweepEdge Opposite"] + 990["SweepEdge Adjacent"] + 991["SweepEdge Opposite"] + 992["SweepEdge Adjacent"] + 993["Plane
[6114, 6137, 0]"] + 1000["Sweep Extrusion
[6584, 6608, 0]"] + 1001[Wall] + 1002[Wall] + 1003[Wall] + 1004[Wall] + 1005["Cap Start"] + 1006["Cap End"] + 1007["SweepEdge Opposite"] + 1008["SweepEdge Adjacent"] + 1009["SweepEdge Opposite"] + 1010["SweepEdge Adjacent"] + 1011["SweepEdge Opposite"] + 1012["SweepEdge Adjacent"] + 1013["SweepEdge Opposite"] + 1014["SweepEdge Adjacent"] + 1015["Plane
[6653, 6676, 0]"] + 1022["Sweep Extrusion
[7123, 7147, 0]"] + 1023[Wall] + 1024[Wall] + 1025[Wall] + 1026[Wall] + 1027["Cap Start"] + 1028["Cap End"] + 1029["SweepEdge Opposite"] + 1030["SweepEdge Adjacent"] + 1031["SweepEdge Opposite"] + 1032["SweepEdge Adjacent"] + 1033["SweepEdge Opposite"] + 1034["SweepEdge Adjacent"] + 1035["SweepEdge Opposite"] + 1036["SweepEdge Adjacent"] + 1037["StartSketchOnFace
[1134, 1165, 0]"] + 1 --- 2 + 2 --- 3 + 2 --- 4 + 2 --- 5 + 2 --- 6 + 2 --- 7 + 2 ---- 9 + 2 --- 8 + 3 --- 13 + 3 --- 22 + 3 --- 23 + 3 --- 26 + 4 --- 12 + 4 --- 20 + 4 --- 21 + 5 --- 11 + 5 --- 18 + 5 --- 19 + 5 --- 27 + 6 --- 10 + 6 --- 16 + 6 --- 17 + 9 --- 10 + 9 --- 11 + 9 --- 12 + 9 --- 13 + 9 --- 14 + 9 --- 15 + 9 --- 16 + 9 --- 17 + 9 --- 18 + 9 --- 19 + 9 --- 20 + 9 --- 21 + 9 --- 22 + 9 --- 23 + 10 --- 28 + 10 --- 31 + 10 --- 34 + 10 --- 37 + 22 <--x 24 + 18 <--x 25 + 28 --- 29 + 28 ---- 40 + 28 --- 30 + 29 --- 41 + 29 --- 43 + 29 --- 44 + 31 --- 32 + 31 ---- 45 + 31 --- 33 + 32 --- 46 + 32 --- 48 + 32 --- 49 + 34 --- 35 + 34 ---- 50 + 34 --- 36 + 35 --- 51 + 35 --- 53 + 35 --- 54 + 37 --- 38 + 37 ---- 55 + 37 --- 39 + 38 --- 56 + 38 --- 58 + 38 --- 59 + 40 --- 41 + 40 --- 42 + 40 --- 43 + 40 --- 44 + 45 --- 46 + 45 --- 47 + 45 --- 48 + 45 --- 49 + 50 --- 51 + 50 --- 52 + 50 --- 53 + 50 --- 54 + 55 --- 56 + 55 --- 57 + 55 --- 58 + 55 --- 59 + 60 --- 61 + 61 --- 62 + 61 --- 63 + 61 --- 64 + 61 --- 65 + 61 --- 66 + 61 --- 67 + 61 --- 68 + 61 --- 69 + 61 --- 70 + 61 ---- 72 + 61 --- 71 + 62 --- 73 + 62 --- 83 + 62 --- 84 + 63 --- 74 + 63 --- 85 + 63 --- 86 + 64 --- 75 + 64 --- 87 + 64 --- 88 + 65 --- 76 + 65 --- 89 + 65 --- 90 + 66 --- 77 + 66 --- 91 + 66 --- 92 + 67 --- 78 + 67 --- 93 + 67 --- 94 + 68 --- 79 + 68 --- 95 + 68 --- 96 + 69 --- 80 + 69 --- 97 + 69 --- 98 + 72 --- 73 + 72 --- 74 + 72 --- 75 + 72 --- 76 + 72 --- 77 + 72 --- 78 + 72 --- 79 + 72 --- 80 + 72 --- 81 + 72 --- 82 + 72 --- 83 + 72 --- 84 + 72 --- 85 + 72 --- 86 + 72 --- 87 + 72 --- 88 + 72 --- 89 + 72 --- 90 + 72 --- 91 + 72 --- 92 + 72 --- 93 + 72 --- 94 + 72 --- 95 + 72 --- 96 + 72 --- 97 + 72 --- 98 + 99 --- 100 + 100 --- 101 + 100 --- 102 + 100 --- 103 + 100 --- 104 + 100 --- 105 + 100 --- 106 + 100 --- 107 + 100 --- 108 + 100 --- 109 + 100 ---- 111 + 100 --- 110 + 101 --- 112 + 101 --- 122 + 101 --- 123 + 102 --- 113 + 102 --- 124 + 102 --- 125 + 103 --- 114 + 103 --- 126 + 103 --- 127 + 104 --- 115 + 104 --- 128 + 104 --- 129 + 105 --- 116 + 105 --- 130 + 105 --- 131 + 106 --- 117 + 106 --- 132 + 106 --- 133 + 107 --- 118 + 107 --- 134 + 107 --- 135 + 108 --- 119 + 108 --- 136 + 108 --- 137 + 111 --- 112 + 111 --- 113 + 111 --- 114 + 111 --- 115 + 111 --- 116 + 111 --- 117 + 111 --- 118 + 111 --- 119 + 111 --- 120 + 111 --- 121 + 111 --- 122 + 111 --- 123 + 111 --- 124 + 111 --- 125 + 111 --- 126 + 111 --- 127 + 111 --- 128 + 111 --- 129 + 111 --- 130 + 111 --- 131 + 111 --- 132 + 111 --- 133 + 111 --- 134 + 111 --- 135 + 111 --- 136 + 111 --- 137 + 138 --- 139 + 139 --- 140 + 139 --- 141 + 139 --- 142 + 139 --- 143 + 139 --- 144 + 139 --- 145 + 139 --- 146 + 139 --- 147 + 139 --- 148 + 139 ---- 150 + 139 --- 149 + 140 --- 151 + 140 --- 161 + 140 --- 162 + 141 --- 152 + 141 --- 163 + 141 --- 164 + 142 --- 153 + 142 --- 165 + 142 --- 166 + 143 --- 154 + 143 --- 167 + 143 --- 168 + 144 --- 155 + 144 --- 169 + 144 --- 170 + 145 --- 156 + 145 --- 171 + 145 --- 172 + 146 --- 157 + 146 --- 173 + 146 --- 174 + 147 --- 158 + 147 --- 175 + 147 --- 176 + 150 --- 151 + 150 --- 152 + 150 --- 153 + 150 --- 154 + 150 --- 155 + 150 --- 156 + 150 --- 157 + 150 --- 158 + 150 --- 159 + 150 --- 160 + 150 --- 161 + 150 --- 162 + 150 --- 163 + 150 --- 164 + 150 --- 165 + 150 --- 166 + 150 --- 167 + 150 --- 168 + 150 --- 169 + 150 --- 170 + 150 --- 171 + 150 --- 172 + 150 --- 173 + 150 --- 174 + 150 --- 175 + 150 --- 176 + 177 --- 178 + 178 --- 179 + 178 --- 180 + 178 --- 181 + 178 --- 182 + 178 --- 183 + 178 --- 184 + 178 --- 185 + 178 --- 186 + 178 --- 187 + 178 ---- 189 + 178 --- 188 + 179 --- 190 + 179 --- 200 + 179 --- 201 + 180 --- 191 + 180 --- 202 + 180 --- 203 + 181 --- 192 + 181 --- 204 + 181 --- 205 + 182 --- 193 + 182 --- 206 + 182 --- 207 + 183 --- 194 + 183 --- 208 + 183 --- 209 + 184 --- 195 + 184 --- 210 + 184 --- 211 + 185 --- 196 + 185 --- 212 + 185 --- 213 + 186 --- 197 + 186 --- 214 + 186 --- 215 + 189 --- 190 + 189 --- 191 + 189 --- 192 + 189 --- 193 + 189 --- 194 + 189 --- 195 + 189 --- 196 + 189 --- 197 + 189 --- 198 + 189 --- 199 + 189 --- 200 + 189 --- 201 + 189 --- 202 + 189 --- 203 + 189 --- 204 + 189 --- 205 + 189 --- 206 + 189 --- 207 + 189 --- 208 + 189 --- 209 + 189 --- 210 + 189 --- 211 + 189 --- 212 + 189 --- 213 + 189 --- 214 + 189 --- 215 + 216 --- 217 + 217 --- 218 + 217 --- 219 + 217 --- 220 + 217 --- 221 + 217 --- 222 + 217 --- 223 + 217 --- 224 + 217 --- 225 + 217 --- 226 + 217 ---- 228 + 217 --- 227 + 218 --- 229 + 218 --- 239 + 218 --- 240 + 219 --- 230 + 219 --- 241 + 219 --- 242 + 220 --- 231 + 220 --- 243 + 220 --- 244 + 221 --- 232 + 221 --- 245 + 221 --- 246 + 222 --- 233 + 222 --- 247 + 222 --- 248 + 223 --- 234 + 223 --- 249 + 223 --- 250 + 224 --- 235 + 224 --- 251 + 224 --- 252 + 225 --- 236 + 225 --- 253 + 225 --- 254 + 228 --- 229 + 228 --- 230 + 228 --- 231 + 228 --- 232 + 228 --- 233 + 228 --- 234 + 228 --- 235 + 228 --- 236 + 228 --- 237 + 228 --- 238 + 228 --- 239 + 228 --- 240 + 228 --- 241 + 228 --- 242 + 228 --- 243 + 228 --- 244 + 228 --- 245 + 228 --- 246 + 228 --- 247 + 228 --- 248 + 228 --- 249 + 228 --- 250 + 228 --- 251 + 228 --- 252 + 228 --- 253 + 228 --- 254 + 255 --- 256 + 256 --- 257 + 256 --- 258 + 256 --- 259 + 256 --- 260 + 256 --- 261 + 256 --- 262 + 256 --- 263 + 256 --- 264 + 256 --- 265 + 256 ---- 267 + 256 --- 266 + 257 --- 268 + 257 --- 278 + 257 --- 279 + 258 --- 269 + 258 --- 280 + 258 --- 281 + 259 --- 270 + 259 --- 282 + 259 --- 283 + 260 --- 271 + 260 --- 284 + 260 --- 285 + 261 --- 272 + 261 --- 286 + 261 --- 287 + 262 --- 273 + 262 --- 288 + 262 --- 289 + 263 --- 274 + 263 --- 290 + 263 --- 291 + 264 --- 275 + 264 --- 292 + 264 --- 293 + 267 --- 268 + 267 --- 269 + 267 --- 270 + 267 --- 271 + 267 --- 272 + 267 --- 273 + 267 --- 274 + 267 --- 275 + 267 --- 276 + 267 --- 277 + 267 --- 278 + 267 --- 279 + 267 --- 280 + 267 --- 281 + 267 --- 282 + 267 --- 283 + 267 --- 284 + 267 --- 285 + 267 --- 286 + 267 --- 287 + 267 --- 288 + 267 --- 289 + 267 --- 290 + 267 --- 291 + 267 --- 292 + 267 --- 293 + 294 --- 295 + 295 --- 296 + 295 --- 297 + 295 --- 298 + 295 --- 299 + 295 --- 300 + 295 --- 301 + 295 --- 302 + 295 --- 303 + 295 --- 304 + 295 ---- 306 + 295 --- 305 + 296 --- 307 + 296 --- 317 + 296 --- 318 + 297 --- 308 + 297 --- 319 + 297 --- 320 + 298 --- 309 + 298 --- 321 + 298 --- 322 + 299 --- 310 + 299 --- 323 + 299 --- 324 + 300 --- 311 + 300 --- 325 + 300 --- 326 + 301 --- 312 + 301 --- 327 + 301 --- 328 + 302 --- 313 + 302 --- 329 + 302 --- 330 + 303 --- 314 + 303 --- 331 + 303 --- 332 + 306 --- 307 + 306 --- 308 + 306 --- 309 + 306 --- 310 + 306 --- 311 + 306 --- 312 + 306 --- 313 + 306 --- 314 + 306 --- 315 + 306 --- 316 + 306 --- 317 + 306 --- 318 + 306 --- 319 + 306 --- 320 + 306 --- 321 + 306 --- 322 + 306 --- 323 + 306 --- 324 + 306 --- 325 + 306 --- 326 + 306 --- 327 + 306 --- 328 + 306 --- 329 + 306 --- 330 + 306 --- 331 + 306 --- 332 + 333 --- 334 + 334 --- 335 + 334 --- 336 + 334 --- 337 + 334 --- 338 + 334 --- 339 + 334 --- 340 + 334 --- 341 + 334 --- 342 + 334 --- 343 + 334 ---- 345 + 334 --- 344 + 335 --- 346 + 335 --- 356 + 335 --- 357 + 336 --- 347 + 336 --- 358 + 336 --- 359 + 337 --- 348 + 337 --- 360 + 337 --- 361 + 338 --- 349 + 338 --- 362 + 338 --- 363 + 339 --- 350 + 339 --- 364 + 339 --- 365 + 340 --- 351 + 340 --- 366 + 340 --- 367 + 341 --- 352 + 341 --- 368 + 341 --- 369 + 342 --- 353 + 342 --- 370 + 342 --- 371 + 345 --- 346 + 345 --- 347 + 345 --- 348 + 345 --- 349 + 345 --- 350 + 345 --- 351 + 345 --- 352 + 345 --- 353 + 345 --- 354 + 345 --- 355 + 345 --- 356 + 345 --- 357 + 345 --- 358 + 345 --- 359 + 345 --- 360 + 345 --- 361 + 345 --- 362 + 345 --- 363 + 345 --- 364 + 345 --- 365 + 345 --- 366 + 345 --- 367 + 345 --- 368 + 345 --- 369 + 345 --- 370 + 345 --- 371 + 372 --- 373 + 373 --- 374 + 373 --- 375 + 373 --- 376 + 373 --- 377 + 373 --- 378 + 373 --- 379 + 373 --- 380 + 373 --- 381 + 373 --- 382 + 373 ---- 384 + 373 --- 383 + 374 --- 385 + 374 --- 395 + 374 --- 396 + 375 --- 386 + 375 --- 397 + 375 --- 398 + 376 --- 387 + 376 --- 399 + 376 --- 400 + 377 --- 388 + 377 --- 401 + 377 --- 402 + 378 --- 389 + 378 --- 403 + 378 --- 404 + 379 --- 390 + 379 --- 405 + 379 --- 406 + 380 --- 391 + 380 --- 407 + 380 --- 408 + 381 --- 392 + 381 --- 409 + 381 --- 410 + 384 --- 385 + 384 --- 386 + 384 --- 387 + 384 --- 388 + 384 --- 389 + 384 --- 390 + 384 --- 391 + 384 --- 392 + 384 --- 393 + 384 --- 394 + 384 --- 395 + 384 --- 396 + 384 --- 397 + 384 --- 398 + 384 --- 399 + 384 --- 400 + 384 --- 401 + 384 --- 402 + 384 --- 403 + 384 --- 404 + 384 --- 405 + 384 --- 406 + 384 --- 407 + 384 --- 408 + 384 --- 409 + 384 --- 410 + 411 --- 412 + 412 --- 413 + 412 --- 414 + 412 --- 415 + 412 --- 416 + 412 --- 417 + 412 --- 418 + 412 --- 419 + 412 --- 420 + 412 --- 421 + 412 ---- 423 + 412 --- 422 + 413 --- 424 + 413 --- 434 + 413 --- 435 + 414 --- 425 + 414 --- 436 + 414 --- 437 + 415 --- 426 + 415 --- 438 + 415 --- 439 + 416 --- 427 + 416 --- 440 + 416 --- 441 + 417 --- 428 + 417 --- 442 + 417 --- 443 + 418 --- 429 + 418 --- 444 + 418 --- 445 + 419 --- 430 + 419 --- 446 + 419 --- 447 + 420 --- 431 + 420 --- 448 + 420 --- 449 + 423 --- 424 + 423 --- 425 + 423 --- 426 + 423 --- 427 + 423 --- 428 + 423 --- 429 + 423 --- 430 + 423 --- 431 + 423 --- 432 + 423 --- 433 + 423 --- 434 + 423 --- 435 + 423 --- 436 + 423 --- 437 + 423 --- 438 + 423 --- 439 + 423 --- 440 + 423 --- 441 + 423 --- 442 + 423 --- 443 + 423 --- 444 + 423 --- 445 + 423 --- 446 + 423 --- 447 + 423 --- 448 + 423 --- 449 + 450 --- 451 + 451 --- 452 + 451 --- 453 + 451 --- 454 + 451 --- 455 + 451 --- 456 + 451 --- 457 + 451 --- 458 + 451 --- 459 + 451 --- 460 + 451 ---- 462 + 451 --- 461 + 452 --- 463 + 452 --- 473 + 452 --- 474 + 453 --- 464 + 453 --- 475 + 453 --- 476 + 454 --- 465 + 454 --- 477 + 454 --- 478 + 455 --- 466 + 455 --- 479 + 455 --- 480 + 456 --- 467 + 456 --- 481 + 456 --- 482 + 457 --- 468 + 457 --- 483 + 457 --- 484 + 458 --- 469 + 458 --- 485 + 458 --- 486 + 459 --- 470 + 459 --- 487 + 459 --- 488 + 462 --- 463 + 462 --- 464 + 462 --- 465 + 462 --- 466 + 462 --- 467 + 462 --- 468 + 462 --- 469 + 462 --- 470 + 462 --- 471 + 462 --- 472 + 462 --- 473 + 462 --- 474 + 462 --- 475 + 462 --- 476 + 462 --- 477 + 462 --- 478 + 462 --- 479 + 462 --- 480 + 462 --- 481 + 462 --- 482 + 462 --- 483 + 462 --- 484 + 462 --- 485 + 462 --- 486 + 462 --- 487 + 462 --- 488 + 489 --- 490 + 490 --- 491 + 490 --- 492 + 490 --- 493 + 490 --- 494 + 490 --- 495 + 490 --- 496 + 490 --- 497 + 490 --- 498 + 490 --- 499 + 490 ---- 501 + 490 --- 500 + 491 --- 502 + 491 --- 512 + 491 --- 513 + 492 --- 503 + 492 --- 514 + 492 --- 515 + 493 --- 504 + 493 --- 516 + 493 --- 517 + 494 --- 505 + 494 --- 518 + 494 --- 519 + 495 --- 506 + 495 --- 520 + 495 --- 521 + 496 --- 507 + 496 --- 522 + 496 --- 523 + 497 --- 508 + 497 --- 524 + 497 --- 525 + 498 --- 509 + 498 --- 526 + 498 --- 527 + 501 --- 502 + 501 --- 503 + 501 --- 504 + 501 --- 505 + 501 --- 506 + 501 --- 507 + 501 --- 508 + 501 --- 509 + 501 --- 510 + 501 --- 511 + 501 --- 512 + 501 --- 513 + 501 --- 514 + 501 --- 515 + 501 --- 516 + 501 --- 517 + 501 --- 518 + 501 --- 519 + 501 --- 520 + 501 --- 521 + 501 --- 522 + 501 --- 523 + 501 --- 524 + 501 --- 525 + 501 --- 526 + 501 --- 527 + 528 --- 529 + 529 --- 530 + 529 --- 531 + 529 --- 532 + 529 --- 533 + 529 --- 534 + 529 --- 535 + 529 --- 536 + 529 --- 537 + 529 --- 538 + 529 ---- 540 + 529 --- 539 + 530 --- 541 + 530 --- 551 + 530 --- 552 + 531 --- 542 + 531 --- 553 + 531 --- 554 + 532 --- 543 + 532 --- 555 + 532 --- 556 + 533 --- 544 + 533 --- 557 + 533 --- 558 + 534 --- 545 + 534 --- 559 + 534 --- 560 + 535 --- 546 + 535 --- 561 + 535 --- 562 + 536 --- 547 + 536 --- 563 + 536 --- 564 + 537 --- 548 + 537 --- 565 + 537 --- 566 + 540 --- 541 + 540 --- 542 + 540 --- 543 + 540 --- 544 + 540 --- 545 + 540 --- 546 + 540 --- 547 + 540 --- 548 + 540 --- 549 + 540 --- 550 + 540 --- 551 + 540 --- 552 + 540 --- 553 + 540 --- 554 + 540 --- 555 + 540 --- 556 + 540 --- 557 + 540 --- 558 + 540 --- 559 + 540 --- 560 + 540 --- 561 + 540 --- 562 + 540 --- 563 + 540 --- 564 + 540 --- 565 + 540 --- 566 + 567 --- 568 + 568 --- 569 + 568 --- 570 + 568 --- 571 + 568 --- 572 + 568 --- 573 + 568 --- 574 + 568 --- 575 + 568 --- 576 + 568 --- 577 + 568 ---- 579 + 568 --- 578 + 569 --- 580 + 569 --- 590 + 569 --- 591 + 570 --- 581 + 570 --- 592 + 570 --- 593 + 571 --- 582 + 571 --- 594 + 571 --- 595 + 572 --- 583 + 572 --- 596 + 572 --- 597 + 573 --- 584 + 573 --- 598 + 573 --- 599 + 574 --- 585 + 574 --- 600 + 574 --- 601 + 575 --- 586 + 575 --- 602 + 575 --- 603 + 576 --- 587 + 576 --- 604 + 576 --- 605 + 579 --- 580 + 579 --- 581 + 579 --- 582 + 579 --- 583 + 579 --- 584 + 579 --- 585 + 579 --- 586 + 579 --- 587 + 579 --- 588 + 579 --- 589 + 579 --- 590 + 579 --- 591 + 579 --- 592 + 579 --- 593 + 579 --- 594 + 579 --- 595 + 579 --- 596 + 579 --- 597 + 579 --- 598 + 579 --- 599 + 579 --- 600 + 579 --- 601 + 579 --- 602 + 579 --- 603 + 579 --- 604 + 579 --- 605 + 606 --- 607 + 607 --- 608 + 607 --- 609 + 607 --- 610 + 607 --- 611 + 607 --- 612 + 607 --- 613 + 607 --- 614 + 607 --- 615 + 607 --- 616 + 607 ---- 618 + 607 --- 617 + 608 --- 619 + 608 --- 629 + 608 --- 630 + 609 --- 620 + 609 --- 631 + 609 --- 632 + 610 --- 621 + 610 --- 633 + 610 --- 634 + 611 --- 622 + 611 --- 635 + 611 --- 636 + 612 --- 623 + 612 --- 637 + 612 --- 638 + 613 --- 624 + 613 --- 639 + 613 --- 640 + 614 --- 625 + 614 --- 641 + 614 --- 642 + 615 --- 626 + 615 --- 643 + 615 --- 644 + 618 --- 619 + 618 --- 620 + 618 --- 621 + 618 --- 622 + 618 --- 623 + 618 --- 624 + 618 --- 625 + 618 --- 626 + 618 --- 627 + 618 --- 628 + 618 --- 629 + 618 --- 630 + 618 --- 631 + 618 --- 632 + 618 --- 633 + 618 --- 634 + 618 --- 635 + 618 --- 636 + 618 --- 637 + 618 --- 638 + 618 --- 639 + 618 --- 640 + 618 --- 641 + 618 --- 642 + 618 --- 643 + 618 --- 644 + 645 --- 646 + 646 --- 647 + 646 --- 648 + 646 --- 649 + 646 --- 650 + 646 --- 651 + 646 --- 652 + 646 --- 653 + 646 --- 654 + 646 --- 655 + 646 ---- 657 + 646 --- 656 + 647 --- 658 + 647 --- 668 + 647 --- 669 + 648 --- 659 + 648 --- 670 + 648 --- 671 + 649 --- 660 + 649 --- 672 + 649 --- 673 + 650 --- 661 + 650 --- 674 + 650 --- 675 + 651 --- 662 + 651 --- 676 + 651 --- 677 + 652 --- 663 + 652 --- 678 + 652 --- 679 + 653 --- 664 + 653 --- 680 + 653 --- 681 + 654 --- 665 + 654 --- 682 + 654 --- 683 + 657 --- 658 + 657 --- 659 + 657 --- 660 + 657 --- 661 + 657 --- 662 + 657 --- 663 + 657 --- 664 + 657 --- 665 + 657 --- 666 + 657 --- 667 + 657 --- 668 + 657 --- 669 + 657 --- 670 + 657 --- 671 + 657 --- 672 + 657 --- 673 + 657 --- 674 + 657 --- 675 + 657 --- 676 + 657 --- 677 + 657 --- 678 + 657 --- 679 + 657 --- 680 + 657 --- 681 + 657 --- 682 + 657 --- 683 + 684 --- 685 + 685 --- 686 + 685 --- 687 + 685 --- 688 + 685 --- 689 + 685 --- 690 + 685 --- 691 + 685 --- 692 + 685 --- 693 + 685 --- 694 + 685 ---- 696 + 685 --- 695 + 686 --- 697 + 686 --- 707 + 686 --- 708 + 687 --- 698 + 687 --- 709 + 687 --- 710 + 688 --- 699 + 688 --- 711 + 688 --- 712 + 689 --- 700 + 689 --- 713 + 689 --- 714 + 690 --- 701 + 690 --- 715 + 690 --- 716 + 691 --- 702 + 691 --- 717 + 691 --- 718 + 692 --- 703 + 692 --- 719 + 692 --- 720 + 693 --- 704 + 693 --- 721 + 693 --- 722 + 696 --- 697 + 696 --- 698 + 696 --- 699 + 696 --- 700 + 696 --- 701 + 696 --- 702 + 696 --- 703 + 696 --- 704 + 696 --- 705 + 696 --- 706 + 696 --- 707 + 696 --- 708 + 696 --- 709 + 696 --- 710 + 696 --- 711 + 696 --- 712 + 696 --- 713 + 696 --- 714 + 696 --- 715 + 696 --- 716 + 696 --- 717 + 696 --- 718 + 696 --- 719 + 696 --- 720 + 696 --- 721 + 696 --- 722 + 723 --- 724 + 724 --- 725 + 724 --- 726 + 724 --- 727 + 724 --- 728 + 724 --- 729 + 724 --- 730 + 724 --- 731 + 724 --- 732 + 724 --- 733 + 724 ---- 735 + 724 --- 734 + 725 --- 736 + 725 --- 746 + 725 --- 747 + 726 --- 737 + 726 --- 748 + 726 --- 749 + 727 --- 738 + 727 --- 750 + 727 --- 751 + 728 --- 739 + 728 --- 752 + 728 --- 753 + 729 --- 740 + 729 --- 754 + 729 --- 755 + 730 --- 741 + 730 --- 756 + 730 --- 757 + 731 --- 742 + 731 --- 758 + 731 --- 759 + 732 --- 743 + 732 --- 760 + 732 --- 761 + 735 --- 736 + 735 --- 737 + 735 --- 738 + 735 --- 739 + 735 --- 740 + 735 --- 741 + 735 --- 742 + 735 --- 743 + 735 --- 744 + 735 --- 745 + 735 --- 746 + 735 --- 747 + 735 --- 748 + 735 --- 749 + 735 --- 750 + 735 --- 751 + 735 --- 752 + 735 --- 753 + 735 --- 754 + 735 --- 755 + 735 --- 756 + 735 --- 757 + 735 --- 758 + 735 --- 759 + 735 --- 760 + 735 --- 761 + 762 --- 763 + 763 --- 764 + 763 --- 765 + 763 --- 766 + 763 --- 767 + 763 --- 768 + 763 --- 769 + 763 --- 770 + 763 --- 771 + 763 --- 772 + 763 ---- 774 + 763 --- 773 + 764 --- 775 + 764 --- 785 + 764 --- 786 + 765 --- 776 + 765 --- 787 + 765 --- 788 + 766 --- 777 + 766 --- 789 + 766 --- 790 + 767 --- 778 + 767 --- 791 + 767 --- 792 + 768 --- 779 + 768 --- 793 + 768 --- 794 + 769 --- 780 + 769 --- 795 + 769 --- 796 + 770 --- 781 + 770 --- 797 + 770 --- 798 + 771 --- 782 + 771 --- 799 + 771 --- 800 + 774 --- 775 + 774 --- 776 + 774 --- 777 + 774 --- 778 + 774 --- 779 + 774 --- 780 + 774 --- 781 + 774 --- 782 + 774 --- 783 + 774 --- 784 + 774 --- 785 + 774 --- 786 + 774 --- 787 + 774 --- 788 + 774 --- 789 + 774 --- 790 + 774 --- 791 + 774 --- 792 + 774 --- 793 + 774 --- 794 + 774 --- 795 + 774 --- 796 + 774 --- 797 + 774 --- 798 + 774 --- 799 + 774 --- 800 + 801 --- 802 + 802 --- 803 + 802 --- 804 + 802 --- 805 + 802 --- 806 + 802 --- 807 + 802 --- 808 + 802 --- 809 + 802 --- 810 + 802 --- 811 + 802 ---- 813 + 802 --- 812 + 803 --- 814 + 803 --- 824 + 803 --- 825 + 804 --- 815 + 804 --- 826 + 804 --- 827 + 805 --- 816 + 805 --- 828 + 805 --- 829 + 806 --- 817 + 806 --- 830 + 806 --- 831 + 807 --- 818 + 807 --- 832 + 807 --- 833 + 808 --- 819 + 808 --- 834 + 808 --- 835 + 809 --- 820 + 809 --- 836 + 809 --- 837 + 810 --- 821 + 810 --- 838 + 810 --- 839 + 813 --- 814 + 813 --- 815 + 813 --- 816 + 813 --- 817 + 813 --- 818 + 813 --- 819 + 813 --- 820 + 813 --- 821 + 813 --- 822 + 813 --- 823 + 813 --- 824 + 813 --- 825 + 813 --- 826 + 813 --- 827 + 813 --- 828 + 813 --- 829 + 813 --- 830 + 813 --- 831 + 813 --- 832 + 813 --- 833 + 813 --- 834 + 813 --- 835 + 813 --- 836 + 813 --- 837 + 813 --- 838 + 813 --- 839 + 840 --- 841 + 841 --- 842 + 841 --- 843 + 841 --- 844 + 841 --- 845 + 841 --- 846 + 841 --- 847 + 841 --- 848 + 841 --- 849 + 841 --- 850 + 841 ---- 852 + 841 --- 851 + 842 --- 853 + 842 --- 863 + 842 --- 864 + 843 --- 854 + 843 --- 865 + 843 --- 866 + 844 --- 855 + 844 --- 867 + 844 --- 868 + 845 --- 856 + 845 --- 869 + 845 --- 870 + 846 --- 857 + 846 --- 871 + 846 --- 872 + 847 --- 858 + 847 --- 873 + 847 --- 874 + 848 --- 859 + 848 --- 875 + 848 --- 876 + 849 --- 860 + 849 --- 877 + 849 --- 878 + 852 --- 853 + 852 --- 854 + 852 --- 855 + 852 --- 856 + 852 --- 857 + 852 --- 858 + 852 --- 859 + 852 --- 860 + 852 --- 861 + 852 --- 862 + 852 --- 863 + 852 --- 864 + 852 --- 865 + 852 --- 866 + 852 --- 867 + 852 --- 868 + 852 --- 869 + 852 --- 870 + 852 --- 871 + 852 --- 872 + 852 --- 873 + 852 --- 874 + 852 --- 875 + 852 --- 876 + 852 --- 877 + 852 --- 878 + 879 --- 880 + 880 --- 881 + 880 --- 882 + 880 --- 883 + 880 --- 884 + 880 --- 885 + 880 --- 886 + 880 --- 887 + 880 --- 888 + 880 --- 889 + 880 --- 890 + 880 --- 891 + 880 --- 892 + 880 --- 893 + 880 --- 894 + 880 --- 895 + 880 --- 896 + 880 ---- 898 + 880 --- 897 + 881 --- 899 + 881 --- 917 + 881 --- 918 + 882 --- 900 + 882 --- 919 + 882 --- 920 + 883 --- 901 + 883 --- 921 + 883 --- 922 + 884 --- 902 + 884 --- 923 + 884 --- 924 + 885 --- 903 + 885 --- 925 + 885 --- 926 + 886 --- 904 + 886 --- 927 + 886 --- 928 + 887 --- 905 + 887 --- 929 + 887 --- 930 + 888 --- 906 + 888 --- 931 + 888 --- 932 + 889 --- 907 + 889 --- 933 + 889 --- 934 + 890 --- 908 + 890 --- 935 + 890 --- 936 + 891 --- 909 + 891 --- 937 + 891 --- 938 + 892 --- 910 + 892 --- 939 + 892 --- 940 + 893 --- 911 + 893 --- 941 + 893 --- 942 + 894 --- 912 + 894 --- 943 + 894 --- 944 + 895 --- 913 + 895 --- 945 + 895 --- 946 + 896 --- 914 + 896 --- 947 + 896 --- 948 + 898 --- 899 + 898 --- 900 + 898 --- 901 + 898 --- 902 + 898 --- 903 + 898 --- 904 + 898 --- 905 + 898 --- 906 + 898 --- 907 + 898 --- 908 + 898 --- 909 + 898 --- 910 + 898 --- 911 + 898 --- 912 + 898 --- 913 + 898 --- 914 + 898 --- 915 + 898 --- 916 + 898 --- 917 + 898 --- 918 + 898 --- 919 + 898 --- 920 + 898 --- 921 + 898 --- 922 + 898 --- 923 + 898 --- 924 + 898 --- 925 + 898 --- 926 + 898 --- 927 + 898 --- 928 + 898 --- 929 + 898 --- 930 + 898 --- 931 + 898 --- 932 + 898 --- 933 + 898 --- 934 + 898 --- 935 + 898 --- 936 + 898 --- 937 + 898 --- 938 + 898 --- 939 + 898 --- 940 + 898 --- 941 + 898 --- 942 + 898 --- 943 + 898 --- 944 + 898 --- 945 + 898 --- 946 + 898 --- 947 + 898 --- 948 + 949 --- 950 + 950 --- 951 + 950 --- 952 + 950 --- 953 + 950 --- 954 + 950 ---- 956 + 950 --- 955 + 951 --- 957 + 951 --- 963 + 951 --- 964 + 952 --- 958 + 952 --- 965 + 952 --- 966 + 953 --- 959 + 953 --- 967 + 953 --- 968 + 954 --- 960 + 954 --- 969 + 954 --- 970 + 956 --- 957 + 956 --- 958 + 956 --- 959 + 956 --- 960 + 956 --- 961 + 956 --- 962 + 956 --- 963 + 956 --- 964 + 956 --- 965 + 956 --- 966 + 956 --- 967 + 956 --- 968 + 956 --- 969 + 956 --- 970 + 971 --- 972 + 972 --- 973 + 972 --- 974 + 972 --- 975 + 972 --- 976 + 972 ---- 978 + 972 --- 977 + 973 --- 979 + 973 --- 985 + 973 --- 986 + 974 --- 980 + 974 --- 987 + 974 --- 988 + 975 --- 981 + 975 --- 989 + 975 --- 990 + 976 --- 982 + 976 --- 991 + 976 --- 992 + 978 --- 979 + 978 --- 980 + 978 --- 981 + 978 --- 982 + 978 --- 983 + 978 --- 984 + 978 --- 985 + 978 --- 986 + 978 --- 987 + 978 --- 988 + 978 --- 989 + 978 --- 990 + 978 --- 991 + 978 --- 992 + 993 --- 994 + 994 --- 995 + 994 --- 996 + 994 --- 997 + 994 --- 998 + 994 ---- 1000 + 994 --- 999 + 995 --- 1001 + 995 --- 1007 + 995 --- 1008 + 996 --- 1002 + 996 --- 1009 + 996 --- 1010 + 997 --- 1003 + 997 --- 1011 + 997 --- 1012 + 998 --- 1004 + 998 --- 1013 + 998 --- 1014 + 1000 --- 1001 + 1000 --- 1002 + 1000 --- 1003 + 1000 --- 1004 + 1000 --- 1005 + 1000 --- 1006 + 1000 --- 1007 + 1000 --- 1008 + 1000 --- 1009 + 1000 --- 1010 + 1000 --- 1011 + 1000 --- 1012 + 1000 --- 1013 + 1000 --- 1014 + 1015 --- 1016 + 1016 --- 1017 + 1016 --- 1018 + 1016 --- 1019 + 1016 --- 1020 + 1016 ---- 1022 + 1016 --- 1021 + 1017 --- 1023 + 1017 --- 1029 + 1017 --- 1030 + 1018 --- 1024 + 1018 --- 1031 + 1018 --- 1032 + 1019 --- 1025 + 1019 --- 1033 + 1019 --- 1034 + 1020 --- 1026 + 1020 --- 1035 + 1020 --- 1036 + 1022 --- 1023 + 1022 --- 1024 + 1022 --- 1025 + 1022 --- 1026 + 1022 --- 1027 + 1022 --- 1028 + 1022 --- 1029 + 1022 --- 1030 + 1022 --- 1031 + 1022 --- 1032 + 1022 --- 1033 + 1022 --- 1034 + 1022 --- 1035 + 1022 --- 1036 + 10 <--x 1037 +``` diff --git a/rust/kcl-lib/tests/kcl_samples/keyboard/ast.snap b/rust/kcl-lib/tests/kcl_samples/keyboard/ast.snap new file mode 100644 index 000000000..790d648e3 --- /dev/null +++ b/rust/kcl-lib/tests/kcl_samples/keyboard/ast.snap @@ -0,0 +1,10119 @@ +--- +source: kcl-lib/src/simulation_tests.rs +description: Result of parsing keyboard.kcl +--- +{ + "Ok": { + "body": [ + { + "commentStart": 109, + "declaration": { + "commentStart": 131, + "end": 0, + "id": { + "commentStart": 131, + "end": 0, + "name": "baseColor", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 143, + "end": 0, + "raw": "\"#0f0f0f\"", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": "#0f0f0f" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "preComments": [ + "// Define constants" + ], + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 153, + "declaration": { + "commentStart": 153, + "end": 0, + "id": { + "commentStart": 153, + "end": 0, + "name": "highlightColor1", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 171, + "end": 0, + "raw": "\"#b0b0b0\"", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": "#b0b0b0" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 181, + "declaration": { + "commentStart": 181, + "end": 0, + "id": { + "commentStart": 181, + "end": 0, + "name": "highlightColor2", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 199, + "end": 0, + "raw": "\"#23af93\"", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": "#23af93" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 209, + "declaration": { + "commentStart": 209, + "end": 0, + "id": { + "commentStart": 209, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 221, + "end": 0, + "raw": "0.8", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.8, + "suffix": "None" + } + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 225, + "declaration": { + "commentStart": 225, + "end": 0, + "id": { + "commentStart": 225, + "end": 0, + "name": "keyDepth", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 236, + "end": 0, + "raw": "0.1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.1, + "suffix": "None" + } + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 240, + "declaration": { + "commentStart": 240, + "end": 0, + "id": { + "commentStart": 240, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 250, + "end": 0, + "raw": "0.1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.1, + "suffix": "None" + } + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 254, + "declaration": { + "commentStart": 254, + "end": 0, + "id": { + "commentStart": 254, + "end": 0, + "name": "row1", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 261, + "end": 0, + "left": { + "commentStart": 261, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 271, + "end": 0, + "raw": "3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 3.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 273, + "declaration": { + "commentStart": 273, + "end": 0, + "id": { + "commentStart": 273, + "end": 0, + "name": "row2", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 280, + "end": 0, + "left": { + "commentStart": 280, + "end": 0, + "left": { + "commentStart": 280, + "end": 0, + "name": "row1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "+", + "right": { + "commentStart": 287, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 299, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 307, + "declaration": { + "commentStart": 307, + "end": 0, + "id": { + "commentStart": 307, + "end": 0, + "name": "row3", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 314, + "end": 0, + "left": { + "commentStart": 314, + "end": 0, + "left": { + "commentStart": 314, + "end": 0, + "name": "row2", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "+", + "right": { + "commentStart": 321, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 333, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 341, + "declaration": { + "commentStart": 341, + "end": 0, + "id": { + "commentStart": 341, + "end": 0, + "name": "row4", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 348, + "end": 0, + "left": { + "commentStart": 348, + "end": 0, + "left": { + "commentStart": 348, + "end": 0, + "name": "row3", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "+", + "right": { + "commentStart": 355, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 367, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 375, + "declaration": { + "commentStart": 375, + "end": 0, + "id": { + "commentStart": 375, + "end": 0, + "name": "row5", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 382, + "end": 0, + "left": { + "commentStart": 382, + "end": 0, + "left": { + "commentStart": 382, + "end": 0, + "name": "row4", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "+", + "right": { + "commentStart": 389, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 401, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 409, + "declaration": { + "commentStart": 409, + "end": 0, + "id": { + "commentStart": 409, + "end": 0, + "name": "row6", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 416, + "end": 0, + "left": { + "commentStart": 416, + "end": 0, + "left": { + "commentStart": 416, + "end": 0, + "name": "row5", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "+", + "right": { + "commentStart": 423, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 435, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 442, + "declaration": { + "commentStart": 519, + "end": 0, + "id": { + "commentStart": 519, + "end": 0, + "name": "sketch001", + "start": 0, + "type": "Identifier" + }, + "init": { + "body": [ + { + "arguments": [ + { + "commentStart": 545, + "end": 0, + "raw": "'YZ'", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": "YZ" + } + ], + "callee": { + "commentStart": 531, + "end": 0, + "name": "startSketchOn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 531, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 571, + "elements": [ + { + "commentStart": 572, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 575, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 579, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 556, + "end": 0, + "name": "startProfileAt", + "start": 0, + "type": "Identifier" + }, + "commentStart": 556, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 592, + "end": 0, + "name": "end", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 598, + "elements": [ + { + "argument": { + "commentStart": 600, + "end": 0, + "raw": "0.14", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.14, + "suffix": "None" + } + }, + "commentStart": 599, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + { + "commentStart": 606, + "end": 0, + "raw": "0.68", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.68, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 613, + "end": 0, + "name": "tag", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 619, + "end": 0, + "start": 0, + "type": "TagDeclarator", + "type": "TagDeclarator", + "value": "seg01" + } + } + ], + "callee": { + "commentStart": 587, + "end": 0, + "name": "line", + "start": 0, + "type": "Identifier" + }, + "commentStart": 587, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "commentStart": 643, + "elements": [ + { + "commentStart": 644, + "end": 0, + "raw": "7", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 7.0, + "suffix": "None" + } + }, + { + "commentStart": 647, + "end": 0, + "left": { + "commentStart": 647, + "end": 0, + "left": { + "commentStart": 647, + "end": 0, + "name": "row6", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "+", + "right": { + "commentStart": 654, + "end": 0, + "left": { + "commentStart": 654, + "end": 0, + "raw": "3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 3.0, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 658, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 668, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 680, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + }, + { + "commentStart": 683, + "end": 0, + "start": 0, + "type": "TagDeclarator", + "type": "TagDeclarator", + "value": "seg02" + } + ], + "callee": { + "commentStart": 632, + "end": 0, + "name": "angledLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 632, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 701, + "end": 0, + "name": "endAbsolute", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 715, + "elements": [ + { + "commentStart": 716, + "end": 0, + "raw": "5.13", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 5.13, + "suffix": "None" + } + }, + { + "commentStart": 722, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 726, + "end": 0, + "name": "tag", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 732, + "end": 0, + "start": 0, + "type": "TagDeclarator", + "type": "TagDeclarator", + "value": "seg03" + } + } + ], + "callee": { + "commentStart": 696, + "end": 0, + "name": "line", + "start": 0, + "type": "Identifier" + }, + "commentStart": 696, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 750, + "end": 0, + "name": "endAbsolute", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 764, + "elements": [ + { + "arguments": [ + { + "commentStart": 779, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 765, + "end": 0, + "name": "profileStartX", + "start": 0, + "type": "Identifier" + }, + "commentStart": 765, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 797, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 783, + "end": 0, + "name": "profileStartY", + "start": 0, + "type": "Identifier" + }, + "commentStart": 783, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 802, + "end": 0, + "name": "tag", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 808, + "end": 0, + "start": 0, + "type": "TagDeclarator", + "type": "TagDeclarator", + "value": "seg04" + } + } + ], + "callee": { + "commentStart": 745, + "end": 0, + "name": "line", + "start": 0, + "type": "Identifier" + }, + "commentStart": 745, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [], + "callee": { + "commentStart": 821, + "end": 0, + "name": "close", + "start": 0, + "type": "Identifier" + }, + "commentStart": 821, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 842, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 851, + "end": 0, + "raw": "13.6", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 13.6, + "suffix": "None" + } + } + } + ], + "callee": { + "commentStart": 834, + "end": 0, + "name": "extrude", + "start": 0, + "type": "Identifier" + }, + "commentStart": 834, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 873, + "end": 0, + "name": "color", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 881, + "end": 0, + "name": "baseColor", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + } + ], + "callee": { + "commentStart": 862, + "end": 0, + "name": "appearance", + "start": 0, + "type": "Identifier" + }, + "commentStart": 862, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 912, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 921, + "end": 0, + "raw": ".6", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.6, + "suffix": "None" + } + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 932, + "end": 0, + "name": "tags", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 939, + "elements": [ + { + "arguments": [ + { + "commentStart": 966, + "end": 0, + "name": "seg01", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 950, + "end": 0, + "name": "getOppositeEdge", + "start": 0, + "type": "Identifier" + }, + "commentStart": 950, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 999, + "end": 0, + "name": "seg03", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 983, + "end": 0, + "name": "getOppositeEdge", + "start": 0, + "type": "Identifier" + }, + "commentStart": 983, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "commentStart": 1016, + "end": 0, + "name": "seg01", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 1032, + "end": 0, + "name": "seg03", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + } + ], + "callee": { + "commentStart": 897, + "end": 0, + "name": "fillet", + "start": 0, + "type": "Identifier" + }, + "commentStart": 897, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + } + ], + "commentStart": 531, + "end": 0, + "nonCodeMeta": { + "nonCodeNodes": { + "9": [ + { + "commentStart": 1054, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLineBlockComment", + "value": "Create a short cylindrical foot at each corner of the keyboard", + "style": "line" + } + } + ] + }, + "startNodes": [] + }, + "start": 0, + "type": "PipeExpression", + "type": "PipeExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "preComments": [ + "", + "", + "// Sketch the side profile of the keyboard base and extrude to total width" + ], + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 1122, + "declaration": { + "commentStart": 1122, + "end": 0, + "id": { + "commentStart": 1122, + "end": 0, + "name": "sketch003", + "start": 0, + "type": "Identifier" + }, + "init": { + "arguments": [ + { + "commentStart": 1148, + "end": 0, + "name": "sketch001", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 1159, + "end": 0, + "name": "seg04", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 1134, + "end": 0, + "name": "startSketchOn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1134, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 1166, + "declaration": { + "commentStart": 1166, + "end": 0, + "id": { + "commentStart": 1166, + "end": 0, + "name": "profile001", + "start": 0, + "type": "Identifier" + }, + "init": { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 1197, + "end": 0, + "name": "center", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1206, + "elements": [ + { + "commentStart": 1207, + "end": 0, + "raw": "0.75", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.75, + "suffix": "None" + } + }, + { + "commentStart": 1213, + "end": 0, + "raw": "0.75", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.75, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1220, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1229, + "end": 0, + "raw": "0.4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.4, + "suffix": "None" + } + } + } + ], + "callee": { + "commentStart": 1179, + "end": 0, + "name": "circle", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1179, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": { + "commentStart": 1186, + "end": 0, + "name": "sketch003", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 1234, + "declaration": { + "commentStart": 1234, + "end": 0, + "id": { + "commentStart": 1234, + "end": 0, + "name": "profile003", + "start": 0, + "type": "Identifier" + }, + "init": { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 1265, + "end": 0, + "name": "center", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1274, + "elements": [ + { + "commentStart": 1275, + "end": 0, + "raw": "4.4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 4.4, + "suffix": "None" + } + }, + { + "commentStart": 1280, + "end": 0, + "raw": "0.75", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.75, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1287, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1296, + "end": 0, + "raw": "0.4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.4, + "suffix": "None" + } + } + } + ], + "callee": { + "commentStart": 1247, + "end": 0, + "name": "circle", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1247, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": { + "commentStart": 1254, + "end": 0, + "name": "sketch003", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 1301, + "declaration": { + "commentStart": 1301, + "end": 0, + "id": { + "commentStart": 1301, + "end": 0, + "name": "profile004", + "start": 0, + "type": "Identifier" + }, + "init": { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 1332, + "end": 0, + "name": "center", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1341, + "elements": [ + { + "commentStart": 1342, + "end": 0, + "raw": "0.73", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.73, + "suffix": "None" + } + }, + { + "commentStart": 1348, + "end": 0, + "left": { + "commentStart": 1348, + "end": 0, + "raw": "13.6", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 13.6, + "suffix": "None" + } + }, + "operator": "-", + "right": { + "commentStart": 1355, + "end": 0, + "raw": ".75", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.75, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1361, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1370, + "end": 0, + "raw": "0.4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.4, + "suffix": "None" + } + } + } + ], + "callee": { + "commentStart": 1314, + "end": 0, + "name": "circle", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1314, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": { + "commentStart": 1321, + "end": 0, + "name": "sketch003", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 1375, + "declaration": { + "commentStart": 1375, + "end": 0, + "id": { + "commentStart": 1375, + "end": 0, + "name": "profile005", + "start": 0, + "type": "Identifier" + }, + "init": { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 1406, + "end": 0, + "name": "center", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1415, + "elements": [ + { + "commentStart": 1416, + "end": 0, + "raw": "4.4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 4.4, + "suffix": "None" + } + }, + { + "commentStart": 1421, + "end": 0, + "left": { + "commentStart": 1421, + "end": 0, + "raw": "13.6", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 13.6, + "suffix": "None" + } + }, + "operator": "-", + "right": { + "commentStart": 1428, + "end": 0, + "raw": ".75", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.75, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1434, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1443, + "end": 0, + "raw": "0.4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.4, + "suffix": "None" + } + } + } + ], + "callee": { + "commentStart": 1388, + "end": 0, + "name": "circle", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1388, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": { + "commentStart": 1395, + "end": 0, + "name": "sketch003", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 1448, + "end": 0, + "expression": { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 1531, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1540, + "end": 0, + "raw": ".15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.15, + "suffix": "None" + } + } + } + ], + "callee": { + "commentStart": 1448, + "end": 0, + "name": "extrude", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1448, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": { + "commentStart": 1459, + "elements": [ + { + "commentStart": 1465, + "end": 0, + "name": "profile001", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 1481, + "end": 0, + "name": "profile003", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 1497, + "end": 0, + "name": "profile004", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 1513, + "end": 0, + "name": "profile005", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 1546, + "declaration": { + "commentStart": 1595, + "end": 0, + "id": { + "commentStart": 1595, + "end": 0, + "name": "plane001", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 1606, + "end": 0, + "properties": [ + { + "commentStart": 1610, + "end": 0, + "key": { + "commentStart": 1610, + "end": 0, + "name": "plane", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 1618, + "end": 0, + "properties": [ + { + "commentStart": 1624, + "end": 0, + "key": { + "commentStart": 1624, + "end": 0, + "name": "origin", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 1633, + "elements": [ + { + "commentStart": 1634, + "end": 0, + "raw": "0.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 1639, + "end": 0, + "raw": "0.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 1644, + "end": 0, + "raw": "0.7", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.7, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "commentStart": 1654, + "end": 0, + "key": { + "commentStart": 1654, + "end": 0, + "name": "xAxis", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 1662, + "elements": [ + { + "commentStart": 1663, + "end": 0, + "raw": "1.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + { + "commentStart": 1668, + "end": 0, + "raw": "0.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 1673, + "end": 0, + "raw": "0.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "commentStart": 1683, + "end": 0, + "key": { + "commentStart": 1683, + "end": 0, + "name": "yAxis", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 1691, + "elements": [ + { + "commentStart": 1692, + "end": 0, + "raw": "0.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 1697, + "end": 0, + "raw": "1.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "commentStart": 1716, + "end": 0, + "raw": "7", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 7.0, + "suffix": "None" + } + } + ], + "callee": { + "commentStart": 1706, + "end": 0, + "name": "toRadians", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1706, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + } + ], + "callee": { + "commentStart": 1702, + "end": 0, + "name": "sin", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1702, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "commentStart": 1726, + "end": 0, + "key": { + "commentStart": 1726, + "end": 0, + "name": "zAxis", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 1734, + "elements": [ + { + "commentStart": 1735, + "end": 0, + "raw": "0.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 1740, + "end": 0, + "raw": "0.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 1745, + "end": 0, + "raw": "1.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "preComments": [ + "", + "", + "// Define the plane to sketch keyboard keys on" + ], + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 1755, + "declaration": { + "commentStart": 1882, + "end": 0, + "id": { + "commentStart": 1882, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "init": { + "body": { + "body": [ + { + "commentStart": 1942, + "declaration": { + "commentStart": 1942, + "end": 0, + "id": { + "commentStart": 1942, + "end": 0, + "name": "sketch002", + "start": 0, + "type": "Identifier" + }, + "init": { + "arguments": [ + { + "commentStart": 1968, + "end": 0, + "name": "plane001", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 1954, + "end": 0, + "name": "startSketchOn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1954, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 1980, + "declaration": { + "commentStart": 1980, + "end": 0, + "id": { + "commentStart": 1980, + "end": 0, + "name": "profile002", + "start": 0, + "type": "Identifier" + }, + "init": { + "body": [ + { + "arguments": [ + { + "commentStart": 2008, + "elements": [ + { + "commentStart": 2009, + "computed": false, + "end": 0, + "object": { + "commentStart": 2009, + "end": 0, + "name": "originStart", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "property": { + "commentStart": 2021, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + "start": 0, + "type": "MemberExpression", + "type": "MemberExpression" + }, + { + "commentStart": 2025, + "computed": false, + "end": 0, + "object": { + "commentStart": 2025, + "end": 0, + "name": "originStart", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "property": { + "commentStart": 2037, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + "start": 0, + "type": "MemberExpression", + "type": "MemberExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 2042, + "end": 0, + "name": "sketch002", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 1993, + "end": 0, + "name": "startProfileAt", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1993, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 2064, + "end": 0, + "properties": [ + { + "commentStart": 2075, + "end": 0, + "key": { + "commentStart": 2075, + "end": 0, + "name": "angleStart", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 2088, + "end": 0, + "raw": "180", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 180.0, + "suffix": "None" + } + } + }, + { + "commentStart": 2102, + "end": 0, + "key": { + "commentStart": 2102, + "end": 0, + "name": "angleEnd", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 2113, + "end": 0, + "raw": "270", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 270.0, + "suffix": "None" + } + } + }, + { + "commentStart": 2127, + "end": 0, + "key": { + "commentStart": 2127, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 2136, + "end": 0, + "raw": "0.1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.1, + "suffix": "None" + } + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 2150, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 2060, + "end": 0, + "name": "arc", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2060, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 2171, + "elements": [ + { + "commentStart": 2172, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 2175, + "end": 0, + "left": { + "commentStart": 2175, + "end": 0, + "name": "keyWidth", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "-", + "right": { + "commentStart": 2186, + "end": 0, + "raw": ".2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.2, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 2191, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + }, + { + "commentStart": 2194, + "end": 0, + "start": 0, + "type": "TagDeclarator", + "type": "TagDeclarator", + "value": "rectangleSegmentA001" + } + ], + "callee": { + "commentStart": 2160, + "end": 0, + "name": "angledLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2160, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 2238, + "end": 0, + "properties": [ + { + "commentStart": 2240, + "end": 0, + "key": { + "commentStart": 2240, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 2249, + "end": 0, + "raw": "0.1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.1, + "suffix": "None" + } + } + }, + { + "commentStart": 2254, + "end": 0, + "key": { + "commentStart": 2254, + "end": 0, + "name": "offset", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 2263, + "end": 0, + "raw": "90", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 90.0, + "suffix": "None" + } + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 2269, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 2224, + "end": 0, + "name": "tangentialArc", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2224, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 2290, + "elements": [ + { + "commentStart": 2301, + "end": 0, + "left": { + "arguments": [ + { + "commentStart": 2308, + "end": 0, + "name": "rectangleSegmentA001", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 2301, + "end": 0, + "name": "segAng", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2301, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "operator": "+", + "right": { + "commentStart": 2332, + "end": 0, + "raw": "90", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 90.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 2345, + "end": 0, + "left": { + "commentStart": 2345, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "-", + "right": { + "commentStart": 2357, + "end": 0, + "raw": ".2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.2, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 2370, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + }, + { + "commentStart": 2373, + "end": 0, + "start": 0, + "type": "TagDeclarator", + "type": "TagDeclarator", + "value": "rectangleSegmentB001" + } + ], + "callee": { + "commentStart": 2279, + "end": 0, + "name": "angledLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2279, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 2417, + "end": 0, + "properties": [ + { + "commentStart": 2419, + "end": 0, + "key": { + "commentStart": 2419, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 2428, + "end": 0, + "raw": "0.1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.1, + "suffix": "None" + } + } + }, + { + "commentStart": 2433, + "end": 0, + "key": { + "commentStart": 2433, + "end": 0, + "name": "offset", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 2442, + "end": 0, + "raw": "90", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 90.0, + "suffix": "None" + } + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 2448, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 2403, + "end": 0, + "name": "tangentialArc", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2403, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 2469, + "elements": [ + { + "arguments": [ + { + "commentStart": 2487, + "end": 0, + "name": "rectangleSegmentA001", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 2480, + "end": 0, + "name": "segAng", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2480, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "argument": { + "arguments": [ + { + "commentStart": 2527, + "end": 0, + "name": "rectangleSegmentA001", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 2520, + "end": 0, + "name": "segLen", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2520, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "commentStart": 2519, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 2559, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + }, + { + "commentStart": 2562, + "end": 0, + "start": 0, + "type": "TagDeclarator", + "type": "TagDeclarator", + "value": "rectangleSegmentC001" + } + ], + "callee": { + "commentStart": 2458, + "end": 0, + "name": "angledLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2458, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 2606, + "end": 0, + "properties": [ + { + "commentStart": 2608, + "end": 0, + "key": { + "commentStart": 2608, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 2617, + "end": 0, + "raw": "0.1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.1, + "suffix": "None" + } + } + }, + { + "commentStart": 2622, + "end": 0, + "key": { + "commentStart": 2622, + "end": 0, + "name": "offset", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 2631, + "end": 0, + "raw": "90", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 90.0, + "suffix": "None" + } + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 2637, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 2592, + "end": 0, + "name": "tangentialArc", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2592, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 2652, + "end": 0, + "name": "endAbsolute", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2666, + "elements": [ + { + "arguments": [ + { + "commentStart": 2681, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 2667, + "end": 0, + "name": "profileStartX", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2667, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 2699, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 2685, + "end": 0, + "name": "profileStartY", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2685, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 2704, + "end": 0, + "name": "tag", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2710, + "end": 0, + "start": 0, + "type": "TagDeclarator", + "type": "TagDeclarator", + "value": "rectangleSegmentD001" + } + } + ], + "callee": { + "commentStart": 2647, + "end": 0, + "name": "line", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2647, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [], + "callee": { + "commentStart": 2740, + "end": 0, + "name": "close", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2740, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 2763, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2772, + "end": 0, + "name": "keyDepth", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + } + ], + "callee": { + "commentStart": 2755, + "end": 0, + "name": "extrude", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2755, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 2800, + "end": 0, + "name": "color", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2808, + "end": 0, + "name": "color", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + } + ], + "callee": { + "commentStart": 2789, + "end": 0, + "name": "appearance", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2789, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 2914, + "end": 0, + "name": "instances", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2926, + "end": 0, + "left": { + "commentStart": 2926, + "end": 0, + "name": "repeats", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "+", + "right": { + "commentStart": 2936, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 2948, + "end": 0, + "name": "distance", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2959, + "end": 0, + "left": { + "commentStart": 2959, + "end": 0, + "name": "keyWidth", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "+", + "right": { + "commentStart": 2970, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 2988, + "end": 0, + "name": "axis", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 2995, + "elements": [ + { + "commentStart": 2996, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + { + "commentStart": 2999, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 3002, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + } + ], + "callee": { + "commentStart": 2876, + "end": 0, + "name": "patternLinear3d", + "start": 0, + "type": "Identifier" + }, + "commentStart": 2876, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": { + "commentStart": 2902, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + } + ], + "commentStart": 1993, + "end": 0, + "nonCodeMeta": { + "nonCodeNodes": { + "11": [ + { + "commentStart": 2814, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "blockComment", + "value": "Repeat key when desired. This will default to zero", + "style": "line" + } + } + ] + }, + "startNodes": [] + }, + "start": 0, + "type": "PipeExpression", + "type": "PipeExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "argument": { + "commentStart": 3024, + "end": 0, + "name": "sketch001", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "commentStart": 3017, + "end": 0, + "start": 0, + "type": "ReturnStatement", + "type": "ReturnStatement" + } + ], + "commentStart": 1938, + "end": 0, + "start": 0 + }, + "commentStart": 1887, + "end": 0, + "params": [ + { + "type": "Parameter", + "identifier": { + "commentStart": 1888, + "end": 0, + "name": "originStart", + "start": 0, + "type": "Identifier" + } + }, + { + "type": "Parameter", + "identifier": { + "commentStart": 1901, + "end": 0, + "name": "keyWidth", + "start": 0, + "type": "Identifier" + } + }, + { + "type": "Parameter", + "identifier": { + "commentStart": 1911, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier" + } + }, + { + "type": "Parameter", + "identifier": { + "commentStart": 1922, + "end": 0, + "name": "repeats", + "start": 0, + "type": "Identifier" + } + }, + { + "type": "Parameter", + "identifier": { + "commentStart": 1931, + "end": 0, + "name": "color", + "start": 0, + "type": "Identifier" + } + } + ], + "start": 0, + "type": "FunctionExpression", + "type": "FunctionExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "fn", + "preComments": [ + "", + "", + "// Create a function to build a key. Parameterize for position, width, height, number of instances, and appearance color." + ], + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 3035, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 3074, + "elements": [ + { + "commentStart": 3075, + "end": 0, + "raw": "0.3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.3, + "suffix": "None" + } + }, + { + "commentStart": 3080, + "end": 0, + "name": "row1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 3087, + "end": 0, + "raw": "1.1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.1, + "suffix": "None" + } + }, + { + "commentStart": 3092, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 3103, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 3106, + "end": 0, + "name": "highlightColor2", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 3068, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 3068, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "preComments": [ + "", + "", + "// Build the first row of keys" + ], + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 3123, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 3129, + "elements": [ + { + "commentStart": 3130, + "end": 0, + "raw": "1.5", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.5, + "suffix": "None" + } + }, + { + "commentStart": 3135, + "end": 0, + "name": "row1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 3142, + "end": 0, + "raw": "0.8", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.8, + "suffix": "None" + } + }, + { + "commentStart": 3147, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 3158, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + { + "commentStart": 3161, + "end": 0, + "name": "highlightColor1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 3123, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 3123, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 3178, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 3184, + "elements": [ + { + "commentStart": 3185, + "end": 0, + "left": { + "commentStart": 3185, + "end": 0, + "left": { + "commentStart": 3185, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 3195, + "end": 0, + "raw": "7", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 7.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 3199, + "end": 0, + "raw": "3.5", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 3.5, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 3204, + "end": 0, + "name": "row1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 3211, + "end": 0, + "raw": "5.2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 5.2, + "suffix": "None" + } + }, + { + "commentStart": 3216, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 3227, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 3230, + "end": 0, + "name": "highlightColor2", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 3178, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 3178, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 3247, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 3253, + "elements": [ + { + "commentStart": 3254, + "end": 0, + "left": { + "commentStart": 3254, + "end": 0, + "left": { + "commentStart": 3254, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 3264, + "end": 0, + "raw": "8", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 8.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 3268, + "end": 0, + "raw": "8.7", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 8.7, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 3273, + "end": 0, + "name": "row1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 3280, + "end": 0, + "raw": "0.8", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.8, + "suffix": "None" + } + }, + { + "commentStart": 3285, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 3296, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 3299, + "end": 0, + "name": "highlightColor1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 3247, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 3247, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 3316, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 3322, + "elements": [ + { + "commentStart": 3323, + "end": 0, + "left": { + "commentStart": 3323, + "end": 0, + "left": { + "commentStart": 3323, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 3333, + "end": 0, + "raw": "8", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 8.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 3337, + "end": 0, + "raw": "9.6", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 9.6, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 3342, + "end": 0, + "name": "row1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 3349, + "end": 0, + "raw": "0.8", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.8, + "suffix": "None" + } + }, + { + "commentStart": 3354, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 3365, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 3368, + "end": 0, + "name": "highlightColor1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 3316, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 3316, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 3385, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 3391, + "elements": [ + { + "commentStart": 3392, + "end": 0, + "left": { + "commentStart": 3392, + "end": 0, + "left": { + "commentStart": 3392, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 3402, + "end": 0, + "raw": "10", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 10.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 3407, + "end": 0, + "raw": "10.3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 10.3, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 3413, + "end": 0, + "name": "row1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 3420, + "end": 0, + "raw": "1.1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.1, + "suffix": "None" + } + }, + { + "commentStart": 3425, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 3436, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 3439, + "end": 0, + "name": "highlightColor1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 3385, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 3385, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 3456, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 3462, + "elements": [ + { + "commentStart": 3463, + "end": 0, + "left": { + "commentStart": 3463, + "end": 0, + "left": { + "commentStart": 3463, + "end": 0, + "left": { + "commentStart": 3463, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 3473, + "end": 0, + "raw": "12", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 12.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 3478, + "end": 0, + "raw": "10.3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 10.3, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 3485, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 3488, + "end": 0, + "name": "row1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 3495, + "end": 0, + "raw": "0.8", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.8, + "suffix": "None" + } + }, + { + "commentStart": 3500, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 3511, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 3514, + "end": 0, + "name": "highlightColor2", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 3456, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 3456, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 3530, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 3570, + "elements": [ + { + "commentStart": 3571, + "end": 0, + "left": { + "commentStart": 3571, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 3581, + "end": 0, + "raw": "3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 3.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 3584, + "end": 0, + "name": "row2", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 3591, + "end": 0, + "raw": "1.7", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.7, + "suffix": "None" + } + }, + { + "commentStart": 3596, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 3607, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 3610, + "end": 0, + "name": "highlightColor2", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 3564, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 3564, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "preComments": [ + "", + "", + "// Build the second row of keys" + ], + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 3627, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 3633, + "elements": [ + { + "commentStart": 3634, + "end": 0, + "left": { + "commentStart": 3634, + "end": 0, + "left": { + "commentStart": 3634, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 3644, + "end": 0, + "raw": "4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 4.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 3648, + "end": 0, + "raw": "1.7", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.7, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 3653, + "end": 0, + "name": "row2", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 3660, + "end": 0, + "raw": "0.8", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.8, + "suffix": "None" + } + }, + { + "commentStart": 3665, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 3676, + "end": 0, + "raw": "9", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 9.0, + "suffix": "None" + } + }, + { + "commentStart": 3679, + "end": 0, + "name": "highlightColor1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 3627, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 3627, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 3696, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 3702, + "elements": [ + { + "commentStart": 3703, + "end": 0, + "left": { + "commentStart": 3703, + "end": 0, + "left": { + "commentStart": 3703, + "end": 0, + "left": { + "commentStart": 3703, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 3713, + "end": 0, + "raw": "14", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 14.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 3718, + "end": 0, + "raw": "1.7", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.7, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 3724, + "end": 0, + "left": { + "commentStart": 3724, + "end": 0, + "raw": "0.8", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.8, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 3730, + "end": 0, + "raw": "10", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 10.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 3734, + "end": 0, + "name": "row2", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 3741, + "end": 0, + "raw": "2.2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.2, + "suffix": "None" + } + }, + { + "commentStart": 3746, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 3757, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 3760, + "end": 0, + "name": "highlightColor2", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 3696, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 3696, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 3776, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 3815, + "elements": [ + { + "commentStart": 3816, + "end": 0, + "left": { + "commentStart": 3816, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 3826, + "end": 0, + "raw": "3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 3.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 3829, + "end": 0, + "name": "row3", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 3836, + "end": 0, + "left": { + "commentStart": 3836, + "end": 0, + "raw": "1.1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.1, + "suffix": "None" + } + }, + "operator": "+", + "right": { + "commentStart": 3842, + "end": 0, + "raw": ".1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.1, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 3846, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 3857, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 3860, + "end": 0, + "name": "highlightColor1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 3809, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 3809, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "preComments": [ + "", + "", + "// Build the third row of keys" + ], + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 3877, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 3883, + "elements": [ + { + "commentStart": 3884, + "end": 0, + "left": { + "commentStart": 3884, + "end": 0, + "left": { + "commentStart": 3884, + "end": 0, + "left": { + "commentStart": 3884, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 3894, + "end": 0, + "raw": "4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 4.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 3898, + "end": 0, + "raw": "1.1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.1, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 3904, + "end": 0, + "raw": ".1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.1, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 3908, + "end": 0, + "name": "row3", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 3915, + "end": 0, + "raw": "0.8", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.8, + "suffix": "None" + } + }, + { + "commentStart": 3920, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 3931, + "end": 0, + "raw": "10", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 10.0, + "suffix": "None" + } + }, + { + "commentStart": 3935, + "end": 0, + "name": "highlightColor1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 3877, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 3877, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 3952, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 3958, + "elements": [ + { + "commentStart": 3959, + "end": 0, + "left": { + "commentStart": 3959, + "end": 0, + "left": { + "commentStart": 3959, + "end": 0, + "left": { + "commentStart": 3959, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 3969, + "end": 0, + "raw": "3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 3.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 3973, + "end": 0, + "raw": "11.1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 11.1, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 3980, + "end": 0, + "raw": ".1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.1, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 3984, + "end": 0, + "name": "row3", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 3991, + "end": 0, + "left": { + "commentStart": 3991, + "end": 0, + "raw": "1.4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.4, + "suffix": "None" + } + }, + "operator": "+", + "right": { + "commentStart": 3997, + "end": 0, + "raw": ".4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.4, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 4001, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 4012, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 4015, + "end": 0, + "name": "highlightColor2", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 3952, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 3952, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 4031, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 4071, + "elements": [ + { + "commentStart": 4072, + "end": 0, + "left": { + "commentStart": 4072, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 4082, + "end": 0, + "raw": "3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 3.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 4085, + "end": 0, + "name": "row4", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 4092, + "end": 0, + "raw": "0.9", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.9, + "suffix": "None" + } + }, + { + "commentStart": 4097, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 4108, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 4111, + "end": 0, + "name": "highlightColor1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 4065, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 4065, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "preComments": [ + "", + "", + "// Build the fourth row of keys" + ], + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 4128, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 4134, + "elements": [ + { + "commentStart": 4135, + "end": 0, + "left": { + "commentStart": 4135, + "end": 0, + "left": { + "commentStart": 4135, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 4145, + "end": 0, + "raw": "4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 4.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 4149, + "end": 0, + "raw": "0.9", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.9, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 4154, + "end": 0, + "name": "row4", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 4161, + "end": 0, + "raw": "0.8", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.8, + "suffix": "None" + } + }, + { + "commentStart": 4166, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 4177, + "end": 0, + "raw": "11", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 11.0, + "suffix": "None" + } + }, + { + "commentStart": 4181, + "end": 0, + "name": "highlightColor1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 4128, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 4128, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 4198, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 4204, + "elements": [ + { + "commentStart": 4205, + "end": 0, + "left": { + "commentStart": 4205, + "end": 0, + "left": { + "commentStart": 4205, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 4215, + "end": 0, + "raw": "3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 3.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 4219, + "end": 0, + "raw": "11.8", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 11.8, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 4225, + "end": 0, + "name": "row4", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 4232, + "end": 0, + "raw": "1.2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.2, + "suffix": "None" + } + }, + { + "commentStart": 4237, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 4248, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 4251, + "end": 0, + "name": "highlightColor1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 4198, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 4198, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 4267, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 4306, + "elements": [ + { + "commentStart": 4307, + "end": 0, + "left": { + "commentStart": 4307, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 4317, + "end": 0, + "raw": "3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 3.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 4320, + "end": 0, + "name": "row5", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 4327, + "end": 0, + "raw": "0.8", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.8, + "suffix": "None" + } + }, + { + "commentStart": 4332, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 4343, + "end": 0, + "raw": "12", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 12.0, + "suffix": "None" + } + }, + { + "commentStart": 4347, + "end": 0, + "name": "highlightColor1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 4300, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 4300, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "preComments": [ + "", + "", + "// Build the fifth row of keys" + ], + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 4364, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 4370, + "elements": [ + { + "commentStart": 4371, + "end": 0, + "left": { + "commentStart": 4371, + "end": 0, + "left": { + "commentStart": 4371, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 4381, + "end": 0, + "raw": "3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 3.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 4385, + "end": 0, + "raw": "11.7", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 11.7, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 4391, + "end": 0, + "name": "row5", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 4398, + "end": 0, + "raw": "1.3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.3, + "suffix": "None" + } + }, + { + "commentStart": 4403, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "commentStart": 4414, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 4417, + "end": 0, + "name": "highlightColor2", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 4364, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 4364, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 4433, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 4472, + "elements": [ + { + "commentStart": 4473, + "end": 0, + "left": { + "commentStart": 4473, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 4483, + "end": 0, + "raw": "3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 3.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 4486, + "end": 0, + "name": "row6", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 4493, + "end": 0, + "raw": "1.1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.1, + "suffix": "None" + } + }, + { + "commentStart": 4498, + "end": 0, + "left": { + "commentStart": 4498, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 4510, + "end": 0, + "raw": ".6", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.6, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 4514, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 4517, + "end": 0, + "name": "highlightColor2", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 4466, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 4466, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "preComments": [ + "", + "", + "// Build the sixth row of keys" + ], + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 4534, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 4540, + "elements": [ + { + "commentStart": 4541, + "end": 0, + "left": { + "commentStart": 4541, + "end": 0, + "left": { + "commentStart": 4541, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 4551, + "end": 0, + "raw": "4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 4.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 4555, + "end": 0, + "raw": "1.1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.1, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 4560, + "end": 0, + "name": "row6", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 4567, + "end": 0, + "raw": "0.8", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.8, + "suffix": "None" + } + }, + { + "commentStart": 4572, + "end": 0, + "left": { + "commentStart": 4572, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 4584, + "end": 0, + "raw": ".6", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.6, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 4588, + "end": 0, + "raw": "11", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 11.0, + "suffix": "None" + } + }, + { + "commentStart": 4592, + "end": 0, + "name": "highlightColor1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 4534, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 4534, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 4609, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 4615, + "elements": [ + { + "commentStart": 4616, + "end": 0, + "left": { + "commentStart": 4616, + "end": 0, + "left": { + "commentStart": 4616, + "end": 0, + "name": "spacing", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 4626, + "end": 0, + "raw": "3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 3.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 4630, + "end": 0, + "raw": "12", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 12.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 4634, + "end": 0, + "name": "row6", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 4641, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + { + "commentStart": 4644, + "end": 0, + "left": { + "commentStart": 4644, + "end": 0, + "name": "keyHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 4656, + "end": 0, + "raw": ".6", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.6, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 4660, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 4663, + "end": 0, + "name": "highlightColor2", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 4609, + "end": 0, + "name": "keyFn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 4609, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 4679, + "declaration": { + "commentStart": 4730, + "end": 0, + "id": { + "commentStart": 4730, + "end": 0, + "name": "plane002", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 4741, + "end": 0, + "properties": [ + { + "commentStart": 4745, + "end": 0, + "key": { + "commentStart": 4745, + "end": 0, + "name": "plane", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 4753, + "end": 0, + "properties": [ + { + "commentStart": 4759, + "end": 0, + "key": { + "commentStart": 4759, + "end": 0, + "name": "origin", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 4768, + "elements": [ + { + "commentStart": 4769, + "end": 0, + "raw": "0.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 4774, + "end": 0, + "raw": "0.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 4779, + "end": 0, + "raw": ".81", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.81, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "commentStart": 4789, + "end": 0, + "key": { + "commentStart": 4789, + "end": 0, + "name": "xAxis", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 4797, + "elements": [ + { + "commentStart": 4798, + "end": 0, + "raw": "1.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + { + "commentStart": 4803, + "end": 0, + "raw": "0.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 4808, + "end": 0, + "raw": "0.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "commentStart": 4818, + "end": 0, + "key": { + "commentStart": 4818, + "end": 0, + "name": "yAxis", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 4826, + "elements": [ + { + "commentStart": 4827, + "end": 0, + "raw": "0.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 4832, + "end": 0, + "raw": "1.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "commentStart": 4851, + "end": 0, + "raw": "7", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 7.0, + "suffix": "None" + } + } + ], + "callee": { + "commentStart": 4841, + "end": 0, + "name": "toRadians", + "start": 0, + "type": "Identifier" + }, + "commentStart": 4841, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + } + ], + "callee": { + "commentStart": 4837, + "end": 0, + "name": "sin", + "start": 0, + "type": "Identifier" + }, + "commentStart": 4837, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "commentStart": 4861, + "end": 0, + "key": { + "commentStart": 4861, + "end": 0, + "name": "zAxis", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 4869, + "elements": [ + { + "commentStart": 4870, + "end": 0, + "raw": "0.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 4875, + "end": 0, + "raw": "0.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "commentStart": 4880, + "end": 0, + "raw": "1.0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "preComments": [ + "", + "", + "// Create a plane to sketch ZOO brand letters on" + ], + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 4890, + "declaration": { + "commentStart": 4936, + "end": 0, + "id": { + "commentStart": 4936, + "end": 0, + "name": "z", + "start": 0, + "type": "Identifier" + }, + "init": { + "body": { + "body": [ + { + "commentStart": 4964, + "declaration": { + "commentStart": 4964, + "end": 0, + "id": { + "commentStart": 4964, + "end": 0, + "name": "z", + "start": 0, + "type": "Identifier" + }, + "init": { + "body": [ + { + "arguments": [ + { + "commentStart": 4982, + "end": 0, + "name": "plane002", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 4968, + "end": 0, + "name": "startSketchOn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 4968, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 5014, + "elements": [ + { + "commentStart": 5025, + "end": 0, + "left": { + "commentStart": 5025, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + "operator": "+", + "right": { + "commentStart": 5029, + "computed": false, + "end": 0, + "object": { + "commentStart": 5029, + "end": 0, + "name": "origin", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "property": { + "commentStart": 5036, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + "start": 0, + "type": "MemberExpression", + "type": "MemberExpression" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 5049, + "end": 0, + "left": { + "commentStart": 5049, + "end": 0, + "left": { + "commentStart": 5049, + "end": 0, + "raw": "0.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.15, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 5056, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 5064, + "computed": false, + "end": 0, + "object": { + "commentStart": 5064, + "end": 0, + "name": "origin", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "property": { + "commentStart": 5071, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + "start": 0, + "type": "MemberExpression", + "type": "MemberExpression" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 5084, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 4999, + "end": 0, + "name": "startProfileAt", + "start": 0, + "type": "Identifier" + }, + "commentStart": 4999, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 5100, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 5109, + "end": 0, + "left": { + "argument": { + "commentStart": 5110, + "end": 0, + "raw": "0.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.15, + "suffix": "None" + } + }, + "commentStart": 5109, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + "operator": "*", + "right": { + "commentStart": 5117, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "callee": { + "commentStart": 5094, + "end": 0, + "name": "yLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5094, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 5137, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 5146, + "end": 0, + "left": { + "commentStart": 5146, + "end": 0, + "raw": "0.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.15, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 5153, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "callee": { + "commentStart": 5131, + "end": 0, + "name": "xLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5131, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "commentStart": 5181, + "end": 0, + "properties": [ + { + "commentStart": 5192, + "end": 0, + "key": { + "commentStart": 5192, + "end": 0, + "name": "angle", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 5200, + "end": 0, + "raw": "47.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 47.15, + "suffix": "None" + } + } + }, + { + "commentStart": 5216, + "end": 0, + "key": { + "commentStart": 5216, + "end": 0, + "name": "to", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 5221, + "end": 0, + "left": { + "commentStart": 5221, + "end": 0, + "left": { + "commentStart": 5221, + "end": 0, + "raw": "0.3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.3, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 5227, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 5235, + "computed": false, + "end": 0, + "object": { + "commentStart": 5235, + "end": 0, + "name": "origin", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "property": { + "commentStart": 5242, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + "start": 0, + "type": "MemberExpression", + "type": "MemberExpression" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 5255, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + }, + { + "commentStart": 5258, + "end": 0, + "start": 0, + "type": "TagDeclarator", + "type": "TagDeclarator", + "value": "seg1" + } + ], + "callee": { + "commentStart": 5167, + "end": 0, + "name": "angledLineToX", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5167, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 5278, + "end": 0, + "name": "endAbsolute", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 5292, + "end": 0, + "left": { + "commentStart": 5292, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + "operator": "+", + "right": { + "commentStart": 5296, + "computed": false, + "end": 0, + "object": { + "commentStart": 5296, + "end": 0, + "name": "origin", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "property": { + "commentStart": 5303, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + "start": 0, + "type": "MemberExpression", + "type": "MemberExpression" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 5307, + "end": 0, + "name": "tag", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 5313, + "end": 0, + "start": 0, + "type": "TagDeclarator", + "type": "TagDeclarator", + "value": "seg3" + } + } + ], + "callee": { + "commentStart": 5272, + "end": 0, + "name": "yLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5272, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 5333, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 5342, + "end": 0, + "left": { + "commentStart": 5342, + "end": 0, + "raw": "0.63", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.63, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 5349, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "callee": { + "commentStart": 5327, + "end": 0, + "name": "xLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5327, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 5369, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 5378, + "end": 0, + "left": { + "commentStart": 5378, + "end": 0, + "raw": "0.225", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.225, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 5386, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "callee": { + "commentStart": 5363, + "end": 0, + "name": "yLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5363, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 5406, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 5415, + "end": 0, + "left": { + "argument": { + "commentStart": 5416, + "end": 0, + "raw": "0.57", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.57, + "suffix": "None" + } + }, + "commentStart": 5415, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + "operator": "*", + "right": { + "commentStart": 5423, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "callee": { + "commentStart": 5400, + "end": 0, + "name": "xLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5400, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "commentStart": 5451, + "end": 0, + "properties": [ + { + "commentStart": 5462, + "end": 0, + "key": { + "commentStart": 5462, + "end": 0, + "name": "angle", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 5470, + "end": 0, + "raw": "47.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 47.15, + "suffix": "None" + } + } + }, + { + "commentStart": 5486, + "end": 0, + "key": { + "commentStart": 5486, + "end": 0, + "name": "to", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 5491, + "end": 0, + "left": { + "commentStart": 5491, + "end": 0, + "left": { + "commentStart": 5491, + "end": 0, + "raw": "0.93", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.93, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 5498, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 5506, + "computed": false, + "end": 0, + "object": { + "commentStart": 5506, + "end": 0, + "name": "origin", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "property": { + "commentStart": 5513, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + "start": 0, + "type": "MemberExpression", + "type": "MemberExpression" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 5526, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 5437, + "end": 0, + "name": "angledLineToX", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5437, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 5542, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 5551, + "end": 0, + "left": { + "commentStart": 5551, + "end": 0, + "raw": "0.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.15, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 5558, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "callee": { + "commentStart": 5536, + "end": 0, + "name": "yLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5536, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 5578, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 5587, + "end": 0, + "left": { + "argument": { + "commentStart": 5588, + "end": 0, + "raw": "0.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.15, + "suffix": "None" + } + }, + "commentStart": 5587, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + "operator": "*", + "right": { + "commentStart": 5595, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "callee": { + "commentStart": 5572, + "end": 0, + "name": "xLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5572, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "commentStart": 5620, + "end": 0, + "properties": [ + { + "commentStart": 5631, + "end": 0, + "key": { + "commentStart": 5631, + "end": 0, + "name": "angle", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 5639, + "end": 0, + "raw": "47.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 47.15, + "suffix": "None" + } + } + }, + { + "commentStart": 5655, + "end": 0, + "key": { + "commentStart": 5655, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "argument": { + "arguments": [ + { + "commentStart": 5672, + "end": 0, + "name": "seg1", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 5665, + "end": 0, + "name": "segLen", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5665, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "commentStart": 5664, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 5688, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + }, + { + "commentStart": 5691, + "end": 0, + "start": 0, + "type": "TagDeclarator", + "type": "TagDeclarator", + "value": "seg2" + } + ], + "callee": { + "commentStart": 5609, + "end": 0, + "name": "angledLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5609, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 5711, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "arguments": [ + { + "commentStart": 5727, + "end": 0, + "name": "seg3", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 5720, + "end": 0, + "name": "segLen", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5720, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + } + } + ], + "callee": { + "commentStart": 5705, + "end": 0, + "name": "yLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5705, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 5747, + "end": 0, + "name": "endAbsolute", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 5761, + "end": 0, + "left": { + "commentStart": 5761, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + "operator": "+", + "right": { + "commentStart": 5765, + "computed": false, + "end": 0, + "object": { + "commentStart": 5765, + "end": 0, + "name": "origin", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "property": { + "commentStart": 5772, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + "start": 0, + "type": "MemberExpression", + "type": "MemberExpression" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "callee": { + "commentStart": 5741, + "end": 0, + "name": "xLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5741, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 5789, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 5798, + "end": 0, + "left": { + "argument": { + "commentStart": 5799, + "end": 0, + "raw": "0.225", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.225, + "suffix": "None" + } + }, + "commentStart": 5798, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + "operator": "*", + "right": { + "commentStart": 5807, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "callee": { + "commentStart": 5783, + "end": 0, + "name": "yLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5783, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "commentStart": 5846, + "end": 0, + "properties": [ + { + "commentStart": 5857, + "end": 0, + "key": { + "commentStart": 5857, + "end": 0, + "name": "angle", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 5865, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + }, + { + "commentStart": 5877, + "end": 0, + "key": { + "commentStart": 5877, + "end": 0, + "name": "intersectTag", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 5892, + "end": 0, + "name": "seg2", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + }, + { + "commentStart": 5907, + "end": 0, + "key": { + "commentStart": 5907, + "end": 0, + "name": "offset", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 5916, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 5928, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 5821, + "end": 0, + "name": "angledLineThatIntersects", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5821, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [], + "callee": { + "commentStart": 5938, + "end": 0, + "name": "close", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5938, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 5961, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "argument": { + "commentStart": 5971, + "end": 0, + "name": "depth", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "commentStart": 5970, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + } + } + ], + "callee": { + "commentStart": 5953, + "end": 0, + "name": "extrude", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5953, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 5996, + "end": 0, + "name": "color", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 6004, + "end": 0, + "name": "baseColor", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + } + ], + "callee": { + "commentStart": 5985, + "end": 0, + "name": "appearance", + "start": 0, + "type": "Identifier" + }, + "commentStart": 5985, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + } + ], + "commentStart": 4968, + "end": 0, + "start": 0, + "type": "PipeExpression", + "type": "PipeExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "argument": { + "commentStart": 6024, + "end": 0, + "name": "z", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "commentStart": 6017, + "end": 0, + "start": 0, + "type": "ReturnStatement", + "type": "ReturnStatement" + } + ], + "commentStart": 4960, + "end": 0, + "start": 0 + }, + "commentStart": 4937, + "end": 0, + "params": [ + { + "type": "Parameter", + "identifier": { + "commentStart": 4938, + "end": 0, + "name": "origin", + "start": 0, + "type": "Identifier" + } + }, + { + "type": "Parameter", + "identifier": { + "commentStart": 4946, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier" + } + }, + { + "type": "Parameter", + "identifier": { + "commentStart": 4953, + "end": 0, + "name": "depth", + "start": 0, + "type": "Identifier" + } + } + ], + "start": 0, + "type": "FunctionExpression", + "type": "FunctionExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "fn", + "preComments": [ + "", + "", + "// Define a function to draw the ZOO 'Z'" + ], + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 6027, + "declaration": { + "commentStart": 6073, + "end": 0, + "id": { + "commentStart": 6073, + "end": 0, + "name": "o", + "start": 0, + "type": "Identifier" + }, + "init": { + "body": { + "body": [ + { + "commentStart": 6101, + "declaration": { + "commentStart": 6101, + "end": 0, + "id": { + "commentStart": 6101, + "end": 0, + "name": "oSketch001", + "start": 0, + "type": "Identifier" + }, + "init": { + "body": [ + { + "arguments": [ + { + "commentStart": 6128, + "end": 0, + "name": "plane002", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 6114, + "end": 0, + "name": "startSketchOn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 6114, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 6160, + "elements": [ + { + "commentStart": 6171, + "end": 0, + "left": { + "commentStart": 6171, + "end": 0, + "left": { + "commentStart": 6171, + "end": 0, + "raw": ".788", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.788, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 6178, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 6186, + "computed": false, + "end": 0, + "object": { + "commentStart": 6186, + "end": 0, + "name": "origin", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "property": { + "commentStart": 6193, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + "start": 0, + "type": "MemberExpression", + "type": "MemberExpression" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 6206, + "end": 0, + "left": { + "commentStart": 6206, + "end": 0, + "left": { + "commentStart": 6206, + "end": 0, + "raw": ".921", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.921, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 6213, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 6221, + "computed": false, + "end": 0, + "object": { + "commentStart": 6221, + "end": 0, + "name": "origin", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "property": { + "commentStart": 6228, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + "start": 0, + "type": "MemberExpression", + "type": "MemberExpression" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 6241, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 6145, + "end": 0, + "name": "startProfileAt", + "start": 0, + "type": "Identifier" + }, + "commentStart": 6145, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 6255, + "end": 0, + "properties": [ + { + "commentStart": 6266, + "end": 0, + "key": { + "commentStart": 6266, + "end": 0, + "name": "angleStart", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 6279, + "end": 0, + "left": { + "commentStart": 6279, + "end": 0, + "raw": "47.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 47.15, + "suffix": "None" + } + }, + "operator": "+", + "right": { + "commentStart": 6287, + "end": 0, + "raw": "6", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 6.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + }, + { + "commentStart": 6299, + "end": 0, + "key": { + "commentStart": 6299, + "end": 0, + "name": "angleEnd", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 6310, + "end": 0, + "left": { + "commentStart": 6310, + "end": 0, + "left": { + "commentStart": 6310, + "end": 0, + "raw": "47.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 47.15, + "suffix": "None" + } + }, + "operator": "-", + "right": { + "commentStart": 6318, + "end": 0, + "raw": "6", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 6.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 6322, + "end": 0, + "raw": "180", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 180.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + }, + { + "commentStart": 6336, + "end": 0, + "key": { + "commentStart": 6336, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 6345, + "end": 0, + "left": { + "commentStart": 6345, + "end": 0, + "raw": ".525", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.525, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 6352, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 6368, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 6251, + "end": 0, + "name": "arc", + "start": 0, + "type": "Identifier" + }, + "commentStart": 6251, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 6389, + "end": 0, + "properties": [ + { + "commentStart": 6391, + "end": 0, + "key": { + "commentStart": 6391, + "end": 0, + "name": "angle", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 6399, + "end": 0, + "raw": "47.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 47.15, + "suffix": "None" + } + } + }, + { + "commentStart": 6406, + "end": 0, + "key": { + "commentStart": 6406, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 6415, + "end": 0, + "left": { + "commentStart": 6415, + "end": 0, + "raw": ".24", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.24, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 6421, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 6430, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 6378, + "end": 0, + "name": "angledLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 6378, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 6444, + "end": 0, + "properties": [ + { + "commentStart": 6455, + "end": 0, + "key": { + "commentStart": 6455, + "end": 0, + "name": "angleStart", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 6468, + "end": 0, + "left": { + "commentStart": 6468, + "end": 0, + "left": { + "commentStart": 6468, + "end": 0, + "raw": "47.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 47.15, + "suffix": "None" + } + }, + "operator": "-", + "right": { + "commentStart": 6476, + "end": 0, + "raw": "11", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 11.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 6481, + "end": 0, + "raw": "180", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 180.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + }, + { + "commentStart": 6495, + "end": 0, + "key": { + "commentStart": 6495, + "end": 0, + "name": "angleEnd", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 6506, + "end": 0, + "left": { + "commentStart": 6506, + "end": 0, + "raw": "47.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 47.15, + "suffix": "None" + } + }, + "operator": "+", + "right": { + "commentStart": 6514, + "end": 0, + "raw": "11", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 11.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + }, + { + "commentStart": 6527, + "end": 0, + "key": { + "commentStart": 6527, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 6536, + "end": 0, + "left": { + "commentStart": 6536, + "end": 0, + "raw": ".288", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.288, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 6543, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 6559, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 6440, + "end": 0, + "name": "arc", + "start": 0, + "type": "Identifier" + }, + "commentStart": 6440, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [], + "callee": { + "commentStart": 6569, + "end": 0, + "name": "close", + "start": 0, + "type": "Identifier" + }, + "commentStart": 6569, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 6592, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "argument": { + "commentStart": 6602, + "end": 0, + "name": "depth", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "commentStart": 6601, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + } + } + ], + "callee": { + "commentStart": 6584, + "end": 0, + "name": "extrude", + "start": 0, + "type": "Identifier" + }, + "commentStart": 6584, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 6627, + "end": 0, + "name": "color", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 6635, + "end": 0, + "name": "baseColor", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + } + ], + "callee": { + "commentStart": 6616, + "end": 0, + "name": "appearance", + "start": 0, + "type": "Identifier" + }, + "commentStart": 6616, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + } + ], + "commentStart": 6114, + "end": 0, + "start": 0, + "type": "PipeExpression", + "type": "PipeExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 6645, + "declaration": { + "commentStart": 6649, + "end": 0, + "id": { + "commentStart": 6649, + "end": 0, + "name": "o", + "start": 0, + "type": "Identifier" + }, + "init": { + "body": [ + { + "arguments": [ + { + "commentStart": 6667, + "end": 0, + "name": "plane002", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 6653, + "end": 0, + "name": "startSketchOn", + "start": 0, + "type": "Identifier" + }, + "commentStart": 6653, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 6699, + "elements": [ + { + "commentStart": 6710, + "end": 0, + "left": { + "commentStart": 6710, + "end": 0, + "left": { + "commentStart": 6710, + "end": 0, + "raw": ".16", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.16, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 6716, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 6724, + "computed": false, + "end": 0, + "object": { + "commentStart": 6724, + "end": 0, + "name": "origin", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "property": { + "commentStart": 6731, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + "start": 0, + "type": "MemberExpression", + "type": "MemberExpression" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 6744, + "end": 0, + "left": { + "commentStart": 6744, + "end": 0, + "left": { + "commentStart": 6744, + "end": 0, + "raw": ".079", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.079, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 6751, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 6759, + "computed": false, + "end": 0, + "object": { + "commentStart": 6759, + "end": 0, + "name": "origin", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "property": { + "commentStart": 6766, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + "start": 0, + "type": "MemberExpression", + "type": "MemberExpression" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 6779, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 6684, + "end": 0, + "name": "startProfileAt", + "start": 0, + "type": "Identifier" + }, + "commentStart": 6684, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 6793, + "end": 0, + "properties": [ + { + "commentStart": 6804, + "end": 0, + "key": { + "commentStart": 6804, + "end": 0, + "name": "angleStart", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 6817, + "end": 0, + "left": { + "commentStart": 6817, + "end": 0, + "left": { + "commentStart": 6817, + "end": 0, + "raw": "47.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 47.15, + "suffix": "None" + } + }, + "operator": "+", + "right": { + "commentStart": 6825, + "end": 0, + "raw": "6", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 6.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "-", + "right": { + "commentStart": 6829, + "end": 0, + "raw": "180", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 180.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + }, + { + "commentStart": 6843, + "end": 0, + "key": { + "commentStart": 6843, + "end": 0, + "name": "angleEnd", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 6854, + "end": 0, + "left": { + "commentStart": 6854, + "end": 0, + "raw": "47.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 47.15, + "suffix": "None" + } + }, + "operator": "-", + "right": { + "commentStart": 6862, + "end": 0, + "raw": "6", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 6.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + }, + { + "commentStart": 6874, + "end": 0, + "key": { + "commentStart": 6874, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 6883, + "end": 0, + "left": { + "commentStart": 6883, + "end": 0, + "raw": ".525", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.525, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 6890, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 6906, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 6789, + "end": 0, + "name": "arc", + "start": 0, + "type": "Identifier" + }, + "commentStart": 6789, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 6927, + "end": 0, + "properties": [ + { + "commentStart": 6929, + "end": 0, + "key": { + "commentStart": 6929, + "end": 0, + "name": "angle", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 6937, + "end": 0, + "raw": "47.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 47.15, + "suffix": "None" + } + } + }, + { + "commentStart": 6944, + "end": 0, + "key": { + "commentStart": 6944, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 6953, + "end": 0, + "left": { + "argument": { + "commentStart": 6954, + "end": 0, + "raw": ".24", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.24, + "suffix": "None" + } + }, + "commentStart": 6953, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + "operator": "*", + "right": { + "commentStart": 6960, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 6969, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 6916, + "end": 0, + "name": "angledLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 6916, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 6983, + "end": 0, + "properties": [ + { + "commentStart": 6994, + "end": 0, + "key": { + "commentStart": 6994, + "end": 0, + "name": "angleStart", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 7007, + "end": 0, + "left": { + "commentStart": 7007, + "end": 0, + "raw": "47.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 47.15, + "suffix": "None" + } + }, + "operator": "-", + "right": { + "commentStart": 7015, + "end": 0, + "raw": "11", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 11.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + }, + { + "commentStart": 7028, + "end": 0, + "key": { + "commentStart": 7028, + "end": 0, + "name": "angleEnd", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 7039, + "end": 0, + "left": { + "commentStart": 7039, + "end": 0, + "left": { + "commentStart": 7039, + "end": 0, + "raw": "47.15", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 47.15, + "suffix": "None" + } + }, + "operator": "+", + "right": { + "commentStart": 7047, + "end": 0, + "raw": "11", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 11.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "-", + "right": { + "commentStart": 7052, + "end": 0, + "raw": "180", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 180.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + }, + { + "commentStart": 7066, + "end": 0, + "key": { + "commentStart": 7066, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 7075, + "end": 0, + "left": { + "commentStart": 7075, + "end": 0, + "raw": ".288", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.288, + "suffix": "None" + } + }, + "operator": "*", + "right": { + "commentStart": 7082, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 7098, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 6979, + "end": 0, + "name": "arc", + "start": 0, + "type": "Identifier" + }, + "commentStart": 6979, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [], + "callee": { + "commentStart": 7108, + "end": 0, + "name": "close", + "start": 0, + "type": "Identifier" + }, + "commentStart": 7108, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 7131, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "argument": { + "commentStart": 7141, + "end": 0, + "name": "depth", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "commentStart": 7140, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + } + } + ], + "callee": { + "commentStart": 7123, + "end": 0, + "name": "extrude", + "start": 0, + "type": "Identifier" + }, + "commentStart": 7123, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 7166, + "end": 0, + "name": "color", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 7174, + "end": 0, + "name": "baseColor", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + } + ], + "callee": { + "commentStart": 7155, + "end": 0, + "name": "appearance", + "start": 0, + "type": "Identifier" + }, + "commentStart": 7155, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + } + ], + "commentStart": 6653, + "end": 0, + "start": 0, + "type": "PipeExpression", + "type": "PipeExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "argument": { + "commentStart": 7194, + "end": 0, + "name": "o", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "commentStart": 7187, + "end": 0, + "start": 0, + "type": "ReturnStatement", + "type": "ReturnStatement" + } + ], + "commentStart": 6097, + "end": 0, + "nonCodeMeta": { + "nonCodeNodes": { + "0": [ + { + "commentStart": 6645, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLine" + } + } + ] + }, + "startNodes": [] + }, + "start": 0 + }, + "commentStart": 6074, + "end": 0, + "params": [ + { + "type": "Parameter", + "identifier": { + "commentStart": 6075, + "end": 0, + "name": "origin", + "start": 0, + "type": "Identifier" + } + }, + { + "type": "Parameter", + "identifier": { + "commentStart": 6083, + "end": 0, + "name": "scale", + "start": 0, + "type": "Identifier" + } + }, + { + "type": "Parameter", + "identifier": { + "commentStart": 6090, + "end": 0, + "name": "depth", + "start": 0, + "type": "Identifier" + } + } + ], + "start": 0, + "type": "FunctionExpression", + "type": "FunctionExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "fn", + "preComments": [ + "", + "", + "// Define a function to draw the ZOO 'O'" + ], + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 7197, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 7272, + "elements": [ + { + "commentStart": 7273, + "end": 0, + "raw": "2.3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.3, + "suffix": "None" + } + }, + { + "commentStart": 7278, + "end": 0, + "raw": "1.3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.3, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 7284, + "end": 0, + "raw": ".4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.4, + "suffix": "None" + } + }, + { + "commentStart": 7288, + "end": 0, + "raw": "0.03", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.03, + "suffix": "None" + } + } + ], + "callee": { + "commentStart": 7270, + "end": 0, + "name": "z", + "start": 0, + "type": "Identifier" + }, + "commentStart": 7270, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "preComments": [ + "", + "", + "// Place the Z logo on the Z key. Place the O logo on the O and P keys" + ], + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 7294, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 7296, + "elements": [ + { + "commentStart": 7297, + "end": 0, + "raw": "8.71", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 8.71, + "suffix": "None" + } + }, + { + "commentStart": 7303, + "end": 0, + "left": { + "commentStart": 7303, + "end": 0, + "name": "row4", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "+", + "right": { + "commentStart": 7310, + "end": 0, + "raw": ".08", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.08, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 7316, + "end": 0, + "raw": "0.4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.4, + "suffix": "None" + } + }, + { + "commentStart": 7321, + "end": 0, + "raw": "0.03", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.03, + "suffix": "None" + } + } + ], + "callee": { + "commentStart": 7294, + "end": 0, + "name": "o", + "start": 0, + "type": "Identifier" + }, + "commentStart": 7294, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 7327, + "end": 0, + "expression": { + "arguments": [ + { + "commentStart": 7329, + "elements": [ + { + "commentStart": 7330, + "end": 0, + "left": { + "commentStart": 7330, + "end": 0, + "raw": "8.71", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 8.71, + "suffix": "None" + } + }, + "operator": "+", + "right": { + "commentStart": 7337, + "end": 0, + "raw": "0.9", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.9, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 7342, + "end": 0, + "left": { + "commentStart": 7342, + "end": 0, + "name": "row4", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "+", + "right": { + "commentStart": 7349, + "end": 0, + "raw": ".08", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.08, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + }, + { + "commentStart": 7355, + "end": 0, + "raw": "0.4", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.4, + "suffix": "None" + } + }, + { + "commentStart": 7360, + "end": 0, + "raw": "0.03", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.03, + "suffix": "None" + } + } + ], + "callee": { + "commentStart": 7327, + "end": 0, + "name": "o", + "start": 0, + "type": "Identifier" + }, + "commentStart": 7327, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + } + ], + "commentStart": 0, + "end": 0, + "innerAttrs": [ + { + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 77, + "end": 0, + "name": "settings", + "start": 0, + "type": "Identifier" + }, + "preComments": [ + "// Zoo Keyboard", + "// A custom keyboard with Zoo brand lettering", + "", + "", + "// Set Units" + ], + "properties": [ + { + "commentStart": 86, + "end": 0, + "key": { + "commentStart": 86, + "end": 0, + "name": "defaultLengthUnit", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 106, + "end": 0, + "name": "in", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + } + ], + "start": 0, + "type": "Annotation" + } + ], + "nonCodeMeta": { + "nonCodeNodes": {}, + "startNodes": [ + { + "commentStart": 109, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLine" + } + } + ] + }, + "start": 0 + } +} diff --git a/rust/kcl-lib/tests/kcl_samples/keyboard/ops.snap b/rust/kcl-lib/tests/kcl_samples/keyboard/ops.snap new file mode 100644 index 000000000..f741526d4 --- /dev/null +++ b/rust/kcl-lib/tests/kcl_samples/keyboard/ops.snap @@ -0,0 +1,8400 @@ +--- +source: kcl-lib/src/simulation_tests.rs +description: Operations executed keyboard.kcl +--- +[ + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "YZ" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 13.6, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "radius": { + "value": { + "type": "Number", + "value": 0.6, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "tags": { + "value": { + "type": "Array", + "value": [ + { + "type": "Uuid", + "value": "[uuid]" + }, + { + "type": "Uuid", + "value": "[uuid]" + }, + { + "type": "TagIdentifier", + "value": "seg01", + "artifact_id": "[uuid]" + }, + { + "type": "TagIdentifier", + "value": "seg03", + "artifact_id": "[uuid]" + } + ] + }, + "sourceRange": [] + } + }, + "name": "fillet", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + }, + "tag": { + "value": { + "type": "TagIdentifier", + "value": "seg04", + "artifact_id": "[uuid]" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.15, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Array", + "value": [ + { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + } + ] + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionCall", + "name": "sin", + "functionSourceRange": [ + 0, + 0, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 1.2000000000000002, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 0.9, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 3.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 5.3, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 0.9, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 0.9, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 1.2000000000000002, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 0.9, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 1.8, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 0.9, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 10.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 2.3000000000000003, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 1.3000000000000003, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 0.9, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 11.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 1.9, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 0.9, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 12.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 1.3, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 0.9, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 13.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 1.4000000000000001, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 1.2000000000000002, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 0.9, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 12.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "keyFn", + "functionSourceRange": [ + 1887, + 3035, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "axis": { + "value": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "sourceRange": [] + }, + "distance": { + "value": { + "type": "Number", + "value": 1.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "instances": { + "value": { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "patternLinear3d", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "sin", + "functionSourceRange": [ + 0, + 0, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "z", + "functionSourceRange": [ + 4937, + 6027, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.81, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": -0.03, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "o", + "functionSourceRange": [ + 6074, + 7197, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.81, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": -0.03, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.81, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": -0.03, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "o", + "functionSourceRange": [ + 6074, + 7197, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.81, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": -0.03, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.81, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.12186934340514748, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "Array", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": -0.03, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + } +] diff --git a/rust/kcl-lib/tests/kcl_samples/keyboard/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/keyboard/program_memory.snap new file mode 100644 index 000000000..9d1f96549 --- /dev/null +++ b/rust/kcl-lib/tests/kcl_samples/keyboard/program_memory.snap @@ -0,0 +1,2583 @@ +--- +source: kcl-lib/src/simulation_tests.rs +description: Variables in memory after executing keyboard.kcl +--- +{ + "baseColor": { + "type": "String", + "value": "#0f0f0f" + }, + "highlightColor1": { + "type": "String", + "value": "#b0b0b0" + }, + "highlightColor2": { + "type": "String", + "value": "#23af93" + }, + "keyDepth": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "keyFn": { + "type": "Function" + }, + "keyHeight": { + "type": "Number", + "value": 0.8, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "o": { + "type": "Function" + }, + "plane001": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "MixedArray", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.7, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "MixedArray", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "MixedArray", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.1219, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "MixedArray", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "plane002": { + "type": "Object", + "value": { + "plane": { + "type": "Object", + "value": { + "origin": { + "type": "MixedArray", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.81, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "xAxis": { + "type": "MixedArray", + "value": [ + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + }, + "yAxis": { + "type": "MixedArray", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.1219, + "ty": { + "type": "Known", + "type": "Count" + } + } + ] + }, + "zAxis": { + "type": "MixedArray", + "value": [ + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 0.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + { + "type": "Number", + "value": 1.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + } + ] + } + } + } + } + }, + "profile001": { + "type": "Sketch", + "value": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "ccw": true, + "center": [ + 0.75, + 0.75 + ], + "from": [ + 1.15, + 0.75 + ], + "radius": 0.4, + "tag": null, + "to": [ + 1.15, + 0.75 + ], + "type": "Circle", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "face", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "seg04", + "xAxis": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "solid": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 619, + "end": 625, + "start": 619, + "type": "TagDeclarator", + "value": "seg01" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 683, + "end": 689, + "start": 683, + "type": "TagDeclarator", + "value": "seg02" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 732, + "end": 738, + "start": 732, + "type": "TagDeclarator", + "value": "seg03" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 808, + "end": 814, + "start": 808, + "type": "TagDeclarator", + "value": "seg04" + }, + "type": "extrudePlane" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": { + "commentStart": 619, + "end": 625, + "start": 619, + "type": "TagDeclarator", + "value": "seg01" + }, + "to": [ + -0.14, + 0.68 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.14, + 0.68 + ], + "tag": { + "commentStart": 683, + "end": 689, + "start": 683, + "type": "TagDeclarator", + "value": "seg02" + }, + "to": [ + 5.716, + 1.399 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 5.716, + 1.399 + ], + "tag": { + "commentStart": 732, + "end": 738, + "start": 732, + "type": "TagDeclarator", + "value": "seg03" + }, + "to": [ + 5.13, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 5.13, + 0.0 + ], + "tag": { + "commentStart": 808, + "end": 814, + "start": 808, + "type": "TagDeclarator", + "value": "seg04" + }, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": null, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "plane", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "YZ", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "xAxis": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 0.0, + 0.0 + ], + "to": [ + 0.0, + 0.0 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "tags": { + "seg01": { + "type": "TagIdentifier", + "value": "seg01" + }, + "seg02": { + "type": "TagIdentifier", + "value": "seg02" + }, + "seg03": { + "type": "TagIdentifier", + "value": "seg03" + }, + "seg04": { + "type": "TagIdentifier", + "value": "seg04" + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": 13.6, + "startCapId": "[uuid]", + "endCapId": "[uuid]", + "edgeCuts": [ + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + } + ], + "units": { + "type": "Inches" + } + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 1.15, + 0.75 + ], + "to": [ + 1.15, + 0.75 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + } + }, + "profile003": { + "type": "Sketch", + "value": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "ccw": true, + "center": [ + 4.4, + 0.75 + ], + "from": [ + 4.8, + 0.75 + ], + "radius": 0.4, + "tag": null, + "to": [ + 4.8, + 0.75 + ], + "type": "Circle", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "face", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "seg04", + "xAxis": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "solid": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 619, + "end": 625, + "start": 619, + "type": "TagDeclarator", + "value": "seg01" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 683, + "end": 689, + "start": 683, + "type": "TagDeclarator", + "value": "seg02" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 732, + "end": 738, + "start": 732, + "type": "TagDeclarator", + "value": "seg03" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 808, + "end": 814, + "start": 808, + "type": "TagDeclarator", + "value": "seg04" + }, + "type": "extrudePlane" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": { + "commentStart": 619, + "end": 625, + "start": 619, + "type": "TagDeclarator", + "value": "seg01" + }, + "to": [ + -0.14, + 0.68 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.14, + 0.68 + ], + "tag": { + "commentStart": 683, + "end": 689, + "start": 683, + "type": "TagDeclarator", + "value": "seg02" + }, + "to": [ + 5.716, + 1.399 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 5.716, + 1.399 + ], + "tag": { + "commentStart": 732, + "end": 738, + "start": 732, + "type": "TagDeclarator", + "value": "seg03" + }, + "to": [ + 5.13, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 5.13, + 0.0 + ], + "tag": { + "commentStart": 808, + "end": 814, + "start": 808, + "type": "TagDeclarator", + "value": "seg04" + }, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": null, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "plane", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "YZ", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "xAxis": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 0.0, + 0.0 + ], + "to": [ + 0.0, + 0.0 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "tags": { + "seg01": { + "type": "TagIdentifier", + "value": "seg01" + }, + "seg02": { + "type": "TagIdentifier", + "value": "seg02" + }, + "seg03": { + "type": "TagIdentifier", + "value": "seg03" + }, + "seg04": { + "type": "TagIdentifier", + "value": "seg04" + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": 13.6, + "startCapId": "[uuid]", + "endCapId": "[uuid]", + "edgeCuts": [ + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + } + ], + "units": { + "type": "Inches" + } + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 4.8, + 0.75 + ], + "to": [ + 4.8, + 0.75 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + } + }, + "profile004": { + "type": "Sketch", + "value": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "ccw": true, + "center": [ + 0.73, + 12.85 + ], + "from": [ + 1.13, + 12.85 + ], + "radius": 0.4, + "tag": null, + "to": [ + 1.13, + 12.85 + ], + "type": "Circle", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "face", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "seg04", + "xAxis": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "solid": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 619, + "end": 625, + "start": 619, + "type": "TagDeclarator", + "value": "seg01" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 683, + "end": 689, + "start": 683, + "type": "TagDeclarator", + "value": "seg02" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 732, + "end": 738, + "start": 732, + "type": "TagDeclarator", + "value": "seg03" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 808, + "end": 814, + "start": 808, + "type": "TagDeclarator", + "value": "seg04" + }, + "type": "extrudePlane" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": { + "commentStart": 619, + "end": 625, + "start": 619, + "type": "TagDeclarator", + "value": "seg01" + }, + "to": [ + -0.14, + 0.68 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.14, + 0.68 + ], + "tag": { + "commentStart": 683, + "end": 689, + "start": 683, + "type": "TagDeclarator", + "value": "seg02" + }, + "to": [ + 5.716, + 1.399 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 5.716, + 1.399 + ], + "tag": { + "commentStart": 732, + "end": 738, + "start": 732, + "type": "TagDeclarator", + "value": "seg03" + }, + "to": [ + 5.13, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 5.13, + 0.0 + ], + "tag": { + "commentStart": 808, + "end": 814, + "start": 808, + "type": "TagDeclarator", + "value": "seg04" + }, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": null, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "plane", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "YZ", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "xAxis": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 0.0, + 0.0 + ], + "to": [ + 0.0, + 0.0 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "tags": { + "seg01": { + "type": "TagIdentifier", + "value": "seg01" + }, + "seg02": { + "type": "TagIdentifier", + "value": "seg02" + }, + "seg03": { + "type": "TagIdentifier", + "value": "seg03" + }, + "seg04": { + "type": "TagIdentifier", + "value": "seg04" + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": 13.6, + "startCapId": "[uuid]", + "endCapId": "[uuid]", + "edgeCuts": [ + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + } + ], + "units": { + "type": "Inches" + } + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 1.13, + 12.85 + ], + "to": [ + 1.13, + 12.85 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + } + }, + "profile005": { + "type": "Sketch", + "value": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "ccw": true, + "center": [ + 4.4, + 12.85 + ], + "from": [ + 4.8, + 12.85 + ], + "radius": 0.4, + "tag": null, + "to": [ + 4.8, + 12.85 + ], + "type": "Circle", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "face", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "seg04", + "xAxis": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "solid": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 619, + "end": 625, + "start": 619, + "type": "TagDeclarator", + "value": "seg01" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 683, + "end": 689, + "start": 683, + "type": "TagDeclarator", + "value": "seg02" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 732, + "end": 738, + "start": 732, + "type": "TagDeclarator", + "value": "seg03" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 808, + "end": 814, + "start": 808, + "type": "TagDeclarator", + "value": "seg04" + }, + "type": "extrudePlane" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": { + "commentStart": 619, + "end": 625, + "start": 619, + "type": "TagDeclarator", + "value": "seg01" + }, + "to": [ + -0.14, + 0.68 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.14, + 0.68 + ], + "tag": { + "commentStart": 683, + "end": 689, + "start": 683, + "type": "TagDeclarator", + "value": "seg02" + }, + "to": [ + 5.716, + 1.399 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 5.716, + 1.399 + ], + "tag": { + "commentStart": 732, + "end": 738, + "start": 732, + "type": "TagDeclarator", + "value": "seg03" + }, + "to": [ + 5.13, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 5.13, + 0.0 + ], + "tag": { + "commentStart": 808, + "end": 814, + "start": 808, + "type": "TagDeclarator", + "value": "seg04" + }, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": null, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "plane", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "YZ", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "xAxis": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 0.0, + 0.0 + ], + "to": [ + 0.0, + 0.0 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "tags": { + "seg01": { + "type": "TagIdentifier", + "value": "seg01" + }, + "seg02": { + "type": "TagIdentifier", + "value": "seg02" + }, + "seg03": { + "type": "TagIdentifier", + "value": "seg03" + }, + "seg04": { + "type": "TagIdentifier", + "value": "seg04" + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": 13.6, + "startCapId": "[uuid]", + "endCapId": "[uuid]", + "edgeCuts": [ + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + } + ], + "units": { + "type": "Inches" + } + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 4.8, + 12.85 + ], + "to": [ + 4.8, + 12.85 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + } + }, + "row1": { + "type": "Number", + "value": 0.3, + "ty": { + "type": "Unknown" + } + }, + "row2": { + "type": "Number", + "value": 1.2, + "ty": { + "type": "Unknown" + } + }, + "row3": { + "type": "Number", + "value": 2.1, + "ty": { + "type": "Unknown" + } + }, + "row4": { + "type": "Number", + "value": 3.0, + "ty": { + "type": "Unknown" + } + }, + "row5": { + "type": "Number", + "value": 3.9, + "ty": { + "type": "Unknown" + } + }, + "row6": { + "type": "Number", + "value": 4.8, + "ty": { + "type": "Unknown" + } + }, + "seg01": { + "type": "TagIdentifier", + "type": "TagIdentifier", + "value": "seg01" + }, + "seg02": { + "type": "TagIdentifier", + "type": "TagIdentifier", + "value": "seg02" + }, + "seg03": { + "type": "TagIdentifier", + "type": "TagIdentifier", + "value": "seg03" + }, + "seg04": { + "type": "TagIdentifier", + "type": "TagIdentifier", + "value": "seg04" + }, + "sketch001": { + "type": "Solid", + "value": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 619, + "end": 625, + "start": 619, + "type": "TagDeclarator", + "value": "seg01" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 683, + "end": 689, + "start": 683, + "type": "TagDeclarator", + "value": "seg02" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 732, + "end": 738, + "start": 732, + "type": "TagDeclarator", + "value": "seg03" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 808, + "end": 814, + "start": 808, + "type": "TagDeclarator", + "value": "seg04" + }, + "type": "extrudePlane" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": { + "commentStart": 619, + "end": 625, + "start": 619, + "type": "TagDeclarator", + "value": "seg01" + }, + "to": [ + -0.14, + 0.68 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.14, + 0.68 + ], + "tag": { + "commentStart": 683, + "end": 689, + "start": 683, + "type": "TagDeclarator", + "value": "seg02" + }, + "to": [ + 5.716, + 1.399 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 5.716, + 1.399 + ], + "tag": { + "commentStart": 732, + "end": 738, + "start": 732, + "type": "TagDeclarator", + "value": "seg03" + }, + "to": [ + 5.13, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 5.13, + 0.0 + ], + "tag": { + "commentStart": 808, + "end": 814, + "start": 808, + "type": "TagDeclarator", + "value": "seg04" + }, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": null, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "plane", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "YZ", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "xAxis": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 0.0, + 0.0 + ], + "to": [ + 0.0, + 0.0 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "tags": { + "seg01": { + "type": "TagIdentifier", + "value": "seg01" + }, + "seg02": { + "type": "TagIdentifier", + "value": "seg02" + }, + "seg03": { + "type": "TagIdentifier", + "value": "seg03" + }, + "seg04": { + "type": "TagIdentifier", + "value": "seg04" + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": 13.6, + "startCapId": "[uuid]", + "endCapId": "[uuid]", + "edgeCuts": [ + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + } + ], + "units": { + "type": "Inches" + } + } + }, + "sketch003": { + "type": "Face", + "value": { + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "seg04", + "xAxis": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "solid": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 619, + "end": 625, + "start": 619, + "type": "TagDeclarator", + "value": "seg01" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 683, + "end": 689, + "start": 683, + "type": "TagDeclarator", + "value": "seg02" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 732, + "end": 738, + "start": 732, + "type": "TagDeclarator", + "value": "seg03" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 808, + "end": 814, + "start": 808, + "type": "TagDeclarator", + "value": "seg04" + }, + "type": "extrudePlane" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": { + "commentStart": 619, + "end": 625, + "start": 619, + "type": "TagDeclarator", + "value": "seg01" + }, + "to": [ + -0.14, + 0.68 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.14, + 0.68 + ], + "tag": { + "commentStart": 683, + "end": 689, + "start": 683, + "type": "TagDeclarator", + "value": "seg02" + }, + "to": [ + 5.716, + 1.399 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 5.716, + 1.399 + ], + "tag": { + "commentStart": 732, + "end": 738, + "start": 732, + "type": "TagDeclarator", + "value": "seg03" + }, + "to": [ + 5.13, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 5.13, + 0.0 + ], + "tag": { + "commentStart": 808, + "end": 814, + "start": 808, + "type": "TagDeclarator", + "value": "seg04" + }, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": null, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "plane", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "YZ", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "xAxis": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 0.0, + 0.0 + ], + "to": [ + 0.0, + 0.0 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "tags": { + "seg01": { + "type": "TagIdentifier", + "value": "seg01" + }, + "seg02": { + "type": "TagIdentifier", + "value": "seg02" + }, + "seg03": { + "type": "TagIdentifier", + "value": "seg03" + }, + "seg04": { + "type": "TagIdentifier", + "value": "seg04" + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": 13.6, + "startCapId": "[uuid]", + "endCapId": "[uuid]", + "edgeCuts": [ + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + }, + { + "type": "fillet", + "id": "[uuid]", + "radius": 0.6, + "edgeId": "[uuid]", + "tag": null + } + ], + "units": { + "type": "Inches" + } + }, + "units": { + "type": "Inches" + } + } + }, + "spacing": { + "type": "Number", + "value": 0.1, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "z": { + "type": "Function" + } +} diff --git a/rust/kcl-lib/tests/kcl_samples/keyboard/rendered_model.png b/rust/kcl-lib/tests/kcl_samples/keyboard/rendered_model.png new file mode 100644 index 0000000000000000000000000000000000000000..b9e303a431cfe44a26313a5431ae32c08adbed36 GIT binary patch literal 83859 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 literal 0 HcmV?d00001 From 83ca08b26c6b6addadcba91441068e21cae44586 Mon Sep 17 00:00:00 2001 From: Max Ammann Date: Thu, 20 Mar 2025 14:10:50 +0100 Subject: [PATCH 09/20] Update dependabot config (#5907) --- .github/dependabot.yml | 33 --------------------------------- 1 file changed, 33 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index be647db39..bcc55d291 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -230,39 +230,6 @@ updates: update-types: - minor - patch -- package-ecosystem: pip - directory: /public/kcl-samples - schedule: - interval: weekly - day: monday - time: '03:00' - timezone: America/Los_Angeles - open-pull-requests-limit: 5 - reviewers: - - adamchalmers - - franknoirot - - irev-dev - - jessfraz - groups: - security: - applies-to: security-updates - update-types: - - major - - minor - - patch - patch: - applies-to: version-updates - update-types: - - patch - major: - applies-to: version-updates - update-types: - - major - minor: - applies-to: version-updates - update-types: - - minor - - patch - package-ecosystem: pip directory: /rust/kcl-python-bindings schedule: From c8ec35cd4a32fb72a3d7b5c5456cbea7e093a646 Mon Sep 17 00:00:00 2001 From: Josh Gomez <114548659+jgomez720@users.noreply.github.com> Date: Thu, 20 Mar 2025 09:22:17 -0700 Subject: [PATCH 10/20] Clean KCL Samples and Update Walkie Talkie (#5904) * Clean KCL Samples and Update Walkie Talkie * revolve keyword args * Update kcl-samples simulation test output --------- Co-authored-by: github-actions[bot] --- public/kcl-samples/lego/main.kcl | 4 +- public/kcl-samples/pipe-with-bend/main.kcl | 15 +- public/kcl-samples/poopy-shoe/main.kcl | 5 +- public/kcl-samples/screenshots/lego.png | Bin 115254 -> 88306 bytes .../screenshots/socket-head-cap-screw.png | Bin 62428 -> 65726 bytes .../kcl-samples/screenshots/walkie-talkie.png | Bin 68295 -> 59737 bytes .../socket-head-cap-screw/main.kcl | 86 +- public/kcl-samples/walkie-talkie/antenna.kcl | 73 +- public/kcl-samples/walkie-talkie/body.kcl | 150 +- public/kcl-samples/walkie-talkie/button.kcl | 23 +- public/kcl-samples/walkie-talkie/case.kcl | 123 +- public/kcl-samples/walkie-talkie/globals.kcl | 1 + public/kcl-samples/walkie-talkie/knob.kcl | 37 +- public/kcl-samples/walkie-talkie/main.kcl | 73 +- .../kcl-samples/walkie-talkie/talk-button.kcl | 67 +- public/kcl-samples/walkie-talkie/zoo-logo.kcl | 4 +- .../kcl_samples/lego/artifact_commands.snap | 7266 +---- .../lego/artifact_graph_flowchart.snap.md | 177 +- rust/kcl-lib/tests/kcl_samples/lego/ast.snap | 656 +- rust/kcl-lib/tests/kcl_samples/lego/ops.snap | 450 - .../kcl_samples/lego/program_memory.snap | 27222 +--------------- .../tests/kcl_samples/lego/rendered_model.png | Bin 115254 -> 88306 bytes .../artifact_graph_flowchart.snap.md | 12 +- .../tests/kcl_samples/pipe-with-bend/ast.snap | 152 +- .../artifact_graph_flowchart.snap.md | 32 +- .../tests/kcl_samples/poopy-shoe/ast.snap | 296 +- .../poopy-shoe/program_memory.snap | 18 +- .../artifact_commands.snap | 118 +- .../artifact_graph_flowchart.snap.md | 181 +- .../socket-head-cap-screw/ast.snap | 2520 +- .../socket-head-cap-screw/ops.snap | 105 +- .../socket-head-cap-screw/program_memory.snap | 95 +- .../socket-head-cap-screw/rendered_model.png | Bin 62428 -> 65726 bytes .../walkie-talkie/artifact_commands.snap | 4135 +-- .../artifact_graph_flowchart.snap.md | 1327 +- .../tests/kcl_samples/walkie-talkie/ast.snap | 2338 +- .../tests/kcl_samples/walkie-talkie/ops.snap | 2215 +- .../walkie-talkie/program_memory.snap | 289 +- .../walkie-talkie/rendered_model.png | Bin 68295 -> 59737 bytes 39 files changed, 8508 insertions(+), 41757 deletions(-) diff --git a/public/kcl-samples/lego/main.kcl b/public/kcl-samples/lego/main.kcl index 870e3fbe7..542aac8fb 100644 --- a/public/kcl-samples/lego/main.kcl +++ b/public/kcl-samples/lego/main.kcl @@ -5,8 +5,8 @@ @settings(defaultLengthUnit = in) // Define constants -lbumps = 10 // number of bumps long -wbumps = 5 // number of bumps wide +lbumps = 4 // number of bumps long +wbumps = 2 // number of bumps wide pitch = 8.0 clearance = 0.1 bumpDiam = 4.8 diff --git a/public/kcl-samples/pipe-with-bend/main.kcl b/public/kcl-samples/pipe-with-bend/main.kcl index cf5a95448..d863a4bd9 100644 --- a/public/kcl-samples/pipe-with-bend/main.kcl +++ b/public/kcl-samples/pipe-with-bend/main.kcl @@ -1,6 +1,7 @@ // Pipe with bend // A tubular section or hollow cylinder, usually but not necessarily of circular cross-section, used mainly to convey substances that can flow. + // Set units @settings(defaultLengthUnit = in) @@ -14,22 +15,14 @@ bendAngle = 90 sketch000 = startSketchOn("XZ") // create a profile for the outer diameter -outerProfile = circle( - sketch000, - center = [bendRadius, 0], - radius = outerDiameter / 2 -) +outerProfile = circle(sketch000, center = [bendRadius, 0], radius = outerDiameter / 2) // create a profile for the inner diameter -innerProfile = circle( - sketch000, - center = [bendRadius, 0], - radius = innerDiameter / 2 -) +innerProfile = circle(sketch000, center = [bendRadius, 0], radius = innerDiameter / 2) // create the profile of the pipe pipeProfile = outerProfile |> hole(innerProfile, %) // revolve the pipe profile at the desired angle -pipe = revolve(pipeProfile, axis = "Y", angle = bendAngle) +pipe = revolve(pipeProfile, axis = 'Y', angle = bendAngle) diff --git a/public/kcl-samples/poopy-shoe/main.kcl b/public/kcl-samples/poopy-shoe/main.kcl index 4808ebf83..edba1826a 100644 --- a/public/kcl-samples/poopy-shoe/main.kcl +++ b/public/kcl-samples/poopy-shoe/main.kcl @@ -1,9 +1,11 @@ // Poopy Shoe // poop shute for bambu labs printer - optimized for printing. + // Set units @settings(defaultLengthUnit = in) + wallThickness = 0.125 wallsWidth = 3 height = 5.125 @@ -30,8 +32,7 @@ sketch001 = startSketchOn("-YZ") |> yLine(endAbsolute = segEndY(seg01)) |> angledLineToY({ angle = 180 - 60, to = 0 }, %) |> close() -part001 = revolve( - sketch001, +part001 = revolve(sketch001, angle = 90, axis = { custom = { diff --git a/public/kcl-samples/screenshots/lego.png b/public/kcl-samples/screenshots/lego.png index f98afb27731816cf0aa77ecf0bc9563c8c5a319e..2ec808774b0b01785b6923af974b7a11959665f7 100644 GIT binary patch literal 88306 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%0Ag^$8B%|bdm7IZ~9@< zT8zQ2U>Bd6m(D#W5xsVt5)C3!#JjjOJkc_93nMbfU_{E z;Uwwrt@SPeK&GvF3mf%TaKs8}UJkSbH8pQzy!Bd5bn{JMPQg zQbUMXwJXI9HGiNle#p}91tcnc6xwPF#qsC5mV6>+P{D zrSA=KAQ9!+65TX}m>bIznz9R;V7mQ%x3m1dgJGC(UH=uyo|EOF5Q$|jTlhpA^)8@c z?X-iaxfRjQb^~iY&G=@}e4*BiKvF60j5GyjaWmAP8L<6-4s8B)%qED(y;pxSJmwlP zFFw!#+kAPDBhUV}w8F_p(po`YL-0ZLH$i(mSVzL@xYxr`jxsf?q?EB?-}_G?U`2bn zaM_#`Iq#+o5%}KMW6%c&83JRR;hJNc)br=Nvx;{OchnB|uV(s_eaa`H|4xYb7fGGa z2!{?H=C|Cu)vC7%6(m{s3mXka)g|<8(F2ZOzg;df+P>rLc51&|AR^6O3=<6xw`FN7 zm+EOAVA%UD(%vT7?kRs@*sxLpwa1H!{7K@#)>&llzrW10uRVH8z<&T#60p=TY`nkZ zCkvXg188H6z}JX{4P)vHkBn2&BQQH#TjbGp6AY~3%KbD!XBQ+9=5JHkZNKX-GYT1N z;iUTUw5$e?ee}wY6hSU<{mn^qU(1imTg{YG?s1_yaP>LsMelB5)<5ig)1 zuE_X`SkhX=uS=r5pEqL{hS2J5My2aJSCw2iU$UH?_?Zh7tQqhTn3Q@vwOXq2x`1;V z#ZnM*ukThWD$eJvpmq9myPFsR@HQ=SzY25oQ(cwx> zIFtnBRZ>xE=={7Ye);m{3NANucj&v2Aj4@kKaFD-Ho`74Znu1p*)*+R?MX$d3@_(r(o3mYSB zERuPUuT#)*vW!v<?JaVJq>KASQ&$9IH6#rzATFbSGdl+Y z1If%6Y{Wv#9%Ye-nMPWl#)2^|k}}}wfZBvIYd82_k4i_Iq4RbRJyl)3g1HG+N=cbm z=kVBe>T^Jcb{ea3@$;a3xJc+;Cv~o&AnD?!i-01O%D_*SVJf%YDsR9z_Y&37SQ^PE@o^osG4*Ig==)93A zB`J_fHwOPq!%dkzdlf6@g+e5Dl>=WBQ*wYGfVt3s0Ds9PLPO4NxX6ef$DPh8D7u0% zPmZt3Nu^lq9)FGMLVol z1x0~S{S3Ap0O66c^oTA?+KK_P3HT3VFL;o0$0N(Dq&qyNpV{gDgV4l(P)32Dh!W?3 zE)H)Sd5XjF#0D%E-86^)$#)Y=V^F2x!62AGiPimVvrb2fMbi>9$MFi5c_St1ElR}U z8#}HqTxV3R4Gb%@v4RihLh+2<-B=gS%RJCCa!Xd0l$-Lh1Hwz-)xkRh_Yib#vR&^& zY8{!&KS=Hot0l-6lc3O@*kd&E^du&Ee(+WQ{?mB~FFo zC(DMmC4qn6__r6)Bwb-|Z((bbdc#wV-EXDus;D;WsdK# zibG3c`+=ZU99zDO9}3E55Va z>D6NaC1=3GIQH<+dRUW*!@jd1GLvLlgx|_4nLALDmN=@KCUEeorC|MOOTqe>IH|pA z=SCu6A{+=f>$_NAhbpizY2eE?0VgH+1v!H6`O%k2lA%TEIm~m%MCcWY=eY!6W$-Q< z$_u@L%`BUw$LT)saB?xMB#IKpPL*UkqQL_+7PQU!O^;7T>lsB1?}BOm z)$~uLIrE&z`Z>-@UO!;7WT(4WT&tU`uGRGI=ZDZI%8{EkLdZ#Ek{R*#qobHqU>ap6 zwwgQ+`oWNBg@$3P6I??aCJ^&)U{-l^X)%`+-fg%t4;EU%kU1>}q$J{c%&{1P zoB>G!xpPB4gA1xQVn8%JVIds-AQ4`2o#CDLgt0ze;rKWT)hwXm)8dk6(+?U94VsNh z$zF&#vFExB_o!gfEEffT?eNZ3_=&BjXEfIp`fuRw;wa!yvcH1*Y|PhH@cj8nY48up z)geAPR+Toby-XcQ>+unw<2Z4MS(p>QR-f59qNqPj05$+ zp;?-}WpNR@L!%5`j3t%mVOIN)@CwC6l?lom6)6k~D-+s1sopp4vRDKxncF!^ zJSpejX&0!Oa*-N32uztewJVDjsH*5~qfd$r3~=yEm63;q&rmv)gI+vy1QJwnEdadDn}ytZ)SnoILdnE9SK!-+m)6BGW2e;rSO7 zz$1X{f%44*9lH->%K$A171YU5=%T%mmjdXxt&W0m>)X^4hFek$$$E-m22@b%Sfyj` zKh%%lvmYxGhkl4Z=-Dz&^j$#xP!dAyj#W|R_}U0 z$2(0zyb$&JdJy^qD2t{E_1A6>lDZxrGGHHSRy{dRNPml=xl91+RAn9Kh@HNEFsf|P zR{>owc%cytHh68|-GknNYgMrJ+I25lwVZa@1~v;l7k$(5%}jk3T`JThNV9%1jvpja zyNPNA9udv*nxQD`qmc52hLn_z=8)u$OlizZnt{_S-?9pz^8zlX=xys-N^a(8V+v2^ zPaXu@hr6#77SzFDz0|7+4IId5iGl@@Qey8QnF=x{+<2+$h9H?$aUxh+KOA@qXsGj$ zE>KV#*w;dor~nF>j5o$DP&mLubm4#be_sz+)yVi{_hA^+HCJ2j%WuZda*$op+R92W zEs9Plch`SdP^nj&Kuoa{QkJ7x7To8BRg`(M=JX-6G6wMi??9mrB?21#?+_M|N}F*# z6uX8&tVreI)mH4Gf&+!kB4|oj5~MAj6q+*h)ZlhRqOx8j_P5XFOiG3SV`2V0VW!9J z>m*JMN#ta;)&gdlQ^CUW9wpzSQD37eGnv7NUbGr%IV|+-fF^IUh3=|0iF7K4cN33# z>{Klv90&m<9KHz3O9AJo2d2$FzqznRdtcc&${*3Bo^9HGwwQ%B#YAb)WF*7TScPju zF^7TWwQ~`=0`bP3_jJ>){lKE#nohC4thkCHakyrTEWZ)*Z&o3&i#(2Bypg7T74Wnj_1zsIu@ob~v*wT}A7%gmp^zg<+9E!MF zp)0fr!h!G+pIIY@E4n0y%bH?iw0fNs23v}5 zr{K7k8c(Army%{!4yixa>#YneQ)n|W z5wL|Q{@?_+d<2EpGP2sjhT3ot*}LXSi>=?AoNms68ZXy2-RR+Xp??3Ekv(|xpZElv zD$Ol#)l+YzQezwnWkxQFvu+~x)3{GBN$uR)wgX}WNP}R*JBWkkad$leGs-n^Hr~_Z z9gN3dYss=f--B`T4n{&v(ek)0@3wbzH9ZTb=AQN{B{E7k-b~13-#Zj{%HkfPcDWcj zPj09(FAHPz%gdplBH~ey3yxyQ9>#9H8Wq7wi_!hW}A z{~+@)gIcA%I5Tvu;qq$WJ@$&+Q@Y@nt*pDoV*Qrt){nJn0QLdP#g~>920pY{QSj zda)IH8(XnzD7b+Q6Z2SG1x?Vz75<=R`LV(12?TXqz@m1GrQu6hOji9BRbkxn04?--Nqz0T6U zjHQOT!EpqTTce8TP>L23A*YeRKu|DJ z^?t*)=Fzo!X?pI<{mKL zJnmN-g}EtOK_rhwY$I&awQ2^bgM_hkv2b|8-orv1>sb0ja>D&moCFl4qksrneL~2;HMqJ}LzwZFmfqv^ zy8=jRHBLVtA))|qTrx9{r${d5N#os&g>K?Oz|ctZA90jw?ifHUBVe_(Z%ZQbQ9C$t zmD~{{a^8~7S>`0rDTVWkM*g~p)!tZGh!i7d_`W!~C6?9CZamc&)oZRXPY5P2Jl_X2 zU(57>-nLAqBWL#^7~ZMXbpnw|79%aCTUDBQhDuwAYfFEl$wWK7vb&u%cSHLy9PGZ{ zY)13TAcG3E0GLpuQ5k7N`~ zU{w(LMV2$ezzRRC3dLNz(HPYW+NlqdgGa(4wWXkMaYWrSk*o9bA16F(wE&^tgCrvW zja+#syeqT1B64w?#puAW-ncy%aoCDHQdFwhRf9F@Xn8`M2w^ciaQaa^tHj5`sN^`3 z`C8>bF2Z6XR(2sh%tV5vgut>6mY1FwlZ&Yk4wOCwK}uOWaQs<@BZi^NL)Z)}ygB6lQJ%+JrZES=^M5^zeoy9HnfELvvzMUj2|Q+D8so z%@CA`NwWg+18ECUJq($YfLWj{x)w{i#FM(y1@tjjHLq(ZTT1edMVWls^%R1ig{!Qb)4Umm-yuh|h3e_SLtsj!Acx~#GY5S7dg&OiG?FubAqB&y2T z>Fc>a+?b6F+sN96PiPN)ORBYDMC3^?LxXdCzyaJWh_g?#+31CUGK5UNw=thkc@5hx zdY}@0nG4cci$?W>;}w)w!9V7$)>5vl^7^D0vqW{%lcd7??l;M(nqN{mf5+U}vuoW< zTge#)=v?zP)Mweq{ld3PQ)81-*&_?E#b-jKVH^*-RANx8f1Q-0yR z$5HOXh0@PG-QRx-tIjQmWj}LX zYRgQ5#Of@B6Rh_4OOo>JgH6v72)I$#CszuV4cyTel20Nze@S0(YM`cdlzwB3h;(q4 z(259NO^Xh3#|a}`5nf|Ps)f|nX~2dN&uYGwcF3T~18-SfuI`5At@>m{{H142Qrn*` zJe4=J9teuK^?+NXf0tAxBP|-o8_}dMZ_z7Nb_VxGg=VIh2DBNs(B!SiZahyfTk!1(KD945*R4K6u=XpKSV#7pII@O zRXnS!c-ax0v9%NXN7(g?eauyQo<@FBA{%hfH)2w{JxJPfN#I(S{oT6nCzP{sk@SQy z?@IP*BQ={=!775-Zwyy}X!z-Zk3wkKuYos_KGkLOv#+oJX~JRw^#HlBQs!v z_LT?L4->xFI-K~&d4n#})Ul+`@ik*7UVF#`hJ7XVN9v}9B8D*_n*nE5z(8aHWa*F` zF)&ptyo#>FXwoe02X>r0Si`FoN44kqyPtHJXg!$YYX$W&N?AlB7ltj68)yymn8EA!f)G;xP6(; zLynh}RG=qB$5I+aIws^%f?0!WS^+ai!;kJv6;p`0f<`Bkn%6Tgy`Bw}ZWywd9yoR* zq*ZtyWNSglkkA-9=NZG+1j2*h6*3307UWh*m@Do$8$u%JVNMV^1AIo~CN25STzid% zJ)dt~d-@0Fm9I79+jML3JosjjJfMP5W<%DfXCiXg!sF!P@M;32#^l;S!ZuV3%}5%2 zW(gjQgB~a@+mC9g4&Y<@iNwxXOp_CLA^D>)BK~ga8c*INFD`XEb`4RlL-$$ozDQ~i zGKt1%CMHcHrttv@H%yq(8rwLrDP)Qc+yf!=g$wdhFsqvWktr;PV;c~S87d(n+JETS zmlG)1{&CrPJ?Zgm1&+ce@1zPHyHEV39U^%~EWFF|X+6}5Z&`~@EQ9r6O%51+N z8%(%Ps1GD~P-R%JLSJ0^GRS$r7AU9FJA)72r)^rGP zWgjS7DSj>VwaE z;0Sb8Meb4f2}oJLEZxHqaDXI*#blxwY1l-3nUn@m;POI3nC2%5%P27Pr&lcJ7MUb4 ze8~T?xg*#xfxjABtKcTujD`nWTfv(xG`-gh4kMu*GBmrRu|-&qf+%Fq#av&QnOsh~ z1uWGmA-A%pMg;ej-3gitv)H;1^(hf5(-P@2{m$K zP*lwn8#m-eAn_!AOOF)Fm~<|wFC2k4~q$XV1t?^OJpn$7l0=Y(h@1=XDRR|P|CUzNpNJgK7aq->io^t zI=zqtPpe4}I0DY;d7QiCkNZe{F#o*XY9{2xCo{)`T_MLcO=AIx@u8b^;R}oHa->Ij z2jW1*(XwP8*tT*V6pt3UYnvoGelVXed0_ylwV4E|NG`=)C0qo#v&3*$=<85v2y~+{ z5Q5@u>;x6i_-R1d<#Z-!nR%;7&;^|i3+>lyQ88h6A?+WvBzgY1m+64&5+bqVo#Am^ z_)7(SlkCYFV`gh*db~nJj&y#y5z?m)q9Ls_NYoZTF9SHtDrw^ZZ-zP4>9E#v4;7CK zKN2k&?Zy4LDxDWdX+~CKptE%~-1j8hRZ;sH2|5@N4-8)IM20sNh?jM<9;^dr0zk?k zEd-!GV?gy}Cs*ThH&A$9bD1$Bo$7g#1bVc2jzsV30yKWaQE%VP zJ2GMO9+dO|!8n;9nuy#H2ZQ& zA%ay5LgZ2mS`%J^!kZJxj%1)Nh^r*=Xgg^fXipIfmJ%%_7%SHb361`{ z?Tm{J~J_#M~FA}N&Y=6@NgtaUnx*OSK_rW_YrrHaei|mE>@Z)$xRKR z_4WtiMPrH}-s?Vj^5g{(CbLnJ{rZ;8z-)(E=`^BQs1S1B6xWTuV?>G~ z9+fG3q+1g%SE)khjH_{(L-mFwBi^I7+&(Cdw>Pl|S`B$=FQ%y=KxLe{0h=OM6ob7P z%Yt2L`^PdTg8ocH>HHe1%5=CKXr7tfE_v=xpR+(u`Vz5KjC2?R1Sg0RZm^mn_@M0+ z{EgeplE^15?(ifnFC~2-{l)!6BM$Wc33vnS^qP*Sccvc-ucDSn1U!stoK0Y?di#Zy z*;9BCTro;gG}M%HIP`Mh?(pWH!dc;F4+gaGO}>2qtz<*}T-@P4k)E)0xD(BQmquaM zL>hPz>)1e3!hr=NhtJ5Nr;Y_1fk$a2-R}n8A_sIfVu6&*q6%wI0}R0n*{k>O9pH;deJbR^sA89?cyp9eC zyOanE>c*Bza@|&&eo13KWmdq~Va~Rf)xGoTDk>^mR94&<6$Dn4Mp&z@eGINuc0-!u zf$lpAWz{kX3BZ&6r+xe$Uq-Mcx4>03_-cQ811YiFQsW;`#N7S1^sVRHFyO1!MzWYLh%~0drB8cB z!C9I|os!Nj264dNRX2+oDO50ESLCZVb-a*MAEC%aiEu#0+}YQdD19E{$gyRt+Lw|k z5=dNJ8;uo0)2B5JlBrwlr$t7P1PVt7B|kyoXhRu8!oEae%d)>h(u05lytdsg@j%zW zu$Gu!Sk>qjD&=sp52O7jG$~z?>g64`?53ypLI}}XlCxs==6x%rB_sn*$**ebV6>rt zjn((v6Cmb8g16V1!xzI5LO>y)1Y8juu1_H$m>o76ZwPgTVF!v;bb5;}kO*JlNUK z;1I82!^LiTbRkw3{pw(W#RIABp`2kocQDZ}7g{J-|j zKfKE7%J(Nkpn^yhEh++4P*ke1b*fguXe-6vRIO!3E2yn9EhAYn56{MIC=o zp`&A+!BMJI5e0)9f1qG=sDcFvf({3=}chKy-L;?p)S6_D{YMvp75QA?0YXBZ;h zt81o5ML=L$)4yssiiXa(_9*=FVvB1b6 zdPPoIS7RLX(iFyQfGb&oyoRr4yrfD#s`^l^LC{LjrY;>PZVN6|m)K&rC3acdGzv&sz4m?n!vf_8mtB%PIs3&V0H#p6Z*L4XeL%chl-jnIAE2od& zw5Vx|dwpqz-T6dR$xT({Ab;_TfiRq#CqPE13c84~v1YN;LS|3}87Jks`t_h zS;Br&hxBWgi3JC(^$J{>+0q~!N)0LhdeWYnrJ=+dcmg?}F&ee(bY%tG4kDk^LZA0nw8}U7EZW0<(BXr`qD+8Z zdc6k_8EW(44EtA{XEFHUQ-n5BJAwpPv69+fjcQE7Ee9oRe*7VwQbr@zQ290ru)9XU zM9R2!a%{gaB9s2Mp_Y7?R*+6^cack-<4nOnr&RAo=F?eI!z&Lh?50a6d?}cv^7g|p z#|_I$HZxPW8>z(d@Cp1*kNU1<)|ysN=xKsUxEyyN^?f-C8!s3YyPd2lv@ct>l4wLsX>%cV;N9C`qUauYbY>n_*K>(AN!vZYS+K6b0KI-clY_0%yx>Bh{s| z5_2)tkoht{X6$Uzm~+1AYc3MX78W#@`Tr9XQ3BwolT&^kv=CNq#J~y(C3nUVof-_c zD3k5ObFzI~0Gq4e<)a#{uT=~nnslqDavd4Wb~N7c8t;|bu7M5p?{D7xMRg%FXf`ug z>5dTZ+Z1?fq{+D`n8DHuYfFnq+ViLKglb8Ngp98t_D6kJj!&3hmDL>P=bVx={Z5zZ zARA9K>Dfyl@Gn>z-7QphqtFv3#v}))rphNd7sb@c`bLAowfovonFTD(n=BBt-m>=I zmf06+pwa~?4KRizp0vt((IvGVWS*z@khbq6JwIn*{}Se?%il16rDg0p;x&-|S%~^h zLnDRXZe4BEm+n(-@!)t)nSP0@s-9|wejve&*Sxqj4h z%2jQXgA%=5`BM>b6M=VU$3;pcrzP!us+KVUnYHi`73p~NDC+)NYA01Vb|b~j##y`n zK42tvDCTHlX{K5{)Bg*ACyDWY}BXAFsQ1u<^JS^sq?y}F# z%A7}b`e~avLs%8hP5C-KJY%_ZRDWEsV95ln(r&Ll$1?{?Jep$37L%?uz`6HLU1Fit z1cJ^bqcZimB6sV~^IKQ2TjxP&ixnI32M`(UPWm8O*jqx z0eBgkMM0234S!3mP_RYDm>13l*~HOGPskQE>0-sXsyZ5vmq$551r%K2XF!Fo=k((p zrXR;m5&i!A#%)Gn>Fu}6Y`&nIfpBNiW-rG2_`QKAD1U*1v#(RJmqK@RY}Lum(0|_b zi{0Rw6-Vw?81m7@J=YJ@ZA&G?JlGDmjf;R{vQ5~yQRQeUPw!Z{?`mK-UE5Ett?80= zR~_gcUKisd!jjlyHq3ogl8LYzlGEqPdOj*30z)X*(7(h#Pu?JPaw8(R>tgXMr715v zbY0k*sBSCf2y|pTa8$@K-7wkZbgIA3+?>3YiRN)gC8apig*B?@2+Ogvz@_4_ta)YF zX9oA~ELRrp56}If3kxa`(F&MbX}pCV!tvL1I5c;w{#{Y_7c57S{9RswQl9hEoODv# zrz4WRrg$@suA!;wSOtj7$W|HbhbbPTFfzky%jjDkWydV{%~NB%b@i=IS5`5*=PZkw7rbF!O=~7*bVhz&gZ+GwNK2|RFSh$wz;75aJiGV!k(xk%6y=s8mMuisb}QwugQwTHMs$;y**khGvO!v4{MUARG1{nQ8A7B z!&v<1QJ}|c5jhXj-__W4ToK?Dj+Y|#lYb#%04fg14D_(z6Bf5WSQIUH zxYZsh=mG>KBpLU7i+dfIOgEg;6Dj4dpj~-oEqQ2IEt|F3hOcVe#-U^CW(^aK(vKf* z85e3cc5kE!Z~8(%kzcDuvddbN0`VM5=1f2P==#7FXZN_eA)^m}9m3 zz_Dp-I^GKN;q2-hsT#3HqF|1%d87BWd-UnkM{b`|+nrOO+|I5^_ix3d#-i_-w2U(N zQhGrzzx?ve>XTYcqC;kW4wR#!kk2JZQ{x=k8Lmus^^;kH0*#Fg z?emkl*sE z^?R1qG~*b<=~5jUHcJM!-(STzE10Fxg{yIF`Oo^w{#spN^(K&21$77YwB+T|s9dJz z_UCm=V;{4)*R0LE0BETa&y+V^PkH3SV~cG=X!EG=y7>8ipB*VwuU+O4Y4{QN*RVky zh9L}j-KLc>C-~PmVgMzYq3}KTwb_-^QMCZTt-VN*aSfb#zR9twTrtNoy_z<(0GxEe zYE33SD!rQXs6<2usX-lQ;lPTkA6~IeW=F;U-qr8+F2IzW-sxLr;0Y}xJ>k~Row8JtLPd;J zV!tRD>qd{okI=m84XRC*>5(2p*9(1P(_}+ekabgJ$|wH587S}?!EI?1M>=4c;t~;| zKeK7a2?lCn_YDuN>aqw;HTuEqmis0-u_~3filt+p*)VpCcr&K-Z@#YoTA{(7_#1n8 zhuy+j8G=H4$0a9Wb*5t%1wtPo&Uikz%A@XjW)qEx2CVs3<)_~&EPU_uX9m){J8l_{ zq_#Qd&?;)k-$;4CzH}Q}zh1oFD_5^p7*x4qUgdg$u;jyfQ%e}e%k0H;pHeFiVXeQD zx>|46I8Ql4>zil^HC&!8e)CfWD|HpqsV+n$YU{^hu}!Y!)Z zz%S;)LkwqYt+xgM%pAU!@04@_E?o0BCW6hAbzbCfXzYb||8S?ch)kft#0|$-=h_+edl#Dl2`L%24&3%g|HF^g(e85Dg75zX+*sT3LGWxt*Hwmb5$lFM4w~r4kKcFuH?{YH zC#xXKp^1_tU4{OXy#Ksa{q zeZ*!pdt2RT=FFMaJ1T~VSB0KwfPQz_L2`Xar_!CN2&?%{O#~2^!$lJ&^iqpN!-UGF z2}&t_dTpK6t+~{)P1tC%`Fyk*Eg9eHtd|@zW7Jl{!de3bh-KR8eji8{ zt?gR7r?A0VN3ptb4Wdo8Mtmmh?WN?DVl_71K;mB#_SZ%zp$2Ze@kUL{k`M8|F6GN- zz%fcg42~!kWbx5zSfio7fUrP8mQ1s$=p?n(dEHNqb^;16wVUz5pAV(!6fnfx=S)+J z)Xs3lorUK_?}=?ody44kCA^vOm3@wP7-tZys=b+v7{k3291*0Qb9s%(B=CmhdZe(r|ue?EVj z)_vlhaLH*7mlUcR1uQ8p_1Sas%IEia>DHSW4g6fVPJXHUI-oLhqmzI~ZMkXqkg3Kz zqJkrRCyX@);Zwi47j1_&rElfI>IEMAz=y{@^~nA9<*n1W(*;)r!jhlUO)3cdNvc#! z%~ULMsR@da3ui1pnKSD^fI`!@8V{;IICu7GD}JVC1F%YFP9^rx*sDAvEi5$~-9)8E zQ*&<$+4wFo25Ww;W>5Kef4Kd*o-K=eZk9=~PQx=V`;YT~aL>VK%|2n-i!XN3bDKX& z0IA*EDfs8atW|Ymiv6KdLuWX7g>}Ooee}`mV0f9To*i7fdl!E6>N8(ai>C$|Sx1sg zhz$dMaOlTBg0?ah`+w5Nk%s=4Vw3f}hL%R=IT`En6JfV=hdaBIa##wp66rD>vMrJHTez z%U^VO)wxQ7->>1O;p)X8-y`x=RN6H#Csc?gXdWZ&$?v5%z%n?{DpegBGg%Yvj}-kw zZw!fM;lQZh4p1;}G@-^GG20+68Vn#O*GMfZ@&%tp@uXA>ZVNe~pL6e}BMeVBgGYUaNn=KCB!I10u&tz>k)j8pGSFE!D zRTliBR23D|60_rN3%M+M3rJZ(8njtVo?pEzo*xjGsRnj zW3HCadDbfKOG?SzeKCQLIyMFCFIS-%6ZSA2$jD{ciFU&kAJ$A0)pg5oW16RlUt?U< zX-3}CMr9g+bNv1`wulIbA#+>hxU8AH>HQy#n7p6JwW)jUL@5VNjiMIK`SbnTt`hEF zY`4T2)>>Hv^6{do_<>xiv4u$Zs!GW?kppjei1kORSYWy3e^&&bn-#F*>{v#g^?ok! zUMyeCE-(WvW-hzT34pK}boAqQNt5@n?pSq|-or=?b8NZQ21B+mn5~n0mHxrKA!h*; zSyR%6RN})J4L89X&P10f2%BXn)j=$KW^B@nkX*FrArBNTnt4vQ2lis;DLpaI`j98K z!Hz1vAT`wRP(aL2S$Bgn2;vwo6GBa$eSiOzFBN0~46y?yg(Qk}0#W_~cD>B7-KG%C zKB5~^E%8O|U^R_uh9Ten;oOZ+efUVZ`tGI}L|ivlP{l{v6sIF0Xj8w@Q{8)n{`ne5@^7#=3r`O zSPSGX{hZa6cHAlF4|Y80eL6;CH?SI|K!iJMNIR^MIm7dOq(Qk#*lNloAD|Y7i=9Y( zn}TthC?H6odQOBome4?nA^v)K$?6{}An@9JHXXtY-Dz^>_?k-d+o(}_>g+li_2^@c zse<*Owl&>(HTF^+E409ka3nkdqL(#VJ_U5QpF@e_v_qx5x#^PT7hk@-X{fu^rf!DJw`OIgTzH4>P8Im8UZ3^m z4khgH6%<^|g-H4NBQG*u%=-2CY4VDtbWhy#rQh^5>n;ng21UYPZMDi1>Wx^v2_Zv+ zFa_wzP0#Eo$Rw`)>tAo;ThtIneV6lEJ&vEf<(3|t!`mxY61Uu@Lpl2BC+pEu!-o$y zo^rXGg%(=74#5?n1A3KMf6NO%anA?#QXon+1M`dc9e}rL!p2GLHg|%U2&(srUlRaV zpoM)iv`l_s#QshE(#c!v1~xjz?R4GM_*jbt+JX zk7g#sL?~mVDKZn{g|Kt@u0k)8J%uOA=U&N16pk|u!LNx5y*z(CZ(lE3;*fyhCz;0^rfMFH2Mzy;m zn;b^Je`K9jWGis0)T+j)%qVWI4Xh5yG6L^{$PN|3i$>e;MB(>uoo10KqS$f)AO9~uq)LoPWapD zcUThOu;3g`k@__?UgE^>U5KrUzbbX%)e$B`@!JH2i|D$pVioCEGQPxh*6O%520nH_;`GV!~~Gx^}Le$Sadrq01B;F#xirE ztSXldrB0t8oxo5Hs+j~@52GD)&M3N5pkYe>k@Hh9V3b0#5VxNr;x^7A8{r*_@wJWf zSQ<4VH5k`jA|`FNO9yLQPEh?gor^lndx&${HguxPF9sH zFi-z0Qxti6o0Vk=@kx*jO=1#V`Q?qHwLrv=kAhlMq?6m~!5PThi5|(lkDc)E<})9) z#l1t0I#eBXYu`A3eP^0{ZnWtK(~S|DP|t@@h}3wbJ|1Q{o`eKF6<6iT*&g(#0U>>5 zX>~YvUde*=LW)oU(`>&TzCJnnvMms&5q`0QYPB@(W*&s2YO$QiE!NQu_4PPdYHL|M z|7O0{O{S^Xv8)8qK<|LR*rZ|%Ofj6D(e3D#@%At!ArML^o#c?UVCy65(wiiG0uva12k(zO0Fn>DB{I{RL@K3SNbRogf zfSOcZI5*9yIE{FbWf{GPWvLD{g1dhvtF825(o2fl4o|=qy=a*GI3fu(aw_gVv*L@0 z1j?QZpmtZrIt?(^OFq-osuNg=lP3dBH$5#wrkK}q{w2dtTayS#Po@j}uySmfy6!{r z+Ce@y{B1`+B52Z&kO{n!a@?N_Gsi0$5JHvcJEz%7TsNvoC|Q!`;^4TlluWQ zLEI!7=jgPC;WA8$al3}z$Un%>`Dx1(YC}O{t`k*PyD0$4=oEasHTiQWi{3Wt(}8k_ zE)D<(@`SZLj#;esLbh1x33(vZp!{V5FT-SrJ_v=c_~O7R0>dIOnnBXi1Y(37raB@>kK5$y57UQL8iG7LZbj%M!tN8=Vb}jC!IYMTClEb zDTm#A!p)(Zd3zFRd)sDT9RPr0@F+({Oso6#Spa|eet4Kn?<2(t!w>>!13eVAOZ#DT zj96aGl5ktN73TTRA55qSwSig%w^YUowP@q)N>$9^N?kT@-=4+h=S6|6aT<8nCgMhd zYsN#VEBj1YZha6bK5ZkenoE@`dbKrT^x4G-W=8EW0;e=Q+@9Q+LIB(P`$+9BleA1~ zNsdTW4Sv*JKe|Ulb;ucPvN1R~GpW`?X5dFOMW!iCuHW^*s7PVT-A123_<_BoAJn0` z^PAZAkX=6XF1aVw6*~tn-|7c)P>_FTw}l}A#gA)X6r<*GnJqwdvIiQzNHRqf;u^}O zeuaS1*2%rBXa=&5b_l?vGP|Fzhu#32b(PzNwu5Luv20tIg}|~!1pK&3)MOjfp}`ZF zSt)Nei;t!nA;tOQhgFeL>s{8xq*bb9l0sS?K-aLkn)>MM8!KDhZ5cC(?pC*${dDqXKT_kyNiuxDXtYu$UbY;3MO%uwv`GK zG(AKe(zGurkVX8^hKo!U)l4OaA4BwWx*^F_by|8T!;##PJ6~8K-1LztwnN3ERNap1 z){8CUE;8QnQRd$j2TFu+N7**3L`3A_hOVTz-I_!=MN*fJUB%ED zUr5*2c&d>8Fhv) z`gqgfLq9m%ng?)9xab;Z0c#No8bLJ1dU-6)-L6qak{g@sQy>$vlGsa)9C4{OoKbO1 zK{GmAN2NH`q#~2jr2%|2y6yeZu^MN7!I0O<8{NG`lrio$z+!CUi--`I9ioJn`ApZj zQbE<9ZKrCa!xk$m3EA>S|JFTH(-9pQUCf%a3~vcbJvR5khBT|$RWy8cc+%6%=d&EG zpDLp@a1n9+$~C)026VEJm1-rB6|@ctq0taT3lIxpuWXJih)GRE79|664IgAPt_-RcI++Lf-(PM76A~0Q~O`J=QFirrOHl0RzgN{3}(<+-?U^1K`Xfn?&?E`V3 zdNM;WZJUVmF*DgT#c5^&JvNF@;mHx^1J}Q59=}caM60LBLC#rRPqLUoP`PzUlMii4 z1m-5gJ&Y=dl#8iTIb0iAFNL1JV|d1GgGOvwjZ`CV9J6~yoU~}tHTnxpY4HqC2D3l^ zfP70|Q|4Ay$7(f2$RM+Y9uj=jqPM|Jsy6x_HIqIycgIt>!HQdOgmWfU zC8WF{2RJCYU{aVzNx&@bmdQ0|Ejd@;lkArd+eOK9uGN0Yxj{P_G(f9%HD%d7n>D4f z^`#I?kZ%;Xq`2>ADw0Q(ursE4(Hogg9sqvu22Ns^hG>K9F<29XG-vqsX=y^hZ!;twN)Ti?3?lF_Vu%#L?ggH5%0> z!|6(6JQ&QS0Fx4xJXNxr40viGvA0|BGdp_z2t9c-x5J4wGLQ{dA;(~2qJuWbY;vx= zjco+fvK-IrunEbudY^PVd3w{Np4H%XG=e2n;uSB?Zhd=pJJ@||62}@QJ-re#8e7}5 zi*Y=K{tdj8Zn}>ZOVub$l3eZcnrCK~D`;t!?{^U6V$%u8i=So-SCLYcglas1d$LwT zUGV1Vj<}}IrOhCwLJdhes+yng|C%6*jk8%BIU%{3mLOrFMlq$3Jq#L<9yz9Z{V^{d zEd^5IUGd!O7LbuGyUOUtN?pyG>6xqPgFHK#t7)L>+<7}ho3 z@6E~P!mXCah42#`xN_rR$uTtSJ^EI8e3WIDw~WYx%T2qTF+JU6Iv+mZ;4 zj=+AVf9)_p7Ep>cf4ybRO}HfD1|DHKDmHz!lWDh%QET$yYt|jEt_EQ(^)RX0HeWJk z8d4wHrl!?)SM^n%w*Y{{uc;kwW0M(s!bDDHiAj+~g}rU|Yd&yCXq8EGo35^?{$ykI zZ$KQlbLmT0qY7<&ojs(8!9>mUpHQ-kNtVYfX|&0|3Sq5=F2Rtq79KMJjYsWPt}@pH zqqjexH41?dh@9O;_M1yWJ!O>_{5=o}7c}>#pllf#Hw8nO_}&}7KDzPiRWs*T^|2!S zgO#m+3nHM_rTm+wJLuVUnSi10sRn3NpI=_58Y(=*29{$!pGrJ@pdLW5S-@fBR&5H4 z%|*1#GbGA8PGvfb=zNhZ6cwz71hpQa2qbgCqBk#qdcC1n8b+sj19+{fxW+|iJan&7 z;2f8-1GR0+L%X)ud?d!C$`20cS@rVi$@`<*4g!i?U>-n}E^~ofPKTss^@0gjQfCsa zfN7#%;KAc=_-kL2r_Y_O+3;{|v3Q|}TM@cfUqTsyp59|{gRwzihFeAisH>e-q@WSx zfSq?tZoj`$EL3~E*z%3&UqB4Xjk$Bp7^1_$mVH@Usd*As;PBC1uJ+Lg_^^COg$7-S zjiS|W-Znd_Dv>dZAY_gNs5e}pVKMqeK|La^Pj4-*4#^q34X_PnzXJ+WH5!BL2(Nwu znC#z*Rdp?oPu`ItM0cyS2obRtS#fzHDy&;{s>6R=a~8%fd~xjNb1Jr;V`Bn@GHNFC ztHj|@#)_hIXVfAt!zkjstrC!7)cOC!$@3?!-vq+TkejMJH$CP<-pSna`{a{VPqx&y zkAWGiWatEjqpbPl<2Aqe(LJ^)WQlOdr~<{hF}gNpJ%59-O8AL$U%lkfwQpT8ZkTR}<=5=~+P%)-9=k7g ze~~omg(O8=Myl?P^_{!;Ls*Z*|05H46+Kem$?PI~!Y==ET@7I4yeSWz6&4bmvJQCT zkgfkV;{Doby*Pt~UFN<0YdCcKhASK%!eq_vv3Ej5Uqp#vs4Dy5eExhR;VRr({I6a8Kop z(EO^{P1I~fqR3e?aAO|*`^`5}`WN^)Zm*zkeunwoZy6ri{V74}lfAb?S)&)n8^lV@ z52DTmq%?QQH7AHFohQwaz=yGy=x$S;%ohxm*xWQuQzZ6bZ?xAwdm`#g)Rk>DJFj}&-EO@X{;Tf4O;h^$xTc?z_``#$ zzFw6g=pU1x=Jpo`ddac3)uo&I=CQvKX@HHoX?eHjMzwROl^AYDT3n(vv>nZik#>|x zbuP7{fjcN-Mm6cruy}I&c6;7nOYX0yLj2wXbme%qMR?De37>uR_64!*H90@KsjcGb z*-cfm=U$D5-SQtJs<+%$_2N;po^516MJm2({lL1~*M5JM;#d5u0P7YgWtp5L%*ocP zJrUY&#zP!)%bvPvy^h1Oq9A^GlW2rY}hP| za|PEq>6P$^l`S+w~D7O%WKM z+@ID=rGlXaq$WJ%?LAvB<{*JjYI2i(-bPpY6z@OCi+(JWE9QGekHp- zAy-Qt`lL5UUVC1_@WVBtm!|1}Ec~{*fd=#YQpp4mz^Cp%t4l$EzJA+Zzj2Ft{*DI2t*1u+NdsTl^mE} z{ptPA1{RYf?tS8)g2|(}icqLtT&V#*Qi=+e>k%)N)B$vwMt+y_TbDU93?!8GqtPg`+@~rhWs-LRHLh283b}}s5JdF*T{XnUbhaGY-vXKuz%s;{ z%Bh68I;x4J!$%l#a~VMS*f=bloF*78vDBcX(`q^d$v&35$6`63<3+i}aE!a>Hrnk@ z8--fyr}l&HIHizDR$K!Pta+k0NGG({9HHwC#=y!T$g;{-62zq<(1(e`VD5B_FG!($ z!bX|XtgUrrS#WKcyGrieQRcGIb_RSA;hi9bfvjj(Ayu`%jp8(KDO$cw&;V^MRl56h zy4qT8D@mBXLSPt!u@nuqNWOZs>p%~KEmy%hWOCA>MV2YL_Jvj81Wx#|qj1;!44+>I|V*XG6kPr_TpVSXb&Ia@%(&h5S;vOGg0|B^`#v3Pe za)vpZhs)Wl;!-FDjEf+eWl??JMS@&juACa$V|1F@NX=v1ZLz2mD4Ym8#xKb_!>(70M$XKp)H@1_M#L1<2-x zXJZmjRP}L;(AMG-Zw!*wD6Y^s=;ltx53n2Vj@J$5vtLZ|XMqR{1oV4+#i;JajISbj z7(NlCp~Uy>DL&OzLtaOWMTi`LoC0$i$Wbw*MoH)oHJo+DZuqH&>=7=8oUh+6peCKI zqgB*8O2cGesp$%R0;7UF1IAuhdc0JfXxJ6FGcWq7eQ9VlUK;GP>WspGSaDSz9Y z3*Wq8(cYqXQ;IM-fec*D)_3AA_Kg7klo0#6d#yGL3S0ubc}rHx=^CczTR+aEg7&U4EA0CyD4;_Q`-Ed*PyecAG!!BH_(_4 zEcXhSg&H5&EV#ydECvB-h7L!=8MDNiRZXH(C^*qbDvho`-s^@m=}P&E$ZU4gog!__7}kjPY)tmCSnbBXRBRNGkR3} z>8eo=LSA9#$Jelrg&c5jqv%1_^QU}mc(I-jc<7NoE-UWEoD4SZRm&eydlCjiEu-9J z%Ig~ZqShZ~z8DTu-N5Crqs-PPk<;_REn?6U9uVhX0TX$`K%T|I3Md`vL8gzOw+!SR zmLIH^+F|(Z#KH-UOmF#_NOj(gnERwp#M~zbgl=bZ64Cl{V=Uuo8jv93mt0|B!D0jH zx>l*6rd6v~@3NNt=^P-u1IL57_+%m)dGm9Cz&l+vY0?)KYnGaU>%odTCK{E^5w~(as@4v9-S-Y~RhhWIP!1N4REyKKVyOVyE=v<= z0VvbZl!8r8p;^j+_GmdU8ljg`rSl+OJR2y+ayEVf8g{(W`c{zL+RheFDY3;PuffAz zzTEKJ2^G)-)fz|4T(W_|Fyj=?CD}>q(`1PFZXVb+9|8H&s+P$-4*?*k1i1y88g5BI zA$F{^uWWDliyy83Sl6e3=1zKO{?&tbGD0Bf5z95jTGP@ilxDfenh1!M(jK~8Yn=jt zG|aN&#{pA@G0hbzQJXPBQL;EQW~yS2F8x_K(w>O$0K?uFNlM9a9LATDcyR{ozW;M+ zn#>&Y9bAtKW!;>gjkcwR6`9+a)#e7|-0|`+XFY?qu=vrI5$Mn-oi3GjNm9rj?Ipd^ zn3A47i~ojs8@k@YcgVI;8iX3Xz&92GcO?CAwVvr5^L=-`LqK0pIped*(YHG$E2-|` zCDj61wBjua)6&l9c83=}H4VJ2#^v!;)-(_Ayk{bEN4B$>JYnT~eN>?Uic-?Msdamo@(vqMAmoI^A^5 z=`)8icwAv^zMSfL`B5R})E>`fp&u)&mGKE3h!c2VXPHb_r80cXuP7DJo@FNg zy_BBCb(3A^()(x6n(Gs`3zB-I=}iq;5QiohdtyN;S0A5wMJk=e43#?ilOUaDwvIQ1a>`;`jAq%8WvX&J9!KmJ8)B zq?ZIpwjN*G;g8|RoSG7a{9*a7P4$=BQ1|p@d%;(Qf;(&{bQx3e&m=YUxu@TVAD>>G zRNa_KK@YjG*VSo|b-DM;#>hIiM#D6$9P7njn==;eRp~LO>vp-0pMuU4-(ggozPzq} zD<#}k`Aaob{I&F{>DbIOsO3LI$~0V$q3vt^%U8!6RUlH^mv)IV4D&*QPRzcpBfKA`{HNf=j@-y z*WeyxjNrDEq7k&FhaLa1y&sfb3?m^hs>JlVMlI6*V@$7kIJLY6$YeT*S*npr1+Bwr zs+_LIp`DRkmYrEp!0{&Qi0$V4QMp_g^hI1m-6xtvdd)!v}7K!r&#tiIEf z4&Z8QirkjTrS2bwNp=_`n5Mb3rus@g$G;QKo0G^?vF}J=BJJo;goQ_5s&q4AjBQ45Fz>Ouk%O6ZnJ~M6 zn@aM7*AO48F$YmdMP6r-Km0&&sc+R}oeHS6f694IJF~5}#;Hh26tIpjIFr=7icStE z9YWp(%7WD@lJneU^p*3gHCx+ft%#pGo^U+a_=1Co2GGRPoi^QRcdF!e1h{W|8IM%t zrJ6Y2o$%I~fMuVW-f)ymIA}8rZgNuxL#3((t>O!9-$8Ul%;Oesbx4(g1xP<(az&g& zwN>)Nh;5XID-?8WFv5(cRh>`_KBtftd(A-K6uzI7kTq8b)_O6SEBiaGTWSFE zf3bw0rHIsdNlK_%*guVayM8o7@;-XJlw>36nO-p{P z7UH(!0V49o<#cJxAVN(JqotGgUcPce&23~HDJB$tH+1r6`|k8DsnKlu-V_qAl(Coz zqy7&fG%?6f<@7IK;4%u*PF8W zRQc4AIOid%wh7g$BE{&D8W3NmqUMdU}tlLFIfAT>-VlLAG}zekjT% z&Y;M{%;y~b4w&IZs&*7C8yZ0o7e>%$@otmAD>N+tHXt>E-Qk_9oQIlXx7AZ+6qp+1 zHd2usoc@KUEcc&azxBM)E*`S>082Z+-+6H50WERwG+t`NUydAFk$y_sgX-$$E*@cT+t~kOt91!+7N55% ziucGx-!Y+i+D^CTI{DrbzuvB}K)Tn6PpCkNy_jStazacg*1Rq}YG+&dTqrQK@_PeR zD@mV;$3eT+zZ_Re@3#FY_r`xGGPm9Q>vUphYsF6~qP+9UQNTJ$%Dq7Q;I!l{(>%Nr zx*OYHbI%oR6_5D^ykutAr*xG?JTvRH)UIsG`M<4__i^QteIOKi(l<-)Ad=HLcNSdm zarEP-2h>=Ec2AEjfzUU%&DBY7===@MaEy7#Yctuu*tQl>x-QOjCS+)B0;7?w^&ml} zqs=h4Pg8f%MZ6ON;FbLU$;Ano|VYHO2L_uU)zqiH_RC` zZ&~tFw)L`z!Y11sczvoGF;~f8%0Z{BJM53k&P!Y&CB4wSW5l^Kbhi3OgHZElj%cDQT>&#R7NpqI9`1NLjj)0H(O!iOykQ;-TSP~`;2E+H|I*Pu z+?%P(f3tgzezuJcLXzAj&1aXzR#%n%HCf_EgJ#f+mf=rRG%vK*>bW#UrUdHj6fv*i za9!K#Q?RPZow?8GVLyS`yrUPXdO9yTu-$eHUd(7W^t+502f^Iw1WdrxQ^*T(J0)ah zwl7o_SJHZAJm`tJC&ZfV*v;&PHX({CT?pEQWy!ZoMU}3j_>B$40qIZeW#3dcH@~Bs z4B`H@UD9^!nqDc#%J$J8n0DLvyjXfN`I>MWVXPu)9vP&J$r!qQ z4xE;BM4HQ3A@WZ`uRg0Shc=`KV z=b{?him0$}BNW)ITRU#Ss7%?~Mq$P z;!vf?`xIitaF>?j9pf|GEJ1Ur zcXHU3OU*jr7vpD-u;y!d)u}^rULCH@1@1|l{@*_tfyTA-*XT=LbZD;Bt?Zq;pR`^i zqv7N@9rqZeUp(H0^3=@X>6snr`ewC6mf+rd&3sc(()xnii8pfH>b1 zrlGwnc4fTabFeznZ$C8s_P3zl9(f8Gp2?2whYkib(%xsfCHf$D?g%~;in@7v@Em#t z5hl!WSD3%c&%V_~SVp&Aot=_vEUI0B;llgQ@yuS^^xsFJ9xhs6;FfkIz**43{1)jY zX>7U}Zr19q3i0Tuvo{0d#+xmp*Th_F5Y@@gc(bLs zVKVtQkRIrS&AkYwsEMXsuxq+g#L`p(AK9J|gK><-<8Y)e5=))W(#%C*k@IP55%L$p z%p>xWc4v^Zx=Uw1Gz(ftNm@6cYuu@HMa5lmD@t$EjV=x(UvohhG%o~omFn;3(Rk}Q z#lA=v4kaq@zS1i-G1BZN)+ze@IOnn3^wCFu1b3yratpr{G7N$kf{WLu; zoT|>wLXpUPmt<_H$%A<_8pTYZAR$B>PJ7J@kN)7L_IEv37jA>Cvu%Evm?OQ{*>*>Q zwyi#OCp_jFlrx~NO{J3c&D8Um^J?_&&a1oAO@ynV0jW|u{PIS`we7*jmK6n64M*8G zeTQOYG(N>3bvD!-ERLcqJR_OMpObhorFI_gMv%$o#fW$Ax1+nzQ`p{wp9#^jN8@rZ zFWgG2QDSysX0p3*nC)+JM&z4JacAo&djfV;PjG28&=cMyZX}!vqV%&ji^t}cVA|hc zb+X9VHtFO8%_1l0_S7Ovkcz#KZ$#qbk3K4hGxeS5mu?y!gV5nEG(WcDq^p+&K36s$ z57|AQpQh*Y{jI+QJ@^C#QxpG>iEPux-DA5rl3_82<-=z{tVrl?pRFHaFB zI~1|oL|QUs6I)-B$6Uz*u|?ztic8>H+-1xlt!4H<^pn*4HHh1}^mbEvf4{H&c3}Od{mFEsu$W zKGFM5ZW5-pnPkPdXYMBN=Z`ooeZ=GABU)HT1}Z%lZdUlmWrX?mYyJOL5_yh``g!D{ zQ}S|)OW|_6iI(jV=C!oVdj}z~MA`S!>yvcJWUtm`kJ}&8Gx#LROVx6`L|;gk(lkWP_3;|@ z|A_?4D;yTj%S$IUf(N6_SH*Frdhy>t$!o8E&-w1_mp=`c>raY1(^Jf#S6)k{_p57~ zZ>hhF)GHNb*)Pe}u2L2{!2iu}s7Ahh1?{l^SKf^t#yK71$>XE4P7bi#@X&(8+Qed; zdJJE8>~8VX;l)oU#3;T!g4c5EPEWbd7weWxnRHf{+6iC#@~qp+8h*FiO&foB;*de* z>%Ot?|8M`)$$~ZMkt|~Cn}_L#6kck)$Sj>2wN*HQ^lHyZ9*XCc{k*?QMn-owlyIN= zAU(jj(XWpdDwXEZ!%}IEACgvpYkrkpn+w}LXOxr@dF;zf*^ub@C(MylCow0*rKje*gdg literal 115254 zcmeGFd0f=>`aX`o5EV;}qgIv+m|9krcrup~89UiQG~-k!EltR*tPoMr*csGv$)l)g zWF&Nsnf30CWQK?WgDY-0l_e_3uqbFK!y*jJF!Q~x`!$=(dH+8D|9m{kjhWZ$x!lit zxvu-ZpR4}yl7IKR``oQ4O80>`)8!vwLJH) z2fy+8kveNc&6=Ypw=bMLdq-%|Zrgt!{43@2N$Dw1jTl(d@=@l8(ci8Z8}diG-{t2# z%m3$x9ee-0^_N!7s^hOso4NRpTYqWP-nZ%YU)uYp_3_7V|E0x$SYP|+ZQq2qTYvcO z&D*^R|7M-`a@K8z$01wN|FiHm!{dY6gI~CG>zrhst-4R|Ow46P@9fwO;(tdJU1a0V z8M{F?e%NtGdEBV@?qcK}mYJ#a@Wx~|5|J1*57m+JpNP^$Lc zdn>;T@#;3e^5kZZ;P8Txo|Rd}5r(+T4quInX*$zZv(GryvSJTE6U&ddzv=oJ^FfXI zU|56Z(8$6!8{SG7G3S(T^OqqzqK519<4hMKhUVeN8uKXY^YX3EW5O#>E=$j<{L-W0 zO*}YvhTEx>aWU2MQQK$y_z|}qxBrY&D6J!1sIc}S_;`qy`Fwi&dE?@ytLNrqpIx1E zHYDd%b@r*4hV=Ocyy5OzPiw8Gu3dg@n4xQ&VJOfp3BjB8<7?^dL4_EjIyjwt+xER^ zJa2}PgSD1HmSLzq9Be)u+;%wV>fxYd?KZC2nO$@A zC9U$7aK61&UW*s@j@j8e=9>JP)>~WGTdV&0ntVw{<9k{btqC(&oipl&g=~_aoZ@;_ z+gA3NER{N9_iULkzjrpI;YEDPkS4Q=dPrSu3uln2&O`o1{+Q`x4qFpfcwPV6V}ZkC zZuGvy{j8P2G>y%z7#n|oo@};P>48tWDsN^-uJ77=SZ(o3DZY2*t?D&oOjP|~&qdBD zw{O+7ZcUXnIIjI#Cg{`jwolV}WAj>L^Bd~$hV>ryrczpdc=elm<}a!GsQzMr;??xy zin?N#L29r2Yp;jPKeTu*a#{Q>C0DliC0A8oIQG$)zw(XR&}+y`^YJ9F%eh$F`%1BE znYnG5+O|wx75`fS!}{C&G$8sL<$3FADI?JO+6^ZvRzZrpZ$u#8+s0 z>lc+B=wvbLtzU6S^0eUUL#ui@o-!mbKZRVLNu+_^#pg%F z=Id=*>DH%J;Ax8EaU2vyPI28B$MbO1b{1NS_3g!m^3B8E+>@8uelE4nWx-s;gz|QG zdhOlCm|@MnMpaxOa{ihX&W+J(a5~1VboqyL3^v02zY)>fBU|Otmcl}>1Th#pws#+XWl_MHa!G%b)2B>&joS4B9eg!P3#O2S;DLFR1K3b<1V5Z4zX-g2U2ZQ!OX2O>eoXZ(i@+ z(!(<7Y-dUg#Bk}f$WNw~^4ki3v|evfg~gd{U|6xx+`Pb<>0lX0?TLdZ5?)x{SZB1< z7%RCTS=BrCH7D+#o)*cKIq20i{JmZ0YPgl{C(FvphFR}PZOck+D@smI&evT@&RrGU z{zvd7XcM#ljI^mDgOtGf^@+X~QN!U>=`9hFyGFlwIU*VcsjjedN3@&7N`+dsh|-1P#DBq-OTj6W z>eMUL63~>Tkl@87$=dB=!QcU8H^B@@hN%DLkYMwl>6XW>>#2Z;LaJ-)eXRA=?ro}Zmjh5~2y+5g!E-$z*a< zl@S(>>$kV*d`NH`WIOigir6l4xG8_KYlCvkCv?7Y*kB^uBDwXZXR%`=nj@eRn^(*T z<|*GVpE#j2pJ@0&*ZPCGCDr^i^sO{ zl`)I|yqETdJ3}eVimV&R-&+dDU^S?D|Lqy~C{?CxaC;4O`R?7j&z6)_YL53xZJu!I zt7i^k4)*VfCOW*jxBRX>yY>J16$JzH{Vv?<0G%cTL0t}|?KYz%597FC%H{-uN zMf8hoW=*C}r*CQ+W$h7v(Les_~Hd<51MUi@j78m0e?+ii(P6 z&zZBLs%em>eo(6FyBu^zhO0Y|yD=B+g*u4sv&MG%RfbNr)CIo31X~+}8z_a@#W^u0uX)w2^j95|kD!F0@{~O8`PVq*3LPjOl<={> zz8Ax+O<_^y3U7VioL~Dcs8}<)p7S-wv>ypGch*N98L_8kZ*}D9(Q&V0SA*ck;c?1; zd0yK-UEA2FJ}a8HZ;fn}7!gzJ8bfpUc{zAMz~Anz?7b z%(KIM_yk^;aTZlCpyin{V@e~mridt5z{Q9sPGFjQ3{)0M?dH^$&FKxQ@9o@1UAJ4d zQ8utq-Au+bay&g3UHR?dflJTLJpwQ3;2`goiC!&7{d@MvzBoB|u(i*Iqc2kWt5Rb2 zG@hAp&S036_2yIE+zYQy} zK*bABJbCr%)!G9;pLulKeBGHoKm74&c-5%|g)<`-LWk%uR7f*j2DjptHIyd~}d#X>wvjQpJyQ8AHuHyIUSN5*mQLRAb zQQJVoF?1}|!Gq7=7L#+z5I@k;N5W`Ey5A{Qmu`i)Q*4E~aNwk)L>a zasQcxZa-#Z9NsxQpN|@qj3c&h-#!M;S8Hkp-WA~c3-oA<{>Od$P8clL4E2YG_^r=1 zK7+NJS!f#$7WsNypuzOS{ax>0-3glKdYpdDS}rnT$AuPiR8v#ap47oLLsn_i7xeo+ zW1;TCg_%=-xX)A^?nw*ulEFknxTBg1G;Ji0%zL{YY-stapkPX6!!vP)5mS0$Oka(S zSPS*=6BOjatc&q@kJrV$&7@&7%emH(^`E7_XfWaZP)uJGyw^_?{}qJ()Tw*$ zv^8tGV|W=;r-xj;s$6ly4&+D+D_et#kh10(G?(Vu<`)#{r zH<~HQp+R5dF@D3!E`uMsE5JPGa$CyQt%GXj z^es}(z84mjm}|V!mNM&svllMBJ1Tjnd}Tt<)rUJ2P5fKW4a&Mh+U@P_ad=)oe=J8# zObpg{)TmKoKDzqAwtJuYtSz8i_qVkB0@4Uy=&pd`z@Dbh4z;gcyY~IGU#HLB`8tFbi#YK=)z1!GdZtg>NM-KqWRIT; zuv+?ScBKvbc6OPV{T!{}1kaBCj!%#xPGfv)ZvH4`_s%t;b7%KeFx|>{ z+g}1E4jj1dKNkMk$Agu@53Ono_*+kf|2TMorl?qtAw1I7)^mdY`LO`nz1gI?xHJ%9 zwkat;7Igh7Bcqepu6a1X9ZQ|S#VF^Xefqh`rFOp!(U7=sDUK5sQ$H$yZT|{<`QO#g za+Po<9^LkjN&nt>V0gDhGgpL;8a;YvcZ?242usA1Z2o`8+7;0*1kj*Q=(nc0#!A2uhb>D}PZw`cm2xg?DCr)(AvBnI)d$=`-p5^+)*ujNCF;60PFyytb?LSuhVxG`~(T0=V zM;GU<{?D1?7#*EG7}x!yfCG5btfq|&Vl*WYpE^Ae_Ae4!9>}#+>r$Y`6rT9L^Y$#^ znO^Dd%M-V}_qQAWW-w7klIQKcD*?)JZo|gyzMt@C1ag+jN&|IB&r>nP|04ap%O%`s z<2e~FhSck_-4mA32_}pdD>3@_t$Pgc2?=P)$)aPgIJJl!!5(>(n&jRdr5 zuXY!x3V+az?`ieo9LL19K5eY?GVZtg#iap((LDt#TY{Byvjd6rXumeb z%-d7enI|zc^TLraYbj0-m`Y-NMB~uM9b9MRfm2GZ7L@#JTGXa#WjI5=nXq~b;VVL5 zySR9?kbcLho_{T)a3TJ$uU(<(mjJt|iimevn58mI0t>(DU4E+>!NPH4ki0^?S{_`k z2dtm|8s|=70l>Eq4_D~>)Db1JPP7MMvac%>o4bev(mQz~X>w5Ow%{)bCwROCVQ*uo zjNO~B`rvutW3loIWd?J><2xiIMSq`E9uH{IcnI%qA?U-i*e=gx5KH9GGhW5K1n_eS zAX~ONYd{+Rrk+SQiLE#6F^ID&>K6}icf?Be@a==Zm_F9&+>6pni2tLwuT)x;^^n}k zkoxgBP`cwp(d&$Lgg8e>E*s5pJK*7;w~t#RfZ(+c0xJX%RGs%rK{b~o7Nv7t6ES~& zo&$u+ad>ka8CA2OYrcGf1h_HhPd67b%vZR)ky%MG&xlK{<90!zHJjifT+&<3dJ3@% z7QkSM;hE?am&pmp$>6pnNgJhzJIW;mbY|`%VRYsmY`Ee26vH8c3iS-x>46E>_1m_| zP@UZ*5)08ah5Vln=d;}sB+TRZTK))bf33!3-$NC}zeTB<|LuXW#R>f64A9i|(#%Tm zF(2@`h`my>Pmj&%#d&(lVYZa}Se9}vsx;?e!y*Bz`a|;XQbACT(HujdFR=ahz)swB zQ5*PY-4X52)HhuB?EQVS-4uyE1T66`TZR~4!hZ^3gT@*j55QxM^?iz}h{v+gk?sm5 zvv+)1?|SbtE~`i_20^}Lq`<@61c53A%5}&AA4)8dLfzr5WbJAWL@W(K7D5=@djh=2 z`O(BhJkHRy4iQ!n?Bv`l$qM~qfrW%GSpn$A_hYAnT9tSs0GW~s@VPL`I4$<@wAgA{ zH|~vFNchjW;@bj=nt(Y+5213*ZAsQ`rhv&mNz_p2fo!~D46G(C65)Qnj^`al zv!z+E#Z%{Y%?Wd$`n6|=Ql2zx4>?{Rd>KhC76d3N6;3p@ z8qdFF5MY!g00!#FQOV)HdG2-TjeMVIKL2NMgfxw>YC7e4Xlp$hI)~MEHqU{!_3E4l z=KwA_7vD{|W0it*aRRd+%}?~Ma$=ZSDq^dHyH`E~Q99sHcu{%oITR}K3ZSM>T-qR- z;SwDYSe0i<6CS0<)-YZ^PM}Pe|6xWsQL#-yS2l_H;PKh@=CCYa&@G9y!a<+_wlI3R z2;KTe)YtU$DhweR({~~w{~`PM4}y460|T^K2#>76`_@;6&!0cuU@8WvA;3QTJ^0?F zB_cN`MLj6TMV{c7+Q75c`;!~wiD7<8bxz4@v4*9k3Asj5^oV(_UeFwk(FL@6^Y&hO zM9^-kTg0lOI<*_A_dXA6`CL`NVt%M>6?~g(wWp;rInh9#-a_ZwIN#}ffAz~Uuj>Px zF}^CN zPCoBd{}*aDKbW}n)-GK5kwFzBBL%Ru)UF5@Y!L&bDkUw%->F(HPw z;=O0>T9*Z7*M__Z`LrLP5DdM&c~p!X@N zU#O^{wUiEiS-jY)Djwe95hYPW0Kb@_rbZqdUd!OhIx%ge1(EU>Gs1E<`TNzc|LWPr zpURB!4JEtyL{2|hB%h;nSe^ssLS(fC$~|QHtkQU(1aBn=!)-37mlH+G;rmy&i^Ne2 zpU5dbQMb^?w9xk#N<%#VtpQqLXTj-I%OXo_y7fy0!92Q_trI(x^60ieaZDBfoIq+) z{FS6{Hy*g%bGj}hp3cVr&;67^BBBMa%ZN@DNp1NrZudEtER}Id;$Zlw3ch7$K}$nb z3p}QG#i0OkRx4mGJWj48Uh!Z8rR~5wkMsbJu%KVoqANW!4e?{E^r>^STJHb_v3rAe z!6^K_Y8v30W`gGgmj$S9{bj{MoKqE`{I>d81i^a@3$xzY`TBfK(Zmk0+=Sic>DoVn zq#pY9*B+*^z|l3Y7))m?F)Q%}x7};87_BM(zU4jamRH4e=~?;wD|GO$(<|WjGHGLM z&7NfdQK_94;b_VN+aEKtu&y~@lX7}{U^t?*d0Ch42Q0j@%Z{9;>A*Gm_U)TJVE2Rh z>nA4-gNqeOg5krAw{wCTh-QWFD$xD?y`DfTX?ekmb_$F<(5rbN0QhTU4OL znSsNGhkqtZ_VbyeFLGM@_q!1-Ww2c_2JWN;Z^D!dyDi~wwV=((PRDSLYpC?5%1XP5 zQLP#>@W+C7#wBEa>-OZ2TYGNq-wPKnnwbx42vl-M_2s>5bB&wzRliSX(6K!*l{S0h zD-Yza|KLjiYyfkuck{?gfO()-3hWC&U?9ta>N<2aoV$R#pHp^+OhmA3Tw_A|iS#Ma5wuAzdZF0S*-W ze9sL)r>smjVnX3Ur|ciz0;Oyf2mgP0L> zhRi^AaWdV0?4AeKjuM>JPLDu1(wjjG{i;%@7vXku$^-*AePU?PUy6#2FtPwmK+24H z_F3RnKk*F(#6SZkbfljHIECn!W!KrtC3D^9Bit-2d&uA4zhD3UJKr4kMtY&|I=cxc z=1T>ly}!s;10o+3K2-otP{wqC{imOPXqCr?L)uSZ@n#LKE5-`HJ}e1KeWrTk>8ICk zRtU_}p;b00{K3?r%V)jS&wqNz+0Nqu#ukJFk4;IX(xt(5!BL&@-MGH{os^ZkJ!Iz* z@R>N_t-eLs!*^$;hR$`z9|5%Xcn&x#aX^?3v;UuMDS)I`A19PMK>TU~dcx)LyIb^(uGV^MPPqdh)=#lv#Hyc+CHHzCA_h*v z<}Ndt%`IJg@yr(S)UNMmS}`734>l`{g5Be>pGA-(-kC)d0LD(!Hus4-xmO| z9H_o+Y7h%(mabg<0hIwg-_5Ij3Pp>%xx&f5Ea=AkPOOy32DlKtz;v0Y9wg(10cQC zX=R0mhKeJn{#9TWoNj@N$8U(7r=C}=03U1Jke2qOXf5^DEflv53WmR^ud)7zx$QD5wz+~wGVdtao4Wr3m5w~?M&RZ@c=MX zBqnx;T~we?U?G*=>&YB%JTQ0E)(n^%V228gXHdh);LoT+yvvYsQYb)0NyWI5Ws;Xf z7s+kiA@_i{Lqb;f4a;5+-v^Pwgb6>s{sioVZzi-eyeudusJ7pxOO^o?Gd(hxji4_i zVxrrr2JLF5o>M!yxzH$c7)$Id>@od``?>!> z)!l%Etb>2Nay*#3rTKnMJAIq?dv+ESiW<)P@}$SIk0oc{1^Pez$Pj95B2=#q%!gzfYZ53MPa%v3;IP}o$cLKWL8i#YZtohikjQN1PrElR7pO>n!?EL zAErsRiqA<<#qm&~6NF2xtH^(2SdwJo!G6F5GB9AA)IGpFd2Yi2j!hPs$#hXk5mCLx z5iQiV7Z!)>$4z`2i714JtC&v%Bbxo)q{qPI>|G0XN0F%UGPj2Z0g6fB?hductbIGZ zUH$dOw1-A(|7h(0A*W4I(?CUGH!*>^mZ`de>jS=xbQi~77+y}^9;@J095}_U7{^S7 z>IH-)#y}9ZW==9VN>EKvUn71ED-(pZhZh{udSv{r<;jt!s`i3DHTTx;u{$2<8Fln| z`kA7f;w3f}T$ON`<~T&5`D@SC0X*sMgwBbVabVb5+vAAR?6#$`s3@UZ-t*qA|B!i! zCzuO?{X$LsTIP3onE-|oe-K@<`{|$k2rAFulIarm--QXds zYr833)jIa3Y}K&VZ^NQnnetoe*cwv|@XR=2qWJDwf$9l9GONehL&gCVqgo=XVk4J@ zo|>pG?M4Dm<#Zr~yy5gBTTiE+qK>l+;#SKVTs@I1#yZQu#i8}E49elcaC5n&oIbzY z%y^9Zr~Q~(}TrcGuCJ=a!roT8xr^1kOeyDn#m%DVWp8yi9yHadBlovIcK^x_7{)1zi^o-B{Ip| zd|sALG~QNOE&^RSotc=HZjijdYVOM((!vCCzc_fO^i6XUE%G=UpXh@CLm; ziGvX}w<^qQ?_=9>>ZhviC8gbk3~5a>2oSFq(2Y<4f9}E46N?@BtEr8rR95nKxmb59 z*F1+{i=iph&{+<>xJ2-J?&r~_!gXu@&8Phpb#3O#y7IejVz}gBYmRgNZndF!hzN(~ zG@>UwTDPA#0hKuxp(KF(B*b6TL&2ccgOlT#lVfU>ZkT7=H$mdA61D1r}AC}b;ceu;U8 zY+3u6uufPo2#y>_MYUB0E@#I@6wccchBz1?Q9znS5mD`@*GH$DqO(zaG0ys{{OgI_ zt0(G%sfy(US%0OqV1gu1vgod033B8J(2022?)0g#jGVb%VAH6ItglIOgb-RFJfU9% zV6u#~uY^59Vz6?E2$&$YqSVO;xYXk~!0>kM-=9H9?A-HUWQH2sUXub8oEPv(#@u9& z^XJZ$VUZ65Kk#k85?G}<$iWh@EGg?>BBetW@$i?#`_LTV+6c~l`0f2aiJ#A_+Kmb8U`9jVch%_ZPmD|T{!^*?b4bAg10-LGMc(b;(Z%!KmBg6h3K{_iyJGD_00z$o&m?>? z^$l=}6wCGP4XKwJgN%)lU`xUow*#dRBl0!L5GLV7)rLWE;yj&eH_h1}(OPJOXT&`i zFUL4Kr?LQv0Fh$VsE~w71J3p^4SD3t0p(eYEtBHTC0%;RGfIM=ECT`#BqHkcghzkM z$tlo&livD2>E&Df{@lvI#Jkqbn~cBUh4L~GR$H`*b|WPzs$vES74+*@`^}JXs|q96 z6qaH&U40V%eDpmxve>IQQNi5 zhH#B3Ty)Zfl4}>7Gv)q?`9@-o{Mf)^nQU5LyXY%>fL9-T(ef}3boYaKsEpCqk#_vb zFYZgmHQ9(r{N%%wF7A-TdZgHlJW+Bs!~_s%;LJRt;l^~9#Ql@bv+Rs-AgA>Wsu_lW!nHfiH8i&psBJy%CS)m3Ru^W3h<_$$75=*D=q&O4INO$Ef$t&5 z6o?M+B)j|OKPIN>2?j$2JRWs+)VnYyr?7%jM+^4<_@WE(ZP&~f4DJ1?0GT4IIY>^n zf&NT({ZQRgf?RRug#R!$1|?!QItZ_sKnWDjiFqO&sEx(Nqm8BE@_HW>RCQWrJ;|AF z2lFQ9{64wP`!F(mv@)#;ehEkuOq&KH;9WoyB%Hb197ypS zy)IwAyppM20>n#JkoM^Spnrj7OcIGYG{{S3&*|7W_CS0paeWnW=tR8ooNE;+#Sw&BZ_?t7t1`gV?4FZ2WbOF z8)8SawY7;uAm%b(cVu`sQTK?xi$U*nJE%~It?L0LDjW77=SuV%l|HJy3MCDUDc^)N z5V7`1;HJ5YrD`rj!ay++zNy_AL_(UTjJ^OQ$Llf=ZA+e~dAtgss^ygbWk;?{02xPg z=Ydku$MFL@6e$Gy4WJpMmU0hDVxB=B7a*u|Tl@?F1StF?12KpR$Vi^_7_#t~6%JT= zHEbdR#gNQlYI>6_WuZt)WDUpBgd2skYLJp6D z>1&Ba+Oq-#1j*53B5L~itVC95*t^MX=N=g-IclPzkxp5csP&z5>Z>xOZqpjRayM<$ zwtELI1#dGDe}y>$076)$Lmprzfa;tb2BQqF3%)|FOx}uQ1Hcl3BDVCdNskdC0-npE zFe^mxcnLuR675c0@!HFzC-uJd8|GDrDfT#F9xz7_9Av23iI{?eMN>b&+bi z^~~{%!l20jL*5dk-!JvE%^P3&u>d3p5vQ7ci3q3haAe`PovWn&WM*3jwfher84ZqJnoT1Od6SN&K<14L8Z1ImL5g5z<($<^nGMjK;RB4tO`W$pMsak6AD&>w`?+t;Gtw@GwN8Tz7tK_QA2W2Z&Gi#0Z6Da`CsD zg@b3YPgSS&hjbH!E&%dh^&T_u&z!m6M`iBm{tGls=Qh~M?OFS}PDk=>o=lLa_me1O zeZ7GFz<-#6Qp7Fa?dE(pG_e8Zy*aV|JO6QagK=2`tezA1T^H&#Q3jGyg!5rtFTw8P z>GhAB{Uz5MTR^7hbE@gB$RfR$avQ0#GLbJ+1-d4VNJN3`W52jQT!1CqDzH+vSK#PE zCIs;6eNiGVhWgFt9Js92@E7NwjcO*LyIA8+R5!F~YsncwVIl*6S3$#U{K-LDVBNw0 zWuH8e-Ay!v<^cT@Xj3x&dsMPX;fz64aFe)|H6}3Pe+p)<=4rrbFJqBw)PN%M3?`<7 zdTMBR#i#KVafBZgMMSSJx3p_+0+wd=B-=iM`0&;2&Z1#~<7Rysj^9LsDfVQ3Y&T|7 zv7mt^3lM5sR@k9-)LvB00k&M7u1n!bSSrU-k-*APb79f_+mZd+uB(?SukN*U-DLG8 zYaTv3%c5ctHjIOPrp;KPF_%&EPajHO2R3d3<0!JDZw^}z@EU~m`pwXkZzc1n4eSu0 zeDzHD^1|q}!VabR@L~kt(|*ihNf}#tk3`lal#PzB7`?{;KkAwA%5IG5AKNw`x$5vg zvg(fXMW{P)X=C)1v`wgSLGrz51(1#Bk>1Y~7=%dg^z*0Ztlh{*R{~()_==GKI9y}L zj;<_k-x5e33aX0a5nT?U!_(tks zrVs5z`4HoO+_z%0Y9xz5|V zz%oc=kWRORQz$w*CH@t?5-0+_9zKG-?BdL%!o`H+U%4Ap+VCm8P+A5$+F%0J5{`mA zX5%xxoP~y1208#jE78klR1o)zin&SLINBLE_I8OIr>RbmA|a?C@ivIWuY8anGr7gT zCVa5EyfQhgG9DIY`cS$wEW|kkdwpWIciZbwww;_TLGMk2gT4U%jO~qICPBuOl8aNA z>rNkuzOwaxJ_4m`gC{)(i!>P3OM5J>)%3yLB)sHW4X*Q^1p_ON7Q;88L0Cjebdwnr z1D8?}ml-DUu;MYWSTJ|sioB2*wQJ{2w>*Iey`==6C@y7;=?LsSaDWxu;?}|)TL2l6 zH1rwsvOXdEp-qE(1j>n00}lzM1*~vHO`ro}We}WLU!k#7WFxuFOAO#xUBlRhzlUA_ zyBWgx2;+Yoc?d~j+|}9VfN2n8^7)j>3SJ2;snFrM*g^5vqMjREM+95qIW-|eS}(XL z?XEYX*w)0<=2fY~^R~wx-(D*zOA?R18{G766bpaoolq7ORN@h(lcI)VBgLHOSYrNv zPI_nr>^e)o2&-F=d$&OrT=N@aID{Gp*xsX|nCA?zAE5&UsbZ2Rt(HFULlTe3r`^|7 zOe|bnY~oir(}=I6+mOeg*{2sD~u=cJO*bZQu(+{F>V46ORBVl?`ph&A9I0F96BGI z=+K5`BC0Z^g#^2-Ah#og~nX!7Zw&D79 zaqtM8A0atcV-mQPhh2OE^2#l+?^7(h>xmZEpW|AZQ7zDq3O&wCvw#V^IsiTw^5Um z9B!@6$x#z>5GAoNULo`z1jV2o1bQj;_Uy*s0)VF z%i5g33t4x3%nqF;T7=j-kx9;{XyLfJ%$2MCc!;l?J?OaUQT7)A`H*x?9y70oFY-}U zK6*Zj)NMmW1CbbRz&KO!L9S#tVdYdH$jpim1;8}HeBa8yQm}CFYMEij+C--tuKsbA zXLEulw_6Uqrq*4Phm3H|3H-uimZ&vXK)cJ{@(igM-?~F$vQz!y%n~nGT|Kue)9Dum z`#Tbq+I6+!BX+9g$cv3U;5enV_Vl~MV)B#r(6RV!-D zk(q2OLkOiBC5($Z+lfum#tcpIZB;V{% z^p+8#bLADHP8gnuO>1i>h_0w{w)5b5yF^1(YW;!aMaSEzce>$G)R3~`Kgfz-E2+8G zoQV9fiEqP|pd3o>@`qH#?Ip%`!J+@lkU0^-Xc^b;O>f(a95h-7nKv6^sE{o?4Vfdv z0N5&xFjFeVG-DgH4ND(m%p73HUK_h}dC|Q#PCH~L|x@WB9Lp!1y&4oUU%j7{@+Y}?oivlDpROl8Uy=Q`StO5R1xkNOppa$ZAIy+BTpE?dHaYmD2 zZQlg8ev{g{8R)_b0Ok;u;td3KrR^FmJLwzzglgEjp8F$d_i*cWi)Mf^88AY^Lx5Kd zZJDYgO{7@xRktee;`xyDOW!8XE2p3q1v$&R{{ddVVf$pAz@zib+Cq1$58jOZ@*FWSx+G%Ac(S;mn4@I$2Js*W@V~z zh%GB~@cPZ>c7t`CC)~I_h*KTUL_Qf^<4YQOAfqyzpAsRi&;}6SV!8;Q~ZS6Xi$rgoX3g4*%sYrImt+uPK zwrjAXSx=+Zm4f=&PC?NV69^S;@eJhv{>sJ~8pbg=3Nw8amM@}AKE=){;KV{PN4?B= z)TRkKCWz~@1pCW^e}GZie2|X!L6x`Y*=n*b2bFeGyd<;@4!BH#Iyx=0aqsBK)O9O?tG1EmNs2A#p-?~D zolGiXOp}V^KTO89yUYqSQu+z^{{8#cF=zulpk0mw0x2ZDpqIiZmbEI`HPyMQ7XSbC zNQWouE*ac`@%5iYkMhTabtEk3PcGsRDJm4@0dXS`o zGJ>HAl#mVbw#R_#!YGoYSW~)-Qfna52Q1t5{c7^WO__?W?e8stG14}xgV?Z!S3@qb z?p!MO(RfS>zU@jP)veol$I(=00>`&2##3cdyBr( zXjACURMI30t|;|gG$Irsx|GFXuqOn=Q5TzK@!?~#B*)<2?nKQ--<1s(H7VW)gG8=5m8$nOy#(4V-l1SnKv zO0&%JcFdP9xGbi`j2mRz2CpIvfFGo!URrpJoyWL|NUIl1FK=fc9ZAD{doai4l0@ri zdyNL8_$rVPAkJ7MgI+Pr6JqxsM;#ar!uX!#;7qhbo{AbYu z%w~_Qo6(0w{3S^#Y6`QCqOvBO!QY90@ljmyco7Zu)j?V@G&#HOP)z}^^12L_rB;0q z@@j^C?o0j0)DgnplpM8wr4mc7@Mr+yS2iCT-i?xkVojDRF%)imKCm=}T`r=L7y!n(}>W~q}&a3T3?rXPE;D4VekzO}a!<{-_d&}9gnW$gV~ShDlph!4|# zKEs+75PqO*0OFec0dxobC4d!x2)&jN(2_zS`NfvazITUOCB9`PJ;Kao z{Ak#em9+|t39)Yi{eY%B3W`OAZkXH?H6o-MJkA>oLJiK&n2rjenT7ZTMdZj807vLK z7zQ6Kkvg!vL>{>tR=vnH%0FRqBv+q(Rqsk-GHMiqw*Ze7 zzX$1(j7CsyK`Mp+HK4_n>fZ|$bYzszNjfOh$2JO$+SLV(y?VZ!(*a+u!Ijk!p>jiS>nD+Ezc@&q`E(-5o}7@nR}`2 z;mp0%vZqsZ_UJsDquP>`4Lr5Cg1wOGNN+Om*Fx}uq9oHJxoO0G#0C0>FtMMp!H;UU z_b05)b4t5HlO=5~xe;of<8cg~?kgSVC>9o@D=zjAnuSH4^h)VP5Ft@f>`Si&eL{8) z!3o=(QTT-eK93$&Qk?vpT}oVlg=TaS7)obeLX^vEN>+l4cZf(i_}r!0zYWbnWfYFS zAnYoIe3Sh5aXIl{$%*$-O;|9Id8vGlh{=qoXaVyv3wi`Snxumh8A>!tT^o{~^EpTs zAcmI}x)ric=2!_(d|Q7_tP~HXEx*H5f~T(MR7-SlKKi z?AqQP(l$hd=&l5Qk)8JG6_bf6)%=F1vKP&MR%5e}MG~W{9$D3!wX4wc1bd*qk-UKf z3+U;MO9uz7!@o=39~MKn4sY>n6wpXvhx($^0P{vbdqXGGWJ<{rvx#1RLd{cQ7su~1 zI;07UwYvy5iM-*}vff^otP&+1`(W zZruy8s~-8xODngw3UVVOC!S&I`I&y1z9lxsE}IB#qIxp%_@-7nh4cDs^rN zx|pq#hDPG60vQjj$%HG2on^}jnJ-iw6DyHjH48PiuRjq$1cwX%DD zL&0eHo5T^2yo4+&ERpQC2#^m$!+RtX)qH#Rv(t?fls5ks3hFboAI=`YT^G<7F@l67 zU4PoQud6f>o5xTZe!6ewnLa(9OWTxdgjArm`%t@#f#@rv?o`PwX83V}OZy!3jvGTC zJzH!tB1btbJ$(3nHJNZ%og(yvyc__V?1$xHC;^GEs>D^r9&1@zs4_6JfiFq~UX&R( zL!e`vMP`gLKw+M03!nfs%GTIMuC@>yqOBhyp|tjMYHLE3k|->tN=&0-&UVJsAoNW^ zh6Ms5weXuBFh8#{?sf%ES&5tlXtX4eI1)Q%9i3wZes{UbX;y=m+;Fu-yP*zb)09A+ zT-_n4HFciEof7pEhK*!wOF6w;(8J>B>a^_d;QZf{M@!FG1zk59p7PaDmSj3i_a&d; zoR&O{krnoZDw;G3_i7hDg~jsu6!UQxh?f&9_0W95IrwG@jYKH0IbD7#s+mxPsR-x_ zr>q)$Vmhn;#0%^g5g)-v@vOCBIPLd|q|^LZo}An8pJy3)!Vinwml-oQr3hn?BWN?X zgl=9SSEbm4LzyNY<`GToLzJ9o8&y=ud-Le3@yZQrg}UlsIvUhCMEmIb*?*UeUXGn0 z6`{9q0jkj>s%-&4tP8EUrvTWCz4E?Q*Wrey$*sCFHTRIY=-RHOBm62xM1IX_J18>< zvIjZ`BoX2*mxW9u;w)|S#PN%Fupd%yB;Xt8DI3DOQ^Y$sGb7A~EpqrQ1d^47V9?p% z!NK9Q?Kcrtn}~9IrA-6%Bafu_73`7V$dDMHgIEU}N@l(oXcXg_sbK=fa6KHJ@bC!<;C){*&YF+zPbAmDl!8D{rCMM^`Ch|{;j^`QLMdX-O z(w#~9xg?t&-)8q*9VOV+8Ru1VlBha~&%QFs{FvgG0T`HL-S+@pG~0?xD3R8_~1~ zRUuE}DRfh(K#v25#}p&4Az9C5Z>=E=rS*0+K(cndp%E1XH?E{AE;l+nyrG$`M4>IZ z(kGANV;DT}g-DzEdkRQTmdg~nIFa^0vOfvqa*<;$AU9h4wHUh$QG}Q}CGoqo?eHzT zE3ovhiBa8%=qn-`zm{MNk|+{D?NNJ@`ze>G_up^jJk>Dm_4Gn2L3t8c7@87RP-`r8 z$g$*ldVz2G38O~J*(A;+9a9immik9%S#SX1q-Dv$O6Ye}@Q4U5Q|9$raN}z{BSUrd zL&;7|V|F>-F3xFU)XCYBymWH5*Fmo(;_8I)ZeMC->2R-D#u&N2C|R7pzItb7vCBr z@dv?7uC^%ou~au(3@uw^p=fq#%k~%`th5A3`#ZTz#VnnqlFtBVE`DI7)YErRLEp=A zKGjig=R7!0Yc~!+uJ?J;G8SjMpEL{dCTh!{Q;K-(_hBehk90z)KCSP#GGR7peiKC$ ztnTbwN|C}~v+9a+adRWUsg+qVWn6O#>6XeDlXKQF{*IRejjb=7n2X)Tx zae0i_QFZwnYyB%VC*a1o$)L2`RdaBgp^1DRatHEBJ0_OUz}yPXk;W#qjM_{QZDp03 z6wP@WQa1h-ja!ADt=3_5qG%V8vI)vjoM^cg#cACV96e@QgVk#|`j*nhli6A#^PuUX zH)IteSbByfXGZm{8DaxaZWUArQZwOp4u+*CGW=j}QMSG<+tV|?c3Df}BXL_FVFyjG$ANhbMCI6Sbk$D{0%qj6_XeboOOKlQ2 z4X~gn$8&^vseBrS;Q?G7R6}?cz4M5$VA`MOfbS(hy1}Pq19;-ZS+{*JdL`4cAk3r~ zuLhODw(d76zGn137{u08Y&u6RIXqR*psgjnma%SjK~Z*h1(!HfZHbUlE$?e|OHlkE zcR`3ZM?LuVPC7hzg#%V|N=4*z;`y-5Shc}oMZ;tGy~@hUIx${e&SfvSdD+?MPuI6} z1$Gq&wMNs+6PN}13Gn}p`_ zh({?hNYiC+Qf3XvaA;@&hp@iGI*|tjjl(uYrJAC=#mkcfBkUFlRc1q3wmykk7N!!A zN`l1DahAI}n9c;7IRa9FyoY8JYb&VpkryBIiPMWhP^CREX05NKF0qOPvDiX6RBV^p zyoI*{9(Uww=V_gwWQ}z1po){eMGTYp zKi&o(;9ZEd_85!;rHYEnjePY<(Q21*3?ylRcbDjn6Yr2hHMSU)94tvexRMnAf%925 z`@|QZ;ZPNonIdKZe~{nlgOZ+Wp#qir8AgwW8;E}1(rS|Cs*=UzYNaf>Mporla*-6e z58}6Cb)flajeR(73ILxgZKw{qW3OeO*~^y@KN@2-XZ}>s@Y!YwxV_tUdRL%7y-Y#U zEjR^PSSo4eXmb`++%_YN*I746@Iou6hy>!D9&%R(Z~J<;pFbP7NX#b@D^0RAJvei7 z`Os9CZ1q3X%ieSNa-Y0sZw!y9OJgVwFg8)a+y zh9W7lcmVP&Bi?;v+r2Dv-&1*=W|hdCI~G;jCwN7F%E6M@O$Gt9K?%kGAv z8D%u=0tFKyj}eI^wh*+A%VtLMJT(iG-61<@M#z6%YDQCs`$f0o*ljW0bcbE5;Zv8R ze8Y8$;=>;rrKaODOku3V)P3p`o*DiQ6WC4Sj#;*zall5AdLL&%o!aIA6i>0xjm1-R zT&&$tZr2MXn6P9LTrwnMQ&AZnk0LxgFpET-IranH4vq)Q`}=gZxMF*|%uMOafSWj` z5x(GEZmYW3Yht-bWRC|frS_EXqo|L!k!<*}07Xrx(xZ=J6&IH)E3_!dea;Dc{$yq` z`&OaQ&UW!a&=)5MkH9{E@FfdaiS0x2L(^(EtyISM6zL?sQp;K{R?X~?=2VBUCNEBy zkDgAb_@K6lnl(M-=QH4R@m0uJ7TUui0z%qK`&_9@mkxT29q1R|zW05rVWsOf*;|aj zjjB5Ut{$D+sFjL}1?v2=_H`67C9mme!0&=ZnwSH{#2)3_P0ggiU~pe|Pl>rFWZ$*y+YLscSrxozST zPdjO!P^zu215*%)n=K1#kSi=(I_93P{b z75L*{=&M+6*^-1$+WJ4TV}ta6WK%#edUooF)uqnA-SkJ={<#gfBFMcz9)to4IJRgc ziBki|r@FBZJNU`h>+E%M*dXl>JX-(Ra3~x#^J;%ecxnjzm(N0(q%=0Pj1{Ya3vrSl zUF5s*JS6`iNh><%y$3pj-_BUhiYMt{X`kvLW;?jw+)zb#pOe(n{iZ_Q;)~c!Rz2k( zReEyc4@g>+dVs9|2_zqHnnA}*xq%5B64j=)8_Tm$s5%S$A6jCPnMLP1j-b5d8MN)t zoSsn#Y1f+dNi(L>7%Wj&$I`tws9yXJr^yMEKw=#%uPIV%VihrI=V#>n zF#`f-4mpR>*qmRs&15*+;C+pLg!MrgJ2+6CKxJ%5jNS^^IA$?0#Y=TM8Nl-rl}ON% ztOa$IGIZ!WSDD4^86RW$T^m*s%L|LLgLxlKrHVN^4E_)#P8!LJ%O((t&_QuDnG? z;aulL{=U`gFfRmYNPm}g#Eu-)L+y~4pw(PK@i#S0ZI`Ic(Lo;Uwj~FN3T!n%k+8X& z-XGY!Lw5Mg2Fx^+i3_w7op?2DC`}Hmu)z*Bt%BOFBaXZA6(LaJA0SHv*$cATq6t*? zl`Dh>du?0TuLTS^k7jQ!0M9fGY2|ZL5d4NS1-{571zvQ(sTeoG)q^FFWzT67uBebE z6|Bfd;*dRSg=&CF8xtmwixpCr5+!S~9k`l`6jArkw<)q2&g?~cvHZ8_oJUxt%=VPHd=h>Qo(TT&9b_ng z(M4Lp+2Z1Npu|bpqiqx%mRIgpD#rX2ln(Q!2zGF2a&||IT5xUllEKx9fHn^FO39P( z8YU^V`|75Gl0-k4uEIagxFi@-iynML}nOdZJCJaX5K8_bf4Y?L` z(dXu4kolOk5L?XuMiw3PygZ7$nh^Hvliw$RF^60@^+E>4?=Ivfpy?`>e=gc~BgYYo zD;ycbLDPO(!x9VYIe|ynyHFarvKXV3Ej`$@o{#}^Q!de{om7Obk_28{+ zOc25Lcl~VhgpQk6h1$BF^8mazLLt;ZE_BE8x@HKwPY6AJ31cb7f(-k553g&f7AC9M!W zm`*S-orp$Ok#uFG0Zg*U_ZNomRM|rRn5WUuOQ6l>stv5*y75c8i`)%yO&FP^I{|#g z&{+l`$852p*FyqmPJK0eIf1+3yg25tyegQGy*PH1W6~xjgo?9~?TWlj-l?mm4wJhP z%tA&>2)RS8WVe8G;^rTaM^MeGchavze$5JJfBijM_Jyqp;g$Iht$1k<4e z;P86iCUTusK_!y*KUD2@C=K9)U=NOzVh&2|rgKW59MhsCPXSe~ofGJ55tx=dg;NNa zI9(BcER*c&*Qu5(sg<&KMipJAFgjvlMJyx*UArn&in|vYkrh8O+hK zjFqL4{5cs44{-vA;YgV{#i!VYUd=tv67`G*wJoBCxL>*udsGO za~4c5Dy=a3Nfv+Ioq$k5F8q)O=#GnUQxRiE{p5$(tL0$m3}u@0{O0#b(T|C<*VfK7 zf2x=Q?Ix<7Y}p(lo;-+5zK{%l9tP1*Qf$T+&TTL*h9F7nT*kR=L^1u+MyoZ?J;x6Y-DV&|J`zwcoJ->d{WPjn|eq6q+&fKTsp<8tYQ?RP8} z);S(2_Fq!!tuJzq9EVGhys*KWv9pArPWxk>Ez7NU zqic+hxMa+T;hKxIL%P4T&PBSBu|Uvnd6Vp>0T4b0H-x9&G(b+B=Ku#n4ucs_MDHskiXXFSi8v$Q@|twmz<_vSNLdToLF5U~`L zM)z7Vz{rt$REjy$!Px_)PjSoJ>fQdnY%P1pnCI}hkK){J~KCBHtv! z1gDd)XYPgYDePcS84uKh4lfORzLh#W0++kT40W#Yq8q(%y$LNK(ND7);r8?dN>Zd$=HsZx)Y8cMv}1s=(NRyfl{QUxtaH zHtSglBA3=f9Vbd>;&s=z8iq^^y#GWJ-KT5)dfEw^ExFlrM*%>5iPPy)z2RpD9_gSXM_~&x`xW5#@ z%?%U24SeVLz$zQTqb6dI>v#OfIbf$~Se|qkIqh<;6aS|+W@|8WAQil21S(Vchmt?j zN>D+5^V{o+p`xPVKy? zgCUV$qPm%WC)L4PB<-Np6Fl6R(pjeGH2Gnu%S*??JQdtZg^+RU#P=!~?5hvh4gkm2d zmFY}0lH4C@cFUfaFap|b6bE8DzVJ@U^_Hu8R+`Ik6YE`z58hQoi@T=@b!U?C=&s4Ccl`mn;O9bsN!M<*^r}QZw)8l%f=tRQQkk^JN>-P#b(L4Z=th z**%ZUHmc|M7(UGCP|7$Qe2q)O~>dVw+4uW4(*oI7>*hZ#zc;jAMBwy5xhozA# zKBa1b&McQ;0lUY--k|>@V9Ltw@RZoOy5O|7hUHwjrm$Kpo6 z^h4Ch6kX=NA~0*#Gk^|4i;?xxOdk*Cw2Ar%S?HdWy&7Z1e6Wf~IUW zMhCZy;DOkUM6u!Z4+n3cauhL+$K{8lD0%-in1ZFDaswg=&#j}Q2gzmOJovPB;zij} z6KfBO(&XHWlk4sDwZhiGq>{0}t6~3G9?UB}%H-$iI{nRo>k;Y z`5Y5*gIv^@E)LOb&L3B^fNcOaiA>@^RrE)*c{!RyLhI=E{9j|E@`eTJmoV0t{TXu4 z*omS}dcn>4w2Q(_G`W*Ou5f0T0*QDeP9wC=FpZ8rO@YfW>Ga!&sbJ^jQb6?jAjqH( z#iH}`T;Tsg`KG#1zM3;O%2(C{`O54L{flS&U)0$V`*$B?TR65m2_E$8FW9R6W`dnE^aNK8}ot{A5~W zry$ef;3TR!@h7>m*dlic)$x}OEEuPGVK|#*0D8bXn>vb5DWWod^D!LkJq@SEK7%9> zq;;Um%K9SHwiw_EOe4MJ89p)21r;wvOq`=pQ93)@Q_JP>;LM_C-vq~rz5q> zd7qhew%SCyGWyNrQ%CEyFgyNM-Y ztu|QSL)y-yv3Xl2n>C8rmfirYZm}INx>)YD;wZ&TeEZ8s(EXa#L;XsG3%(f6-T*l8B0%zt8D~4AO%9l4HmFfsF!M4$REnABAlYJNDU~I(UCV=P zRFvotcI;d+TAg(G9u7N>*bPDvG~n4H#rR|D&0M*VGUsN~pUz^Io7&nGD| zQd%KcO;&2#GxR^iGy-bs(SybFY(Ifa0;-gD_;u?$qA$YR=ogV|JoX~U3yhPQ4U=Z| z^H&K&WN37xJT>dzLGdLPT97v`biAcX%T9&0^wtD6=jE^~*|{3rM@__{MIi3L2*6YV zg_efectMZ-Pft;0z)IRf?(?K251haXPv)UcdQ4Utx+Z|Ic1A|0JlvkiLhdnZ&pv`? zs~@JF<&6jOe9I3nbo61LN=7b z6WIbNHKfqD-eBY&C0w;q9G3n;g3lHC=6q)^_8BZY76sDl}1SD1=K@ZLjTH8@WIUi%Y zm{sL)fKFsg9gLhGBs5FsZpc8_21e$hm(@I-TQawt$&D83Y(P-uTc0~CQ}F^ODm*(gg!fx zVQyD~gDXk(Jk`?99StO=u+0Gun>>bx3)lQ034z8=Jb)(o)ddfD+65*VqtfPz;9RTA zk@jg0k-qE$pqtgAe>|60JgU(~0*MPM=+sM+RKn{-aisw|N=h^+!@%}Z@Bdh^`T%Kl zUOJ?(@i!S~5YXChsY79xp}_-tqKyTMoiPb%8cr5Go7n_tBCblCYz^o(Iao=nY6N=Q*dU}y5k_J^E*&S&<-7E@qnp zgt-$K6|za#-5R$>BWKL|B0tUiI37e?F^i-DwI_nK!N$fi$B=Fd+N)r%6?W7>$^!bD zV0LKZAP|FfOG*8ch7Hyy?9p5HaEzYrkQ)D(VsxX?>_XceuXUz};L2M!WN=9c8~pz< z_9oy}mFN2R3Zsfjaj4b-ETX7Xu})Y;qercZwH)LDST4YUrC+9>Fu zN+lkx($FP40&t~ zcvwHOY{N)#?-NJ~>)jc&l%@|zCd5#Wl(9W`q$#~gxlX}mC4alu5L=eJ7@QC!4dS<8 zf^Sp(aTWpb!V_V3$2Zd*cYb}VS8@CZZPfs1}>L1GdZ2G`{vmCSc1Pcf35FqoDnP#evRq zRnJWeq751MnlnYJL~P!%HrsAg`Kw&JQLoRfaF29`wD>CLAQ^)~#+YtPAbJuv_&0nw zQAZl;EP%(u5Ez*POcJ&4!X0wfTp$m>hZ?)+#Cy%}E@I5jRZRy?DT(iA^&>q5w-zk? z0a^2k@JH5sguDGjW7r^9c4zBIbvZ;z*(n$0_d7Td-CO}_4~a)RE`etsnY0&dqlTSW z32<(UZ=(0R->#OCfRLVy^wp=}r)_#$;lk=emmZ#*A&O-B8 zQ_bwln4m_TC#qOp`8j2Z@Nr5-fsGy1-*ifdvzH$6SiwR6 zFKEog|32uunuY@$N4M}mnH8gdSi3_`h`>f7#X5C=B^u=2i(RrByiee68HeSSUufMO zQ&DsxT%b)>h#vI_9N<02;Wa{v%j;J9|7bT9F5+<=*E_gnwpCv1>7(gLQ(*BY+50K`*Fd;Wh;6k2c}Yn<5al#9R9yN|9w}|K=Y<;rg&;Te)EKO4L_)D5_Ez zrV_CKi;&rqw(Ey_rpMJ`4=?8+R%(WjBhp5$I+5_1q;40u0w*cK_V5y+ z%bz$tYH|>)O>8m8oNjaoK~|JXtRur~ zdHSyz*ARiBY&NTmv`~F`suFqiAJ^>s|7s>Y$*g-oQtw$f4B$SLc9^BKU z>-f0Wz&mXsnW|)i8yAt|Ls~kJ?FoqbyCs!?)%ClFXZo@~oJ#hKCF>mZA8{h+f^nM8 zY0i7?TzZj7O1F+TOpNStl1GVV*|X$Mj999o6a+{CQW5+)J&^D3Qiu4dA_e=1LnF)puTM9S_>k zIdG@8FUZSQLZCzrijx0v+M|we{E#Vfo@@OT3;GzJMSsv%l5DD-KB1L&_wQ7el~Qq% z`rPwkQF2v#>}QH#XVeX7e`<+p%?#wG<;e#tf3GnGI88-&3RxQvFBdcz^&=5mKZ(7= zYvakxgE9+YAt+iMwxnlc8E6bV^lKbUavn{dOH@hFk07MdJab` zyTNP{iD=6n@`4epU1JfZ__1ZjYf`MX_6|!QK}*p@=W-~!%Q?323zE`$U`-9l$3Il; zJRvy0N#KaP=r3C{H0?%2{%!F32Z#c+@=DG!+Uw3EPYKtP2#b^au#ziV;s&xTbU~PTb zZ@er+CQO-I+zm6f-$Ztaw|2}B9_nhV@5ZBOztLVeT5h)bnkt6e>=^(f1y6mdVMp$J`Dsk&WB`N5{|G58!Lt zXH*2j^K)tEC)@Vo*KY&VSTuj$ypmP`sw_o!Yckg!b&hx$;*HM%am|ycHCGAl&MzEi zHv`diB0Xt1)}h0j&Mcb7pp8yOqI#sow93{S<&Y$vOZzA`8^%n96h``s!aBS(z`%H2 z>!~3n$qqco24JCDn=8Vz?MviBp>Mhg`N*YgITc`US+bCxO{*P|;4-uiHx(cnHytOU z)yATml%3`m{zkP~`!f2nT+-;+-Rn9t0XTjNN$VPbv0JN@4QczXJFbgSP_T6?5Yl-C zB!YvLT&?5m_zugKEn6od_;kaW-@JQ5MK+yNzdL66gusgX8KhRaU}I?qm;Vs)jnqTa zlcRdI+4Njid&Ij~8;QYB@rn#yuYo&a_oZ;mYgO zE=9TExB52=C|ag<{5(m5J3p!Lf47{L7l?;NhH8cf{iULTfxqn4JgFCC$5k&!@)Wpz z$%#-1ZsVA&xk5CGU;hxq$K9$c6h>Y?-Fgmt(OXCA!9tZ@`6t)mLH?1S_G_ZxrXQ(0)t@8NS zbZ9ux-IAi7nho%c(cJ7G;@|2|S&pPE9qCDFx72Ls*asTb(;CDivU`7={(mB>UWefd zA~UTMt?slvAHQ*xv({`WXUaf~+t8)BlFiU^b1Jf)(gh%_1Cb%rf1THt^<*AA>)IHN zMlXB!ufILEF^&XTfqZJ;C8=i#a9)~^5(}*1sF;O^aB~zP4tC*6)MwzOWuL9dh3~+M`07iA)w@5vq#Vw$nD0yBT zzShBv05mE-^>Xs1Sw1#0^o}bsr>m^9uW6kMm+>-ohwXDAX>=}jFLU~PLpC2*|8Kdh z@!Tjk-oaX`Bks2q70b&qr>1(YySxoGPsr$p(-O1U37;{4Dfg6|@0QzNMQjU~v9?vX z5`G>2tI{CEku>OgHx(;jiXVyj#4(iiF`gpYD5!JZFjqTEcgtmQYd6GX-rlIEBsE$d zysvOt3ru150yFEfy?qk-HCtdGZW7T+5cNDqZ1cH%cI~7*(QAzL zywNp-r)O+7kx~L&k8@}v~;l3h+Fk9m&kdT+)g9R=yPKgRP;Tn zXHWe0%u7$6SNcEfyL_+NDar)6%q2Nw1cJLEwziYc?EF)p$hfsP>m%GUZDT6_p@c`%BNF9nly> z3wsoi&i!|^LKfgwR6p(fFQ%3KoOU)rb*u0aX0DV4FE_~xmKPteT8_k% ztf>0r4XS3U5e-(x1g{I+dyvP!0wsvpA`*NK*vjFCWyu@u2FJugyO)V8{luQB-fmJ*oUc#nM(O?W3JU zz|Y4sQ)b=9f3c-sW@120bs0Baqf$y2fSf9P=0XgtX?ZG5ES?mmIMjl&>1dP^l}hTi8kM$r9t@n?m( z5lZ=c*+@y1Ydq2LQ0!7PvG{*zqUBhqD@b({^H5=Hwg{! z))k>jO(zeY@b_tQk0AI(OpsnQi*F_?ql~U{Q|Bjd+dP*Pg!$8a)~Vj$QC)w2<%dJp zX)S5^9w~{v^@#`efnnJmuAPG)iT+}sa0??yE=1k z+k5gBD=(LE-Pw0)iyGOITc5aPc4Nc+g}+O$}%@~78w#}PyhY)P|qGTPcC@G;m$mW@r2dVX4rT2 zs_D(j`$WsOw(uS4=2yh!Ut-P2S=0U0JzKK&;L5jzw3%uLW1M0e?WWTT4K$7w=K4m9 z%5%&$MO$Knj&TtQM-v3jP9Q*};NewQXm=W{=P+&)xye)f>lrl}5Iv<@3tJa2mG56CFoj~&CF*nDy${QC5Z{ z!S+Ssgx6&46y@r`l*y=jBlvyNbGNQV>bL!I@J;jnt9N-gXx-UY4_Z@(g$Hmi?1spA z2_P^=7HY2qhbLgPn0@;Ae%QkFdR-nr&j~Y|SpCJSv4?konv5|xr|;h}P_}xNN<^xg zssyS@BW`9^qq2Pg!w<`+7w?Oy=Je16U?aA zxvgrW%3~xi4qNX{ah*UTI=-5dQ!me7mHYjQ{IQ2b=)`v;dUu$p@k9*_5VM3Z)5uTg z_5_si@U_PcpS%l%)M31Q^)ce4`rxjkRouGcs2`ktHbqey7=HfpyjlQ|CL2xwn^a;F zFFCim25oHw{@Hp(?+z;?2A%-Gju9+r#t1l*qtUVT;~>{#hwy3mk<1lXx>wap!qmts zCqPq!&bU$<22V)Uw{TeR$p#^;LOJ{oms6E>zA29ReCs z>MSsSYwTZZy2T`@}vk&z*})aZl~B35*Hio!CEBWxe&%w|}Im z6lo$%G~(6!#fU`Uqj}?{M1aL=o+>5Gw>$j%pb;YffAK}BM$Ai8m((yIJw>=e6e8+5 z*Q+-}XxJMS$kX1opyg(M0_gBK5Z%;Q@$ki?9=i33Kg>Bu<#16^+;LQaEVDui$Ycs9 zYl?{YW!SUsBCmX4AEW3c6l8+93iA$Dthn$X@{rf~ejcP45sttE%^$#?;$q|3-Cejp7oS znU+Z#Evly=dcoomUNtL}56_+d;mCW`Vz=QNH#fpxSs>DVP8a)^6zc`BEni77%kP`^w0NPzsyF=CXZtf{zei)@{N74u7g6SgDO0GWA2@^ZMQ?K3+5Y+H*tqi0fM$FIy$cmkP_Stok3_(j{W+@?c z=2i9)ggBb|U9spP-RNTeV2v z0$D3pPIr<23iFoaT%dA|XEh1jZO+x>;~#T5J>(ZiAmXdavz2nwXC3%g|6z1f>@8S+`SXc56CIxKkT2NGP#q+ngv5gRi6MhzPs6#OZw-k#3$uYrK!ggoUDrI>n^!N(@Um3 zt~V8gP)NFno{C@m=F$Lt8Dp1F*~K1@B25*GjW-<1S_!TQ<()@qaX@!{hGRFflwK>n ziuQ;%1xh;RiQ}n#)vzu~vJVHBdFeFyTh`D5t@VEoj7mB;xGRYi8*Lh?+_uaW1Pp>O z&l&Tp&s;fg+{WUol*EgtNbPP1CM?QJzVvU5$u~%rYt*SUy`Tlql)=I#$iiO|jz0lt zSphv{d{&&WAT)Ly7_J~}frd&0#Y(QyT#McjkW_7*5RQ^1kOkJqc4^!&QOIFJXdWR@ zYz&?>`Bs^5b#N1gqt(cqUJCrp{qf;t-e0h8GBzv?-~-XSDVp@{709iH&|RllyOc5@ zCJOK6=jx*<$w)WJ1^V_xxRa~i$Yn{|tVle1$Sd*(lb<}NCNAK{g2@|>9m8qq(~Y3F zo+c(ta#ZmGM7@#ODJ{$YBAB&6o`fq#A$D4*sfhD%?qz*tNKz*K+#{CB3iwnFA?jGC zLKWoRy`-N10(Tt&<3UqhJ9AhNpV+lh+e6bun5pf zrlxg>lgMa#hjxtp5mnb9rA4AkTiRg16LuW8MQEb6muzEMJbiY{u3SoXNFF)N z7m_>0S8-HaTQR${(VWMjo^@EH-5*BMqC-{y%^!yhARU9o4s?;h9>5$Qi@Zb}(NjcT zuFO5p>FrUc&LubL?6TfIsxqfPZWyHYOP+$_OkE)fF#Xb80KckS0gYu{vTw$ZBoM7| z!{BCX#;AtG_o6g7u%o=2^XroIn_LJlFNm7D1Q6;h;oJ{|Z0ASfWfY|xZH-VNQBWsD z%DkjscK2kL7z1e5XrHatE7;r^VJ`Cke3;|Im)NN(t|E{LJbQ0L3SR1w)AL_M`0}XE zka~#q*Pu>swK{Jn09B5L?zJ!lFKZB?wCp`uU@i{dpXYBM%5ABd-o9(|+`aI!FW;#l z5+zwFA`usL8zew=Sq1ngC9!fy%q0evELR*!-Af#&n2t>_+!WZ(n!+d0gT|t3Jr;@^ z4X*C}7E-usbV2UAJ@&)@)={-t$2aN(T?a_qIx=!oqYa!{>AB20I6++Nb}fdYMn})? zY7y(lEe>u3c-E*w#6cEliD(&NsXM7^>q+r9k6V#*3BH}Yf=vH8;$)rue3FRpbTmIeh5r@C^ zqqELBOO$Ss4)-}Z`*M;}izF~T?R>zh+dG;@E6SJVy0PuTMu11-9_h(ZH_hm?qLHNn z&<*YP^5f6#dpTrtYKsZV)*MzgNhqDdb?JAM16D>seaDT|vS|S%`K5#q5X;y+2cSW- zH+b}F6SUQr>e-EL{h=J@V@?;7^Q}+NtH7MzfT+xK>QXvar$i_k_ZP;q>rH;@dWvxq73@NAxPol2xIthYK(j1Bt zZ@QqOnq!^R^}re?z)-pPX8Bdi&s|5)xpvTrmvwk*&JUxg=+4Cl3~0dA2DV6hD)$1m z$?){O)xaNbi(sgUYv7`%d2sA*lx~y)*DzHws3decI==-DH{M|Sxft@GPfSce(N=<% zBKImqfrMI=&YB?@t|)td^kGy?0DU5Yp+>V^gg=)ExqFK-_hiv%gK~~MCq_6bR|!#^ z71G|5L1Bu}*bIqU_XYLk`_OOp$2o4BT_6z1G)pL#=g&gGQ3mefBE#% zWr6(I2ljy!P~qISdRT-&E6Z6i$@B@&9<%RCoj24VQ!&X$LqWCZ40*D$;2E8tDP_{+zZruquIcGZQAB%-)(OI+49CRYRdWe}{_ib0b3_{?yb=Z))wA28MNMC{u1>p?C}PLc)}T|hwFo&f!r<`-SgPOK(7us1G z5+9jaNRbPTpuD^!v>_7%Giy(AFbv^Z1O;yDSNz{cp;M3g7&W@_*wa_6Uj3Yv8-M2v zSZ-a^KioQsn8$fZ)`y^OhhofiJhuY&8+CHQuE!mP+=|ctc@wj!>r0gx@?`20o(;a$ zLrPkUW00P)6u2OBCm7|TddTlQ$6_-r(sv)73wpjMv7GR&T(xRuglHb1A?}XYPsa1- z&6A`V|DFC=IV#1x+BN!JqHa?fSjp@26JE@QAE!*DtB0A{Mk-(bVx3WsWV_^wTE}9U z?fCSiBu|>oQ80H*-G@#v8clG(^TTU|F!;51IVqRbj7g<>O@w^8l6zC@D@LGiB?oaN&=WrFcYG+4? zGN|nuR_0F7ck)`xZ;ilu1wt%jenW&>6_tJTxXz_|eG-WuSg57xSf|YvmFP50Dw$as z`4?n8TPl45Q4dMpy|_#+R3|#iShJeVdbR)&Py(s3m0#?+^4x`*&H5iNw=8ENS^jUh z?HXrJo#o>Yrk>`B0sOSG$}E_rolUA0fZy_zefYV$t&tswfe(YrRw%WsFK-x1{qX`c zD+9}g{k&v?okohod^`u{)`D7cF^PxqqXj&J!OYo$R-25weX_$o()ZeDW!n!)A9;aS z@yi%3k{NfmCJ2A{p~;0pAS~G8rBl{w(&I;lGi2WiA!f-1k#}<6i^_9}G>7(X|B%kk zJIsAm8D>|Aq2d zs?YGlu;Ua_w~UwD;@fdf`AN;z`+Gb>PHFhEhNh81H<*bsO@CrtBS~a07hG4k{-X2O ze>d-V38D1$F*!9=9Fd`6^mbhr6n%Y3(UNY!j#i`D5G}k0{Wsx;oqbLd5*gmYQBc3x z8zpfGr;Dq|HQImtKGNqy$h*5eF{|R)iKebfRH}bbX>)5b`YE@J=ivoX?BJPd z{%TqDmLjR{g@7MHWQRGmZ+dw9G`s_9|!>d5yYWTwl ztHCLElknaI?l`}uap^^EPtUr0n1nPwisD0X7ckG%blVCr#>FD53CpjJeJOj9qWW`( zY7h-S*MxHy1BI3-qORFGzJxw6SF89C!XynelLe|vQ-dugHAb@_Z4~^wBMm!>r&toj zHS#=C;9bw|n732zcK`REpa1FecCO2Wq^$IzNb6ZvEqYA@1Tk-c#kc((1&ug5o6(Pw zSi{f^ugzciS{os=fLtoxd4NKG5irGF{dQmhe0sFk#buULTX}cq?^2)lrrP_nIqSkB z+(nYjJN2rcvEYjtGt1nB)Ky#VbjfWTOV{vs`-P(CR(^gZi#2UP$-yL>Sqx9FEV6*C zm@)r5d@pd;9SLoy1#$19ny1clyhW@5U^IMBjLUd1vor~B>?y7LS!ZNumjdVRT-Gfr6@GmYKK5<9+mQ!f`V0y%x0LZbpJ-|Z2Tg$RyAWxOO-x2zevzMrN|vc zEL7Hg>nciDtt;CoQuWtz!_Nv2g7hq>w_iliTb}{fQT_E;(c;`5b(`AWRe!c}{?U;f z!W_HDl7~NySKMMLnQm?>498`j_m}|^e^hYP!B)G7lJPYZq-aT1!UQ4YeWOkYY7R

{hTTV&2|-#lmeR^-=aVc+;Y0%t2_$~sx%#+4!h403sxkqA3)%h|Wf@@fyS zxI1m^L=;_DoH?j{4_t^w+iHztBrPhO*JhcjqVl@@l0Y3IcXta9*7ELlK^6Unbn)*})sEDfr`x-|8elx%@2bFz7ZUsBzX+Bp_7xe4ygG@=RfzTv&cyGCX(M_+Mi-n5sCqJJzvziA?GaryM14yxzo%CDsL5D~2X-t|tj z*??@Oka6FuYHIhl5!Cv5t^EEIRnOd0M*r{2xSD{U(C*TEoKYn^!*8>CcF@y{q+kOg zWU|9~H_r6it&trCcI9g}6HOPi&xKZ8oGTODA3-L%G~>YZ{HGQv!3{MQeiT`8NkHE9 z`L&hNX8Z2(#zMB(_^0OR039$9Qm60>gcxEgZAgI5XdO(6GSiQ};G9YJ8>3=QTirUf zc?TyDWub@4$#yj7x6D9~92mVK4~%|)iKb~Ut?A%b%FJb5vwo1{)7BvbbOHIz@S6Gd z58+u8pi(CrA-6fy>ub35)}qY{AG+32J4(`zZEQgJcw|}S=N5IUgQbg~!e8d^$?)Iu zrcr|`>j3S*C!_9&8_$O9zBI2pWU=N`RKH)^(YeK%8VsKl4dFpcg@{VpEs|d@%}T=$ z(WMSt?hxw$yKtGl6GZkt64;0mWi3^|kk!QuC0LToEZhq#ePx%z$E*VA1!q@|AG`JV zn471KgdqXdr$VB*ABrdfkhYF2`TMk)OTd}nlCA#w%GyUA8l`h9L8gi$Ef-V>fJneG zo!#3Hi%A`lBTgz@68RG-@1ISSwLRKvK$b~iR>wLA2zwhl)_Q62M?>!U$!axIe`lg# zdQHts3wuuF#fsLTGz%gpm&qpKiAX7APUBQ>?%1GD&I|{U;DX@ly~M}kL*XI30R@eM zvo%09d<@Vp`mx7Ezb+Nemink^NGBGT7ikif^`|itN8ULvzDi7pjGPk_PMJ>vzIyei z&(A+XJqK^ksNUE4_nI1=bqAj&qH!@a2i)&9i5``#K})5Lcm4xO`u@Ao@&n}z2?C)7 zgVqExo8T2?x%3>Fb2*XKN&=r=QM}~X!1IimbfQEwe^HDjwoml3+z~XR&9bcaG3EF@ z;g2~(^{SWA&cIYz6`p>;pko8ML5| zJ~b>oTpj*q>R!P$I9qNAC5vw~Eyq>Wis<&96^p~(0XIUZCHoHPwiVnv1P&3nTGDcC zZzG_ynNUi;^E;CKY`4#l_0Ka;SaIfC{e)A~!=0L|02eed~u-`!^{^k^J8 zF!-;uo4ifWv~>@Uze><qDvy}H1!8?MA>R5#F`7UrM@k3watL1}2zqEW zs&bkb0#0~&l!uXRP-}rw`anXPibg20c=+Bhwv?1G0( zBdTYgbIw|f9TcCS<9%k#9xCdIim)AbZE0I9d3}Cm=N?H?Bcsi#Pjx*?@B6yNo`;A- zVtJ{Yr$X3D4Dm(FJbtM#2Xcu6kwlJPUD8*1Pr=Cywq!bXHa!7#RaT9cYo}&1@}0ZF zk*gS>32AYZC>f+OCZ3LReb`JzifYc2HhKXz(7)X?+ia znCQX1*blwh9Y_6fjwaGlrg>l=2q#%h#baLXQ-yR#$rrwBGn~DZ@=|m({L!=W%O#IL&Vx+o9*5r3h&il%vf+D7oPWDTe+}W zJZZkrf<>XIJarXq7dP&0Aa(tPIU3~gr7`~0Vd-(I)>IbOkapObg<{DmEPavj^h}Jk~B19ZD+&Mv1 zq@>F?m@Q~wl48svai7Xgn(ah)Z2flPYjlq1X}Y$^MX{pPtM;GB`#YOTMz!|mLO!A) zWim0F{z-p)ga{HD_;dU1f+?#M-du5fxmXs(sV2)V^aL`}Hh5Sezd z@0Qyjv5y7z-yI9-p&_B|`l)ioWzM#7=^dkH|81z$gy^eqbyU@i5@}jaoo&I#8>kIKr2ylk8lp3n!?b(UypIuOHRzAsSXKdA#D`%SAr`Kp2ik?Fd#w^jk1DY%_T zH5a3n=5-egYhSeL|MrgFeu=C!=Yk~(s1v$h4o#0D*RKG zV|w0#>$9K37Cg5X|MPpI2pu?A%FYOPlSpt_e(~Xz`~Wo3%va(P#GBPji!xcpS;bU| z1pTvWj=N2L8oGoB1#7RdksO!qWez8I{!J5wYI4nnbDzF58^664#cT!WPQj{*pBmcl z!!t&J)Wqigvaq>hMn%krA4mvtWO84MrdSGKq`>SEAa*)iCKc8wbNRRGfQT@Xi=hCu z^@oBNg;^xb*cn%Pm@(Gex#Cxrp7)yv>h#VRcVbi^>f#2eXTkQS5~f^t-E|jtlF*De zT>9chwH}DC3V~8U7QuMs{|zjZV7Cro(X}Q*Gz+PXypxR@m}#s~?*{QIqgOONRPpjVgxtFHzVTt;kv*;=6| zI{l2t)&F%Bm{o{t2>8^!apUpY6bqraU5}Bz7mBawUFKD(lnbx0P_=qSU+?_Ja@|oc zq5anK{<067ttZhM4?0mcf6$3gV##hidq^K?hbN8)cggI_ZpZE$WvfU=-Bq;XuG)=I zHy7rr1o>m@$EuNK`}I}3V@xWkJw21oA{};uI+h8F+6Scv@?QW5WefHggvnpL5mUfM z9Lt96z@-{-W>?+$;gthC;;>anX90Glgd!hH3m&mGXPN!L>x&#upiM!TV?Pl-*;mnK zDpv{teQf!z6+b*EkVi@fk-85dY6L804A>w+x;5Nfv)a{>GW)TvQ%%Jy_;TwIW2Cq5 z*zt(|Dl>;)mN1nhh`Se}b^+sm$*yR# z1SKT8ViG!f7two$w7a$<>& zjM5t31}j;qXA!lACkTknHw=OeKg0h#wpYt#T9~mTOc1NLj=bd7D@J!zYY;tW%{9k6 zU-`hL11E?3aZOW;Ubc1;_F~t`nh=w=gn|XJIa=9s*k%KJFCS?b4zh)Pg{r3HEByH_yloT$-qfsrIWMbLQ_P z_7Ns)zgf>)gt_4C=dDllYxr%@OY7gBM(2fQv={Z(yzdxt59F z{ROx9x|El+^m>KNY_`7V#HfEDmk;Te%O%yWH~qsd#+01uBK(vu?H3C7>^bht1Q#o` zTLvOQS=RBAc&Pj3)n7ip;3S?ExA9+31KLrlFlN%2%xj5M=rC0?$|FjDABq#}R&w$2 zs=1;14|FAHsYG$T+vZtrQ0C2r*O`d949u|@IBKmY6h6@+fTiFgh4PAp0Nk7R)X%QKYb zYKVrhPa55{%J6et625vw2RUpcc>0}&cc<~!^j?C=6JWUy;64%Q>clklxJm6ja>ro@EwIQE47*zte0qmVUcivIrGjLq#n~qj-u;zcBhxlo4yX?*s^14 zbgbDM+OxETj43wam2|bA()F^ygTsl17OQSlp6Y-3z=yr;lKFujC_@BN)_W}HeuI;; z#?a?FaZk>5My2M&)w!$~jPitN`b?-dM!e4##s^v5U>k3C2Loau{NL@158x+=rb^52 zRJL2E5MZNo84uq-uoGQIvK1cYZpjY6&C|hhim-KPfW9_L%CWG7!){S^lQ%`()=UKt>~@dp094;3;K3id_xRQG|PI2(A3W+(}mzX>U%7RXHI9_c_4w++H z5g_V*fpg{!OvGs|bsJkYJtGHJ##lWJ!z-kbjkD0y_9Uf)9DrroTPnG#U0(D3T_UgD0;m+Og=0@Tkd2hBV7$$`z^BbprE7-Dp__<`xpSKSwdj-bkT)^tkbO zxv2CW9ypN^6&nbs!jJU8f$86AKv%8@&|sVpi4{aa7SbMrhjVU)7Q$}DHKRKJ?1|&w zyyM2G0kpt7Np5sa`co3zF^uADs|U*Q3C5FO|MX~HYQgk<;Fze=%zp_AAFqaZ34?Q;L6!a>M>#Y8CaS8zSR7$-N? z*mgX^XFeWuV&}`{gU>#5=qQmf*Y5BZ%OiK`mh;*&*9kjIh%4(obB6Z-np1N}`L2jw zv4GjPM@ZU>j1ne0N$+qzceUCq>OICebrlk zdV%$~1_xg&iD|C?i$Wu1{XvU}A><-L9rD6zKISA4muO$zHkn1sXIDJJoTx1qrtj~b zuFmM8{RF!Go#=>AhifgE*{+Jj#%nPHc2!T;W~U`0Xqv=%^y!I1bp$t-r&oWI2cuVn z@`whqiwOS4apMlQ*;I z)TN`{ouV?$6e>{b(<^m-9i6Tqh}Y18fo#RS1Z_Rrg(|=h5tA*_4}jroNQd zqNt%p@b16BpC<)m-=+47gTlWl5t=JNI~_^xTg8`ODig;9&`3G)vTCx4${Ox=7=6|{ zG1y~gG;ZUi`SY(_epl4oAOv7XyCmU%IK@wufi#m6J+7qC*bp~2tgowc8y}q!&La@W zb7Ey4;38lMmNJDTP)471(LoU)8E?mFzruURxX;|V`5~oqhO8@7#wZxL<&KJVbbLff z52+$9?%c=6gKBp~N?YekeBxZ34vJkAKRX(*5EqYPm3eKOpwAceT$BZW zKK*ZPaJR$Hh=QU7`@H?8qBm2IlHer7q98%hKoY!V?%cUu7pgg>V4=EGWGQ?yUeMlL zOr}kVJi^APS%XR(DLVnZx++j{ggZv#Vg7lb*k9Gp`Y8>UQO=46-oeE9Z?YrbTX^9V_bdj2f}Ni6u{ z3%P>JehFXmW7yxZ+{UMvl)SSxw|K=k=5{U9D|C`v3PGdtlX_I&q(sF+BtKpdFB^N! zPk2?5uF(r*g^M+DLuT^It(PVdDxZ&z&tIPZfT|(quT!F3qk(g$`KfG%e*R@qcF_GNwaU_Sc+^NtIf}AqNv!AJ?5NHe zidNX%0ADNMx0#j7bZ1Lf%CBqtd4nKZN`sfHSz>gNeX|fImq@z<7|@qpvS44A9zC9< zy*{quHV}@DFH1$c;x-ydL18DxOAqEsmnGAhH~qGY;iR4smadAxwa~Zddw(Ir&}C-c~mgbvjwpxh^3OGu>Mk!E@M@g}7HVzvE~qHRB!hp|J`1Pk--E6fk~Ca<}!EICS%wz`p{2H2bO zpp86h6qxEX^GvMm#;KIhh{)JYaA1m};>m~nW!V(>y@563T03^Jc?3{esIIw7pex&6 z!VqSi+5Qi@EPJJ@*L>&x+KeW_zPCKFNoqcbjDxbvAp z@|?V%SRv3pC}P&_MST#3lZZi6;oFIF;#Aye*}}y5mZAW7V#DH z96igQ3fVWcf%t%dp!~!{y9zZ6u3~yg<0h!?Bk)Jc=cSFNq&O#VwRK@f4=&i z=L1)GZL-3Tlwam_u5LWK_K{sW6}x-TmcX*4Kh>95sFKHqlpKn}Xnv$uOAr36tYi6o zwEXvC8#&bR%()WI2I$s_2?O6ktCw1m>b$c0R4IhJ)ogW4klhyl)BRFvwpK%QqXJ{f z5oE7z*vZF$Q`oV=8^IGQGo5-Y`z?7#o&7B*(IjARb!*b3i1$(DckdSXWml`x2Op2m zmhI=C`lw2^x&OSK;Rm~ZVj~*L|C=ncv$d74S8v(0;FJhc;giek6uPTh$154eFH|XG z1mAZ+u|D|?OtZvt4=<4}X%_YS1-5;@HDO73iYmPP z;-jge9PPaP#QBZPxt}Eq5g<$NK%bVYND^pfa;e9)K7l z_t=pg*-ZK#JHnaDd=?aH!pGt!3}_Q+c#a8++-uj1z1ID4@I5Dm*O0u?8uZLG+z$eJ z=GI4Noyyp(ICx%L_^!{T#!0`aNJWY}^8kMT4T@I_U)Q55a#HY)E~WlK!XY)?>#TEr zvlNzRg#acA56;`4+@42EICk5$W2wA@N@;$v*RJm;b(!Qjl4!g={)bXIQtF`yqC}+XjsP{%=rIykWx9HqY5Q3@w#N5_m@AqZvLS` z;r1H}-$YO{vvg3{BV%7BNF)eAvp)YBNh3;c0Zb?FvLxXddKZp^Yig_vLS=&n0`L1~ z{z;CF3We<#SEED63Pl?GVvBoaZb!38Uy(0puJY+Ke-xR3img*G0Mauu>{--$&n zj}@&MQug_fW;ZXyN!s`&TCZzGvqjwtN285z-th7$Z;TM9xAseSSQtB^$@1xpM3)0?67Cx-41o$- z8+(P{xBAB0$?K=1A2YZK*Yw?aeINs-D{LRj=zGkr)}Yg4^{M4TYZ}e|#vi zEyU2Bb2+t0c*;|=(I?>-Rt$Dh4Os=E-LJUv10TN4@%_Y+g6n z(L|!-Z!JkZs<%9PBJO4cEhlWijE!yVCy~HQZ&0N*|3JCG6&~r`(t}ll&)2s^5XqHX zvdc039hRHnI$=@*gTrNuEuN0U;g+ND+lDbwC{6!eOF@X>2e~3^rm|Vj{HJO6Vg&>& z`Z|j{9#^GMynJoXQ*x?B_*$cF*!#u8p&(I!D1|3WO>iZ28b9g3BakwqksxIH5|d$- z0((8lA@H{64ndw8sEMMH0nRSyS~Z(>*)Go1rKZ^FSH5u1$C@a)Z-dir9V`dABdlEE zV|vDb?)el$*yZju?`XF$S_3IqJZi~?2#oIdsA&fx8OZCa-Y-F%MJp8^?LZhg90x%P zN)ZG_1I|`DHypevH%9urBBx)5N5-KWfmGN9wey~irx8wjK97j*fUJclGa2aN@Dw5) zhpypu1Gm3e@p*c&7RP`f*zl?9?rkU4_fBS`=nI|_47eo6jCA49{55Q@Q1+^;6MAREjvrsyZyBk;*GZ9IHUNxpE8P z01q7w)5e@Ve#=n^H$UNrST|hY*6}TJWJbWsj0WQ;b;w>$xUd^hG!KcYUK93Znw0kU z!1l&>w8&zt%v+l!={J;YC@%9JT0IrXXX~B?QBAll??t0d!7c=HUG=ENBdiklw4jZP zT*_fQK;VuUjn5@s_hBF`2#Vp?i?W;Q$KPB~41;^>e$10P(z;G$ZrA$Mt5~@%9^Vxn z{r;2ZE~NlPynN(>HAnJis&8%$%I)_5%*`ya1E=n9PlPGrh`N&)7_-dt32;Q>JMaT+ zY(cbhxD=!h+(f#4RC;@9wgvCJ0XdXVNhAtJb5&7n zs*$-7JxvWkYmTArIpkSRM%tS{{Fp^=OgRkU)SBNzyJPze6l3%LXbGg5T~__jL&V0H z@56EYaOU8HsR{mHWOxls zlaXp5Yd>JZGXpx1S;xcZ>Lz$}lj~9Kz-(QgZo{~+BI-nldj9Q2{$tkpD!s|97e56x zH?RzqTeg0(^n8Xp;QpkhBVLSF-~~j*BwY4kr~Fsl%+f6*4)5~j9Ty)&5}}v?M^Ya? zMwF>(y^!6rI1cl_yrvSqLGj6c^U6zta2c9lpLC2*X?$Q~`CwI61^fTs?)RKPgQX_R zSlUuA3;(RT0L?(6JUEgu!^QBcs@w&AHk0Gq9lXSj6R#FOKE32Sek;AEp4)jGmH$;K z7IGM8*u#9Z{uC>ji9PjH@=h z<3bc*X8$ZJ*zPtIgcDxgQBt|1PN zZKfYS+i3!4Rj)a6!FR180szel?;ykYTw^r|zFPQH{NBl|a*Qzu|z|h65nTy|2${)6|hhFr+cn;(xsI zVDK1VkfH`!k$}JTBOMg2-VKL$@n}7iL@ctZr|Ct){n!rXoNLb8*w^hu0Na^1^XonW z^*nJrh1MuYue-Os@17^5yvg-5{=7-GV{LuY`o4va3rWL!vuHQ;+V!7mO?86eC#cA* zP-)9Fbw{)%sl_5Ddk9|i!S{T5O-q%)sZ(6$d|)5-oRLV0;=k{fGxPm(jFJYKuPWL2 zWa|)g5ag#NYW5uy&>9B$s95CZiEOcWgl^zM%Z3db8e!^bJ|YXH+0~|9@vb+bsLB67 zU?E%D(Esu0yi3t48}On&S|=~b)qAB~a^{t+#g2wK%{^=1d;>+BlL^66s^WQSSzh(RXRLv8ht68*(Q@$=-85e;`#{VI&vH^ReoMb zK9Zd2GLo1cI&2N3IRxV2=2aG-D*i!PAAz%zjMQV6Ln_wZN?b=pw%mYZ63+=|DL1<4 zAbmYb9cAVxV$u^1ZNR9Ju9I*&A`+3j?y3T?5HBPwT8B&(W#n^FLBGfAr|wTs!_1Y= zH~}Q=6WIssp+dIm@ifFnpAp0A=e--1*if(8@Zak2 z6F!DE{RDIeitV<#X$+0g*dc{|~7I77R>!1KL9O?s-D*|NP#!|1nfT93v1- z(jN_bgkXiDxBG??a0Els88U{><4u@@p8qxht-Arc;`d%9(4R&EpUBuMxzZe>SDM~GS8c;o{qz#U577$*hztEm$qg9t_`7q*{|43l8o_}P zpE9P=%nj0#7q4c}ZyX$A8Tk)T|ZtVQW7~=Hn zb^A;l1Im@GXhVPF2C0h98b4uH%}(k$xu%N_xvJ`U@5U;Ks?3yk1f69kIh!ruv(d@s z2~%68;_!|O(XSCyLeEt*Mmk3iHT+@OA)2u+81<0IM%CB2FXL^JUbgaQo;fx^j@{W6 z4gwesM1a)NM#609)tqv|gz9+MLBSo~?I3vNN&!|iZ%6;4)y%wSRb;od|L#oHn+fc$t^ru)Ev@{0gM{^`)gO@JtO0d*LD3 z1F*c!l{7bT#lwJ&MMFR`>j!f<_%Rhh{sU8cF3_$C7NQOi-HOAmF*{lxt(R3+%@~1m z5RHDMP+P^Xb>`IKvZ$zZ#iO9vVE&Cvc%DHEpHw~o?f|JPv%r!BWy}gKZ&STx zfq7~y40dq7`O3#x@6Q8=`O`*58)k!Vu?D1vU4+vzHsy}CA@IT&vp7a!9;#_ zq|F~*f)3(Gy=uy@MBQsnGkw|eLSJ!p)rI*_>$l1LGNJS-mbDv)&5_Y zpcG}Pk2BSC%<(L~=#`%we>!7*)YD_QlA8;pZo>mjK0}GCS{v+QhJ+gCaKKchX3J&i z)3~JX`Hv7y%7ANcgUbZp>b5ch{i+jLj*bE_%@Gp)w|XoD*MIfT7ai2S53LgH?_~5m ztuIdYsd-}ff9Q#cqSluWzPq=~s5Umx`vsRh%>;4HN!!Gu%07B;_*7ppF~&T4N|Lm_W>$L+U! zZN#806m1=21>8142N084K>Q25rany_ZmMeiuxJsvM{$`xt)|nLjrY`BX@!77M{A?M zS9=)~;bQMyEhlT!5B5R6FC5+U^ru3{{Y;J#qfZjl`qu2+X_^hwf4A0VR^c=Z`ou)gfeI9p6JDn$7uRfLT7KQ z(Wq{k)_hyb$`;5LE!~|8Uf;2AA$PVtx+RjYs*lck=&a@Fs!d9b^C>R#$&H_}Q zrxwjyvBCeN8|onjbL0)JTC2$>xPFdR2g!2%_2WRgmuWwb>D%fA(|n+Z^&3M*qGpER za@4ENPU=~_kI#QH{NApA(LRlwvCB@WB7pL47&SO>=ie%Rcu@Eg!2)9W zXU5NI)4~Hyy+`OSp&L75h6qvH_De45rWjCS_9B9+k!ie;~N4bA45vI)sU>zjX5 z-~7`ki=6(Lu)>XxJa5!Cr4`chsDGY`Sun?2+)Q1e)9ljZH6Y>Ijs zwTN0fTF^8MDt02pT{v*E2&3^kGyOmZ?fm*yZG5>FcU4QHlQc^Bk#lH_v!I3z*SyZh)aHs~vNJct@87uS6AxJv zDk$|3g{TgmkCCG^eJ~;W%T!VfeR25$T7C9+t*dIAXeJNRo3d;IN9>ls>|zBib=jFO zT2DzEhr@{S%ho=tAq;Y?F$--{DeQdfr8o_eN9Rz|PiQ_@Hg$lZ1)31}?nPrn+(OWz z{!!htrQ#TMdPY5a^s;qu&BG~Vf(egieRsiE?{2LhF(cKDYhtixR_dts-2TG-jYXR& zdE#0r%VPkB+9y+oNbaLH+30XDVL(qnt6}_4(g*#lZ z?A$<=Gc}tNwshcz@3S3|SX`wAldP*J*o}%0(RQtM(#tS`QY{%eUS%Rxd@TIAv@xfY zyz86sXcu)kKJCWYT`M-Y%&5r*4tfF)!ti$jyY}+#wzX9JY)0yU%iT7o4$%(gREkJ? zB0o^V*vNw-HBi}be<+Br($++iT9m|RCZrz99%9jE7;a!Mx~XXUP0mGR=Iap9;q8OG z_7V?f#>+f24qV#x7U$`)a3d9hujUlEE}EL6Q1r<8e>+lB!E~lHzDIr6EE0o-rai9T z+Y9~64R}yu!?^@GYDOBIYoIy~-m`}|&kh69(|^$eOBaf>L9<;GldiaHTxrYn zR0#)I4o z5WPUa>d~WvhINIRbuONcZ_%$e=vvWOT6HWQ7SQu(P0%#iloD$14j4ofa0MBrq5W{G zwY3+pnpN_@L*}Yv#q@iA>Qs*V?9s|i$CeA+6o?JLA&w3mBL?5WKTJ*6qZERr zfeNEq?HYZZZN6&7hD*eXm6&7XaNt~sd_8ajM!L`2rS&o=TNx`J-e=+v@qE=SKL4x5 zCJedOy~7^u6&FGH9pl)sfwV>JPSIvzc~|rJd$D5hau>B33>&7i9jGDN^sv&CBN`;0 zS1L&pg;ONT;cFRFyM2r-HAC7Yw6*WbZeMxx^$eezq~wzD^B2J9<0`*%j8C$wtRp+} z+46ga4c|4V2m>xT^lIwZFa&Cb4*mrPJ^uFfF9vmpE%SJClK2f-@w@`i5|SD$KNAi~ zJ`Qg>vuIkXd$iG-t)=&XctU9^qP4(rZ*){RmP_^DJ~C_>DRB)Ku6jK^9T(4yrL3>U zm<9AU((=>664!cZTR&pvN-nuTXZx3$FQl-le&?U-OonQ903Nz6tA23bhO_H7q)CLpe}~Oahd(J< zXmgm~t7VtR5_O3sy^YbpCsDNg=l4YFA#JC4M&X{RSkT<98g+4sD46Apuc|lsWjuGB z1+!b4+(e3pX@{{FPIsqbmrdu$(~tpirxwk5Lq}CD3Zcr9Sb%#^;-+ysH)LE#RKughbxswow zJz8}tETnhwdEBqD^|+#`9>yXJ@C}ZE^7JNCrsCUC`Mcgb#7bR|nDZm9`pSvU=-Rkc;?tVjm3;@n1<7>YL7{bcIA-gFKj zqs)`C0Gg^S^9X8_r>;v)jS-aS9UMTlK2swwBua%m34!uoS;mBMnvp7^ptxhr{m+}u zp&syXrwe93re3?Ie_mSngi`XX9c5)FJm?$;2DEciRbkoouU3pCosdd^KD)z<@|Z%m zg@4OysK+R}EK(}^dieZ0nBtScTQ+DC`U^o%wt-vO&y0GZj}e8B-W!LHrcfeub-VW= zC9h|K4!Bw5_wYV6PtUG;POR|Uuj9_!|2hkxB@09$6@FHuK3eWRkZ!i@9-!qNUqw;< z(0+5SRn81LS(N#(<&QjWNQy}EUb8O2)D4!xK(KU>N!1GqKq}XlSF@*@h<~8$Uwnt) z@>Tt#0PYx#chi~PbdHp4)UU7RuoIsB*^yw?%XW-UO;;7I$o!{&RQYCb>8Brlq5;2W z%@95KcSyJo-*D6L`*4$#bKv|`;5i0((Qc)4PbF7ZQ>>JdN;7oCopqKfb&p<6Far~~ zr**J+l|L5*7#CY$Zy+g>9FbJGwpQ}q4Luis@!>3uKNHA9!adXY+}I%N;o`7vaZA8nvcd@SZl5piS{dSBd$WVgD;FYZKVBEj1S$yZPb zymu{OCX47`gabtqGtjo`aH5p(DpWvL>PDne;wFo%=9Zm9v1>?Rp=M?Zxv(+bz5 zo*}KQsl8F9?gPEM9yTVt;(?=wm3c=IYbKd$K`KpscGq&QC9)KzsZQe6@sb@ZrT>< z_Y5DQY^ZsAp;YELEvi3+G31aJQL9KUuS*jz^nXvQA4n2B1KsbPIH4*Oh12K*q(YVy`BHCZ zKaXE;-(IoCZ{_sw^q}O?EA*n;@}xmJVD#I1ggyLayaWn~^mByq0)qWLZ^ z<>><0GT$n6b>PUc)sOIQe1&zKxl-G%H7AIYCM0Imc`I0$EK1mwe^hcbSXI34A$`In z$HvJzYDOvZh2*npk!c+-zRLpGfdCNcMuwXq4|I@mDVorvQ&>nn9ZHRtf;!L0+WLkA z>lf;Tjo-usnSsB`F5kULVt;pGM2dWu#CYK0PR(e{*%slts7sNL4|E?r=`rP!ikT}> zAGvq5d#ZPBP0<^d_k{q}pf6AdT&lm90I?lo(#6m(D|A&_h zNsDfTz47VH*Yf6k?TPmF?UTLfzw z0AwsKi%*$r+FC}fxq-mi*`Cz=FVGt#&k=9y>)m>nYv_9aw|FFebic3bXp>8APOFnA z9FrB^?kC07wQZrRjOqr!TN!@H)Z!7kF#&YPg~m};v5>owB`+P9MN|8vRKb1k}>%KM_F<02a4A72u3tkHKb}JrX z16<~bj^V&|Oh!8@`uDL{rE=0}1Wij8Al1CRj-a1Pf32so7~rPr_wc&Q*0v-I5P#Hf zqO%r|>BS^SFUTa|tjwgLkGfBMssSrlVi5P%w<}xs)$6tv`7yN@HeS(V?mM`+gKcen zy&DY22|F{QwDib{@wVMo-S|Vd>H>*yj#4$n*1x)vP0YyB%7+_J-( z5f~nJ$a*Syj>KS%RGRqr$tp2UeBcM@*8HFJatdn|a_~%j1N}`cN3K$vcDsz~*7V={ z&HsD9#^~ExV`{~D&#-!RmpTziuIHTa46Z42f9H$BA4+tpGn>-q^NjvC_B)}u5Sd{N z4v`>QLvg9H_+MGUcJ=BF`RmRR@`6ReOa})f=Ogu}7B9J@UEUo#T57JJA=8A8_3_fu z-kx^CGLf9IhG+e^MwzXu=ZcJGsF8^Zk5D}da03qwOe}ui?zTbE3;)R;Iv`A=u~t^L zJYLyyPS(rs-qy>1V{q$|!H3t4TCibM@l`km!YEZ2NNgNr!FOwxV{yUvyhS(lWHh}v zQ)|7(=$3GrR%re~67Z@eyE9)84j<*8WJ{Zh+N^GX-nC$I1VVsS)qD~0w_`Lo{CaQ+ z5Yv>c2K036b+b-B)!Z8YG4&^O2@}B9m8Hb-^^W(k)=QG?qql=ZinpWkE3CoThAv|R zJ3?T<*kAQuy9XGh$x5!l=K5ZUz5DT|qujxfgDRd|7B%mxfjc)vG2D?4n%td=+R%1K z!@F5O_Ycx)T&+nRKd|A{q;;)d?XLN?>v$`om6rCMGmWbR^t5*Fe$PKILeT}B`<6<= zr2(Zc4OnN>=@noe2n90@IS7x|*YGV7CCw#B43pr>Ui35263&P!zQkSIp}D%v57jmw zKwCs=y6hEVj)$RulSB=-CmDyW8w|hoR^-z5`tJH2W&P16;jp%M{owxdA5F~RYg=BO z67jk>7QSv}23nIUJp+K4y{imoQ{{zDhB{NOA=+d-lVhl?4W>Ey(cb(_UjWU_3Hoz7 zvvZvs%-Y!z_%JKz_q5Hi-TikZYzL3I?Y5qwMl+5gbJ`8)QsbYs8ro&vn1^Wsu?I4) z-7t*i3iL6>n2UPt{CDo`=Tk3gCA`w>ht+NyhOyJeDz#L!o~;Y75%;&2ecy$AM}C%4 zL0mdKk#oO#%jVSwPQJR2xyI+QL+5vZK*>cj!h!#h;>- z2WCT(YYetFMd_R256j)aA-xlSy_uQo3+_w2`gBG9h@kLQ*D*GGPS7nAE5nw`jh#yf zA_07Mw0YwwVMLNQC#SqN{i)!y$R^-@UZ#Z|%k;%Wmb^B%^jv#DW$Q03`<2914A2p{ zB6&F%D#|5x-6on4R)x`7g}cAle{o!R+{>riq^o>6cSfz8|Jlj{orZyvOvm?s^daPu z*qTnG2h;lb=<2DH^D`b~@|i_VXX4tS?ONEuOy48!n*>q4q$Lq9z4pp=v#8li#R+%vq5`;opvxtPr~yip?vL?~X+kmwc$ALS{H zJ$F?@x+#^q2!lp+S5oEZ!@J-!1leOHp_XsgQqiXKy6c1_*}-dh+DBg%b!Z${vUhRM z?WgKAtDKRQU7@YJ5GQx2V_Q?XBa!W6%Jhm5J6$m5&J;@2QEE`@2A*MR+ZmqBABRlD zDG`i2k}6we2UomyxhvGIgSW94hW28@TE|a#W60f?pjvn#^>^HwnQKo6%}=N%JKJ27 zAe~}yUF&#G*Gac2^=0~6x%i3X!RQfJPYe%481>>{uCXt9vgts&X_m~9!wr-M&6K>~ zyvx_};lSYUPjmV?f!}OPt%@2AoNy$Wp#7OyiG}az)wD|x9xoRwz^SOppKFvoxieRi zb>c_I2A^eFc)Uy&8|0`+tK%RS`i_P)X`s~hk*O{VRdeaLwe}0I0?xI<~i`uj>;{dKOfWuCN0 zfp6h!&iw)GXgqA*+WXhWUdl**@mOG6o*D3}e1#ROSK};%r|_KY8K;1s)C@;+(Yqio znb(w_i!^eKCdyZ)jr{@IBG(0|;FfwJBfFBb4~OSHMff)hOa2ON+~|!L$f*A7pJq3H zO#6)=V6UvH$$mxa&Z_X7@S1iy-T9_)nA3!ELGF|(=11X?5~Q8ojQklwU;CxruaiTf z^t%%I@S6OZ5R8FqS%AcsNR!X(v`{fvn8!<}UXa4*H783UlQ&b!6ckRy! z?j<;X-Z}R*?WWh>MN=H@7QU+1VV7J+@qj@nA$~W+iJwME%vA z=>M~?I3xFpe}HGE^?QEB>SLtBbM@Zx@a^Gi4jqnLBP2JvB>k=(Tb;4|72pNs=0DSG z_bqzBA81%!`a|b%WHp*=zr=H`&8>gC)pH}S21-EG5=>VUU~0&VIIb- z0NZLGKH#~U(r>E-cpXulSas%YoLPFddK1XZ3J{tntp2q;^^lgB)*T+7`eJyz-n**X zLNz`!N0EI?e^}A_Rz-vQgCBz!nZ-%JAvG6$aK%d_Tk5yd4oTIXWFBz;4TTTp#5k7d zwMCm)UTS&*ukfiXD;#?Ee;S59)9)9nN9Tqz`{* z;Xj>f>Q;xX>i-^Ke`^sA7`g&s2f!X#Vh9M-d{m|-ilsO6(q=g&3K9w?E-#(G{00Q* z3-;^zxfA*!xw!HKKjL?ymsD-EEEJcNf!>gM6;S~qH<9*L#a?o~7-&y_i~jw*)$7jl z!sh1NM!Uh+>bDK=&N!6JxtborY%r?g1;t-K(`y;iOBj)qzBjwJBBRh>+|aY>a08q~ zu7GnC2~NUL5bns*=7h1}1kN$oxNwwtHRft&`sJHe>8XHz>f(wW#oc-9)21k>=}KXPL>C2-5dw!O#^Y?s@2f&qlhc zXe)a{dse(*72!U4*H;;cuX+k33^ygm>rlN``@@{|o3r*K&y?_MIqGkRwi9Pc4@4_D zu>0Ghk$|@t!LV!%U{f%dU z_iCQhtB%n^h&d+OnvUaFmBcDbnwriU+jJIY4Rvt)?F-XnAgM>}WvEPea+}o8^lIqz zh75y_B!d@CrYpT(85V~s$m9Ae7WBbMF8=hxnQw~lV?Z9RS5aEwBE6Qu{t!sYySZrg zV{cp^wYF=w=KYrvZ!fFayyqfCi+0xQ)dRK!wWziOW5ehgB(^6mSHK${kuL-7H>cdd z9F05P=0N>6~N>SKZ3GVYPRO6skbdk^U3O7u>7t^uReU~Bd|zlnjLdg`3UMbdAZMgjs}!W z8$dZ*0W$?P&6^|4ca`g^eAThGNHfx&yY=ah2MN)l6bSr$y(dF~3K)uTUw=jr$h!0s zh^9Om5B^3()wh{xtqFgJwowP;l(m569Ac$Jrm?9s>4XW-&2|-r-;Y93$J6~E6x0eU z!8vbACgUP)IEU_>Ypz0XTEKy3?K)beWp(#yGvvER4P@oIb!x6OF>Z-8e6#o-e{6a< zlN4|Qt(9T#bFWr7NJ~EO%d0BZ#%3-MJhEn^q?>~xd=Khzyjlum2L4}r=N?^Ud8P3a z?xKR=g=!>Nj3Qbamlkp460}f^RwA}YM}(kOSdL(%Y6&EA0v094iiD1cDa4Vr#tI8m zSOnyDP@-Tl#*TJ?K@BoaVxc9(h!8kA-#owle&2UaBCCIN&06zMx)u$XbH2-d_q*SH zdG@oLKdWt-nAyl&P5Xvg0}l|%SS<%-`d94NCo3}E7#CQsVAh*O12L4x#@4E@Z0SHuVqvyDVBX)j1^TBg*#&lR@=d~iFMU7yqa4N{ zk=`y6#dvnf|&N z>o`YPMcZO?Pj0JM^Q`b}$xdKL5kubGRX&~+pc{X~fW8W_Zrl3FZHA9z5RY9YSO?qK z7iukR$`j5RYtqtxp7cT-lLDs&F2evVwYFBr7DjMd_YhN7zJ}`ER(R~f+2;`#a$e>Z z9Xz+WhC^*d#<42`Z?fgqfok|SMvUXTf0`JU+1LQffS}S{H!%T-dGcs=&{Ax}t>~qy z3u0gz`-JTGu0Rp_MWBefuF~n%B)%#}xZ;cql!XwMvL{n)$sH@H;cKv-(lqKArbI|Q z`hwQed`xuZ(+1cv(SjHM{S5U2%DZ2aQfM}b*sxP%OrOXk zp=y`OE@Ao7iWN4XZ8+QfBr~x=TWN|;?SBMz$c&Dh7RoAtZ*sRNZo`Q8pI%kSfn;X(aj^sr}8bG1Q2te^5uv(!#8N7^HaT3v{3 zrA0roWT}`vaMk4isIxG(o1ZztGsqnZOMJMY_=)^6HR0R3K6*r*U9lhlDBUz#s*Cb5 ztQ;B6BO8o9gqpv8FEQPsBtiwfAm$EIcybuFHVCdRAqXaF1le1^Wp@Y)gLOy@()gIj z-YJ?mY?TTI+7&Pq7efhf4`K139R&jF>8d(XuPhX(I8*EwU6xmYw5S=g5gM3Hdx3sJkIx^YOp>yU9(HIf2B8BzsKr*&z~DVE z1?p9d2Gy%}M%L$s=hVS6PbXPR;1xvFMhxgqSiPDkMQBYSwaPhUFoY{}IbqR663tje z7MdH9WbJ6VcGCK1;wp5o^h8{p#M3^0ysu!`3of}%Ve|3{Qr)5Wd{g!|zKjX`|PHe$>aP;Kh7 z6wtIoB4%Jm$#IP^3z!*CDxNge*R0#T`8I=?3l^+-WSU<@53cNv>!#=+=aY${+83EB z3Syy;e_og+E~P#O9>kUtw!#EO7K^Q}Kfeq_9)IZKj11x`xdVi)UwySeXOVI-jHwFP z7wLVbV;^u^bUosdb0bic=D|{g)Mx54xQ5g<(Q z#~}Zt_Bh2yfc>t5C$}W_p0)tjEP$;~DI^@j2%11ouk2Qr1Dt@~MQZ1Ed_CWLDvh>c znJ-%9)>Ys4=7AXdtY`GZ4u%41Cay%4hq)lLpus)`oV`9J!JfS6ur{k8_C!fhn~Aul zN6(&VyMDU7Lan#fi)e5Q3>1x0r?x_PlSrawTau1sFW-?g`RrM_zKq^Oy4={+dPgj3 zNjKyzU@-|bQhk@$2u|q$YoqEDjRn0l5BKh?So>=iGayxMjhsF~XZz&0?pdqV(G|VE z_!snRX(X!tx>LS7$D70=IqDYNLHQYdUxr8W<0eWfFhFSiT>`ofuRvirzv!i6_>ZQP z>1+ed2#A6z>N~spoxSF+6I=uWu)qwsb1G1anSJPA+z?wUZ&!#1eE<+Kfy?M_MrKtk4 zuhXCwH-<*IW;N)SsAZB_ot4e6S4tL_W;AxQnS)+8VwHmbSiD>{svJR`lKZ4R`_WBo=LkIJ$BT15pAZK=%z^y#Yb}i z`TvTp(sSI<>9f_PvaR7Sr!rjIuiljIuT%TFOja|QDc+>>)N_qB(FP@3_d#vTXSIzL zUuYOqF^g|~pT^;G>p(Y5$pynD^;6V;dr!3Gm<^A3h$pZ=3j0qxnK>~tBs%aqy1ce? z0ivsMKGhTlQN)%@Xjv6H)NiI1_lMdg%e$7jZmC{xGw@ON*Hz9oOC@cGFkkcG%H|Ey zx_#nuVs#|6N){yR&~bYKhNo$4Y&8Qv$FkQT(rNtkZh)!&S5MTS z(1Ea`ofy??<2^4SvI-Lg2Rox9d96r#vsPM=!c=2meqy>}7^%-TL?n4|KKTN2n0bd) z35pz8CN9U}r9oI#yD&^#^$e&Yz?vDf_to4A$%orDUDk8 zy&1K0ciN7(E(3%^U*p%$lfrgZM>dlI^LzxGZ-Xf51Nak8gzd?aK3{(Fnsqg{rmrz~F=BYcI}{=Z}3N|2C^=oJT2ffzY78990Z>(TQY3qk>t z=qz=^!1d+>H1r;VPg?(no_JfMp63ZWT2>(H3V#h`pzEiUD^p_*XV)CmCSu4WC;j#w3I-b0iHXybB(F^urQSL=C+caWbnek zsWIK3Lz7`oQ46XoTf`fZHM4@|7|n@j0*nL*ODs~GchpZ~zM}=ODM@o@$+eN1?KhBL z?igJ3V|1GF?P`UumWJ6;W3)7!e^S?xBaO=~rXwLSL`k2P3pHf(%Z|ejbQIl;=u-B| zzE{VfWMPvw&w|W8VvFRBA=0#O_`Tki!I|`PBMPBA&VMAmjsde23KRNyV^~y$xk%a) zw{pbc^;ojEZq&Wy>Y(`$cDQrkaApn}UF) zqhwOmmWHHQlg-1(?s1l@+q|f1bWtbopT&j~XtPtFN}4KhF>UGbzLpV(fR^NJ)h|g~ zf2el%=7qo19B7>>VHO=bZ=h*Ht>`M<_gptJ{%@|39JFRcv%*SL-d}A2(hc_MW!Q^J z-%k84xA{D0J0$=?fMGui#34H(Rm5d{tM;0+wAqX?3B+noUfWxSPMuY3ETIpmUr`~a z>-uMjSh0tZu7CC1-Y!Le0y0zB`Ez2dOpK`>acq8?JKm6He6C*@3 zUtgz*K!48(Of@L2ycJ=ydBr6~?=SgM^R&*f(YJo~NZw8ge8%_{#F`hhEo&wz9=Mu; zo%1YKgl!Ea-L74HZ1&lPq!Lkk?XOHJs#VKs`AcrS8gKPksB$&J)KaL~GGBN-Nmo)6l9dh) zEy+WcQ69&q{pT5x0-=OLNP4Aj>K$2{v&YSMXC$>Md>~HivfrU{CX;_!5bLQsSW$l( zV@p0*voRG8#9Dz(`R3K^WzpB~{T>96hKyDyzHs&@E8t5OYktZC1=8S5mU2lUgC z%;p&fBi^N9l?j)fm^ z;Cx$IX^$Em#5-7C{ne)D?(ANs@S94Db47Wr*0_(vAYs^px|U)OMmbp`QNg(=<5jiw z-6a=9$%z`-$!H<$|J>mE=YKO@DS(34mdqZgw++rQIYsfpvv+J)CxNnKo!UTjYoAU< ztw&d+aGz`LhzbMo(W;RGAy@Lifd6V(YV55IOH+s|Z6}dZDeOYw)OR>h^jI6^;S!B4 z=mwu_^Zr=NggK)6Hh<*R#Z`X0_q)V7$^)1|5K{v55vk>K1tRj~q^p=gyG4@4K-`Wx zYQ?kt(&Z5ebLyPBsT+k@X|A2@wCMsv#2cwEd?ymH>a993!rduLo3+4E(zxbzZBDZS zOl#iOaN*8H559yO2OOeV5SFWXk+zWHq@9cC^1K!acFHK~ISDCg8ThOP^7mgPv+)&X zq(dZPgb6A1F-BE$X@Bm^#JyQ3Kd$&NIw+~Jipw0Ro5DVAEsAz&9iR*(D;e?av);|? zy?^K(rkd(+ z+gRjkp{3FJk1>+HRBHWNO?fje3?-j_?^r)}ToVbB3K$MeC%3PT6!qJJ$s(#?M%ore z7?E9GJxCT7Mb~_es|_lTz*EH&dfG=eC}8}!BJmiV9m=>89T`apWf1Msh;OYd*mXKa z2%e6ILJhtCfirYQfphx;Awe9%Lv47vPIH0;Fi#O^?9G zinHX-8L%x%%*f;DOX3lxkGVX7;rQhwk-GNI=Rv_cxCfQTZy(Xedi3aln3NqZCYal{^47@nA-rB^T!u-wo>E>_nM?Isf6?XwNDI&`A+^jl$ChAGK-L~ z%R*z)P}+Pw0NG>XsO^C;y|BvdZc63NH+E9ww$l-PW@ zEUesC2qbjokGGrJ0=v-1E_CK>VBJuGG8SpB6bG1AXX16xsS$Haya#w()#Cg|rZRUl zuIqP{szem?2%Amuz@)C9dKW?qA|EnKN-TS?=qV}iQnuG8uunBGsR(Xn_jUE`X6~!t z4&Tsavw&tbG%s&>U)a)$Mj0X{r-D}fnXLxZdbc~93|(}5v&EY>d0@Pnd8y3HM4%wZ zfcGD($EUQaS4Z^ZqJwX zgbt)0I)%y{1qYdOMXQBnJ)=!xjRX;@u~w-R3#?b|KVcep%ZR~>&SZ<}ZWMAN4xoqu zCA|^b5g>fOhUl}QiGS9H#8C~c=C^z0MMvuA9Lc9Ft|8at0IalC0r9+^#>(8(By^u! z4z7&yhR5lJo-3Qk(nO_vxq?@?iVh?;`tbOzU+Iz4(3`guS-J$_{A|-f^BDpl z%rn58{4kr9ua=s`4HPUQulgA|yV@nb)>`uE)>Ao6dD> z07`%jns|Ltm4(A9d5v#5PCCquQDj$tYt}D>He{!V(1tvr2Fk$`g_x@$I{cp4Fv)PU z(*LgE4Q~j6G_mdSw=+6%QsVlJ8!xq|wj=_VHM76KP{~GR#BC}iY-1^wr{*W&jrv%A zmGbM++S}Dxnsd;*C`Y;wRl+{+{&Md%*@gGTb8~pxk;5H~EIt-u#A-$dLz}%b-9c*| zFw|I@8z4m$N%3O8;*!{qEW)bPGH!fJq5m5W^}Th`A$(lF@iMJO&{X?2{|a&o{ccV^ zF_jAC=SGyBXqc?DZ9Hdkzi3rWX-(TgA5ANqJjDJv+> zx6l7rN@1)j+6QLo#H%W~U0UMp7L9XR)i|$dZ{5nPrZvUpPEWl0M)*Y8KTbXo>4t|p zV`N7?z!L@6S!>tH7wbBvaLM#FC->;VF4u#JFXvAfX8UG%q55P^^)km7mS$RYH8P6N z^d%V2oocd0JXtTAQHZ-#1}y z7R7ze!RU=DO_X6SmoJ{47`(39`;ou|fZQTZsY1Cnj0lzLHe-J1fO8WcZ7*N$4fNH; zmjK!LKaca4KydEz@!swJt9$1$9HC z)CP)PnN)q%%S?aTykyu$8M6r(@gC-nLCRYcQpQg*S_`5wVmCZ#z$;G)Z~xaz@hR zsU3|$=;VZ%y)2O3_+eSjSR|!sYoF8!87`+Nfm)>eD*UUC*Q92slMCrx$ zdf`f>@OTvitI=nhK9$gxsp>1U(~sAzm5;c3T9X8sxDJ0jVrDTvj64dH9X|a{rGWIr z3w_IXURxD51K1Mvcb(obG1y)-c)P$US~EMj?V^jqRY_dB&z5z*J#PBGy7`<=EjY3d z=^=#+7y{zLhM0$ln}(ah{a2b|)Z_GD|c#npOM=B zhxbXn1Zaq(FC{v|9tVxu)>_{juI6rMtqE^mF*_G(X*Aq&80(Y+MV7_z+;$-HcENIZ z|CI8a;c|F)IVG8FO7dGKpUCCGUU`Fb34u-aefLbA`EMcT#%^Dqjc|y(RnU+P6IFV# z)MxmUAv&jXE9SYukld_9{*ZoYK5e zf#(+Jt^cJpCu1qovx3jNZyt-DANc*@O@gm`R|aYy-Xyr4H!d`E!A*j%d#gfJZ0h6j zO>cbY^L*#UUT=S~K<<)g`--(zkakrJwwKAJeUAkO(OJcI^dd1AX0oGJ}fUfR9;)F`PvY)O^I_;%xwYD(LUM=NRk~#F3e*J@ zl~NG8jCDFz!7>Uc5GV**#MGsNf-FIaiUJ|BX8WDz#TkRn_x=8XURN)w7RxP0~GuGL%4>}Wjy{GYA+bB?Xb%bDx$+%>ePa9iY$NsG4sk+}_mvEi+^{`(K@{=@LW|NPfa!lxTf{lo9SeG>l6 z;QM~@e_0+`vOe$oUH@fydc?PV|3vEGkAsA}`i;4#`= z{;Z%!xyzr_z$o_P&*1TA@c6SH`?DS!O_&uOP;Uj z)y15A_m#!`Xd89bHtH$;^>ldT$?)NzoJaV4t*S*ohn=&lF< zSTv@5>dpw3rR;%K_QE}1t>8aAMA1jBuM}u2gAL?sxAu0h?sj;XQ4}{U10^5HF+Oj3 zXx+Se{@^)(&AFD&*vUm7_+4j>pVK{tn12F9I}jLSxSDN8u1__ zdeVq3NuI5cJPV8MER5~EXw2u!>~Zl9RYsB95Yw!h(xNKBPMaSUFs}J8l;>)nI;vL7 z2F7t!lUYn5-%QmVn6vNsCo;xYlN0uhyyDw-)W7$G`Mb3f>8qCYZIbof6Ab?#7+zr1 zUFd5Wv-qXHhas|i@L>1g#_nh9x}V*lly1kB8L{2AgY7ciR2EnDHZxS9dRq~ZYiEo?_SpaRl*hhu%0sl@N(Pf8gW<;)gmqMW_Mw9|Mli6L|KN2W z)6h(chufv93X%h@EO{J5r0MJdcljm0^enmM%<%!^16&I%%722Fr4~lJISjR~2yKCt z4R6ft+n5(dereogG2EF^lj^86YRMS<^3)6S)Xlk?;#|$96K4L#87W&ak`%&YfPx5|gI5kE^ z9(y}5=5{CjOXEJ3#Pl~+dyTOZ2$~m_wJ(aj?GkgtMfYr*-xR|!N6mEo{b0k_wJa~L z>&WL*LjFFAsQBpY!cv5&QCuZ;bE^{W4guF-7dcP zs)rqIsd?HPdB1Hc>EG0AY3Q+(=`wSNGV>~p9skfPHey%r7giT9P=+m07CQ8%C6zq$ zjgkBIY?2Jyb2-d7ir3|mqFG5XVItz`=2dDAm!Zgfem3+WQEXnCSkDu}X5>6x&RQ>i zx-eN|t_ottaaNp~niJibp5OL|ziOU?7RI=+TNfzl4-|xn#YMHoE3=Sp~lf=fW+wI z1Ny)F4F5ehlKf5MWPR%Sl1Kc*LN1Hx#K~AmDdxs;aAhp1P!Y%SmQt)_gB_D4Whsi; zX>cjZ3E{@tmo04aNe;AOCs1is*B>X#BDMZj-?iuISLLZ%>+0&-ae0QGMaJgRz0?>H zNHRu_hTO8@j9|D^a6d}Yad9cvoN~$$Fr-3$deIt+T@{ulo~{zQq#kF{`AXZ76t+t_ zapd>c-b4nyGHzGfjWJ!}A9wR@T{pKP-TF0L{7?2@;C;E8pT?6(4 zux{{kD)-y-@c>^kST9L#t9TyKUrhqRqx!>=f{`3&yyn=Bi)jddGe;ayhf_mHVks7Q z`|as%c$1{LHcvrzQcEwJ{QCac^pbzLKH1!Q|Jur~@ZN@zFGZQk(6$>9IlDCJ3nY)2 zKE+S3@E`QMOtm**&z5qk`RObV`D$)FgEjY;*{0^RmEm%gTGm%UmE2rZdNa^O`!H4i zP#I#Bl4WCzJMa3nBIRz8vXqW-7t1s!%hCnU$S0jF%4N^GkWVzc z2L7|^q|i^4Jp6ta_AXL2yh-p@R>|EgTu}t2zu&F@+NDMRDM3ON6!Z0~pB>J(U~c@Y zX*{ReJ0L7kXlmkRrw)@1xd(_(BHhVN2az7H%iD|+f@Bup$Kqt;$h2GZEvpYVJ>9CiqcDN?32w6)@}>_&15rd4{8Wl2TK>Gte~1y^bX9h1ZjYb}*=WP|C! zQ6mUz!_Fvc)7icaUkCm&2YG+|c}70NzL9FEHVtZ4>~20>7+qS}u_E^ViX|GroE3sm z@pT>m&NHr&vqoMgA+=$^{7+&|esQ!ts>pJNa#}j%>6DSs!C!#_VBg#lRDzK35nB7qQ zWqYGbeqF6#_(25O(Z`;Pvo)KGzQ_>_T@-Yr8oE-8^P?Q7M!(Nzlk`Oe#gmPl#l9Lk zW{Cz)i;rfA|JWqccgplJK=AsuLgSRRJn>~Tv#*0r8lEvXJs0azd?e2PL-+hmt(mwg zYjy&HkYesi%9~<_-XWkN-B+?fq`KsvsUa7YE6~da`vjT~yqM-Iy}9NiJ{N|dR8{ag zrGC3(fnB*N6+g!=$RxntKB)bjnnItR-|ZcKBli_CSZAq>^(lM0QhNn(oIv7)x=9|U zv+d$5JgD;(0rumo8>-D4N-lMlP0H&%oEO=Nyc}41?d8&@bjGVU6;0pK9|wl-`l~kk zf5jua@#3Z-YI;+2Dx`vY9|!+7v$Sev7+ixQAwcdpa8i58#*lqaw|Sx$bEP*kjz{qT zBb{>GR3%r(eL9}%*ce1%E5wiv+-#`!s3~06vnw@rjHvCB=urA1m*S8|d`hA%lvKIt zo84%riEp(qZL}+|_V5VUlC_~`ooY$2L7&~UFrqUl`f?IK!N_w&6JIGKYL^i7e^JzX z!e3D;cra67&f}#e@Hki;hg=VA&b;~lA1(WRBU5}kP(e^6+UDu5`yKz+nt@%+%sFGKbu!x863-^k+hG#KXvd@ zi!Ne(z--fa+Rn%h@FO9Q8{S-^G7)6TG@UX{SDs-wPvU6gC&L-<9ds02GfKp6O(Q@l zOE#1xdFH8atq+YI;E#<=oXJ{(b}|> z=NX3bLc0?$rdTgyS;cuRW3QZnBj9qpk~J{1$yW<-8eZOB*7$ET5}0Y^uM`I4B=L9* zuDKJ(o809m^Uf4$nl@{P+Vw{Snk2zzOS06-S&kJ`9iDlM9-R;+KG=3;%0P2m5u&hH zlMmpCDI@9BRDEx^VXtL$s%7L>DGj=(7;QB2j;$Bf`Zk}h2gW&s)=m}ww4(H#)MylZ zq%Qy4?y4{jTP0Lvjt9iLCYoPkFS}+h7`(kHSeI20C~r0{4BXf+S0-)^h>A-6hntVo z>woFiu182P$MRW+)2IYEUCE>EB@2Rw-v~A>M*`Dc&eL;zWSXD6mnOW&9yuD3UE_?s zY%8l7%M#KOytqy&?O8R&Uwn~bwpq;;PHyB^n`~Zqp-R_3A^gtblB!A79djE4w#4rU z+G2k)^qVgfpU<_S?8_UZ2X}dN6p3@_5U`%?LB8t=g^#{a~;m&42KCu37vX z5?t)_&mP!;khD&{((&1w*-cA!{}+Gcyqw!|p4ZlN?e}EBaBE zz3EKMZ061-YVOVjYOelt|3TN#M-QzFb1xoflrJ{1-zm_H51MUiZ;$<*51pP_o%yNz zEStc+6>!URk9F;9=8~i_N&JIv%of0~OGEe6(R~9kW0bBrChbjFVKM!oT^E`ebQ+Yo8 zixinm*Im^9WJlAU{@0OyGOInV@os*)`j=^^r!AN_*9NAsE_?c>-rwyVt1p(QE`}nt zUF*(Ko+?w;E(ljmCU)Q0P`wq0M&5Kuj>zt?FcLzb^o5PSpChBYLfQw+b*$J zY54$j(pv&KhV?5H0@5tyuAE6`gkGj~pKPD6kv2x4sf94iE-_2Ym&(iti z49xB>x=3RCk z`Hyb9^ez^tH)qSl4%ocMI+D6mZZ?HfT12fbAI}o^jTX^ADXpw%a%7>a12d{uim#14IPL` z_l?>>Y=Bg#gT*bw8-wyKJl1W=TGPH}I6}Tj*4Eh5n;Lm(li>clOYS?3I)EeXHL1od zXF=(;&XQ|UNaC`g6_P83v2&c9#=r#3Nn8^b)JKOkt7o-jjRPTeT%ef(ETzw$5x0ut zD|$a?S?18`te_J;r31h zYR=kYI;#n;MvM8J0n9yLsoge5n~uUDjQyoC}My9$~*rK z2lMXU`ntOMo&AUnneCfu2J^%9GYHcq*WH%)hROQefvk~4*4fPaddF39Uxvg&WcaM5 z=eFfgnq>srh<3Y|`VwVvL4neBce7@aziLv;aA#Tf_SBinyveSe%vVNVjf$D<*7q=@ zpeTxwY=N?M|gCT)P;*T#EpCyDs8vmj7P-O$!Po z$G)@hc1EJLTE-e{<>bs(}3J zm)zN2Hl(8A-SL-!4)wAVOzPH@b!$G5=>9H?eB`oNXO0j0j?Ht5^NM~F6~j-B?)iak zD%eY&bOOj(eI-QBrx@(nUSGtV$l6_Ut+vFWyXTwktLJL+Oj<2-do(&U~n|#xN=4^`P<}zeqf5;kWQ^`)>aSeGXc%?VDPR z3B8xMJgI~(du24aAxgH zdFJ>XtxubKrZ{N-t80Jtl8x`B;oZ-T@@D-FNl%8%C*eJo6)arU9IP%YdG>?+ zpO&d=$_}pIn=Evq*H$7@>sVZr`k6xG z=+3B8J5g2cDYin&n~rYR#)bC`E;7U=i8SmzuhkSix-|=bPq?VahG6N$v}M5cW38tB z^|WtxX~?l3et1_jaMa(CmoxY;m%WUve;~(xXTet-Td@oDk7W3yWZ2y(pf6t#tDSG; z+7+4-xhA^L$8gujL6#rISk8eDrxc2h7b^Nh5Blh$z+UpK6W|TW93^x@Rlyep2e+>i zRW2&+zu0@&GU822-(xPTk!!E``~rBQF&CDMu)0o&SpP|3O6PxXvP6hWz1bBtwsULi z$Ms9Hv)0|aN)r5;apAN7#aKyuuJu@}vEQ>!h1M013tTXN;r&@6%`B^)s*?hS$=LTV zc>R=E`oJM?=$E|RTHDw*+p;f>>gSirF~h|XdT``xu%<283CReF!9n-?3N^V)!u+Z% z1iibDe3Z;V@Fql)lzrVT(joNbRB=*$WZ;>_p;MmUqYb%7xe3{$Vk1kDm{yc4W>mSG zQ!2lzFe^%tN&J^5nqLw5Mp5UlQ}}JyB(2|JlkSV^d-6LSDrQ?`FPguP$97_oSeeL9 zK{{)?6y_%xHWl@KCOV+Ls4UW*X%wQiyY*{xuXV8QZgA8H@vnSxr=ajfGosI6|6own z{^D+Rl7Wt3eTU<2O-y0wGylb1Ztt5T*jc(oP?oYcPT5}z|DaFw96g&dRsAQ#c4muffP*x1C z>Q{4N^32;ezd6}5FcJSs+N=p7nYbi3tp3s>>N|?g2Qw19ey*A4bD=M#q~Trvy(<>q zzuvTGU`O`Fkb^fStvY?=jUykSP>OtDW*{xqfftl1c35FVAe7L+!*Jit!1DIyvdTA= zT-(IxiI)xPmL;>TNPuN2epye#%??rf(};okD7O*IOx5ZwLlOyFZ@Z2wVy8$BA%{e# zU?=fn#F(maE?~EBHt$Lm#Qf%{a`73Oy63e;B{wSl6MZAAPFXuS?_Ixl{n!()ZS(y{ z%!$rLKuo_(QPl~CEV7q`elrl2WLdryg@uRqLArjgd*C(x*GAUJenA!JbE9aU-*mo2 zHQ8D!>``?OtmHp-N>yx^^qh*gd)#Nal{W)*I!B5kUeGDd^NbaUdY#4=+ zppTSB!Nl~l5H$!sMox4^7l-3^gx-dTs>of^mpa%dGfbjHkJ|EnwJ*7EZ)3I0{Cn03 z7Pc_!)|ub?j>a~Jy)#91K+xYevW1hDRir4~r?D*p6X>9&^#ye=&fX9_Is^6@?$9*O zE%&a7>eYt6cEjNrOB2xhh_YyI{h&qauPx10${h`XN38#WplN+r$ozIsV(e|TC|DcI zfB21=NzYW7!K5j+%Ohtk*%3CgoLr3tKrbIP53t;>n?G%uUl3+dPoUlL?c|q%2RB## zoOQM!bU)mm;(|F9v7Klmv;`=dFOwXrY3Z9U8eZyFi=Sxle;NuHXzdMNk{gG@TXCb! zwS9K)g}lMY0QId!IbNp|XC&U8G(qmDyLP&;dAQ!lmkh=|21D^kTO?O|)X~hGw=S1o zrzyLqQQZ&Zr}z(5`u})K2uo*K`+mKC+`XUMPy4q&75@%VM(c{$ZnGj(H2ka=)~7LV zxHG@{+9yefd%xBp?)|u-uqW?aVM$fO31I8^G`+OIBD1y9w_L#?X%gj8s`Wtn7SIzoFSuC^8b_7rN5 z<_OAFgx{BrYm%2=Ii5~sH!UD44^jwO%7(1U>-haY+A1wXy=xmbi4>vXT9fb`+3`iL zO%vGkA@Cg)j0EvI&8fv@%7L=@fye^`?Q=YryvCBL!ew5pzY@2hoKh;=q`7)sZfkqX zgY<|2Pl-?2kV~0EBU&YwGu;Cnt{Pjk(Lkf#@wsQd$FeTDTU%tA$_h!v}eH0 z`oy;sk0qtvOOCy*TIi;U{I~rM(DnY%~0XS z>^W)ZaUtEBeTtu?jH_YTG|TehqeIBiN$MWZk23{|5AIxiWF564swuQ>PfmzZkYCu; zK4gtvN0Jz^X-D55++u71E~5-UciU0>+F_wW*W9LyKpRrwV`%f4 zagHz@6oY9}5FxMJ896_1$U4sg5vkcS1iXw80f+=vA;sm$w}Yl|+oRs6ek(O{Hx6K- zoE$(ez5k*w;%d>YOi_N;cB+!I5cT8%|@r`bnY0?wuquVk$?lX?O-EpU8 zk*NP#M*9K(2WtmAPim)~A1aV(HjMP6Uhakr8&XE&KD{hb?I}^GMrv<54%`TDjxuxX zado^r%afnnZ5Zl)aHC?m^IkRq`;6q+W>t^b;=KdWx&cOOhF+nJ`0bvLDW#&&qvZnm zyvcY;AhSIvwT{9B^y?!%TzYnXTds_PqFUJx9e9^oMba=E?TT4mRsT| zfAMpRAhIMMy*_m)U8b=iROSgs{V&8(OafpI7fv&r@EJH3TUB&&{2vZ*4u{CP%7%?k zLb_Vt)^x@Yo>|K48hC~lT4%|V&ah83tW-&Ld&pYR@W*bow3x{91r{_2jHY#mCC^#x zld&3?1!0fJ=jnIlRnSTT5;=bwlbDu3rPOZofB5;7Jl)~Eapi=>A!qMu^B<20j5@la z^o_jUfB2fUX2cq72O$%&fnQM4sseLRJO#C} z;UfaY+>v|rgG@&Cwoj2Jv`O4MeJ4NECQsAg+3M*yu-!X=c|<6jLj~yD&dVO`7IpNA zGgp*MmJL|S>Ryg@{x4_mKk6(mJUV5TTB6w`Gi%Yfx76KJc29Rs=8#D5{kuF$)HNrs zeCFcEM;U{MS~QH??Qc+3CNNP{;6zVT^4kxh1D>&&p6%%DM>qP!j+1FMvdgLq!TG`l+{iJnY~sIo|9wO-p7-V;Pjncni` zFG+#l-FjkY#Ov#Vb3c}xlNZMqfK2sfGo%6Y&Y&Sb*-h7z@!)n;?!nt<(YWnd;cryF z8hl>f@pW1yWGl(c7<`zt&uQ+R)O?J1aj;eu+(UjIft}4{prJ@48l-X$w4(jE`1!5@l{r!z z-YnnM`u>%Yy6fAnkn&LVwY~rT5!g%+TrnF=-_RRB#>M}!#Im^K<7d08@7Z>L@;4I- z@CDg_-p}GINhK52JFgY1l?N@8D!a2G_WaNYTpFBSh)jkhkFRFBTgLvn!BM`w>p)b}b}mpu7Ed?~4PZU$-xx?=a{*9Pk=^B5tODOp8rg9k|aacKf}#NIZG5HbgYkGB${ z-w1Qf+54h8Fw|VjURdd<>vObrN`rDBrFIqYdGAMVLl;Ii615^@aKMTJs7fT>_5iX` z>)fHfTvLjT(eBHx5|3wrbaFxkEhuvP(1a z^ksR=k~JwaS==)mUr6*I(SaDQN_LR`1;wOPYoPc-mY76@af}c&iv@;7g4%9)p8BD^ zX#a|qp1+>qz_`@Y5~|d@m6sM3sTEU#)aRH)4d!MHL6bp`Hovif9mo+Qpxq26> zMEkDDieim*NGFo}(EN_iICg z)bmH0hWDz8p$WO;_pLWB4efB^fM$*$){7QCYCom0&qIVkyw*U zsK5y<&T_Etun;NeiJ>24dXug)m!KMk*^=%xH+qsrH_$($U^=Jx5V1kQcM`wh%^o02|9u*wM&|i?-?idAR5z2im~YE z`#Ax_Iw3$GZ&@r4H{1{3wR2!{uzFXpTy1Ub_BB+7!v!Y|=9Jq&nlFpRTsdReGPEq& z6Kjg($KPmG@mN3niyIROab1XyEk2Z<_SRq?Tlr+`p zIjUu@He474#Q|xV2J}kQkcf)VwL-g@Y=%w`{&c`5BV}gQBx|{I&hliX6C*^gSO9b< zON9$m9dOynOsE<+oue4C=C|e4nDp$jj9s2ar7iQO&wjAo#o$C{9%lcqhfYMu3%f1Q z&rz@7QmUZu`x8OztG?atFuwdhvFH0p0z!SFhiynr!%EV<8pPCI}&U zW^x*|zvXJ@Qh7bU`znSGb0C8cwE9GHuEwT2mfxtJaz?Pn1Zr$&FC2JC(UR7KDCRM< zaku-DQMCMTOBbM@imorW%Xiy*tJ-KbKqjef=_P1s-{TJ)b&sQ!KG9|rsbyf)pCL$x z*+{E&JO|h^SsLWeYnVU}nw6*@Ut<8yle32-1Z%=V@)C+# z$hxW2lCC*^PSA(&COWSQQ6?@L36jQjt*vp845Zca{tb&rlA>6`M{ik{sy>F8WJ38A z)GYqaBs9|L6-2D|Iuw0gz&A`D(7{ajC2|utXF03{0FMFqW6c#(Or%gOJxj>9Ww1jN zfhX=Hh|5^#&$c}ZUwo7d1B|tdLHCM_3N17fdSO=h<_qZ;_jG?6RaVzmbH)t)pkxk| zN=@gYTxgy2iyq^!A+gm6FC3z&ryWuv3eU-1zt_xvfJ2dXar;J`pY0#}?)6$nD^n$l zGR%>8lw67dm`*9~RH<>6u(CWe&onaMJ++ZQTcRE8V z_AsZj4q>roSM)lrt~NnDL9w8z6jhk#Wp_;iwwIYuY{p@B3ba6JMiVs#cjLg3N(YxEvZx6wksYXI=Aw=^ zw{di+)2@b<=8>F2*u`$crEU|ckPYkvoXC-{^m9Uj$%VO^^Du%i!t7^aEFu>%nvgQn za^j1wdNfGS*12QsOKQKa>2kry0ynbQ3<6Tl+*@=fCpb)Z)*f3yk?3U|{->Rb`~Aa)Ledxs_#A>2~v zDy(6~iCwMT<}x6GKvah zYkq;Bv05)|sgEyOV}1C&A@({oh#9XH{X%NCI#)5`WPgCtB?aLt>&~SA2AO#Tzv>0@E zERXXQ)gBGnd+z#UI8-*=4(|0D*lvF9y^G<@5S%9?4Rb1o)2b>WbB)Y2(Ac+RR?y_V z&rBq&GP9LHiR>!b8tO@qLwm=~LiEKJJD9_Jkd6_Z_)>b z&XGdgEl#`>h$)ML{+dnX&;hfF@Zssu1kcGbtN$!939J&esbI$$4to36=x~ojQo<-2 zM_V)FXzN0MkBMKyVtLp;bYua4C}_Ci5FWXrZ?k;v{o1X)9y}GvgG!(y{~BxgO1=bF zPNkSxTN28EwunPTxtL(`_H%M_5F+xTJib#EmR@dZzrP~nQIBp{gx}Du0;PJ}-+6@k7 z)?RGL^v0r^ibW))MYbtQAMkT5tWm5-k_FBI*MSD09;k`N{;>+>F8Hka$nkKlMw+P2otLLc5wa8Wr)5ql)Vk;veL ze1F*EEmEkP`@}FYn1bK}5>S!IVWVnAKM1hk`G^rRt>1J9A>4}`BMef{!kzCEPdI-T z+G>xcSpA;!wvF7Jc$8PbK@`f7X(&SB+GCBDlsjrkfB$04RW(YDgF7a-lk+NC!wmrG z%i`iQVcQ9WC`Qg?;*(v|0jWxmCROF_;$wUe;Q^l%GCWZ-tH~FUO6*RAy)* zK_uox>>acv9#eX*Q$(MjnCSF^I2RgQ@4>hJ^U$Ip)j0Y| zoM%fbI_4&(A@9Lixg65iT0GDc&x6%qm8n6L{g_Ij7c0eNLIiPDsuudH5YO~Q>%*jFxHJ!nA z0DSXmeW#(p)Wmc)yl@IRnWa(?4o(Qp@}*u<&f$h{c7#2?wbjUq9KSPeTwm_1-<)LO zk#R@LDnDD-PJt_6AuGU`a-M2WsHH;uB^l-j_Z%+rY>^i@jWr+^v8*l^m2-MI)se}v zW6iY_GVMXE#*H`SeY%Bw&5xMQ=!j*$T`sLKwGT3>_IP(nLr!o!a6Xc762+rnRs^#% zoT!x3vHNUgUDF~iUr91f3*(JubPO)nFh#xHBi_QUk?*3?vV|p=(bPyKX?{5b%V^Aq zJwj3XL!t)GQ}zvoksw|<-^@HnznppXGjuu3KNkAo(xi<1iZ4qaOxre#E|yRVB`eR* zYgAY`>ZWr;pWfcx)ZMI$n$h_irn`fU2C@vJLhA~8PV_*9-^V!*ZnQ0@h!grxM>U|F z=)_}Cm{iC~CpFhfm^c*NJoHB~K?JS`Ar&?8R29BOypG9{rr}7_DNKwp$yV0-eM}Vn zrdJ_1K*D7yBEV(Fo$qL*{0hTN>Ua9f&uyw_5K?GhKx-jW-S_W!_UNW@@#|&0

_6 zHY4(oT7=6MuNbHqSOSmy%@|6QmNZF+obtxA)yTy8&WQyX*k_EZalG{OT|1_IY#9q|xNH z7g7Qu{sO=`rL&M^CV*!II%Lu`#5EFR=BC)9j0C~3BOkKbpahuP)aNHyyfS}Yi)m|c zmv;4pns@OJkBY1MP-a|OjRtpw(Y=kafRE!DTlUXEKDL#DumN?hJ@sUk+o4%Y;iqHc zD7YoaC31O)V;lfWzHQt{B?xt7ItlV{7Ws4_jC2$#LcR+FQ>X<8EUE+Y+iqN+_T$Hh z)Z~VXarmtA+d=l|okFMYp_%n+Z!CUPB|={;23$g?Hw1*d5wyp04`crM(EYX~w#hqR z_mP;6brQ0js02U`0xd!5;dTNKiDRow%n`$otkRL(GwI@~-+fGd7VGb~R4GyrEQHqH_ZPSXgA}CcgnD5@t(O9Bdm{^I zDy!VXqrtS?l%xB+CM=zFHgJBiBnM1LGT|}2m>l+*dlwGAJR71nj5ax1X0CkSGUgp< zw(aKHz~@L$0iFq+qjJTweGcZZ5kgg=6oZ+a;h=<=M9L$y)KHB|7Ly5C#2y0S%m6*z zi7lY4y9AU8>&w5h=_z_)ra~!kDNOj9-OUL$37PNUOp-d2W82+i?5M9B!?qP9)ODV# z_gj4)Qjm(YOur`C$BguOAgGx} z3QWuxnXnlkbdj8rNKw&X8qa9Fdj9jEx^ND-2_+Z(>bNt4SQE;uGX{b(Oz1FMk99g$ zz5K4h%f$p4OpjD4F10M#{e-s;G3!(Jb@9b$8lgGC7cim0NW(}W3zfSi;kZ$PdGkF} zl&HZ`@z6n#j2WXDqeImOQp-uDHBUogWjZAkT@An#N&Eo|^qi+Ky!n=KSpCxc#f_$| z&AN-`I6vG7=@9{WAb>f8uN+7CN;mw$3MfTf6?ecV!0!B}o5MuP?J%X%Hr(#n%P08FEKb^) zdXHURsu}p61N?-R-0vw#y|jSSSg|vjw$WZr)m~PX{8n4?#+}1!+TU3)FT3OQ0sa)J zt?a=xlEiR;ir7q3mNl#ook~n4dZQ$lqQuQv3!_s+kSTFCkai$io0$HEnUcwE78k?h ziDC~>n`2FAE8GGxG9Uyd+ld8YsZ@EJSUQnlC2D>_gvHAv$U1|UvEu70$$&Ac6|(s| zRz0cm*sWBqPnz@*+Uc>LJC$Gnkjv7 zV%k_}9-Sx_8<7WrhpxB1F)~fscVKT(Gm^YV*O2?fT!09=CLiL!7C@sqSVPVzB|}(2 zL9_Gk`qQE3Fm7M7S)w(ix)v9iE$5Db2CVhi7E3aX>KJRxB8{e_ho83SpLR#wk9WBA zjz@ONj=K$)k7?^R7{*Gs*w+;04rUx^PevfZC8Kp@O^8K8FB2OjoDq-@MGhC{fH4{p zqDZlUw1ex$?-1z^msgvbAev|0xji0e)*F9A0hcU)!W(cmt)$hi|GXQI$AB9n)YhHkWg|ErAL8x^bLCE~I-cR!6FV7e15K;F7 zLD${-dvBkd3S~PngZBCQ{+H%q4WqjgA_yei)3Wd0y1b^kZ&}tGsVa~?X-gu9IFt8qt1v}_yA@oxr z7+BE3;EyksLHf>PgsA)D2ODL&#_lo#f{Zi$sGeaBM%`oYhc$Otv>e--efb!=^&TF- zOp|E_WESQ7?rE)2zksf*?qkEJNXLvMa(EW9B8mHWtAjKN*#Pk%Bdom%e@~jwSTA+~ zn;-!fJRXaS8X7TSzXkieauG=?(8Gv2j%Ap%-rnbfiI8asV%*Sgwhz&=M5EUP3~t82 zq-F$_x`~Pg?-8ls8Zz5d{qZMnxa=(Ld_+R-lc34%mv+XQ>k-9pefTK4ECad3B}TCv zr5mQGz$cp1XNR^)Hc%fZMROGVpP@8F)P>vCVu;?uF8>b3kcLAn;H_v*ukh2%IRANL z(?yA=@>pOB+beD&6?DrYM_Y68%(`U*lxmxFDR({ise}Kr8t>SpR&ff)u z#paM)#KN889KrD*WS zRs%N4wW5v=7^}}tgUPB{%UEQDM|{QItrkEkHQIPo(&*MVU!sq-KYnNI@4*7hV9Y*X zbLxkA?X$1{SbeiQ_Km{hF{VTi_(MkQ26)R8e?EDUz!evc!$Wfp{ZgefKq4|3SH)!W zph_{v7sZ%EsN3oDHNox>fx9a$XGZ>^{VW)8;6nxnr;%~@N^9m zFdL``?{)xVcE_JX9RsO2*R;NWLBf`0>ZHd(X~#m`|9 z3)T`Q1g%pl0TCFaE0+t5InUNtGj@z$V?*BTI0p4-w_b7Xz;dgO|@s&h}P zH;p_v_9FXUcpPhd%8P3Wrs(w1R{503FUp3Z=Dclou%D!ht=Z&lBH3V|U>r#pil#4y zKNnI!5U5%(*MP-15`0MW6KLsWL)ak8L1CyQ_zW80!eg1|eFXGzfKH;cU(+^(_ zJ}tdhDv!M%?|9|9{_r1d-ymdEr<}ak_l~|*C96R@r}^QD=84kE)ho!e2;SgTh|6`k zpyHtgwSF)Vyu)MI12nACrYN~+Lq!m#7;8?R$(tPze_%)c*@~@Qk=2{o;sYxn6q1Aw z_=kPG`yeJoCIXmcXCGGt>mMQ&zYKU!IV2m~f>K42c8mJ4o9-J~3?#Z{7n6SWHKAih z3;$_ev94(cF^4Il2gi#;lw$zWUISPJZ306eas|+m@1a3HQsEL^5d|8L=D49mVhd5M zlQ>5K$i*U9Q1mN>SpB;(^oMb&G1+|!JM)B+Jrhb@_$nnDJ zMv69)#lUI+nL)CERE>AgY*2>KEl4nFK;sbn`#I%<=>s))J~OzksH?$((heP$EIUnJ zyO`(|$8-3|;SvH>z063y?7P?)q5CfOA9+a75GCnZ60E-)d__ML^I_7=>b~-K4ra@~ z$Z;G#-fa@#Fb?#s7s^C%;A!OUJu#7}U5OwDqWgK#0|;RjDgcv8ngoF za%7u=OZ)Qt6_-SZR|pMiOyeehP2Q zBJ%#|&NBV6_6_UYV(|9Yxx6FRGpg>CYQ(?VivGGa~ZhnB^I$B+W)@5uCk_MWLtikIh)|)3GN$+%_w_VM)cc z+Y^!^gr|>MCnmSv*S@n)vnLkM(%@-_Q46*+!j-2)|Dfs27ENi3Cfir?sDAKiS>61* zi#{nuBu?2Hw7)We1yoIn3wLv*-pmAWhOu6Fl?zRxKqxGVNliqAA}BVY@(>`KcmgB) z6Rk>RwcU6Rm~T|=V({p<*1!3FGTY;^=|0VQiN;-^cK0`4mwuXY0MqRoc@47HMbaCy zr1kichqvc`@wVkLWa7}tnO~ao@U|QABtDD2Z1Mt~4DZwtUV%_ZOjNV<<$_G|0Tf26 zqtMJjX5hNI2as1!s=vgT*ZhLeSqM{m4_sjQJl(0gD%W1EH-g~*v>js%3*1It$HZ`9 zaP08`Ns?vJ?%SXLJfZ$=%MUSjgLW-Ip(TbMp%kRw>GMRDMs#cd(WG_zHj#vnL?90g ztpOaeXfgrs>47&#hrm8Rh3)D$-)C9=`<}@sIZJ8MWfi4Exd?v+l>>;UDWG3O!>}H+gE- zV)UCwNS=+zb?*4BfRz2{v_Wb~oDtN-yU62gVE|wa)G_Jq$QhxwgmH7K4)&E z;xfA0p@~NyIxC>s_iAYH`#gR}{+ljU0}_K}i7~L%Z8BN^m&N)IN%7}G zW-vJN)yVc6!5N_;g5A)F6&H(s9vUhH8`7<3&w3uN_6qKw^t z$VQo+;q$jpcO>BH46+4O`y`V=a}F49^}O0A;<=m*Dh~7xVl+x-x8xB+gCdB&WndD# zbzzG7xd0PW2I1|CL8A}VA@NEA?l**Xao%U$TJBM&jc zj#F$CDGoDDypxp5ymHfW4^o*CF#*xv8_9P6DH&%ReDrn02f8XCk_5V>peG}};MEZC zy$xge3~g~H9&KeJpqQ!L4wHTW2Lm%;UJ9V!;CM@6Egk?M7ED@d@q(y)_560MN~4^x zGFKZsHj4aUNtA30Mi}~Ji7g$n&{;4S622LSmyMj4qWqk^i&SA6gnfK}q&MINS#xH% z(5Rzv;c?5Sc3;+iNFH|OK(6gaif9rny#P9(Lg7dUElK~!%59;F4|0Z#ig_^Xg7(ir zUO&6m+gL;L^7*V??_dyx-Hdtn|c%~5bvNL)M zkWhJ}qmD9UEV>~K6EuMz7DgJc-_uCVfc2wb#4A45O!RY@fFtx{gjgjy;N+}$qS+&j z1DIFUIC!=RQHY>4N5Ds;BaQ+)Z{KKVVw#n`_W#_>Ck}auSQBth0kU%tGmSz61)405 z+kU)o%JK&7I+Cs#sFkn|bSH@B4aB+#X@-T|C*;PF$Nlhd%@z=s`$sf^#v7|QqS3H1 zo^zTIwV)S;0v+r(HbkVOAaTfbNU4NDNIuZuS7S&5Z>uBD4!*jq(IH{I=WpAm#^GmCPmycNh8#*{hxQtTeUd4-9{IaWNFAW>tF0P` z%2w`7%Rfj#RqcV7{lFS_ysXeWr9U?+;Cdbc!bt;aVWR5PfFcEF0}Os9jSLgf%RuZ8CMIzM(qYT%*x|O&Bi&=YzEqa@G>QY z82&sb{TN*NG*l}zZo)|s0*jQ5R@mz#Yc^QK^KYNb&&rCS|tOv1*sspFcI#9Nc?c72%E5uxC0ghP@I21*=30;#dt$` zM!XI-ba(dnyjdt|ysSwkSj$A)0jfpF)u2!!(onRXfM2=LHIiN!0yxGOz>w06*wA5u zZ9&_BdLG}<5Kx)ve$vrM#{7Zdqft=hRGmi@$`R5gaL3EJTuMkDI3~A^+4>~(T(GHk z`IdkpU^AfZB1AoThgrO{8e9wXkQN>;JLl_1MVQfs?0?$zaXdz=30^>MK|aS{O(A8X zpMsE*fM(eOwi8HF{C6*W8d?=*pn@TU#uw6{BHQ!LOk{1dc$?2B*XY!ALn($(Bh0P%*M5B!>!FAK}TN{NtuUje}ky z`iV&E#oGtgy&9)Yjp3DH+x4SntI@cGjgvS)u8chW3W^OiGp!fISPUo%$C2FwI9SrW zCJk=jcX$HN0?uT5(&^>VzYh#=jJ~m>8~JwT=$zoJ(Ak5*lj#D|6U9I#{sFYL!ihdF zCSe^E0{dhL9uXuszGw-#Lf48ja3<*7*E=8{sTEDNO)vCFgNn;Pc&%(AJ2LAaPR+JAu)`4)sqFOKg|HV5JBmq_G2LRKAqS zgKUgQ;4M7t;z>kLsfvHmy}R((-&k?+Ps!1_Gc7-4qbC5YfwYI*kMvAO5BjD6f|hGF zKtnXh#;3x)+*GIq@j^48A1sNG6o|0_m0( zG~y8UBLXHFhhZEq;%9EKZL|akjzFIX--%`*Bx4>Zk29fuG9@Y)py?`$8pkhQnjAYN z`k&FJ_-vCd{tyL=C*=%DzmV5J4F|Owl*ee`_-h&P&NIqQv(DPj59_!(>L{0w#>}ghaS<`Hkje2JG`Tas>2R@Vs3uct6DaWOc*{>J zt{_eirUy6%&>b@tkT3!kz~)H@6dnRzVm||Rn1vT8jPv5DQF$?My=U$A)p*a8u;I7| z^wH3oLIAl_wQm(0s{G@4h@IdF2xDki6i3>@@HO;?usU-VoA4j>L#z3CQio3Wvy9Sx zueMFf#$e&j11pvvEr%)(#_q$c*tT zk!)2eE^WTrc0Lwqri1YErGBj*lgm%2K3}2BuyQV`tNic>p zpc3pe*af=wWlYkteSV5q161MoA5PHkt&TrGhdk!-ay|GG!Sc)3N6n_@pm_<i7sDKFF2#5w($cTu-B*vJGQB;C}EDb>+2Cy?4 z1q5ssg+#yx343?n-%}TTy^VS2{e8ZFXJ!%|mcI9#Q>T`vo~pWGv0T{y0v_S5Ddk@j z3e96dxC4GSO$YgC8rd;-xR_@lB{#_-9Sge+^gsd>8<8tD3mpe60lPqsJ*v~(AihWn z=@wN3l)Q4OQoZf)$R<^q2xP(H!OF+Qi0Q3^Qy?Gk&0wQaq2`flfHXo1@K6Rw2=oNJ zLYW7m3dldyBOo;#oR6K>#Y+gjAtdxLz81FA(87yf7OpZyhy$R7;P-KiHG`HoQKfW$wQm@EncZmSm znI8b+!#B-GHB7VZ`*7b7t{}uBND^cv43_~Eg_6f*L-;`IlQ`#yYe6zfOA;Kw4KUOdiQuzo+E1y*ofE&GvcfJJv}qbt zGwipa#L*7UAdbrzw;2BDu)1l^TF%r@ErS+dUep z#6bfN^8I^D*T;zzM)=2XQGiPUI}%u2VI)6{b}-Zk|GxS_8~HJUEhu)zEg<8f!q5TEQ$Q+&K_-F=$?(B& z9^ZkRvWPAnIgwO?=)fH!Y*VHnRqrxLtSAT{dB=S;vLEV2J5Co~VE`~N=n*&UEYlPROMb(T@J?8s8uaWMsmcl*`FCBF zfaZ~)4|DM}^-F+FCIppk9N=&+MTIpw%tLyfR2Up*>;a0yhoenI22i@VvNGG~nbm-G zip~8UsesFaZy0{ma7!HCfLj6(6>*sZM&>|oP{Ax>rD%exv8PRPbXS9-p<@-nI|7{o z@H|ZL1uniJL%}ieK^M%^%i~HfHC)%d8s_2OS-pP5WM(kg2+yQGPFNS51te!{=!wvd zP4eYbB|F7k^Zm04|F95=>{Upl@*Q&=4S9ug54M-LcIE1;5U zIH^awN$vAEjuQ$a;3w0ZB5K5gSw&-s&yM?=0*n*_gOO-jKu7^kQ2%>`PJd{GPH`I7 zBJSUrpX-1k{l`go^czLeyAPFf2u@KeUl;t@|SL97B2F3T%bXR~JPdA^9d>-bJA0PU$|zT0IN9hCUkC#=OGyqo9A~Z-stDbKI0L zHPivHIow3S@Is3HQpe3s3+sHrS@qC-7})>=Ff5S=MO88KL;xcQ8N(o_M6N6g=oOi_ zQAfeJfC2!55Dh^@6(R)(uni!Gzzjle!A-W>gk@ZST0j|;;_7IR;HG)i+X--r~h z($Yypz?lTS245KUv08aCD$c zfEIX#ZxrG*FyJ`I|3y0j&2b=f;jrGccxW%2)eO@=_?EO#?iK$pF;j8AL5aN6^wDM}h?5qns)6=0D0)!=!30z5R!E9G4X`;VN4t z@KC5UN5>OU8##H%I*8p6QoG^GlPpg4nS)yn{)Px{thQ$U(#_faMMGm(i<5*+$mB4z?#tfWO#v2*lT>5D(T^qA!};vN6<71534t} zzcbv>kADFMH167{&+&mmR4ZWTxH=E+%~53zi%w)!LX(IG$Y}u(8<97~MIaXqOkoCT zeew(`JTlcslkgaUh=zrX$R><9#vQ3WS@uAysji6}AzX7wmjtREV5 zazy8RKcd~~6L<{d1c^kaXizi1f?Od4LbDj?40l$a^XDZd`e@m}Ae^K0Il`@hBxsh=Xu+U|#6gG&RzyA~mQDJRYf%7CjL1G{o&i8s zW@`g~9@j`vipgE({s#yXdd*(L+R6A0fmX<>b`?YgBC{?DBM1;)pB`O5(%00zm%_?t z>236!MpA%SMYgcw&~f>(l=gt~>4I)~6H|*ALtVr_2Y=Bpb((7&_#?YkZ+=LEF>3bGZ$goiPR=cnu+QST>Fcaziaj!T`_WT zqRe+`!W02%fMEa*QNt*do&f`(T78NGz}=zAgR(^kJg4Gj05c-JK$sNVTzWx?5ypuY zBlT=PJH2&1Y|d&=27VCLBSS= zQPyD#)4cFFt~1|~Ql!!0Mc39n`6bnA_egj*O`}<}ESYAXm;$h-j0jM*P!#lIvydn; zhNwTyFc8A95NlqHO!tzeQ4|!(7LlHVl=%5;n``?4+(^v}RdD%qzW3Ftk@f1H<>nF* zNE`t`UmVo{haPRhBvPjia#ixbB_j%TFk65N0O0|+hz&*Z6Fm(%GnGuu2;AX$>?=1U zh{J;7IuSp)-mL*BcmH#f9aN${u}5hQ z>KOxduA-hLgmh!BMM6#ms@MHQGcqgH|FPsIC2JVkIt>S=@DUss0sLb~D8!sdiyRaV z-vKTzT<5W*VJJeO*cl}zpknC3p(VHot8;k61`eYgpzo7(2v9S?!@z<;F{g$m)o>-k zf4FP;CT1H+sKbmsce_1?_Z4<;n6t1Nz6=4|%eVsv0gY@0G6)0!L1LY}^0&eTMY7h5 zDU}Eubw!Tvn4bAU0}CE;q~?1YvyPfr6Fx}#(Q>gha1dBkfOx~bcjy4Q7Mr^`Pb>-- z0#7wXv`rV1B6==TNx?4QJh4pO1A!+Ia5`(CRwJHzJgD*r1Gm$fwvR~fbfKw1BkY8a zHS95iumLBCYlQu51<$f+(NsWV$h}ZqDe59Z++Yw5OMi&s(?420_ynHrZxaTsF)I(e z0_Z4w6h@(%5yDLV4@jgt1XD^Vmx2lLWv4IVZ4Z;cJYhUJuZ27zM?VQAKlh zl-$tBS%tj9*X7~AB5H>?65!2YDpPg7*B5!RvuQKJwJ{xsrC3K0Ou;+8-tA-h1|&=rLC zcqycYkPlnL)VMl2O;8gK!>QC6z*wp=InTTnU4J!Jq~U)GaV=J%Jt*h7hI2tB+%j}% zp>FR;z3c{Z$z2Lu%rQ7z=rtj9p%-9cDzrs|L2DGd&|zZ_Ahbpj0L2K9lK;f~j^OXU z9{>OnO>qc~W$50SB1?wE1t4h#Y6vPco>PL@cT#)SXsbtPB!DguO^L1oghJ_sKs(k5 z`Lj~STvRch;BQ`IiIuJgaKnBOdK|z@ zg(}cCFXBeU6+s2u)=&YOk~_EJ$}Y_Ez(H}q!9MYLS+Y=DTZY3s-+pl}PCbu%yUQc@yX(cYYvlQf?Do z8T|t_Yp-qwr{4_jK6q^m610>L2i`{br;fP@7!zi?Rc|aTXc&pU)F0-96Rq$44Kon2 z4?y~0t}JmK0D;bit3-h(Xv1M&4)?D@6Arkh+}em>AV$s&T~kmik6b+BCI;z#fOdV? z^IpidYL*VfZ#h@!0!&c?Y)OK*HlXwfg(%3I0PF#I17wk|JPNW=d4oB1q36lB7}wqjLZ$IC5xiS=wKU*B$dt+shH;}$3a7# zt2DfTW0YKh`9J^+(~v-Qc_gCR!}%iWq?gFmLQcriFo{O!ojVF>hihhu2YXlh1-AP;q2oS1J1YA}d)~j_n zg~_QnZxmPJ$B?!_*n>DK7k=|6;N-#8@y8X^Xve=|#1lXB#WW94h9C#zg>}BU?CZchML872Ybx|;|^m4XLDO`@yg)V^}MO!7JFy^ z$91tOq5JN1{>TO6?1m92@*{A9P~WhLX5`5N62T*V;9(NzOC($4E=+wJ4lxM@@@L>@ zpx`0uSB)S;^Ky8nP%a&HUFaE;2_h}tm<*2t&JJiO*SZ4;SRx%Lt}J0eh_KL?!i-YJ zbYl=J&{;s^gT>N~8+8HCMiUo=#(<#A9Mnw?YQ7F1<<56LGQR*)gP@4gMH8?R3Nhf~ zyu=kqa`?s+&4DzkO{gW@EG#o0&%}eMB81IGk)j3dNQP>3q$wD4 zM?VC{F@e2@d&5U!QZFnNE&<4I94`Xe+zr?(=uG6WqJ1NxZ$e+O_=K?k(5e?v=`CNmf8jK$^Hq6L@Mc7l=aphet3 z&M5*6ZHVYRDWwi2?z~6tn87J#Z@6jvlBo} zYWWAJH3eBH5SZxX(f5jTeJr^g2MPwA%uyOh>IkESOF!h>=QkLQT|Q^g1Mmv>$9$S;HezGmV?fV zSTGg831AcngCyFVqhBi8y^m=Bc~zs*p?qViDrPL2w*d47!k~`}LNMKUZn<=$cEh>G z%1}l?*}Y-0hCTv6(Gr;qT${tl2?G*c$XG*5Ku-WWtG+0$YaI~>X;4XKeArl=$UxtX zwxK>Bq@5Coa|x-0&5EY#30fWiW2CH_d?7ZJ-4<{VGh~5C3_#h)dq`VKF0X`kSwfWZ zKSQ(lhVAP26+g$=+fb7rnjlVb(J5>p6xD9%I!Xf$YsIG_15^W{884x4AkzJ0BM^YE zg*Rb?ncYhAId7o0Le~*_)SZ-SMMV-e zndo^0Hiw{4)|`ncMm`JxN$SW1Bmcpl6yA9Sy^Mh35Z4hTj3abRGZ4Ltp_V{T1Rw$@ zR>BNFlYu8g?lrn1!t&tW;0D7t3x|@1N+GZU9pM;*B0tAIXFt)!rT5xf?Rjc=56{`qaXNOeBS&h;~u`5J#PGL31RfL=gm+B%{o$Y-zqV(%7JPvy+;_ zCo(9p05_`|aMv2kk#H9)=dbsxFWeC@;N6=RQIlQV6C|Et#i%zdO37)!0`!J74cQy= zCH@AbhaO2dN$dlx8>vpPn{np4F}XjY8unsiT0-cE+WT7l7%1Ge>qVKNKa@T1uegG* z`xd=zjamV`f2wfAv^;;Vr?;2`lC_QOdK!b!fwSUBiK?4dJ97y!uh1)eFq7+O1On!*FH06 z@Z@(J;J`^!pjmVc7VFlPVTT9{V61E-V^P~~xt90HH+W~KP6s=Gj;*^jmd7QF!0Q4N z3kQW-YoM+i30cn+vPtd-d?H(n{-YYMrTIVM@bDKjaRe!rYxca9F;ATa*Z}x;;=X-+ zbW3BEZ0p|jVSzfB$3aqRMt&wX7)%2QJqAf3XaG4195DQiYnC0hfa5w6p5<%+J4enK ztPV!Y0B8hei+d(?Kw1P2FEaAaBkDo%A>P$sa|e12z0etfsx;t#kxxamWs+48D52hA zB?+8F0F9QN+o_i>6s$Kgf#cv+5cCARi}Hqqb%E_^!KMCqG0S(`U5>#-kV7HSvo$IcJ4M#%U07+%;p);Ot zGHx#X6!H}?+3`JSARlu=$g$B$P?FkM=tTHpm9AzAG`ZHOA!Eh7uu$c;5^OZ!pwocx z5`W}bRtHKKi8Wjq+ zZVG*Hw}|P2`XAu5{-UB5^b8zPztF>)@mxVRg!AyR)hI~y0gsy_pBY2@!w-47WE>x? zxtbTao34LJ}AlkS`$u&%=Fv&>Q(WTvLxGwOytseQjvA`n9%_7CgZ77+> zMO=&PWDMh^k`};k1g{P^!nr5;)>tP%2nqDn@YWJ#7G%|H32zHi!>3Zbbfw1a-bk04)oiR>Gw= zz>T1mq-Y{YAtH*v;6hUb7mjctyjbUWt6dSe?^BBy{TtQ9g-6z1%TV9Zx(Fq46H3WO zTId|tbJ9hx5Ww=GtJ71TrvnDX{IH4ru4k9(o(*Odhk#RqtOp2*-a3;0WWuPQZZvQW z@`mBHLGG~Y$dTDWGjPccm_qnCxM_BX6RBn>IPM@NA<*o>!<3+T9^q51*}&|L&xm5` zzStVSi4O*Tiu7YT%$$JSuHkC*VeE+NW$6V_WQuQMxEdio`MAX%aJUJcz>QK4pZP+e z6{=4B(Nml^7~*xF+r*w7Jor)^aV$wMfNlVw6&jd=aUcSSQBl*#nHu-}-w1gyhRMaE zIUtMU-v?0dG0Giuzv{#3C*;d5YIC|Z^pnOd`fkg)i0NL`n+7DyI1*#dcp=IMZ-{G% z03>kjRMbIHC5^)u!(f`Nj~&??djMEe);KIwGbMr&f1j3_{Gea+@|^t&y~1#u+Gql6 zLL(#aw#k&az=q<^A|1!Y4X~w@F{2ypfQQN!=9_p@?G@>JVow421k?gg8*ZAOBbErx zR&Lnrk${nxNZgH!%j|rs+khRK2Du*-wmGl2e?(#0EJn8)_$sX6`skT-VEZF!e{oxEOSxZ1KQofXU6(r89m0j>ho< zsv+`zH<`&%wL3F8+jGikR^wa)N7+(I`1=NQ%@+HG#4*~qah~Sgo)e20bN>?ce-?}= z!eH6=_`c=8E6QWg+#E;)Ty#Vr@K`w--P2RyARsif3Yd!?!KV&3li7BE{y z&E~Q|>=T0tXF1!q??-QJAM28vr8Bvv*7%XF&MWi#r#lFW&|KSfB$AErsE;FWd zY{Ntm2@?{h;{q)~Z|&q_T_kbW9pfnTkc0yzPARWY9S}I8Cn1nRr0_I@e~g{tw-Ap1 zc(bu7I6DY7)0Qg75YYr_7sP|!@a&IaTaPqcxBMfqZrk95EepD>xnTj=TTC?w{{1)8 z!+9zN6I?b>iz>)V;ve+LRqonT!?Z-Xw2Rs$>mx3epx1ic_D36gT@KOgVl(kC-cOp0 zcX`nVVVc8GTCv=;-ty|Jt`qKOa|MoX`=KPMS zZaAvqOL|f}2X#a812jNn8Wce)i?m=mt@bB-NR?NNnR=uc^tmI&5_HT#YkV+C{4T0^ zi83{-(Ix(u-4T2306PJ~qY?;$FRaz}6fZD3@TMfxJK0BB>~I6Uz^~CiDk=h?!7Uh{ zEYHMI00*$O1yPX5EEp+5-Opje#xhz=%uH)X^O$1BMem$8n!?wG7YiRB5;v@5ADPwo zv~RurU21sO8lOF>GU2{8H--DWcUaWJ_0d89Qh+1qRtZA@_7qljgdv`(moVNx zwJbcVtZ=GBS3|N+15QcZiOy9RQeIZC?n85agRi(L=vpQ~hG5FT+s1DPyZJlnqnDix z78f^j705b{=&@`mZfy>$o5B|LV(9ep`U>jkeBJ7g#Qed80`Bwa#2SLq)wAn%%Fo09 z(zY(5iL8!V72T#k9yhxt1k`kUL;7hsTJPz z7WSVB+YiYob2+TN71xD^iZ#=KXPgbPl1L0_A)k!#3`k~hR1dRLxl8oR8NVa3GtFZ! z9yGaflv|0*l{srWFauT{O&g$W92b?2In!8+)wO5Oco|;7K^!^$r!Yw$Jx|We~cN<2;(|Oc1;y)D7b&XtD|}mYk{?TJYfR}>q6#T2|t;< z`zP-wj~seG#^i$hYc!ay|MaU$0XMsk2wesSAWoqq6D}8=RH}*;PvOSE>X^G*#|R8W zcIz!xuX<+!*l5!?_*WEvmR=_BG8R7Wm9`$XWFv&V9uCFc!r$z}51NUm(*$_5yjEol zq@Gn7CBL*&&^;Ng@J)YWe){ovz*z7viNiC)SyJpWR33TrS2%k z+wx5gbX*O6mkI>KL6Xzne>d2tso3HA=KTK60vfO)?vIr}#AS+j*#qDfb;&@5umKAA za9$=1mtxTKQl6XmCOZ9PPBdYlpCCAB*MB4~P-OC>IVO6D3uIPqUB><}PZh=` zhe7d8LT)Pm!9t%C((rq}-Py~BHt#eJJz6Y5^M5Tv6g>hhb85jb2Y<)*DINS6&_qLJ zgT}pz-U>8TR6a?N2L%QK(2w)WX%Ss`5S>rmLo>FiHMd*Y!O0snMtHgq8{!|AQ{|f- zHH@g>s_S&iQ8DEYb{5R{kz(sHwI-4{k;p$))w6&U{Xl%J`dG*HnfKct%J)?5-e1*n z#&YnMvhue2gd9!Wbm6aRRj721qZ&~cD*~AVyb3?VVVC*tiycEXGWq-7{x9XKsGSq$=l?z}e-sV&uJm5;#~BEk zdb||vzKj^mVwi1nAlw7^$ARLD;vdQyYsNq47_zeW4q3U~71R~N#!kT9Gm!EzxCV|Lnv7pc`-oH3j~f?R zZm*09|F!aPBM!+)*mbBZbJ9oX5hDRnWM=Zj)B0aq+j(MKtG?~%_xF7K#;ZSjah=*C zcwq$_!>i|Io!@}ap<|glhN2-RUI_Q#3MT}!e4DZa{VH+)6gBz_F2@AeSWKrQNyF<) z@LISq(CcWAY1ieM5-^k9uXFjLp~R$Ae?1Hd9I**Vk?dvKnF=>yvm&>nuogPAKqsRM zClXQ6IP|1y`M|WOp`fUwaxP91CJ7uF^s)8>S-{`t(SM9v-sQh^tj0@co}ZXVz_avi z;V)h1oAV!@%QrH<+FLAaE?hHk-EAnmcV#m6VEBcfN)<6D5oS9h~+k#nJ zc$AaTFp<&rLo$Xs%IqpT&$lERzIMvx*D~x4K)(eRfS{A|sOZnEw{FPfez(zmJ&Am1 zNZx2{#YS))rKu+?ojFWA5opjz4qltXzM03x7TtT$t0#Pd|M1jpr&XTjCX6lue!n6? zibw3s8z`!?>OZe|c*nPWR(NG{Sm6COBl%%z)X%<8YQ?HlwB+>z+x&uKspQhZnZ{Ao zF&fa2!^rW{UeenIJx$f^XHHL`>F_3_ZARJHU??PB3{srY^Fc<*nu15Qod+U<9_opQ zhQc1zFZUe#w*Kqy>2S5H*me`-^O4z)WeEGIsgV8zkw5|%S;8U|(J=U{qo2?A7K}$i zt2`za4f;WI;7CMGSJ3V`C~a^h^s4WPcjZsa8LneCavydtd%UJU>I0Lpv1ko!KRWB9 zW34NtA-(N28a?BqHRMJ0Q6G>lYXQ}Rq5LzJnNzsqWcIGC?1$Ix8btLeqEg+$>J(#b zUiOIP-rf#VL+y@`!2>K7f?)uudQMEs>WUDMyqInWCsdcq2}~PW6Qn>45PL7e2qI2 zn!cqEqS_w#12d@+5myP7JHu@#-t9Vu z%jL^b^R3FVmu&^~Zh^aD2nO&0qZfdym~G1b;OD6>wOh^A;O29iSH5Qdo&m;ZWBvo# z0lTgvZB{?)Ngu{T!72L{YW?hV=|TN3xl0ZGOFt6ru1`gqs2Dsfa5Q(6eS(I^RK>lR zxc|YEs8$i=?oHGU&m85@T>lz0?>0x-u*>mjhSkc=#{-?dW;`N-tSk{xK=;3i0VC8V3?NmKo}4CwY}d5pUDf5C$Msx~g-eUihq@UtukX|Mw6&#ajhMml z>&L%WxpIr+@r+cgJKsY-8a&x|jSWCtY+tOM<+l2T;pwxZ#B@z}vq4eD_F8dI?-FFj zT0n^FMs4IkT_oWXVqmM_L;y6dMsEuw@X^>RMA~uC-;W7F98Htq@JC=rmqqTuQ3fm5hbpn1C!;IMg41jS03cXlj?b(14 zaEHkqYid$2@@YBh5IQJrkURX5HCUJ}0PGC?Y>+21aUVTOKlt~59F|7j^Yu?nj(kwwO_rrMB1roH zfXWyY#fP_-3ww)qyYa7=hPV0k%||iz0vOs9ouaOearuhWC?@-U_x3_Xl{EFWXj>?a zmyvriP$E>q^f%~R4k}oAHWT|_>qE@3IO(AIDUl10y=pYTzsVC z5amI0%~^VHPSTR3={J^OtU`Xzxq|7VyF$dB&XeEld;QD@-e2BD6PVv;M=HXFsKLdQ4vx`c`oLgTJu0 z4O6WQTj-;BD3>VI4;3VTV=?sIHWt$FiQb~^gy9av*&IlCP=M+lv(y_NEVx^0y)IdV+VDkh8|r@5|!!WnDK+5s+aicbU!9vA89 zsUCE`@m7l0=7X5RYSp(a{U`Z?o}m6SZUdt}`|j6|zsowUn0NJpfAIRY%#n@T2c?Jk z4&1ogZ@K2Y2HH*2<@o!Zj>D@{UJq)8Hvt?eS zbI{Ye9mbu;5^bhGbV}KXR zl0b3%1{$=s8llRk7YNa0v;;q`!pdX!6rA=}UJGJh3+lV4_-RT&P-~a0UvEa{rGq8` zvNXObHqdM?J;?qmtM}IY*?|S29dFocE!z5|`t=2mrnnuG?!M*Q8L(XGZ@UMhlOd!C z2j0^M{^CiTs)>vt#@?YvSn!Ec*Ix=!y%AJ)&aHP=N?*v`=Fi&cR{Sp)=O9a5pQ5AzKYTXdGZuii1 zsl}qs&ku)xnzp+&Y2w*v(>T+(4@Q?Y>Ac_*$lo2|@K~)HxHo^cNV?;E+-q_AT|PmB zh1OlJ(kD~UmD`j;92-y0;MmzA%hENO%Ngs6n%|nAFvX|0(Lq*Q_-OuCC{&Wc%vV(g zZe4nAr6g~xeOvH#`b*N|-L~h}Uq{G2d}_bh&%H9Iv>>nV@}w$S3C(z_7!N+au47AX zN=RO7SpPxe*0Hl)6U*G1gWuK}>#_f5qq9K|Wa{5!g?pd(a$$#FD?4n}%F9Q^M4c6% ztNhR+W8G&qf5U!6F7i>G@lCQCJg5i|=e~=u9+8m^HUBoSi$?fjomNSrhccVyw=xEg zuWSwU>6w!Aup)-(FOafRqMD4O4%FUU5W|+=Z9YMNd9{AP?xPX}gXr8iH){IfoW`Ty z?;Vd*DW?`m;YglUWSW0el6Y3$v;F>W|GXbtP~v@3K7aY!UmpAM(!o>pZbLC{>?EEt zP@Lu&2KH^DWy9bp`Ue$11}U#+bit&a`E?IDnAS(a8Y@0UyiH2}O3mu_&Z!RU1Om_* zK&H<918%C-bVJx1pzcSpR#C~)yq+MG!AtEjx|%YsrxyOWrt`DIkw#Jdp@r$NU9m;T zNg{U^k`nG>;J8x%O`C~cuf4tMq};7cq3TdP`T20wz4I%~fm<1(SR*X7P>LUtQE3Pj})z=F1 zLoYr~%AV%pleYEO6W&(JHmdL3E&03_qZR>uuZ?J$N129a~mdbx+E#0bs>s*N0A%4@{H) zOa&8Hn+oeA!f%~gzG2pdum?*Iw;Xde{?UcZDw?WVwLlxde-R+sdAEGwjCS7#53N+6 zV-CQflAf{lZ}bU!?kmvurkxK>$ayuUJ?u46M6aJ$ez%2m{_=wE?}W|w*Pyo#uqiut zI8ikR1R-%~3|P7s)Ai=VR1M6MpIRxtRHf6D->cq34Q-T z%>4%?ixH8aG3oIDXQEp<*& z(5-J4L5&cL1^r7G9DvqDI7}wW0?Ge$u z9yG`Zt1_xGrtc4pxZT$vvtrK*o72|pM+KWFrbt~2nJFvghQ|e5&a7^Xk^fObzG5(} zPEdbt#>0tyuG)lya4^WTzYL_852GU*Uj<&W)7YU)B^@Yux`z7?v+ke55LGU|7Z{o| zsjc>aeRVJuUO!k77m?dtHzmLB6(36j!p(U#6Ds+;&ub=nSohzXiq9@T+0r=MZ4X(T zuS^J-L~rqH+Gx&)o)s>BICYD%{)XAAtxQ_5{QT|`S>$x~{SoiYAvz=9dH81rWVB=j zTdBa3>wkvf$uHkrpjT^A2K!Zwcr_KcIA|v*RK!r7Ph7tTbf+G5WkT)R2<1GN!$Evi z#_;J`+NzDR)PlQfI=`q*uW)`GIqyqM&Wi={1m&FC$iZQ6G~S$q!eOPVb{)i^m3hm~4~R2zoJ3*A7= zNB0h0QTK(69!t(|M9^rgEbZH)Av4F>p%+AIueV+@ERdQk&^9;&LA|4cqKU4eOTbcE zJa}6+cEP<(tJA`U#)a*V&$oL)mGGy#u+b~SYgR^fX0SErD+I7wZ+JXm(Rz1No%SvVxm!`8Oj3NXQ{RfmDG4j9M&=anC+k7&lvdCR?XrNZcHe z(@_|(^^W)gcbZrML;2MQEza4Pje!$r0Y94(cZMY=Fk37{aXn&0SByca#$M%ctyw$V z2J+mdlB0lfX}mk&4GWQv>N+G0V(S}H8=0-8Yk2&ey5Q;IA@9X*h7E{Hr8IB%%H7`R z@Y&*|?IQaGWQqhkyP1bx3H8lMK)X~kF|S39I*5Ot+#Yis?}i-GIs+D?#|6h(7ifbF z$7PNYW&4qB?-nbag$~bD=ZI5aohSaeJ`!|0aJkfH;!Z$0vZoe~vJGkADenoMl-t}s z<-bdMGZ%upbv!UC@st@+?~Tv%A*vZ?k{$-bB|Bxs!lSIz-Y0cYKvu zfXsAL&6Zi~>{&lK_hM-D(2V=#&v5D;ci3RQti}(&-t?UltWhnd7BNM_)Ju)WoU=O< zjl*AO2x5;ni_>`Ch?~@%Uc%p*7cOCUP&4;Qbhdur?meh@-++50YTV}`23d{=};(~IW|+-aa*k` zfpS5$4)luOB|gw?zOTeY^w?e^ow84Q>8{H-FU7^r%;sPy#h| zUccj`aA14_*anoKgV*z19EJ~hrE29fsW|Q(Z#FDmL49)#RQf8Ji67cTzBJ_A!3M+mHC$7eP`-I!bp}2sU z0gl#>x{eM5za(olOzgY=vowW{6mJbf@L&JM)3*Qh=Y~H8hc#f_gFPM9P<=O;ag^Pl zx;+>83Pd~A5H`Mzc=wcRMDJY}7aF3A!CkNr9K9V}nE_v3>@(oz--o>*OoYMhTf5N^ zpicGTrf)WH+30_z_yz2D#5JtnQFU|^jR*j}7)>>g4^5E^Un)8iv+ly6yzy4?4C4*h zTO`vE;F!;eRKArl#O4Ke&F`p{M78HSjd0=LXQ%KFF^UX}V<>PI4 z*q8F+^Mna#v4Xa&=0z>*XD>K#SlqWajMV~H)o@>P zYFX|haWWh^n7Mm;{){$i%mNS0Mdmjly^WlCzXhcUe#x>^^R)I01b(nti%0dW=f-;3{T zXtVrLTQ$(k9`IF{_%_{hu6puQyf87HP4QLor)H0M{~)$ENGvO{QeEu3dCYj{)Sc*J z;U8NhOt`*+O+7xX;!}D~eyc^kF#{VgSw8QjqU)*zWs9$Jp13#1&3;XZ%et!I`WtO8 zKp+}CakJ=f4+bu{$szag*)A zl4>yK1SVQg2g!Qt#*pn1wJiF?N59MJ9c7gx8(ks3A`O4!+wCmw{}8EcWDh8+N?q-C zS`k4{Q}8C-X@+FYY5mt;jgl?AAbu?cIdC8z)whyhYKDOAHltC{L33!vpIbBvG zZSKrg;E4FN6wOF0x}cyy5&oNz@hfYZmYm!lcoM0TD}v03u(4zb2GW20lf8a^R?oI$ zAiWLyalCm=S$L`Iay^Cy5)=2Mvhwb2BN= zs#Le7d0BgJBiF~hol(nW5^MoM{qVkeKQNBm1aC=k8_kz%xqkd}mVQ%HUELrPt7Oul zLVOC}st)n(etLCn?ND0$TGr7i>4)G+XF>h&b1bC}$4vfR@4}bp^N~E%Dk9r0!KiUu z^JPh!CM1kH^D-_`dmkSc)8^Z+aa_KmHepj&ZQy4)_8g%GsV%>Lq7yP@vk#+~L_C^1 z2~ybF1QeHG@397~a_8l&+{%T^g~~q}1Rl-bqodM+ZmH_zCeemT0iO{6CeYD51UxfY zP9JcYDXlnP^B1MBV#N!RsNE8t|7(fQ2?&Fr+O_&RMnM8!7Bw%qSY225Ko->}QgF{IgusDNvd|=sA}|;{r^%8 zFDi@w?JKOMu3>%)?g~!j3+a!WK>VQdcfN6K^8B3#qywj!@G6U*yLJ1GA4?%;uh z>~({WU6#TgBAHKwq|`NvsCh)bI21Ic)!wQX%~1HpBll763n)#+c!!>g$&KJ`qjh8W z;5u9-P7IfR!<}5FFkAgNGeD+x;SoSsUR}S+ElZd;c+$oGynT)7SuYDHg0q(@<-(o} zChUCj?kVc&|4;Jz;@NUvQTubsg^^-rb2KMkUa254Y?@wEbH6btsxOE?sh3UXA8-1< zv+nO|^{rPezzLr}nlfixZS~Ysb1HpZe|O03Njn>|yKPQJPhtkb-U6RCd*686XZm{g z%H?YBVXha*d^L&9Wrw;SxJ5l0;wvx>Sjc}xeW*en+E3E#?F30iwyD&GUfH0CIBvv) zJg1JJyfCp`FM{9_#P$S%F^Kc0TRC0u?T3A}t%}0VdR`2|^7@AMuyyyHd*uO>r{4SZ zr(+wYZo-|pu_P_3>UMvJRK1jr|GZC6U@>1}Ti)P00cl8tpkz(qqgsYkX!Gx(u13(H zn{G|Ly}|q5uX7?Fy(R8W6%Wnjzr#BtGSBIYz-<{Q2@s{#gth70j50-@O((J1weI0e z<6Uo7oyva+K10N`m8z<6(q|dU>Xm|q)Tov=*gd-BNg}T+r7fQ%%x8Na%X}=qFXT-$ zX5}N3eDlw!PyD<&G~sbE7>j7+spaST{i?&$F3jJdjYp+L%&6mfo(;`|n3@khY(Hh9OKPxF?`BNPwsKf1f=vmda< z$Y0@q;(-U!hK%$l$z-V46x^!?q<^q#*LPKd24bw;e!OcEehSW?Q_|hUO`l?1!E6rKR(Noy9$0OSun)BLJVf(0HY)b(d`R zZY#^(^$T-IGLxj;{+w-3+2DQIKJc@4kyUe$Sf$`!f^&~YkOfw*v-u&S@lbt$$Txf7 z?pX9vP4?2-f9GOTP}-A~`4zAD9BW(VBf~R=UA?aY;?D2eUDDS`yuA9D1Z6{p*sZ)L z@rPjCgo>}T@WR(c#WiK=;!}4TA7wu`AXgtnX>yx)+{wK20XstF}U62VSiWib7@`Ivv#WL=HNdn+pF8NUZLTijL9dn-pmC_u1xsbC1L;7 zc!pzAOOyMnoY~v?cff*jP+d$GG~`8f)rQ|&xBNQJkw{W^|MB7Jr3a0mVLoIZ{cgpx zWEg3$$*o0pHn&${SRP$-sb({X0K}RkLaTRta#%%-WqC|Sgud>Ug1(Q`)332UEpD6? zJ-J1OtFYTldJwdOx14CDHHo5wF0)E|uF+`bs2{D|eh++3&i~Wd?>)s^+umA|m)TLX zc^a0>*v-gmRo1VaclBD&*$b`z$resP)~WTQwD^9uQkihS?cn`nj^+LIxdU(A+K;R6 zwDih5sgs%=gGIqj*;cIH^4+}5!G&EOBQE8?TODj?oHyPZaG)(X^vZ4N6;ErBuk0wo^&y5TQNoj#^r!fuMtp1DJ zo8_HORqBssw|$#sl4UX$bca~GWtQ`=gNFMs>{N23D+9wmkmft^67^;tJ!~3qwK{hg z3mUT3PiFU5O8a*>jjP>ofYE(3 zJbU&1c~`fsm7t((wb8V+sJ`3Wt{$Z~eEm+o##_fM_3w&}8c3U=W3ocA;HdV1ZY&4Kr-qj)acIrXfO@+Y3+m8aJ?MO~3| zV&_nYIty)vQ>GDC&;`nM&&4J(L?mSSf0Xzh0~0%KOkXE^gCtVX^NynIbWpeM=dYa-b$6l9 z?;h#(J#n{I{LR2t>z~%1i#=lJTnb6-i|96P=)Y^gokogVzZY?~mA*USbp-W%7R0Fq zfGTDKH{|Nzw4GHS-gs+g;-)%I$sQbcE~fErW8v>1y)uP(_H$1RILZ5(l~XI&osk{l z)?23{IBVM5ual74>Knw-#w17nTHbZ}@b0;X zf=)4n$;by%@1rPMy@kq2bnyI)mrK5mA(i)KW8zQ?Mfey@5MMTb`Y zs%n&UpjCP(@Z{9MlV0Bt(KPV0B_-FwzKraRtDO!EoC+qC9Iy@X{?p z6shC|SFSFoufbM4a824kM0~_*aCZ^t-uf69e3C`U{r=k4^le=Q_O3C{vC?zu(<3Oo z>w415p2UQ1xj%S;W8_`+{0?L=RHATfs%!gCCFQrD_Blkv@!;KUI(@Y$tH3^$p6?T$ zs*hR6iTKKS6u(9Fmuq$2b5LF7UX0=1%pv^`v$b`367r5yN>dQ0*_|zYYu4SNlJjP1 z+q)va<^x$524#C*ILZa(#`p7gcCD_h3MvRa|IZI%_7S@pWC+j2O%HB*Efb|bu$e9V zBEGKkJ2dK4))E`2&B3OmuizOx0fbr+Qj2f< zF6eRyLtxarDb#g5Imn#o!6OX(+c%qeNrLUowex=xJ~{xKNe^$WD-!YyI1p{%D<2?$7QBN7)9yt;(R zggdLEi&BBtd7B4$F6+ZUeM3IriTUO1s#|#}R zeD@ZQoVKpVchpF$!tMg|cU6JUP=DooMOOH><}7ccuU^KDC3ytZ28?p|lXY{8!S;uL zdt-mcIIhHjYKNp%Q0R_AWa=;FiI1MG@A*5$Bp093+A(yVtQ_ZGoKy9j4=)N;)Mv81 z0ApQ`T=2r{_~3QIcIJySDsNk46a;VUx_3tBeXT_%TuILnOdIBEIjonppLC}R1bQd! zQ`HNKRWJfN1RNK&!y4dE;=R)BLcxLCgkaow>!ux?$qkV?g*(ExsOrnR&nb>>pT<|O zp)cH2@gb;>$zuwtE?MmKiDmaoqIOjP<`i0M;)&NnF6O2am7cOJ6vpjelep<_e98Ivz9~_CPn3h9pPiR#sOk@2 z5K-yEjSF(JdK<33W}Ie~Uht8$#w};fcH_qr&?*%SqnA;xMP0s^VZzYql^DoUZfptC7H5(Vqah^Hgx5D+?KOPomo>v#+INwA2 zdz9F(|9E-!yrmXT?ru76o_zcK+y~BAFW6oWdYc)l;8 z@s8{pymSx$m$0xEe=UsfYW#I#yxsUq6nQED`|{Tv`%8KJrS2c`P10X>jK3Ry8EB2& zxccZX&*S+-2K?4&KW%dz A;Q#;t literal 62428 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�IG0ct?r;kGXaEEDO;k)kzinyo3Mv&0`n`# z*CGxf10d>T^0IEV?$L^a+=*(@9?nHImcuv?l?>V;ph5m^3J1`p3cXOQw<>B=R#r~p zn>Jf2kQqfP!%&}r4=KPmp-sXl*kGLwW(2DG7mOG1R{ilCu`^ckOzK>~DnZ`!3FQ7N zYM9Hn>p(L^dpV_NgtCH|aEk^L?@Em-M;JJcf`BZkvT$sGy&sONSNmBC3JMBm>}_vB z1=zP)S?zb>-|$b)xJwlk{@>c|0lQH4VTmq^?PWm`OyQio@v@H$&I>b&?!2=uVkcmy zEHO1Uj8F_li(&2`r(vi{5XosuNl>Pn!Hnjn#hOUHnb@{cg&L3$#|R%BKOAx#JWT)p zCrFh|j*DBBW&3FvqyluLlmG_@t<)^~?CCHkfA|xZj`K zol&+ny2XsV@zJcHTN_<;kY$m0CZ|21K2+^TMx~)C#Je%0kcm~bg1{Em;m8;o@$uY* z3cZlh+DR+*^0ZLq0qTNoCDI%MDZNGVtWq4Z}CYOMfX>$S> zd7yLDt0)QSJbl{&-f&qN?i6i1GjRw%{nP;ye?J=(z1(vX^b11)XU}fA3;!B0n|d^~ zbLY;M&sa9}*Y!_t+O%o+`J?OoVi17ISr_Db-Ey_I)^A(&kwF=!mk+{_f|Om}(khl} z8gVg(e2!Jug^%evZS&kgJRpLfS$Wf{@x_0e~;B2TrhtJNG#`CJwgZ%*N_Wjtm zMaK2YZ^qs~z24R%P`i?vl{J{x&R;2&fA7U6eO&OJ5Pwbwlsm`ugZ@lK=|BOl1>lCz z2JatfxPtuF#VpH+Me6y2RM!{okS39P=0D$lk1 z8<)MvxNCPGN}Y4^cK}&;5B#6dftI_brJp9fEm{!a-r_H4 z>MZ4S>RPsU1aA0K8)%$q zBkO9BQp9biZ&hnnfKv0rr!~bD4~gzP;3yeWcz6E-Y0Gi2w?GZEXp3gpSY=*6|X2Cp9ExM{IcZ3i1Q!j zqfDN`ROLK~+EM+g(}2dr9+64Hv!Q|D|Cr9L;su=6-=LL~yUPBdRtX*6?n_F^*p|5EEP_GD<4w60!iPzGkeZvO^ds*0`g5AI6kxx~&Gcb0XzxBU;k zl32_#myibuZP=6&N8VQJ0t&o9o53vttupE04xn`=(Ugk^<8}a)53+3g1JbU7O|B?&by+QIL*|{QP2e zFN{f=dpoMXGv$1+wR-TEHtxD451n+xPEFJ;*%zDx@;Z2vxCcN9iF}Gb?se~*`eb=S)1cYeL#}R;qpckjcl9A|d=EQ8D=bO@NZ+-tB2ODe=boh%^f!cGW${1vqEK6L4i&wIY*7dg^tNB_J zVsO-`tVSp~SJ~i1_O7Px=f5Pe6C?CTFc4eKSlfP1e4oCvei8}_!eq7|cfo{~KYSWn zE>x#k^P5Erku#{SARWtZ!LGoqC*l~jqLksf`*xcY?CnHqE#3jcC>nw|6mZ+?_fw`| zuz$~&wJdJLMv`EGVp_u#q1;z&sTan;ps4t`j#b>&P+BWafoD62S5Y8SX?vdPe{vsN zZJ0c{%;pfyHE0Ee0jqx*W(Vbd=<;IkMOyoL+S?~QkDFj@E=HQy7Qf4UIba!dfPGce zb6^;8Y1P=+567N*7VF>UK*CTuN+2X`N+SHq;pa}o;X5bOLvi;wj$}XI-r`jXp1hO? za})H2>!}PJ75_U@dj!VwOW6*`#=xns=$>+SpCoE30Ic@N;Wl9{zq~!TLkCC>6R7fq z#9>&RLTpkY7wo0&d}5R-ntZt=B4j;>%L<6a5{6YtK*|j)@ZL# z@kODA3u(4WkfwK3oSDZA<_!gc4;Jvhpk1AjzLfJll4s zp|tpypd3T^VL~A=PSh0M%O&%rIqYO(dFx?mi=kV{nk#g07#=c+G`(uUQJRQNIcPM| zyURVHCRxX;al$8VdLDj+!3Uw&(~a5bIse0tcMP+?sc+u z@RsMEd|-IX4#U8FDcD9KfH?I;O;vVPg1*1ZgKIL|^1Ljl<~qwlYPRH9(Qvz&6hGMA zm+FWiMa!18_ri(a3|7vcTaxfDVmuQ%D<6C-VtPXMUcFDgT>Z(&?%m(LiOcx%_BS{F z@?tEAqh}x#(&VIu>a2ED_mZq0EqJ)BwPBQpZ-tX4_z~u-v zF;DbO9qW%F+XqU8WHCVP#pL(&}A8TFXa?7fdm*Z9pqe&Jzyd|-NLSbNsv|1IN z9bdE<^^!B8fP7gEJ>Eq~tkvbhbWX(|fDNDrC;Lt65(Y;kmjaDoRW`y|N%PM1z;xrn zw+p5bLGK|aV{HN+#nWPib)4p-Cxz)$44ryueMpWG0+fh^O5QRQTXf|q#|Oz+pM^AE zYMYylhO*&a37{Eyk7lIewa$oK60l+Xp76>rYr*arS;AH-7z`p0=5-+EplTiu^fNa! zdb;=m@dOk(ZZLD|t)Ln&b*phGsvo+5@ zb2D*E6lfI;it&}2U&&j`JiaFDZh@=3giCqkY6$C#20@WtfCk}@mG}d%epxlMOGa5r z94wuLGNf0V%}Df5#N5(s$!T<7_{OKxv(PD9p#?~db9;)5?R>%4Y{<~Ap3b3|%VKfka&?<2%(A;~N>5S-&W;N$ug zvqvr#EGOI6l9bN#0$2v<@1`8kt^883t*O;PyZddePh-FHN^9LBtEHIzLv^4iGg!8d zyg(y@61AI&@jjFPuECk4t(ea9Ym)`S>brO6(I|AZ3_#O&MO9$M?k#x{hlu8U?G!?( zO%g_G4hh2__hY0GawczPyd=>R%*kRnju=Bv3%v&+??S@`!XVJy7k+bLc|}Eq=g6B| zw(IWP06ky1TiF<#Ec{X+3%5sRAQJ?3R18Tt)hS^Cf?X34UMq!Pz@xf_7R}w4M|U@l z>L89P>E$)HfCA?f8W{dK|76Ev?Y!LDGw8e)d0+??4m&I5wTlb*lTY#9$~QL#ZNa#? z?H~N{fmXms?nSUt1Zrs;H1yBg)n=ZBO>aSbu@77(rHtyRG@ZoI`>!EUhVj^b{ysKX z850jsBj0%ZK3;`Rs zdR~z?fyplb@5S+KR>y1CG_Yri8&xNm32LI%bC|7X=-T+gTRZVg|GPvYaUpQe08fn&irU z!j?A_1z*l(~kMi%LX8ZejBA{q|F&{lNc?Ti7|BLYY%1`lP$a|&E zE`d8>t1zs!?hOa&={)OShG#~r$R^UE4msEhSw-#UkBiFsknJ>QVgC&2%>iS^3O=Qx zd!;v|z&Y-CsYBks7(TD$HVS1_b-$>+{3QB5U>K@d3gd-M$DzIDrzYs@4=!U;vJqK@ z>rp!hK0`%KL`5q$&SkTurxHHWR)i0{8dVL>4h?#B4KfCDD<4jC_u-5FgsQQ{U~5$4 zRy1980RcpAlfGO&hdk(SOR#m(6R$(JJm(GMu0@}HQp49tE!bdunq9OOh^M-WdaAV& z*LBBvBkmrQ+Q6;#aOUhEO=D=R=}Oqrg2kZzRXWLz966#5S+4Q93yrfN0+v}b&ief$aFMj1tsoZD24j0 zCbK5Oy8{PZgg@}@2&^Dp$AmDEuV*&D#*!Xi# z(7DTfa|;apaMG3T-M8UQ0XyGmjvCplKHf;uw_CQ<=qy1@9EPaHEsr7 z#u|H|UiO{5xf}CJHYLSBgw|RL%>S+*yo?G1#=QNT)0}t{kWje@JQ|)UvzM5{LJGm6 zAG`&PMKfr&VWU0VFqp}??d5gwD(#a${Yr1z_U&hK^zL312ll^l^aG0h zFU>=5a2bWhuZ|URu)l~4*zQzRuQkrBY2_V~Vp<|j2JmMKjN6&(`HZVaz=g7ZWv9O<{|5JFKeQ$0K;IODHgwpHwkO-9Eiazb zVyE^1AG#g)>xRPmbQ$jeYM&4(PexPPaN=a?nN&ljl9@>47sq;QiJCQ!K3*QWfH(7-oeRR|F z46kIPj9AtteV}eHUhF7QB_wviPet(@XHG-J4VnNjV9-aVU+0 zH3)C?>4&xFp@n;F^!Vt^5B>J$yGs>*$=We2p!K^(w7aDMP9M9EY0z z=#z7h!SrYAKf1ISVnCAmNSfA<=2+r`Ia!z zF<<)IQIIvJswDS+p4*_k+PERz=WWWiq-TB@7X_#PZECknxaqv}ROh!4%ZWmnGp+(2 z7Tt!2kafhnmM^~>7P`>15wQ|!?%&b|$Xs42`9|e!!J|)Itf-iUVOHP1^zixZ%NZat zOB9kAsH<^r6qP_tJxcGYoDU_BMkrz6*7S6YV>=68)1>%VIWH!*xeDJD!9bjF(_IOv+~BL+laVVPfV%bY;Eid z%kjZ8v!P-0^a{(j^`P-uj3}OlyhwXTWqX;V!f7h-GZ>%xl<_Gofc;}>>3!l(Fkd1W zMZ8x$l4Tbt*1m-07IVq45y|roCZEBu5kUbe1dC9a+d|F;RnkB7gF1Y-41zQj#iJi0 z5Lz*Z`lFkchtuFNvf6VjH*~6 z4)|m5v151AB*bhP8}}F{zT9JBux+)q{x-x|-OFJna8=0oH64CT!dGvU92rz`hPy#- z$t*+&;=h0Tdw9+j((TJ$PFB(J9V$eue+0zeUtQ064N0h;Y1nB^fHNAO`{+|UG;l5O z1=nYXXVwB=$K|~ki|m(;1HPo;kZ*M+O&~Hs9d3f=hhAQpbmrHHOTUU;9S~jK1qplG zK~7#`KAO!Uh<&l`#bFna zB)sDSk_3ZJa0UzHGnl1dF}Q$hrr8H0}AG;nSQ86vO@&Vn3hcVW!wWgO&j^5l4kAKr4%Y&1l;P7nAFbOi~Z zru%qcaa?&unI5Q4*9$r-5Ko_CrL;(D&4$X!!w9f7O8iy-;$X zh=RSZ#|NVHIJ)B>#~O+`QJ_^ZJD`nfpOKRE4#p~5ybKYcqbNE0+Bh`0lx);z|>yzu!&S33j&w6C4!ASLY3KehC%3ynLU-$bOn0qva7iawE4Gt z1<#FyxkOeoWe>|pd6;{H+%tHX5|?8QjbzX<4nOm2z@q0V{AN4Ice^tuK$FZLqM8qm z@!`&aKHPcSFE2WN%fbkRh(KR;&WV(QH+@{j4fOH=cD`Jtq=uh8(3b~B@9Br3O?nENi83A z^5COSJ#=R~L10!B7H;3Mqfu{kzc5A%YW4s3mLYYl4f3nQ@Si~`K|X?8mzQ5yc!skD z_=1#e4vHeTFzeUqbR0D27b3~KpY+~z(2OC_uc378fnXr{vvQwjHcR43$}+%bpkVn^ z{8P1Dl|4|4*V@*Ri6l&$&mohHV(gLXnU#{@6Zvho8L)uiJH7da12Oa)(~Ev!Rm(SX zf1>C%{IdQnujqceWbpg&sUoT$i(IWQZXp+Ul9F&gJb%)Dm_|1KaIQhXGw%8mEbOblfz#_-Bn3^kE*JsPvS2>fI-6DD^F^69X+)EK*`BUXkUio9#I8ctveQ)5^Z`*j-^Qyh)+I7L#NFS5F z%3lz?S&^JTE5(X6&Xs2ldJozb_FmXoe&I5vg{|6I@i_86>@Q=%FDtRx2m?~mWD1md zW1e2A6&e)Oe+e)SXnQ5g8?YSuLMx1&2+1C>oJ0|sM)uXBU2lwRx0wm41Q}T!e|mjWbb8x5a=fWMJsMA@luwt61m$q=V~NHK3>UHu#?$ngo`wEE&s$3M=MB*3MC= ziu_kN1{6!lAA^T8E}t0{c#cKgQX@pGM2Dt|8*JJfD>Ya|0NC=}3RSbUfv3{v&UP#o zfTk^(X~(S5wQ|cWokGDN$NO^F>!EP>nefZQg02jsAxC+(lzMZs7UvIX&YL}Bh=;eP zI}!#lg&!-0)>_Ye=e@0f(1Nu!)7r_GZemfsFg7-mO|9C z{vyKlYvfw~t&Gt-GG`=w6vn;Qe6~e$FRGML52LWL4%gdw&QYL_1<;px-okz$$I#}L}<-|U+i?Of4gJuT| zgkGEwa2oEynFL9NQpZ?eLsL+|ZixY?SLC^H3~wxZBsdMO(y<>-UeenL9kN&(1)KSK z4Gh@pjV~kg%Ie5d(#YAl7%yi(3#JCAB#cYwO-z_E!-Ae)Oy4B_iR4IQ0VXER6zVPd zz$xd5aY&OsXq3~o_4$XSR)p@9ONJgx)c~TO)w8gJz;mdBN0JG4wj(siz83*YzZec; z%B%kgH6^)PG|6YFydrh*@L^dNe80j5saU1_uzJ1|BZ>kA%}DSj4jf^wO3qLv$F9q^ zrtrj(Plru%a31(@q<2xnW*lA>V2(gXGn4YYf{>;f&+4aa+co#!^E| zf1h-U$}1L(0_y1*V5{3J;h5&B)Xb8T_l#kkaA-+~B#R{IAR?hZ0tOXNe3kkMUZt7> zuNlu5vQ7)#b(aB=x6FX2cNqy@ub+T<*Y(s#FfEL-V_=!0oWbGeoNP^zW^s*_*fV1< zp24ZM;l;KMFcUmpdSS{;aH}HH9Miz?F7&ZJcM?oaxI6kW3tEeC7owB)$r|fMEq7$3?I_SjFr}|eh*eG-&5^S4= z)@3AF7{Bo&9YCNRLKXhS5DfMJRHd@a)wO4%`j)1(709dB(( z9vPu!qS~>Qh)qZL z*1)BU<`H?2g@k)?yORn+dF+c2K6IP{r=z2B{jzqS!h zU)#9ITIcVkma3^|OfMmvCx!tPRrkynG5~TwZ`4VLkA}#$T{_~lc%eyQZ&FjMNupVD zrwY0im@iu7Z(%&=b2yaDjj~Bq^$x>FKnIE$&q=x&d}bekfFYQk{`PKk8Lgj^Gv zvlt2rhwwj=86gsXvlG~n;FPec{T$i#9B&D*tGCurFt-DEQ0Z<9#2X=wW~+HS8=)!i zF!Q_k`YRk063jAi|2j)g^~IGsyOaNX8x6(tzQQ_iJ{CUK(6h28%H; z2`V|AAOcuqtsn{);Os)B+#8V52C>}{s+$E2wBa|X!j?rI5<*_mcKZ-noSBjQBd%NhJi^%Mg5~+WGAg%;vul*wG@_bj5Ya6jXZ6=-m*y zg(A~cpaB^#wNR7p*uT@f#<}+=kbt{p6jdn6u&!b2nr z7!|@Wmitk2)oDLc>$QWBCGvczy+W|Y+C`HJ`)bsmsiHU5pG~2Yg$xqoOY(Wlk*a`R z^F?BtlwRtFP!04QdqIDEP2_xSu7~wq_31dP>O#1reu&LrBqeT>=Yh}ViK#_1*)I=M z=H)@eB9Ix82Q+pC*TTy(A}8t%NN4pcS%i`~DIr8TU+e_PaJ|a88`lxlbS9Y8YZ!yt z0*9k4fw*PssJ+?7)n6ZP6pqS3divAwR?`FhLcYg|dgq`>m%5Dp^;#E^beub%A;ybQ zsAk?Yc5tL#oF%OW&&}Vsu@5F5<91({y2G-qP$J%&k|yJ9fU@9!-u#?EE<_lfx~Cno zOpL5=_rAI{Vz~a0R^H1+tmCF#2=7@|k)AbU_w8ys3`vq%@zRyTE-b`*p@gV_pv<&0 zJl%6^y#r0pvwcxeAAJ`Bl6-L^Z`c{f`bAW@roN_}O0Qz5J4d;eSHO%TLuDDOE>kCQ zKm{^6MH*hU)1MJ}SZXwRGb>thf(4}!(Q34)a|@#8yaUoLWuBPWBuD_n>nbL$@!SeV z>(B$fhjd|TCI7Ew+_-TFL#PT_#}qD#PxO=5Y-kRU=MP$iXQ$ot!ktH8rI6O?in4$HoK#eQ!ANwos)>Hd zm_0LIGvf{oVSE>_-T}yY`oMRyP?7pJo1lhdjVpmp501NfjM&jr{I8aV|Akf@1{lz* zD25x+5t+#Xo8WZ@^xO2T!m&Vbay)JD&aRf~4JR7L+V0lH<{YQe&zUkMvD0FrI?Baq z0XrF|%S54BF;KRp*$l)G0;n4PEPnAk%lRYH8U7z{RrQTyo6pUkl9u%mYDENt@z7az z+zy=`2Ch{2qY1oj<|+(85l!K#W1J5rEZ-gRy8>q<-F&}FRv$aGJX+#An$;R{MTRT2 zpMkCprje{FGMzmr?hA`OsEo%*2`!DM)15=3HNqnE2DmTT5C>vauCBZdo*G6L!;0GhrOcWDc( zLMe;?tAk!+j^AtSmFO_H)dW8PI5`C*$AATX%zcPjB9zafbO&M^(@PS3fZX(a_Z=z~ z;>Q9nca}Qj`XrWq!omh%#*pGkGGa_@AC#r}9wEF)f-=zH`HmAJA;iLk4Ov zU|XzWm?En{p!y`}@lC)wrum5Cih)pG7|d-pOFfYs$7&cw_xu|j(Ra&RChN4${D|4Q zMZZ}YCt^)rL|h*wJ2wIG>>Ol;2WBE&ZuR0-R!uAHKXcCXyjyp% ziOR*x;;vA&;v7e^$jQoL1R)iQ)rpojVK*-GYjFhZ`}&2vKh521J5u_7Y;#-U(1Q7< zv2&5<#S*fjl)n&;NeuN z5fyqOEJ=ehM=@Ti6*il#UoH`VZeI*_<9o1LD9|*O zM(EeKn-j~kxX+U(PLyoF@XcwNrP#wb&^@?BbnfWVVd$M6N01lG=VHj5Cyz0`>knHjX zx#IGq`>%J^WPUAw()_nJO7PRc25~3p_%sK!)UMiw5$e8_w(a&`=jro>|{RA;H&{0gyhK3dGq<4&<}$Ax#03pN^-#`Lk~c!*oq0zXW1ZTM&F!3|Ad^Cv zQXsjNa$XLcXsQ>gkL8PX(Nx5tnT|5rFpWi5=$UovE_EIHrHsz{Wwg8(QsuvSA?St0 zh6&5Z63b>qod|CwMOoN}ZFw3sTnFqD&1t8p{aam#5p?_$4|J(reHiwryTYEs(@A&QsO?<)N* z?=zJ=SFJ=p2Qvv9fGB!B(KN|@E~$>M@fB6!i)y9Zh7w2q!7@LNu|i)8>JFHOU|^g> zUGEnV1)^HmOcYhwI*L22Z3GQzBeTH7?jeO4dHH9gdo2G!M}quOgcDHG{LVD%&*9E} z;dRBu^BG_*W6_3nVX!+3b@61g>=Yn`9!#D$syrQ07fyEL(6EmYnMN@#(YJDDQ0+|1 zJj|!LqnUHF9<_=kPJjXnghpP)$;Be)g27FCO=`0;Bv1oc%j;LS0yTz9e4WZ5-~PjO zSr-rOyf`J2gbx#+p6JLyC#vx)W&&ElxSfB6$3KXoYm{EnE~~!&k4V z>6__0?d4}kTWXcO1Tem2-_p~T+QL}@$ZWD_Ky?_t+9j+!t2TmzlOB%99Er9bP%9cD zmXjQw)E6Y_`LsMF;tYw|kom&~OJz2;W%v@2-$9Q?V*-8kol#YHGA(Oingb)kK9K|) zv&a2q1~acoFbkSN%#!JW7N%ih&pi?JgAf|NNq%ShW6$H_I(4cXXwi_TCS}5R zWP0b8y{H6o_dvxW+7$v}w9t%!e!^JRW73qc)`zqBVEKdzBHD+2(Rmn(Zzh+PYE-}C zBu`xuW}_J%rjR1!#@{F^=~J{2=h9Z9KYUR-J6ub#I~IpbP(pak?il1z@<-K7#|XEJ zdSo&C3!hhXz77e9KOlty%(sQaqpnU0+Bt+tVtlkWX}@3ILyEUq%{*W^Gh3`A7Ci4*>0W#2$kvMN0NLx?E12h*jBB?@Y0sNz&7kD!?^S2`>M;kM_EsHqT%W|WCJ#j zIL0c^7t-<&)VdQBm9V2d5W&owm1emV7re}&lbNSF@4Pn+1%b#7Os27C-y32%_WjTT zX=kAf>tMmXz$1nekRY`+4L>evQR({@NNXFPGJ1Y?;oyM-w_j0j*W9vYKZbwO<3%!= zD2L9(I0)iIrCKzbzrV#Fa*EExYSyG0szv&!!ch?`SP89U4;2$YWtjm;WhmwQtI63u z&Y48L;=2@@^a^hh0#+DA02SJb2*9P_J53NLjNyzg%MiRqwR#TvGUD_&<>S7Jbx4%T z!Z+hJo?r+;3F>GXzlpxzPn1+Kp4OXMd%~f*&%FS5q=p01&9_XTELQRw$W9*+!;wS z?ukIbv<|ty;4H5yurWXT^0w^3%gHp@omb33eooY&C6IdJ6>c4=b{Wj(WDBXoRk`?x zrR>T>X%pV1jKaj*X<(V_n}^l|SEGI%z96s}9$GnM@ao;{>#RG*m>=HVgVGdeq4dMT z+CC>n$sbMPWRoml1!E@5gi1?mf=u+oYlao>T4I{94N@byaIvj2eiBh#iz@V}Uu``_ zFgQH`V~mZIC8>pKB2!nQ+8Hd|5WDCsb%*i(<~&w7n}@Oo`JlmAwiild}>aMa$8Nt>b_@+8#%Hz0YT_ z*ZcW=?(^Jp%zt1dp&m&4c|Oncyx;HF``hb{6gS%9DLgz7+$qMb2cLMCUXWB!;xpeF zH^b8fO%UaxW|OuY#}5G0lC-z{R1eqJgJ_f`&-V$c%VXpT*{%B=kui}+B5$pHhs$y#>4J{1r@}{xdIVb?! zk#b=0d*~gHj*^JdCw-W$pSU$IXRM3KR)P(@JWI+!=Q7E8=+IS1>FgUe2yn;))pT=M z>88Aw`p8Iqzb-pl4D}ZOCvk)P<6~^W>Cf((xA=u{L&HYWy_db!pYT?gMpdrp=(~P* z?}zZ7AL*;z9QV%Ztt9murpz8G(QoX8g|9lcnAnqikw`)qR!H;Tr0o%$`y(>s7yQ7V z)oElD_8Ki{Z#@TRbbC+aB-BP~+i`Tv9j^ix!e&I76k8k1#z2;eLxRYL+2U4@dKuAk zWjcY%TE^25#1iTUSX(0cjiNNphH(k85cu&;evwV*NK7b6V9pthR(WY=EAxnH@W2+>*;3vT!o2jEFup1qQQKRcx9p2QAmP4=pgLe7{z44ogf zD&)!4n0JUNC35D#AkN-nqzcPKB#P?-Z4rs0#`b4es4PnGe`pxC2Yu9{rRv+xOX&y3 z`HoJX#Po$0e*}H{F98SPr;5O;7H_VBHJW;2S(w{r~N3J zJGFi2)MF^9V3GUD#MJAF=KZ1ov?z9)$@95*1-vOLlH+Y>C=jo~@jcLur0i5bMDo%w zfDE~6lyN}!0f`luqA8vV{ZltoLUsBPbt$b@z=`rB2zI%8GhX*VIZE+(7?dJ z0j@R-{oM#wq`E5yxeOm0Al##YF0GJjX&#LO@Ua(w5&-yx+Rv8Mwmb`n?nB~o`u%$L z=9U2Dc)&Q5Fv_rc^P>0z8OcdV0)=@A@)N9Ez>ZKFAMSzZbuT9fix9qRzEKOfd?J;$*1p8#zNB=jYy+bBS?kzMVzChhkb8m4 z3Bnh}=`^3AtujxPS0f_jlaid*t^_}7Ef7}ODEkJUfDIb7iT1fAXTe-Oj{{BtJVIJF zoCXC&5i&_CU4y|8Xlw)!HM^J2O0o$J(O*%?`kc61$AAjIqrH6|tu-acCCmwj4|f;9 z&pn*nB7=@09!wNXL)$C?1HRZ3Dxr?iSbDOGzQZ|%Q5n)k= zS~H(*8Z7&9c#?hD1SnY}Bbm&TIg)lMUxWSzq-5QKS*TztS&5g|gzM^t6y3$pBjET4 zvS*cw$(0L(dUh}QJ0q6UBjPGvkze)1ok21WmC3K9$vUyfSq3gBoBTcA5NHu|8Sm2* z6?%POKHQ1^2g#6ab<&@;wreUg?l*$W_KVU9fmvtWg<8xsO-~H^g2CW4Ix1EYT%hU4 zGoRh641tL_IgS#|B~cRSUpAZtoP0=`FVSOOin z*HD}r;}B874*=K|F_94kt;&#U+8`papJPBL)m9j6EBuSDjk2ZWheNvk?61`? zCY4rk8=NSM;ANjAaG3enM5h^50g-cWa;WG;gBdnjW! zR4foF@hS;mE<93ol)bK~8WXCc4FwftF@1kK2wIMNe&ewN+F_LpRA1EuTmPInbDm;g zR=hA^H|OESYv>{gH_GLcm@PE}lFX{^4M`pAi+Y_L`k>j0GQNXy8t37}6Ol~=>E)W8v{?j`3Q#ElphL#CDk7NPB(hRP zE`fs5L^6-fEZjMCz0c4@9izW8um9fq?;#XSbwJjM-C-!hwb^PJs5JcohM%`(rSjv$yBAhg z(w~tgS90VzFYhp7DKw7@2#3SHd&~@i1GDMns!43Y1-yUKYBiuj*VLY}r@#7TJHXVI zSS9=yaw(#xWZ*UNCY21-gdlljQA00Rmu$h)>JmuZ7MVKq(R_!_*O^Jrj_6)7NQ_Qi zIW2jqTJ^bxT{L9#|lQ^32gBu&+vCp>e3Lf zz3_&r(k#CVRi&X#P0~7b0ZaV@bKYl(M8v zH*m{|=#sL9<*&Ig<1fd*=`Jo0!R8DFw_D^<9Mb#~w9_dTHWb)Um7JyG8)dQc4*P3m zN7N=Ka+ex#S)uOCoqVg2cmCcaoC_nN4+IAs<^!aLP`+HJ9x`h}E`k;+TW#+)V8YsL zJjtBuLow9R*L?NH!}5o&yKZaU?f1)3ZrYh>y(j;CnYxLW>3h%kcXmyMc4=)Wo^y#$ z+33w$BeecahtAvI(z-G|--Dm*)mnsCyUFO_u{*WyeEd`GarOgR`G2w5N50+ae$^}g zDfy-c3U&I3QLlmnpQhr!op~|0X$t!|b7Cd8YUV0xccY_oM#g58$Beo!F-bFati;y- ie;Vk2SNR{k?(E0k|Hj)t^5NHyfB4fMblv;Vj{gEwrQ(_Z diff --git a/public/kcl-samples/screenshots/walkie-talkie.png b/public/kcl-samples/screenshots/walkie-talkie.png index f7593684ff837a07a4b4d90f32ad9be1eab9769c..f209790f7b3589493cacc57638e4e4e757c78833 100644 GIT binary patch literal 59737 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 x<<Jl}iI{{i+&VGjTR literal 68295 zcmeEvc~n!^+WrY3s7L`P90`g_ZykbCMI;!Uimd}}y_Tv-R8(%AqEaM)a=-~FRkXGO zf}z#h(n^I|ihzJYK~V{$ts*KzAZVf>gb)J>B#cs%RC?+4~)y z_j!lC6Zhe2ADf}$hGH0I^ZxRsA7j`c_@mkHgDv4V@u9j;Fvif6?=M~SZ$6{7*!(1U*lA&!U?ugR&uL#WCU32yIf1iCRIQv1CV2<15Htm7j9pOL3cMU9X8X5b&X)=a+h&cHtuQbn%)_keGLx04w^`VaIb_&d_? zqx=Duhn7raUD!Xs^3a3y+-1-D?}^%HxA2Sq+Zauv|EDn%^Z!3nq}j&*A0H$4XQ>us zsp_e(0YR0iVXow=g)P|&TSD3j6xTPH_&2%k_alz4oQz08Ias|hROx^#9dx1m_*}kq zX1?s4RWKbyNY#hN^>lL@ScH_NNfm1+5T1p%HWUuRs{Mm2j*yK^BASkY-OQs6G{C_V z3)-&5n|{L=eZE0)eSDN#P$fIo}G40 z*V9&@RqThIGxk#A`$tT9-)6KtuETqao1_NXtY3#s0SA@MDu{W!$Mzgxs$ z+N!!k3qX~OJY>isdRW$r7tx~~=}OtC(TtG_JZMiM9174ghV6xgt0XTn3))Or0Ack{ z<0_sD{%f$}B${?IyVH*RQ!B1(yVf!b8^8~P?PyX`D-QgXkcZKYuMd=)?AbF|COX1E zuOrguqd%JpXsn5iDh`0Z>@xuda}%vIn+Gsra}y)3>u-35 z65woKZ67j~aC2Wp6MeS*V}C$9Ok;HTPm~5QWPRkC0noO`1lu?dC;+QW^-$5cF8Hd@ zmL5Y)oYyo{)29P>?Mno@Os#@ibI(AFF~#(@ew(*4(K!t>P-<=B`+0vs0TfGU2-_>2 zKJ2m|lH^fHGJr8NO^kUU0Y{h$xE4}`3X_G~dYdf#(g1dB%A@x7hZ4-h@){9-whaXO z^amLn!T=@sujs9&lwU#rW;&hEG>t`T$wtIpOl$(jXn5_XPp5JvQ*zj4qDma;D`g;? zFqI#D9esoEEwJ4|#mR0#eQ0PGjeuWk=G^M10r!hW&{7K@7#Rn7cK{#uqI;-Gd5H8g z!K^eXvfs!7SZ}xq15Zb(P`;%9!mDZPGI`PeP)MTr|0QxHvX(B2S(_@r^y&B)lmbv> zHO&KXFPbVzYszaa`!SA;08wUKI&XX*}h)eS^&T1?c=9Uzb7#+&Hm-F_Y{i8c9# z;Z!+-zA!a6-h_^Q){i3z?M*;n>HwyjLpNP@nvAl~{>;zhRpeqi)kLYDX@c_JKV=I8 z%cakz07wP`t}K(-``5g9ElJ5`AR1+|cN1^w>$WK7nhlV<^ikr!`w;*Mz1V_(XXG3B znE^t_L=zh=?_a>cO}}FeVoIh~Jc4e;fU^CRGmU1;e)_}#LUXlgXa*4K8waxJ5%UuH z@BX%Xl%_-zb4jPnWgrxI%LE0=2jG7#rg5_h5fhWR={~^9O?kfQ%Ky%4e(LW{LrlEs z#b4C}LQEK)fu8qS#Uf*TR||iqMHid?Z)KRg^?O9bHkm|Lp{2=pQ0p@NhCYuN00!oo z!ay6M#E}EQz(1~*-0yFi<}}mnMNvdTYX;EuPE%dip$I)t7HzWdK0a&`G&ps=Jhrd+ z=!Rz^xV}90FKyTIZysUd(<@Nisa5o^f}|zT&>sKpHAM#!N^Yoy7*nh0U&m0H?C)=a zqKS|6A;od1{5ufIGJU$Rlu|(dEP%uOo2}Cn4p1`y;gFlq8T=nDrke}d1XN|If+;zz zALMesq+!om@>zd}FBJO8XVX`1(pog_4R*5zpwwa?qjv+Zh(j#OY5=+`Hz^be zMg8E+f%XlsYh(eIRE=Ch)yqxO>|j&I(LWEjHu(n00F)%nluyhYK-&%`P_wNc%NN?w z&4DOKwreWdNp#Wba|fsq%V~^GEfl>*M=(=zH+tVdWI+6n$-p*4BGf<2&Zi?FaK23j zjuY_mR=~>~G0J`gFK%&lx40=mR53IxDmzGAKXk7Ic4+t--ud!zP%YSFuD~mz^C3iD z#V1BMA#l^|CYkPda;jRS$>H|oNLr}3^uTLx1*G6d3`oH0+`_sYT+k&b_~`2m3<8=u zjk&0`(-<1rk{j7VBVgS^({{Mto$@=~lPvucg&MkB3lxW_(v;PFoY;d2Uj0`n)oGzv zzqiq`GEJD$bDo3S+J4^rAOuTY5aNZo_y&~yw5B?^`GFe#e`5OTjZk|VM0t}r_CKNr2FM6~SZ<9y1 z@sum&Vo3#4uVk6EKXuWM@(ur!tIP@^bahxUSE)k_gN2}VsqSUzeqeW;W|bg2X$TEZ z5AA+g9d^DtOo3}+a7`;y{|8f_+E*E&rofYeIF9BzeAhQ*OzQn361`V_V?llAZizmJ zfuzFK98)|^AT$nPZ%H||TI8lUj3MEUL1RWkmSJ3yV9es>AlzZ)7b29ClU&(d6?z36y$64z2Sysh^Z1v!{1kv<)y_=ioWjQ`MJ!|l_}6RFGp#7@-46PU!K+bL{HjK%uaN{J z=cDiGEqdnB&7+EGO0pCTE54|+E|lyJT{d`-e<9!2H?o7fuj6URK|-#dkL%#IEZxn} z4xaic$T>|pmM1n(##7+UaxY2KeN1zVt6443fU8v0zd96_4rV5fMD5vXLL}CSsvC{b z7q>DE_=pGT@K@Kex;_woW679wr69tVqdCGYUL)x6Lx#-j+^#5-AF5AKZRd4fXG=k} zxCO(^Vz8Z)cNB*HF#k|ik5jsgTizpK)2(m{sgQ=~Tm?^^iU2Ju1XjDeU5+c`*{z@9754?5eq;77{?~<7x1($h zv39rwXxG*sHKs1)GMfDKEa;w9vtO6+E>baus#oYZ?Uc)?u4VO{OVc-J5kDZ63SX^| zygzO0x!+vv23-sI{QPo>&rj0Ih{$g|7236tr0=Gks`cxSjOXz`OO?q|0xZX$oLDe= zSVT|PUa3Z1tB|(U)$&5S9H%@g`rH=Ft?R6=4X@!k7hBeBUCbG=d(H^&!_gmqt2q2| z!;*zhcZNM*!aa^$m`-(v(1Agph!R#UDML`KUcz~K9`7lOd=(ndbGg1*&sY0JtRbE! z;HQylCYw!OIsL-4UYnn*xlv5;*8ClN%yxd zo;IKQy7k;cr}3%mQ7cERyg1e;>Af+#PuczO$@6R8hmotdO4`=&+mCS1)zwAhDWG6V zuM1nz)=3^ItZXT)d=2o1detDRQ>*1X4d!$O>KxIKl$pX!@vffT%*uTpX_AzLG=1#Bc?p}ymDpiu059H$KTjuFWSDSdeHZS zhwS>#XFuHia>=ibqVV%S``z8K?URhHIqzny{WTz2J?`Q3rlX&k4cRejYH`u2hSIo} zuosEpfdQ(y_2Z*fB(^nXk+MWSjFn_p6SZP}twgHToMviIi?s+#B{T|&ThceU zYknK@!~0(jn*8m^A16jVU+}2@`pG8G>V2wJtXuJ3ohKeY&Oh0szrl=j7wSDF6@kp2 z_o&>F8krFV=Od-*seN`+5s2u{BD=e2=q#kCD2UqZq=$wS)J3^%^$JKogI~PQrXIB zg|+3^hhT}b>PqSfuL(01&uWheztb+9C);w4U_^ar1%ExDx+)VY*e!Odsf7!!_IlFdmEK^rsA8Gq}mls}wq==KY!khWQ zFvO8w7krZ2lToIst#8=osA||5Wq|%D*l-rkq(y)TTAJ9+>&#E<$rq}(0HMsPaMNqo z2yWbO^C+|4uWX1Vtr5T8lh>BWC+m8rcPC=u5dfTb^R)c#2Eopp|# zzb7_=-OWGnaslReYrN9CysBtvl*Q%qw~n9AUhaST_stKIFE>@6@|-qaw7vS*ByPEN z@aLbid<)cm`KmTy=*gc8RI|kk~5Te6;K?TVjK6`;#)_Y1!pvz z6@?!<%&IL((?4b@6LEFeBClGBz3bhCwBq$XC zxFVj*jR~PzLNB4?3CW1<)0yLs&>1Cbb#3Vm5Z#2g7ZU07Zq{9~tC`)?8AX#RJrckRZg;T`Cv!Y8U<(ajwR=irBX48HV95JoLSl+;A(zqA71s2C7HX26y za9y5@N-yjvz}V6sS{TSQG$iW$S~f^;*pn?odfAqp_9HBM44@Dm3NyIrG>v6_$p<>T})2f-GgM7ZWflM z+mi6~LFH%+ZBIi=;r&ho&y`#&GEZ_4u~V?<(otr^%KI5{*4S`c;fnI>gDXRUfuKl{KY2H!!&646MhWWft{ig*dGn9o>e#u|#WRc`> z+kZ1=G1yfs228dp&M4Ge)M`1J;9oFR8BSVY2JJ8+ArpEPOjD0ZnSk?{uAVcByp$~M z74Fk@rQ2LWuL5=y$-Q;)g!HG};4M3k|ZxbVJb(fuHEU0*~Q>?sfL%2tDd&&9TMRI$oFj1TJ3;W%i z4#|5_7Q@BU1gqFA75l8!T~J;?65Y!?&W`8**%}(1|5Eq;Awr`N3@(PXc^;Zq3}}@Q z`4$amJ?QMxMQZ?BNUzU#MRovG&E*jB?0Ac)D8F!oxUd#YHKoe6YFVf@5 z4=r6;!zVc|j{0RYX_SXB zSIpGcjbQMpq|Z`A<+n6O!5K}fc#)gvnB#k0zvsHF3_l%o8neTs-vqpD#B{gT@Z{@C z*OFBt{2G!@*+SX2us_cbU*Qg_gJWHt1b3tO*Gt`oY$eu;Mi~IGbX0-W3dBwj3Oa_B z+pu3;EpWADjNUZsWvj{u?^^no7N4+$7J8V^2Nc*YGjD9LMM9o391}z;JnWo^m=SMM z&o`(TOJ1QRq;LMVH$`=@P0*aO)qcJ@Ek7D(sZvGp-u}}tque8M60N)kV-`->o7G3Qb&+3F5b`qgU|Fbc1})$;(dIw&R{hMcibGhlt>8t! zg8h{MtQR>@DRaLS_Aa&0ACwB0*ID*I{t=Vh{LN3rg5Nhw$E0s=cJ_A5mPUWP^j{Z7ew6X{ z+6R+A81>Q8e@!-9ym+{o-QZ|%v-gjB4QC0~RY9veVtn}v zy8LUG(4{E7gxmZh!DVcIstm0y59D1xxu(pw0}}AGEjNve=e#!Es-WE$^2ggpn z;Ekm8#gA*herJdM_g{Rxbcj7;=%gVQ!=p}toZj{xZjYH^N1|8WIlAljaldVUVsZIK zd66ihV>GWbY=Y;3iM|D0Yz`?Wv0lZ+_MCrI+W>;HY~Ts@Pao_(*c+41xv_ulUgA$j zpO(42o*#Ixo?z7J1W#IlvgV^c=2rDL=4K&HF0CngIQ`coweDsbX`Zpqw1oBl)#Uz( zyp^o=HqHscrhrdM?jXW6GnaiB3aReT)&^)-J%04)y~B{?_p!`n58nA;)YPT_TFkIt z4EBgEHXAZ!(xRiMyoX~>yY3tXnLpgLu;94QLfvkDwtM%`J%x?m8+c0>*_o!iFv978 zZDQe*K*xKxcirX@wc)V*0(eYVm`>(bI zafyeXS5QT~?jID^#mB5eRllW^b93vv{a&_8AfY7Yk_#*?EK7s!{RU%0cFo!#%G?&w zG|aPxbz@bvkTE`fCnJx)*P@uGYdxbWPp?0zsjl&wFa4}bApfpfAT>}Np|$Jat(%9L z%_v?D7RA6{h5BL*z>d!^9Nz%^%ZC$VtW}v#4p|zgx#24nEW67h8SeuFw!_SnD;FP* zk$gT8!?h1;7_dioCAU@D_?1Lc&RSLu@Aljt=*_4~biujyxbM=|VfB4%*9LHE5m@mwLm z{*pT_pp~PEZ-A!s_Dci@d+H9V6ZB@oA=^md&)fIdc~9Y6Q9}NciT-M`=2pp6hqMD$ zxb`8p3~Xi zbVJn(Rq!;SUfRwAZ8NiHP^KLfaN>eSNWVDaxd8(assKjJH?sZrE5Q&!l;%+*Qmjw% zcJJL1d?W6%4eSPX!6=Ta802zw9`>my>lqj74}+u9B@vEM@i8l)^srC4_wId#mssUO zIKOn9!I&SiE5)bwpgEYytX)|2FvNZY%VPh>4g80;fuh&}Re*iPA3X$PEN7>j%6s{Z zqiQe)4wUP>uZr9v8{|rEp5-_zpP%>iMd2owc@BlH4z`K9&;s}i6F1-q$KQSAKdE@} z80%lKBi^GC>j!3L;rdsspGBv#llc^*CJgKv@#-p0r!}@*x^4;(CFQQg0I$;*c5X(( zwT{Yb##u_USchnB!mkm(J&lwxMC98-Wv;LEJ6`)cY^kgzY&9g1Gm4#x(Qk&T1Th5r ztEJqeSBM-2R5CV2Y2eiW!tctk{Ti?p;CRgf$>};I^2CEdC9g7Q>AFw@% z@t;<>?>%#nj-L5u8L11em;6Pt!5Z^Sqiiz9pdu#&HW)~CFG67N zql^Qy1M)r`-u&W~V%i4s2e-qrkqDD}k3yYICtG>|DV)o>H0m)HbdC^S0}GW#m|TugA_Q zvzy~H$l^#>=$KmHQch4N5|1W0vh_7E(t{A>%#zFm43*9yJpg-s7P@bo)r>!Ua8 zt=p;AulfzU$y z%OKkjzb+a!GxdYoTwYVY$4B$hy!|^rNC=yc`3k$(w)vg!+Ct7pI49#HRNOWQLu)*1 z*d5?#kVTuzhE5urGTq|S!GQouc6V+jAymqj^tdf-tE=zM;i3@&L$^McW-Y5}!9kGl zx_av(+2>BfBk;Anmk%oEWxYy@VYHvx>8pfaaM+8K6qSt^j^?VIg~jgr>-+)i47?$>e0A$C)t)T! z5?gn><b_%$~A;IT0=M8e8 z(K(|YHg(r)uibKiAXEg3^tfSh5?ExTyO@xap)bHSM z(*QC6wjrMiz=C;WW(_y%7a~?m9VLvUdJMF_*-%=^IVhY8g(D{kEL>=UNQ|FoNa8oDVO8B^vxk}oDLJJuH=UP`j9`kvK#Y8_4zc=hBqob@&DW%+ChaA+Od^Uw7KG9gNsw3 z!qr_AT0jwG8Wd?fC|d|H+CnDSg6&q~yvTYpu^|bM)-rDt#)4hA4ZMy_yW!#~AP0EV z`?+&QIreFYG>FpSq^(Dg#4m*q00$9sa5dQXIajx|rYTM7AW(oDrU9A=+PDn;Z6 zHQ6We%di4peaUVR27=)~6t83mFu)#mnc11yr3ybs73MSjB+xq%qbBQV@Xpn@xR^O% zK-58s1FmJbxzxi;_N1xshBI#qZ*IH7g(#29ARLC1ApoNoM{k?EPhM|Nj(hDf{1k_R zV-N`szVZ}$aP=h|v9{=tV3i>jAt^mAs(%&2)KT3=J(ctJT8x?;YfO2`A_{a_QOJqy zG3jG~!niYK6w=Ri+-E@g7O`M(EPi=>!tM^sgu)?F=flM4{*=yeTcJS0zgJhAA6hEB z{o04>Ww-V;LgZxXD|wZEWV;xZhu*{_)qiUgW(H7capS1maN|K@(#`14WRVeBpzHz} zDbVn{fg1{Iz?Gq1`o@)?a!dU8HCsOy&{wxbe(yH{SXh=3bXX5agN=(X$(pC(>A7i5LxNb!tShg*AUEvF1}eM@RVk2_=u{Biedf%I^0qu; zhq_O<%dVGi@X|mdY$B(nPrgr1rwKF1P}_|HienoabS6)7_x$eqR-1qmKDCBW*`4ju zQ795V{UI==ux`b|qdluyXLN1UjXqn_q!9-dvrjQZ_#AUfkuXl{yQMfv+cgKUoVOJ< zh-AVi4=VR5+8k!*1Y>9`O4fn=7EBapcU5{N}AeTj46`HAOiAIs|M8z>Ok zSJpO(qjdLeI_4%8uPU1tR*-mbaM$>nb%K3jpUtX+V_Zq?urYx|%UIV<0d^|MT_kEr zh0Znzgsw{4yhENB+7+Ml!~+9(NXVCs$=ZAWGa?7#mr(hjAU{|U3&3fJW34aSp&M|6 zN$SsF23YRB$)TGxUO3W?8%TQ(P@0lsMdpC`1FSgLw`p0R<8xDS%P;1og)IVU552uf zB`JXgE>0%jvm6H9LLGNAEI62>Qn=*=*B10FTiH4R1B5N}5B}0G@5Q_1dH^&DznOxN zp8^q{6?vo|H~_gW18Q0eflSXbKzc8KCxph~Y=Ucu`_vSQ&Lsh#gE>u^<(Z#dQBZUv zLm4|htLbFjl1M2p?RIvO!{fe!R!$HJ!JNh0vGJ~(h=?(+n=lc%)N2|@peDi(@jkSOlGsSU*ixb-*?{-M(*ivA2=IStNN($ z?J2|w$ZZ(0c(f*KilaCCj3(^^HpfgUJg4zH#ozp=&x{!1*1*pFOLw_u96KN8!yOvh zI#FpBC!hV>)5;>})x665&PStJ>UJwtu5bP~&s?#+jejo8B0pe7=w3d~7U!uSZXnO~ zCduRonsp#LTOGzi*1;M+psbf|5tO_(=(pb>N5_RNM0Xl8}gK%LUGSQbsD?v zU%I;cye5l0+Vvz*FkT1Ss^CH&7jyOpG>&hvnDGK#>&qw+~T2|IzBtmdCQS?Ghd24yFbp` zsfd+31^oEk)X=tx`@(}ObAa$aC}D~u3!i;LWiVCTw(prbiUI}0IRWEXHX;0W0w*%n zDF1}6u(U4iB^VK%#L~A4+f!z2_v*j=(FsLu7QFU5DS49p`uR|)TEo9lYCY8sy6(bn zuu@^PMm*WkyKrzR?f|O?+euql7+Wgzu4Nr6-LF~E-R-o)qvGe$d)QYQ#Tz4h*zp<% zo0$l)@23Q3dR@J>!b^8U*ScoUvy<8Ku)4&EAsF$>mwXk}n|BdHBjF{uVN_Za*)g#T zYk#cJccT7#USQX$G)+yqlBayM)3+TsTU^h~>V&4s;IuO9pyEPr8Rrz3M>*w}U?cX( zF*A}Kignh2ePr%f*RGT&9+e7wd`9DtTE!^d!V2V(<)!hvaIcQ>zC|gXT_;gp81njD zZ=k}$_&!va^zCCFjRt2leD!6LBNsMQa2=w0jRK_F2~z#hAk{W@SD3CPPVOV+L~E+; zqBOQn#Kl-EJMulL@Gzf&gq-G$r25rz<`u^@Z!UA`%ydSc@{uJL+R9XB4eWr4VXvG| zlBg4}NQHAE#v>x6ZQs>aNOTpPW*Bz9vx0*L8v04}no**{1pZrQ%Cu#LKLXn`kAn&^ zCY2x?W<_a2?Z}O#@ym7NV_(^~D2KdKFM6bu388`>HlZJu6f~QR zL)uiMFK$S~T`+{9lWZx57%cA+o~UZ)w{?BteqJ_e&w>i!L*Qxdf^c`_MnZHb!+3C# zv^FWX5{d|fPF<0={0`pAwM3#}k~Qi3ILZqVFLPY@M||o^^=Dhk_Q~_bO`I6)l!i4q zz>X11E|qduu%k4-NSE>@I;#=nC?uPL|0e!i=JI>B)ko!@VS8#Hdlv)k((N1uPQknT zqGGIP_Q{Hhil!j3;Lz>M&_b&=^2KTzU(5nDFHRr<&2#zvmyy5-Br?XhiW7j!P6iZ= zzo!dw197Cgk~ffm+>?Gf|4c{ZUKuAS)}sh-AcFP=dg28cj)ft&9^G3wGtr9mn;MMn z%ZRW&GH$2A@r-6-okV^l4nG1iqFE5a|+->-c0ejw58#+Q!9 zcTT5Sf;Al9kzB?+RgO?j>FYoF>=Yo1cP-&{JIA_WmagP6*e5GC3{!CthZG)xUv&>E z_eYX7pW65~L}u~te@0Q8^3pex4r+2-@2N92d6POWR9snTg^A3Q087D$+U325Ix==47Wz$ax2B@h^Icq^r`yiefgRWUW`F zenpsZhik=K1@}>m1AS6x+cv)^Usn!HbFWMb8v|jIhhSG-Znm3<6xiLD+O(TdTFHNQ z1bO)D7Z${DZs{El$;Pmf_J~}jrESXjPpgx&w6jEFF44KWku~75 zYXnV^V2!Hb<4UxmZ__jL2fzEsB1TMevGs z@ar-B@)B9Q1e|JJXZ1I7S({`v#}A6VL@T*T za~VDweoX^gT&hb1w;I^uNTW}QtT#E{(fPTN>t&LAQQ9ofcNb7AP(Befhm45D?{@xd z-awsP>(vQKTN&x1%KEd)Eh_A~Xq$|4n4y~NmW12F`%5qx_b#k!Q^3C=Mm z1a&6aGW=4J8Y(vft<;*PpA*!9O3+W9NSE>Xvti=x#X7m$CSocQqKdbLI1i5;Oo<`w zMwB+~7Gxfulz&Fd1l{ziob;qSZb>Z<%2+p(gJvftlf!^@ZgnM3LmFFw+Ai-K6nKrf$6HwcFIICWvr5u*2gF)r4U(04)`3Hd-Id z1}e5fm~dl3jqsd?m6Pk(n~7$IPoiZ=?$p6c#)0i#tZ^#ujUFZOrIuf6vo;m8B640`IaMuZ&)UBo(yDJ4TXxC(o;$w*{jXXTFJ; z-W$azuaSs#T>uc&>DS(ybM&~eCao9lL&syWm!b$_Cdf~Cmf=c<44Wqtf^H#O*Cr-` zJr5BHW3&m7o+XnXe4i?lYzcbE*o%Iyx6eR-=Ee|?iVfv-a=UDfIrx9|Y%*t9QqS08 z1oJ4xqktwrCM>BBfBGgPyViV+MqDM7S_VBz4h1?osQKPpT@T3R#jxApYTJr2@Cz`S zZNv!p%RMs54ITa=GB{KWrJ|luT3nj6itM2CgF6H#hwT9zwE>ZxWgOA+KnJI^SzC#S zWOCjdvZ}LsM6cDZWf?CD13!D59mIn*b%D0l!T!2hn#U5Wz<;%~$@nm~G91}8Wt1$VWn>UFu!(<(RPa-Yv%yCJ0g%X#0n)>tbwL^X&hc1U8QY1{dK}BK|9KArPF=5|{a5G3?bU{BodlvDOj zgI+&Lke{Z_+Cm6vw=E_bIi;W8nlgfWV+Dy?KR`0v8ZBxQ0mcq^NJYchz)|8saGBlJ zuh+unNW)r13oz4z*aXLT?=D?<8yKrD-O5lQ$=*tGyXXJ;~0p*c%V+y`9t>ZmPM<$7gc zeL-V!ud{Ddr`^=WgW*fc!5_iYQeMZ@uxYBr6iZpl@}HR=wy2jY!ZmF)@8)_$biQ=M z4#>P%mk@4W+i!!`Cp;N;dJKispt}eI+nK3?o+vL@=ot3VZt()FQsC7y%vfgdHTn_h z_Znek69K=Hb=Mqxv$6a7cB4Te^ZId=QF5kOK&h zYe^tv6pYfU4jkiEIeOuKRFPm9#H20;F&!tzSeBZ%?kXIOm8+YQo~$F9lBSmiyM78u zQ}Xmu>uugTtJzM#eC?n>91Bwb%hr^CCaVj?=6|YpB*#K&K@afO3nYNK^gA8WzMUR4 zKVS9M%U##!vA)=#Aoh;Vb_fh=$^n6qt)G-MdB9VQ*hrci?}DM(EM;yKG)|3w9GL$? z6r{>hHna!@8E_ljg|luLpdEpXZTbx7PKyoymdL%ah`-Vm_{@+_Kuhf1n z%hq;vHwD#}r?HzB3YHbxNx72=n^J2h!VBssP#5ByDYc$Nl*c+O#$w6I(q&ES8r_GsAd^YX6uF2N%nB+UIvFh>UTVi z%<(U={x!+#Y)a+9d0i=R`GuOR8$^Cp0at-zz}Gi=nL`RB_ZVXbS%LB<=-~s)QhdI- z^pbpqE-S~ah5zjuPv)KY9Xp9}qJlE0oo!fm!nfgAU!Xc<*(+z#-8hg!hJph`v{2mz zKtpJga&B(v{B+L()#F+ox`QLEJohPgPDFlUplW8lSrh;zZUrwVn@Z!o*_@nI88_qX z{nRH~?@Gm?=^4r)I-e(kkba&{zeb8%5yk)Z{E2E=1*2v!Md1Pe27IxaBc6A)2kPF!`pUv47!c-)b!pQG2Yc~u$j%ghv|Udr z5)-?Q3pLi5OdpukmCzV%a9d~ArPg(WP)ZT8fMy)Dg|iNWm*{sCSz;4|D8mdKoiUue^A_^Zw0NM$K$ zA?2(Ag=4TP>+IZtahXTM$A<-1!R!)uu`UH5 zzRf)+SQi1`VYO+8od50m%DqBpx4)@5gjB^F^V)08%YMlnm(K;&@HP`ipd{7Jn;bAQ zC)M&>bbZwbXgH#P5iz}YgCtGQ2v(ppvVNn7xon+C=nH!SG$j|n3<=@(_4qy5rX4}r zgkRkHrwGSs>`M-%`rMAJ-*U(C7u`NEIx4)xMz=x~zbB|(g+#_V3Ecy7tCZ`6a_KVj zRnXvSg_HCN|1STm4Wb$?Td+48jo)UVmDyk3UxziTt5w{aItc%bqP47XO5v)R>Dq*8 z-vZ6s0Nd-eIWl)3iF=8+2P74t$PsRX^7CxB7ESJKzm4jw$;2S(vB$|F?B5?$GJXdb z!!PgGt1&1futY?-l-trLa~)612fs&t`$<%5m>AgD+`Yo};`SM`U$4|zdFMA;5;;GB zl?l&j6Sfd*k}@2 zln+v6kr6GY9c~Q}9!y$gZ}QXGT1yiz|O_ibgFY zxCLIf^BZJc_kyw5pp0kGWUMh1W$J138T1PpgW)_Qg8q&9$K~@@1u=fC=8B;}$O_Et z#(i`fATK8eO9vsExx9CSYI1z<{?z23ZxVE?VjUTn8U9BsG&4A-HKFz_|9Y_0*`>lb ziVH~K8wXs4noJ2>h-w)&wOLTU*#jqZF#ualwW}+bx>(#<*u>om*1(D5Z!XQ=Eq(`; z=m{_B@$uMyS|^Avp9N+I#ref?y~T)ku>LBAkfIlna}hVmokNP_92V=+hm-#TPY3^; zQFDkwp8^_$)70>e>R^)mYVNo^_U(Fifr;h-qBrd*254e-)*a&g;KQ-U5(MW{ppx)I; zWNV>qM4SN@Q|Kz?aPx_9Y`ws|RNos6P!vN6Y43PuH%Y&lRO>3<$(!48cxCHC>>i*9 zP**4w0*b(JpJ;&~4LL%L9V?Yah8Gz{pW%3i&9vNvM3w1Zf`9#@tspG&08r~uBH>s0 z&75yEzRpBNDV{YB1O+9Eb*0uh0~Aw?3+l#S^cGVNCppy3KR@W(dbm|dm6SnTE+v^# z{P6w~8vr17Vw}TDT28aVxF|CBO(^ja-(WLk(bvL{lgkk;fm>pgT(~{}HH6$pkm0SF z1)9(i;*ZP60>}zzTePR8Z$);p$DI$&S)%y>UC3CSQ4wSn>xQZMJz{+1#3RsOq6$Zik9z+p{ z!HpIGaE5ZD`tPO+E*qd5t#F&51n6TVP@T2n3V-!vJ2D+?7wiJAMe;$s9Mv4=Qdf(l zncOsNvSmf9$P*O;t3QVyi*Y6Af_*iX;^>SzNU(Z(HP_aAr(BauE2+>f(bfw?D8v(% z7T)>c#X>6DF}DRhgd-kc5NQxF$qCZvt34-sQH!Ksam>1a_zuK2@$S@0Geq|A%V4Pa z&B7Rv5*aQ%X2*)vWVr<7!8jFS5vt+h-4PG>3HzKFFd1dY?Zq62dr)6^SCtsy0VQ2X zu17$}PO<}7n(jBy;j*cjZ@brG#SbbwvYd&jrdLN39NH9$~j{n)! zrDP&F%i0d1el3}f{M<>33tq2Oc&kr0f(B@7$)QxDy5Gk3w@^*Zm-i2e0@|MC5kdIb za6M%EPbh~N0g0|gI8|{i-r*SksusvO20emhR89X`WS?3H4adpLZ^Eh8A=%;X#2`-m zzH13UYf`mmdEW)#UZi7<>SP9yU`H-NI&OhrLwU&>kbjlN0yw4BI|lO+tSWSc_8d)l zG#e+qn?675Ss6JRLK%SYeAP_J%}T3CCv|sA*k*_tmYY)Bnl6z%$extK!+94Vr)hd1 z)=$7LpAYm}7;SY4m3B5H_)qHPKp6oR#!M+A;NQm$)^YsVIr;3>LHSKDgRW#N7o=Wm zoaoUR&AfBPR_FZ|Tx-W))NJF9{a&?mOnT4r=D9k#s}r$gjGdnz8p?pdlZim&vd8TG zM9}qptbHlA+%$J#w5msP8~++CR8L`2FOMTQ#*F&4d85{bHeufCAP-^J#Thcz?b|PJ zVUG^N#Rc3stGoWF+Lfb!~s6DQRG68y)fTj?--LIk#p|%iC@Og)l-vC(7zR- z4=5;fQ#{@Pth)0PXXHDAw3gM8V?0x`N~i?QU-MEd?5gA* zf$_aR|L}#???2wtY72>9>$=`xd2OgM%?CaVc?5s8WvLz&JZ4ACZp$U&g$>tjyCKJ9 zexP$7PJUMkb3O3;1%!_)U>n%pU8>zbJ{yK)M855LsGlLw?k@u zec0frz?7_2ep!r7dI$W*A?B+^x(JwBAu5K!Wh_y7&A@J=OYuQU<_GMU^Xtk~!EG}o zU&*HlF8kwNDyTQi2|>l}}0QZZ58we-BRdZ&p3df4Vhl83Gq6rbLsnTPfXp!w3gx>%Mhs3^2Pr-LDCYa1z zRvV%H7R0_|$v^a9h|CK=fe;Np!d-=`M_=<#BZrTaF1wFDlV*Kod+i&}6-#3hjx>h3 z^9{ok;FmK4O2`P=C48SLdI-ODW68`NA;!#AyvXZsVH1@+-h8U4+asX82=i= zvoJZod5}H1yA-#BF(GnjO|}4-bBF^bUFL`4+;nB()$QN(P=w>JHybgX%HC^GaIT*1 z=f#n7zSJ;%(6T;W<5_NAwVw*}f)qYM@71lPe@2C2fjOy-oSMp?OZ-EQX(X$3F$g$p zodX76@ydX(#Z3p3MByd+b%=7oQhTfia*|N>Ad@OPCH%Npz$MT!=<6xX6XaouOn>bU2%7BrGpNfAGI-=Uu zj6SiLHt2qd^j>2~q(t}(s7d>)dDDpCIMQD#TxLiJnjSAbabK4)_-fC+eu2o?41kXT z+eGM5DyDs$9O|zYp4W({3Ybdf`|RA->rI>uGZBk-h4c_{URuhtw72B17gF0dwCP`7 zey^>%Y9~~&$gMKcSt)^W9Xm1~)nMmBWlWW|c26E73g9kCD$9u*?2*!Q{A0WAK{^tX!)}GWN629)JCV{%px7PsRlmg9(@L!NI0Qu4FL_&v6 zcKNHB%h^mR=O}++DLz=4wgOz6I~~{%ZmZk{bx<@cAz#6cK>@7~WQdI!M~2|VqeA&I zbUdosmD~qJZG0TL9%c~XX~M-w1yl)5in>g`Y+EJU#Erxz;zRAycHV<;+}Nk0uR!(# zQJu6$->>Jm1Yka7^k*UxZXbIWCLn<| zP%Gp9>Xo7M*%5ZqA(@ZZa}VWky(Mlv{$8(IA@o7%3UcJ)v`Rxi>vC8Oc}lraz-(lEBn9^KTJbTo1uTSqlITgvy@miFHWU z_zfp#frH5(qPi1Pxi}7wek54i3lthq9hgSvt zVe$+9={O)SFynd|d<^)*P1Anj#z96fSW8+aLSmGm9+&CL8VZT-SgF=d$~mGDPYM_* z<@kcD7@`a6Up;gdPa9}3X)W!;nFhTnxm=ezz;6%LDa_%G1>8OJGHEV0>jU7HfDQE|k< za2)A#p*GYPRhZIYfS7Lq$s4d)*JmC9r}XO5`2M3ECYlmg=n6J2(9JZs&TIf6VBO^V z0EGdkAb0KkOh2_^DUEBtnday!eB016pUcjD)~)cks$DRlr`UF@szQ?5v+((mB;+U= z)raEHRsH06lxK4IlZw54#QZkd50S9f{D6%bLjJ#wSvN?LL!@+reC>dp(_7#h+#Hx-|R|Yz2Ecn zpP+o!o1G33s+O191{oLzi3PM|pvnFCla`2Naptq=4sgJaK8G9jQZ;9Jj7^Z^mZ%k~ zn{X;4U}XRCM3Ws$euARmB5=PwoSx*Dy9(b*PbeCJl4|wivhi`y8 zM5lUOSA7MzKrTf$o2Qf!M*~xMCBpv#g9E zl$Pubq96taOa%_2s60vi4v+?1m1dWC;{KsjNss;67NPu+tmWgDxrMIxKWBFNYr?Su z^BQ&EyTQ$1Q04zb$~nciN9W(tyrnQbl^6>%@hm&mP-WI6$NyYCbh1R<1Qs$6LksGd zFy$A-=Sc-S-o z!@wuFzECHI47cyR=2|~vmp(K62UOgl7YM{KGN9Pz4F+L8F*A~hO%lZLXGxF!>)E@Y zhh50-Omg&V&Gd8C@-1k15=Ix{h%9eQz*3p;8?B!!=@JKJJ78Y3q>@#@!MK-iLm8Iy zB~S}SZ-WE|Lg-iE@r*2l2u#M~v_QAU$#6#%Z?fPnxTvA=c+6fL14UFvZ~v?Pip{1g z3o_K)=FfwnQYeAwU~tVI*xQC!(oPy}Ar+p|R6p8~z&^#tXgupCtpn$E{|#X%gCh{L zWcgK4W=ssTPa^$goCIw`AmJHHPLVEyF)t}68H&waBY-qjeBg0Q;;OGLgy1` z+cv^835Gd2C$*B*I+iox1JyUw5qaI!qKz6~noi>wg5G+(`6i@AR4q!_7O+(&Db{7V z5KVFNEks=@K1Ru0p(`6MjsYShTnZPkuB5GvdxS>RINpAh?PkgNAQcQ0xxj&Kml2>f zIFPXif;l;BG0c6O>zVko50KlVaGbKw(80!#K{P@ygjtIQn1AD>X<>YEVktgDshA{4 z(TJzPkcTRlv$Aln*`|W5K4WzmnZ|<0Yf~S(cNf%H5jm?y^WT!YI-WC;h|EbCk1~U# z;pxz&8AKcKqD}mTR9VB-Ibh&vWjdI^RV9--D3@TaKq>DEu&tORTO46bE{&!azfK1vU$kbsi9 zOTb#)?MUE4?&#FZGF?Qhe468Or&-hYos;_(I@KKN)55ye{Fr8<#1WV_COt&BV{nx) zO_KmspIDd{1Z&zZ9R!`*t{UdFOxg}fOB$uLefV2=}IoKz9{Zz(59!-Nw?RE-jDH046CmxgN!8Z%a-F-SDkaX~J*ji!!I zXodG+mTkI1mD1sdZ=TNO}8i|_YR0v3;d1p2~_c0s~K#5g;vXyHhVnQv{ z!US5F&T#?HN1g5j=YVgi&nro4UsR1zDCo;6<5v_!klV$h%QGtJxYy3d4R_xt;U zrfFWz`JD6l+}C|w*L{D|Zl_(_8;*u(!QVm+wawXII0#>ahf6w_6pTBY84Ai6ewdfP zUh^6V-tg4JkZ(Ch_qmPk;#k43K|dJ9hDvQYWJ&V&{M^)sH+M`JIAjJNanEZXUVQzk zw%qd5ioy7^AQYciAR2u(^M`$Ips+bVvOgA9;m<2Q;0=$P&i=srU%liOl?g2Lh3jvn z2dp9jyrlBi1o{H7xLd>e8>31k|0`P&{H3MY{b6Z_PrCf6)h*HC7eGUYdh3qSS;Or% zwxYvpoUiJ1j%Lb}VfulpV0FAW3%;<1JG;46(Rw?`P>>kW9#yRhl>PS$H@iTGO{Mxq5on{O81ASjV|mTJ zxYZbfMe=C}o78rEuWCo*rz`WfrfI#(I?KZ6R}5ZrzOCfIokYH?m26*lkyBDmM$t~U z@@fA4I6=oaQwc@|w3jqG*`S@%o?2=nB<% z>UskUx-c?}9_5qn?W@#;N9T1dT7Gvau8FEuXfb~(So>(L)q&Xb(6(pCYW7QdVtFsR z%lp#PlQ`U<(zGA@ZN$1iXe(;YW@Ij<~j zCGJ3I7gi*ig`9!RRTlw;aTC$2wL`Nj^+z9#=3NGr5V=G<3}v-=Q8XT@tKDOs%oKbE zN4P^^gdJ&_JQ^9F@n>@w+==anzrqIuDytvh88mRH3UL6dx9pzh)(&-?IO|r`bepLM zBdqW~K;T;r#!<3-D&0HSyHv^IFSDe~d|ek;yueoSkTZZCSwFsC9Vxk6D6w8VJ|PNu zq}24=_sEl)H9vRsVUBkc{(4Jg`RCs7xaq$~_e{Fk6^yh=lW_x&@xEnei#SOqgElkc zc$YoHMB7B$5~>VCj6+nJ`iV3z)0QCFGrbz`T(2_h6U}}vj9GA^4e!jbLC_qFaMJxP zn4L%Y6}JDmvVy@YF_C?(Wc6TKZWF_|(M$o@X$BYdHjf@p5BV*+o( zFy3X%@4AGB7UZeci`yRN(o8OJrm4QAkh^T!`GHA=N9vd04{_7SJ~6(l#UD1TAH#4u zMSJu|>YJ_eF}>--=#*P)^*#5Mcs<)xw+>76odEixycU#Op4G-pNB-Kt;B+h_wYTl$ zTk`c!lHJfjQ;+BS7dT_4dUCun=u==2OBgF0%e#yTELRmBpyyyvc9*Cs3!I@XE>k^o z-H)TazqsQ(WYgKDRw-fmr;KAzkH@~BrY&C9Xq~@SJ^$D8a(oLKvFan1A?@b)@+V_z ziX1n_1=r?aSwYJ5l6YQsGsY|h?q~}Y&-Bj@#jKNvEyn+rla$xdYG<(+bMNA}Pp2&? zIT0)BwYZFLo5YNBc0%Fd?WtX3I=2gLF^!tG9Jmue!-Zk`7m?-kJBq~dCt+ZIlpd2d95bhl04QI z=RO^cGi{3ONPxR$H07&Nj~=?_uYJCowfm(cVJ?q-lGP-f4|@>;B(gtysUMXBh&&ae zEfqR5Y|GhXJ`ik;Moif5+J>r#1x~9clC1dKy)HaV%H zKd{C)mfE7yQx{H$^UKeNtQmAVbQWi`kJ6T`44W?VnRqsak~0M#{JJPL4xL!66!jnR zkLg2upyQmdNAVXS7A6S$DpT?>g9CaS)C?6wvZ-2_A=};88i_YS3K$Z_n~CXu z^0_b}6?snA_lARQKiLrS*NX>aQi5I-yq}HiSgt6vBlhD5!^ZaM{K+wr|Lczpu#O}C zTL54HET_ni6G-R@^Z}Ice}5#s>jU!1?jyWFxZ{R_^MXn2-kD<8!=026S-A4 zS{pU_nyb}Tk*Y1yhOXUN*2UM`1g_#NfpNh}FHHa@%xOob^3)T#VTk**vPh+XUdLjm zeSPzpJ7(31OW~&zo;5ykGW4)>Iq80`WBsbikhHrc+^~C|`|u&K)4Kr|G-*7}>Zc=e zM#I?eeok`^@FsyLoYwM4!S|Y+sawgQZG!Ewb6zQ!?8E?Bg{*pG$CJe!xBF|3dCO^mnWL6t5XB`ln677A}L zNtxk(LU;84NaT9~gu%!Id3s*hG)~fK1SZ^hxH`B9rvYf0rRUS-?;s8iVF*YBe=GU} zf$aW+&Z+I$QMeH87gOYG^?yiZArnmCU_u+$_9bGtU5dsbIgDfdh6KYz-=`bwdEfke z=%;;dnRg7%CxMWcuaw(ML&hAV^Fy8z(;t041bd^A1-_Cf^h3=9YV2u^6s8;s(oJN& zB|@8_Epu#_)9QaR$f|f{B9Cq%1uwu9$VIdLPg+puMUZF8uoV9IJ{#nlwhWMlb|U~d zL0a`=fQK7G&fvr7Bk*`5Iy|oQU_TL1LpP`UF&G`6^9dqbZ_LQg2!MPl>jNJvmH|J0 z^5%|SObTat!WaMFg~&7Gg`G<98EAcyP1O;h;$@J>=txCr$RZ?P;*oaV^#H>}l=z6Y zo$Nk1(LS6A;-jW*62=za-_B#Ftp&QB??Y5@l;!vO#B|hvULo`NBEh zPQe|c3f9GoxfT@W4c8*ZBS0hC({GrN)>oA=p~hJOrf83YN7Ows8e7W=1}ACPOLije z0S8$|V!{Ht7dXd;s8=!D+X`G5JaP=)fxkcbDWV$_;X218)R)?x8RAsldLf;l0KVyX zLlowrJJu(cvFF#S9RSdi5&!XBw*kn%XlxWrr|^!KIo1niGkDyiMS=N;8CG~c1h?!2 z3igHPv!v+RTe|GTp{AlaA(!#NApe=n!slCv-Wd)r@CLM1bT!M9+P-#r{=JRa6W*-r zPx9zs(W6ITcOr~O$`u!T^$L|7CuER^@|F7CSi(V2n4-K-$qjRel;`hoE9Jny}bR#gn=RUo-5!Y zkSbj%fy}Q5`jO5A}y@%1|%NBL6ah*sCJ4j=%he;wz9MtiB1 zs-;UiS2DUfhc?+s{Yc|3yLb({;I5BQtv8FP9%e~p{MZ*_KVk*ldF4s!^xv?uW51q} zSa(o60Mg=vvpL;}U>QKoX8;W_KP16+izS%@57fa0t; za@amwQjOjS`#LSU){1O_3zevF!s_)3J8XF+&%-Tt0S^D*cNM&G#<$V%B`_5NcM$5* zSV$@PhD45u7uNqBya>#|izk;XAtWv-dE|VXHQq=oAeKCD|C2w!WEF~n$wm1+k@Cz0 zlz4>zh$R5w@CpFz_&;I8#?qKyUI2%eZ`=BJ*uXZ>1r)*UiG>nO1o0g|+@dNzy!zQi zB6ShL(B#&i;DZT7RDv}8FIY%%HY?f1%d7`vbXRYh732IDRTQuCU345#tO8~by^W5$ zeNsf(1OPf8%sLfh^n_FNP-S(4?p}IiXxl7-kl+Ow05yf&&@kn?hgT-n30mD~&5_G5 zR3|zxv_hTqR5URBrm9@ICg3@*tnV?evtKuB}a@F46omaCO&o9z*WRyGy&4R!Y>D|7@G8UrJw7usVnluE~9KdwF z)0kDZas$7mLE%`tA+Vpnq#OxMgT^DjVeOb zij@g*l{jCnQh_PU>nu%H9$pCI2p5sr4~piXg`)1<fhK0(>&(jodBvg`}wJzC6r*@9F(-~k4kXj7Lskk zvTVxxPv4z|$%U_=JqEqUR6py6862_%(qq6955#T&3kzH{-Zu!=hLM2cFAxa4aMoCX ziB>>F5wN&J**d5+eN*ku01p_#aU{Lz(4mJc(nbUNQA>eBl9 zzmc-aSI&2=hUKudLV8X}W*GqlSo}7M(<$tMnkt&Tn1(nm3*_x1o^bU8d6y5#r#U3C zJON)7z@Hp-30zgt-522FD8R>4p(pP$a0fQjt_4+qU|wNp&%F)w&%1mH8G(n+3QWp? zB;pC9)i%L9&hs`*VkoxPB{sywO*BERqj!T@Ig77v^g>Qy68>4xE8Fo4Tc_sdZk z%(4RxluQ#mB5nb32CxHY49zMvCWu7S(RzhopRKn3q6tF)zvsk0cK{F3Qs0QQo8>bg z*_t9PA+^sN|HT@{(&GBbgiC-R39Y%AQA@#QwhnPR;eM;dVb_$0;j-0HW(@*n1c=p9 z4A>gpWNSJz>5Cr=}g zKr{RRED3GhTc!yFNFq)GD>0UsJ@WnSj?4@&8~*lKbHWC|AsSQ~WB;1v)Ld;dG8y}< zjL@JsrN+Jl)RQ2u*p5I)Kvc#^SAhO?Mt?N#z`qsP{UY}z)s+!j2BALZf9AjgFv9ecIHa z*(Eith+j4=kBpxuiLxSP1LLw#I&NMVaqXmqSd8-xvp}f?D1VHoREm6?0i_4Mqfb)P zGdplsDDz+2F$A-fLB0Hq)}_F6Ct=v7iNsJXPw5 zi-?!c#A=3%aC>3Fz?X=Ga`kfqvo8UW-~u35$C@T!ujg6UX;w+#HstE&TJ$gjQG0}e zrC~r=UZ?t4juV$86=)$q92M~!__)o^Y=`5`CJ;HmXqz2&DZ6LoV) zm!S3|+EkP!_fegfKgmYB@AIl$=0<#9-p8N=Ywl_T5z_^q(Pw}KCE0?-7f--x@P08V zAsM3CcxfKqZ2|m<%LizjR97#_Qe`N8P$It$cuOhS5 zHs`MY8;w?ui@jd;r_4n4RL#b{mZaUN@LOGOfW4vLZn}a1oyC}A~FMFb1 zF%o>iHUZ%B;Gx%dE6;QHSMA4=89A)W0jPO3FaTkF$IJVCubn@@2StMECF6 zhDZ^$af`CDrI_>JURsD0frAa&#Cos+G^|eh4*$>jZSe`gJFvoK-qrUc*g}*e(u0kh z2QouCRL0dTmPvRtG@!4s*fts(M&m{z?csMDjd%md{}H_cT4N(61)HEuM4=H$2^|4c zj8w|tcTAOvTOM7AVykn%DIldGXi1=gnM z*?5eb>bzD~-p=bU_0bLO1$qONQ1E1biSb;3_P}nK06RNn}JXzyrfX+|}=Y4ML)uo{(Zo*flZ`olPNFTxlnQ z86Yj3yNL%|_`v>bcZ91Pp&7=txP9;%?KE2?IOcUgwkEp@jDRdp$j}`Ncj)`2lHF=m zf8$RiU=1+drsali{MY;)+2$6pEU2c>vPyLDwNG0ksAAi9}qgw5QbjKUFZa4nv}7UHnr?)_o1~vV+R%AJ4`Bte^G}jRCM| zcpNJb;uW*ExjCK`r6UHc%xwNjpMaY;MUKkRa}2__%haI}w#E0Z`B^$Uc>`-4%&A`N z>1mM^kk|+1Pk1$I(0yFsp>!JQ8^x9!+e?>r)3N3N-+Xur+0JC3d#NW&5 zcValA^`!6jD~{HyXqYq56K5DRX*sW|TlhyFq|n`n?&}(RFO@oQAY;9FFC8QWm=I9+ z|EZV=RR|P^RWUKO&=q$i35-h!L*QQ4Jh?>IraOC*N;h;ap^-N|-Lu%_jZnrQSTYNq zr!TuF8HCA>k=`8Vgf&@xYic)|yStgYbRu7jxK*1e8HkVy2zNpgZh;|Rgs+iz3LL7O=NCi2naPy?<8XA;vc&O*XW)t*+1zpH9T z(%*+6RKao*q&1QDYRe+elC+f|fs8|xhD+cj8sH|d9Vsrkr8^r(wh2%Hhra_8;gKQ_ zUx{{ebld>AJ;}rAK~)o!&F_RMg12g_O`!U0q@ScwYs&Yfw?i63 zfNhA@AVnc~{}8|q)+a$ofm{$k2e2DuVxlp11TBh6bFMxiD^H4Q=M(D7)v@B#!(f#Vs=E$=c~Fcd2e zW%MxRt0<2mkU&<5MR3sLkIa5K3aBl}0fEGof)U=ZF6>^?dDIYL0k)=EPWmfh5ZrU@ zQy`6;qOYGv`v$EyKLliQF#;)p4!po-fON&gY5kJuJMb)B?!VfJaHdaXl5SNgHems= z7zcI%$3-zt)Rjfy}Sv#~^@uB8ioGpxOy^K|nu$ z(Oa12?!bi2$WxqVa#tavUu>h@8O&8$g!kjII{>jtT3v zde=1By}Qz7XymlU5*s3vdxc$-@E?uXR}vB_L`NHxEDZjQKgXZ@VOL7wk*o)i`ty9A zMdYcjx2b2{$J{9CrF09Xhs@(QetCSnCFa(T=?|CtHOnsKS~$Z;in2LxvU6+f?QZN1 z+^^!<7T>jbzjfLIMdsIWzC2;&_~j$jTSC-ZvOW0xIx{zt;0GJehi2?rp|h95!7DT= zTX#az9Mb-8yQ1y>g3BnPI{&;RQ}Vn7^*S!H0F(fL^g5uPybC^?o|Z`2vqvKFPy2-2 z0b9ZLulpLrCC?s6dN;faJlYZ()?oQ8K04C5LV!stwH?L&P~x}6;f60(@$S8qR4*(G z5U&+xVWU<-VsXW^9!a?g=gm82NV#U_OVJMaPeo&t+=>)5nUtgpK0`ZOk%J<8lz6u8 zICa7Qx6CUEYmVsrLSLn>w|P=)UiUZS6+9kE#aA#W@DJuchW8^`lf{<2{~M>3Hdkk} z6QTv@qZD}r4A<E1+bD8fK;#_qrIKmP&R`M-u=57}K$(%70nzt zDBWPiz&AB+%@loKrY@?rBu+@lwW2ci{$fongA|iyM`NUBDvSW)F7*Grs}DNqX*j?T z&=m-gZ^Alof#ApxuJrV_TzO>2)SxL{y`4S|ii(Cp0K)&tJx=6u`E@2wE1RX%A-WuB z%<>JVX69o7ODe8)scHfZE@*xwTV1nXGKynYw0GO>@KYWMeOvR@r+?$y$b1lvXgib7 zW&cu59W+F?g%&83znZHuyg_CvfN?WPP0%Ib0Cl1e$-$N;OAs!rGu6HDCkCWH%U0kq z;Ga#1Y954YV{yy`X9imK!jlaq6vC=T`@#|8o#OTB76eeb{j5(fwIEGpiSzpxs`c-( z3B`XJ;b{pCSKJ{fYe<-Pfj0mL^bW+UIA@d~oMDBk`=>!Vq#@lshQJ%PJ#orJU#m|c z7>Jwl_eO6Wa_mC$gH9WZaV<_(bHv#uJXd6)ail^cSFwNU^*TSDE$aq; zz3JI6oL6mj(J9kpN{ z9|#;ULfA29#SH|EP0Yh#NFx;d^DpY=w0da6VTxd-jbyM4AdBdNS}Z1TfCFPdKq}7? zI>FpB?!qhR%nIHeOI8b94zgO?g8i<8+AbQV7X`yvz5lMX;e6ksD&d*HKg8+l4nd_IV%^1Og$i<>YxvKTy#K z`ynFp5|(n9(wQzyLuLX^vjqt|8_Mrf+{Q2Mn~3q|pxY!ef3jP8EHF$WRDcbz%b7f) zI!-01mx3c#L=h{OwWu7p;K5?eR7_dLCUAkHOg09h!)?zvamy(UAxo!3ohCuY7{Fs2 zdt?wjsO*jvD3G~d0O)W;CU1Se6y{L+c6^$06XhQSY)A*`+~;*^j~q)dcDnIFq|4X~ zR0#z74+c1E^W1jE3wzdJDpzIuK!`1(B=G&fvl+TdWf6IOW-Ib&cs5x>A{lBhtYpI! z0w38XcwPAb3B_&q3d%81QHs26bXNpiSZNk8ZU^E@v+-Y|8`E07I+IP-CZ|?>QQ{R@ zGV{Ld!hE7RmQK`JIg7LA*m!NtTXH1_7-1-Dgap~UNcgSh*#ZXYz=Ca1TF_dyAM;bD z#r?k;(nr9lkPHNO(J(p3BViu1Ccef2;z^?*rJ`T8q@sCJ(3B}w#n&FIPy{EPR}2nv z{?s|Bf95~WC~BzTj-vGJAF87`-IwzPy_5@vrwVd+Dq&x;J|zYk01P*#5?4*rpM?NI1#rKSH{1g+N`jQXGUBaU9jLA?Mg+Xlw2QOZ7**fDyJsN;DaW7!QPJ{Um%j8 z42KLNjCo=+!Hh5Dm9pJ2*kU~B4Qz?yQC1l~nnUh&lk6Z)hHMF8c@Quy3C#G34#!X& zkiL?J09}tB!BI_Po$+(i5TF6lE6A@#KNpIdG`B&OGvLaXCn)ZG`_%Dx12->=U2c)} z{<>B4{l0K4S9lh^2ia(D1<`Lc0(IZw3+=h2QBcLji9^e-U?3WV0{ng9ZRv29ONpK`6q2EP-`@z_Ebz^kc-0 zBO-m`Q5nC%607HQVoh3Epx$)mMOf9r1rnKKl7Wh z8=VEAA#gwBkU-sqFT>Yt&u!8KAYBAE16{D*3WMrS%O#OCs7sI!dvs+Y3Nre`PYDsD zu;po-kO0&Lzf0R9V`nNnJPzPB!lV;!b~tBz*KofnR7O7HR>uxKvF>FcvZ`3 zgmsJH4)*=tbbTuKEpJdMplL8EHaA5myFCzX#ZU|X7q!*onjB&CG&XJxMR!zVfP%lm zQt()KVTOzoP72HZ<8&p9g|7Zibu;isZ@|Z)Yi*xuN9|fX#PEZ(`2&jp;pJD_wJJ~s4mYLpV0T#b%zCQiSHPLG2Bw%0O&{n z->+s`m;Y-E>Px`PX0x0_7K*H&;7N>(mLF215}_}75o2h9wS~8ranINLva$W+F|1z# z6aoyXJ2^LDa1ex+#!M;d=vVN+bIsY8loOoE@=dx}ax<{a4dFb-41M^2J;{@#r%T*y|54i%}@y#SasAHCToB#s`^M$i2JP4 zWEDtzOgci^%5Dt;rt3%v75=|eAV7mO2&=OMR;*!;#-B2Linyu7Ph7!`gq0K!#s^fN z$FM#Q{@6{r;9S?6`v?7(=V+F-N!Us=w&&4{Yzua9RGRD86v{UbKBmp9CvAdv85YV0 zu6nOeUcZqI4r`083{26e{%R5hSFAE9c=k9&qf40Nw}nqQBc2n77s zoG)Qs$iwq>ZQZjGM*4GsZHcq!CSx;`NlI@}?U|I12q8P{g!kc@j^cS<+aY`oYcaZS z?IAH%l0eZK8)`i0fekC=PESh-I*_7%fd||eh^*2lOy1YK*9}8^Lpq$#0P#SQX%%@||`Fs5ohx7A{ zM{w4kjde)jw62JicuMD?VAE4Qp4eYhIw#Y~8Ae*#)6tTSzBGF`cw|3-Dl3LUgO;#F$2&|yyQtg$fYY{^PeYDrSs~*#H9$8WPvLCT zq`Mf7?-$vk(%@}mJ3gZfhf32vg#D)4!8qJB)8`{?X*}B&5 ztJ(OjBKu1a7o!FshKr`5(~Z={a6Lsdj6U$4Qsuv+z9E<8KNPOpzS{N}9ftozK3-o& z22SdxSSN6W^q)i(kYk_ddy$T&RNikXvR>NChuuGp?EYn*T)2XxwZm>hnx%U;&2Wh& zV#k8OYT#n|4=ULPdmdo?rOn(X#2?ZNVBxodsC{f&GKLv-FuRBPCiY{XBYo=4&m|Ju zqZ9hLXfbes>$!V7^-U3Q=r2u?ue<&T8|6V{m$s08xST zXb0@T@cW*GClk_u(}uf~t=QxU@#fQtiKKn6ghll9p(YKoK6=QG-!r=c=S5UolGkuU zj@OwIa|+%|k#1AKLL;TmKo&b~c$#jBoRn`D6+oXjc>C%iE5vD&+cXsZf=+dq<+!H7 zaDubO(9F87#lTPO`cGy6&dqtpin7QUipaI9DtPyRV-^ovjsX4GpyiW%CgO)R)q$gs ze#voDDZg32qQXcs-=6UTW(GqBjA2Ud3gj+-?uBI!2%IJDsWZcJr~kn$jq_of5DKXi zJGcko^|h$ga^p@Mq3!UKQ1-zAGzbpJzmU-*i^W%9e;bVsYau}nh zIC_GTN6a9j4GoZYBI!;eC=(4h$>bTX4vnlvTUq=PSJWe+qF(kgsa}W)-3uNxrQ5k2 zvhXp8oipiUHr?#vq8<>!o+(x%FS-IJzhNVM+)QSTU^Xdv(3qf{AY!rK(Vb!^!|P)D z{Ovdr!rcfw@PtmU$e|^kIq9YBS+}lw5sLYeIS(Q`&eJdSiSYXC-FcTWFIyB*?02vS zg4x-=DTuEg$oM`%p+Q1L)&pzG69LG{!x#OV!ILUJM;O-8Jp8G2MQiN1xwLq{>Sh#S zUTYI#YM=#O!*CXa4xA;}y+-DB5h7hsf^BAf!duv#r5?mR)-NP3Z4W2shXmA>Qy#s^ z(NRCJc4%a%u@8faiApL=f~|_mqM?J#sB1r^B~t+mj_tW*c!I(y+Cvhw2V4a;3z6J_ zi~luQ#3<&XTPgndE%`QquC1IIi$V6}hPukBFKcaBYJo1R{eYvX&dLO*^XgY=sT2^^ zE;++aijpf==dE2kBnhJfXO8$_(mu9A5>wY9DbPs~hs<0sefuqmjW@;9MDYJJ8U>Ie1XiCGer%DD&@gy>al-^3CXtKye*iF`&za$~>rWcG0@- zD{Ne8Zi=&hnNzdX3X(nQEI(Z}N|r3`jX#%4#Q5gn{n2Q{2iOKvE_(#|+y#bGkao3? z|5kPT#!5DJj15}^1W|IJ?B9wkKgjY3>l*spA4r+s6L&2&Z0ev~o+jJ8BHV|S zH_bZvXzFEP#w`YL#_D^S)L;n4?pRA$v1ZKjYgZNNUlG|(6R0jPz1 zWTqMUus3#ge)D%W+=D8#zzqJJBGOP)haUlPk)!z?VfaO5!o7wFNK?1T69}Tif_f+b z#av>UH^r)tQWj>1CN!?2rvZ9M%TE?1(b!`&OZ4;~hBSD`iEY)PxJnlhosaAbCs0o) z{lq>uk`n-dpoF6GXFOF-gTtuQlj3lrYExX%a#$@UipH#@f(@jVB~206?*!OOe<-CW zPJIx5h2y^UG_9t=J0Q8+A!Q;y<4O*)n`4wxBgc&2;P_MK4`qX~22`+hidzp|ss&%k zrkwNWSqv{U@pBLvV7?sb>vlZ-2RLwiQ0@T`T~zw^5A#t({1tl}-$pw6MopT&!hB`0 z!QK`+KN#WQDh0avy|UW+d+KV2?QD{$&4jR7LuR+LL2!|x>?FP~szPBPNl;8d7CjK7 z26BQ_Ul7=c>^^6~O|afSwwMp6M>O@>%;`|(uqvVs3a4xRec51fa^A1Vy>T0%`)SyF zQQzTYXals#$I~soFJ0mEG0|q!oarFwTeAh@i#Op3Tj3k~`0+$aevz}o&_{VL432fk zmkE5p!pBxH+ESw=9`&9>F}KPBEe^Wt7dbaC6-t_X)*-qJ(3FS>cq$QO?R+n zbQuD=4||`rji0ANO(09Kll;!wsKw=oZfrj>f( z0vj>wpta%Dh1dgYE9@txq`ZPYbx)YU7iAC)T*m!0MEzgOMECKbi7!JrK64*j!}x*K z95az;iAiHF7LvPHpNI1@EAI6uSwLw+{Gxj1)Vp^XF9Hsv@`pwv2D`U~O}^ zt~XkkzU)}JG6Jn7ExijC+mw9$S`)A~9}l6<-Rw&5vhh-1;OT*AWZ8+Gi~qpJ+6Ch* zgFBnu80vX~dImVMMuW#i6mpQhmw36M-S0q$UFb?xLwgtm?NzDs3gk!waKIG(WFl@G2^d1$%Z28A`@CNQMaSjo}YNk>`K`ucb6D_zmI-<*3MMU&_!!xM?xttPpoP%~fE+fjpOhyIugWq!$}&91-s@hvey_%!=V+D! z8GDzCz5yh~js%;@rjIT&+c_WcYq3)9Lw3mdBxurEElRY)+E>Y}ciyi973p&pw_d_n zgB9-=)O7bl_&z)b^2|t~BeH7ig^(1A?n>b(M0E_EEBX0^&|56#Ft8VZd;`q6r41>z zbrF}eHsnTcfpFx5v;}No2CVO|eUb@thkRxo>Fewp&9aONGf^zKhY6QZqa%{`(1}hc^U6|Z%|ci3QNe>S z;lcW+vgm|21>Hismo9$#<|vuq)y_Y^h-}Qrd1ESB4Sy~L=Nt%g6rvO+I_o)u8pL|b zKx>|+TFvgCSa;>iP|L+h0!gz3Q4EGPs;X1w6vD^{g9*azIs%N7q%)CDu>p!DH-Y;p zd`WMWgh*Vkztm%-)u?`DO&RYFo_!@K>S@j}sPYs6I2lmne5idpzUqZt_-~<{??J}HDus* z!BiT@EkUP7Y%l1G;j1d-6m8!?7jmytL)2J4!d%?ACLyc})3)SnMaPQi{ zC>Grp&5a_lG$3?AFh31_jSRH`r8#8PqvRbWbB;;iIFxlgGHc>zQN#mRvJ5f@-i*@e z(O4{KO93C_0^ha`gD|T5V|iuZns0lmKO-GVN06*FcBOnKmTq>4QEfO3>jV`ZMy+am ziol7iiLMaw8z?rs2mrw3043BIM;+~GLmPZLI2+p4{Dfalj-nGR5g!Rn&a~-(a&1u99D~$3T7fDT(eqBobtq zg_)aL>S?A78U=X`pbdEJ{|6Wfd$HUc+tE2{g{gxkTau!S{T*eaks#u2Q{=ZyZM!mo z@dEv;h#&wl;)*57~=)*80df~ z1h_2hP_4mo9LM_wcmYm4U$+m$vnb*`UYdtC2h+P(3EV|#A5+{mOC__- zOL{~LOqig8-2?TiiCHHnfnlVnLa?u$i}(cE7!Xqcg`lr=X3(v@F9~+GQBXH*AQfNo zS~(%C2-vKdEj8TZUV@HBtoX0Vz(KNY6+$K)N6|OFM~CM5GYkGlngUe$w_h)y9B77g zc$?V5L)zj<@&$Dwy=LG~nIsR;Z9|3lQ)Wc}(8Mhse2!HyL+f9cI{Cm5&89)gkh>_8C00S^{L3IYpb$tE2DzHv0CsLLV2eo=}3brPB=jtEi~HZ z)g%6{PcPbr8{P~3^MS)HP-$k~<+N?%8(j9X%EjQ#sMj(CHQLNR28#EFS9F zJkTlO?rdg_M0Fi>i6U}mK0f8*C^UpUF-#rq=Eh4&Y4l@dMWs5`Ew8fl@PhJg|hYL?SKLvN~t0*x7`zp zwSXeYCyLs)rx$IcTke*fW`~`i*DGjXoM1*{ajw1CegUAnJHJj3rS_#r@+DZd)_H+BXBPBJUy7`dVUu-aJqxQqq>xbx0hYSn{XjmeL|QBm zs@aN(V+gf`(=qqq+#P){^ba2IC{2}90&0vi=j86Di$?O41~ z_>TaAJPQ0TYF_1Gw>$@;n*>Ph`Qjr@a8(aD_Fhw;lIL-sWF9RYyp_7%jP#vO9uJPQ8O5HU!_irZ+fr#nnS-HxFwCfkxgfy!j80Ta{D0ThV3R4 z3}dgw-VjXP>f*YT=r~1l7{&kn%?J%ee~boI4pW$ASRw62AzjHOJ(^24t^?V&=6u^s z*sXx}ZpqfUpYGTWzlv?riAyag^skPAQ2;m|U2iJZxlTKXu}0sKgHXB4ppSdxs`^4b z9u@O6Roe4D0%|nk1{DFVRK>uwduDen_X>&?u}@Db0;^^5>acpWlL#BI>S{J`0w1NW?jJaM^r{nZ%=4#RrlImQ4V{!bTDH46ri14U2or2 z!f_xnGi!|-pjbYAUUlp<8BrY<6_s{}n*v%3pO44Yt;KIYW~YaWI(Dymo;^GDdZw3p z2CfG`1dBZu2`6;p!5&X<+_tZ=o~GND-OQ?*_Q@(A?;QO3S+NB{nSpL&QKAo1eK57C zfR@j_0Ae1qbq@jEfMP9fAK5ejBD`cfv`^cOhll?eTgDm9ZLN_4gQ?O7fw}O z1mtf>s{w#(Fg>Do4;)V=sg-uk`9RGG00Y9@i!{?2L^OSA%tF8PV>qn@!@0U_%JO3R zOEa+KNdCA`6KBBA4PBO|{-m!K4&D&6g~RwIIb3Fw>%r&0RD(y=bpsVMh{MmkYD*e6 ziVeoovukLPKst^Mm}UpTen9nUSYmGj(V#803lOAe8>&Fqry(S6>V908UAp4MQ9%ZW zKyS_>n0E@}9e!Eo&366pqi;v!Mws1U+DApBN?|JQhZbMGOI_Wc72>J=i{?Az#$JEz z3Da;=D=^iloF9idKh+Jv79N2y-5RzFyF8`&(nYt=@G(XE7!=b{Ly|X3(65;_V=7E} zMG_QVO;Z^Q)9l9O87m%e#2)s5dAjx5L_7RqaSTN#FD#5BG5{Jea{o8#Gxh6dmzmDj0ny< zJfAO;ZFDhnE}k&wv0T}muvk51mFmKsx_Fh%MpVMqA?04RP7d+G6}09d8OchfDuZwf$a9dyb4rZ}j3#+iGT>ll*mB zAjPgAZr)I0q~Ax<_~c z;+@S;N5DC}5+O$Ftf<4`lG#OxIzMtzN{?WwvrbYvHUt#3*V%!pgH`LS-)z>H_G+(Y z>=wP2qzR2bt`Gx?(a<=U0=dC;0_yj(=IWA35ci>|?n_l%BT%_>EtO451jqz)Qsrh_ z4H^o~5_5x1f8KBf_p(kqSdsN{!DU)SVQ%q3$0a(rkMUpHM@YuoMg@OB`I~jli0}V;<8UqYjt)#U29#23{Y>>_;t$aF-vRQ=*cVGUeKc%BCeF3g z*0i^#S$UNCScEjZbk&Hy^VYpjP6K?}6pIuv2oN9!fI)!C#U*$xBx+zL0ygaW#mBi6 zL=NDY`=rdtk1igGv*m6^UJB=;?tF?dQsyO&yOx3-0O|7~ap!DdBfll|U;DsB3v$Lt z%^E@b(B2>2>vc!=t17MxYE|HheS|eCd*fR&uXME?4X}N)2RS=O0e^v1nL^3?HVg^2 z_XW-f{vU)H=Twe2vufSn+T8@NHOp*_v#G5%b!YRM!{06VEJa?9)g9Yqt_5q;3qLiWzErD{yvCv>M3 znNShZ5PRrC8~-VAO)(E#mS=-Yu<6rq+A0!FyZzuS9o|1FuKxk!SEf7oA?+8zH+`yM zIQAXdd|Hu-CKYA{s3HfmPZVu=mD*uPif36fbgtuZC^Q5zuQZGZ$~T7N;Jv=Z)x=PD z-*`UF^`GbhQ{>L}FQ{g-?P)p=n>*;T@VVGeIM|j!!-=pIQSL&t>qG9-PbMJvO6w!p z;T;K7;OWp((Qwl}_%5pHtOsEGbGirF!RJkxer<&~Bd(t%hys5z3(Vx#wskZKwd)6Z z8i$lm3du;Q67@BDz%}`i&VM}iDkJkEVUZ_4Wy@h(EEtDY$5ht{!SM(=B2e)N=}J6* zDmqA3MawmIth_MsB${;(w1<6vG4x6&?kp71VIcrIQ zn@3E>mxAs@gU)y8_)UG1rk=lvUnHYGi16s0YHn-69pl-aapg?sEK(}+(S zZm_XWK^AgtcEP78gm9;SykAgM5V=xbA_#51n|3-sZZ&?u*&)tCP5^s8s>wgvs(=$V zfC>UpFfvftdI_pXlV*irpcVAB*yoMl(2|?UJ?(>HX56avAJd9WC&5GoCi%CTNOvImc~edQXSc1cLt5|$9*=N@VDtcx$tepWN9fMfST zTkyBI;i$1k{nJ?eTj>c`{6GC=NAXshdUY#bH@)pb+An2P5W5lW#-k*)ZC!6WsrF=l z|M}_tAr%;g>O(>+U#Eok2-%FJrYO8`nQ;h8Si+c|kf=G^)Y$LF8!XbSs11tQWFm`e zzcfPZ<1DWJ!asjaOwYd|<|*cManJ5uYaVRBYbAV=opohu!Sj-u11elzUv2`&o66;M zfvNK4-a5aL3QI(H#;#D~nP>QJ@&ir4$u_pKQ#))-TSKft-57Vm-|!Z!SBX~S$AJg9 z@9%b3m#GeEhpv%m{RLYxx+V-%wk)`Ma#?;+#-%3<$u+$M*^m{op)#wdcyKVS{FG#f z1$GqSD^|dS>h-uWUvXzLwbTTp6bGi_t|@I!j#NB5h+_TM?_<&4ZH5yyPwKzX!pA9j z{yfLA&o&tPHT_?u3&wtX8q3qo_O&{E2j!YY`S}9fJ9dK0bFz<>4LfhcvQGhif6SLY zJuM!B>P^eVOARu#Wn0wm3(<_`cR;mtS=WCbWow;A? zbP;z$+U>KWmsg+Jzo_EnFaK#7sG6E!h)~y-CyvNA4ypg7dNpxO0J%Mj4=l}srWh#~ zt8bUrUzigdyQy+pi~Bm+Pc^sW-51@3R(4<=Bu9wyWQM|yhXG@5w zHhG!ot}@V1lAck}>YhAH6|Fsf4gyc?AGGky#DrdBq~p(p zJ@W>pWH&wmhE0Yd0x>8n&Uquw%^PrWE|f5#j5Y$Tk&W0Nn_Z2+Bv0-<;;83;TkV?2WIjB5sk!TlJ zfBYD_RuGPcAu&Cokdx#uc(#s!9d_W-VCv1QYSWK{pVBxE*z)$A5P0_OEy*NPKDmA; zGS9lU!Lhoxqy}0*Hl}e8eM_W#Ht6R z2Xc1*aP>T=5xp?`RpiqH z8OV{!QQYC~%#dUjuzp~K6w6mkwP9D5=&!r{_8XJ3_4nPtnQw<5C(;Y+6VL`@g`!iS zE&x%ixlWgpn1_##coeB!oE~O~(F)D6A3qI!td|^rzo2WLYaY$rHzhRV6!XP+FE-v4 zwwyOMa19N)UhO47uOWZ?(~14VUF$Esk(i|Jgr$K9%Uk#>$t9x#dE z!RCLoLd*4(VPUP1E zY0vTVs<`kc3I}y5EtA3u6f=FTSXkNB5n{v^Yj)V%QDU}#i=to%Y&q(n z6swkuPp~Ed?f4dKZH)Pyi7g@;9_K=BwUo}r77w}6@!Bz{XsY7b+*9|Te5$Z;-k53x z?xi2DI#U=opE(z{HzTjp-L9zf0|u7o)G%yQwPV_naK%xku23TD%M}h|ewYU}=<7r( zU1nt9Sa!gUs_y|-0lm%80Cxx2S=4jP;A8tek8|peo9`ZvksJ%+KgbXZ_x*6dW*6v| zIUzZf$LrTxCSgX`ceP5pewD@_qQ1xGIib@VqZ&wKX@KBc(#8~^Movvbn#MVAaPjku zO<={h%A|>iNUGuCB%VO0pEI zWWu32{y!eKTi(7YIkRT?9YNO`TkLAUU5eS9cKdxMGJa_p_G5xibaaMZ+^OB#yn^JSS|~kHoquJVK}4~+ z12=VIVz0*MeQ;eWW729|euFdltzXMU&WSxzw1;Zqc^F)ba&6A`DE{|t=YTYEr+r*H zDyQ{QO3j0fGY&d0c%EH6Zrb+e{ZZ}Y5Xhb3&%N6D>(Vba-JRpt@IaA_>a4DjPq3?n z)CU}967EoVT0Z7`A<(47jm7_P+mFKT0h79Nmxn0~gk{v*!ZI7r6^=xE0GS{t*F!#r zE9@JX*hJZG$DE=EbM7@`lyW7>W*c^KuP7SJUlk^FsivS?fIi1do0CO-0}}Hygg;jo zp{p|!`^2f87m!8K!lT9IA2BqP9|euF=MCRT+n!;jZ`q+n zBf`Fks>Ni&!*d*zLe7p8~E8lso99E$rsM{eBeb}aZC(KgVARZ8xa z)0MI4t}q27M%Gy*7ItexRS|I)uNP&k_#j*JNl0(dVbi`vZO;+}o6I`Hr@{MK6~peg zpt}_zUafNuj8YECR_|rN5%RY_ih>EojK1J$`bIkTkljA_`$a5_yAXC5-Q{%MPB zdY+%9&6gxrPORp~b*C1#5gKMi^O1GQvA0~J&X?N%mu^+Bmq3ec;M3pJqd zLb}{r!JAstu^oN^SL!iK4yq>_NyF8jGc4KO^WBY44#~atpbYA%LfTN2Fbi9R_H=qE z`$^JJdOAZUtmr7LTi2EyB`=g*Y-sQd5>*a;_E)<8L$X>A0toNPqznmT5fL=QX_%x^r@Fu^w%6>d!Y?svJ+|qyNUnxO1i;j^vir(f&Dzi$=dOsngf5 zUAy*?)bKgP^;596xiPR8o50PaagATe@6b8rEOgH~`+e!Cp*b8I^rK0@ zzJ~zsJWK350(K^avkm$tx&fheQq^6Reh8DMIlF32kPU4|ke<+<5z~2*8~uO$J0p7j zc~$0y|6<0kRWJQ9eL-K*l~s-W&i;vs;}}0d8SKxGA`aYn2iV>CaK#huv~8P9j-6R} zx1yq;CQP~GV0}MWVIp!8)Sh*Iz2MP$?*2t%mc^gdHdfE}gl*tzll_jIo%#FkmyieI z!Z|ul+uMYGKh3AJDo1eJ#mtj2qRh=r=~mR1gdKWhB0=CS*oJzzm9f7m)Y;OvYn66D zVUx_~J2scbmMOJ}^d-2V2P6TJi_}js-_u10-iY)fKDy+4n(<7=xozt0ZR&uw=e}*v zZ!^&HxZ0Lu*!d}L;6}#Y4!dU4Hpg*IHX#+XhcpU@9zl=~eiu7o4yTL(+b+dj`&i}^ zh1MG$MIFAnS#eO)sn1MZbaOc*Z#MZK7)5=GUAGsysGvnv1$V82&CRO!#<+fy4|Vl# z&Be@SyCxwk^mR;_-I@!}P<*_jwt_p0>4m6=H4jEL8+$td39N!KfJ#sqhW7yX+o`j9 zc;!fbeaPK}R7p`py4(fn^2wUVZ)FRw&puh3Y4L1?SNn)8{SmLOBUvRc$V==5NJ{%_ zBe9CzF~AIYw}I4rXhPe0b20X`N3}qk5&!N~r4wxiPaz-a(YZqy5b z(L@Sn7&!nvJZGWJxB~;#M7Fr278)-F>;kk8hs)6TsW$)|Y*g;&6x-qJKgbpm1Q{n$ z@*LxU0knd&*8JowT4us+46OwHIU5MuU>5+42)YL%h9L!sL41CN1@{S5L;iJW`6|Er z>at^zlFgwqRcl_cXL2}vI|Dc7$$qaK9HHBRPExV;iMc|3wMefeUtdXtSr(mT`^Ks# zxyY`1Q?iv)+Vr?he6tFniYF(GeO8`(&z9TeOHB*W%Sz(LeIzi`k3<+<- z#<=N}N`DMeRX4{a*abA@JAe#FN+&W@<|RSBZ@RHq@-Z?5R6=!iE%;9QAK8$FVpMN$ zCpAxIjaIo}h3NJNH_t%|yRp;?TWGl#sXs>^yRp?HNIAz3sB(>= z*vI|2Asm<7ytk0vAC~cOC*7TF{hhWB_SE`PyG4aW@b84<*o^op_F_C;Exu2Y51VP% zH)XdLmWI^lmMck``@%o2 z9QP|YgmgvlL+P@~!)j#|Kak>x_HGVE^_5OGzpe4!k%`hd{2e{2S69U~CZiPticOgZODGCRB$wuF zADSM~ei7m~EY(9(I3J=hGguH*gK$2=j}SxwV#ERJlp_s&*)4><>-=!#rVJVq%RTAg z=nB%;xp#2acf;r(!y?~YFQuE8a-A6q{5OwFebdzgZg%k|3c&R1wovml~qsGro(a5ph4AdH#xzLM|T5~THT)|d@yU8c9!V*EH5)0YMk~4)l}c~ z@ZrP1*o?l)^nY4mOz92fijYiH?Q(%n9+W&~LuQ513*{ zVIn(uvj-2O4GtPQ8V(-**PS><^ykL0qTO3BJhTD)%Et;wH5T9;oRPZF!CTv_Y9HH1 zwEr3I?$O3}!O`#HX?Epmp4JfJa}9Wd=&lI(8YMe!bhC6PQ#fo5R1O?>Zw#(-t;pDGOFpRA4mNLY3d*Q=gTleF0rP(+u|2EF-!m2(S zqCH#Ra_HWpL(>k1{k~LX&-7j;-rS?vqxU%J>?DD&<<+-kTlz1?QrN;F#C{54VA> z7W+?@5H`|)*ZDTIC4#`cd7zTV?0g#VMkMA(mXZRXweo&!M}X&i&6~^!Iwu!+r2uuM z(tly39d%R)pJOv`|K&=0vNTZ;LsuRTezZz-v27E&xSo{BQq!S8&N|CJl zw;t&hNZ2kyh@F4qU6Cg2kTtFQwZ98#L=4eR1hT%?iz3Z1A=w1-nAWJrkiu~^#zvFk zXdXi@;6@7%kXv<@?Nrlp$9Xw5{{~UbJ1o>7;yk`Ib MPgg&ebxsLQ0Llq2vH$=8 diff --git a/public/kcl-samples/socket-head-cap-screw/main.kcl b/public/kcl-samples/socket-head-cap-screw/main.kcl index 746181dcc..12d273699 100644 --- a/public/kcl-samples/socket-head-cap-screw/main.kcl +++ b/public/kcl-samples/socket-head-cap-screw/main.kcl @@ -1,68 +1,64 @@ // Socket Head Cap Screw // This is for a #10-24 screw that is 1.00 inches long. A socket head cap screw is a type of fastener that is widely used in a variety of applications requiring a high strength fastening solution. It is characterized by its cylindrical head and internal hexagonal drive, which allows for tightening with an Allen wrench or hex key. -// Set units -@settings(defaultLengthUnit = in) +// set units +@settings(defaultLengthUnit = in, defaultAngleUnit = deg) -// Define constants -screwLength = 1.0 -screwDiameter = .190 -headDiameter = .313 -headLength = screwDiameter -hexWallToWall = 5 / 32 -capRatio = screwDiameter / headDiameter -hexRatio = hexWallToWall / headDiameter -hexWallLength = hexWallToWall / 2 * 1 / cos(toRadians(30)) -hexStartingAngle = 210 // first angle of hex pattern -hexInteriorAngle = 120 -hexChangeAngle = 180 - hexInteriorAngle +export boltDiameter = 0.190 +export boltLength = 1.00 +export boltHeadLength = boltDiameter +export boltHeadDiameter = 0.313 +export boltHexDrive = 5/32 +export boltHexFlatLength = boltHexDrive / (2 * cos(toRadians(30))) -// Write a function that defines the Socket Head Cap Screw -fn capScrew(start, length, dia, capHeadLength) { +export fn bolt () { + // Create the head of the cap screw - screwHeadSketch = startSketchOn('XZ') + boltHead = startSketchOn('XZ') |> circle( - center = [start[0], start[1]], - radius = dia / capRatio / 2 + center = [0, 0], + radius = boltHeadDiameter / 2, + tag = $topEdge ) - - // Extrude the screw head sketch - screwHead = extrude(screwHeadSketch, length = capHeadLength) - + |> extrude(length = -boltHeadLength) + |> fillet(radius = 0.020, tags = [topEdge, getOppositeEdge(topEdge)]) + // Define the sketch of the hex pattern on the screw head - hexPatternSketch = startSketchOn(screwHead, 'end') - |> startProfileAt([hexWallToWall / 2, 0], %) - |> yLine(length = -hexWallLength / 2) + hexPatternSketch = startSketchOn(boltHead, 'start') + |> startProfileAt([ + boltHexDrive / 2, + boltHexFlatLength / 2 + ], %) |> angledLine({ - angle = hexStartingAngle, - length = hexWallLength + angle = 270, + length = boltHexFlatLength }, %) |> angledLine({ - angle = hexStartingAngle - hexChangeAngle, - length = hexWallLength + angle = 210, + length = boltHexFlatLength }, %) |> angledLine({ - angle = hexStartingAngle - (2 * hexChangeAngle), - length = hexWallLength + angle = 150, + length = boltHexFlatLength }, %) |> angledLine({ - angle = hexStartingAngle - (3 * hexChangeAngle), - length = hexWallLength + angle = 90, + length = boltHexFlatLength }, %) |> angledLine({ - angle = hexStartingAngle - (4 * hexChangeAngle), - length = hexWallLength + angle = 30, + length = boltHexFlatLength }, %) |> close() - hexPattern = extrude(hexPatternSketch, length = -headLength * 0.75) + |> extrude(length = -boltHeadLength * 0.75) + + boltBody = startSketchOn(boltHead, 'end') + |> circle(center = [0, 0], radius = boltDiameter / 2, tag = $filletEdge) + |> extrude(length = boltLength) + |> fillet(radius = .020, tags = [getOppositeEdge(filletEdge)]) + |> appearance(color = "#4dd043", metalness = 90, roughness = 90) - screwBodySketch = startSketchOn(screwHead, "start") - |> circle( - center = [start[0], start[1]], - radius = dia / 2 - ) - screwBody = extrude(screwBodySketch, length = length) - return screwBody + return boltBody } -capScrew([0, 0], screwLength, screwDiameter, screwDiameter) +bolt() diff --git a/public/kcl-samples/walkie-talkie/antenna.kcl b/public/kcl-samples/walkie-talkie/antenna.kcl index 30414a6b9..278ebb56a 100644 --- a/public/kcl-samples/walkie-talkie/antenna.kcl +++ b/public/kcl-samples/walkie-talkie/antenna.kcl @@ -1,50 +1,37 @@ // Antenna +// import constants +import antennaLength, antennaBaseWidth, antennaBaseHeight, antennaTopWidth, antennaTopHeight from "globals.kcl" + // Set units @settings(defaultLengthUnit = in) - -// import constants -import height, width, antennaBaseWidth, antennaBaseHeight, antennaTopWidth, antennaTopHeight from "globals.kcl" - -// Calculate the origin -origin = [-width / 2 + .45, -0.10] - -// Create the antenna -antennaX = origin[0] -antennaY = origin[1] - -antennaPlane = { - plane = { - origin = { x = 0, y = 0, z = height / 2 }, - xAxis = { x = 1, y = 0, z = 0 }, - yAxis = { x = 0, y = 1, z = 0 }, - zAxis = { x = 0, y = 0, z = 1 } - } +export fn antenna () { + // Create the antenna base sketch + sketch001 = startSketchOn('XY') + |> startProfileAt([0, 0], %) + |> line(end = [antennaBaseWidth, 0]) + |> line(end = [0, -antennaBaseHeight]) + |> line(end = [-antennaBaseWidth, 0]) + |> close() + + // Create the antenna top sketch + loftPlane = offsetPlane('XY', offset = antennaLength) + + sketch002 = startSketchOn(loftPlane) + |> startProfileAt([ + (antennaBaseWidth - antennaTopWidth) / 2, + (antennaBaseHeight - antennaTopHeight) / 2 + ], %) + |> xLine(length = antennaTopWidth) + |> yLine(length = -antennaTopHeight) + |> xLine(length = -antennaTopWidth) + |> close() + + // Create the antenna using a loft + antenna = loft([sketch001, sketch002]) + |> appearance(color = "#000000") + return antenna + } - -// Create the antenna base sketch -sketch001 = startSketchOn(antennaPlane) - |> startProfileAt([origin[0], origin[1]], %) - |> line(end = [antennaBaseWidth, 0]) - |> line(end = [0, -antennaBaseHeight]) - |> line(end = [-antennaBaseWidth, 0]) - |> close() - -// Create the antenna top sketch -loftPlane = offsetPlane('XY', offset = height / 2 + 2) - -sketch002 = startSketchOn(loftPlane) - |> startProfileAt([ - origin[0] + (antennaBaseWidth - antennaTopWidth) / 2, - origin[1] - ((antennaBaseHeight - antennaTopHeight) / 2) - ], %) - |> xLine(length = antennaTopWidth) - |> yLine(length = -antennaTopHeight) - |> xLine(length = -antennaTopWidth) - |> close() - -// Create the antenna using a loft -loft([sketch001, sketch002]) - |> appearance(color = "#000000") diff --git a/public/kcl-samples/walkie-talkie/body.kcl b/public/kcl-samples/walkie-talkie/body.kcl index 5e1749b93..47bf5ac78 100644 --- a/public/kcl-samples/walkie-talkie/body.kcl +++ b/public/kcl-samples/walkie-talkie/body.kcl @@ -1,80 +1,86 @@ // Walkie talkie body - -// Set units -@settings(defaultLengthUnit = in) - - -// Import constants +// import constants import height, width, thickness, chamferLength, offset, screenWidth, screenHeight, screenYPosition, screenDepth, speakerBoxWidth, speakerBoxHeight from "globals.kcl" -bodySketch = startSketchOn('XZ') - |> startProfileAt([-width / 2, height / 2], %) - |> xLine(length = width, tag = $chamfer1) - |> yLine(length = -height, tag = $chamfer2) - |> xLine(length = -width, tag = $chamfer3) - |> close(tag = $chamfer4) -bodyExtrude = extrude(bodySketch, length = thickness) - |> chamfer( - length = chamferLength, - tags = [ - getNextAdjacentEdge(chamfer1), - getNextAdjacentEdge(chamfer2), - getNextAdjacentEdge(chamfer3), - getNextAdjacentEdge(chamfer4) - ] - ) +// set units +@settings(defaultLengthUnit = in) -// Define the offset for the indentation -sketch002 = startSketchOn(bodyExtrude, 'END') - |> startProfileAt([ - -width / 2 + offset, - height / 2 - (chamferLength + offset / 2 * cos(toRadians(45))) - ], %) - |> angledLineToY({ angle = 45, to = height / 2 - offset }, %) - |> line(endAbsolute = [ - width / 2 - (chamferLength + offset / 2 * cos(toRadians(45))), - height / 2 - offset - ]) - |> angledLineToX({ angle = -45, to = width / 2 - offset }, %) - |> line(endAbsolute = [ - width / 2 - offset, - -(height / 2 - (chamferLength + offset / 2 * cos(toRadians(45)))) - ]) - |> angledLineToY({ - angle = -135, - to = -height / 2 + offset - }, %) - |> line(endAbsolute = [ - -(width / 2 - (chamferLength + offset / 2 * cos(toRadians(45)))), - -height / 2 + offset - ]) - |> angledLineToX({ - angle = -225, - to = -width / 2 + offset - }, %) - |> close() -extrude002 = extrude(sketch002, length = -0.0625) +// create a function to define the body +export fn body () { -// Create the pocket for the screen -sketch003 = startSketchOn(extrude002, 'start') - |> startProfileAt([-screenWidth / 2, screenYPosition], %) - |> xLine(length = screenWidth, tag = $seg01) - |> yLine(length = -screenHeight) - |> xLine(length = -segLen(seg01)) - |> line(endAbsolute = [profileStartX(%), profileStartY(%)]) - |> close() -extrude003 = extrude(sketch003, length = screenDepth) + // sketch and extrude the body of the walkie talkie + bodySketch = startSketchOn('XZ') + |> startProfileAt([-width / 2, height / 2], %) + |> xLine(length = width, tag = $chamfer1) + |> yLine(length = -height, tag = $chamfer2) + |> xLine(length = -width, tag = $chamfer3) + |> close(tag = $chamfer4) + bodyExtrude = extrude(bodySketch, length = thickness) + |> chamfer( + length = chamferLength, + tags = [ + getNextAdjacentEdge(chamfer1), + getNextAdjacentEdge(chamfer2), + getNextAdjacentEdge(chamfer3), + getNextAdjacentEdge(chamfer4) + ] + ) -// Create the speaker box -sketch004 = startSketchOn(extrude002, 'start') - |> startProfileAt([-1.25 / 2, -.125], %) - |> xLine(length = speakerBoxWidth) - |> yLine(length = -speakerBoxHeight) - |> xLine(length = -speakerBoxWidth) - |> close() -extrude(sketch004, length = -.5) - |> appearance( - color = "#277bb0", - ) + // cut out the indentation for the case + sketch002 = startSketchOn(bodyExtrude, 'END') + |> startProfileAt([ + -width / 2 + offset, + height / 2 - (chamferLength + offset / 2 * cos(toRadians(45))) + ], %) + |> angledLineToY({ angle = 45, to = height / 2 - offset }, %) + |> line(endAbsolute = [ + width / 2 - (chamferLength + offset / 2 * cos(toRadians(45))), + height / 2 - offset + ]) + |> angledLineToX({ angle = -45, to = width / 2 - offset }, %) + |> line(endAbsolute = [ + width / 2 - offset, + -(height / 2 - (chamferLength + offset / 2 * cos(toRadians(45)))) + ]) + |> angledLineToY({ + angle = -135, + to = -height / 2 + offset + }, %) + |> line(endAbsolute = [ + -(width / 2 - (chamferLength + offset / 2 * cos(toRadians(45)))), + -height / 2 + offset + ]) + |> angledLineToX({ + angle = -225, + to = -width / 2 + offset + }, %) + |> close() + extrude002 = extrude(sketch002, length = -0.0625) + + // Create the pocket for the screen + sketch003 = startSketchOn(extrude002, 'start') + |> startProfileAt([-screenWidth / 2, screenYPosition], %) + |> xLine(length = screenWidth, tag = $seg01) + |> yLine(length = -screenHeight) + |> xLine(length = -segLen(seg01)) + |> line(endAbsolute = [profileStartX(%), profileStartY(%)]) + |> close() + extrude003 = extrude(sketch003, length = screenDepth) + + // Create the speaker box + sketch004 = startSketchOn(extrude002, 'start') + |> startProfileAt([-1.25 / 2, -.125], %) + |> xLine(length = speakerBoxWidth) + |> yLine(length = -speakerBoxHeight) + |> xLine(length = -speakerBoxWidth) + |> close() + body = extrude(sketch004, length = -.5) + |> appearance( + color = "#277bb0", + ) + return body +} + +body() diff --git a/public/kcl-samples/walkie-talkie/button.kcl b/public/kcl-samples/walkie-talkie/button.kcl index 7011a77f1..94a55ca8f 100644 --- a/public/kcl-samples/walkie-talkie/button.kcl +++ b/public/kcl-samples/walkie-talkie/button.kcl @@ -1,26 +1,27 @@ // Walkie Talkie button -// Set units +// set units @settings(defaultLengthUnit = in) -// Import constants -import screenHeight, buttonWidth, tolerance, buttonHeight, buttonThickness from 'globals.kcl' +// import constants +import buttonWidth, buttonHeight, buttonThickness from 'globals.kcl' +// create a function to define the button +export fn button() { -// Create a function for the button -export fn button(origin, rotation, plane) { - buttonSketch = startSketchOn(plane) - |> startProfileAt([origin[0], origin[1]], %) + // sketch the button profile and extrude + buttonSketch = startSketchOn('XZ') + |> startProfileAt([0, 0], %) |> angledLine({ - angle = 180 + rotation, + angle = 180, length = buttonWidth }, %, $tag1) |> angledLine({ - angle = 270 + rotation, + angle = 270, length = buttonHeight }, %, $tag2) |> angledLine({ - angle = 0 + rotation, + angle = 0, length = buttonWidth }, %) |> close() @@ -35,4 +36,4 @@ export fn button(origin, rotation, plane) { |> appearance(color = "#ff0000") return buttonExtrude -} +} \ No newline at end of file diff --git a/public/kcl-samples/walkie-talkie/case.kcl b/public/kcl-samples/walkie-talkie/case.kcl index 36c79b577..e08af728e 100644 --- a/public/kcl-samples/walkie-talkie/case.kcl +++ b/public/kcl-samples/walkie-talkie/case.kcl @@ -1,85 +1,90 @@ // Walkie talkie case -// Set units -@settings(defaultLengthUnit = in) - - -// Import constants and Zoo logo +// import constants and Zoo logo import width, height, chamferLength, offset, screenWidth, screenHeight, screenYPosition, screenDepth, speakerBoxWidth, speakerBoxHeight, squareHoleSideLength, caseTolerance from "globals.kcl" import zLogo, oLogo, oLogo2 from "zoo-logo.kcl" -plane = offsetPlane("XZ", offset = 1) +// set units +@settings(defaultLengthUnit = in) -fn screenHole(sketchStart) { - sketch006 = startSketchOn(sketchStart) +// create a function to define the case +export fn case () { + + // sketch the profile of the screen + sketch006 = startSketchOn(startSketchOn('XZ')) |> startProfileAt([-screenWidth / 2, screenYPosition], %) |> xLine(length = screenWidth) |> yLine(length = -screenHeight) |> xLine(length = -screenWidth) |> line(endAbsolute = [profileStartX(%), profileStartY(%)]) |> close() - return sketch006 -} - -fn squareHolePattern(plane, x, y) { + + // create transform functions for the speaker grid pattern fn transformX(i) { return { translate = [.125 * i, 0] } } fn transformY(i) { return { translate = [0, -.125 * i] } } - squareHolePatternSketch = startSketchOn(plane) - |> startProfileAt([-x, -y], %) + + // sketch the square hole grid pattern + squareHolePatternSketch = startSketchOn(startSketchOn('XZ')) + |> startProfileAt([-screenWidth / 2 + .100, 0], %) |> line(end = [squareHoleSideLength / 2, 0]) |> line(end = [0, -squareHoleSideLength / 2]) |> line(end = [-squareHoleSideLength / 2, 0]) |> close() |> patternTransform2d(instances = 13, transform = transformX) |> patternTransform2d(instances = 11, transform = transformY) - return squareHolePatternSketch -} -sketch005 = startSketchOn(offsetPlane("XZ", offset = 1)) - |> startProfileAt([ - -width / 2 + offset + caseTolerance, - height / 2 - (chamferLength + (offset + caseTolerance) / 2 * cos(toRadians(45))) - ], %) - |> angledLineToY({ - angle = 45, - to = height / 2 - (offset + caseTolerance) - }, %) - |> line(endAbsolute = [ - width / 2 - (chamferLength + (offset + caseTolerance) / 2 * cos(toRadians(45))), - height / 2 - (offset + caseTolerance) - ]) - |> angledLineToX({ - angle = -45, - to = width / 2 - (offset + caseTolerance) - }, %) - |> line(endAbsolute = [ - width / 2 - (offset + caseTolerance), - -(height / 2 - (chamferLength + (offset + caseTolerance) / 2 * cos(toRadians(45)))) - ]) - |> angledLineToY({ - angle = -135, - to = -height / 2 + offset + caseTolerance - }, %) - |> line(endAbsolute = [ - -(width / 2 - (chamferLength + (offset + caseTolerance) / 2 * cos(toRadians(45)))), - -height / 2 + offset + caseTolerance - ]) - |> angledLineToX({ - angle = -225, - to = -width / 2 + offset + caseTolerance - }, %) - |> close() - |> hole(screenHole(plane), %) - |> hole(squareHolePattern(plane, .75, .125), %) - |> hole(zLogo(plane, [-.30, -1.825], .20), %) - |> hole(oLogo(plane, [-.075, -1.825], .20), %) - |> hole(oLogo2(plane, [-.075, -1.825], .20), %) - |> hole(oLogo(plane, [.175, -1.825], .20), %) - |> hole(oLogo2(plane, [.175, -1.825], .20), %) -extrude(sketch005, length = -0.0625) - |> appearance(color = '#D0FF01', metalness = 0, roughness = 50) + // sketch the outer profile of the case and extrude with holes using the previously made profiles + sketch005 = startSketchOn(startSketchOn('XZ')) + |> startProfileAt([ + -width / 2 + offset + caseTolerance, + height / 2 - (chamferLength + (offset + caseTolerance) / 2 * cos(toRadians(45))) + ], %) + |> angledLineToY({ + angle = 45, + to = height / 2 - (offset + caseTolerance) + }, %) + |> line(endAbsolute = [ + width / 2 - (chamferLength + (offset + caseTolerance) / 2 * cos(toRadians(45))), + height / 2 - (offset + caseTolerance) + ]) + |> angledLineToX({ + angle = -45, + to = width / 2 - (offset + caseTolerance) + }, %) + |> line(endAbsolute = [ + width / 2 - (offset + caseTolerance), + -(height / 2 - (chamferLength + (offset + caseTolerance) / 2 * cos(toRadians(45)))) + ]) + |> angledLineToY({ + angle = -135, + to = -height / 2 + offset + caseTolerance + }, %) + |> line(endAbsolute = [ + -(width / 2 - (chamferLength + (offset + caseTolerance) / 2 * cos(toRadians(45)))), + -height / 2 + offset + caseTolerance + ]) + |> angledLineToX({ + angle = -225, + to = -width / 2 + offset + caseTolerance + }, %) + |> close() + |> hole(sketch006, %) + |> hole(squareHolePatternSketch, %) + + // create the Zoo logo + |> hole(zLogo(startSketchOn('XZ'), [-.30, -1.825], .20), %) + |> hole(oLogo(startSketchOn('XZ'), [-.075, -1.825], .20), %) + |> hole(oLogo2(startSketchOn('XZ'), [-.075, -1.825], .20), %) + |> hole(oLogo(startSketchOn('XZ'), [.175, -1.825], .20), %) + |> hole(oLogo2(startSketchOn('XZ'), [.175, -1.825], .20), %) + + case = extrude(sketch005, length = -0.0625) + |> appearance(color = '#D0FF01', metalness = 0, roughness = 50) + + return case +} \ No newline at end of file diff --git a/public/kcl-samples/walkie-talkie/globals.kcl b/public/kcl-samples/walkie-talkie/globals.kcl index 3fef987c7..8da460583 100644 --- a/public/kcl-samples/walkie-talkie/globals.kcl +++ b/public/kcl-samples/walkie-talkie/globals.kcl @@ -21,6 +21,7 @@ export antennaBaseWidth = .5 export antennaBaseHeight = .25 export antennaTopWidth = .30 export antennaTopHeight = .05 +export antennaLength = 3 // button export buttonWidth = .15 diff --git a/public/kcl-samples/walkie-talkie/knob.kcl b/public/kcl-samples/walkie-talkie/knob.kcl index 688dbb3e8..6fc79f717 100644 --- a/public/kcl-samples/walkie-talkie/knob.kcl +++ b/public/kcl-samples/walkie-talkie/knob.kcl @@ -1,29 +1,16 @@ -// Walkie talkie knob +// Walkie Talkie Frequency Knob - -// Set units -@settings(defaultLengthUnit = in) - - -// Import constants +// import constants import width, thickness, height, knobDiameter, knobHeight, knobRadius from "globals.kcl" -// Define the plane for the knob -knobPlane = { - plane = { - origin = { - x = width / 2 - 0.70, - y = -thickness / 2, - z = height / 2 - }, - xAxis = { x = 1, y = 0, z = 0 }, - yAxis = { x = 0, y = 0, z = 1 }, - zAxis = { x = 0, y = 1, z = 0 } - } -} +// set units +@settings(defaultLengthUnit = in) + +// create a function to define the knob +export fn knob () { // Create the knob sketch and revolve -startSketchOn(knobPlane) +knob = startSketchOn('XZ') |> startProfileAt([0.0001, 0], %) |> xLine(length = knobDiameter / 2) |> yLine(length = knobHeight - 0.05) @@ -34,5 +21,11 @@ startSketchOn(knobPlane) }, %) |> xLine(endAbsolute = 0.0001) |> close() - |> revolve(axis = "Y") + |> revolve( + axis = "Y", + ) |> appearance(color = '#D0FF01', metalness = 90, roughness = 50) + + return knob + +} \ No newline at end of file diff --git a/public/kcl-samples/walkie-talkie/main.kcl b/public/kcl-samples/walkie-talkie/main.kcl index 60aaad8f1..b2f866caa 100644 --- a/public/kcl-samples/walkie-talkie/main.kcl +++ b/public/kcl-samples/walkie-talkie/main.kcl @@ -1,50 +1,47 @@ // Walkie Talkie // A portable, handheld two-way radio device that allows users to communicate wirelessly over short to medium distances. It operates on specific radio frequencies and features a push-to-talk button for transmitting messages, making it ideal for quick and reliable communication in outdoor, work, or emergency settings. -// Set units +// set units @settings(defaultLengthUnit = in) -// Import parts and constants -import 'body.kcl' -import 'antenna.kcl' -import 'case.kcl' -import 'talk-button.kcl' as talkButton -import 'knob.kcl' +// import constants +import * from 'globals.kcl' + +// import parts and constants +import body from 'body.kcl' +import case from 'case.kcl' +import antenna from 'antenna.kcl' +import talkButton from 'talk-button.kcl' +import knob from 'knob.kcl' import button from "button.kcl" -import width, height, thickness, screenWidth, screenHeight, screenYPosition, tolerance from "globals.kcl" -// Import the body -body +// import the body +body() -// Import the case -case +// import the antenna +antenna() + |> translate(translate = [-width / 2 + .45, -0.10, height/2]) -// Import the antenna -antenna +// import the case +case() + |> translate(translate = [0, -1, 0]) -// Import the buttons -button([ - -(screenWidth / 2 + tolerance), - screenYPosition -], 0, offsetPlane("XZ", offset = thickness)) -button([ - -(screenWidth / 2 + tolerance), - screenYPosition - (screenHeight / 2) -], 0, offsetPlane("XZ", offset = thickness)) -button([ - screenWidth / 2 + tolerance, - screenYPosition - screenHeight -], 180, offsetPlane("XZ", offset = thickness)) -button([ - screenWidth / 2 + tolerance, - screenYPosition - (screenHeight / 2) -], 180, offsetPlane("XZ", offset = thickness)) - -// Import the talk button -talkButton - -// Import the frequency knob -knob - +// import the talk button +talkButton() + |> translate(translate = [width / 2, -thickness / 2, .5]) +// import the frequency knob +knob() + |> translate(translate = [width / 2 - 0.70, -thickness / 2, height / 2]) +// import the buttons +button() + |> translate(translate = [-(screenWidth / 2 + tolerance), -1, screenYPosition]) +button() + |> translate(translate = [-(screenWidth / 2 + tolerance), -1, screenYPosition - buttonHeight - tolerance*2]) +button() + |> rotate(%, roll = 0, pitch = 180, yaw = 0) + |> translate(translate = [screenWidth / 2 + tolerance, -1, screenYPosition - buttonHeight], global = true) +button() + |> rotate(%, roll = 0, pitch = 180, yaw = 0) + |> translate(translate = [screenWidth / 2 + tolerance, -1, screenYPosition - buttonHeight*2 - tolerance * 2], global = true) \ No newline at end of file diff --git a/public/kcl-samples/walkie-talkie/talk-button.kcl b/public/kcl-samples/walkie-talkie/talk-button.kcl index e126b3e62..9d815fe16 100644 --- a/public/kcl-samples/walkie-talkie/talk-button.kcl +++ b/public/kcl-samples/walkie-talkie/talk-button.kcl @@ -1,46 +1,37 @@ // Walkie talkie talk button -// Set units +// set units @settings(defaultLengthUnit = in) - -// Import constants +// import constants import width, thickness, talkButtonSideLength, talkButtonHeight from "globals.kcl" -talkButtonPlane = { - plane = { - origin = { - x = width / 2, - y = -thickness / 2, - z = .5 - }, - xAxis = { x = 0, y = 1, z = 0 }, - yAxis = { x = 0, y = 0, z = 1 }, - zAxis = { x = 1, y = 0, z = 0 } - } +export fn talkButton() { + + // create the talk button sketch + talkButtonSketch = startSketchOn('YZ') + |> startProfileAt([ + -talkButtonSideLength / 2, + talkButtonSideLength / 2 + ], %) + |> xLine(length = talkButtonSideLength, tag = $tag1) + |> yLine(length = -talkButtonSideLength, tag = $tag2) + |> xLine(length = -talkButtonSideLength, tag = $tag3) + |> close(tag = $tag4) + + // create the talk button and apply fillets + talkButton = extrude(talkButtonSketch, length = talkButtonHeight) + |> fillet( + radius = 0.050, + tags = [ + getNextAdjacentEdge(tag1), + getNextAdjacentEdge(tag2), + getNextAdjacentEdge(tag3), + getNextAdjacentEdge(tag4) + ] + ) + |> appearance(color = '#D0FF01', metalness = 90, roughness = 90) + + return talkButton } - -// Create the talk button sketch -talkButtonSketch = startSketchOn(talkButtonPlane) - |> startProfileAt([ - -talkButtonSideLength / 2, - talkButtonSideLength / 2 - ], %) - |> xLine(length = talkButtonSideLength, tag = $tag1) - |> yLine(length = -talkButtonSideLength, tag = $tag2) - |> xLine(length = -talkButtonSideLength, tag = $tag3) - |> close(tag = $tag4) - -// Create the talk button and apply fillets -extrude(talkButtonSketch, length = talkButtonHeight) - |> fillet( - radius = 0.050, - tags = [ - getNextAdjacentEdge(tag1), - getNextAdjacentEdge(tag2), - getNextAdjacentEdge(tag3), - getNextAdjacentEdge(tag4) - ] - ) - |> appearance(color = '#D0FF01', metalness = 90, roughness = 90) diff --git a/public/kcl-samples/walkie-talkie/zoo-logo.kcl b/public/kcl-samples/walkie-talkie/zoo-logo.kcl index c2aaabb7b..1ed10ca85 100644 --- a/public/kcl-samples/walkie-talkie/zoo-logo.kcl +++ b/public/kcl-samples/walkie-talkie/zoo-logo.kcl @@ -1,6 +1,6 @@ // Zoo logo -// Define a function to draw the ZOO "Z" +// define a function to draw the ZOO "Z" export fn zLogo(surface, origin, scale) { zSketch = surface |> startProfileAt([ @@ -39,7 +39,7 @@ export fn zLogo(surface, origin, scale) { return zSketch } -// Define a function to draw the ZOO "O" +// define a function to draw the ZOO "O" export fn oLogo(surface, origin, scale) { oSketch001 = surface |> startProfileAt([ diff --git a/rust/kcl-lib/tests/kcl_samples/lego/artifact_commands.snap b/rust/kcl-lib/tests/kcl_samples/lego/artifact_commands.snap index 7495ad51f..181d73a78 100644 --- a/rust/kcl-lib/tests/kcl_samples/lego/artifact_commands.snap +++ b/rust/kcl-lib/tests/kcl_samples/lego/artifact_commands.snap @@ -100,8 +100,8 @@ description: Artifact commands lego.kcl "type": "move_path_pen", "path": "[uuid]", "to": { - "x": -19.9, - "y": -39.9, + "x": -7.9, + "y": -15.9, "z": 0.0 } } @@ -122,7 +122,7 @@ description: Artifact commands lego.kcl "segment": { "type": "line", "end": { - "x": 39.8, + "x": 15.8, "y": 0.0, "z": 0.0 }, @@ -140,7 +140,7 @@ description: Artifact commands lego.kcl "type": "line", "end": { "x": 0.0, - "y": 79.8, + "y": 31.8, "z": 0.0 }, "relative": true @@ -156,7 +156,7 @@ description: Artifact commands lego.kcl "segment": { "type": "line", "end": { - "x": -39.8, + "x": -15.8, "y": 0.0, "z": 0.0 }, @@ -328,8 +328,8 @@ description: Artifact commands lego.kcl "type": "move_path_pen", "path": "[uuid]", "to": { - "x": -18.4, - "y": -38.4, + "x": -6.4, + "y": -14.4, "z": 0.0 } } @@ -350,7 +350,7 @@ description: Artifact commands lego.kcl "segment": { "type": "line", "end": { - "x": 36.8, + "x": 12.8, "y": 0.0, "z": 0.0 }, @@ -368,7 +368,7 @@ description: Artifact commands lego.kcl "type": "line", "end": { "x": 0.0, - "y": 76.8, + "y": 28.8, "z": 0.0 }, "relative": true @@ -384,7 +384,7 @@ description: Artifact commands lego.kcl "segment": { "type": "line", "end": { - "x": -36.8, + "x": -12.8, "y": 0.0, "z": 0.0 }, @@ -552,8 +552,8 @@ description: Artifact commands lego.kcl "type": "move_path_pen", "path": "[uuid]", "to": { - "x": -13.6, - "y": -36.0, + "x": -1.6, + "y": -12.0, "z": 0.0 } } @@ -574,8 +574,8 @@ description: Artifact commands lego.kcl "segment": { "type": "arc", "center": { - "x": -16.0, - "y": -36.0 + "x": -4.0, + "y": -12.0 }, "radius": 2.4, "start": { @@ -634,12 +634,23 @@ description: Artifact commands lego.kcl }, "replicate": true } - ], + ] + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "entity_linear_pattern_transform", + "entity_id": "[uuid]", + "transform": [], + "transforms": [ [ { "translate": { - "x": 16.0, - "y": 0.0, + "x": 0.0, + "y": 8.0, "z": 0.0 }, "scale": { @@ -667,8 +678,8 @@ description: Artifact commands lego.kcl [ { "translate": { - "x": 24.0, - "y": 0.0, + "x": 0.0, + "y": 16.0, "z": 0.0 }, "scale": { @@ -696,8 +707,8 @@ description: Artifact commands lego.kcl [ { "translate": { - "x": 32.0, - "y": 0.0, + "x": 0.0, + "y": 24.0, "z": 0.0 }, "scale": { @@ -819,4044 +830,10 @@ description: Artifact commands lego.kcl }, "replicate": true } - ], - [ - { - "translate": { - "x": 0.0, - "y": 32.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 40.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 48.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 56.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 64.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 72.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } ] ] } }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "entity_linear_pattern_transform", - "entity_id": "[uuid]", - "transform": [], - "transforms": [ - [ - { - "translate": { - "x": 0.0, - "y": 8.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 16.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 24.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 32.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 40.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 48.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 56.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 64.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 72.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ] - ] - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "entity_linear_pattern_transform", - "entity_id": "[uuid]", - "transform": [], - "transforms": [ - [ - { - "translate": { - "x": 0.0, - "y": 8.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 16.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 24.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 32.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 40.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 48.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 56.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 64.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 72.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ] - ] - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "entity_linear_pattern_transform", - "entity_id": "[uuid]", - "transform": [], - "transforms": [ - [ - { - "translate": { - "x": 0.0, - "y": 8.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 16.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 24.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 32.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 40.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 48.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 56.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 64.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 72.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ] - ] - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "entity_linear_pattern_transform", - "entity_id": "[uuid]", - "transform": [], - "transforms": [ - [ - { - "translate": { - "x": 0.0, - "y": 8.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 16.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 24.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 32.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 40.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 48.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 56.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 64.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 72.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ] - ] - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, { "cmdId": "[uuid]", "range": [], @@ -5411,8 +1388,8 @@ description: Artifact commands lego.kcl "type": "move_path_pen", "path": "[uuid]", "to": { - "x": -9.6, - "y": -32.0, + "x": 2.4, + "y": -8.0, "z": 0.0 } } @@ -5433,8 +1410,8 @@ description: Artifact commands lego.kcl "segment": { "type": "arc", "center": { - "x": -12.0, - "y": -32.0 + "x": -0.0, + "y": -8.0 }, "radius": 2.4, "start": { @@ -5464,95 +1441,7 @@ description: Artifact commands lego.kcl "type": "entity_linear_pattern_transform", "entity_id": "[uuid]", "transform": [], - "transforms": [ - [ - { - "translate": { - "x": 8.0, - "y": 0.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 16.0, - "y": 0.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 24.0, - "y": 0.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ] - ] + "transforms": [] } }, { @@ -5620,3091 +1509,10 @@ description: Artifact commands lego.kcl }, "replicate": true } - ], - [ - { - "translate": { - "x": 0.0, - "y": 24.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 32.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 40.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 48.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 56.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 64.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } ] ] } }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "entity_linear_pattern_transform", - "entity_id": "[uuid]", - "transform": [], - "transforms": [ - [ - { - "translate": { - "x": 0.0, - "y": 8.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 16.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 24.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 32.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 40.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 48.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 56.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 64.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ] - ] - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "entity_linear_pattern_transform", - "entity_id": "[uuid]", - "transform": [], - "transforms": [ - [ - { - "translate": { - "x": 0.0, - "y": 8.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 16.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 24.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 32.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 40.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 48.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 56.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 64.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ] - ] - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "entity_linear_pattern_transform", - "entity_id": "[uuid]", - "transform": [], - "transforms": [ - [ - { - "translate": { - "x": 0.0, - "y": 8.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 16.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 24.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 32.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 40.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 48.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 56.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ], - [ - { - "translate": { - "x": 0.0, - "y": 64.0, - "z": 0.0 - }, - "scale": { - "x": 1.0, - "y": 1.0, - "z": 1.0 - }, - "rotation": { - "axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "angle": { - "unit": "degrees", - "value": 0.0 - }, - "origin": { - "type": "local" - } - }, - "replicate": true - } - ] - ] - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 1.8, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, { "cmdId": "[uuid]", "range": [], diff --git a/rust/kcl-lib/tests/kcl_samples/lego/artifact_graph_flowchart.snap.md b/rust/kcl-lib/tests/kcl_samples/lego/artifact_graph_flowchart.snap.md index 46fbd832e..506de41e0 100644 --- a/rust/kcl-lib/tests/kcl_samples/lego/artifact_graph_flowchart.snap.md +++ b/rust/kcl-lib/tests/kcl_samples/lego/artifact_graph_flowchart.snap.md @@ -1,33 +1,33 @@ ```mermaid flowchart LR subgraph path2 [Path] - 2["Path
[995, 1049, 0]"] - 3["Segment
[1055, 1082, 0]"] - 4["Segment
[1088, 1116, 0]"] - 5["Segment
[1122, 1150, 0]"] - 6["Segment
[1156, 1163, 0]"] + 2["Path
[994, 1048, 0]"] + 3["Segment
[1054, 1081, 0]"] + 4["Segment
[1087, 1115, 0]"] + 5["Segment
[1121, 1149, 0]"] + 6["Segment
[1155, 1162, 0]"] 7[Solid2d] end subgraph path23 [Path] - 23["Path
[1405, 1492, 0]"] - 24["Segment
[1498, 1535, 0]"] - 25["Segment
[1541, 1579, 0]"] - 26["Segment
[1585, 1625, 0]"] - 27["Segment
[1631, 1638, 0]"] + 23["Path
[1404, 1491, 0]"] + 24["Segment
[1497, 1534, 0]"] + 25["Segment
[1540, 1578, 0]"] + 26["Segment
[1584, 1624, 0]"] + 27["Segment
[1630, 1637, 0]"] 28[Solid2d] end subgraph path43 [Path] - 43["Path
[1757, 1903, 0]"] - 44["Segment
[1757, 1903, 0]"] + 43["Path
[1756, 1902, 0]"] + 44["Segment
[1756, 1902, 0]"] 45[Solid2d] end - subgraph path100 [Path] - 100["Path
[2244, 2418, 0]"] - 101["Segment
[2244, 2418, 0]"] - 102[Solid2d] + subgraph path58 [Path] + 58["Path
[2243, 2417, 0]"] + 59["Segment
[2243, 2417, 0]"] + 60[Solid2d] end - 1["Plane
[970, 989, 0]"] - 8["Sweep Extrusion
[1169, 1193, 0]"] + 1["Plane
[969, 988, 0]"] + 8["Sweep Extrusion
[1168, 1192, 0]"] 9[Wall] 10[Wall] 11[Wall] @@ -42,7 +42,7 @@ flowchart LR 20["SweepEdge Adjacent"] 21["SweepEdge Opposite"] 22["SweepEdge Adjacent"] - 29["Sweep Extrusion
[1644, 1675, 0]"] + 29["Sweep Extrusion
[1643, 1674, 0]"] 30[Wall] 31[Wall] 32[Wall] @@ -56,103 +56,28 @@ flowchart LR 40["SweepEdge Adjacent"] 41["SweepEdge Opposite"] 42["SweepEdge Adjacent"] - 46["Sweep Extrusion
[2113, 2141, 0]"] + 46["Sweep Extrusion
[2112, 2140, 0]"] 47[Wall] 48["Cap End"] 49["SweepEdge Opposite"] 50["SweepEdge Adjacent"] - 51["Sweep Extrusion
[2113, 2141, 0]"] - 52["Sweep Extrusion
[2113, 2141, 0]"] - 53["Sweep Extrusion
[2113, 2141, 0]"] - 54["Sweep Extrusion
[2113, 2141, 0]"] - 55["Sweep Extrusion
[2113, 2141, 0]"] - 56["Sweep Extrusion
[2113, 2141, 0]"] - 57["Sweep Extrusion
[2113, 2141, 0]"] - 58["Sweep Extrusion
[2113, 2141, 0]"] - 59["Sweep Extrusion
[2113, 2141, 0]"] - 60["Sweep Extrusion
[2113, 2141, 0]"] - 61["Sweep Extrusion
[2113, 2141, 0]"] - 62["Sweep Extrusion
[2113, 2141, 0]"] - 63["Sweep Extrusion
[2113, 2141, 0]"] - 64["Sweep Extrusion
[2113, 2141, 0]"] - 65["Sweep Extrusion
[2113, 2141, 0]"] - 66["Sweep Extrusion
[2113, 2141, 0]"] - 67["Sweep Extrusion
[2113, 2141, 0]"] - 68["Sweep Extrusion
[2113, 2141, 0]"] - 69["Sweep Extrusion
[2113, 2141, 0]"] - 70["Sweep Extrusion
[2113, 2141, 0]"] - 71["Sweep Extrusion
[2113, 2141, 0]"] - 72["Sweep Extrusion
[2113, 2141, 0]"] - 73["Sweep Extrusion
[2113, 2141, 0]"] - 74["Sweep Extrusion
[2113, 2141, 0]"] - 75["Sweep Extrusion
[2113, 2141, 0]"] - 76["Sweep Extrusion
[2113, 2141, 0]"] - 77["Sweep Extrusion
[2113, 2141, 0]"] - 78["Sweep Extrusion
[2113, 2141, 0]"] - 79["Sweep Extrusion
[2113, 2141, 0]"] - 80["Sweep Extrusion
[2113, 2141, 0]"] - 81["Sweep Extrusion
[2113, 2141, 0]"] - 82["Sweep Extrusion
[2113, 2141, 0]"] - 83["Sweep Extrusion
[2113, 2141, 0]"] - 84["Sweep Extrusion
[2113, 2141, 0]"] - 85["Sweep Extrusion
[2113, 2141, 0]"] - 86["Sweep Extrusion
[2113, 2141, 0]"] - 87["Sweep Extrusion
[2113, 2141, 0]"] - 88["Sweep Extrusion
[2113, 2141, 0]"] - 89["Sweep Extrusion
[2113, 2141, 0]"] - 90["Sweep Extrusion
[2113, 2141, 0]"] - 91["Sweep Extrusion
[2113, 2141, 0]"] - 92["Sweep Extrusion
[2113, 2141, 0]"] - 93["Sweep Extrusion
[2113, 2141, 0]"] - 94["Sweep Extrusion
[2113, 2141, 0]"] - 95["Sweep Extrusion
[2113, 2141, 0]"] - 96["Sweep Extrusion
[2113, 2141, 0]"] - 97["Sweep Extrusion
[2113, 2141, 0]"] - 98["Sweep Extrusion
[2113, 2141, 0]"] - 99["Sweep Extrusion
[2113, 2141, 0]"] - 103["Sweep Extrusion
[2636, 2664, 0]"] - 104[Wall] - 105["Cap End"] - 106["SweepEdge Opposite"] - 107["SweepEdge Adjacent"] - 108["Sweep Extrusion
[2636, 2664, 0]"] - 109["Sweep Extrusion
[2636, 2664, 0]"] - 110["Sweep Extrusion
[2636, 2664, 0]"] - 111["Sweep Extrusion
[2636, 2664, 0]"] - 112["Sweep Extrusion
[2636, 2664, 0]"] - 113["Sweep Extrusion
[2636, 2664, 0]"] - 114["Sweep Extrusion
[2636, 2664, 0]"] - 115["Sweep Extrusion
[2636, 2664, 0]"] - 116["Sweep Extrusion
[2636, 2664, 0]"] - 117["Sweep Extrusion
[2636, 2664, 0]"] - 118["Sweep Extrusion
[2636, 2664, 0]"] - 119["Sweep Extrusion
[2636, 2664, 0]"] - 120["Sweep Extrusion
[2636, 2664, 0]"] - 121["Sweep Extrusion
[2636, 2664, 0]"] - 122["Sweep Extrusion
[2636, 2664, 0]"] - 123["Sweep Extrusion
[2636, 2664, 0]"] - 124["Sweep Extrusion
[2636, 2664, 0]"] - 125["Sweep Extrusion
[2636, 2664, 0]"] - 126["Sweep Extrusion
[2636, 2664, 0]"] - 127["Sweep Extrusion
[2636, 2664, 0]"] - 128["Sweep Extrusion
[2636, 2664, 0]"] - 129["Sweep Extrusion
[2636, 2664, 0]"] - 130["Sweep Extrusion
[2636, 2664, 0]"] - 131["Sweep Extrusion
[2636, 2664, 0]"] - 132["Sweep Extrusion
[2636, 2664, 0]"] - 133["Sweep Extrusion
[2636, 2664, 0]"] - 134["Sweep Extrusion
[2636, 2664, 0]"] - 135["Sweep Extrusion
[2636, 2664, 0]"] - 136["Sweep Extrusion
[2636, 2664, 0]"] - 137["Sweep Extrusion
[2636, 2664, 0]"] - 138["Sweep Extrusion
[2636, 2664, 0]"] - 139["Sweep Extrusion
[2636, 2664, 0]"] - 140["Sweep Extrusion
[2636, 2664, 0]"] - 141["Sweep Extrusion
[2636, 2664, 0]"] - 142["Sweep Extrusion
[2636, 2664, 0]"] - 143["StartSketchOnFace
[1371, 1399, 0]"] - 144["StartSketchOnFace
[1725, 1751, 0]"] - 145["StartSketchOnFace
[2202, 2238, 0]"] + 51["Sweep Extrusion
[2112, 2140, 0]"] + 52["Sweep Extrusion
[2112, 2140, 0]"] + 53["Sweep Extrusion
[2112, 2140, 0]"] + 54["Sweep Extrusion
[2112, 2140, 0]"] + 55["Sweep Extrusion
[2112, 2140, 0]"] + 56["Sweep Extrusion
[2112, 2140, 0]"] + 57["Sweep Extrusion
[2112, 2140, 0]"] + 61["Sweep Extrusion
[2635, 2663, 0]"] + 62[Wall] + 63["Cap End"] + 64["SweepEdge Opposite"] + 65["SweepEdge Adjacent"] + 66["Sweep Extrusion
[2635, 2663, 0]"] + 67["Sweep Extrusion
[2635, 2663, 0]"] + 68["StartSketchOnFace
[1370, 1398, 0]"] + 69["StartSketchOnFace
[1724, 1750, 0]"] + 70["StartSketchOnFace
[2201, 2237, 0]"] 1 --- 2 2 --- 3 2 --- 4 @@ -219,7 +144,7 @@ flowchart LR 29 --- 40 29 --- 41 29 --- 42 - 34 --- 100 + 34 --- 58 43 --- 44 43 ---- 46 43 --- 45 @@ -230,17 +155,17 @@ flowchart LR 46 --- 48 46 --- 49 46 --- 50 - 100 --- 101 - 100 ---- 103 - 100 --- 102 - 101 --- 104 - 101 --- 106 - 101 --- 107 - 103 --- 104 - 103 --- 105 - 103 --- 106 - 103 --- 107 - 13 <--x 143 - 14 <--x 144 - 34 <--x 145 + 58 --- 59 + 58 ---- 61 + 58 --- 60 + 59 --- 62 + 59 --- 64 + 59 --- 65 + 61 --- 62 + 61 --- 63 + 61 --- 64 + 61 --- 65 + 13 <--x 68 + 14 <--x 69 + 34 <--x 70 ``` diff --git a/rust/kcl-lib/tests/kcl_samples/lego/ast.snap b/rust/kcl-lib/tests/kcl_samples/lego/ast.snap index a6fbe2a94..512d63754 100644 --- a/rust/kcl-lib/tests/kcl_samples/lego/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/lego/ast.snap @@ -20,12 +20,12 @@ description: Result of parsing lego.kcl "init": { "commentStart": 302, "end": 0, - "raw": "10", + "raw": "4", "start": 0, "type": "Literal", "type": "Literal", "value": { - "value": 10.0, + "value": 4.0, "suffix": "None" } }, @@ -42,26 +42,26 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { - "commentStart": 304, + "commentStart": 303, "declaration": { - "commentStart": 329, + "commentStart": 328, "end": 0, "id": { - "commentStart": 329, + "commentStart": 328, "end": 0, "name": "wbumps", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 338, + "commentStart": 337, "end": 0, - "raw": "5", + "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { - "value": 5.0, + "value": 2.0, "suffix": "None" } }, @@ -75,19 +75,19 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { - "commentStart": 339, + "commentStart": 338, "declaration": { - "commentStart": 364, + "commentStart": 363, "end": 0, "id": { - "commentStart": 364, + "commentStart": 363, "end": 0, "name": "pitch", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 372, + "commentStart": 371, "end": 0, "raw": "8.0", "start": 0, @@ -108,19 +108,19 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { - "commentStart": 376, + "commentStart": 375, "declaration": { - "commentStart": 376, + "commentStart": 375, "end": 0, "id": { - "commentStart": 376, + "commentStart": 375, "end": 0, "name": "clearance", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 388, + "commentStart": 387, "end": 0, "raw": "0.1", "start": 0, @@ -141,19 +141,19 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { - "commentStart": 392, + "commentStart": 391, "declaration": { - "commentStart": 392, + "commentStart": 391, "end": 0, "id": { - "commentStart": 392, + "commentStart": 391, "end": 0, "name": "bumpDiam", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 403, + "commentStart": 402, "end": 0, "raw": "4.8", "start": 0, @@ -174,19 +174,19 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { - "commentStart": 407, + "commentStart": 406, "declaration": { - "commentStart": 407, + "commentStart": 406, "end": 0, "id": { - "commentStart": 407, + "commentStart": 406, "end": 0, "name": "bumpHeight", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 420, + "commentStart": 419, "end": 0, "raw": "1.8", "start": 0, @@ -207,19 +207,19 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { - "commentStart": 424, + "commentStart": 423, "declaration": { - "commentStart": 424, + "commentStart": 423, "end": 0, "id": { - "commentStart": 424, + "commentStart": 423, "end": 0, "name": "height", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 433, + "commentStart": 432, "end": 0, "raw": "3.2", "start": 0, @@ -240,28 +240,28 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { - "commentStart": 437, + "commentStart": 436, "declaration": { - "commentStart": 437, + "commentStart": 436, "end": 0, "id": { - "commentStart": 437, + "commentStart": 436, "end": 0, "name": "t", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 442, + "commentStart": 441, "end": 0, "left": { - "commentStart": 442, + "commentStart": 441, "end": 0, "left": { - "commentStart": 442, + "commentStart": 441, "end": 0, "left": { - "commentStart": 442, + "commentStart": 441, "end": 0, "name": "pitch", "start": 0, @@ -270,10 +270,10 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 451, + "commentStart": 450, "end": 0, "left": { - "commentStart": 451, + "commentStart": 450, "end": 0, "raw": "2", "start": 0, @@ -286,7 +286,7 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { - "commentStart": 455, + "commentStart": 454, "end": 0, "name": "clearance", "start": 0, @@ -303,7 +303,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 468, + "commentStart": 467, "end": 0, "name": "bumpDiam", "start": 0, @@ -316,7 +316,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { - "commentStart": 480, + "commentStart": 479, "end": 0, "raw": "2.0", "start": 0, @@ -341,22 +341,22 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { - "commentStart": 484, + "commentStart": 483, "declaration": { - "commentStart": 484, + "commentStart": 483, "end": 0, "id": { - "commentStart": 484, + "commentStart": 483, "end": 0, "name": "postDiam", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 495, + "commentStart": 494, "end": 0, "left": { - "commentStart": 495, + "commentStart": 494, "end": 0, "name": "pitch", "start": 0, @@ -365,7 +365,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 503, + "commentStart": 502, "end": 0, "name": "t", "start": 0, @@ -386,25 +386,25 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { - "commentStart": 504, + "commentStart": 503, "declaration": { - "commentStart": 525, + "commentStart": 524, "end": 0, "id": { - "commentStart": 525, + "commentStart": 524, "end": 0, "name": "totalLength", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 539, + "commentStart": 538, "end": 0, "left": { - "commentStart": 539, + "commentStart": 538, "end": 0, "left": { - "commentStart": 539, + "commentStart": 538, "end": 0, "name": "lbumps", "start": 0, @@ -413,7 +413,7 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { - "commentStart": 548, + "commentStart": 547, "end": 0, "name": "pitch", "start": 0, @@ -426,10 +426,10 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 557, + "commentStart": 556, "end": 0, "left": { - "commentStart": 557, + "commentStart": 556, "end": 0, "raw": "2.0", "start": 0, @@ -442,7 +442,7 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { - "commentStart": 563, + "commentStart": 562, "end": 0, "name": "clearance", "start": 0, @@ -467,25 +467,25 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { - "commentStart": 574, + "commentStart": 573, "declaration": { - "commentStart": 574, + "commentStart": 573, "end": 0, "id": { - "commentStart": 574, + "commentStart": 573, "end": 0, "name": "totalWidth", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 587, + "commentStart": 586, "end": 0, "left": { - "commentStart": 587, + "commentStart": 586, "end": 0, "left": { - "commentStart": 587, + "commentStart": 586, "end": 0, "name": "wbumps", "start": 0, @@ -494,7 +494,7 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { - "commentStart": 596, + "commentStart": 595, "end": 0, "name": "pitch", "start": 0, @@ -507,10 +507,10 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 605, + "commentStart": 604, "end": 0, "left": { - "commentStart": 605, + "commentStart": 604, "end": 0, "raw": "2.0", "start": 0, @@ -523,7 +523,7 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { - "commentStart": 611, + "commentStart": 610, "end": 0, "name": "clearance", "start": 0, @@ -548,22 +548,22 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { - "commentStart": 621, + "commentStart": 620, "declaration": { - "commentStart": 683, + "commentStart": 682, "end": 0, "id": { - "commentStart": 683, + "commentStart": 682, "end": 0, "name": "lSegments", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 695, + "commentStart": 694, "end": 0, "left": { - "commentStart": 695, + "commentStart": 694, "end": 0, "name": "totalLength", "start": 0, @@ -572,7 +572,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { - "commentStart": 709, + "commentStart": 708, "end": 0, "name": "lbumps", "start": 0, @@ -598,22 +598,22 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { - "commentStart": 716, + "commentStart": 715, "declaration": { - "commentStart": 716, + "commentStart": 715, "end": 0, "id": { - "commentStart": 716, + "commentStart": 715, "end": 0, "name": "wSegments", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 728, + "commentStart": 727, "end": 0, "left": { - "commentStart": 728, + "commentStart": 727, "end": 0, "name": "totalWidth", "start": 0, @@ -622,7 +622,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { - "commentStart": 741, + "commentStart": 740, "end": 0, "name": "wbumps", "start": 0, @@ -643,12 +643,12 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { - "commentStart": 747, + "commentStart": 746, "end": 0, "expression": { "arguments": [ { - "commentStart": 839, + "commentStart": 838, "end": 0, "name": "lbumps", "start": 0, @@ -656,7 +656,7 @@ description: Result of parsing lego.kcl "type": "Identifier" }, { - "commentStart": 847, + "commentStart": 846, "end": 0, "raw": "1", "start": 0, @@ -668,7 +668,7 @@ description: Result of parsing lego.kcl } }, { - "commentStart": 850, + "commentStart": 849, "end": 0, "raw": "\"lbumps must be greater than 1\"", "start": 0, @@ -678,13 +678,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 821, + "commentStart": 820, "end": 0, "name": "assertGreaterThan", "start": 0, "type": "Identifier" }, - "commentStart": 821, + "commentStart": 820, "end": 0, "start": 0, "type": "CallExpression", @@ -700,12 +700,12 @@ description: Result of parsing lego.kcl "type": "ExpressionStatement" }, { - "commentStart": 883, + "commentStart": 882, "end": 0, "expression": { "arguments": [ { - "commentStart": 901, + "commentStart": 900, "end": 0, "name": "wbumps", "start": 0, @@ -713,7 +713,7 @@ description: Result of parsing lego.kcl "type": "Identifier" }, { - "commentStart": 909, + "commentStart": 908, "end": 0, "raw": "1", "start": 0, @@ -725,7 +725,7 @@ description: Result of parsing lego.kcl } }, { - "commentStart": 912, + "commentStart": 911, "end": 0, "raw": "\"wbumps must be greater than 1\"", "start": 0, @@ -735,13 +735,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 883, + "commentStart": 882, "end": 0, "name": "assertGreaterThan", "start": 0, "type": "Identifier" }, - "commentStart": 883, + "commentStart": 882, "end": 0, "start": 0, "type": "CallExpression", @@ -752,12 +752,12 @@ description: Result of parsing lego.kcl "type": "ExpressionStatement" }, { - "commentStart": 944, + "commentStart": 943, "declaration": { - "commentStart": 963, + "commentStart": 962, "end": 0, "id": { - "commentStart": 963, + "commentStart": 962, "end": 0, "name": "base", "start": 0, @@ -768,7 +768,7 @@ description: Result of parsing lego.kcl { "arguments": [ { - "commentStart": 984, + "commentStart": 983, "end": 0, "raw": "'XY'", "start": 0, @@ -778,13 +778,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 970, + "commentStart": 969, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, - "commentStart": 970, + "commentStart": 969, "end": 0, "start": 0, "type": "CallExpression", @@ -793,21 +793,21 @@ description: Result of parsing lego.kcl { "arguments": [ { - "commentStart": 1010, + "commentStart": 1009, "elements": [ { - "commentStart": 1011, + "commentStart": 1010, "end": 0, "left": { "argument": { - "commentStart": 1012, + "commentStart": 1011, "end": 0, "name": "totalWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, - "commentStart": 1011, + "commentStart": 1010, "end": 0, "operator": "-", "start": 0, @@ -816,7 +816,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { - "commentStart": 1025, + "commentStart": 1024, "end": 0, "raw": "2", "start": 0, @@ -832,18 +832,18 @@ description: Result of parsing lego.kcl "type": "BinaryExpression" }, { - "commentStart": 1028, + "commentStart": 1027, "end": 0, "left": { "argument": { - "commentStart": 1029, + "commentStart": 1028, "end": 0, "name": "totalLength", "start": 0, "type": "Identifier", "type": "Identifier" }, - "commentStart": 1028, + "commentStart": 1027, "end": 0, "operator": "-", "start": 0, @@ -852,7 +852,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { - "commentStart": 1043, + "commentStart": 1042, "end": 0, "raw": "2", "start": 0, @@ -874,7 +874,7 @@ description: Result of parsing lego.kcl "type": "ArrayExpression" }, { - "commentStart": 1047, + "commentStart": 1046, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -882,13 +882,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 995, + "commentStart": 994, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, - "commentStart": 995, + "commentStart": 994, "end": 0, "start": 0, "type": "CallExpression", @@ -899,17 +899,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 1060, + "commentStart": 1059, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1066, + "commentStart": 1065, "elements": [ { - "commentStart": 1067, + "commentStart": 1066, "end": 0, "name": "totalWidth", "start": 0, @@ -917,7 +917,7 @@ description: Result of parsing lego.kcl "type": "Identifier" }, { - "commentStart": 1079, + "commentStart": 1078, "end": 0, "raw": "0", "start": 0, @@ -937,13 +937,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 1055, + "commentStart": 1054, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, - "commentStart": 1055, + "commentStart": 1054, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -955,17 +955,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 1093, + "commentStart": 1092, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1099, + "commentStart": 1098, "elements": [ { - "commentStart": 1100, + "commentStart": 1099, "end": 0, "raw": "0", "start": 0, @@ -977,7 +977,7 @@ description: Result of parsing lego.kcl } }, { - "commentStart": 1103, + "commentStart": 1102, "end": 0, "name": "totalLength", "start": 0, @@ -993,13 +993,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 1088, + "commentStart": 1087, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, - "commentStart": 1088, + "commentStart": 1087, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1011,25 +1011,25 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 1127, + "commentStart": 1126, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1133, + "commentStart": 1132, "elements": [ { "argument": { - "commentStart": 1135, + "commentStart": 1134, "end": 0, "name": "totalWidth", "start": 0, "type": "Identifier", "type": "Identifier" }, - "commentStart": 1134, + "commentStart": 1133, "end": 0, "operator": "-", "start": 0, @@ -1037,7 +1037,7 @@ description: Result of parsing lego.kcl "type": "UnaryExpression" }, { - "commentStart": 1147, + "commentStart": 1146, "end": 0, "raw": "0", "start": 0, @@ -1057,13 +1057,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 1122, + "commentStart": 1121, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, - "commentStart": 1122, + "commentStart": 1121, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1073,13 +1073,13 @@ description: Result of parsing lego.kcl { "arguments": [], "callee": { - "commentStart": 1156, + "commentStart": 1155, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, - "commentStart": 1156, + "commentStart": 1155, "end": 0, "start": 0, "type": "CallExpression", @@ -1090,14 +1090,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 1177, + "commentStart": 1176, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1186, + "commentStart": 1185, "end": 0, "name": "height", "start": 0, @@ -1107,13 +1107,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 1169, + "commentStart": 1168, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, - "commentStart": 1169, + "commentStart": 1168, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1121,13 +1121,13 @@ description: Result of parsing lego.kcl "unlabeled": null } ], - "commentStart": 970, + "commentStart": 969, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "6": [ { - "commentStart": 1193, + "commentStart": 1192, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1160,12 +1160,12 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { - "commentStart": 1356, + "commentStart": 1355, "declaration": { - "commentStart": 1356, + "commentStart": 1355, "end": 0, "id": { - "commentStart": 1356, + "commentStart": 1355, "end": 0, "name": "shellExtrude", "start": 0, @@ -1176,7 +1176,7 @@ description: Result of parsing lego.kcl { "arguments": [ { - "commentStart": 1385, + "commentStart": 1384, "end": 0, "name": "base", "start": 0, @@ -1184,7 +1184,7 @@ description: Result of parsing lego.kcl "type": "Identifier" }, { - "commentStart": 1391, + "commentStart": 1390, "end": 0, "raw": "\"start\"", "start": 0, @@ -1194,13 +1194,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 1371, + "commentStart": 1370, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, - "commentStart": 1371, + "commentStart": 1370, "end": 0, "start": 0, "type": "CallExpression", @@ -1209,17 +1209,17 @@ description: Result of parsing lego.kcl { "arguments": [ { - "commentStart": 1420, + "commentStart": 1419, "elements": [ { "argument": { - "commentStart": 1431, + "commentStart": 1430, "end": 0, "left": { - "commentStart": 1431, + "commentStart": 1430, "end": 0, "left": { - "commentStart": 1431, + "commentStart": 1430, "end": 0, "name": "totalWidth", "start": 0, @@ -1228,7 +1228,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { - "commentStart": 1444, + "commentStart": 1443, "end": 0, "raw": "2", "start": 0, @@ -1245,7 +1245,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 1448, + "commentStart": 1447, "end": 0, "name": "t", "start": 0, @@ -1256,7 +1256,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, - "commentStart": 1429, + "commentStart": 1428, "end": 0, "operator": "-", "start": 0, @@ -1265,13 +1265,13 @@ description: Result of parsing lego.kcl }, { "argument": { - "commentStart": 1461, + "commentStart": 1460, "end": 0, "left": { - "commentStart": 1461, + "commentStart": 1460, "end": 0, "left": { - "commentStart": 1461, + "commentStart": 1460, "end": 0, "name": "totalLength", "start": 0, @@ -1280,7 +1280,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { - "commentStart": 1475, + "commentStart": 1474, "end": 0, "raw": "2", "start": 0, @@ -1297,7 +1297,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 1479, + "commentStart": 1478, "end": 0, "name": "t", "start": 0, @@ -1308,7 +1308,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, - "commentStart": 1459, + "commentStart": 1458, "end": 0, "operator": "-", "start": 0, @@ -1322,7 +1322,7 @@ description: Result of parsing lego.kcl "type": "ArrayExpression" }, { - "commentStart": 1490, + "commentStart": 1489, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1330,13 +1330,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 1405, + "commentStart": 1404, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, - "commentStart": 1405, + "commentStart": 1404, "end": 0, "start": 0, "type": "CallExpression", @@ -1347,20 +1347,20 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 1503, + "commentStart": 1502, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1509, + "commentStart": 1508, "elements": [ { - "commentStart": 1510, + "commentStart": 1509, "end": 0, "left": { - "commentStart": 1510, + "commentStart": 1509, "end": 0, "name": "totalWidth", "start": 0, @@ -1369,10 +1369,10 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 1524, + "commentStart": 1523, "end": 0, "left": { - "commentStart": 1524, + "commentStart": 1523, "end": 0, "raw": "2", "start": 0, @@ -1385,7 +1385,7 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { - "commentStart": 1528, + "commentStart": 1527, "end": 0, "name": "t", "start": 0, @@ -1401,7 +1401,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression" }, { - "commentStart": 1532, + "commentStart": 1531, "end": 0, "raw": "0", "start": 0, @@ -1421,13 +1421,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 1498, + "commentStart": 1497, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, - "commentStart": 1498, + "commentStart": 1497, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1439,17 +1439,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 1546, + "commentStart": 1545, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1552, + "commentStart": 1551, "elements": [ { - "commentStart": 1553, + "commentStart": 1552, "end": 0, "raw": "0", "start": 0, @@ -1461,10 +1461,10 @@ description: Result of parsing lego.kcl } }, { - "commentStart": 1556, + "commentStart": 1555, "end": 0, "left": { - "commentStart": 1556, + "commentStart": 1555, "end": 0, "name": "totalLength", "start": 0, @@ -1473,10 +1473,10 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 1571, + "commentStart": 1570, "end": 0, "left": { - "commentStart": 1571, + "commentStart": 1570, "end": 0, "raw": "2", "start": 0, @@ -1489,7 +1489,7 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { - "commentStart": 1575, + "commentStart": 1574, "end": 0, "name": "t", "start": 0, @@ -1513,13 +1513,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 1541, + "commentStart": 1540, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, - "commentStart": 1541, + "commentStart": 1540, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1531,21 +1531,21 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 1590, + "commentStart": 1589, "end": 0, "name": "end", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1596, + "commentStart": 1595, "elements": [ { "argument": { - "commentStart": 1599, + "commentStart": 1598, "end": 0, "left": { - "commentStart": 1599, + "commentStart": 1598, "end": 0, "name": "totalWidth", "start": 0, @@ -1554,10 +1554,10 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 1613, + "commentStart": 1612, "end": 0, "left": { - "commentStart": 1613, + "commentStart": 1612, "end": 0, "raw": "2", "start": 0, @@ -1570,7 +1570,7 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { - "commentStart": 1617, + "commentStart": 1616, "end": 0, "name": "t", "start": 0, @@ -1585,7 +1585,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, - "commentStart": 1597, + "commentStart": 1596, "end": 0, "operator": "-", "start": 0, @@ -1593,7 +1593,7 @@ description: Result of parsing lego.kcl "type": "UnaryExpression" }, { - "commentStart": 1622, + "commentStart": 1621, "end": 0, "raw": "0", "start": 0, @@ -1613,13 +1613,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 1585, + "commentStart": 1584, "end": 0, "name": "line", "start": 0, "type": "Identifier" }, - "commentStart": 1585, + "commentStart": 1584, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1629,13 +1629,13 @@ description: Result of parsing lego.kcl { "arguments": [], "callee": { - "commentStart": 1631, + "commentStart": 1630, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, - "commentStart": 1631, + "commentStart": 1630, "end": 0, "start": 0, "type": "CallExpression", @@ -1646,7 +1646,7 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 1652, + "commentStart": 1651, "end": 0, "name": "length", "start": 0, @@ -1654,10 +1654,10 @@ description: Result of parsing lego.kcl }, "arg": { "argument": { - "commentStart": 1663, + "commentStart": 1662, "end": 0, "left": { - "commentStart": 1663, + "commentStart": 1662, "end": 0, "name": "height", "start": 0, @@ -1666,7 +1666,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 1672, + "commentStart": 1671, "end": 0, "name": "t", "start": 0, @@ -1677,7 +1677,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, - "commentStart": 1661, + "commentStart": 1660, "end": 0, "operator": "-", "start": 0, @@ -1687,13 +1687,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 1644, + "commentStart": 1643, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, - "commentStart": 1644, + "commentStart": 1643, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1701,13 +1701,13 @@ description: Result of parsing lego.kcl "unlabeled": null } ], - "commentStart": 1371, + "commentStart": 1370, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "6": [ { - "commentStart": 1675, + "commentStart": 1674, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1735,12 +1735,12 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { - "commentStart": 1719, + "commentStart": 1718, "declaration": { - "commentStart": 1719, + "commentStart": 1718, "end": 0, "id": { - "commentStart": 1719, + "commentStart": 1718, "end": 0, "name": "peg", "start": 0, @@ -1751,7 +1751,7 @@ description: Result of parsing lego.kcl { "arguments": [ { - "commentStart": 1739, + "commentStart": 1738, "end": 0, "name": "base", "start": 0, @@ -1759,7 +1759,7 @@ description: Result of parsing lego.kcl "type": "Identifier" }, { - "commentStart": 1745, + "commentStart": 1744, "end": 0, "raw": "'end'", "start": 0, @@ -1769,13 +1769,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 1725, + "commentStart": 1724, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, - "commentStart": 1725, + "commentStart": 1724, "end": 0, "start": 0, "type": "CallExpression", @@ -1786,24 +1786,24 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 1772, + "commentStart": 1771, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1781, + "commentStart": 1780, "elements": [ { "argument": { - "commentStart": 1794, + "commentStart": 1793, "end": 0, "left": { - "commentStart": 1794, + "commentStart": 1793, "end": 0, "left": { - "commentStart": 1794, + "commentStart": 1793, "end": 0, "name": "pitch", "start": 0, @@ -1812,10 +1812,10 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { - "commentStart": 1803, + "commentStart": 1802, "end": 0, "left": { - "commentStart": 1803, + "commentStart": 1802, "end": 0, "name": "wbumps", "start": 0, @@ -1824,7 +1824,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 1812, + "commentStart": 1811, "end": 0, "raw": "1", "start": 0, @@ -1845,7 +1845,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { - "commentStart": 1817, + "commentStart": 1816, "end": 0, "raw": "2", "start": 0, @@ -1860,7 +1860,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, - "commentStart": 1792, + "commentStart": 1791, "end": 0, "operator": "-", "start": 0, @@ -1869,13 +1869,13 @@ description: Result of parsing lego.kcl }, { "argument": { - "commentStart": 1832, + "commentStart": 1831, "end": 0, "left": { - "commentStart": 1832, + "commentStart": 1831, "end": 0, "left": { - "commentStart": 1832, + "commentStart": 1831, "end": 0, "name": "pitch", "start": 0, @@ -1884,10 +1884,10 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { - "commentStart": 1841, + "commentStart": 1840, "end": 0, "left": { - "commentStart": 1841, + "commentStart": 1840, "end": 0, "name": "lbumps", "start": 0, @@ -1896,7 +1896,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 1850, + "commentStart": 1849, "end": 0, "raw": "1", "start": 0, @@ -1917,7 +1917,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { - "commentStart": 1855, + "commentStart": 1854, "end": 0, "raw": "2", "start": 0, @@ -1932,7 +1932,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, - "commentStart": 1830, + "commentStart": 1829, "end": 0, "operator": "-", "start": 0, @@ -1949,17 +1949,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 1875, + "commentStart": 1874, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1884, + "commentStart": 1883, "end": 0, "left": { - "commentStart": 1884, + "commentStart": 1883, "end": 0, "name": "bumpDiam", "start": 0, @@ -1968,7 +1968,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { - "commentStart": 1895, + "commentStart": 1894, "end": 0, "raw": "2", "start": 0, @@ -1986,13 +1986,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 1757, + "commentStart": 1756, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, - "commentStart": 1757, + "commentStart": 1756, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2004,17 +2004,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 1933, + "commentStart": 1932, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1940, + "commentStart": 1939, "elements": [ { - "commentStart": 1941, + "commentStart": 1940, "end": 0, "raw": "1", "start": 0, @@ -2026,7 +2026,7 @@ description: Result of parsing lego.kcl } }, { - "commentStart": 1944, + "commentStart": 1943, "end": 0, "raw": "0", "start": 0, @@ -2047,14 +2047,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 1955, + "commentStart": 1954, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1967, + "commentStart": 1966, "end": 0, "name": "wbumps", "start": 0, @@ -2065,14 +2065,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 1982, + "commentStart": 1981, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1993, + "commentStart": 1992, "end": 0, "name": "pitch", "start": 0, @@ -2082,13 +2082,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 1909, + "commentStart": 1908, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, - "commentStart": 1909, + "commentStart": 1908, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2100,17 +2100,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 2035, + "commentStart": 2034, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 2042, + "commentStart": 2041, "elements": [ { - "commentStart": 2043, + "commentStart": 2042, "end": 0, "raw": "0", "start": 0, @@ -2122,7 +2122,7 @@ description: Result of parsing lego.kcl } }, { - "commentStart": 2046, + "commentStart": 2045, "end": 0, "raw": "1", "start": 0, @@ -2143,14 +2143,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 2057, + "commentStart": 2056, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 2069, + "commentStart": 2068, "end": 0, "name": "lbumps", "start": 0, @@ -2161,14 +2161,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 2084, + "commentStart": 2083, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 2095, + "commentStart": 2094, "end": 0, "name": "pitch", "start": 0, @@ -2178,13 +2178,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 2011, + "commentStart": 2010, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, - "commentStart": 2011, + "commentStart": 2010, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2196,14 +2196,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 2121, + "commentStart": 2120, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 2130, + "commentStart": 2129, "end": 0, "name": "bumpHeight", "start": 0, @@ -2213,13 +2213,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 2113, + "commentStart": 2112, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, - "commentStart": 2113, + "commentStart": 2112, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2227,13 +2227,13 @@ description: Result of parsing lego.kcl "unlabeled": null } ], - "commentStart": 1725, + "commentStart": 1724, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "4": [ { - "commentStart": 2141, + "commentStart": 2140, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2261,12 +2261,12 @@ description: Result of parsing lego.kcl "type": "VariableDeclaration" }, { - "commentStart": 2188, + "commentStart": 2187, "declaration": { - "commentStart": 2188, + "commentStart": 2187, "end": 0, "id": { - "commentStart": 2188, + "commentStart": 2187, "end": 0, "name": "tubePattern", "start": 0, @@ -2277,7 +2277,7 @@ description: Result of parsing lego.kcl { "arguments": [ { - "commentStart": 2216, + "commentStart": 2215, "end": 0, "name": "shellExtrude", "start": 0, @@ -2285,7 +2285,7 @@ description: Result of parsing lego.kcl "type": "Identifier" }, { - "commentStart": 2230, + "commentStart": 2229, "end": 0, "raw": "'start'", "start": 0, @@ -2295,13 +2295,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 2202, + "commentStart": 2201, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, - "commentStart": 2202, + "commentStart": 2201, "end": 0, "start": 0, "type": "CallExpression", @@ -2312,27 +2312,27 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 2259, + "commentStart": 2258, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 2268, + "commentStart": 2267, "elements": [ { "argument": { - "commentStart": 2281, + "commentStart": 2280, "end": 0, "left": { - "commentStart": 2281, + "commentStart": 2280, "end": 0, "left": { - "commentStart": 2281, + "commentStart": 2280, "end": 0, "left": { - "commentStart": 2281, + "commentStart": 2280, "end": 0, "name": "pitch", "start": 0, @@ -2341,10 +2341,10 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { - "commentStart": 2290, + "commentStart": 2289, "end": 0, "left": { - "commentStart": 2290, + "commentStart": 2289, "end": 0, "name": "wbumps", "start": 0, @@ -2353,7 +2353,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 2299, + "commentStart": 2298, "end": 0, "raw": "1", "start": 0, @@ -2374,7 +2374,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { - "commentStart": 2304, + "commentStart": 2303, "end": 0, "raw": "2", "start": 0, @@ -2391,10 +2391,10 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 2309, + "commentStart": 2308, "end": 0, "left": { - "commentStart": 2309, + "commentStart": 2308, "end": 0, "name": "pitch", "start": 0, @@ -2403,7 +2403,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { - "commentStart": 2317, + "commentStart": 2316, "end": 0, "raw": "2", "start": 0, @@ -2422,7 +2422,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, - "commentStart": 2279, + "commentStart": 2278, "end": 0, "operator": "-", "start": 0, @@ -2431,16 +2431,16 @@ description: Result of parsing lego.kcl }, { "argument": { - "commentStart": 2333, + "commentStart": 2332, "end": 0, "left": { - "commentStart": 2333, + "commentStart": 2332, "end": 0, "left": { - "commentStart": 2333, + "commentStart": 2332, "end": 0, "left": { - "commentStart": 2333, + "commentStart": 2332, "end": 0, "name": "pitch", "start": 0, @@ -2449,10 +2449,10 @@ description: Result of parsing lego.kcl }, "operator": "*", "right": { - "commentStart": 2342, + "commentStart": 2341, "end": 0, "left": { - "commentStart": 2342, + "commentStart": 2341, "end": 0, "name": "lbumps", "start": 0, @@ -2461,7 +2461,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 2351, + "commentStart": 2350, "end": 0, "raw": "1", "start": 0, @@ -2482,7 +2482,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { - "commentStart": 2356, + "commentStart": 2355, "end": 0, "raw": "2", "start": 0, @@ -2499,10 +2499,10 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 2361, + "commentStart": 2360, "end": 0, "left": { - "commentStart": 2361, + "commentStart": 2360, "end": 0, "name": "pitch", "start": 0, @@ -2511,7 +2511,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { - "commentStart": 2369, + "commentStart": 2368, "end": 0, "raw": "2", "start": 0, @@ -2530,7 +2530,7 @@ description: Result of parsing lego.kcl "type": "BinaryExpression", "type": "BinaryExpression" }, - "commentStart": 2331, + "commentStart": 2330, "end": 0, "operator": "-", "start": 0, @@ -2547,17 +2547,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 2390, + "commentStart": 2389, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 2399, + "commentStart": 2398, "end": 0, "left": { - "commentStart": 2399, + "commentStart": 2398, "end": 0, "name": "bumpDiam", "start": 0, @@ -2566,7 +2566,7 @@ description: Result of parsing lego.kcl }, "operator": "/", "right": { - "commentStart": 2410, + "commentStart": 2409, "end": 0, "raw": "2", "start": 0, @@ -2584,13 +2584,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 2244, + "commentStart": 2243, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, - "commentStart": 2244, + "commentStart": 2243, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2602,17 +2602,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 2448, + "commentStart": 2447, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 2455, + "commentStart": 2454, "elements": [ { - "commentStart": 2456, + "commentStart": 2455, "end": 0, "raw": "1", "start": 0, @@ -2624,7 +2624,7 @@ description: Result of parsing lego.kcl } }, { - "commentStart": 2459, + "commentStart": 2458, "end": 0, "raw": "0", "start": 0, @@ -2645,17 +2645,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 2470, + "commentStart": 2469, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 2482, + "commentStart": 2481, "end": 0, "left": { - "commentStart": 2482, + "commentStart": 2481, "end": 0, "name": "wbumps", "start": 0, @@ -2664,7 +2664,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 2491, + "commentStart": 2490, "end": 0, "raw": "1", "start": 0, @@ -2683,14 +2683,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 2501, + "commentStart": 2500, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 2512, + "commentStart": 2511, "end": 0, "name": "pitch", "start": 0, @@ -2700,13 +2700,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 2424, + "commentStart": 2423, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, - "commentStart": 2424, + "commentStart": 2423, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2718,17 +2718,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 2554, + "commentStart": 2553, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 2561, + "commentStart": 2560, "elements": [ { - "commentStart": 2562, + "commentStart": 2561, "end": 0, "raw": "0", "start": 0, @@ -2740,7 +2740,7 @@ description: Result of parsing lego.kcl } }, { - "commentStart": 2565, + "commentStart": 2564, "end": 0, "raw": "1", "start": 0, @@ -2761,17 +2761,17 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 2576, + "commentStart": 2575, "end": 0, "name": "instances", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 2588, + "commentStart": 2587, "end": 0, "left": { - "commentStart": 2588, + "commentStart": 2587, "end": 0, "name": "lbumps", "start": 0, @@ -2780,7 +2780,7 @@ description: Result of parsing lego.kcl }, "operator": "-", "right": { - "commentStart": 2597, + "commentStart": 2596, "end": 0, "raw": "1", "start": 0, @@ -2799,14 +2799,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 2607, + "commentStart": 2606, "end": 0, "name": "distance", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 2618, + "commentStart": 2617, "end": 0, "name": "pitch", "start": 0, @@ -2816,13 +2816,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 2530, + "commentStart": 2529, "end": 0, "name": "patternLinear2d", "start": 0, "type": "Identifier" }, - "commentStart": 2530, + "commentStart": 2529, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2834,14 +2834,14 @@ description: Result of parsing lego.kcl { "type": "LabeledArg", "label": { - "commentStart": 2644, + "commentStart": 2643, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 2653, + "commentStart": 2652, "end": 0, "name": "bumpHeight", "start": 0, @@ -2851,13 +2851,13 @@ description: Result of parsing lego.kcl } ], "callee": { - "commentStart": 2636, + "commentStart": 2635, "end": 0, "name": "extrude", "start": 0, "type": "Identifier" }, - "commentStart": 2636, + "commentStart": 2635, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -2865,7 +2865,7 @@ description: Result of parsing lego.kcl "unlabeled": null } ], - "commentStart": 2202, + "commentStart": 2201, "end": 0, "start": 0, "type": "PipeExpression", @@ -2932,7 +2932,7 @@ description: Result of parsing lego.kcl "nonCodeNodes": { "0": [ { - "commentStart": 304, + "commentStart": 303, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2945,7 +2945,7 @@ description: Result of parsing lego.kcl ], "1": [ { - "commentStart": 339, + "commentStart": 338, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2958,7 +2958,7 @@ description: Result of parsing lego.kcl ], "8": [ { - "commentStart": 504, + "commentStart": 503, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/kcl_samples/lego/ops.snap b/rust/kcl-lib/tests/kcl_samples/lego/ops.snap index f0f0bf3ba..fc4ba6d76 100644 --- a/rust/kcl-lib/tests/kcl_samples/lego/ops.snap +++ b/rust/kcl-lib/tests/kcl_samples/lego/ops.snap @@ -150,258 +150,6 @@ description: Operations executed lego.kcl "value": { "type": "Array", "value": [ - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, { "type": "Sketch", "value": { @@ -505,204 +253,6 @@ description: Operations executed lego.kcl "value": { "type": "Array", "value": [ - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, { "type": "Sketch", "value": { diff --git a/rust/kcl-lib/tests/kcl_samples/lego/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/lego/program_memory.snap index e60d37c8b..cf5b8683d 100644 --- a/rust/kcl-lib/tests/kcl_samples/lego/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/lego/program_memory.snap @@ -49,13 +49,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -68,13 +68,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -87,13 +87,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -106,13 +106,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -151,12 +151,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "units": { "type": "Inches" @@ -235,14 +235,14 @@ description: Variables in memory after executing lego.kcl }, "lSegments": { "type": "Number", - "value": 7.98, + "value": 7.95, "ty": { "type": "Unknown" } }, "lbumps": { "type": "Number", - "value": 10.0, + "value": 4.0, "ty": { "type": "Default", "len": { @@ -282,18 +282,18 @@ description: Variables in memory after executing lego.kcl }, "ccw": true, "center": [ - -16.0, - -36.0 + -4.0, + -12.0 ], "from": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "radius": 2.4, "tag": null, "to": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "type": "Circle", "units": { @@ -365,13 +365,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -384,13 +384,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -403,13 +403,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -422,13 +422,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -467,12 +467,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "units": { "type": "Inches" @@ -502,12 +502,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "to": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "units": { "type": "Inches" @@ -558,18 +558,18 @@ description: Variables in memory after executing lego.kcl }, "ccw": true, "center": [ - -16.0, - -36.0 + -4.0, + -12.0 ], "from": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "radius": 2.4, "tag": null, "to": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "type": "Circle", "units": { @@ -641,13 +641,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -660,13 +660,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -679,13 +679,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -698,13 +698,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -743,12 +743,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "units": { "type": "Inches" @@ -778,12 +778,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "to": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "units": { "type": "Inches" @@ -834,18 +834,18 @@ description: Variables in memory after executing lego.kcl }, "ccw": true, "center": [ - -16.0, - -36.0 + -4.0, + -12.0 ], "from": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "radius": 2.4, "tag": null, "to": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "type": "Circle", "units": { @@ -917,13 +917,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -936,13 +936,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -955,13 +955,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -974,13 +974,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -1019,12 +1019,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "units": { "type": "Inches" @@ -1054,12 +1054,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "to": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "units": { "type": "Inches" @@ -1110,18 +1110,18 @@ description: Variables in memory after executing lego.kcl }, "ccw": true, "center": [ - -16.0, - -36.0 + -4.0, + -12.0 ], "from": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "radius": 2.4, "tag": null, "to": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "type": "Circle", "units": { @@ -1193,13 +1193,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -1212,13 +1212,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -1231,13 +1231,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -1250,13 +1250,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -1295,12 +1295,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "units": { "type": "Inches" @@ -1330,12 +1330,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "to": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "units": { "type": "Inches" @@ -1386,18 +1386,18 @@ description: Variables in memory after executing lego.kcl }, "ccw": true, "center": [ - -16.0, - -36.0 + -4.0, + -12.0 ], "from": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "radius": 2.4, "tag": null, "to": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "type": "Circle", "units": { @@ -1469,13 +1469,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -1488,13 +1488,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -1507,13 +1507,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -1526,13 +1526,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -1571,12 +1571,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "units": { "type": "Inches" @@ -1606,12 +1606,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "to": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "units": { "type": "Inches" @@ -1662,18 +1662,18 @@ description: Variables in memory after executing lego.kcl }, "ccw": true, "center": [ - -16.0, - -36.0 + -4.0, + -12.0 ], "from": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "radius": 2.4, "tag": null, "to": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "type": "Circle", "units": { @@ -1745,13 +1745,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -1764,13 +1764,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -1783,13 +1783,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -1802,13 +1802,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -1847,12 +1847,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "units": { "type": "Inches" @@ -1882,12 +1882,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "to": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "units": { "type": "Inches" @@ -1938,18 +1938,18 @@ description: Variables in memory after executing lego.kcl }, "ccw": true, "center": [ - -16.0, - -36.0 + -4.0, + -12.0 ], "from": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "radius": 2.4, "tag": null, "to": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "type": "Circle", "units": { @@ -2021,13 +2021,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -2040,13 +2040,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -2059,13 +2059,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -2078,13 +2078,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -2123,12 +2123,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "units": { "type": "Inches" @@ -2158,12 +2158,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "to": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "units": { "type": "Inches" @@ -2214,18 +2214,18 @@ description: Variables in memory after executing lego.kcl }, "ccw": true, "center": [ - -16.0, - -36.0 + -4.0, + -12.0 ], "from": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "radius": 2.4, "tag": null, "to": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "type": "Circle", "units": { @@ -2297,13 +2297,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -2316,13 +2316,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -2335,13 +2335,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -2354,13 +2354,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -2399,12 +2399,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "units": { "type": "Inches" @@ -2434,11604 +2434,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -16.0, - -36.0 - ], - "from": [ - -13.6, - -36.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -13.6, - -36.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "end", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -13.6, - -36.0 - ], - "to": [ - -13.6, - -36.0 + -1.6, + -12.0 ], "units": { "type": "Inches" @@ -14124,13 +2532,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -18.4, - -38.4 + -6.4, + -14.4 ], "tag": null, "to": [ - 18.4, - -38.4 + 6.4, + -14.4 ], "type": "ToPoint", "units": { @@ -14143,13 +2551,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 18.4, - -38.4 + 6.4, + -14.4 ], "tag": null, "to": [ - 18.4, - 38.4 + 6.4, + 14.4 ], "type": "ToPoint", "units": { @@ -14162,13 +2570,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 18.4, - 38.4 + 6.4, + 14.4 ], "tag": null, "to": [ - -18.4, - 38.4 + -6.4, + 14.4 ], "type": "ToPoint", "units": { @@ -14181,13 +2589,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -18.4, - 38.4 + -6.4, + 14.4 ], "tag": null, "to": [ - -18.4, - -38.4 + -6.4, + -14.4 ], "type": "ToPoint", "units": { @@ -14259,13 +2667,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -14278,13 +2686,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -14297,13 +2705,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -14316,13 +2724,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -14361,12 +2769,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "units": { "type": "Inches" @@ -14396,12 +2804,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -18.4, - -38.4 + -6.4, + -14.4 ], "to": [ - -18.4, - -38.4 + -6.4, + -14.4 ], "units": { "type": "Inches" @@ -14435,14 +2843,14 @@ description: Variables in memory after executing lego.kcl }, "totalLength": { "type": "Number", - "value": 79.8, + "value": 31.8, "ty": { "type": "Unknown" } }, "totalWidth": { "type": "Number", - "value": 39.8, + "value": 15.8, "ty": { "type": "Unknown" } @@ -14476,18 +2884,18 @@ description: Variables in memory after executing lego.kcl }, "ccw": true, "center": [ - -12.0, - -32.0 + -0.0, + -8.0 ], "from": [ - -9.6, - -32.0 + 2.4, + -8.0 ], "radius": 2.4, "tag": null, "to": [ - -9.6, - -32.0 + 2.4, + -8.0 ], "type": "Circle", "units": { @@ -14559,13 +2967,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -18.4, - -38.4 + -6.4, + -14.4 ], "tag": null, "to": [ - 18.4, - -38.4 + 6.4, + -14.4 ], "type": "ToPoint", "units": { @@ -14578,13 +2986,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 18.4, - -38.4 + 6.4, + -14.4 ], "tag": null, "to": [ - 18.4, - 38.4 + 6.4, + 14.4 ], "type": "ToPoint", "units": { @@ -14597,13 +3005,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 18.4, - 38.4 + 6.4, + 14.4 ], "tag": null, "to": [ - -18.4, - 38.4 + -6.4, + 14.4 ], "type": "ToPoint", "units": { @@ -14616,13 +3024,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -18.4, - 38.4 + -6.4, + 14.4 ], "tag": null, "to": [ - -18.4, - -38.4 + -6.4, + -14.4 ], "type": "ToPoint", "units": { @@ -14694,13 +3102,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -14713,13 +3121,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -14732,13 +3140,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -14751,13 +3159,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -14796,12 +3204,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "units": { "type": "Inches" @@ -14831,12 +3239,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -18.4, - -38.4 + -6.4, + -14.4 ], "to": [ - -18.4, - -38.4 + -6.4, + -14.4 ], "units": { "type": "Inches" @@ -14866,12 +3274,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -9.6, - -32.0 + 2.4, + -8.0 ], "to": [ - -9.6, - -32.0 + 2.4, + -8.0 ], "units": { "type": "Inches" @@ -14922,18 +3330,18 @@ description: Variables in memory after executing lego.kcl }, "ccw": true, "center": [ - -12.0, - -32.0 + -0.0, + -8.0 ], "from": [ - -9.6, - -32.0 + 2.4, + -8.0 ], "radius": 2.4, "tag": null, "to": [ - -9.6, - -32.0 + 2.4, + -8.0 ], "type": "Circle", "units": { @@ -15005,13 +3413,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -18.4, - -38.4 + -6.4, + -14.4 ], "tag": null, "to": [ - 18.4, - -38.4 + 6.4, + -14.4 ], "type": "ToPoint", "units": { @@ -15024,13 +3432,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 18.4, - -38.4 + 6.4, + -14.4 ], "tag": null, "to": [ - 18.4, - 38.4 + 6.4, + 14.4 ], "type": "ToPoint", "units": { @@ -15043,13 +3451,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 18.4, - 38.4 + 6.4, + 14.4 ], "tag": null, "to": [ - -18.4, - 38.4 + -6.4, + 14.4 ], "type": "ToPoint", "units": { @@ -15062,13 +3470,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -18.4, - 38.4 + -6.4, + 14.4 ], "tag": null, "to": [ - -18.4, - -38.4 + -6.4, + -14.4 ], "type": "ToPoint", "units": { @@ -15140,13 +3548,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -15159,13 +3567,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -15178,13 +3586,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -15197,13 +3605,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -15242,12 +3650,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "units": { "type": "Inches" @@ -15277,12 +3685,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -18.4, - -38.4 + -6.4, + -14.4 ], "to": [ - -18.4, - -38.4 + -6.4, + -14.4 ], "units": { "type": "Inches" @@ -15312,12 +3720,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -9.6, - -32.0 + 2.4, + -8.0 ], "to": [ - -9.6, - -32.0 + 2.4, + -8.0 ], "units": { "type": "Inches" @@ -15368,18 +3776,18 @@ description: Variables in memory after executing lego.kcl }, "ccw": true, "center": [ - -12.0, - -32.0 + -0.0, + -8.0 ], "from": [ - -9.6, - -32.0 + 2.4, + -8.0 ], "radius": 2.4, "tag": null, "to": [ - -9.6, - -32.0 + 2.4, + -8.0 ], "type": "Circle", "units": { @@ -15451,13 +3859,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -18.4, - -38.4 + -6.4, + -14.4 ], "tag": null, "to": [ - 18.4, - -38.4 + 6.4, + -14.4 ], "type": "ToPoint", "units": { @@ -15470,13 +3878,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 18.4, - -38.4 + 6.4, + -14.4 ], "tag": null, "to": [ - 18.4, - 38.4 + 6.4, + 14.4 ], "type": "ToPoint", "units": { @@ -15489,13 +3897,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 18.4, - 38.4 + 6.4, + 14.4 ], "tag": null, "to": [ - -18.4, - 38.4 + -6.4, + 14.4 ], "type": "ToPoint", "units": { @@ -15508,13 +3916,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -18.4, - 38.4 + -6.4, + 14.4 ], "tag": null, "to": [ - -18.4, - -38.4 + -6.4, + -14.4 ], "type": "ToPoint", "units": { @@ -15586,13 +3994,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -15605,13 +4013,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - -39.9 + 7.9, + -15.9 ], "tag": null, "to": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -15624,13 +4032,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - 19.9, - 39.9 + 7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "type": "ToPoint", "units": { @@ -15643,13 +4051,13 @@ description: Variables in memory after executing lego.kcl "sourceRange": [] }, "from": [ - -19.9, - 39.9 + -7.9, + 15.9 ], "tag": null, "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "type": "ToPoint", "units": { @@ -15688,12 +4096,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "to": [ - -19.9, - -39.9 + -7.9, + -15.9 ], "units": { "type": "Inches" @@ -15723,12 +4131,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -18.4, - -38.4 + -6.4, + -14.4 ], "to": [ - -18.4, - -38.4 + -6.4, + -14.4 ], "units": { "type": "Inches" @@ -15758,14730 +4166,12 @@ description: Variables in memory after executing lego.kcl }, "start": { "from": [ - -9.6, - -32.0 + 2.4, + -8.0 ], "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 1.8, - "startCapId": null, - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -12.0, - -32.0 - ], - "from": [ - -9.6, - -32.0 - ], - "radius": 2.4, - "tag": null, - "to": [ - -9.6, - -32.0 - ], - "type": "Circle", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - -38.4 - ], - "tag": null, - "to": [ - 18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - 38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -18.4, - 38.4 - ], - "tag": null, - "to": [ - -18.4, - -38.4 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "start", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - -39.9 - ], - "tag": null, - "to": [ - 19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - 39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -19.9, - 39.9 - ], - "tag": null, - "to": [ - -19.9, - -39.9 - ], - "type": "ToPoint", - "units": { - "type": "Inches" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XY", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 0.0 - }, - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "zAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -19.9, - -39.9 - ], - "to": [ - -19.9, - -39.9 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": 3.2, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -18.4, - -38.4 - ], - "to": [ - -18.4, - -38.4 - ], - "units": { - "type": "Inches" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Inches" - } - }, - "height": -1.7000000000000002, - "startCapId": "[uuid]", - "endCapId": null, - "units": { - "type": "Inches" - } - }, - "units": { - "type": "Inches" - } - }, - "start": { - "from": [ - -9.6, - -32.0 - ], - "to": [ - -9.6, - -32.0 + 2.4, + -8.0 ], "units": { "type": "Inches" @@ -30510,14 +4200,14 @@ description: Variables in memory after executing lego.kcl }, "wSegments": { "type": "Number", - "value": 7.96, + "value": 7.9, "ty": { "type": "Unknown" } }, "wbumps": { "type": "Number", - "value": 5.0, + "value": 2.0, "ty": { "type": "Default", "len": { diff --git a/rust/kcl-lib/tests/kcl_samples/lego/rendered_model.png b/rust/kcl-lib/tests/kcl_samples/lego/rendered_model.png index f98afb27731816cf0aa77ecf0bc9563c8c5a319e..2ec808774b0b01785b6923af974b7a11959665f7 100644 GIT binary patch literal 88306 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%0Ag^$8B%|bdm7IZ~9@< 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 literal 115254 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[429, 508, 0]"] - 3["Segment
[429, 508, 0]"] + 2["Path
[430, 501, 0]"] + 3["Segment
[430, 501, 0]"] 4[Solid2d] end subgraph path5 [Path] - 5["Path
[568, 647, 0]"] - 6["Segment
[568, 647, 0]"] + 5["Path
[561, 632, 0]"] + 6["Segment
[561, 632, 0]"] 7[Solid2d] end - 1["Plane
[350, 369, 0]"] - 8["Sweep Revolve
[794, 845, 0]"] + 1["Plane
[351, 370, 0]"] + 8["Sweep Revolve
[779, 830, 0]"] 9[Wall] 10["Cap Start"] 11["Cap End"] diff --git a/rust/kcl-lib/tests/kcl_samples/pipe-with-bend/ast.snap b/rust/kcl-lib/tests/kcl_samples/pipe-with-bend/ast.snap index 982a2a652..525abbe4a 100644 --- a/rust/kcl-lib/tests/kcl_samples/pipe-with-bend/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/pipe-with-bend/ast.snap @@ -6,19 +6,19 @@ description: Result of parsing pipe-with-bend.kcl "Ok": { "body": [ { - "commentStart": 209, + "commentStart": 210, "declaration": { - "commentStart": 231, + "commentStart": 232, "end": 0, "id": { - "commentStart": 231, + "commentStart": 232, "end": 0, "name": "innerDiameter", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 247, + "commentStart": 248, "end": 0, "raw": "10", "start": 0, @@ -42,19 +42,19 @@ description: Result of parsing pipe-with-bend.kcl "type": "VariableDeclaration" }, { - "commentStart": 250, + "commentStart": 251, "declaration": { - "commentStart": 250, + "commentStart": 251, "end": 0, "id": { - "commentStart": 250, + "commentStart": 251, "end": 0, "name": "outerDiameter", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 266, + "commentStart": 267, "end": 0, "raw": "20", "start": 0, @@ -75,19 +75,19 @@ description: Result of parsing pipe-with-bend.kcl "type": "VariableDeclaration" }, { - "commentStart": 269, + "commentStart": 270, "declaration": { - "commentStart": 269, + "commentStart": 270, "end": 0, "id": { - "commentStart": 269, + "commentStart": 270, "end": 0, "name": "bendRadius", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 282, + "commentStart": 283, "end": 0, "raw": "30", "start": 0, @@ -108,19 +108,19 @@ description: Result of parsing pipe-with-bend.kcl "type": "VariableDeclaration" }, { - "commentStart": 285, + "commentStart": 286, "declaration": { - "commentStart": 285, + "commentStart": 286, "end": 0, "id": { - "commentStart": 285, + "commentStart": 286, "end": 0, "name": "bendAngle", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 297, + "commentStart": 298, "end": 0, "raw": "90", "start": 0, @@ -141,12 +141,12 @@ description: Result of parsing pipe-with-bend.kcl "type": "VariableDeclaration" }, { - "commentStart": 299, + "commentStart": 300, "declaration": { - "commentStart": 338, + "commentStart": 339, "end": 0, "id": { - "commentStart": 338, + "commentStart": 339, "end": 0, "name": "sketch000", "start": 0, @@ -155,7 +155,7 @@ description: Result of parsing pipe-with-bend.kcl "init": { "arguments": [ { - "commentStart": 364, + "commentStart": 365, "end": 0, "raw": "\"XZ\"", "start": 0, @@ -165,13 +165,13 @@ description: Result of parsing pipe-with-bend.kcl } ], "callee": { - "commentStart": 350, + "commentStart": 351, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, - "commentStart": 350, + "commentStart": 351, "end": 0, "start": 0, "type": "CallExpression", @@ -192,12 +192,12 @@ description: Result of parsing pipe-with-bend.kcl "type": "VariableDeclaration" }, { - "commentStart": 369, + "commentStart": 370, "declaration": { - "commentStart": 414, + "commentStart": 415, "end": 0, "id": { - "commentStart": 414, + "commentStart": 415, "end": 0, "name": "outerProfile", "start": 0, @@ -208,17 +208,17 @@ description: Result of parsing pipe-with-bend.kcl { "type": "LabeledArg", "label": { - "commentStart": 452, + "commentStart": 448, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 461, + "commentStart": 457, "elements": [ { - "commentStart": 462, + "commentStart": 458, "end": 0, "name": "bendRadius", "start": 0, @@ -226,7 +226,7 @@ description: Result of parsing pipe-with-bend.kcl "type": "Identifier" }, { - "commentStart": 474, + "commentStart": 470, "end": 0, "raw": "0", "start": 0, @@ -247,17 +247,17 @@ description: Result of parsing pipe-with-bend.kcl { "type": "LabeledArg", "label": { - "commentStart": 480, + "commentStart": 474, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 489, + "commentStart": 483, "end": 0, "left": { - "commentStart": 489, + "commentStart": 483, "end": 0, "name": "outerDiameter", "start": 0, @@ -266,7 +266,7 @@ description: Result of parsing pipe-with-bend.kcl }, "operator": "/", "right": { - "commentStart": 505, + "commentStart": 499, "end": 0, "raw": "2", "start": 0, @@ -284,19 +284,19 @@ description: Result of parsing pipe-with-bend.kcl } ], "callee": { - "commentStart": 429, + "commentStart": 430, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, - "commentStart": 429, + "commentStart": 430, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { - "commentStart": 439, + "commentStart": 437, "end": 0, "name": "sketch000", "start": 0, @@ -319,12 +319,12 @@ description: Result of parsing pipe-with-bend.kcl "type": "VariableDeclaration" }, { - "commentStart": 508, + "commentStart": 501, "declaration": { - "commentStart": 553, + "commentStart": 546, "end": 0, "id": { - "commentStart": 553, + "commentStart": 546, "end": 0, "name": "innerProfile", "start": 0, @@ -335,17 +335,17 @@ description: Result of parsing pipe-with-bend.kcl { "type": "LabeledArg", "label": { - "commentStart": 591, + "commentStart": 579, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 600, + "commentStart": 588, "elements": [ { - "commentStart": 601, + "commentStart": 589, "end": 0, "name": "bendRadius", "start": 0, @@ -353,7 +353,7 @@ description: Result of parsing pipe-with-bend.kcl "type": "Identifier" }, { - "commentStart": 613, + "commentStart": 601, "end": 0, "raw": "0", "start": 0, @@ -374,17 +374,17 @@ description: Result of parsing pipe-with-bend.kcl { "type": "LabeledArg", "label": { - "commentStart": 619, + "commentStart": 605, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 628, + "commentStart": 614, "end": 0, "left": { - "commentStart": 628, + "commentStart": 614, "end": 0, "name": "innerDiameter", "start": 0, @@ -393,7 +393,7 @@ description: Result of parsing pipe-with-bend.kcl }, "operator": "/", "right": { - "commentStart": 644, + "commentStart": 630, "end": 0, "raw": "2", "start": 0, @@ -411,19 +411,19 @@ description: Result of parsing pipe-with-bend.kcl } ], "callee": { - "commentStart": 568, + "commentStart": 561, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, - "commentStart": 568, + "commentStart": 561, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { - "commentStart": 578, + "commentStart": 568, "end": 0, "name": "sketch000", "start": 0, @@ -446,12 +446,12 @@ description: Result of parsing pipe-with-bend.kcl "type": "VariableDeclaration" }, { - "commentStart": 647, + "commentStart": 632, "declaration": { - "commentStart": 683, + "commentStart": 668, "end": 0, "id": { - "commentStart": 683, + "commentStart": 668, "end": 0, "name": "pipeProfile", "start": 0, @@ -460,7 +460,7 @@ description: Result of parsing pipe-with-bend.kcl "init": { "body": [ { - "commentStart": 697, + "commentStart": 682, "end": 0, "name": "outerProfile", "start": 0, @@ -470,7 +470,7 @@ description: Result of parsing pipe-with-bend.kcl { "arguments": [ { - "commentStart": 720, + "commentStart": 705, "end": 0, "name": "innerProfile", "start": 0, @@ -478,7 +478,7 @@ description: Result of parsing pipe-with-bend.kcl "type": "Identifier" }, { - "commentStart": 734, + "commentStart": 719, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -486,26 +486,26 @@ description: Result of parsing pipe-with-bend.kcl } ], "callee": { - "commentStart": 715, + "commentStart": 700, "end": 0, "name": "hole", "start": 0, "type": "Identifier" }, - "commentStart": 715, + "commentStart": 700, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], - "commentStart": 697, + "commentStart": 682, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { - "commentStart": 736, + "commentStart": 721, "end": 0, "start": 0, "type": "NonCodeNode", @@ -538,12 +538,12 @@ description: Result of parsing pipe-with-bend.kcl "type": "VariableDeclaration" }, { - "commentStart": 787, + "commentStart": 772, "declaration": { - "commentStart": 787, + "commentStart": 772, "end": 0, "id": { - "commentStart": 787, + "commentStart": 772, "end": 0, "name": "pipe", "start": 0, @@ -554,16 +554,16 @@ description: Result of parsing pipe-with-bend.kcl { "type": "LabeledArg", "label": { - "commentStart": 815, + "commentStart": 800, "end": 0, "name": "axis", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 822, + "commentStart": 807, "end": 0, - "raw": "\"Y\"", + "raw": "'Y'", "start": 0, "type": "Literal", "type": "Literal", @@ -573,14 +573,14 @@ description: Result of parsing pipe-with-bend.kcl { "type": "LabeledArg", "label": { - "commentStart": 827, + "commentStart": 812, "end": 0, "name": "angle", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 835, + "commentStart": 820, "end": 0, "name": "bendAngle", "start": 0, @@ -590,19 +590,19 @@ description: Result of parsing pipe-with-bend.kcl } ], "callee": { - "commentStart": 794, + "commentStart": 779, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, - "commentStart": 794, + "commentStart": 779, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { - "commentStart": 802, + "commentStart": 787, "end": 0, "name": "pipeProfile", "start": 0, @@ -627,7 +627,7 @@ description: Result of parsing pipe-with-bend.kcl "commentStart": 0, "end": 0, "name": { - "commentStart": 177, + "commentStart": 178, "end": 0, "name": "settings", "start": 0, @@ -642,10 +642,10 @@ description: Result of parsing pipe-with-bend.kcl ], "properties": [ { - "commentStart": 186, + "commentStart": 187, "end": 0, "key": { - "commentStart": 186, + "commentStart": 187, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -654,7 +654,7 @@ description: Result of parsing pipe-with-bend.kcl "start": 0, "type": "ObjectProperty", "value": { - "commentStart": 206, + "commentStart": 207, "end": 0, "name": "in", "start": 0, @@ -671,7 +671,7 @@ description: Result of parsing pipe-with-bend.kcl "nonCodeNodes": {}, "startNodes": [ { - "commentStart": 209, + "commentStart": 210, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/kcl_samples/poopy-shoe/artifact_graph_flowchart.snap.md b/rust/kcl-lib/tests/kcl_samples/poopy-shoe/artifact_graph_flowchart.snap.md index 6cc4ece12..ce8fa1cf6 100644 --- a/rust/kcl-lib/tests/kcl_samples/poopy-shoe/artifact_graph_flowchart.snap.md +++ b/rust/kcl-lib/tests/kcl_samples/poopy-shoe/artifact_graph_flowchart.snap.md @@ -1,20 +1,20 @@ ```mermaid flowchart LR subgraph path2 [Path] - 2["Path
[284, 322, 0]"] - 3["Segment
[328, 361, 0]"] - 4["Segment
[367, 424, 0]"] - 5["Segment
[430, 457, 0]"] - 6["Segment
[463, 493, 0]"] - 7["Segment
[499, 534, 0]"] - 8["Segment
[540, 632, 0]"] - 9["Segment
[638, 668, 0]"] - 10["Segment
[674, 732, 0]"] - 11["Segment
[738, 765, 0]"] - 12["Segment
[771, 793, 0]"] - 13["Segment
[799, 834, 0]"] - 14["Segment
[840, 886, 0]"] - 15["Segment
[892, 899, 0]"] + 2["Path
[286, 324, 0]"] + 3["Segment
[330, 363, 0]"] + 4["Segment
[369, 426, 0]"] + 5["Segment
[432, 459, 0]"] + 6["Segment
[465, 495, 0]"] + 7["Segment
[501, 536, 0]"] + 8["Segment
[542, 634, 0]"] + 9["Segment
[640, 670, 0]"] + 10["Segment
[676, 734, 0]"] + 11["Segment
[740, 767, 0]"] + 12["Segment
[773, 795, 0]"] + 13["Segment
[801, 836, 0]"] + 14["Segment
[842, 888, 0]"] + 15["Segment
[894, 901, 0]"] 16[Solid2d] end subgraph path60 [Path] @@ -91,8 +91,8 @@ flowchart LR 265["Segment
[4584, 4591, 0]"] 266[Solid2d] end - 1["Plane
[258, 278, 0]"] - 17["Sweep Revolve
[910, 1045, 0]"] + 1["Plane
[260, 280, 0]"] + 17["Sweep Revolve
[912, 1045, 0]"] 18[Wall] 19[Wall] 20[Wall] diff --git a/rust/kcl-lib/tests/kcl_samples/poopy-shoe/ast.snap b/rust/kcl-lib/tests/kcl_samples/poopy-shoe/ast.snap index a69c6cb54..e01f69cb2 100644 --- a/rust/kcl-lib/tests/kcl_samples/poopy-shoe/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/poopy-shoe/ast.snap @@ -6,19 +6,19 @@ description: Result of parsing poopy-shoe.kcl "Ok": { "body": [ { - "commentStart": 124, + "commentStart": 125, "declaration": { - "commentStart": 126, + "commentStart": 128, "end": 0, "id": { - "commentStart": 126, + "commentStart": 128, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 142, + "commentStart": 144, "end": 0, "raw": "0.125", "start": 0, @@ -39,19 +39,19 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { - "commentStart": 148, + "commentStart": 150, "declaration": { - "commentStart": 148, + "commentStart": 150, "end": 0, "id": { - "commentStart": 148, + "commentStart": 150, "end": 0, "name": "wallsWidth", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 161, + "commentStart": 163, "end": 0, "raw": "3", "start": 0, @@ -72,19 +72,19 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { - "commentStart": 163, + "commentStart": 165, "declaration": { - "commentStart": 163, + "commentStart": 165, "end": 0, "id": { - "commentStart": 163, + "commentStart": 165, "end": 0, "name": "height", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 172, + "commentStart": 174, "end": 0, "raw": "5.125", "start": 0, @@ -105,19 +105,19 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { - "commentStart": 178, + "commentStart": 180, "declaration": { - "commentStart": 178, + "commentStart": 180, "end": 0, "id": { - "commentStart": 178, + "commentStart": 180, "end": 0, "name": "filletRadius", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 193, + "commentStart": 195, "end": 0, "raw": "0.050", "start": 0, @@ -138,19 +138,19 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { - "commentStart": 199, + "commentStart": 201, "declaration": { - "commentStart": 199, + "commentStart": 201, "end": 0, "id": { - "commentStart": 199, + "commentStart": 201, "end": 0, "name": "backLength", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 212, + "commentStart": 214, "end": 0, "raw": "6", "start": 0, @@ -171,19 +171,19 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { - "commentStart": 214, + "commentStart": 216, "declaration": { - "commentStart": 214, + "commentStart": 216, "end": 0, "id": { - "commentStart": 214, + "commentStart": 216, "end": 0, "name": "exitHeight", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 227, + "commentStart": 229, "end": 0, "raw": "1", "start": 0, @@ -204,19 +204,19 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { - "commentStart": 229, + "commentStart": 231, "declaration": { - "commentStart": 229, + "commentStart": 231, "end": 0, "id": { - "commentStart": 229, + "commentStart": 231, "end": 0, "name": "frontLength", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 243, + "commentStart": 245, "end": 0, "raw": "7", "start": 0, @@ -237,12 +237,12 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { - "commentStart": 244, + "commentStart": 246, "declaration": { - "commentStart": 246, + "commentStart": 248, "end": 0, "id": { - "commentStart": 246, + "commentStart": 248, "end": 0, "name": "sketch001", "start": 0, @@ -253,7 +253,7 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { - "commentStart": 272, + "commentStart": 274, "end": 0, "raw": "\"-YZ\"", "start": 0, @@ -263,13 +263,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 258, + "commentStart": 260, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, - "commentStart": 258, + "commentStart": 260, "end": 0, "start": 0, "type": "CallExpression", @@ -278,13 +278,13 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { - "commentStart": 299, + "commentStart": 301, "elements": [ { - "commentStart": 300, + "commentStart": 302, "end": 0, "left": { - "commentStart": 300, + "commentStart": 302, "end": 0, "name": "wallsWidth", "start": 0, @@ -293,7 +293,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { - "commentStart": 313, + "commentStart": 315, "end": 0, "raw": "2", "start": 0, @@ -309,7 +309,7 @@ description: Result of parsing poopy-shoe.kcl "type": "BinaryExpression" }, { - "commentStart": 316, + "commentStart": 318, "end": 0, "raw": "0", "start": 0, @@ -327,7 +327,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ArrayExpression" }, { - "commentStart": 320, + "commentStart": 322, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -335,13 +335,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 284, + "commentStart": 286, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, - "commentStart": 284, + "commentStart": 286, "end": 0, "start": 0, "type": "CallExpression", @@ -352,17 +352,17 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { - "commentStart": 334, + "commentStart": 336, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 343, + "commentStart": 345, "end": 0, "left": { - "commentStart": 343, + "commentStart": 345, "end": 0, "name": "wallThickness", "start": 0, @@ -371,7 +371,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { - "commentStart": 359, + "commentStart": 361, "end": 0, "raw": "2", "start": 0, @@ -389,13 +389,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 328, + "commentStart": 330, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, - "commentStart": 328, + "commentStart": 330, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -405,14 +405,14 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { - "commentStart": 381, + "commentStart": 383, "end": 0, "properties": [ { - "commentStart": 383, + "commentStart": 385, "end": 0, "key": { - "commentStart": 383, + "commentStart": 385, "end": 0, "name": "angle", "start": 0, @@ -421,7 +421,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { - "commentStart": 391, + "commentStart": 393, "end": 0, "raw": "60", "start": 0, @@ -434,10 +434,10 @@ description: Result of parsing poopy-shoe.kcl } }, { - "commentStart": 395, + "commentStart": 397, "end": 0, "key": { - "commentStart": 395, + "commentStart": 397, "end": 0, "name": "to", "start": 0, @@ -446,7 +446,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { - "commentStart": 400, + "commentStart": 402, "end": 0, "name": "wallsWidth", "start": 0, @@ -460,14 +460,14 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectExpression" }, { - "commentStart": 414, + "commentStart": 416, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" }, { - "commentStart": 417, + "commentStart": 419, "end": 0, "start": 0, "type": "TagDeclarator", @@ -476,13 +476,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 367, + "commentStart": 369, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, - "commentStart": 367, + "commentStart": 369, "end": 0, "start": 0, "type": "CallExpression", @@ -493,14 +493,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { - "commentStart": 436, + "commentStart": 438, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 450, + "commentStart": 452, "end": 0, "name": "height", "start": 0, @@ -510,13 +510,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 430, + "commentStart": 432, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, - "commentStart": 430, + "commentStart": 432, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -528,7 +528,7 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { - "commentStart": 469, + "commentStart": 471, "end": 0, "name": "length", "start": 0, @@ -536,14 +536,14 @@ description: Result of parsing poopy-shoe.kcl }, "arg": { "argument": { - "commentStart": 479, + "commentStart": 481, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier", "type": "Identifier" }, - "commentStart": 478, + "commentStart": 480, "end": 0, "operator": "-", "start": 0, @@ -553,13 +553,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 463, + "commentStart": 465, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, - "commentStart": 463, + "commentStart": 465, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -571,7 +571,7 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { - "commentStart": 505, + "commentStart": 507, "end": 0, "name": "endAbsolute", "start": 0, @@ -580,7 +580,7 @@ description: Result of parsing poopy-shoe.kcl "arg": { "arguments": [ { - "commentStart": 527, + "commentStart": 529, "end": 0, "name": "seg01", "start": 0, @@ -589,13 +589,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 519, + "commentStart": 521, "end": 0, "name": "segEndY", "start": 0, "type": "Identifier" }, - "commentStart": 519, + "commentStart": 521, "end": 0, "start": 0, "type": "CallExpression", @@ -604,13 +604,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 499, + "commentStart": 501, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, - "commentStart": 499, + "commentStart": 501, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -620,14 +620,14 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { - "commentStart": 554, + "commentStart": 556, "end": 0, "properties": [ { - "commentStart": 563, + "commentStart": 565, "end": 0, "key": { - "commentStart": 563, + "commentStart": 565, "end": 0, "name": "angle", "start": 0, @@ -636,7 +636,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { - "commentStart": 571, + "commentStart": 573, "end": 0, "raw": "60", "start": 0, @@ -649,10 +649,10 @@ description: Result of parsing poopy-shoe.kcl } }, { - "commentStart": 582, + "commentStart": 584, "end": 0, "key": { - "commentStart": 582, + "commentStart": 584, "end": 0, "name": "to", "start": 0, @@ -661,13 +661,13 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { - "commentStart": 587, + "commentStart": 589, "end": 0, "left": { - "commentStart": 587, + "commentStart": 589, "end": 0, "left": { - "commentStart": 587, + "commentStart": 589, "end": 0, "name": "wallsWidth", "start": 0, @@ -676,7 +676,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { - "commentStart": 600, + "commentStart": 602, "end": 0, "raw": "2", "start": 0, @@ -693,10 +693,10 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "+", "right": { - "commentStart": 604, + "commentStart": 606, "end": 0, "left": { - "commentStart": 604, + "commentStart": 606, "end": 0, "name": "wallThickness", "start": 0, @@ -705,7 +705,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "/", "right": { - "commentStart": 620, + "commentStart": 622, "end": 0, "raw": "2", "start": 0, @@ -731,7 +731,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectExpression" }, { - "commentStart": 630, + "commentStart": 632, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -739,13 +739,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 540, + "commentStart": 542, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, - "commentStart": 540, + "commentStart": 542, "end": 0, "start": 0, "type": "CallExpression", @@ -756,7 +756,7 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { - "commentStart": 644, + "commentStart": 646, "end": 0, "name": "length", "start": 0, @@ -764,14 +764,14 @@ description: Result of parsing poopy-shoe.kcl }, "arg": { "argument": { - "commentStart": 654, + "commentStart": 656, "end": 0, "name": "wallThickness", "start": 0, "type": "Identifier", "type": "Identifier" }, - "commentStart": 653, + "commentStart": 655, "end": 0, "operator": "-", "start": 0, @@ -781,13 +781,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 638, + "commentStart": 640, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, - "commentStart": 638, + "commentStart": 640, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -797,14 +797,14 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { - "commentStart": 688, + "commentStart": 690, "end": 0, "properties": [ { - "commentStart": 690, + "commentStart": 692, "end": 0, "key": { - "commentStart": 690, + "commentStart": 692, "end": 0, "name": "angle", "start": 0, @@ -813,10 +813,10 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { - "commentStart": 698, + "commentStart": 700, "end": 0, "left": { - "commentStart": 698, + "commentStart": 700, "end": 0, "raw": "180", "start": 0, @@ -829,7 +829,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { - "commentStart": 704, + "commentStart": 706, "end": 0, "raw": "60", "start": 0, @@ -846,10 +846,10 @@ description: Result of parsing poopy-shoe.kcl } }, { - "commentStart": 708, + "commentStart": 710, "end": 0, "key": { - "commentStart": 708, + "commentStart": 710, "end": 0, "name": "to", "start": 0, @@ -858,7 +858,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { - "commentStart": 713, + "commentStart": 715, "end": 0, "name": "wallThickness", "start": 0, @@ -872,7 +872,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectExpression" }, { - "commentStart": 730, + "commentStart": 732, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -880,13 +880,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 674, + "commentStart": 676, "end": 0, "name": "angledLineToX", "start": 0, "type": "Identifier" }, - "commentStart": 674, + "commentStart": 676, "end": 0, "start": 0, "type": "CallExpression", @@ -897,14 +897,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { - "commentStart": 744, + "commentStart": 746, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 758, + "commentStart": 760, "end": 0, "name": "height", "start": 0, @@ -914,13 +914,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 738, + "commentStart": 740, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, - "commentStart": 738, + "commentStart": 740, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -932,14 +932,14 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { - "commentStart": 777, + "commentStart": 779, "end": 0, "name": "endAbsolute", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 791, + "commentStart": 793, "end": 0, "raw": "0", "start": 0, @@ -953,13 +953,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 771, + "commentStart": 773, "end": 0, "name": "xLine", "start": 0, "type": "Identifier" }, - "commentStart": 771, + "commentStart": 773, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -971,7 +971,7 @@ description: Result of parsing poopy-shoe.kcl { "type": "LabeledArg", "label": { - "commentStart": 805, + "commentStart": 807, "end": 0, "name": "endAbsolute", "start": 0, @@ -980,7 +980,7 @@ description: Result of parsing poopy-shoe.kcl "arg": { "arguments": [ { - "commentStart": 827, + "commentStart": 829, "end": 0, "name": "seg01", "start": 0, @@ -989,13 +989,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 819, + "commentStart": 821, "end": 0, "name": "segEndY", "start": 0, "type": "Identifier" }, - "commentStart": 819, + "commentStart": 821, "end": 0, "start": 0, "type": "CallExpression", @@ -1004,13 +1004,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 799, + "commentStart": 801, "end": 0, "name": "yLine", "start": 0, "type": "Identifier" }, - "commentStart": 799, + "commentStart": 801, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1020,14 +1020,14 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [ { - "commentStart": 854, + "commentStart": 856, "end": 0, "properties": [ { - "commentStart": 856, + "commentStart": 858, "end": 0, "key": { - "commentStart": 856, + "commentStart": 858, "end": 0, "name": "angle", "start": 0, @@ -1036,10 +1036,10 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { - "commentStart": 864, + "commentStart": 866, "end": 0, "left": { - "commentStart": 864, + "commentStart": 866, "end": 0, "raw": "180", "start": 0, @@ -1052,7 +1052,7 @@ description: Result of parsing poopy-shoe.kcl }, "operator": "-", "right": { - "commentStart": 870, + "commentStart": 872, "end": 0, "raw": "60", "start": 0, @@ -1069,10 +1069,10 @@ description: Result of parsing poopy-shoe.kcl } }, { - "commentStart": 874, + "commentStart": 876, "end": 0, "key": { - "commentStart": 874, + "commentStart": 876, "end": 0, "name": "to", "start": 0, @@ -1081,7 +1081,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { - "commentStart": 879, + "commentStart": 881, "end": 0, "raw": "0", "start": 0, @@ -1099,7 +1099,7 @@ description: Result of parsing poopy-shoe.kcl "type": "ObjectExpression" }, { - "commentStart": 884, + "commentStart": 886, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -1107,13 +1107,13 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 840, + "commentStart": 842, "end": 0, "name": "angledLineToY", "start": 0, "type": "Identifier" }, - "commentStart": 840, + "commentStart": 842, "end": 0, "start": 0, "type": "CallExpression", @@ -1122,20 +1122,20 @@ description: Result of parsing poopy-shoe.kcl { "arguments": [], "callee": { - "commentStart": 892, + "commentStart": 894, "end": 0, "name": "close", "start": 0, "type": "Identifier" }, - "commentStart": 892, + "commentStart": 894, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" } ], - "commentStart": 258, + "commentStart": 260, "end": 0, "start": 0, "type": "PipeExpression", @@ -1151,12 +1151,12 @@ description: Result of parsing poopy-shoe.kcl "type": "VariableDeclaration" }, { - "commentStart": 900, + "commentStart": 902, "declaration": { - "commentStart": 900, + "commentStart": 902, "end": 0, "id": { - "commentStart": 900, + "commentStart": 902, "end": 0, "name": "part001", "start": 0, @@ -1337,19 +1337,19 @@ description: Result of parsing poopy-shoe.kcl } ], "callee": { - "commentStart": 910, + "commentStart": 912, "end": 0, "name": "revolve", "start": 0, "type": "Identifier" }, - "commentStart": 910, + "commentStart": 912, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { - "commentStart": 921, + "commentStart": 920, "end": 0, "name": "sketch001", "start": 0, @@ -6508,7 +6508,7 @@ description: Result of parsing poopy-shoe.kcl "commentStart": 0, "end": 0, "name": { - "commentStart": 92, + "commentStart": 93, "end": 0, "name": "settings", "start": 0, @@ -6523,10 +6523,10 @@ description: Result of parsing poopy-shoe.kcl ], "properties": [ { - "commentStart": 101, + "commentStart": 102, "end": 0, "key": { - "commentStart": 101, + "commentStart": 102, "end": 0, "name": "defaultLengthUnit", "start": 0, @@ -6535,7 +6535,7 @@ description: Result of parsing poopy-shoe.kcl "start": 0, "type": "ObjectProperty", "value": { - "commentStart": 121, + "commentStart": 122, "end": 0, "name": "in", "start": 0, @@ -6552,7 +6552,7 @@ description: Result of parsing poopy-shoe.kcl "nonCodeNodes": { "6": [ { - "commentStart": 244, + "commentStart": 246, "end": 0, "start": 0, "type": "NonCodeNode", @@ -6652,7 +6652,7 @@ description: Result of parsing poopy-shoe.kcl }, "startNodes": [ { - "commentStart": 124, + "commentStart": 125, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/kcl_samples/poopy-shoe/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/poopy-shoe/program_memory.snap index 9895b3548..c6440c5d9 100644 --- a/rust/kcl-lib/tests/kcl_samples/poopy-shoe/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/poopy-shoe/program_memory.snap @@ -627,9 +627,9 @@ description: Variables in memory after executing poopy-shoe.kcl "id": "[uuid]", "sourceRange": [], "tag": { - "commentStart": 417, - "end": 423, - "start": 417, + "commentStart": 419, + "end": 425, + "start": 419, "type": "TagDeclarator", "value": "seg01" }, @@ -746,9 +746,9 @@ description: Variables in memory after executing poopy-shoe.kcl 0.0 ], "tag": { - "commentStart": 417, - "end": 423, - "start": 417, + "commentStart": 419, + "end": 425, + "start": 419, "type": "TagDeclarator", "value": "seg01" }, @@ -1093,9 +1093,9 @@ description: Variables in memory after executing poopy-shoe.kcl 0.0 ], "tag": { - "commentStart": 417, - "end": 423, - "start": 417, + "commentStart": 419, + "end": 425, + "start": 419, "type": "TagDeclarator", "value": "seg01" }, diff --git a/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/artifact_commands.snap b/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/artifact_commands.snap index 5b4c5f194..267e44d0c 100644 --- a/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/artifact_commands.snap +++ b/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/artifact_commands.snap @@ -168,7 +168,7 @@ description: Artifact commands socket-head-cap-screw.kcl "command": { "type": "extrude", "target": "[uuid]", - "distance": 0.19, + "distance": -0.19, "faces": null } }, @@ -216,6 +216,40 @@ description: Artifact commands socket-head-cap-screw.kcl "face_id": "[uuid]" } }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.02, + "tolerance": 0.0000001, + "cut_type": "fillet" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.02, + "tolerance": 0.0000001, + "cut_type": "fillet" + } + }, { "cmdId": "[uuid]", "range": [], @@ -243,7 +277,7 @@ description: Artifact commands socket-head-cap-screw.kcl "path": "[uuid]", "to": { "x": 0.078125, - "y": 0.0, + "y": 0.04510548978043951, "z": 0.0 } } @@ -264,8 +298,8 @@ description: Artifact commands socket-head-cap-screw.kcl "segment": { "type": "line", "end": { - "x": 0.0, - "y": -0.0451, + "x": -0.0, + "y": -0.0902, "z": 0.0 }, "relative": true @@ -340,23 +374,6 @@ description: Artifact commands socket-head-cap-screw.kcl } } }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.0781, - "y": -0.0451, - "z": 0.0 - }, - "relative": true - } - } - }, { "cmdId": "[uuid]", "range": [], @@ -531,26 +548,6 @@ description: Artifact commands socket-head-cap-screw.kcl "face_id": "[uuid]" } }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, { "cmdId": "[uuid]", "range": [], @@ -688,5 +685,44 @@ description: Artifact commands socket-head-cap-screw.kcl "edge_id": "[uuid]", "face_id": "[uuid]" } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.3019608, + "g": 0.8156863, + "b": 0.2627451, + "a": 100.0 + }, + "metalness": 0.9, + "roughness": 0.9, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.02, + "tolerance": 0.0000001, + "cut_type": "fillet" + } } ] diff --git a/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/artifact_graph_flowchart.snap.md b/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/artifact_graph_flowchart.snap.md index e68173b37..bcc007d15 100644 --- a/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/artifact_graph_flowchart.snap.md +++ b/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/artifact_graph_flowchart.snap.md @@ -1,35 +1,35 @@ ```mermaid flowchart LR subgraph path2 [Path] - 2["Path
[984, 1077, 0]"] - 3["Segment
[984, 1077, 0]"] + 2["Path
[748, 854, 0]"] + 3["Segment
[748, 854, 0]"] 4[Solid2d] end - subgraph path11 [Path] - 11["Path
[1298, 1339, 0]"] - 12["Segment
[1347, 1381, 0]"] - 13["Segment
[1389, 1481, 0]"] - 14["Segment
[1489, 1598, 0]"] - 15["Segment
[1606, 1721, 0]"] - 16["Segment
[1729, 1844, 0]"] - 17["Segment
[1852, 1967, 0]"] - 18["Segment
[1975, 1982, 0]"] - 19[Solid2d] + subgraph path13 [Path] + 13["Path
[1094, 1181, 0]"] + 14["Segment
[1189, 1272, 0]"] + 15["Segment
[1280, 1363, 0]"] + 16["Segment
[1371, 1454, 0]"] + 17["Segment
[1462, 1544, 0]"] + 18["Segment
[1552, 1634, 0]"] + 19["Segment
[1642, 1649, 0]"] + 20[Solid2d] end - subgraph path43 [Path] - 43["Path
[2115, 2197, 0]"] - 44["Segment
[2115, 2197, 0]"] - 45[Solid2d] + subgraph path41 [Path] + 41["Path
[1752, 1821, 0]"] + 42["Segment
[1752, 1821, 0]"] + 43[Solid2d] end - 1["Plane
[957, 976, 0]"] - 5["Sweep Extrusion
[1128, 1176, 0]"] + 1["Plane
[721, 740, 0]"] + 5["Sweep Extrusion
[862, 895, 0]"] 6[Wall] 7["Cap Start"] 8["Cap End"] 9["SweepEdge Opposite"] 10["SweepEdge Adjacent"] - 20["Sweep Extrusion
[1998, 2052, 0]"] - 21[Wall] + 11["EdgeCut Fillet
[903, 969, 0]"] + 12["EdgeCut Fillet
[903, 969, 0]"] + 21["Sweep Extrusion
[1657, 1697, 0]"] 22[Wall] 23[Wall] 24[Wall] @@ -49,15 +49,14 @@ flowchart LR 38["SweepEdge Adjacent"] 39["SweepEdge Opposite"] 40["SweepEdge Adjacent"] - 41["SweepEdge Opposite"] - 42["SweepEdge Adjacent"] - 46["Sweep Extrusion
[2212, 2253, 0]"] - 47[Wall] - 48["Cap End"] - 49["SweepEdge Opposite"] - 50["SweepEdge Adjacent"] - 51["StartSketchOnFace
[1259, 1290, 0]"] - 52["StartSketchOnFace
[2074, 2107, 0]"] + 44["Sweep Extrusion
[1829, 1857, 0]"] + 45[Wall] + 46["Cap End"] + 47["SweepEdge Opposite"] + 48["SweepEdge Adjacent"] + 49["EdgeCut Fillet
[1865, 1924, 0]"] + 50["StartSketchOnFace
[1054, 1086, 0]"] + 51["StartSketchOnFace
[1714, 1744, 0]"] 1 --- 2 2 --- 3 2 ---- 5 @@ -65,75 +64,71 @@ flowchart LR 3 --- 6 3 --- 9 3 --- 10 + 3 --- 11 5 --- 6 5 --- 7 5 --- 8 5 --- 9 5 --- 10 - 7 --- 43 - 8 --- 11 - 11 --- 12 - 11 --- 13 - 11 --- 14 - 11 --- 15 - 11 --- 16 - 11 --- 17 - 11 --- 18 - 11 ---- 20 - 11 --- 19 - 12 --- 27 - 12 --- 41 - 12 --- 42 - 13 --- 26 - 13 --- 39 - 13 --- 40 - 14 --- 25 - 14 --- 37 - 14 --- 38 - 15 --- 24 - 15 --- 35 - 15 --- 36 - 16 --- 23 - 16 --- 33 - 16 --- 34 - 17 --- 22 - 17 --- 31 - 17 --- 32 - 18 --- 21 - 18 --- 29 - 18 --- 30 - 20 --- 21 - 20 --- 22 - 20 --- 23 - 20 --- 24 - 20 --- 25 - 20 --- 26 - 20 --- 27 - 20 --- 28 - 20 --- 29 - 20 --- 30 - 20 --- 31 - 20 --- 32 - 20 --- 33 - 20 --- 34 - 20 --- 35 - 20 --- 36 - 20 --- 37 - 20 --- 38 - 20 --- 39 - 20 --- 40 - 20 --- 41 - 20 --- 42 - 43 --- 44 - 43 ---- 46 - 43 --- 45 + 7 --- 13 + 8 --- 41 + 9 <--x 12 + 13 --- 14 + 13 --- 15 + 13 --- 16 + 13 --- 17 + 13 --- 18 + 13 --- 19 + 13 ---- 21 + 13 --- 20 + 14 --- 27 + 14 --- 39 + 14 --- 40 + 15 --- 26 + 15 --- 37 + 15 --- 38 + 16 --- 25 + 16 --- 35 + 16 --- 36 + 17 --- 24 + 17 --- 33 + 17 --- 34 + 18 --- 23 + 18 --- 31 + 18 --- 32 + 19 --- 22 + 19 --- 29 + 19 --- 30 + 21 --- 22 + 21 --- 23 + 21 --- 24 + 21 --- 25 + 21 --- 26 + 21 --- 27 + 21 --- 28 + 21 --- 29 + 21 --- 30 + 21 --- 31 + 21 --- 32 + 21 --- 33 + 21 --- 34 + 21 --- 35 + 21 --- 36 + 21 --- 37 + 21 --- 38 + 21 --- 39 + 21 --- 40 + 41 --- 42 + 41 ---- 44 + 41 --- 43 + 42 --- 45 + 42 --- 47 + 42 --- 48 + 44 --- 45 + 44 --- 46 44 --- 47 - 44 --- 49 - 44 --- 50 - 46 --- 47 - 46 --- 48 - 46 --- 49 - 46 --- 50 + 44 --- 48 + 47 <--x 49 + 7 <--x 50 8 <--x 51 - 7 <--x 52 ``` diff --git a/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/ast.snap b/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/ast.snap index caa50ed2e..de57a185c 100644 --- a/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/ast.snap @@ -6,57 +6,21 @@ description: Result of parsing socket-head-cap-screw.kcl "Ok": { "body": [ { - "commentStart": 404, + "commentStart": 428, "declaration": { - "commentStart": 426, + "commentStart": 437, "end": 0, "id": { - "commentStart": 426, + "commentStart": 437, "end": 0, - "name": "screwLength", + "name": "boltDiameter", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 440, + "commentStart": 452, "end": 0, - "raw": "1.0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "preComments": [ - "// Define constants" - ], - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 444, - "declaration": { - "commentStart": 444, - "end": 0, - "id": { - "commentStart": 444, - "end": 0, - "name": "screwDiameter", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 460, - "end": 0, - "raw": ".190", + "raw": "0.190", "start": 0, "type": "Literal", "type": "Literal", @@ -72,24 +36,89 @@ description: Result of parsing socket-head-cap-screw.kcl "kind": "const", "start": 0, "type": "VariableDeclaration", - "type": "VariableDeclaration" + "type": "VariableDeclaration", + "visibility": "export" }, { - "commentStart": 465, + "commentStart": 458, "declaration": { "commentStart": 465, "end": 0, "id": { "commentStart": 465, "end": 0, - "name": "headDiameter", + "name": "boltLength", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 480, + "commentStart": 478, "end": 0, - "raw": ".313", + "raw": "1.00", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration", + "visibility": "export" + }, + { + "commentStart": 483, + "declaration": { + "commentStart": 490, + "end": 0, + "id": { + "commentStart": 490, + "end": 0, + "name": "boltHeadLength", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 507, + "end": 0, + "name": "boltDiameter", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration", + "visibility": "export" + }, + { + "commentStart": 520, + "declaration": { + "commentStart": 527, + "end": 0, + "id": { + "commentStart": 527, + "end": 0, + "name": "boltHeadDiameter", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 546, + "end": 0, + "raw": "0.313", "start": 0, "type": "Literal", "type": "Literal", @@ -105,54 +134,26 @@ description: Result of parsing socket-head-cap-screw.kcl "kind": "const", "start": 0, "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 485, - "declaration": { - "commentStart": 485, - "end": 0, - "id": { - "commentStart": 485, - "end": 0, - "name": "headLength", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 498, - "end": 0, - "name": "screwDiameter", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, "type": "VariableDeclaration", - "type": "VariableDeclaration" + "visibility": "export" }, { - "commentStart": 512, + "commentStart": 552, "declaration": { - "commentStart": 512, + "commentStart": 559, "end": 0, "id": { - "commentStart": 512, + "commentStart": 559, "end": 0, - "name": "hexWallToWall", + "name": "boltHexDrive", "start": 0, "type": "Identifier" }, "init": { - "commentStart": 528, + "commentStart": 574, "end": 0, "left": { - "commentStart": 528, + "commentStart": 574, "end": 0, "raw": "5", "start": 0, @@ -165,7 +166,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "operator": "/", "right": { - "commentStart": 532, + "commentStart": 576, "end": 0, "raw": "32", "start": 0, @@ -187,206 +188,97 @@ description: Result of parsing socket-head-cap-screw.kcl "kind": "const", "start": 0, "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 535, - "declaration": { - "commentStart": 535, - "end": 0, - "id": { - "commentStart": 535, - "end": 0, - "name": "capRatio", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 546, - "end": 0, - "left": { - "commentStart": 546, - "end": 0, - "name": "screwDiameter", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 562, - "end": 0, - "name": "headDiameter", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, "type": "VariableDeclaration", - "type": "VariableDeclaration" + "visibility": "export" }, { - "commentStart": 575, + "commentStart": 579, "declaration": { - "commentStart": 575, + "commentStart": 586, "end": 0, "id": { - "commentStart": 575, - "end": 0, - "name": "hexRatio", - "start": 0, - "type": "Identifier" - }, - "init": { "commentStart": 586, "end": 0, + "name": "boltHexFlatLength", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 606, + "end": 0, "left": { - "commentStart": 586, + "commentStart": 606, "end": 0, - "name": "hexWallToWall", + "name": "boltHexDrive", "start": 0, "type": "Identifier", "type": "Identifier" }, "operator": "/", "right": { - "commentStart": 602, - "end": 0, - "name": "headDiameter", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 615, - "declaration": { - "commentStart": 615, - "end": 0, - "id": { - "commentStart": 615, - "end": 0, - "name": "hexWallLength", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 631, - "end": 0, - "left": { - "commentStart": 631, + "commentStart": 622, "end": 0, "left": { - "commentStart": 631, + "commentStart": 622, "end": 0, - "left": { - "commentStart": 631, - "end": 0, - "name": "hexWallToWall", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 647, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "operator": "*", - "right": { - "commentStart": 651, - "end": 0, - "raw": "1", + "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { - "value": 1.0, + "value": 2.0, "suffix": "None" } }, + "operator": "*", + "right": { + "arguments": [ + { + "arguments": [ + { + "commentStart": 640, + "end": 0, + "raw": "30", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 30.0, + "suffix": "None" + } + } + ], + "callee": { + "commentStart": 630, + "end": 0, + "name": "toRadians", + "start": 0, + "type": "Identifier" + }, + "commentStart": 630, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + } + ], + "callee": { + "commentStart": 626, + "end": 0, + "name": "cos", + "start": 0, + "type": "Identifier" + }, + "commentStart": 626, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, - "operator": "/", - "right": { - "arguments": [ - { - "arguments": [ - { - "commentStart": 669, - "end": 0, - "raw": "30", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 30.0, - "suffix": "None" - } - } - ], - "callee": { - "commentStart": 659, - "end": 0, - "name": "toRadians", - "start": 0, - "type": "Identifier" - }, - "commentStart": 659, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - } - ], - "callee": { - "commentStart": 655, - "end": 0, - "name": "cos", - "start": 0, - "type": "Identifier" - }, - "commentStart": 655, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" @@ -398,132 +290,18 @@ description: Result of parsing socket-head-cap-screw.kcl "kind": "const", "start": 0, "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 674, - "declaration": { - "commentStart": 674, - "end": 0, - "id": { - "commentStart": 674, - "end": 0, - "name": "hexStartingAngle", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 693, - "end": 0, - "raw": "210", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 210.0, - "suffix": "None" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, "type": "VariableDeclaration", - "type": "VariableDeclaration" + "visibility": "export" }, { - "commentStart": 696, + "commentStart": 645, "declaration": { - "commentStart": 727, + "commentStart": 657, "end": 0, "id": { - "commentStart": 727, + "commentStart": 657, "end": 0, - "name": "hexInteriorAngle", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 746, - "end": 0, - "raw": "120", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 120.0, - "suffix": "None" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 750, - "declaration": { - "commentStart": 750, - "end": 0, - "id": { - "commentStart": 750, - "end": 0, - "name": "hexChangeAngle", - "start": 0, - "type": "Identifier" - }, - "init": { - "commentStart": 767, - "end": 0, - "left": { - "commentStart": 767, - "end": 0, - "raw": "180", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 180.0, - "suffix": "None" - } - }, - "operator": "-", - "right": { - "commentStart": 773, - "end": 0, - "name": "hexInteriorAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 789, - "declaration": { - "commentStart": 853, - "end": 0, - "id": { - "commentStart": 853, - "end": 0, - "name": "capScrew", + "name": "bolt", "start": 0, "type": "Identifier" }, @@ -531,14 +309,14 @@ description: Result of parsing socket-head-cap-screw.kcl "body": { "body": [ { - "commentStart": 898, + "commentStart": 666, "declaration": { - "commentStart": 939, + "commentStart": 710, "end": 0, "id": { - "commentStart": 939, + "commentStart": 710, "end": 0, - "name": "screwHeadSketch", + "name": "boltHead", "start": 0, "type": "Identifier" }, @@ -547,7 +325,7 @@ description: Result of parsing socket-head-cap-screw.kcl { "arguments": [ { - "commentStart": 971, + "commentStart": 735, "end": 0, "raw": "'XZ'", "start": 0, @@ -557,13 +335,13 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { - "commentStart": 957, + "commentStart": 721, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, - "commentStart": 957, + "commentStart": 721, "end": 0, "start": 0, "type": "CallExpression", @@ -574,70 +352,38 @@ description: Result of parsing socket-head-cap-screw.kcl { "type": "LabeledArg", "label": { - "commentStart": 1001, + "commentStart": 765, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1010, + "commentStart": 774, "elements": [ { - "commentStart": 1011, - "computed": false, + "commentStart": 775, "end": 0, - "object": { - "commentStart": 1011, - "end": 0, - "name": "start", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 1017, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, + "raw": "0", "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } }, { - "commentStart": 1021, - "computed": false, + "commentStart": 778, "end": 0, - "object": { - "commentStart": 1021, - "end": 0, - "name": "start", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 1027, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - }, + "raw": "0", "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } } ], "end": 0, @@ -649,42 +395,26 @@ description: Result of parsing socket-head-cap-screw.kcl { "type": "LabeledArg", "label": { - "commentStart": 1041, + "commentStart": 791, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1050, + "commentStart": 800, "end": 0, "left": { - "commentStart": 1050, + "commentStart": 800, "end": 0, - "left": { - "commentStart": 1050, - "end": 0, - "name": "dia", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 1056, - "end": 0, - "name": "capRatio", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, + "name": "boltHeadDiameter", "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" + "type": "Identifier", + "type": "Identifier" }, "operator": "/", "right": { - "commentStart": 1067, + "commentStart": 819, "end": 0, "raw": "2", "start": 0, @@ -699,16 +429,167 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "BinaryExpression", "type": "BinaryExpression" } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 831, + "end": 0, + "name": "tag", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 837, + "end": 0, + "start": 0, + "type": "TagDeclarator", + "type": "TagDeclarator", + "value": "topEdge" + } } ], "callee": { - "commentStart": 984, + "commentStart": 748, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, - "commentStart": 984, + "commentStart": 748, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 870, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "argument": { + "commentStart": 880, + "end": 0, + "name": "boltHeadLength", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "commentStart": 879, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + } + } + ], + "callee": { + "commentStart": 862, + "end": 0, + "name": "extrude", + "start": 0, + "type": "Identifier" + }, + "commentStart": 862, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 910, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 919, + "end": 0, + "raw": "0.020", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.02, + "suffix": "None" + } + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 926, + "end": 0, + "name": "tags", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 933, + "elements": [ + { + "commentStart": 934, + "end": 0, + "name": "topEdge", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + { + "arguments": [ + { + "commentStart": 959, + "end": 0, + "name": "topEdge", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 943, + "end": 0, + "name": "getOppositeEdge", + "start": 0, + "type": "Identifier" + }, + "commentStart": 943, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + } + ], + "callee": { + "commentStart": 903, + "end": 0, + "name": "fillet", + "start": 0, + "type": "Identifier" + }, + "commentStart": 903, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -716,19 +597,19 @@ description: Result of parsing socket-head-cap-screw.kcl "unlabeled": null } ], - "commentStart": 957, + "commentStart": 721, "end": 0, "nonCodeMeta": { "nonCodeNodes": { - "1": [ + "3": [ { - "commentStart": 1079, + "commentStart": 973, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLineBlockComment", - "value": "Extrude the screw head sketch", + "value": "Define the sketch of the hex pattern on the screw head", "style": "line" } } @@ -746,6 +627,8 @@ description: Result of parsing socket-head-cap-screw.kcl "end": 0, "kind": "const", "preComments": [ + "", + "", "// Create the head of the cap screw" ], "start": 0, @@ -753,75 +636,12 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "VariableDeclaration" }, { - "commentStart": 1116, + "commentStart": 1035, "declaration": { - "commentStart": 1116, + "commentStart": 1035, "end": 0, "id": { - "commentStart": 1116, - "end": 0, - "name": "screwHead", - "start": 0, - "type": "Identifier" - }, - "init": { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 1153, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 1162, - "end": 0, - "name": "capHeadLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "callee": { - "commentStart": 1128, - "end": 0, - "name": "extrude", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1128, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": { - "commentStart": 1136, - "end": 0, - "name": "screwHeadSketch", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 1178, - "declaration": { - "commentStart": 1240, - "end": 0, - "id": { - "commentStart": 1240, + "commentStart": 1035, "end": 0, "name": "hexPatternSketch", "start": 0, @@ -832,31 +652,31 @@ description: Result of parsing socket-head-cap-screw.kcl { "arguments": [ { - "commentStart": 1273, + "commentStart": 1068, "end": 0, - "name": "screwHead", + "name": "boltHead", "start": 0, "type": "Identifier", "type": "Identifier" }, { - "commentStart": 1284, + "commentStart": 1078, "end": 0, - "raw": "'end'", + "raw": "'start'", "start": 0, "type": "Literal", "type": "Literal", - "value": "end" + "value": "start" } ], "callee": { - "commentStart": 1259, + "commentStart": 1054, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, - "commentStart": 1259, + "commentStart": 1054, "end": 0, "start": 0, "type": "CallExpression", @@ -865,22 +685,22 @@ description: Result of parsing socket-head-cap-screw.kcl { "arguments": [ { - "commentStart": 1313, + "commentStart": 1109, "elements": [ { - "commentStart": 1314, + "commentStart": 1120, "end": 0, "left": { - "commentStart": 1314, + "commentStart": 1120, "end": 0, - "name": "hexWallToWall", + "name": "boltHexDrive", "start": 0, "type": "Identifier", "type": "Identifier" }, "operator": "/", "right": { - "commentStart": 1330, + "commentStart": 1135, "end": 0, "raw": "2", "start": 0, @@ -896,16 +716,32 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "BinaryExpression" }, { - "commentStart": 1333, + "commentStart": 1147, "end": 0, - "raw": "0", + "left": { + "commentStart": 1147, + "end": 0, + "name": "boltHexFlatLength", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "/", + "right": { + "commentStart": 1167, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } + "type": "BinaryExpression", + "type": "BinaryExpression" } ], "end": 0, @@ -914,7 +750,7 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "ArrayExpression" }, { - "commentStart": 1337, + "commentStart": 1179, "end": 0, "start": 0, "type": "PipeSubstitution", @@ -922,13 +758,418 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { - "commentStart": 1298, + "commentStart": 1094, "end": 0, "name": "startProfileAt", "start": 0, "type": "Identifier" }, - "commentStart": 1298, + "commentStart": 1094, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 1200, + "end": 0, + "properties": [ + { + "commentStart": 1211, + "end": 0, + "key": { + "commentStart": 1211, + "end": 0, + "name": "angle", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 1219, + "end": 0, + "raw": "270", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 270.0, + "suffix": "None" + } + } + }, + { + "commentStart": 1233, + "end": 0, + "key": { + "commentStart": 1233, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 1242, + "end": 0, + "name": "boltHexFlatLength", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 1270, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 1189, + "end": 0, + "name": "angledLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1189, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 1291, + "end": 0, + "properties": [ + { + "commentStart": 1302, + "end": 0, + "key": { + "commentStart": 1302, + "end": 0, + "name": "angle", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 1310, + "end": 0, + "raw": "210", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 210.0, + "suffix": "None" + } + } + }, + { + "commentStart": 1324, + "end": 0, + "key": { + "commentStart": 1324, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 1333, + "end": 0, + "name": "boltHexFlatLength", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 1361, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 1280, + "end": 0, + "name": "angledLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1280, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 1382, + "end": 0, + "properties": [ + { + "commentStart": 1393, + "end": 0, + "key": { + "commentStart": 1393, + "end": 0, + "name": "angle", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 1401, + "end": 0, + "raw": "150", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 150.0, + "suffix": "None" + } + } + }, + { + "commentStart": 1415, + "end": 0, + "key": { + "commentStart": 1415, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 1424, + "end": 0, + "name": "boltHexFlatLength", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 1452, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 1371, + "end": 0, + "name": "angledLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1371, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 1473, + "end": 0, + "properties": [ + { + "commentStart": 1484, + "end": 0, + "key": { + "commentStart": 1484, + "end": 0, + "name": "angle", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 1492, + "end": 0, + "raw": "90", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 90.0, + "suffix": "None" + } + } + }, + { + "commentStart": 1505, + "end": 0, + "key": { + "commentStart": 1505, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 1514, + "end": 0, + "name": "boltHexFlatLength", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 1542, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 1462, + "end": 0, + "name": "angledLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1462, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "commentStart": 1563, + "end": 0, + "properties": [ + { + "commentStart": 1574, + "end": 0, + "key": { + "commentStart": 1574, + "end": 0, + "name": "angle", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 1582, + "end": 0, + "raw": "30", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 30.0, + "suffix": "None" + } + } + }, + { + "commentStart": 1595, + "end": 0, + "key": { + "commentStart": 1595, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 1604, + "end": 0, + "name": "boltHexFlatLength", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + } + ], + "start": 0, + "type": "ObjectExpression", + "type": "ObjectExpression" + }, + { + "commentStart": 1632, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" + } + ], + "callee": { + "commentStart": 1552, + "end": 0, + "name": "angledLine", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1552, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [], + "callee": { + "commentStart": 1642, + "end": 0, + "name": "close", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1642, "end": 0, "start": 0, "type": "CallExpression", @@ -939,41 +1180,41 @@ description: Result of parsing socket-head-cap-screw.kcl { "type": "LabeledArg", "label": { - "commentStart": 1353, + "commentStart": 1665, "end": 0, "name": "length", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1362, + "commentStart": 1674, "end": 0, "left": { "argument": { - "commentStart": 1363, + "commentStart": 1675, "end": 0, - "name": "hexWallLength", + "name": "boltHeadLength", "start": 0, "type": "Identifier", "type": "Identifier" }, - "commentStart": 1362, + "commentStart": 1674, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" }, - "operator": "/", + "operator": "*", "right": { - "commentStart": 1379, + "commentStart": 1692, "end": 0, - "raw": "2", + "raw": "0.75", "start": 0, "type": "Literal", "type": "Literal", "value": { - "value": 2.0, + "value": 0.75, "suffix": "None" } }, @@ -984,530 +1225,21 @@ description: Result of parsing socket-head-cap-screw.kcl } ], "callee": { - "commentStart": 1347, + "commentStart": 1657, "end": 0, - "name": "yLine", + "name": "extrude", "start": 0, "type": "Identifier" }, - "commentStart": 1347, + "commentStart": 1657, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null - }, - { - "arguments": [ - { - "commentStart": 1400, - "end": 0, - "properties": [ - { - "commentStart": 1411, - "end": 0, - "key": { - "commentStart": 1411, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1419, - "end": 0, - "name": "hexStartingAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - }, - { - "commentStart": 1446, - "end": 0, - "key": { - "commentStart": 1446, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1455, - "end": 0, - "name": "hexWallLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 1479, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 1389, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1389, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 1500, - "end": 0, - "properties": [ - { - "commentStart": 1511, - "end": 0, - "key": { - "commentStart": 1511, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1519, - "end": 0, - "left": { - "commentStart": 1519, - "end": 0, - "name": "hexStartingAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "-", - "right": { - "commentStart": 1538, - "end": 0, - "name": "hexChangeAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - }, - { - "commentStart": 1563, - "end": 0, - "key": { - "commentStart": 1563, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1572, - "end": 0, - "name": "hexWallLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 1596, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 1489, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1489, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 1617, - "end": 0, - "properties": [ - { - "commentStart": 1628, - "end": 0, - "key": { - "commentStart": 1628, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1636, - "end": 0, - "left": { - "commentStart": 1636, - "end": 0, - "name": "hexStartingAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "-", - "right": { - "commentStart": 1656, - "end": 0, - "left": { - "commentStart": 1656, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "operator": "*", - "right": { - "commentStart": 1660, - "end": 0, - "name": "hexChangeAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - }, - { - "commentStart": 1686, - "end": 0, - "key": { - "commentStart": 1686, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1695, - "end": 0, - "name": "hexWallLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 1719, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 1606, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1606, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 1740, - "end": 0, - "properties": [ - { - "commentStart": 1751, - "end": 0, - "key": { - "commentStart": 1751, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1759, - "end": 0, - "left": { - "commentStart": 1759, - "end": 0, - "name": "hexStartingAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "-", - "right": { - "commentStart": 1779, - "end": 0, - "left": { - "commentStart": 1779, - "end": 0, - "raw": "3", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 3.0, - "suffix": "None" - } - }, - "operator": "*", - "right": { - "commentStart": 1783, - "end": 0, - "name": "hexChangeAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - }, - { - "commentStart": 1809, - "end": 0, - "key": { - "commentStart": 1809, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1818, - "end": 0, - "name": "hexWallLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 1842, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 1729, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1729, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [ - { - "commentStart": 1863, - "end": 0, - "properties": [ - { - "commentStart": 1874, - "end": 0, - "key": { - "commentStart": 1874, - "end": 0, - "name": "angle", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1882, - "end": 0, - "left": { - "commentStart": 1882, - "end": 0, - "name": "hexStartingAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "-", - "right": { - "commentStart": 1902, - "end": 0, - "left": { - "commentStart": 1902, - "end": 0, - "raw": "4", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 4.0, - "suffix": "None" - } - }, - "operator": "*", - "right": { - "commentStart": 1906, - "end": 0, - "name": "hexChangeAngle", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - }, - { - "commentStart": 1932, - "end": 0, - "key": { - "commentStart": 1932, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ObjectProperty", - "value": { - "commentStart": 1941, - "end": 0, - "name": "hexWallLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "start": 0, - "type": "ObjectExpression", - "type": "ObjectExpression" - }, - { - "commentStart": 1965, - "end": 0, - "start": 0, - "type": "PipeSubstitution", - "type": "PipeSubstitution" - } - ], - "callee": { - "commentStart": 1852, - "end": 0, - "name": "angledLine", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1852, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - }, - { - "arguments": [], - "callee": { - "commentStart": 1975, - "end": 0, - "name": "close", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1975, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" } ], - "commentStart": 1259, + "commentStart": 1054, "end": 0, "start": 0, "type": "PipeExpression", @@ -1518,115 +1250,19 @@ description: Result of parsing socket-head-cap-screw.kcl }, "end": 0, "kind": "const", - "preComments": [ - "", - "", - "// Define the sketch of the hex pattern on the screw head" - ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" }, { - "commentStart": 1985, + "commentStart": 1703, "declaration": { - "commentStart": 1985, + "commentStart": 1703, "end": 0, "id": { - "commentStart": 1985, + "commentStart": 1703, "end": 0, - "name": "hexPattern", - "start": 0, - "type": "Identifier" - }, - "init": { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 2024, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 2033, - "end": 0, - "left": { - "argument": { - "commentStart": 2034, - "end": 0, - "name": "headLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "commentStart": 2033, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - }, - "operator": "*", - "right": { - "commentStart": 2047, - "end": 0, - "raw": "0.75", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.75, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - } - ], - "callee": { - "commentStart": 1998, - "end": 0, - "name": "extrude", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1998, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": { - "commentStart": 2006, - "end": 0, - "name": "hexPatternSketch", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, - { - "commentStart": 2052, - "declaration": { - "commentStart": 2056, - "end": 0, - "id": { - "commentStart": 2056, - "end": 0, - "name": "screwBodySketch", + "name": "boltBody", "start": 0, "type": "Identifier" }, @@ -1635,31 +1271,31 @@ description: Result of parsing socket-head-cap-screw.kcl { "arguments": [ { - "commentStart": 2088, + "commentStart": 1728, "end": 0, - "name": "screwHead", + "name": "boltHead", "start": 0, "type": "Identifier", "type": "Identifier" }, { - "commentStart": 2099, + "commentStart": 1738, "end": 0, - "raw": "\"start\"", + "raw": "'end'", "start": 0, "type": "Literal", "type": "Literal", - "value": "start" + "value": "end" } ], "callee": { - "commentStart": 2074, + "commentStart": 1714, "end": 0, "name": "startSketchOn", "start": 0, "type": "Identifier" }, - "commentStart": 2074, + "commentStart": 1714, "end": 0, "start": 0, "type": "CallExpression", @@ -1670,70 +1306,38 @@ description: Result of parsing socket-head-cap-screw.kcl { "type": "LabeledArg", "label": { - "commentStart": 2132, + "commentStart": 1759, "end": 0, "name": "center", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 2141, + "commentStart": 1768, "elements": [ { - "commentStart": 2142, - "computed": false, + "commentStart": 1769, "end": 0, - "object": { - "commentStart": 2142, - "end": 0, - "name": "start", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 2148, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, + "raw": "0", "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } }, { - "commentStart": 2152, - "computed": false, + "commentStart": 1772, "end": 0, - "object": { - "commentStart": 2152, - "end": 0, - "name": "start", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "property": { - "commentStart": 2158, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - }, + "raw": "0", "start": 0, - "type": "MemberExpression", - "type": "MemberExpression" + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } } ], "end": 0, @@ -1745,26 +1349,26 @@ description: Result of parsing socket-head-cap-screw.kcl { "type": "LabeledArg", "label": { - "commentStart": 2172, + "commentStart": 1776, "end": 0, "name": "radius", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 2181, + "commentStart": 1785, "end": 0, "left": { - "commentStart": 2181, + "commentStart": 1785, "end": 0, - "name": "dia", + "name": "boltDiameter", "start": 0, "type": "Identifier", "type": "Identifier" }, "operator": "/", "right": { - "commentStart": 2187, + "commentStart": 1800, "end": 0, "raw": "2", "start": 0, @@ -1779,16 +1383,231 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "BinaryExpression", "type": "BinaryExpression" } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1803, + "end": 0, + "name": "tag", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1809, + "end": 0, + "start": 0, + "type": "TagDeclarator", + "type": "TagDeclarator", + "value": "filletEdge" + } } ], "callee": { - "commentStart": 2115, + "commentStart": 1752, "end": 0, "name": "circle", "start": 0, "type": "Identifier" }, - "commentStart": 2115, + "commentStart": 1752, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 1837, + "end": 0, + "name": "length", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1846, + "end": 0, + "name": "boltLength", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + } + ], + "callee": { + "commentStart": 1829, + "end": 0, + "name": "extrude", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1829, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 1872, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1881, + "end": 0, + "raw": ".020", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.02, + "suffix": "None" + } + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1887, + "end": 0, + "name": "tags", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1894, + "elements": [ + { + "arguments": [ + { + "commentStart": 1911, + "end": 0, + "name": "filletEdge", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], + "callee": { + "commentStart": 1895, + "end": 0, + "name": "getOppositeEdge", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1895, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + } + ], + "callee": { + "commentStart": 1865, + "end": 0, + "name": "fillet", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1865, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 1943, + "end": 0, + "name": "color", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1951, + "end": 0, + "raw": "\"#4dd043\"", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": "#4dd043" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1962, + "end": 0, + "name": "metalness", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1974, + "end": 0, + "raw": "90", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 90.0, + "suffix": "None" + } + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1978, + "end": 0, + "name": "roughness", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1990, + "end": 0, + "raw": "90", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 90.0, + "suffix": "None" + } + } + } + ], + "callee": { + "commentStart": 1932, + "end": 0, + "name": "appearance", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1932, "end": 0, "start": 0, "type": "CallExpressionKw", @@ -1796,7 +1615,7 @@ description: Result of parsing socket-head-cap-screw.kcl "unlabeled": null } ], - "commentStart": 2074, + "commentStart": 1714, "end": 0, "start": 0, "type": "PipeExpression", @@ -1811,92 +1630,29 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "VariableDeclaration", "type": "VariableDeclaration" }, - { - "commentStart": 2200, - "declaration": { - "commentStart": 2200, - "end": 0, - "id": { - "commentStart": 2200, - "end": 0, - "name": "screwBody", - "start": 0, - "type": "Identifier" - }, - "init": { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 2237, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 2246, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "callee": { - "commentStart": 2212, - "end": 0, - "name": "extrude", - "start": 0, - "type": "Identifier" - }, - "commentStart": 2212, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": { - "commentStart": 2220, - "end": 0, - "name": "screwBodySketch", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - }, - "start": 0, - "type": "VariableDeclarator" - }, - "end": 0, - "kind": "const", - "start": 0, - "type": "VariableDeclaration", - "type": "VariableDeclaration" - }, { "argument": { - "commentStart": 2263, + "commentStart": 2004, "end": 0, - "name": "screwBody", + "name": "boltBody", "start": 0, "type": "Identifier", "type": "Identifier" }, - "commentStart": 2256, + "commentStart": 1993, "end": 0, "start": 0, "type": "ReturnStatement", "type": "ReturnStatement" } ], - "commentStart": 898, + "commentStart": 666, "end": 0, "nonCodeMeta": { "nonCodeNodes": { - "3": [ + "2": [ { - "commentStart": 2052, + "commentStart": 1993, "end": 0, "start": 0, "type": "NonCodeNode", @@ -1910,50 +1666,9 @@ description: Result of parsing socket-head-cap-screw.kcl }, "start": 0 }, - "commentStart": 861, + "commentStart": 662, "end": 0, - "params": [ - { - "type": "Parameter", - "identifier": { - "commentStart": 862, - "end": 0, - "name": "start", - "start": 0, - "type": "Identifier" - } - }, - { - "type": "Parameter", - "identifier": { - "commentStart": 869, - "end": 0, - "name": "length", - "start": 0, - "type": "Identifier" - } - }, - { - "type": "Parameter", - "identifier": { - "commentStart": 877, - "end": 0, - "name": "dia", - "start": 0, - "type": "Identifier" - } - }, - { - "type": "Parameter", - "identifier": { - "commentStart": 882, - "end": 0, - "name": "capHeadLength", - "start": 0, - "type": "Identifier" - } - } - ], + "params": [], "start": 0, "type": "FunctionExpression", "type": "FunctionExpression" @@ -1963,86 +1678,24 @@ description: Result of parsing socket-head-cap-screw.kcl }, "end": 0, "kind": "fn", - "preComments": [ - "", - "", - "// Write a function that defines the Socket Head Cap Screw" - ], "start": 0, "type": "VariableDeclaration", - "type": "VariableDeclaration" + "type": "VariableDeclaration", + "visibility": "export" }, { - "commentStart": 2274, + "commentStart": 2014, "end": 0, "expression": { - "arguments": [ - { - "commentStart": 2285, - "elements": [ - { - "commentStart": 2286, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "commentStart": 2289, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - }, - { - "commentStart": 2293, - "end": 0, - "name": "screwLength", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - { - "commentStart": 2306, - "end": 0, - "name": "screwDiameter", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - { - "commentStart": 2321, - "end": 0, - "name": "screwDiameter", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - ], + "arguments": [], "callee": { - "commentStart": 2276, + "commentStart": 2016, "end": 0, - "name": "capScrew", + "name": "bolt", "start": 0, "type": "Identifier" }, - "commentStart": 2276, + "commentStart": 2016, "end": 0, "start": 0, "type": "CallExpression", @@ -2071,7 +1724,7 @@ description: Result of parsing socket-head-cap-screw.kcl "// This is for a #10-24 screw that is 1.00 inches long. A socket head cap screw is a type of fastener that is widely used in a variety of applications requiring a high strength fastening solution. It is characterized by its cylindrical head and internal hexagonal drive, which allows for tightening with an Allen wrench or hex key.", "", "", - "// Set units" + "// set units" ], "properties": [ { @@ -2094,6 +1747,27 @@ description: Result of parsing socket-head-cap-screw.kcl "type": "Identifier", "type": "Identifier" } + }, + { + "commentStart": 405, + "end": 0, + "key": { + "commentStart": 405, + "end": 0, + "name": "defaultAngleUnit", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "commentStart": 424, + "end": 0, + "name": "deg", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } } ], "start": 0, @@ -2102,22 +1776,20 @@ description: Result of parsing socket-head-cap-screw.kcl ], "nonCodeMeta": { "nonCodeNodes": { - "8": [ + "5": [ { - "commentStart": 696, + "commentStart": 645, "end": 0, "start": 0, "type": "NonCodeNode", "value": { - "type": "inlineComment", - "value": "first angle of hex pattern", - "style": "line" + "type": "newLine" } } ], - "11": [ + "6": [ { - "commentStart": 2274, + "commentStart": 2014, "end": 0, "start": 0, "type": "NonCodeNode", @@ -2129,7 +1801,7 @@ description: Result of parsing socket-head-cap-screw.kcl }, "startNodes": [ { - "commentStart": 404, + "commentStart": 428, "end": 0, "start": 0, "type": "NonCodeNode", diff --git a/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/ops.snap b/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/ops.snap index 8de7e9593..249992f22 100644 --- a/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/ops.snap +++ b/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/ops.snap @@ -20,10 +20,10 @@ description: Operations executed socket-head-cap-screw.kcl }, { "type": "UserDefinedFunctionCall", - "name": "capScrew", + "name": "bolt", "functionSourceRange": [ - 861, - 2274, + 662, + 2014, 0 ], "unlabeledArg": null, @@ -50,7 +50,7 @@ description: Operations executed socket-head-cap-screw.kcl "length": { "value": { "type": "Number", - "value": 0.19, + "value": -0.19, "ty": { "type": "Default", "len": { @@ -77,6 +77,55 @@ description: Operations executed socket-head-cap-screw.kcl "sourceRange": [] } }, + { + "labeledArgs": { + "radius": { + "value": { + "type": "Number", + "value": 0.02, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "tags": { + "value": { + "type": "Array", + "value": [ + { + "type": "TagIdentifier", + "value": "topEdge", + "artifact_id": "[uuid]" + }, + { + "type": "Uuid", + "value": "[uuid]" + } + ] + }, + "sourceRange": [] + } + }, + "name": "fillet", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, { "labeledArgs": { "data": { @@ -91,7 +140,7 @@ description: Operations executed socket-head-cap-screw.kcl "tag": { "value": { "type": "String", - "value": "end" + "value": "start" }, "sourceRange": [] } @@ -141,7 +190,7 @@ description: Operations executed socket-head-cap-screw.kcl "tag": { "value": { "type": "String", - "value": "start" + "value": "end" }, "sourceRange": [] } @@ -183,6 +232,50 @@ description: Operations executed socket-head-cap-screw.kcl "sourceRange": [] } }, + { + "labeledArgs": { + "radius": { + "value": { + "type": "Number", + "value": 0.02, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "tags": { + "value": { + "type": "Array", + "value": [ + { + "type": "Uuid", + "value": "[uuid]" + } + ] + }, + "sourceRange": [] + } + }, + "name": "fillet", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, { "type": "UserDefinedFunctionReturn" } diff --git a/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/program_memory.snap index 318ec10de..55bd54843 100644 --- a/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/program_memory.snap @@ -3,17 +3,23 @@ source: kcl-lib/src/simulation_tests.rs description: Variables in memory after executing socket-head-cap-screw.kcl --- { - "capRatio": { - "type": "Number", - "value": 0.607, - "ty": { - "type": "Unknown" - } - }, - "capScrew": { + "bolt": { "type": "Function" }, - "headDiameter": { + "boltDiameter": { + "type": "Number", + "value": 0.19, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "boltHeadDiameter": { "type": "Number", "value": 0.313, "ty": { @@ -26,7 +32,7 @@ description: Variables in memory after executing socket-head-cap-screw.kcl } } }, - "headLength": { + "boltHeadLength": { "type": "Number", "value": 0.19, "ty": { @@ -39,80 +45,21 @@ description: Variables in memory after executing socket-head-cap-screw.kcl } } }, - "hexChangeAngle": { - "type": "Number", - "value": 60.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "hexInteriorAngle": { - "type": "Number", - "value": 120.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "hexRatio": { - "type": "Number", - "value": 0.4992, - "ty": { - "type": "Unknown" - } - }, - "hexStartingAngle": { - "type": "Number", - "value": 210.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "hexWallLength": { - "type": "Number", - "value": 0.0902, - "ty": { - "type": "Unknown" - } - }, - "hexWallToWall": { + "boltHexDrive": { "type": "Number", "value": 0.1563, "ty": { "type": "Unknown" } }, - "screwDiameter": { + "boltHexFlatLength": { "type": "Number", - "value": 0.19, + "value": 0.0902, "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } + "type": "Unknown" } }, - "screwLength": { + "boltLength": { "type": "Number", "value": 1.0, "ty": { diff --git a/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/rendered_model.png b/rust/kcl-lib/tests/kcl_samples/socket-head-cap-screw/rendered_model.png index b8ae71d394c6a8d4d51afa6f1fe742bf573bd337..ce62db044b0c59b29b1ee0e886419b22fadc538b 100644 GIT binary patch literal 65726 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

_6 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 A;Q#;t literal 62428 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�IG0ct?r;kGXaEEDO;k)kzinyo3Mv&0`n`# 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 diff --git a/rust/kcl-lib/tests/kcl_samples/walkie-talkie/artifact_commands.snap b/rust/kcl-lib/tests/kcl_samples/walkie-talkie/artifact_commands.snap index e8f4bdfb4..e2eb2891c 100644 --- a/rust/kcl-lib/tests/kcl_samples/walkie-talkie/artifact_commands.snap +++ b/rust/kcl-lib/tests/kcl_samples/walkie-talkie/artifact_commands.snap @@ -45,14 +45,6 @@ description: Artifact commands walkie-talkie.kcl "unit": "in" } }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "set_scene_units", - "unit": "in" - } - }, { "cmdId": "[uuid]", "range": [], @@ -1252,14 +1244,6 @@ description: Artifact commands walkie-talkie.kcl "ambient_occlusion": 0.0 } }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "set_scene_units", - "unit": "in" - } - }, { "cmdId": "[uuid]", "range": [], @@ -1267,7 +1251,7 @@ description: Artifact commands walkie-talkie.kcl "type": "make_plane", "origin": { "x": 0.0, - "y": -1.0, + "y": 0.0, "z": 0.0 }, "x_axis": { @@ -1277,28 +1261,116 @@ description: Artifact commands walkie-talkie.kcl }, "y_axis": { "x": 0.0, - "y": 0.0, - "z": 1.0 + "y": 1.0, + "z": 0.0 }, - "size": 100.0, + "size": 60.0, "clobber": false, - "hide": false + "hide": true } }, { "cmdId": "[uuid]", "range": [], "command": { - "type": "plane_set_color", - "plane_id": "[uuid]", - "color": { - "r": 0.6, - "g": 0.6, - "b": 0.6, - "a": 0.3 + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": 0.0, + "z": 1.0 } } }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.5, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.0, + "y": -0.25, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.5, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, { "cmdId": "[uuid]", "range": [], @@ -1306,8 +1378,8 @@ description: Artifact commands walkie-talkie.kcl "type": "make_plane", "origin": { "x": 0.0, - "y": -1.0, - "z": 0.0 + "y": 0.0, + "z": 3.0 }, "x_axis": { "x": 1.0, @@ -1316,8 +1388,8 @@ description: Artifact commands walkie-talkie.kcl }, "y_axis": { "x": 0.0, - "y": 0.0, - "z": 1.0 + "y": 1.0, + "z": 0.0 }, "size": 100.0, "clobber": false, @@ -1349,8 +1421,8 @@ description: Artifact commands walkie-talkie.kcl "adjust_camera": false, "planar_normal": { "x": 0.0, - "y": -1.0, - "z": 0.0 + "y": 0.0, + "z": 1.0 } } }, @@ -1368,8 +1440,8 @@ description: Artifact commands walkie-talkie.kcl "type": "move_path_pen", "path": "[uuid]", "to": { - "x": -1.115, - "y": 1.627270292269908, + "x": 0.1, + "y": 0.1, "z": 0.0 } } @@ -1390,11 +1462,11 @@ description: Artifact commands walkie-talkie.kcl "segment": { "type": "line", "end": { - "x": -0.8773, - "y": 1.865, + "x": 0.3, + "y": 0.0, "z": 0.0 }, - "relative": false + "relative": true } } }, @@ -1407,11 +1479,11 @@ description: Artifact commands walkie-talkie.kcl "segment": { "type": "line", "end": { - "x": 0.8773, - "y": 1.865, + "x": 0.0, + "y": -0.05, "z": 0.0 }, - "relative": false + "relative": true } } }, @@ -1424,79 +1496,11 @@ description: Artifact commands walkie-talkie.kcl "segment": { "type": "line", "end": { - "x": 1.115, - "y": 1.6273, + "x": -0.3, + "y": 0.0, "z": 0.0 }, - "relative": false - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 1.115, - "y": -1.6273, - "z": 0.0 - }, - "relative": false - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.8773, - "y": -1.865, - "z": 0.0 - }, - "relative": false - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": -0.8773, - "y": -1.865, - "z": 0.0 - }, - "relative": false - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": -1.115, - "y": -1.6273, - "z": 0.0 - }, - "relative": false + "relative": true } } }, @@ -1508,6 +1512,184 @@ description: Artifact commands walkie-talkie.kcl "path_id": "[uuid]" } }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "loft", + "section_ids": [ + "[uuid]", + "[uuid]" + ], + "v_degree": 2, + "bez_approximate_rational": false, + "base_curve_index": null, + "tolerance": 0.0000001 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 0.0, + "g": 0.0, + "b": 0.0, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": { + "property": { + "x": -0.8, + "y": -0.1, + "z": 2.0 + }, + "set": false, + "is_local": true + }, + "rotate_rpy": null, + "rotate_angle_axis": null, + "scale": null + } + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, { "cmdId": "[uuid]", "range": [], @@ -1631,18 +1813,25 @@ description: Artifact commands walkie-talkie.kcl "cmdId": "[uuid]", "range": [], "command": { - "type": "solid2d_add_hole", - "object_id": "[uuid]", - "hole_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "size": 60.0, + "clobber": false, + "hide": true } }, { @@ -1675,8 +1864,8 @@ description: Artifact commands walkie-talkie.kcl "type": "move_path_pen", "path": "[uuid]", "to": { - "x": -0.75, - "y": -0.125, + "x": -0.775, + "y": 0.0, "z": 0.0 } } @@ -6019,6 +6208,201 @@ description: Artifact commands walkie-talkie.kcl ] } }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": -1.115, + "y": 1.627270292269908, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.8773, + "y": 1.865, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.8773, + "y": 1.865, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 1.115, + "y": 1.6273, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 1.115, + "y": -1.6273, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.8773, + "y": -1.865, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.8773, + "y": -1.865, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -1.115, + "y": -1.6273, + "z": 0.0 + }, + "relative": false + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, { "cmdId": "[uuid]", "range": [], @@ -8593,6 +8977,49 @@ description: Artifact commands walkie-talkie.kcl "hidden": true } }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid2d_add_hole", + "object_id": "[uuid]", + "hole_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_visible", + "object_id": "[uuid]", + "hidden": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, { "cmdId": "[uuid]", "range": [], @@ -8917,6 +9344,31 @@ description: Artifact commands walkie-talkie.kcl "hidden": true } }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, { "cmdId": "[uuid]", "range": [], @@ -9053,6 +9505,31 @@ description: Artifact commands walkie-talkie.kcl "hidden": true } }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, { "cmdId": "[uuid]", "range": [], @@ -9189,6 +9666,31 @@ description: Artifact commands walkie-talkie.kcl "hidden": true } }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, { "cmdId": "[uuid]", "range": [], @@ -9325,6 +9827,31 @@ description: Artifact commands walkie-talkie.kcl "hidden": true } }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, { "cmdId": "[uuid]", "range": [], @@ -21852,80 +22379,24 @@ description: Artifact commands walkie-talkie.kcl "cmdId": "[uuid]", "range": [], "command": { - "type": "object_visible", + "type": "set_object_transform", "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "set_scene_units", - "unit": "in" + "transforms": [ + { + "translate": { + "property": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + }, + "set": false, + "is_local": true + }, + "rotate_rpy": null, + "rotate_angle_axis": null, + "scale": null + } + ] } }, { @@ -21936,1663 +22407,8 @@ description: Artifact commands walkie-talkie.kcl "origin": { "x": 0.0, "y": 0.0, - "z": 2.0 - }, - "x_axis": { - "x": 1.0, - "y": 0.0, "z": 0.0 }, - "y_axis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "size": 60.0, - "clobber": false, - "hide": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "start_path" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "move_path_pen", - "path": "[uuid]", - "to": { - "x": -0.8, - "y": -0.1, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.5, - "y": 0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.0, - "y": -0.25, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": -0.5, - "y": 0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "close_path", - "path_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "make_plane", - "origin": { - "x": 0.0, - "y": 0.0, - "z": 4.0 - }, - "x_axis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "y_axis": { - "x": 0.0, - "y": 1.0, - "z": 0.0 - }, - "size": 100.0, - "clobber": false, - "hide": false - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "plane_set_color", - "plane_id": "[uuid]", - "color": { - "r": 0.6, - "g": 0.6, - "b": 0.6, - "a": 0.3 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "start_path" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "move_path_pen", - "path": "[uuid]", - "to": { - "x": -0.7000000000000001, - "y": -0.2, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.3, - "y": 0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.0, - "y": -0.05, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": -0.3, - "y": 0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "close_path", - "path_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "loft", - "section_ids": [ - "[uuid]", - "[uuid]" - ], - "v_degree": 2, - "bez_approximate_rational": false, - "base_curve_index": null, - "tolerance": 0.0000001 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 0.0, - "g": 0.0, - "b": 0.0, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "make_plane", - "origin": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "x_axis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "y_axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "size": 100.0, - "clobber": false, - "hide": false - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "plane_set_color", - "plane_id": "[uuid]", - "color": { - "r": 0.6, - "g": 0.6, - "b": 0.6, - "a": 0.3 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "start_path" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "move_path_pen", - "path": "[uuid]", - "to": { - "x": -0.895, - "y": 1.25, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": -0.15, - "y": 0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": -0.0, - "y": -0.48, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.15, - "y": 0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "close_path", - "path_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 0.04, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 1.0, - "g": 0.0, - "b": 0.0, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "make_plane", - "origin": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "x_axis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "y_axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "size": 100.0, - "clobber": false, - "hide": false - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "plane_set_color", - "plane_id": "[uuid]", - "color": { - "r": 0.6, - "g": 0.6, - "b": 0.6, - "a": 0.3 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "start_path" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "move_path_pen", - "path": "[uuid]", - "to": { - "x": -0.895, - "y": 0.75, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": -0.15, - "y": 0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": -0.0, - "y": -0.48, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.15, - "y": 0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "close_path", - "path_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 0.04, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 1.0, - "g": 0.0, - "b": 0.0, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "make_plane", - "origin": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "x_axis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "y_axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "size": 100.0, - "clobber": false, - "hide": false - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "plane_set_color", - "plane_id": "[uuid]", - "color": { - "r": 0.6, - "g": 0.6, - "b": 0.6, - "a": 0.3 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "start_path" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "move_path_pen", - "path": "[uuid]", - "to": { - "x": 0.895, - "y": 0.25, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.15, - "y": -0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.0, - "y": 0.48, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": -0.15, - "y": 0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "close_path", - "path_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 0.04, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 1.0, - "g": 0.0, - "b": 0.0, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "make_plane", - "origin": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "x_axis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "y_axis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "size": 100.0, - "clobber": false, - "hide": false - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "plane_set_color", - "plane_id": "[uuid]", - "color": { - "r": 0.6, - "g": 0.6, - "b": 0.6, - "a": 0.3 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "start_path" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "move_path_pen", - "path": "[uuid]", - "to": { - "x": 0.895, - "y": 0.75, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.15, - "y": -0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": 0.0, - "y": 0.48, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extend_path", - "path": "[uuid]", - "segment": { - "type": "line", - "end": { - "x": -0.15, - "y": 0.0, - "z": 0.0 - }, - "relative": true - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "close_path", - "path_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "enable_sketch_mode", - "entity_id": "[uuid]", - "ortho": false, - "animated": false, - "adjust_camera": false, - "planar_normal": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - } - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "extrude", - "target": "[uuid]", - "distance": 0.04, - "faces": null - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "sketch_mode_disable" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_bring_to_front", - "object_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_extrusion_face_info", - "object_id": "[uuid]", - "edge_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_set_material_params_pbr", - "object_id": "[uuid]", - "color": { - "r": 1.0, - "g": 0.0, - "b": 0.0, - "a": 100.0 - }, - "metalness": 0.0, - "roughness": 0.0, - "ambient_occlusion": 0.0 - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "set_scene_units", - "unit": "in" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "make_plane", - "origin": { - "x": 1.25, - "y": -0.5, - "z": 0.5 - }, "x_axis": { "x": 0.0, "y": 1.0, @@ -23897,147 +22713,6 @@ description: Artifact commands walkie-talkie.kcl "ambient_occlusion": 0.0 } }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_fillet_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "radius": 0.05, - "tolerance": 0.0000001, - "cut_type": "chamfer" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_fillet_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "radius": 0.05, - "tolerance": 0.0000001, - "cut_type": "chamfer" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_fillet_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "radius": 0.05, - "tolerance": 0.0000001, - "cut_type": "chamfer" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_fillet_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "radius": 0.05, - "tolerance": 0.0000001, - "cut_type": "chamfer" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_fillet_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "radius": 0.05, - "tolerance": 0.0000001, - "cut_type": "chamfer" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_fillet_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "radius": 0.05, - "tolerance": 0.0000001, - "cut_type": "chamfer" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_fillet_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "radius": 0.05, - "tolerance": 0.0000001, - "cut_type": "chamfer" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_fillet_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "radius": 0.05, - "tolerance": 0.0000001, - "cut_type": "chamfer" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "object_visible", - "object_id": "[uuid]", - "hidden": true - } - }, { "cmdId": "[uuid]", "range": [], @@ -24090,8 +22765,24 @@ description: Artifact commands walkie-talkie.kcl "cmdId": "[uuid]", "range": [], "command": { - "type": "set_scene_units", - "unit": "in" + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": { + "property": { + "x": 1.25, + "y": -0.5, + "z": 0.5 + }, + "set": false, + "is_local": true + }, + "rotate_rpy": null, + "rotate_angle_axis": null, + "scale": null + } + ] } }, { @@ -24100,9 +22791,9 @@ description: Artifact commands walkie-talkie.kcl "command": { "type": "make_plane", "origin": { - "x": 0.55, - "y": -0.5, - "z": 2.0 + "x": 0.0, + "y": 0.0, + "z": 0.0 }, "x_axis": { "x": 1.0, @@ -24130,7 +22821,7 @@ description: Artifact commands walkie-talkie.kcl "adjust_camera": false, "planar_normal": { "x": 0.0, - "y": 1.0, + "y": -1.0, "z": 0.0 } } @@ -24404,6 +23095,1446 @@ description: Artifact commands walkie-talkie.kcl "ambient_occlusion": 0.0 } }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": { + "property": { + "x": 0.55, + "y": -0.5, + "z": 2.0 + }, + "set": false, + "is_local": true + }, + "rotate_rpy": null, + "rotate_angle_axis": null, + "scale": null + } + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.15, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.0, + "y": -0.48, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.15, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.04, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 1.0, + "g": 0.0, + "b": 0.0, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.05, + "tolerance": 0.0000001, + "cut_type": "chamfer" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.05, + "tolerance": 0.0000001, + "cut_type": "chamfer" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": { + "property": { + "x": -0.895, + "y": -1.0, + "z": 1.25 + }, + "set": false, + "is_local": true + }, + "rotate_rpy": null, + "rotate_angle_axis": null, + "scale": null + } + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.15, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.0, + "y": -0.48, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.15, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.04, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 1.0, + "g": 0.0, + "b": 0.0, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.05, + "tolerance": 0.0000001, + "cut_type": "chamfer" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.05, + "tolerance": 0.0000001, + "cut_type": "chamfer" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": { + "property": { + "x": -0.895, + "y": -1.0, + "z": 0.73 + }, + "set": false, + "is_local": true + }, + "rotate_rpy": null, + "rotate_angle_axis": null, + "scale": null + } + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.15, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.0, + "y": -0.48, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.15, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.04, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 1.0, + "g": 0.0, + "b": 0.0, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.05, + "tolerance": 0.0000001, + "cut_type": "chamfer" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.05, + "tolerance": 0.0000001, + "cut_type": "chamfer" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": null, + "rotate_rpy": { + "property": { + "x": 0.0, + "y": 180.0, + "z": 0.0 + }, + "set": false, + "is_local": true + }, + "rotate_angle_axis": null, + "scale": null + } + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": { + "property": { + "x": 0.895, + "y": -1.0, + "z": 0.77 + }, + "set": false, + "is_local": false + }, + "rotate_rpy": null, + "rotate_angle_axis": null, + "scale": null + } + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "make_plane", + "origin": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "x_axis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "y_axis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "size": 60.0, + "clobber": false, + "hide": true + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "start_path" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "move_path_pen", + "path": "[uuid]", + "to": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.15, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": -0.0, + "y": -0.48, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extend_path", + "path": "[uuid]", + "segment": { + "type": "line", + "end": { + "x": 0.15, + "y": 0.0, + "z": 0.0 + }, + "relative": true + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "close_path", + "path_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "enable_sketch_mode", + "entity_id": "[uuid]", + "ortho": false, + "animated": false, + "adjust_camera": false, + "planar_normal": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + } + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "extrude", + "target": "[uuid]", + "distance": 0.04, + "faces": null + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "sketch_mode_disable" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_bring_to_front", + "object_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_extrusion_face_info", + "object_id": "[uuid]", + "edge_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "object_set_material_params_pbr", + "object_id": "[uuid]", + "color": { + "r": 1.0, + "g": 0.0, + "b": 0.0, + "a": 100.0 + }, + "metalness": 0.0, + "roughness": 0.0, + "ambient_occlusion": 0.0 + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.05, + "tolerance": 0.0000001, + "cut_type": "chamfer" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.05, + "tolerance": 0.0000001, + "cut_type": "chamfer" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": null, + "rotate_rpy": { + "property": { + "x": 0.0, + "y": 180.0, + "z": 0.0 + }, + "set": false, + "is_local": true + }, + "rotate_angle_axis": null, + "scale": null + } + ] + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_object_transform", + "object_id": "[uuid]", + "transforms": [ + { + "translate": { + "property": { + "x": 0.895, + "y": -1.0, + "z": 0.25000000000000006 + }, + "set": false, + "is_local": false + }, + "rotate_rpy": null, + "rotate_angle_axis": null, + "scale": null + } + ] + } + }, { "cmdId": "[uuid]", "range": [], diff --git a/rust/kcl-lib/tests/kcl_samples/walkie-talkie/artifact_graph_flowchart.snap.md b/rust/kcl-lib/tests/kcl_samples/walkie-talkie/artifact_graph_flowchart.snap.md index d76155ea9..005016725 100644 --- a/rust/kcl-lib/tests/kcl_samples/walkie-talkie/artifact_graph_flowchart.snap.md +++ b/rust/kcl-lib/tests/kcl_samples/walkie-talkie/artifact_graph_flowchart.snap.md @@ -1,186 +1,186 @@ ```mermaid flowchart LR subgraph path2 [Path] - 2["Path
[298, 341, 3]"] - 3["Segment
[347, 385, 3]"] - 4["Segment
[391, 431, 3]"] - 5["Segment
[437, 476, 3]"] - 6["Segment
[482, 504, 3]"] + 2["Path
[415, 458, 4]"] + 3["Segment
[466, 504, 4]"] + 4["Segment
[512, 552, 4]"] + 5["Segment
[560, 599, 4]"] + 6["Segment
[607, 629, 4]"] 7[Solid2d] end subgraph path27 [Path] - 27["Path
[888, 1013, 3]"] - 28["Segment
[1019, 1077, 3]"] - 29["Segment
[1083, 1208, 3]"] - 30["Segment
[1214, 1272, 3]"] - 31["Segment
[1278, 1406, 3]"] - 32["Segment
[1412, 1492, 3]"] - 33["Segment
[1498, 1627, 3]"] - 34["Segment
[1633, 1712, 3]"] - 35["Segment
[1718, 1725, 3]"] + 27["Path
[1038, 1169, 4]"] + 28["Segment
[1177, 1235, 4]"] + 29["Segment
[1243, 1374, 4]"] + 30["Segment
[1382, 1440, 4]"] + 31["Segment
[1448, 1582, 4]"] + 32["Segment
[1590, 1676, 4]"] + 33["Segment
[1684, 1819, 4]"] + 34["Segment
[1827, 1912, 4]"] + 35["Segment
[1920, 1927, 4]"] 36[Solid2d] end subgraph path63 [Path] - 63["Path
[1865, 1919, 3]"] - 64["Segment
[1925, 1966, 3]"] - 65["Segment
[1972, 2001, 3]"] - 66["Segment
[2007, 2037, 3]"] - 67["Segment
[2043, 2099, 3]"] - 68["Segment
[2105, 2112, 3]"] + 63["Path
[2077, 2131, 4]"] + 64["Segment
[2139, 2180, 4]"] + 65["Segment
[2188, 2217, 4]"] + 66["Segment
[2225, 2255, 4]"] + 67["Segment
[2263, 2319, 4]"] + 68["Segment
[2327, 2334, 4]"] 69[Solid2d] end subgraph path84 [Path] - 84["Path
[2246, 2283, 3]"] - 85["Segment
[2289, 2320, 3]"] - 86["Segment
[2326, 2359, 3]"] - 87["Segment
[2365, 2397, 3]"] - 88["Segment
[2403, 2410, 3]"] + 84["Path
[2478, 2515, 4]"] + 85["Segment
[2523, 2554, 4]"] + 86["Segment
[2562, 2595, 4]"] + 87["Segment
[2603, 2635, 4]"] + 88["Segment
[2643, 2650, 4]"] 89[Solid2d] end - subgraph path106 [Path] - 106["Path
[1373, 1532, 5]"] - 107["Segment
[1538, 1633, 5]"] - 108["Segment
[1639, 1800, 5]"] - 109["Segment
[1806, 1901, 5]"] - 110["Segment
[1907, 2071, 5]"] - 111["Segment
[2077, 2173, 5]"] - 112["Segment
[2179, 2342, 5]"] - 113["Segment
[2348, 2443, 5]"] - 114["Segment
[2449, 2456, 5]"] - 115[Solid2d] + subgraph path105 [Path] + 105["Path
[294, 319, 7]"] + 106["Segment
[327, 360, 7]"] + 107["Segment
[368, 403, 7]"] + 108["Segment
[411, 445, 7]"] + 109["Segment
[453, 460, 7]"] + 110[Solid2d] end - subgraph path116 [Path] - 116["Path
[463, 517, 5]"] - 117["Segment
[525, 552, 5]"] - 118["Segment
[560, 589, 5]"] - 119["Segment
[597, 625, 5]"] - 120["Segment
[633, 689, 5]"] - 121["Segment
[697, 704, 5]"] - 122[Solid2d] + subgraph path112 [Path] + 112["Path
[604, 736, 7]"] + 117[Solid2d] end - subgraph path123 [Path] - 123["Path
[952, 979, 5]"] - 124["Segment
[987, 1028, 5]"] - 125["Segment
[1036, 1078, 5]"] - 126["Segment
[1086, 1128, 5]"] - 127["Segment
[1136, 1143, 5]"] - 128[Solid2d] + subgraph path130 [Path] + 130["Path
[501, 555, 5]"] + 131["Segment
[563, 590, 5]"] + 132["Segment
[598, 627, 5]"] + 133["Segment
[635, 663, 5]"] + 134["Segment
[671, 727, 5]"] + 135["Segment
[735, 742, 5]"] + 136[Solid2d] end - subgraph path129 [Path] - 129["Path
[123, 210, 10]"] - 130["Segment
[218, 247, 10]"] - 131["Segment
[255, 283, 10]"] - 132["Segment
[291, 388, 10]"] - 133["Segment
[396, 443, 10]"] - 134["Segment
[451, 479, 10]"] - 135["Segment
[487, 516, 10]"] - 136["Segment
[524, 553, 10]"] - 137["Segment
[561, 652, 10]"] - 138["Segment
[660, 688, 10]"] - 139["Segment
[696, 725, 10]"] - 140["Segment
[733, 821, 10]"] - 141["Segment
[829, 857, 10]"] - 142["Segment
[865, 899, 10]"] - 143["Segment
[907, 937, 10]"] - 144["Segment
[945, 1054, 10]"] - 145["Segment
[1062, 1069, 10]"] - 146[Solid2d] + subgraph path138 [Path] + 138["Path
[1052, 1099, 5]"] + 139["Segment
[1107, 1148, 5]"] + 140["Segment
[1156, 1198, 5]"] + 141["Segment
[1206, 1248, 5]"] + 142["Segment
[1256, 1263, 5]"] + 143[Solid2d] end - subgraph path147 [Path] - 147["Path
[1203, 1301, 10]"] - 148["Segment
[1309, 1428, 10]"] - 149["Segment
[1436, 1490, 10]"] - 150["Segment
[1498, 1619, 10]"] - 151["Segment
[1627, 1634, 10]"] - 152[Solid2d] + subgraph path145 [Path] + 145["Path
[1555, 1720, 5]"] + 146["Segment
[1728, 1829, 5]"] + 147["Segment
[1837, 2004, 5]"] + 148["Segment
[2012, 2113, 5]"] + 149["Segment
[2121, 2291, 5]"] + 150["Segment
[2299, 2401, 5]"] + 151["Segment
[2409, 2578, 5]"] + 152["Segment
[2586, 2687, 5]"] + 153["Segment
[2695, 2702, 5]"] + 154[Solid2d] end - subgraph path153 [Path] - 153["Path
[1731, 1828, 10]"] - 154["Segment
[1836, 1955, 10]"] - 155["Segment
[1963, 2018, 10]"] - 156["Segment
[2026, 2147, 10]"] - 157["Segment
[2155, 2162, 10]"] - 158[Solid2d] + subgraph path156 [Path] + 156["Path
[123, 210, 6]"] + 157["Segment
[218, 247, 6]"] + 158["Segment
[255, 283, 6]"] + 159["Segment
[291, 388, 6]"] + 160["Segment
[396, 443, 6]"] + 161["Segment
[451, 479, 6]"] + 162["Segment
[487, 516, 6]"] + 163["Segment
[524, 553, 6]"] + 164["Segment
[561, 652, 6]"] + 165["Segment
[660, 688, 6]"] + 166["Segment
[696, 725, 6]"] + 167["Segment
[733, 821, 6]"] + 168["Segment
[829, 857, 6]"] + 169["Segment
[865, 899, 6]"] + 170["Segment
[907, 937, 6]"] + 171["Segment
[945, 1054, 6]"] + 172["Segment
[1062, 1069, 6]"] + 173[Solid2d] end - subgraph path159 [Path] - 159["Path
[1203, 1301, 10]"] - 160["Segment
[1309, 1428, 10]"] - 161["Segment
[1436, 1490, 10]"] - 162["Segment
[1498, 1619, 10]"] - 163["Segment
[1627, 1634, 10]"] - 164[Solid2d] + subgraph path175 [Path] + 175["Path
[1203, 1301, 6]"] + 176["Segment
[1309, 1428, 6]"] + 177["Segment
[1436, 1490, 6]"] + 178["Segment
[1498, 1619, 6]"] + 179["Segment
[1627, 1634, 6]"] + 180[Solid2d] end - subgraph path165 [Path] - 165["Path
[1731, 1828, 10]"] - 166["Segment
[1836, 1955, 10]"] - 167["Segment
[1963, 2018, 10]"] - 168["Segment
[2026, 2147, 10]"] - 169["Segment
[2155, 2162, 10]"] - 170[Solid2d] + subgraph path182 [Path] + 182["Path
[1731, 1828, 6]"] + 183["Segment
[1836, 1955, 6]"] + 184["Segment
[1963, 2018, 6]"] + 185["Segment
[2026, 2147, 6]"] + 186["Segment
[2155, 2162, 6]"] + 187[Solid2d] end - subgraph path199 [Path] - 199["Path
[592, 633, 4]"] - 200["Segment
[639, 672, 4]"] - 201["Segment
[678, 713, 4]"] - 202["Segment
[719, 753, 4]"] - 203["Segment
[759, 766, 4]"] - 204[Solid2d] + subgraph path189 [Path] + 189["Path
[1203, 1301, 6]"] + 190["Segment
[1309, 1428, 6]"] + 191["Segment
[1436, 1490, 6]"] + 192["Segment
[1498, 1619, 6]"] + 193["Segment
[1627, 1634, 6]"] + 194[Solid2d] end - subgraph path206 [Path] - 206["Path
[899, 1051, 4]"] - 211[Solid2d] + subgraph path196 [Path] + 196["Path
[1731, 1828, 6]"] + 197["Segment
[1836, 1955, 6]"] + 198["Segment
[1963, 2018, 6]"] + 199["Segment
[2026, 2147, 6]"] + 200["Segment
[2155, 2162, 6]"] + 201[Solid2d] end - subgraph path224 [Path] - 224["Path
[314, 355, 8]"] - 225["Segment
[363, 458, 8]"] - 226["Segment
[466, 562, 8]"] - 227["Segment
[570, 656, 8]"] - 228["Segment
[664, 671, 8]"] - 229[Solid2d] + subgraph path230 [Path] + 230["Path
[292, 391, 8]"] + 231["Segment
[399, 448, 8]"] + 232["Segment
[456, 506, 8]"] + 233["Segment
[514, 564, 8]"] + 234["Segment
[572, 590, 8]"] + 235[Solid2d] end - subgraph path246 [Path] - 246["Path
[314, 355, 8]"] - 247["Segment
[363, 458, 8]"] - 248["Segment
[466, 562, 8]"] - 249["Segment
[570, 656, 8]"] - 250["Segment
[664, 671, 8]"] - 251[Solid2d] + subgraph path256 [Path] + 256["Path
[322, 352, 9]"] + 257["Segment
[358, 390, 9]"] + 258["Segment
[396, 429, 9]"] + 259["Segment
[435, 516, 9]"] + 260["Segment
[522, 549, 9]"] + 261["Segment
[555, 562, 9]"] + 262[Solid2d] end - subgraph path268 [Path] - 268["Path
[314, 355, 8]"] - 269["Segment
[363, 458, 8]"] - 270["Segment
[466, 562, 8]"] - 271["Segment
[570, 656, 8]"] - 272["Segment
[664, 671, 8]"] - 273[Solid2d] + subgraph path274 [Path] + 274["Path
[314, 339, 10]"] + 275["Segment
[347, 431, 10]"] + 276["Segment
[439, 524, 10]"] + 277["Segment
[532, 607, 10]"] + 278["Segment
[615, 622, 10]"] + 279[Solid2d] end - subgraph path290 [Path] - 290["Path
[314, 355, 8]"] - 291["Segment
[363, 458, 8]"] - 292["Segment
[466, 562, 8]"] - 293["Segment
[570, 656, 8]"] - 294["Segment
[664, 671, 8]"] - 295[Solid2d] + subgraph path298 [Path] + 298["Path
[314, 339, 10]"] + 299["Segment
[347, 431, 10]"] + 300["Segment
[439, 524, 10]"] + 301["Segment
[532, 607, 10]"] + 302["Segment
[615, 622, 10]"] + 303[Solid2d] end - subgraph path312 [Path] - 312["Path
[503, 596, 6]"] - 313["Segment
[602, 651, 6]"] - 314["Segment
[657, 707, 6]"] - 315["Segment
[713, 763, 6]"] - 316["Segment
[769, 787, 6]"] - 317[Solid2d] + subgraph path322 [Path] + 322["Path
[314, 339, 10]"] + 323["Segment
[347, 431, 10]"] + 324["Segment
[439, 524, 10]"] + 325["Segment
[532, 607, 10]"] + 326["Segment
[615, 622, 10]"] + 327[Solid2d] end subgraph path346 [Path] - 346["Path
[524, 554, 7]"] - 347["Segment
[560, 592, 7]"] - 348["Segment
[598, 631, 7]"] - 349["Segment
[637, 718, 7]"] - 350["Segment
[724, 751, 7]"] - 351["Segment
[757, 764, 7]"] - 352[Solid2d] + 346["Path
[314, 339, 10]"] + 347["Segment
[347, 431, 10]"] + 348["Segment
[439, 524, 10]"] + 349["Segment
[532, 607, 10]"] + 350["Segment
[615, 622, 10]"] + 351[Solid2d] end - 1["Plane
[273, 292, 3]"] - 8["Sweep Extrusion
[519, 558, 3]"] + 1["Plane
[388, 407, 4]"] + 8["Sweep Extrusion
[646, 685, 4]"] 9[Wall] 10[Wall] 11[Wall] @@ -195,11 +195,11 @@ flowchart LR 20["SweepEdge Adjacent"] 21["SweepEdge Opposite"] 22["SweepEdge Adjacent"] - 23["EdgeCut Chamfer
[564, 794, 3]"] - 24["EdgeCut Chamfer
[564, 794, 3]"] - 25["EdgeCut Chamfer
[564, 794, 3]"] - 26["EdgeCut Chamfer
[564, 794, 3]"] - 37["Sweep Extrusion
[1739, 1775, 3]"] + 23["EdgeCut Chamfer
[693, 939, 4]"] + 24["EdgeCut Chamfer
[693, 939, 4]"] + 25["EdgeCut Chamfer
[693, 939, 4]"] + 26["EdgeCut Chamfer
[693, 939, 4]"] + 37["Sweep Extrusion
[1943, 1979, 4]"] 38[Wall] 39[Wall] 40[Wall] @@ -225,7 +225,7 @@ flowchart LR 60["SweepEdge Adjacent"] 61["SweepEdge Opposite"] 62["SweepEdge Adjacent"] - 70["Sweep Extrusion
[2126, 2166, 3]"] + 70["Sweep Extrusion
[2350, 2390, 4]"] 71[Wall] 72[Wall] 73[Wall] @@ -239,7 +239,7 @@ flowchart LR 81["SweepEdge Adjacent"] 82["SweepEdge Opposite"] 83["SweepEdge Adjacent"] - 90["Sweep Extrusion
[2411, 2443, 3]"] + 90["Sweep Extrusion
[2661, 2693, 4]"] 91[Wall] 92[Wall] 93[Wall] @@ -253,166 +253,171 @@ flowchart LR 101["SweepEdge Adjacent"] 102["SweepEdge Opposite"] 103["SweepEdge Adjacent"] - 104["Plane
[355, 384, 5]"] - 105["Plane
[1337, 1366, 5]"] - 171["Sweep Extrusion
[2784, 2820, 5]"] - 172[Wall] - 173[Wall] - 174[Wall] - 175[Wall] - 176[Wall] - 177[Wall] - 178[Wall] - 179[Wall] - 180["Cap Start"] - 181["Cap End"] - 182["SweepEdge Opposite"] - 183["SweepEdge Adjacent"] - 184["SweepEdge Opposite"] - 185["SweepEdge Adjacent"] - 186["SweepEdge Opposite"] - 187["SweepEdge Adjacent"] - 188["SweepEdge Opposite"] - 189["SweepEdge Adjacent"] - 190["SweepEdge Opposite"] - 191["SweepEdge Adjacent"] - 192["SweepEdge Opposite"] - 193["SweepEdge Adjacent"] - 194["SweepEdge Opposite"] - 195["SweepEdge Adjacent"] - 196["SweepEdge Opposite"] - 197["SweepEdge Adjacent"] - 198["Plane
[559, 586, 4]"] - 205["Plane
[813, 855, 4]"] - 207["SweepEdge Opposite"] - 208["SweepEdge Opposite"] - 209["SweepEdge Opposite"] - 210["SweepEdge Opposite"] - 212["Sweep Loft
[1215, 1243, 4]"] - 213[Wall] - 214[Wall] - 215[Wall] - 216[Wall] - 217["Cap End"] - 218["Cap End"] - 219["SweepEdge Adjacent"] + 104["Plane
[267, 286, 7]"] + 111["Plane
[513, 554, 7]"] + 113["SweepEdge Opposite"] + 114["SweepEdge Opposite"] + 115["SweepEdge Opposite"] + 116["SweepEdge Opposite"] + 118["Sweep Loft
[924, 952, 7]"] + 119[Wall] + 120[Wall] + 121[Wall] + 122[Wall] + 123["Cap Start"] + 124["Cap End"] + 125["SweepEdge Adjacent"] + 126["SweepEdge Adjacent"] + 127["SweepEdge Adjacent"] + 128["SweepEdge Adjacent"] + 129["Plane
[473, 492, 5]"] + 137["Plane
[1024, 1043, 5]"] + 144["Plane
[1527, 1546, 5]"] + 155["Plane
[2815, 2834, 5]"] + 174["Plane
[2879, 2898, 5]"] + 181["Plane
[2945, 2964, 5]"] + 188["Plane
[3010, 3029, 5]"] + 195["Plane
[3075, 3094, 5]"] + 202["Sweep Extrusion
[3133, 3169, 5]"] + 203[Wall] + 204[Wall] + 205[Wall] + 206[Wall] + 207[Wall] + 208[Wall] + 209[Wall] + 210[Wall] + 211["Cap Start"] + 212["Cap End"] + 213["SweepEdge Opposite"] + 214["SweepEdge Adjacent"] + 215["SweepEdge Opposite"] + 216["SweepEdge Adjacent"] + 217["SweepEdge Opposite"] + 218["SweepEdge Adjacent"] + 219["SweepEdge Opposite"] 220["SweepEdge Adjacent"] - 221["SweepEdge Adjacent"] + 221["SweepEdge Opposite"] 222["SweepEdge Adjacent"] - 223["Plane
[838, 875, 0]"] - 230["Sweep Extrusion
[690, 737, 8]"] - 231[Wall] - 232[Wall] - 233[Wall] - 234[Wall] - 235["Cap Start"] - 236["Cap End"] - 237["SweepEdge Opposite"] - 238["SweepEdge Adjacent"] - 239["SweepEdge Opposite"] - 240["SweepEdge Adjacent"] - 241["SweepEdge Opposite"] - 242["SweepEdge Adjacent"] + 223["SweepEdge Opposite"] + 224["SweepEdge Adjacent"] + 225["SweepEdge Opposite"] + 226["SweepEdge Adjacent"] + 227["SweepEdge Opposite"] + 228["SweepEdge Adjacent"] + 229["Plane
[265, 284, 8]"] + 236["Sweep Extrusion
[653, 705, 8]"] + 237[Wall] + 238[Wall] + 239[Wall] + 240[Wall] + 241["Cap Start"] + 242["Cap End"] 243["SweepEdge Opposite"] 244["SweepEdge Adjacent"] - 245["Plane
[965, 1002, 0]"] - 252["Sweep Extrusion
[690, 737, 8]"] - 253[Wall] - 254[Wall] - 255[Wall] - 256[Wall] - 257["Cap Start"] - 258["Cap End"] - 259["SweepEdge Opposite"] - 260["SweepEdge Adjacent"] - 261["SweepEdge Opposite"] - 262["SweepEdge Adjacent"] - 263["SweepEdge Opposite"] - 264["SweepEdge Adjacent"] - 265["SweepEdge Opposite"] - 266["SweepEdge Adjacent"] - 267["Plane
[1085, 1122, 0]"] - 274["Sweep Extrusion
[690, 737, 8]"] - 275[Wall] - 276[Wall] - 277[Wall] - 278[Wall] - 279["Cap Start"] - 280["Cap End"] - 281["SweepEdge Opposite"] - 282["SweepEdge Adjacent"] - 283["SweepEdge Opposite"] - 284["SweepEdge Adjacent"] - 285["SweepEdge Opposite"] - 286["SweepEdge Adjacent"] + 245["SweepEdge Opposite"] + 246["SweepEdge Adjacent"] + 247["SweepEdge Opposite"] + 248["SweepEdge Adjacent"] + 249["SweepEdge Opposite"] + 250["SweepEdge Adjacent"] + 251["EdgeCut Fillet
[713, 910, 8]"] + 252["EdgeCut Fillet
[713, 910, 8]"] + 253["EdgeCut Fillet
[713, 910, 8]"] + 254["EdgeCut Fillet
[713, 910, 8]"] + 255["Plane
[297, 316, 9]"] + 263["Sweep Revolve
[568, 596, 9]"] + 264[Wall] + 265[Wall] + 266[Wall] + 267[Wall] + 268[Wall] + 269["SweepEdge Adjacent"] + 270["SweepEdge Adjacent"] + 271["SweepEdge Adjacent"] + 272["SweepEdge Adjacent"] + 273["Plane
[287, 306, 10]"] + 280["Sweep Extrusion
[641, 688, 10]"] + 281[Wall] + 282[Wall] + 283[Wall] + 284[Wall] + 285["Cap Start"] + 286["Cap End"] 287["SweepEdge Opposite"] 288["SweepEdge Adjacent"] - 289["Plane
[1211, 1248, 0]"] - 296["Sweep Extrusion
[690, 737, 8]"] - 297[Wall] - 298[Wall] - 299[Wall] - 300[Wall] - 301["Cap Start"] - 302["Cap End"] - 303["SweepEdge Opposite"] - 304["SweepEdge Adjacent"] - 305["SweepEdge Opposite"] - 306["SweepEdge Adjacent"] - 307["SweepEdge Opposite"] - 308["SweepEdge Adjacent"] - 309["SweepEdge Opposite"] - 310["SweepEdge Adjacent"] - 311["Plane
[467, 497, 6]"] - 318["Sweep Extrusion
[833, 885, 6]"] - 319[Wall] - 320[Wall] - 321[Wall] - 322[Wall] - 323["Cap Start"] - 324["Cap End"] - 325["SweepEdge Opposite"] - 326["SweepEdge Adjacent"] - 327["SweepEdge Opposite"] - 328["SweepEdge Adjacent"] - 329["SweepEdge Opposite"] - 330["SweepEdge Adjacent"] - 331["SweepEdge Opposite"] - 332["SweepEdge Adjacent"] - 333["EdgeCut Chamfer
[745, 890, 8]"] - 334["EdgeCut Chamfer
[745, 890, 8]"] - 335["EdgeCut Chamfer
[745, 890, 8]"] - 336["EdgeCut Chamfer
[745, 890, 8]"] - 337["EdgeCut Chamfer
[745, 890, 8]"] - 338["EdgeCut Chamfer
[745, 890, 8]"] - 339["EdgeCut Chamfer
[745, 890, 8]"] - 340["EdgeCut Chamfer
[745, 890, 8]"] - 341["EdgeCut Fillet
[891, 1096, 6]"] - 342["EdgeCut Fillet
[891, 1096, 6]"] - 343["EdgeCut Fillet
[891, 1096, 6]"] - 344["EdgeCut Fillet
[891, 1096, 6]"] - 345["Plane
[494, 518, 7]"] - 353["Sweep Revolve
[770, 789, 7]"] + 289["SweepEdge Opposite"] + 290["SweepEdge Adjacent"] + 291["SweepEdge Opposite"] + 292["SweepEdge Adjacent"] + 293["SweepEdge Opposite"] + 294["SweepEdge Adjacent"] + 295["EdgeCut Chamfer
[696, 841, 10]"] + 296["EdgeCut Chamfer
[696, 841, 10]"] + 297["Plane
[287, 306, 10]"] + 304["Sweep Extrusion
[641, 688, 10]"] + 305[Wall] + 306[Wall] + 307[Wall] + 308[Wall] + 309["Cap Start"] + 310["Cap End"] + 311["SweepEdge Opposite"] + 312["SweepEdge Adjacent"] + 313["SweepEdge Opposite"] + 314["SweepEdge Adjacent"] + 315["SweepEdge Opposite"] + 316["SweepEdge Adjacent"] + 317["SweepEdge Opposite"] + 318["SweepEdge Adjacent"] + 319["EdgeCut Chamfer
[696, 841, 10]"] + 320["EdgeCut Chamfer
[696, 841, 10]"] + 321["Plane
[287, 306, 10]"] + 328["Sweep Extrusion
[641, 688, 10]"] + 329[Wall] + 330[Wall] + 331[Wall] + 332[Wall] + 333["Cap Start"] + 334["Cap End"] + 335["SweepEdge Opposite"] + 336["SweepEdge Adjacent"] + 337["SweepEdge Opposite"] + 338["SweepEdge Adjacent"] + 339["SweepEdge Opposite"] + 340["SweepEdge Adjacent"] + 341["SweepEdge Opposite"] + 342["SweepEdge Adjacent"] + 343["EdgeCut Chamfer
[696, 841, 10]"] + 344["EdgeCut Chamfer
[696, 841, 10]"] + 345["Plane
[287, 306, 10]"] + 352["Sweep Extrusion
[641, 688, 10]"] + 353[Wall] 354[Wall] 355[Wall] 356[Wall] - 357[Wall] - 358[Wall] - 359["SweepEdge Adjacent"] + 357["Cap Start"] + 358["Cap End"] + 359["SweepEdge Opposite"] 360["SweepEdge Adjacent"] - 361["SweepEdge Adjacent"] + 361["SweepEdge Opposite"] 362["SweepEdge Adjacent"] - 363["StartSketchOnFace
[849, 882, 3]"] - 364["StartSketchOnFace
[1825, 1859, 3]"] - 365["StartSketchOnFace
[2206, 2240, 3]"] - 366["StartSketchOnPlane
[1323, 1367, 5]"] - 367["StartSketchOnPlane
[429, 455, 5]"] - 368["StartSketchOnPlane
[924, 944, 5]"] - 369["StartSketchOnPlane
[869, 893, 4]"] - 370["StartSketchOnPlane
[286, 306, 8]"] - 371["StartSketchOnPlane
[286, 306, 8]"] - 372["StartSketchOnPlane
[286, 306, 8]"] - 373["StartSketchOnPlane
[286, 306, 8]"] + 363["SweepEdge Opposite"] + 364["SweepEdge Adjacent"] + 365["SweepEdge Opposite"] + 366["SweepEdge Adjacent"] + 367["EdgeCut Chamfer
[696, 841, 10]"] + 368["EdgeCut Chamfer
[696, 841, 10]"] + 369["StartSketchOnFace
[997, 1030, 4]"] + 370["StartSketchOnFace
[2035, 2069, 4]"] + 371["StartSketchOnFace
[2436, 2470, 4]"] + 372["StartSketchOnFace
[997, 1030, 4]"] + 373["StartSketchOnFace
[2035, 2069, 4]"] + 374["StartSketchOnFace
[2436, 2470, 4]"] + 375["StartSketchOnPlane
[572, 596, 7]"] + 376["StartSketchOnPlane
[459, 493, 5]"] + 377["StartSketchOnPlane
[1010, 1044, 5]"] + 378["StartSketchOnPlane
[1513, 1547, 5]"] 1 --- 2 2 --- 3 2 --- 4 @@ -575,380 +580,376 @@ flowchart LR 90 --- 101 90 --- 102 90 --- 103 - 104 --- 116 - 104 --- 123 - 104 --- 129 - 104 --- 147 - 104 --- 153 - 104 --- 159 - 104 --- 165 + 104 --- 105 105 --- 106 - 106 --- 107 - 106 --- 108 - 106 --- 109 - 106 --- 110 - 106 --- 111 - 106 --- 112 + 105 --- 107 + 105 --- 108 + 105 --- 109 + 105 ---- 118 + 105 --- 110 + 106 --- 119 106 --- 113 - 106 --- 114 - 106 ---- 171 - 106 --- 115 - 107 --- 179 - 107 --- 196 - 107 --- 197 - 108 --- 178 - 108 --- 194 - 108 --- 195 - 109 --- 177 - 109 --- 192 - 109 --- 193 - 110 --- 176 - 110 --- 190 - 110 --- 191 - 111 --- 175 - 111 --- 188 - 111 --- 189 - 112 --- 174 - 112 --- 186 - 112 --- 187 - 113 --- 173 - 113 --- 184 - 113 --- 185 - 114 --- 172 - 114 --- 182 - 114 --- 183 - 116 --- 117 - 116 --- 118 - 116 --- 119 - 116 --- 120 - 116 --- 121 - 116 --- 122 - 123 --- 124 - 123 --- 125 - 123 --- 126 - 123 --- 127 - 123 --- 128 + 106 --- 125 + 107 --- 120 + 107 --- 114 + 107 --- 126 + 108 --- 121 + 108 --- 115 + 108 --- 127 + 109 --- 122 + 109 --- 116 + 109 --- 128 + 111 --- 112 + 112 x--> 113 + 112 x--> 114 + 112 x--> 115 + 112 x--> 116 + 112 x---> 118 + 112 --- 117 + 118 --- 113 + 118 --- 114 + 118 --- 115 + 118 --- 116 + 118 --- 119 + 118 --- 120 + 118 --- 121 + 118 --- 122 + 118 --- 123 + 118 --- 124 + 118 --- 125 + 118 --- 126 + 118 --- 127 + 118 --- 128 129 --- 130 - 129 --- 131 - 129 --- 132 - 129 --- 133 - 129 --- 134 - 129 --- 135 - 129 --- 136 - 129 --- 137 - 129 --- 138 - 129 --- 139 - 129 --- 140 - 129 --- 141 - 129 --- 142 - 129 --- 143 - 129 --- 144 - 129 --- 145 - 129 --- 146 - 147 --- 148 - 147 --- 149 - 147 --- 150 - 147 --- 151 - 147 --- 152 - 153 --- 154 - 153 --- 155 - 153 --- 156 - 153 --- 157 - 153 --- 158 - 159 --- 160 - 159 --- 161 - 159 --- 162 - 159 --- 163 - 159 --- 164 - 165 --- 166 - 165 --- 167 - 165 --- 168 - 165 --- 169 - 165 --- 170 - 171 --- 172 - 171 --- 173 - 171 --- 174 - 171 --- 175 - 171 --- 176 - 171 --- 177 - 171 --- 178 - 171 --- 179 - 171 --- 180 - 171 --- 181 - 171 --- 182 - 171 --- 183 - 171 --- 184 - 171 --- 185 - 171 --- 186 - 171 --- 187 - 171 --- 188 - 171 --- 189 - 171 --- 190 - 171 --- 191 - 171 --- 192 - 171 --- 193 - 171 --- 194 - 171 --- 195 - 171 --- 196 - 171 --- 197 - 198 --- 199 - 199 --- 200 - 199 --- 201 - 199 --- 202 - 199 --- 203 - 199 ---- 212 - 199 --- 204 - 200 --- 213 - 200 --- 207 - 200 --- 219 - 201 --- 214 - 201 --- 208 - 201 --- 220 - 202 --- 215 + 130 --- 131 + 130 --- 132 + 130 --- 133 + 130 --- 134 + 130 --- 135 + 130 --- 136 + 137 --- 138 + 138 --- 139 + 138 --- 140 + 138 --- 141 + 138 --- 142 + 138 --- 143 + 144 --- 145 + 145 --- 146 + 145 --- 147 + 145 --- 148 + 145 --- 149 + 145 --- 150 + 145 --- 151 + 145 --- 152 + 145 --- 153 + 145 ---- 202 + 145 --- 154 + 146 --- 210 + 146 --- 227 + 146 --- 228 + 147 --- 209 + 147 --- 225 + 147 --- 226 + 148 --- 208 + 148 --- 223 + 148 --- 224 + 149 --- 207 + 149 --- 221 + 149 --- 222 + 150 --- 206 + 150 --- 219 + 150 --- 220 + 151 --- 205 + 151 --- 217 + 151 --- 218 + 152 --- 204 + 152 --- 215 + 152 --- 216 + 153 --- 203 + 153 --- 213 + 153 --- 214 + 155 --- 156 + 156 --- 157 + 156 --- 158 + 156 --- 159 + 156 --- 160 + 156 --- 161 + 156 --- 162 + 156 --- 163 + 156 --- 164 + 156 --- 165 + 156 --- 166 + 156 --- 167 + 156 --- 168 + 156 --- 169 + 156 --- 170 + 156 --- 171 + 156 --- 172 + 156 --- 173 + 174 --- 175 + 175 --- 176 + 175 --- 177 + 175 --- 178 + 175 --- 179 + 175 --- 180 + 181 --- 182 + 182 --- 183 + 182 --- 184 + 182 --- 185 + 182 --- 186 + 182 --- 187 + 188 --- 189 + 189 --- 190 + 189 --- 191 + 189 --- 192 + 189 --- 193 + 189 --- 194 + 195 --- 196 + 196 --- 197 + 196 --- 198 + 196 --- 199 + 196 --- 200 + 196 --- 201 + 202 --- 203 + 202 --- 204 + 202 --- 205 + 202 --- 206 + 202 --- 207 + 202 --- 208 202 --- 209 + 202 --- 210 + 202 --- 211 + 202 --- 212 + 202 --- 213 + 202 --- 214 + 202 --- 215 + 202 --- 216 + 202 --- 217 + 202 --- 218 + 202 --- 219 + 202 --- 220 202 --- 221 - 203 --- 216 - 203 --- 210 - 203 --- 222 - 205 --- 206 - 206 x--> 207 - 206 x--> 208 - 206 x--> 209 - 206 x--> 210 - 206 x---> 212 - 206 --- 211 - 212 --- 207 - 212 --- 208 - 212 --- 209 - 212 --- 210 - 212 --- 213 - 212 --- 214 - 212 --- 215 - 212 --- 216 - 212 --- 217 - 212 --- 218 - 212 --- 219 - 212 --- 220 - 212 --- 221 - 212 --- 222 - 223 --- 224 - 224 --- 225 - 224 --- 226 - 224 --- 227 - 224 --- 228 - 224 ---- 230 - 224 --- 229 - 225 --- 231 - 225 --- 237 - 225 --- 238 - 226 --- 232 - 226 --- 239 - 226 --- 240 - 227 --- 233 - 227 --- 241 - 227 --- 242 - 228 --- 234 - 228 --- 243 - 228 --- 244 + 202 --- 222 + 202 --- 223 + 202 --- 224 + 202 --- 225 + 202 --- 226 + 202 --- 227 + 202 --- 228 + 229 --- 230 230 --- 231 230 --- 232 230 --- 233 230 --- 234 + 230 ---- 236 230 --- 235 - 230 --- 236 - 230 --- 237 - 230 --- 238 - 230 --- 239 - 230 --- 240 - 230 --- 241 - 230 --- 242 - 230 --- 243 - 230 --- 244 - 245 --- 246 - 246 --- 247 - 246 --- 248 - 246 --- 249 - 246 --- 250 - 246 ---- 252 - 246 --- 251 - 247 --- 253 - 247 --- 259 - 247 --- 260 - 248 --- 254 - 248 --- 261 - 248 --- 262 - 249 --- 255 - 249 --- 263 - 249 --- 264 - 250 --- 256 - 250 --- 265 - 250 --- 266 - 252 --- 253 - 252 --- 254 - 252 --- 255 - 252 --- 256 - 252 --- 257 - 252 --- 258 - 252 --- 259 - 252 --- 260 - 252 --- 261 - 252 --- 262 - 252 --- 263 - 252 --- 264 - 252 --- 265 - 252 --- 266 - 267 --- 268 - 268 --- 269 - 268 --- 270 - 268 --- 271 - 268 --- 272 - 268 ---- 274 - 268 --- 273 - 269 --- 275 - 269 --- 281 - 269 --- 282 - 270 --- 276 - 270 --- 283 - 270 --- 284 - 271 --- 277 - 271 --- 285 - 271 --- 286 - 272 --- 278 - 272 --- 287 - 272 --- 288 + 231 --- 240 + 231 --- 249 + 231 --- 250 + 232 --- 239 + 232 --- 247 + 232 --- 248 + 233 --- 238 + 233 --- 245 + 233 --- 246 + 234 --- 237 + 234 --- 243 + 234 --- 244 + 236 --- 237 + 236 --- 238 + 236 --- 239 + 236 --- 240 + 236 --- 241 + 236 --- 242 + 236 --- 243 + 236 --- 244 + 236 --- 245 + 236 --- 246 + 236 --- 247 + 236 --- 248 + 236 --- 249 + 236 --- 250 + 250 <--x 251 + 248 <--x 252 + 246 <--x 253 + 244 <--x 254 + 255 --- 256 + 256 --- 257 + 256 --- 258 + 256 --- 259 + 256 --- 260 + 256 --- 261 + 256 ---- 263 + 256 --- 262 + 257 --- 264 + 257 x--> 269 + 258 --- 265 + 258 --- 269 + 259 --- 266 + 259 --- 270 + 260 --- 267 + 260 --- 271 + 261 --- 268 + 261 --- 272 + 263 --- 264 + 263 --- 265 + 263 --- 266 + 263 --- 267 + 263 --- 268 + 263 <--x 257 + 263 --- 269 + 263 <--x 258 + 263 <--x 259 + 263 --- 270 + 263 <--x 260 + 263 --- 271 + 263 <--x 261 + 263 --- 272 + 273 --- 274 274 --- 275 274 --- 276 274 --- 277 274 --- 278 + 274 ---- 280 274 --- 279 - 274 --- 280 - 274 --- 281 - 274 --- 282 - 274 --- 283 - 274 --- 284 - 274 --- 285 - 274 --- 286 - 274 --- 287 - 274 --- 288 - 289 --- 290 - 290 --- 291 - 290 --- 292 - 290 --- 293 - 290 --- 294 - 290 ---- 296 - 290 --- 295 - 291 --- 297 - 291 --- 303 - 291 --- 304 - 292 --- 298 - 292 --- 305 - 292 --- 306 - 293 --- 299 - 293 --- 307 - 293 --- 308 - 294 --- 300 - 294 --- 309 - 294 --- 310 - 296 --- 297 - 296 --- 298 - 296 --- 299 - 296 --- 300 - 296 --- 301 - 296 --- 302 - 296 --- 303 - 296 --- 304 - 296 --- 305 - 296 --- 306 - 296 --- 307 - 296 --- 308 - 296 --- 309 - 296 --- 310 - 311 --- 312 - 312 --- 313 - 312 --- 314 - 312 --- 315 - 312 --- 316 - 312 ---- 318 - 312 --- 317 - 313 --- 322 - 313 --- 331 - 313 --- 332 - 314 --- 321 - 314 --- 329 - 314 --- 330 - 315 --- 320 - 315 --- 327 - 315 --- 328 - 316 --- 319 - 316 --- 325 - 316 --- 326 - 318 --- 319 - 318 --- 320 - 318 --- 321 - 318 --- 322 - 318 --- 323 - 318 --- 324 - 318 --- 325 - 318 --- 326 - 318 --- 327 - 318 --- 328 - 318 --- 329 - 318 --- 330 - 318 --- 331 - 318 --- 332 - 238 <--x 333 - 240 <--x 334 - 260 <--x 335 - 262 <--x 336 - 282 <--x 337 - 284 <--x 338 - 304 <--x 339 - 306 <--x 340 - 332 <--x 341 - 330 <--x 342 - 328 <--x 343 - 326 <--x 344 + 275 --- 281 + 275 --- 287 + 275 --- 288 + 276 --- 282 + 276 --- 289 + 276 --- 290 + 277 --- 283 + 277 --- 291 + 277 --- 292 + 278 --- 284 + 278 --- 293 + 278 --- 294 + 280 --- 281 + 280 --- 282 + 280 --- 283 + 280 --- 284 + 280 --- 285 + 280 --- 286 + 280 --- 287 + 280 --- 288 + 280 --- 289 + 280 --- 290 + 280 --- 291 + 280 --- 292 + 280 --- 293 + 280 --- 294 + 288 <--x 295 + 290 <--x 296 + 297 --- 298 + 298 --- 299 + 298 --- 300 + 298 --- 301 + 298 --- 302 + 298 ---- 304 + 298 --- 303 + 299 --- 305 + 299 --- 311 + 299 --- 312 + 300 --- 306 + 300 --- 313 + 300 --- 314 + 301 --- 307 + 301 --- 315 + 301 --- 316 + 302 --- 308 + 302 --- 317 + 302 --- 318 + 304 --- 305 + 304 --- 306 + 304 --- 307 + 304 --- 308 + 304 --- 309 + 304 --- 310 + 304 --- 311 + 304 --- 312 + 304 --- 313 + 304 --- 314 + 304 --- 315 + 304 --- 316 + 304 --- 317 + 304 --- 318 + 312 <--x 319 + 314 <--x 320 + 321 --- 322 + 322 --- 323 + 322 --- 324 + 322 --- 325 + 322 --- 326 + 322 ---- 328 + 322 --- 327 + 323 --- 329 + 323 --- 335 + 323 --- 336 + 324 --- 330 + 324 --- 337 + 324 --- 338 + 325 --- 331 + 325 --- 339 + 325 --- 340 + 326 --- 332 + 326 --- 341 + 326 --- 342 + 328 --- 329 + 328 --- 330 + 328 --- 331 + 328 --- 332 + 328 --- 333 + 328 --- 334 + 328 --- 335 + 328 --- 336 + 328 --- 337 + 328 --- 338 + 328 --- 339 + 328 --- 340 + 328 --- 341 + 328 --- 342 + 336 <--x 343 + 338 <--x 344 345 --- 346 346 --- 347 346 --- 348 346 --- 349 346 --- 350 + 346 ---- 352 346 --- 351 - 346 ---- 353 - 346 --- 352 - 347 --- 354 - 347 x--> 359 - 348 --- 355 - 348 --- 359 - 349 --- 356 - 349 --- 360 - 350 --- 357 - 350 --- 361 - 351 --- 358 - 351 --- 362 - 353 --- 354 - 353 --- 355 - 353 --- 356 - 353 --- 357 - 353 --- 358 - 353 <--x 347 - 353 --- 359 - 353 <--x 348 - 353 <--x 349 - 353 --- 360 - 353 <--x 350 - 353 --- 361 - 353 <--x 351 - 353 --- 362 - 14 <--x 363 - 46 <--x 364 - 46 <--x 365 - 105 <--x 366 - 104 <--x 367 - 104 <--x 368 - 205 <--x 369 - 223 <--x 370 - 245 <--x 371 - 267 <--x 372 - 289 <--x 373 + 347 --- 353 + 347 --- 359 + 347 --- 360 + 348 --- 354 + 348 --- 361 + 348 --- 362 + 349 --- 355 + 349 --- 363 + 349 --- 364 + 350 --- 356 + 350 --- 365 + 350 --- 366 + 352 --- 353 + 352 --- 354 + 352 --- 355 + 352 --- 356 + 352 --- 357 + 352 --- 358 + 352 --- 359 + 352 --- 360 + 352 --- 361 + 352 --- 362 + 352 --- 363 + 352 --- 364 + 352 --- 365 + 352 --- 366 + 360 <--x 367 + 362 <--x 368 + 14 <--x 372 + 46 <--x 373 + 46 <--x 374 + 111 <--x 375 + 129 <--x 376 + 137 <--x 377 + 144 <--x 378 ``` diff --git a/rust/kcl-lib/tests/kcl_samples/walkie-talkie/ast.snap b/rust/kcl-lib/tests/kcl_samples/walkie-talkie/ast.snap index 53c097d08..b6effc7b8 100644 --- a/rust/kcl-lib/tests/kcl_samples/walkie-talkie/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/walkie-talkie/ast.snap @@ -10,87 +10,178 @@ description: Result of parsing walkie-talkie.kcl "end": 0, "path": { "type": "Kcl", - "filename": "body.kcl" + "filename": "globals.kcl" }, "preComments": [ - "// Import parts and constants" + "// import constants" ], "selector": { - "type": "None", - "alias": null + "commentStart": 412, + "end": 0, + "start": 0, + "type": "Glob" }, "start": 0, "type": "ImportStatement", "type": "ImportStatement" }, { - "commentStart": 433, + "commentStart": 432, "end": 0, "path": { "type": "Kcl", - "filename": "antenna.kcl" + "filename": "body.kcl" }, + "preComments": [ + "", + "", + "// import parts and constants" + ], "selector": { - "type": "None", - "alias": null + "type": "List", + "items": [ + { + "alias": null, + "commentStart": 471, + "end": 0, + "name": { + "commentStart": 471, + "end": 0, + "name": "body", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ImportItem" + } + ] }, "start": 0, "type": "ImportStatement", "type": "ImportStatement" }, { - "commentStart": 454, + "commentStart": 492, "end": 0, "path": { "type": "Kcl", "filename": "case.kcl" }, "selector": { - "type": "None", - "alias": null + "type": "List", + "items": [ + { + "alias": null, + "commentStart": 499, + "end": 0, + "name": { + "commentStart": 499, + "end": 0, + "name": "case", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ImportItem" + } + ] }, "start": 0, "type": "ImportStatement", "type": "ImportStatement" }, { - "commentStart": 472, + "commentStart": 520, + "end": 0, + "path": { + "type": "Kcl", + "filename": "antenna.kcl" + }, + "selector": { + "type": "List", + "items": [ + { + "alias": null, + "commentStart": 527, + "end": 0, + "name": { + "commentStart": 527, + "end": 0, + "name": "antenna", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ImportItem" + } + ] + }, + "start": 0, + "type": "ImportStatement", + "type": "ImportStatement" + }, + { + "commentStart": 554, "end": 0, "path": { "type": "Kcl", "filename": "talk-button.kcl" }, "selector": { - "type": "None", - "alias": { - "commentStart": 500, - "end": 0, - "name": "talkButton", - "start": 0, - "type": "Identifier" - } + "type": "List", + "items": [ + { + "alias": null, + "commentStart": 561, + "end": 0, + "name": { + "commentStart": 561, + "end": 0, + "name": "talkButton", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ImportItem" + } + ] }, "start": 0, "type": "ImportStatement", "type": "ImportStatement" }, { - "commentStart": 511, + "commentStart": 595, "end": 0, "path": { "type": "Kcl", "filename": "knob.kcl" }, "selector": { - "type": "None", - "alias": null + "type": "List", + "items": [ + { + "alias": null, + "commentStart": 602, + "end": 0, + "name": { + "commentStart": 602, + "end": 0, + "name": "knob", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ImportItem" + } + ] }, "start": 0, "type": "ImportStatement", "type": "ImportStatement" }, { - "commentStart": 529, + "commentStart": 623, "end": 0, "path": { "type": "Kcl", @@ -101,10 +192,10 @@ description: Result of parsing walkie-talkie.kcl "items": [ { "alias": null, - "commentStart": 536, + "commentStart": 630, "end": 0, "name": { - "commentStart": 536, + "commentStart": 630, "end": 0, "name": "button", "start": 0, @@ -120,317 +211,18 @@ description: Result of parsing walkie-talkie.kcl "type": "ImportStatement" }, { - "commentStart": 561, - "end": 0, - "path": { - "type": "Kcl", - "filename": "globals.kcl" - }, - "selector": { - "type": "List", - "items": [ - { - "alias": null, - "commentStart": 568, - "end": 0, - "name": { - "commentStart": 568, - "end": 0, - "name": "width", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ImportItem" - }, - { - "alias": null, - "commentStart": 575, - "end": 0, - "name": { - "commentStart": 575, - "end": 0, - "name": "height", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ImportItem" - }, - { - "alias": null, - "commentStart": 583, - "end": 0, - "name": { - "commentStart": 583, - "end": 0, - "name": "thickness", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ImportItem" - }, - { - "alias": null, - "commentStart": 594, - "end": 0, - "name": { - "commentStart": 594, - "end": 0, - "name": "screenWidth", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ImportItem" - }, - { - "alias": null, - "commentStart": 607, - "end": 0, - "name": { - "commentStart": 607, - "end": 0, - "name": "screenHeight", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ImportItem" - }, - { - "alias": null, - "commentStart": 621, - "end": 0, - "name": { - "commentStart": 621, - "end": 0, - "name": "screenYPosition", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ImportItem" - }, - { - "alias": null, - "commentStart": 638, - "end": 0, - "name": { - "commentStart": 638, - "end": 0, - "name": "tolerance", - "start": 0, - "type": "Identifier" - }, - "start": 0, - "type": "ImportItem" - } - ] - }, - "start": 0, - "type": "ImportStatement", - "type": "ImportStatement" - }, - { - "commentStart": 666, + "commentStart": 654, "end": 0, "expression": { - "commentStart": 687, - "end": 0, - "name": "body", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "preComments": [ - "", - "", - "// Import the body" - ], - "start": 0, - "type": "ExpressionStatement", - "type": "ExpressionStatement" - }, - { - "commentStart": 691, - "end": 0, - "expression": { - "commentStart": 712, - "end": 0, - "name": "case", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "preComments": [ - "", - "", - "// Import the case" - ], - "start": 0, - "type": "ExpressionStatement", - "type": "ExpressionStatement" - }, - { - "commentStart": 716, - "end": 0, - "expression": { - "commentStart": 740, - "end": 0, - "name": "antenna", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "preComments": [ - "", - "", - "// Import the antenna" - ], - "start": 0, - "type": "ExpressionStatement", - "type": "ExpressionStatement" - }, - { - "commentStart": 747, - "end": 0, - "expression": { - "arguments": [ - { - "commentStart": 778, - "elements": [ - { - "argument": { - "commentStart": 784, - "end": 0, - "left": { - "commentStart": 784, - "end": 0, - "left": { - "commentStart": 784, - "end": 0, - "name": "screenWidth", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 798, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "operator": "+", - "right": { - "commentStart": 802, - "end": 0, - "name": "tolerance", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "commentStart": 782, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - }, - { - "commentStart": 816, - "end": 0, - "name": "screenYPosition", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - }, - { - "commentStart": 835, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 856, - "end": 0, - "name": "offset", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 865, - "end": 0, - "name": "thickness", - "start": 0, - "type": "Identifier", - "type": "Identifier" - } - } - ], - "callee": { - "commentStart": 838, - "end": 0, - "name": "offsetPlane", - "start": 0, - "type": "Identifier" - }, - "commentStart": 838, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": { - "commentStart": 850, - "end": 0, - "raw": "\"XZ\"", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": "XZ" - } - } - ], + "arguments": [], "callee": { - "commentStart": 771, + "commentStart": 675, "end": 0, - "name": "button", + "name": "body", "start": 0, "type": "Identifier" }, - "commentStart": 771, + "commentStart": 675, "end": 0, "start": 0, "type": "CallExpression", @@ -439,462 +231,1146 @@ description: Result of parsing walkie-talkie.kcl "preComments": [ "", "", - "// Import the buttons" + "// import the body" ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { - "commentStart": 877, + "commentStart": 681, "end": 0, "expression": { - "arguments": [ + "body": [ { - "commentStart": 884, - "elements": [ - { - "argument": { - "commentStart": 890, - "end": 0, - "left": { - "commentStart": 890, - "end": 0, - "left": { - "commentStart": 890, - "end": 0, - "name": "screenWidth", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 904, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "operator": "+", - "right": { - "commentStart": 908, - "end": 0, - "name": "tolerance", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "commentStart": 888, - "end": 0, - "operator": "-", - "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" - }, - { - "commentStart": 922, - "end": 0, - "left": { - "commentStart": 922, - "end": 0, - "name": "screenYPosition", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "-", - "right": { - "commentStart": 941, - "end": 0, - "left": { - "commentStart": 941, - "end": 0, - "name": "screenHeight", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 956, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - ], + "arguments": [], + "callee": { + "commentStart": 705, + "end": 0, + "name": "antenna", + "start": 0, + "type": "Identifier" + }, + "commentStart": 705, "end": 0, "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - }, - { - "commentStart": 962, - "end": 0, - "raw": "0", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 0.0, - "suffix": "None" - } + "type": "CallExpression", + "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { - "commentStart": 983, + "commentStart": 730, "end": 0, - "name": "offset", + "name": "translate", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 992, + "commentStart": 742, + "elements": [ + { + "commentStart": 743, + "end": 0, + "left": { + "commentStart": 743, + "end": 0, + "left": { + "argument": { + "commentStart": 744, + "end": 0, + "name": "width", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "commentStart": 743, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + "operator": "/", + "right": { + "commentStart": 752, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 756, + "end": 0, + "raw": ".45", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.45, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "argument": { + "commentStart": 762, + "end": 0, + "raw": "0.10", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.1, + "suffix": "None" + } + }, + "commentStart": 761, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + { + "commentStart": 768, + "end": 0, + "left": { + "commentStart": 768, + "end": 0, + "name": "height", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "/", + "right": { + "commentStart": 775, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], "end": 0, - "name": "thickness", "start": 0, - "type": "Identifier", - "type": "Identifier" + "type": "ArrayExpression", + "type": "ArrayExpression" } } ], "callee": { - "commentStart": 965, + "commentStart": 720, "end": 0, - "name": "offsetPlane", + "name": "translate", "start": 0, "type": "Identifier" }, - "commentStart": 965, + "commentStart": 720, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", - "unlabeled": { - "commentStart": 977, - "end": 0, - "raw": "\"XZ\"", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": "XZ" - } + "unlabeled": null } ], - "callee": { - "commentStart": 877, - "end": 0, - "name": "button", - "start": 0, - "type": "Identifier" - }, - "commentStart": 877, + "commentStart": 705, "end": 0, + "nonCodeMeta": { + "nonCodeNodes": { + "1": [ + { + "commentStart": 778, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLineBlockComment", + "value": "import the case", + "style": "line" + } + } + ] + }, + "startNodes": [] + }, "start": 0, - "type": "CallExpression", - "type": "CallExpression" + "type": "PipeExpression", + "type": "PipeExpression" + }, + "preComments": [ + "", + "", + "// import the antenna" + ], + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 799, + "end": 0, + "expression": { + "body": [ + { + "arguments": [], + "callee": { + "commentStart": 799, + "end": 0, + "name": "case", + "start": 0, + "type": "Identifier" + }, + "commentStart": 799, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 821, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 833, + "elements": [ + { + "commentStart": 834, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + }, + { + "argument": { + "commentStart": 838, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + "commentStart": 837, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + { + "commentStart": 841, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + } + ], + "callee": { + "commentStart": 811, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "commentStart": 811, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + } + ], + "commentStart": 799, + "end": 0, + "nonCodeMeta": { + "nonCodeNodes": { + "1": [ + { + "commentStart": 844, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLineBlockComment", + "value": "import the talk button", + "style": "line" + } + } + ] + }, + "startNodes": [] + }, + "start": 0, + "type": "PipeExpression", + "type": "PipeExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { - "commentStart": 1004, + "commentStart": 872, "end": 0, "expression": { - "arguments": [ + "body": [ { - "commentStart": 1011, - "elements": [ - { - "commentStart": 1015, - "end": 0, - "left": { - "commentStart": 1015, - "end": 0, - "left": { - "commentStart": 1015, - "end": 0, - "name": "screenWidth", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 1029, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "operator": "+", - "right": { - "commentStart": 1033, - "end": 0, - "name": "tolerance", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - { - "commentStart": 1046, - "end": 0, - "left": { - "commentStart": 1046, - "end": 0, - "name": "screenYPosition", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "-", - "right": { - "commentStart": 1064, - "end": 0, - "name": "screenHeight", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - } - ], + "arguments": [], + "callee": { + "commentStart": 872, + "end": 0, + "name": "talkButton", + "start": 0, + "type": "Identifier" + }, + "commentStart": 872, "end": 0, "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" + "type": "CallExpression", + "type": "CallExpression" }, { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 900, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 912, + "elements": [ + { + "commentStart": 913, + "end": 0, + "left": { + "commentStart": 913, + "end": 0, + "name": "width", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "/", + "right": { + "commentStart": 921, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 924, + "end": 0, + "left": { + "argument": { + "commentStart": 925, + "end": 0, + "name": "thickness", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "commentStart": 924, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + "operator": "/", + "right": { + "commentStart": 937, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 940, + "end": 0, + "raw": ".5", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.5, + "suffix": "None" + } + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + } + ], + "callee": { + "commentStart": 890, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "commentStart": 890, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + } + ], + "commentStart": 872, + "end": 0, + "nonCodeMeta": { + "nonCodeNodes": { + "1": [ + { + "commentStart": 944, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLineBlockComment", + "value": "import the frequency knob", + "style": "line" + } + } + ] + }, + "startNodes": [] + }, + "start": 0, + "type": "PipeExpression", + "type": "PipeExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 975, + "end": 0, + "expression": { + "body": [ + { + "arguments": [], + "callee": { + "commentStart": 975, + "end": 0, + "name": "knob", + "start": 0, + "type": "Identifier" + }, + "commentStart": 975, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 997, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1009, + "elements": [ + { + "commentStart": 1010, + "end": 0, + "left": { + "commentStart": 1010, + "end": 0, + "left": { + "commentStart": 1010, + "end": 0, + "name": "width", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "/", + "right": { + "commentStart": 1018, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "-", + "right": { + "commentStart": 1022, + "end": 0, + "raw": "0.70", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.7, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 1028, + "end": 0, + "left": { + "argument": { + "commentStart": 1029, + "end": 0, + "name": "thickness", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "commentStart": 1028, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + "operator": "/", + "right": { + "commentStart": 1041, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 1044, + "end": 0, + "left": { + "commentStart": 1044, + "end": 0, + "name": "height", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "/", + "right": { + "commentStart": 1053, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + } + ], + "callee": { + "commentStart": 987, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "commentStart": 987, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + } + ], + "commentStart": 975, + "end": 0, + "nonCodeMeta": { + "nonCodeNodes": { + "1": [ + { + "commentStart": 1056, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLineBlockComment", + "value": "import the buttons", + "style": "line" + } + } + ] + }, + "startNodes": [] + }, + "start": 0, + "type": "PipeExpression", + "type": "PipeExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 1080, + "end": 0, + "expression": { + "body": [ + { + "arguments": [], + "callee": { + "commentStart": 1080, + "end": 0, + "name": "button", + "start": 0, + "type": "Identifier" + }, "commentStart": 1080, "end": 0, - "raw": "180", "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 180.0, - "suffix": "None" - } + "type": "CallExpression", + "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { - "commentStart": 1103, + "commentStart": 1104, "end": 0, - "name": "offset", + "name": "translate", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1112, + "commentStart": 1116, + "elements": [ + { + "argument": { + "commentStart": 1119, + "end": 0, + "left": { + "commentStart": 1119, + "end": 0, + "left": { + "commentStart": 1119, + "end": 0, + "name": "screenWidth", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "/", + "right": { + "commentStart": 1133, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 1137, + "end": 0, + "name": "tolerance", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "commentStart": 1117, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + { + "argument": { + "commentStart": 1150, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + "commentStart": 1149, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + { + "commentStart": 1153, + "end": 0, + "name": "screenYPosition", + "start": 0, + "type": "Identifier", + "type": "Identifier" + } + ], "end": 0, - "name": "thickness", "start": 0, - "type": "Identifier", - "type": "Identifier" + "type": "ArrayExpression", + "type": "ArrayExpression" } } ], "callee": { - "commentStart": 1085, + "commentStart": 1094, "end": 0, - "name": "offsetPlane", + "name": "translate", "start": 0, "type": "Identifier" }, - "commentStart": 1085, + "commentStart": 1094, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", - "unlabeled": { - "commentStart": 1097, - "end": 0, - "raw": "\"XZ\"", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": "XZ" - } + "unlabeled": null } ], - "callee": { - "commentStart": 1004, - "end": 0, - "name": "button", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1004, + "commentStart": 1080, "end": 0, "start": 0, - "type": "CallExpression", - "type": "CallExpression" + "type": "PipeExpression", + "type": "PipeExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { - "commentStart": 1124, + "commentStart": 1171, "end": 0, "expression": { - "arguments": [ + "body": [ { - "commentStart": 1131, - "elements": [ + "arguments": [], + "callee": { + "commentStart": 1171, + "end": 0, + "name": "button", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1171, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ { - "commentStart": 1135, - "end": 0, - "left": { - "commentStart": 1135, + "type": "LabeledArg", + "label": { + "commentStart": 1195, "end": 0, - "left": { - "commentStart": 1135, - "end": 0, - "name": "screenWidth", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 1149, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, + "name": "translate", "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" - }, - "operator": "+", - "right": { - "commentStart": 1153, - "end": 0, - "name": "tolerance", - "start": 0, - "type": "Identifier", "type": "Identifier" }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" + "arg": { + "commentStart": 1207, + "elements": [ + { + "argument": { + "commentStart": 1210, + "end": 0, + "left": { + "commentStart": 1210, + "end": 0, + "left": { + "commentStart": 1210, + "end": 0, + "name": "screenWidth", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "/", + "right": { + "commentStart": 1224, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 1228, + "end": 0, + "name": "tolerance", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "commentStart": 1208, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + { + "argument": { + "commentStart": 1241, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + "commentStart": 1240, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + { + "commentStart": 1244, + "end": 0, + "left": { + "commentStart": 1244, + "end": 0, + "left": { + "commentStart": 1244, + "end": 0, + "name": "screenYPosition", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "-", + "right": { + "commentStart": 1262, + "end": 0, + "name": "buttonHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "-", + "right": { + "commentStart": 1277, + "end": 0, + "left": { + "commentStart": 1277, + "end": 0, + "name": "tolerance", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 1287, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + } + ], + "callee": { + "commentStart": 1185, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1185, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + } + ], + "commentStart": 1171, + "end": 0, + "start": 0, + "type": "PipeExpression", + "type": "PipeExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 1291, + "end": 0, + "expression": { + "body": [ + { + "arguments": [], + "callee": { + "commentStart": 1291, + "end": 0, + "name": "button", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1291, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 1315, + "end": 0, + "name": "roll", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1322, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } }, { - "commentStart": 1166, - "end": 0, - "left": { - "commentStart": 1166, + "type": "LabeledArg", + "label": { + "commentStart": 1325, "end": 0, - "name": "screenYPosition", + "name": "pitch", "start": 0, - "type": "Identifier", "type": "Identifier" }, - "operator": "-", - "right": { - "commentStart": 1185, + "arg": { + "commentStart": 1333, "end": 0, - "left": { - "commentStart": 1185, - "end": 0, - "name": "screenHeight", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "operator": "/", - "right": { - "commentStart": 1200, - "end": 0, - "raw": "2", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.0, - "suffix": "None" - } - }, + "raw": "180", "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" + "type": "Literal", + "type": "Literal", + "value": { + "value": 180.0, + "suffix": "None" + } + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1338, + "end": 0, + "name": "yaw", + "start": 0, + "type": "Identifier" }, - "start": 0, - "type": "BinaryExpression", - "type": "BinaryExpression" + "arg": { + "commentStart": 1344, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } } ], + "callee": { + "commentStart": 1305, + "end": 0, + "name": "rotate", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1305, "end": 0, "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - }, - { - "commentStart": 1206, - "end": 0, - "raw": "180", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 180.0, - "suffix": "None" + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": { + "commentStart": 1312, + "end": 0, + "start": 0, + "type": "PipeSubstitution", + "type": "PipeSubstitution" } }, { @@ -902,101 +1378,473 @@ description: Result of parsing walkie-talkie.kcl { "type": "LabeledArg", "label": { - "commentStart": 1229, + "commentStart": 1362, "end": 0, - "name": "offset", + "name": "translate", "start": 0, "type": "Identifier" }, "arg": { - "commentStart": 1238, + "commentStart": 1374, + "elements": [ + { + "commentStart": 1375, + "end": 0, + "left": { + "commentStart": 1375, + "end": 0, + "left": { + "commentStart": 1375, + "end": 0, + "name": "screenWidth", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "/", + "right": { + "commentStart": 1389, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 1393, + "end": 0, + "name": "tolerance", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "argument": { + "commentStart": 1405, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + "commentStart": 1404, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + { + "commentStart": 1408, + "end": 0, + "left": { + "commentStart": 1408, + "end": 0, + "name": "screenYPosition", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "-", + "right": { + "commentStart": 1426, + "end": 0, + "name": "buttonHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], "end": 0, - "name": "thickness", "start": 0, - "type": "Identifier", + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1441, + "end": 0, + "name": "global", + "start": 0, "type": "Identifier" + }, + "arg": { + "commentStart": 1450, + "end": 0, + "raw": "true", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": true } } ], "callee": { - "commentStart": 1211, + "commentStart": 1352, "end": 0, - "name": "offsetPlane", + "name": "translate", "start": 0, "type": "Identifier" }, - "commentStart": 1211, + "commentStart": 1352, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null + } + ], + "commentStart": 1291, + "end": 0, + "start": 0, + "type": "PipeExpression", + "type": "PipeExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 1456, + "end": 0, + "expression": { + "body": [ + { + "arguments": [], + "callee": { + "commentStart": 1456, + "end": 0, + "name": "button", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1456, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 1480, + "end": 0, + "name": "roll", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1487, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1490, + "end": 0, + "name": "pitch", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1498, + "end": 0, + "raw": "180", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 180.0, + "suffix": "None" + } + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1503, + "end": 0, + "name": "yaw", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1509, + "end": 0, + "raw": "0", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.0, + "suffix": "None" + } + } + } + ], + "callee": { + "commentStart": 1470, + "end": 0, + "name": "rotate", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1470, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { - "commentStart": 1223, + "commentStart": 1477, "end": 0, - "raw": "\"XZ\"", "start": 0, - "type": "Literal", - "type": "Literal", - "value": "XZ" + "type": "PipeSubstitution", + "type": "PipeSubstitution" } + }, + { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 1527, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1539, + "elements": [ + { + "commentStart": 1540, + "end": 0, + "left": { + "commentStart": 1540, + "end": 0, + "left": { + "commentStart": 1540, + "end": 0, + "name": "screenWidth", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "/", + "right": { + "commentStart": 1554, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "+", + "right": { + "commentStart": 1558, + "end": 0, + "name": "tolerance", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "argument": { + "commentStart": 1570, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } + }, + "commentStart": 1569, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + { + "commentStart": 1573, + "end": 0, + "left": { + "commentStart": 1573, + "end": 0, + "left": { + "commentStart": 1573, + "end": 0, + "name": "screenYPosition", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "-", + "right": { + "commentStart": 1591, + "end": 0, + "left": { + "commentStart": 1591, + "end": 0, + "name": "buttonHeight", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 1604, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "-", + "right": { + "commentStart": 1608, + "end": 0, + "left": { + "commentStart": 1608, + "end": 0, + "name": "tolerance", + "start": 0, + "type": "Identifier", + "type": "Identifier" + }, + "operator": "*", + "right": { + "commentStart": 1620, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 1624, + "end": 0, + "name": "global", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 1633, + "end": 0, + "raw": "true", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": true + } + } + ], + "callee": { + "commentStart": 1517, + "end": 0, + "name": "translate", + "start": 0, + "type": "Identifier" + }, + "commentStart": 1517, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": null } ], - "callee": { - "commentStart": 1124, - "end": 0, - "name": "button", - "start": 0, - "type": "Identifier" - }, - "commentStart": 1124, + "commentStart": 1456, "end": 0, "start": 0, - "type": "CallExpression", - "type": "CallExpression" + "type": "PipeExpression", + "type": "PipeExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" - }, - { - "commentStart": 1249, - "end": 0, - "expression": { - "commentStart": 1277, - "end": 0, - "name": "talkButton", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "preComments": [ - "", - "", - "// Import the talk button" - ], - "start": 0, - "type": "ExpressionStatement", - "type": "ExpressionStatement" - }, - { - "commentStart": 1289, - "end": 0, - "expression": { - "commentStart": 1320, - "end": 0, - "name": "knob", - "start": 0, - "type": "Identifier", - "type": "Identifier" - }, - "preComments": [ - "", - "", - "// Import the frequency knob" - ], - "start": 0, - "type": "ExpressionStatement", - "type": "ExpressionStatement" } ], "commentStart": 0, @@ -1017,7 +1865,7 @@ description: Result of parsing walkie-talkie.kcl "// A portable, handheld two-way radio device that allows users to communicate wirelessly over short to medium distances. It operates on specific radio frequencies and features a push-to-talk button for transmitting messages, making it ideal for quick and reliable communication in outdoor, work, or emergency settings.", "", "", - "// Set units" + "// set units" ], "properties": [ { @@ -1047,19 +1895,7 @@ description: Result of parsing walkie-talkie.kcl } ], "nonCodeMeta": { - "nonCodeNodes": { - "15": [ - { - "commentStart": 1324, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - } - ] - }, + "nonCodeNodes": {}, "startNodes": [ { "commentStart": 383, diff --git a/rust/kcl-lib/tests/kcl_samples/walkie-talkie/ops.snap b/rust/kcl-lib/tests/kcl_samples/walkie-talkie/ops.snap index ca584b330..4467ab26d 100644 --- a/rust/kcl-lib/tests/kcl_samples/walkie-talkie/ops.snap +++ b/rust/kcl-lib/tests/kcl_samples/walkie-talkie/ops.snap @@ -3,6 +3,18 @@ source: kcl-lib/src/simulation_tests.rs description: Operations executed walkie-talkie.kcl --- [ + { + "type": "UserDefinedFunctionCall", + "name": "body", + "functionSourceRange": [ + 313, + 2759, + 4 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, { "labeledArgs": { "data": { @@ -334,9 +346,39 @@ description: Operations executed walkie-talkie.kcl "sourceRange": [] } }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "body", + "functionSourceRange": [ + 313, + 2759, + 4 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, { "labeledArgs": { - "offset": { + "data": { + "value": { + "type": "String", + "value": "XZ" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { "value": { "type": "Number", "value": 1.0, @@ -353,23 +395,25 @@ description: Operations executed walkie-talkie.kcl "sourceRange": [] } }, - "name": "offsetPlane", + "name": "extrude", "sourceRange": [], "type": "StdLibCall", "unlabeledArg": { "value": { - "type": "String", - "value": "XZ" + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } }, "sourceRange": [] } }, { "labeledArgs": { - "offset": { + "length": { "value": { "type": "Number", - "value": 1.0, + "value": 0.325, "ty": { "type": "Default", "len": { @@ -381,15 +425,41 @@ description: Operations executed walkie-talkie.kcl } }, "sourceRange": [] + }, + "tags": { + "value": { + "type": "Array", + "value": [ + { + "type": "Uuid", + "value": "[uuid]" + }, + { + "type": "Uuid", + "value": "[uuid]" + }, + { + "type": "Uuid", + "value": "[uuid]" + }, + { + "type": "Uuid", + "value": "[uuid]" + } + ] + }, + "sourceRange": [] } }, - "name": "offsetPlane", + "name": "chamfer", "sourceRange": [], "type": "StdLibCall", "unlabeledArg": { "value": { - "type": "String", - "value": "XZ" + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } }, "sourceRange": [] } @@ -398,8 +468,17 @@ description: Operations executed walkie-talkie.kcl "labeledArgs": { "data": { "value": { - "type": "Plane", - "artifact_id": "[uuid]" + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + }, + "tag": { + "value": { + "type": "String", + "value": "END" }, "sourceRange": [] } @@ -469,18 +548,283 @@ description: Operations executed walkie-talkie.kcl { "type": "UserDefinedFunctionReturn" }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": -0.0625, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + }, + "tag": { + "value": { + "type": "String", + "value": "start" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": -0.0625, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + }, + "tag": { + "value": { + "type": "String", + "value": "start" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": -0.5, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, { "type": "UserDefinedFunctionCall", - "name": "screenHole", + "name": "antenna", "functionSourceRange": [ - 399, - 725, + 212, + 1011, + 7 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XY" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "offset": { + "value": { + "type": "Number", + "value": 3.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "offsetPlane", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "String", + "value": "XY" + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Plane", + "artifact_id": "[uuid]" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "sketches": { + "value": { + "type": "Array", + "value": [ + { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + } + ] + }, + "sourceRange": [] + } + }, + "name": "loft", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "case", + "functionSourceRange": [ + 401, + 3254, 5 ], "unlabeledArg": null, "labeledArgs": {}, "sourceRange": [] }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XZ" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, { "labeledArgs": { "data": { @@ -496,6 +840,123 @@ description: Operations executed walkie-talkie.kcl "type": "StdLibCall", "unlabeledArg": null }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XZ" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Plane", + "artifact_id": "[uuid]" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XZ" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "Plane", + "artifact_id": "[uuid]" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "type": "UserDefinedFunctionCall", + "name": "cos", + "functionSourceRange": [ + 0, + 0, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "cos", + "functionSourceRange": [ + 0, + 0, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "cos", + "functionSourceRange": [ + 0, + 0, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "cos", + "functionSourceRange": [ + 0, + 0, + 0 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, { "type": "UserDefinedFunctionReturn" }, @@ -525,36 +986,6 @@ description: Operations executed walkie-talkie.kcl "type": "StdLibCall", "unlabeledArg": null }, - { - "type": "UserDefinedFunctionCall", - "name": "squareHolePattern", - "functionSourceRange": [ - 747, - 1310, - 5 - ], - "unlabeledArg": null, - "labeledArgs": {}, - "sourceRange": [] - }, - { - "labeledArgs": { - "data": { - "value": { - "type": "Plane", - "artifact_id": "[uuid]" - }, - "sourceRange": [] - } - }, - "name": "startSketchOn", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": null - }, - { - "type": "UserDefinedFunctionReturn" - }, { "labeledArgs": { "holeSketch": { @@ -1438,13 +1869,28 @@ description: Operations executed walkie-talkie.kcl "type": "StdLibCall", "unlabeledArg": null }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XZ" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, { "type": "UserDefinedFunctionCall", "name": "zLogo", "functionSourceRange": [ 69, 1088, - 10 + 6 ], "unlabeledArg": null, "labeledArgs": {}, @@ -1479,13 +1925,28 @@ description: Operations executed walkie-talkie.kcl "type": "StdLibCall", "unlabeledArg": null }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XZ" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, { "type": "UserDefinedFunctionCall", "name": "oLogo", "functionSourceRange": [ 1146, 1656, - 10 + 6 ], "unlabeledArg": null, "labeledArgs": {}, @@ -1520,13 +1981,28 @@ description: Operations executed walkie-talkie.kcl "type": "StdLibCall", "unlabeledArg": null }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XZ" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, { "type": "UserDefinedFunctionCall", "name": "oLogo2", "functionSourceRange": [ 1674, 2184, - 10 + 6 ], "unlabeledArg": null, "labeledArgs": {}, @@ -1561,13 +2037,28 @@ description: Operations executed walkie-talkie.kcl "type": "StdLibCall", "unlabeledArg": null }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XZ" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, { "type": "UserDefinedFunctionCall", "name": "oLogo", "functionSourceRange": [ 1146, 1656, - 10 + 6 ], "unlabeledArg": null, "labeledArgs": {}, @@ -1602,13 +2093,28 @@ description: Operations executed walkie-talkie.kcl "type": "StdLibCall", "unlabeledArg": null }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XZ" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, { "type": "UserDefinedFunctionCall", "name": "oLogo2", "functionSourceRange": [ 1674, 2184, - 10 + 6 ], "unlabeledArg": null, "labeledArgs": {}, @@ -1676,299 +2182,14 @@ description: Operations executed walkie-talkie.kcl } }, { - "labeledArgs": { - "data": { - "value": { - "type": "Object", - "value": { - "plane": { - "type": "Object", - "value": { - "origin": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 2.0, - "ty": { - "type": "Unknown" - } - } - } - }, - "xAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "yAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "zAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - } - } - } - } - }, - "sourceRange": [] - } - }, - "name": "startSketchOn", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": null - }, - { - "labeledArgs": { - "offset": { - "value": { - "type": "Number", - "value": 4.0, - "ty": { - "type": "Unknown" - } - }, - "sourceRange": [] - } - }, - "name": "offsetPlane", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "String", - "value": "XY" - }, - "sourceRange": [] - } - }, - { - "labeledArgs": { - "data": { - "value": { - "type": "Plane", - "artifact_id": "[uuid]" - }, - "sourceRange": [] - } - }, - "name": "startSketchOn", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": null - }, - { - "labeledArgs": { - "sketches": { - "value": { - "type": "Array", - "value": [ - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - } - ] - }, - "sourceRange": [] - } - }, - "name": "loft", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": null - }, - { - "labeledArgs": { - "offset": { - "value": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - } - }, - "name": "offsetPlane", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "String", - "value": "XZ" - }, - "sourceRange": [] - } + "type": "UserDefinedFunctionReturn" }, { "type": "UserDefinedFunctionCall", - "name": "button", + "name": "talkButton", "functionSourceRange": [ - 241, - 954, + 203, + 1002, 8 ], "unlabeledArg": null, @@ -1979,696 +2200,8 @@ description: Operations executed walkie-talkie.kcl "labeledArgs": { "data": { "value": { - "type": "Plane", - "artifact_id": "[uuid]" - }, - "sourceRange": [] - } - }, - "name": "startSketchOn", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": null - }, - { - "labeledArgs": { - "length": { - "value": { - "type": "Number", - "value": 0.04, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - } - }, - "name": "extrude", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - { - "labeledArgs": { - "length": { - "value": { - "type": "Number", - "value": 0.05, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - }, - "tags": { - "value": { - "type": "Array", - "value": [ - { - "type": "Uuid", - "value": "[uuid]" - }, - { - "type": "Uuid", - "value": "[uuid]" - } - ] - }, - "sourceRange": [] - } - }, - "name": "chamfer", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "Solid", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - { - "type": "UserDefinedFunctionReturn" - }, - { - "labeledArgs": { - "offset": { - "value": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - } - }, - "name": "offsetPlane", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "String", - "value": "XZ" - }, - "sourceRange": [] - } - }, - { - "type": "UserDefinedFunctionCall", - "name": "button", - "functionSourceRange": [ - 241, - 954, - 8 - ], - "unlabeledArg": null, - "labeledArgs": {}, - "sourceRange": [] - }, - { - "labeledArgs": { - "data": { - "value": { - "type": "Plane", - "artifact_id": "[uuid]" - }, - "sourceRange": [] - } - }, - "name": "startSketchOn", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": null - }, - { - "labeledArgs": { - "length": { - "value": { - "type": "Number", - "value": 0.04, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - } - }, - "name": "extrude", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - { - "labeledArgs": { - "length": { - "value": { - "type": "Number", - "value": 0.05, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - }, - "tags": { - "value": { - "type": "Array", - "value": [ - { - "type": "Uuid", - "value": "[uuid]" - }, - { - "type": "Uuid", - "value": "[uuid]" - } - ] - }, - "sourceRange": [] - } - }, - "name": "chamfer", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "Solid", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - { - "type": "UserDefinedFunctionReturn" - }, - { - "labeledArgs": { - "offset": { - "value": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - } - }, - "name": "offsetPlane", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "String", - "value": "XZ" - }, - "sourceRange": [] - } - }, - { - "type": "UserDefinedFunctionCall", - "name": "button", - "functionSourceRange": [ - 241, - 954, - 8 - ], - "unlabeledArg": null, - "labeledArgs": {}, - "sourceRange": [] - }, - { - "labeledArgs": { - "data": { - "value": { - "type": "Plane", - "artifact_id": "[uuid]" - }, - "sourceRange": [] - } - }, - "name": "startSketchOn", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": null - }, - { - "labeledArgs": { - "length": { - "value": { - "type": "Number", - "value": 0.04, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - } - }, - "name": "extrude", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - { - "labeledArgs": { - "length": { - "value": { - "type": "Number", - "value": 0.05, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - }, - "tags": { - "value": { - "type": "Array", - "value": [ - { - "type": "Uuid", - "value": "[uuid]" - }, - { - "type": "Uuid", - "value": "[uuid]" - } - ] - }, - "sourceRange": [] - } - }, - "name": "chamfer", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "Solid", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - { - "type": "UserDefinedFunctionReturn" - }, - { - "labeledArgs": { - "offset": { - "value": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - } - }, - "name": "offsetPlane", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "String", - "value": "XZ" - }, - "sourceRange": [] - } - }, - { - "type": "UserDefinedFunctionCall", - "name": "button", - "functionSourceRange": [ - 241, - 954, - 8 - ], - "unlabeledArg": null, - "labeledArgs": {}, - "sourceRange": [] - }, - { - "labeledArgs": { - "data": { - "value": { - "type": "Plane", - "artifact_id": "[uuid]" - }, - "sourceRange": [] - } - }, - "name": "startSketchOn", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": null - }, - { - "labeledArgs": { - "length": { - "value": { - "type": "Number", - "value": 0.04, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - } - }, - "name": "extrude", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "Sketch", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - { - "labeledArgs": { - "length": { - "value": { - "type": "Number", - "value": 0.05, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - }, - "tags": { - "value": { - "type": "Array", - "value": [ - { - "type": "Uuid", - "value": "[uuid]" - }, - { - "type": "Uuid", - "value": "[uuid]" - } - ] - }, - "sourceRange": [] - } - }, - "name": "chamfer", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "Solid", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - { - "type": "UserDefinedFunctionReturn" - }, - { - "labeledArgs": { - "data": { - "value": { - "type": "Object", - "value": { - "plane": { - "type": "Object", - "value": { - "origin": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 1.25, - "ty": { - "type": "Unknown" - } - }, - "y": { - "type": "Number", - "value": -0.5, - "ty": { - "type": "Unknown" - } - }, - "z": { - "type": "Number", - "value": 0.5, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "xAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "yAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "zAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - } - } - } - } + "type": "String", + "value": "YZ" }, "sourceRange": [] } @@ -2766,176 +2299,27 @@ description: Operations executed walkie-talkie.kcl "sourceRange": [] } }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "knob", + "functionSourceRange": [ + 246, + 681, + 9 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, { "labeledArgs": { "data": { "value": { - "type": "Object", - "value": { - "plane": { - "type": "Object", - "value": { - "origin": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.55, - "ty": { - "type": "Unknown" - } - }, - "y": { - "type": "Number", - "value": -0.5, - "ty": { - "type": "Unknown" - } - }, - "z": { - "type": "Number", - "value": 2.0, - "ty": { - "type": "Unknown" - } - } - } - }, - "xAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "yAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - }, - "zAxis": { - "type": "Object", - "value": { - "x": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "y": { - "type": "Number", - "value": 1.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - }, - "z": { - "type": "Number", - "value": 0.0, - "ty": { - "type": "Default", - "len": { - "type": "Inches" - }, - "angle": { - "type": "Degrees" - } - } - } - } - } - } - } - } + "type": "String", + "value": "XZ" }, "sourceRange": [] } @@ -2967,5 +2351,448 @@ description: Operations executed walkie-talkie.kcl }, "sourceRange": [] } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "button", + "functionSourceRange": [ + 221, + 905, + 10 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XZ" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.04, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.05, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "tags": { + "value": { + "type": "Array", + "value": [ + { + "type": "Uuid", + "value": "[uuid]" + }, + { + "type": "Uuid", + "value": "[uuid]" + } + ] + }, + "sourceRange": [] + } + }, + "name": "chamfer", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "button", + "functionSourceRange": [ + 221, + 905, + 10 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XZ" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.04, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.05, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "tags": { + "value": { + "type": "Array", + "value": [ + { + "type": "Uuid", + "value": "[uuid]" + }, + { + "type": "Uuid", + "value": "[uuid]" + } + ] + }, + "sourceRange": [] + } + }, + "name": "chamfer", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "button", + "functionSourceRange": [ + 221, + 905, + 10 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XZ" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.04, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.05, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "tags": { + "value": { + "type": "Array", + "value": [ + { + "type": "Uuid", + "value": "[uuid]" + }, + { + "type": "Uuid", + "value": "[uuid]" + } + ] + }, + "sourceRange": [] + } + }, + "name": "chamfer", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" + }, + { + "type": "UserDefinedFunctionCall", + "name": "button", + "functionSourceRange": [ + 221, + 905, + 10 + ], + "unlabeledArg": null, + "labeledArgs": {}, + "sourceRange": [] + }, + { + "labeledArgs": { + "data": { + "value": { + "type": "String", + "value": "XZ" + }, + "sourceRange": [] + } + }, + "name": "startSketchOn", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": null + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.04, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + } + }, + "name": "extrude", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Sketch", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "length": { + "value": { + "type": "Number", + "value": 0.05, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "tags": { + "value": { + "type": "Array", + "value": [ + { + "type": "Uuid", + "value": "[uuid]" + }, + { + "type": "Uuid", + "value": "[uuid]" + } + ] + }, + "sourceRange": [] + } + }, + "name": "chamfer", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "type": "UserDefinedFunctionReturn" } ] diff --git a/rust/kcl-lib/tests/kcl_samples/walkie-talkie/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/walkie-talkie/program_memory.snap index 655477fbd..0c37b0512 100644 --- a/rust/kcl-lib/tests/kcl_samples/walkie-talkie/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/walkie-talkie/program_memory.snap @@ -4,19 +4,140 @@ description: Variables in memory after executing walkie-talkie.kcl --- { "antenna": { - "type": "Module", - "value": 4 + "type": "Function" + }, + "antennaBaseHeight": { + "type": "Number", + "value": 0.25, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "antennaBaseWidth": { + "type": "Number", + "value": 0.5, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "antennaLength": { + "type": "Number", + "value": 3.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "antennaTopHeight": { + "type": "Number", + "value": 0.05, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "antennaTopWidth": { + "type": "Number", + "value": 0.3, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } }, "body": { - "type": "Module", - "value": 3 + "type": "Function" }, "button": { "type": "Function" }, + "buttonHeight": { + "type": "Number", + "value": 0.48, + "ty": { + "type": "Unknown" + } + }, + "buttonThickness": { + "type": "Number", + "value": 0.04, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "buttonWidth": { + "type": "Number", + "value": 0.15, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, "case": { - "type": "Module", - "value": 5 + "type": "Function" + }, + "caseTolerance": { + "type": "Number", + "value": 0.01, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "chamferLength": { + "type": "Number", + "value": 0.325, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } }, "height": { "type": "Number", @@ -32,8 +153,72 @@ description: Variables in memory after executing walkie-talkie.kcl } }, "knob": { - "type": "Module", - "value": 7 + "type": "Function" + }, + "knobDiameter": { + "type": "Number", + "value": 0.5, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "knobHeight": { + "type": "Number", + "value": 0.25, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "knobRadius": { + "type": "Number", + "value": 0.05, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "offset": { + "type": "Number", + "value": 0.125, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "screenDepth": { + "type": "Number", + "value": -0.0625, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } }, "screenHeight": { "type": "Number", @@ -68,9 +253,93 @@ description: Variables in memory after executing walkie-talkie.kcl "type": "Unknown" } }, + "speakerBoxHeight": { + "type": "Number", + "value": 1.25, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "speakerBoxWidth": { + "type": "Number", + "value": 1.25, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "squareHoleSideLength": { + "type": "Number", + "value": 0.0625, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "tag1": { + "type": "TagIdentifier", + "type": "TagIdentifier", + "value": "tag1" + }, + "tag2": { + "type": "TagIdentifier", + "type": "TagIdentifier", + "value": "tag2" + }, + "tag3": { + "type": "TagIdentifier", + "type": "TagIdentifier", + "value": "tag3" + }, + "tag4": { + "type": "TagIdentifier", + "type": "TagIdentifier", + "value": "tag4" + }, "talkButton": { - "type": "Module", - "value": 6 + "type": "Function" + }, + "talkButtonHeight": { + "type": "Number", + "value": 0.05, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "talkButtonSideLength": { + "type": "Number", + "value": 0.5, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } }, "thickness": { "type": "Number", diff --git a/rust/kcl-lib/tests/kcl_samples/walkie-talkie/rendered_model.png b/rust/kcl-lib/tests/kcl_samples/walkie-talkie/rendered_model.png index f7593684ff837a07a4b4d90f32ad9be1eab9769c..f209790f7b3589493cacc57638e4e4e757c78833 100644 GIT binary patch literal 59737 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 x<<Jl}iI{{i+&VGjTR literal 68295 zcmeEvc~n!^+WrY3s7L`P90`g_ZykbCMI;!Uimd}}y_Tv-R8(%AqEaM)a=-~FRkXGO zf}z#h(n^I|ihzJYK~V{$ts*KzAZVf>gb)J>B#cs%RC?+4~)y z_j!lC6Zhe2ADf}$hGH0I^ZxRsA7j`c_@mkHgDv4V@u9j;Fvif6?=M~SZ$6{7*!(1U*lA&!U?ugR&uL#WCU32yIf1iCRIQv1CV2<15Htm7j9pOL3cMU9X8X5b&X)=a+h&cHtuQbn%)_keGLx04w^`VaIb_&d_? zqx=Duhn7raUD!Xs^3a3y+-1-D?}^%HxA2Sq+Zauv|EDn%^Z!3nq}j&*A0H$4XQ>us zsp_e(0YR0iVXow=g)P|&TSD3j6xTPH_&2%k_alz4oQz08Ias|hROx^#9dx1m_*}kq zX1?s4RWKbyNY#hN^>lL@ScH_NNfm1+5T1p%HWUuRs{Mm2j*yK^BASkY-OQs6G{C_V z3)-&5n|{L=eZE0)eSDN#P$fIo}G40 z*V9&@RqThIGxk#A`$tT9-)6KtuETqao1_NXtY3#s0SA@MDu{W!$Mzgxs$ z+N!!k3qX~OJY>isdRW$r7tx~~=}OtC(TtG_JZMiM9174ghV6xgt0XTn3))Or0Ack{ z<0_sD{%f$}B${?IyVH*RQ!B1(yVf!b8^8~P?PyX`D-QgXkcZKYuMd=)?AbF|COX1E zuOrguqd%JpXsn5iDh`0Z>@xuda}%vIn+Gsra}y)3>u-35 z65woKZ67j~aC2Wp6MeS*V}C$9Ok;HTPm~5QWPRkC0noO`1lu?dC;+QW^-$5cF8Hd@ zmL5Y)oYyo{)29P>?Mno@Os#@ibI(AFF~#(@ew(*4(K!t>P-<=B`+0vs0TfGU2-_>2 zKJ2m|lH^fHGJr8NO^kUU0Y{h$xE4}`3X_G~dYdf#(g1dB%A@x7hZ4-h@){9-whaXO z^amLn!T=@sujs9&lwU#rW;&hEG>t`T$wtIpOl$(jXn5_XPp5JvQ*zj4qDma;D`g;? zFqI#D9esoEEwJ4|#mR0#eQ0PGjeuWk=G^M10r!hW&{7K@7#Rn7cK{#uqI;-Gd5H8g z!K^eXvfs!7SZ}xq15Zb(P`;%9!mDZPGI`PeP)MTr|0QxHvX(B2S(_@r^y&B)lmbv> zHO&KXFPbVzYszaa`!SA;08wUKI&XX*}h)eS^&T1?c=9Uzb7#+&Hm-F_Y{i8c9# z;Z!+-zA!a6-h_^Q){i3z?M*;n>HwyjLpNP@nvAl~{>;zhRpeqi)kLYDX@c_JKV=I8 z%cakz07wP`t}K(-``5g9ElJ5`AR1+|cN1^w>$WK7nhlV<^ikr!`w;*Mz1V_(XXG3B znE^t_L=zh=?_a>cO}}FeVoIh~Jc4e;fU^CRGmU1;e)_}#LUXlgXa*4K8waxJ5%UuH z@BX%Xl%_-zb4jPnWgrxI%LE0=2jG7#rg5_h5fhWR={~^9O?kfQ%Ky%4e(LW{LrlEs z#b4C}LQEK)fu8qS#Uf*TR||iqMHid?Z)KRg^?O9bHkm|Lp{2=pQ0p@NhCYuN00!oo z!ay6M#E}EQz(1~*-0yFi<}}mnMNvdTYX;EuPE%dip$I)t7HzWdK0a&`G&ps=Jhrd+ z=!Rz^xV}90FKyTIZysUd(<@Nisa5o^f}|zT&>sKpHAM#!N^Yoy7*nh0U&m0H?C)=a zqKS|6A;od1{5ufIGJU$Rlu|(dEP%uOo2}Cn4p1`y;gFlq8T=nDrke}d1XN|If+;zz zALMesq+!om@>zd}FBJO8XVX`1(pog_4R*5zpwwa?qjv+Zh(j#OY5=+`Hz^be zMg8E+f%XlsYh(eIRE=Ch)yqxO>|j&I(LWEjHu(n00F)%nluyhYK-&%`P_wNc%NN?w z&4DOKwreWdNp#Wba|fsq%V~^GEfl>*M=(=zH+tVdWI+6n$-p*4BGf<2&Zi?FaK23j zjuY_mR=~>~G0J`gFK%&lx40=mR53IxDmzGAKXk7Ic4+t--ud!zP%YSFuD~mz^C3iD z#V1BMA#l^|CYkPda;jRS$>H|oNLr}3^uTLx1*G6d3`oH0+`_sYT+k&b_~`2m3<8=u zjk&0`(-<1rk{j7VBVgS^({{Mto$@=~lPvucg&MkB3lxW_(v;PFoY;d2Uj0`n)oGzv zzqiq`GEJD$bDo3S+J4^rAOuTY5aNZo_y&~yw5B?^`GFe#e`5OTjZk|VM0t}r_CKNr2FM6~SZ<9y1 z@sum&Vo3#4uVk6EKXuWM@(ur!tIP@^bahxUSE)k_gN2}VsqSUzeqeW;W|bg2X$TEZ z5AA+g9d^DtOo3}+a7`;y{|8f_+E*E&rofYeIF9BzeAhQ*OzQn361`V_V?llAZizmJ zfuzFK98)|^AT$nPZ%H||TI8lUj3MEUL1RWkmSJ3yV9es>AlzZ)7b29ClU&(d6?z36y$64z2Sysh^Z1v!{1kv<)y_=ioWjQ`MJ!|l_}6RFGp#7@-46PU!K+bL{HjK%uaN{J z=cDiGEqdnB&7+EGO0pCTE54|+E|lyJT{d`-e<9!2H?o7fuj6URK|-#dkL%#IEZxn} z4xaic$T>|pmM1n(##7+UaxY2KeN1zVt6443fU8v0zd96_4rV5fMD5vXLL}CSsvC{b z7q>DE_=pGT@K@Kex;_woW679wr69tVqdCGYUL)x6Lx#-j+^#5-AF5AKZRd4fXG=k} zxCO(^Vz8Z)cNB*HF#k|ik5jsgTizpK)2(m{sgQ=~Tm?^^iU2Ju1XjDeU5+c`*{z@9754?5eq;77{?~<7x1($h zv39rwXxG*sHKs1)GMfDKEa;w9vtO6+E>baus#oYZ?Uc)?u4VO{OVc-J5kDZ63SX^| zygzO0x!+vv23-sI{QPo>&rj0Ih{$g|7236tr0=Gks`cxSjOXz`OO?q|0xZX$oLDe= zSVT|PUa3Z1tB|(U)$&5S9H%@g`rH=Ft?R6=4X@!k7hBeBUCbG=d(H^&!_gmqt2q2| z!;*zhcZNM*!aa^$m`-(v(1Agph!R#UDML`KUcz~K9`7lOd=(ndbGg1*&sY0JtRbE! z;HQylCYw!OIsL-4UYnn*xlv5;*8ClN%yxd zo;IKQy7k;cr}3%mQ7cERyg1e;>Af+#PuczO$@6R8hmotdO4`=&+mCS1)zwAhDWG6V zuM1nz)=3^ItZXT)d=2o1detDRQ>*1X4d!$O>KxIKl$pX!@vffT%*uTpX_AzLG=1#Bc?p}ymDpiu059H$KTjuFWSDSdeHZS zhwS>#XFuHia>=ibqVV%S``z8K?URhHIqzny{WTz2J?`Q3rlX&k4cRejYH`u2hSIo} zuosEpfdQ(y_2Z*fB(^nXk+MWSjFn_p6SZP}twgHToMviIi?s+#B{T|&ThceU zYknK@!~0(jn*8m^A16jVU+}2@`pG8G>V2wJtXuJ3ohKeY&Oh0szrl=j7wSDF6@kp2 z_o&>F8krFV=Od-*seN`+5s2u{BD=e2=q#kCD2UqZq=$wS)J3^%^$JKogI~PQrXIB zg|+3^hhT}b>PqSfuL(01&uWheztb+9C);w4U_^ar1%ExDx+)VY*e!Odsf7!!_IlFdmEK^rsA8Gq}mls}wq==KY!khWQ zFvO8w7krZ2lToIst#8=osA||5Wq|%D*l-rkq(y)TTAJ9+>&#E<$rq}(0HMsPaMNqo z2yWbO^C+|4uWX1Vtr5T8lh>BWC+m8rcPC=u5dfTb^R)c#2Eopp|# zzb7_=-OWGnaslReYrN9CysBtvl*Q%qw~n9AUhaST_stKIFE>@6@|-qaw7vS*ByPEN z@aLbid<)cm`KmTy=*gc8RI|kk~5Te6;K?TVjK6`;#)_Y1!pvz z6@?!<%&IL((?4b@6LEFeBClGBz3bhCwBq$XC zxFVj*jR~PzLNB4?3CW1<)0yLs&>1Cbb#3Vm5Z#2g7ZU07Zq{9~tC`)?8AX#RJrckRZg;T`Cv!Y8U<(ajwR=irBX48HV95JoLSl+;A(zqA71s2C7HX26y za9y5@N-yjvz}V6sS{TSQG$iW$S~f^;*pn?odfAqp_9HBM44@Dm3NyIrG>v6_$p<>T})2f-GgM7ZWflM z+mi6~LFH%+ZBIi=;r&ho&y`#&GEZ_4u~V?<(otr^%KI5{*4S`c;fnI>gDXRUfuKl{KY2H!!&646MhWWft{ig*dGn9o>e#u|#WRc`> z+kZ1=G1yfs228dp&M4Ge)M`1J;9oFR8BSVY2JJ8+ArpEPOjD0ZnSk?{uAVcByp$~M z74Fk@rQ2LWuL5=y$-Q;)g!HG};4M3k|ZxbVJb(fuHEU0*~Q>?sfL%2tDd&&9TMRI$oFj1TJ3;W%i z4#|5_7Q@BU1gqFA75l8!T~J;?65Y!?&W`8**%}(1|5Eq;Awr`N3@(PXc^;Zq3}}@Q z`4$amJ?QMxMQZ?BNUzU#MRovG&E*jB?0Ac)D8F!oxUd#YHKoe6YFVf@5 z4=r6;!zVc|j{0RYX_SXB zSIpGcjbQMpq|Z`A<+n6O!5K}fc#)gvnB#k0zvsHF3_l%o8neTs-vqpD#B{gT@Z{@C z*OFBt{2G!@*+SX2us_cbU*Qg_gJWHt1b3tO*Gt`oY$eu;Mi~IGbX0-W3dBwj3Oa_B z+pu3;EpWADjNUZsWvj{u?^^no7N4+$7J8V^2Nc*YGjD9LMM9o391}z;JnWo^m=SMM z&o`(TOJ1QRq;LMVH$`=@P0*aO)qcJ@Ek7D(sZvGp-u}}tque8M60N)kV-`->o7G3Qb&+3F5b`qgU|Fbc1})$;(dIw&R{hMcibGhlt>8t! zg8h{MtQR>@DRaLS_Aa&0ACwB0*ID*I{t=Vh{LN3rg5Nhw$E0s=cJ_A5mPUWP^j{Z7ew6X{ z+6R+A81>Q8e@!-9ym+{o-QZ|%v-gjB4QC0~RY9veVtn}v zy8LUG(4{E7gxmZh!DVcIstm0y59D1xxu(pw0}}AGEjNve=e#!Es-WE$^2ggpn z;Ekm8#gA*herJdM_g{Rxbcj7;=%gVQ!=p}toZj{xZjYH^N1|8WIlAljaldVUVsZIK zd66ihV>GWbY=Y;3iM|D0Yz`?Wv0lZ+_MCrI+W>;HY~Ts@Pao_(*c+41xv_ulUgA$j zpO(42o*#Ixo?z7J1W#IlvgV^c=2rDL=4K&HF0CngIQ`coweDsbX`Zpqw1oBl)#Uz( zyp^o=HqHscrhrdM?jXW6GnaiB3aReT)&^)-J%04)y~B{?_p!`n58nA;)YPT_TFkIt z4EBgEHXAZ!(xRiMyoX~>yY3tXnLpgLu;94QLfvkDwtM%`J%x?m8+c0>*_o!iFv978 zZDQe*K*xKxcirX@wc)V*0(eYVm`>(bI zafyeXS5QT~?jID^#mB5eRllW^b93vv{a&_8AfY7Yk_#*?EK7s!{RU%0cFo!#%G?&w zG|aPxbz@bvkTE`fCnJx)*P@uGYdxbWPp?0zsjl&wFa4}bApfpfAT>}Np|$Jat(%9L z%_v?D7RA6{h5BL*z>d!^9Nz%^%ZC$VtW}v#4p|zgx#24nEW67h8SeuFw!_SnD;FP* zk$gT8!?h1;7_dioCAU@D_?1Lc&RSLu@Aljt=*_4~biujyxbM=|VfB4%*9LHE5m@mwLm z{*pT_pp~PEZ-A!s_Dci@d+H9V6ZB@oA=^md&)fIdc~9Y6Q9}NciT-M`=2pp6hqMD$ zxb`8p3~Xi zbVJn(Rq!;SUfRwAZ8NiHP^KLfaN>eSNWVDaxd8(assKjJH?sZrE5Q&!l;%+*Qmjw% zcJJL1d?W6%4eSPX!6=Ta802zw9`>my>lqj74}+u9B@vEM@i8l)^srC4_wId#mssUO zIKOn9!I&SiE5)bwpgEYytX)|2FvNZY%VPh>4g80;fuh&}Re*iPA3X$PEN7>j%6s{Z zqiQe)4wUP>uZr9v8{|rEp5-_zpP%>iMd2owc@BlH4z`K9&;s}i6F1-q$KQSAKdE@} z80%lKBi^GC>j!3L;rdsspGBv#llc^*CJgKv@#-p0r!}@*x^4;(CFQQg0I$;*c5X(( zwT{Yb##u_USchnB!mkm(J&lwxMC98-Wv;LEJ6`)cY^kgzY&9g1Gm4#x(Qk&T1Th5r ztEJqeSBM-2R5CV2Y2eiW!tctk{Ti?p;CRgf$>};I^2CEdC9g7Q>AFw@% z@t;<>?>%#nj-L5u8L11em;6Pt!5Z^Sqiiz9pdu#&HW)~CFG67N zql^Qy1M)r`-u&W~V%i4s2e-qrkqDD}k3yYICtG>|DV)o>H0m)HbdC^S0}GW#m|TugA_Q zvzy~H$l^#>=$KmHQch4N5|1W0vh_7E(t{A>%#zFm43*9yJpg-s7P@bo)r>!Ua8 zt=p;AulfzU$y z%OKkjzb+a!GxdYoTwYVY$4B$hy!|^rNC=yc`3k$(w)vg!+Ct7pI49#HRNOWQLu)*1 z*d5?#kVTuzhE5urGTq|S!GQouc6V+jAymqj^tdf-tE=zM;i3@&L$^McW-Y5}!9kGl zx_av(+2>BfBk;Anmk%oEWxYy@VYHvx>8pfaaM+8K6qSt^j^?VIg~jgr>-+)i47?$>e0A$C)t)T! z5?gn><b_%$~A;IT0=M8e8 z(K(|YHg(r)uibKiAXEg3^tfSh5?ExTyO@xap)bHSM z(*QC6wjrMiz=C;WW(_y%7a~?m9VLvUdJMF_*-%=^IVhY8g(D{kEL>=UNQ|FoNa8oDVO8B^vxk}oDLJJuH=UP`j9`kvK#Y8_4zc=hBqob@&DW%+ChaA+Od^Uw7KG9gNsw3 z!qr_AT0jwG8Wd?fC|d|H+CnDSg6&q~yvTYpu^|bM)-rDt#)4hA4ZMy_yW!#~AP0EV z`?+&QIreFYG>FpSq^(Dg#4m*q00$9sa5dQXIajx|rYTM7AW(oDrU9A=+PDn;Z6 zHQ6We%di4peaUVR27=)~6t83mFu)#mnc11yr3ybs73MSjB+xq%qbBQV@Xpn@xR^O% zK-58s1FmJbxzxi;_N1xshBI#qZ*IH7g(#29ARLC1ApoNoM{k?EPhM|Nj(hDf{1k_R zV-N`szVZ}$aP=h|v9{=tV3i>jAt^mAs(%&2)KT3=J(ctJT8x?;YfO2`A_{a_QOJqy zG3jG~!niYK6w=Ri+-E@g7O`M(EPi=>!tM^sgu)?F=flM4{*=yeTcJS0zgJhAA6hEB z{o04>Ww-V;LgZxXD|wZEWV;xZhu*{_)qiUgW(H7capS1maN|K@(#`14WRVeBpzHz} zDbVn{fg1{Iz?Gq1`o@)?a!dU8HCsOy&{wxbe(yH{SXh=3bXX5agN=(X$(pC(>A7i5LxNb!tShg*AUEvF1}eM@RVk2_=u{Biedf%I^0qu; zhq_O<%dVGi@X|mdY$B(nPrgr1rwKF1P}_|HienoabS6)7_x$eqR-1qmKDCBW*`4ju zQ795V{UI==ux`b|qdluyXLN1UjXqn_q!9-dvrjQZ_#AUfkuXl{yQMfv+cgKUoVOJ< zh-AVi4=VR5+8k!*1Y>9`O4fn=7EBapcU5{N}AeTj46`HAOiAIs|M8z>Ok zSJpO(qjdLeI_4%8uPU1tR*-mbaM$>nb%K3jpUtX+V_Zq?urYx|%UIV<0d^|MT_kEr zh0Znzgsw{4yhENB+7+Ml!~+9(NXVCs$=ZAWGa?7#mr(hjAU{|U3&3fJW34aSp&M|6 zN$SsF23YRB$)TGxUO3W?8%TQ(P@0lsMdpC`1FSgLw`p0R<8xDS%P;1og)IVU552uf zB`JXgE>0%jvm6H9LLGNAEI62>Qn=*=*B10FTiH4R1B5N}5B}0G@5Q_1dH^&DznOxN zp8^q{6?vo|H~_gW18Q0eflSXbKzc8KCxph~Y=Ucu`_vSQ&Lsh#gE>u^<(Z#dQBZUv zLm4|htLbFjl1M2p?RIvO!{fe!R!$HJ!JNh0vGJ~(h=?(+n=lc%)N2|@peDi(@jkSOlGsSU*ixb-*?{-M(*ivA2=IStNN($ z?J2|w$ZZ(0c(f*KilaCCj3(^^HpfgUJg4zH#ozp=&x{!1*1*pFOLw_u96KN8!yOvh zI#FpBC!hV>)5;>})x665&PStJ>UJwtu5bP~&s?#+jejo8B0pe7=w3d~7U!uSZXnO~ zCduRonsp#LTOGzi*1;M+psbf|5tO_(=(pb>N5_RNM0Xl8}gK%LUGSQbsD?v zU%I;cye5l0+Vvz*FkT1Ss^CH&7jyOpG>&hvnDGK#>&qw+~T2|IzBtmdCQS?Ghd24yFbp` zsfd+31^oEk)X=tx`@(}ObAa$aC}D~u3!i;LWiVCTw(prbiUI}0IRWEXHX;0W0w*%n zDF1}6u(U4iB^VK%#L~A4+f!z2_v*j=(FsLu7QFU5DS49p`uR|)TEo9lYCY8sy6(bn zuu@^PMm*WkyKrzR?f|O?+euql7+Wgzu4Nr6-LF~E-R-o)qvGe$d)QYQ#Tz4h*zp<% zo0$l)@23Q3dR@J>!b^8U*ScoUvy<8Ku)4&EAsF$>mwXk}n|BdHBjF{uVN_Za*)g#T zYk#cJccT7#USQX$G)+yqlBayM)3+TsTU^h~>V&4s;IuO9pyEPr8Rrz3M>*w}U?cX( zF*A}Kignh2ePr%f*RGT&9+e7wd`9DtTE!^d!V2V(<)!hvaIcQ>zC|gXT_;gp81njD zZ=k}$_&!va^zCCFjRt2leD!6LBNsMQa2=w0jRK_F2~z#hAk{W@SD3CPPVOV+L~E+; zqBOQn#Kl-EJMulL@Gzf&gq-G$r25rz<`u^@Z!UA`%ydSc@{uJL+R9XB4eWr4VXvG| zlBg4}NQHAE#v>x6ZQs>aNOTpPW*Bz9vx0*L8v04}no**{1pZrQ%Cu#LKLXn`kAn&^ zCY2x?W<_a2?Z}O#@ym7NV_(^~D2KdKFM6bu388`>HlZJu6f~QR zL)uiMFK$S~T`+{9lWZx57%cA+o~UZ)w{?BteqJ_e&w>i!L*Qxdf^c`_MnZHb!+3C# zv^FWX5{d|fPF<0={0`pAwM3#}k~Qi3ILZqVFLPY@M||o^^=Dhk_Q~_bO`I6)l!i4q zz>X11E|qduu%k4-NSE>@I;#=nC?uPL|0e!i=JI>B)ko!@VS8#Hdlv)k((N1uPQknT zqGGIP_Q{Hhil!j3;Lz>M&_b&=^2KTzU(5nDFHRr<&2#zvmyy5-Br?XhiW7j!P6iZ= zzo!dw197Cgk~ffm+>?Gf|4c{ZUKuAS)}sh-AcFP=dg28cj)ft&9^G3wGtr9mn;MMn z%ZRW&GH$2A@r-6-okV^l4nG1iqFE5a|+->-c0ejw58#+Q!9 zcTT5Sf;Al9kzB?+RgO?j>FYoF>=Yo1cP-&{JIA_WmagP6*e5GC3{!CthZG)xUv&>E z_eYX7pW65~L}u~te@0Q8^3pex4r+2-@2N92d6POWR9snTg^A3Q087D$+U325Ix==47Wz$ax2B@h^Icq^r`yiefgRWUW`F zenpsZhik=K1@}>m1AS6x+cv)^Usn!HbFWMb8v|jIhhSG-Znm3<6xiLD+O(TdTFHNQ z1bO)D7Z${DZs{El$;Pmf_J~}jrESXjPpgx&w6jEFF44KWku~75 zYXnV^V2!Hb<4UxmZ__jL2fzEsB1TMevGs z@ar-B@)B9Q1e|JJXZ1I7S({`v#}A6VL@T*T za~VDweoX^gT&hb1w;I^uNTW}QtT#E{(fPTN>t&LAQQ9ofcNb7AP(Befhm45D?{@xd z-awsP>(vQKTN&x1%KEd)Eh_A~Xq$|4n4y~NmW12F`%5qx_b#k!Q^3C=Mm z1a&6aGW=4J8Y(vft<;*PpA*!9O3+W9NSE>Xvti=x#X7m$CSocQqKdbLI1i5;Oo<`w zMwB+~7Gxfulz&Fd1l{ziob;qSZb>Z<%2+p(gJvftlf!^@ZgnM3LmFFw+Ai-K6nKrf$6HwcFIICWvr5u*2gF)r4U(04)`3Hd-Id z1}e5fm~dl3jqsd?m6Pk(n~7$IPoiZ=?$p6c#)0i#tZ^#ujUFZOrIuf6vo;m8B640`IaMuZ&)UBo(yDJ4TXxC(o;$w*{jXXTFJ; z-W$azuaSs#T>uc&>DS(ybM&~eCao9lL&syWm!b$_Cdf~Cmf=c<44Wqtf^H#O*Cr-` zJr5BHW3&m7o+XnXe4i?lYzcbE*o%Iyx6eR-=Ee|?iVfv-a=UDfIrx9|Y%*t9QqS08 z1oJ4xqktwrCM>BBfBGgPyViV+MqDM7S_VBz4h1?osQKPpT@T3R#jxApYTJr2@Cz`S zZNv!p%RMs54ITa=GB{KWrJ|luT3nj6itM2CgF6H#hwT9zwE>ZxWgOA+KnJI^SzC#S zWOCjdvZ}LsM6cDZWf?CD13!D59mIn*b%D0l!T!2hn#U5Wz<;%~$@nm~G91}8Wt1$VWn>UFu!(<(RPa-Yv%yCJ0g%X#0n)>tbwL^X&hc1U8QY1{dK}BK|9KArPF=5|{a5G3?bU{BodlvDOj zgI+&Lke{Z_+Cm6vw=E_bIi;W8nlgfWV+Dy?KR`0v8ZBxQ0mcq^NJYchz)|8saGBlJ zuh+unNW)r13oz4z*aXLT?=D?<8yKrD-O5lQ$=*tGyXXJ;~0p*c%V+y`9t>ZmPM<$7gc zeL-V!ud{Ddr`^=WgW*fc!5_iYQeMZ@uxYBr6iZpl@}HR=wy2jY!ZmF)@8)_$biQ=M z4#>P%mk@4W+i!!`Cp;N;dJKispt}eI+nK3?o+vL@=ot3VZt()FQsC7y%vfgdHTn_h z_Znek69K=Hb=Mqxv$6a7cB4Te^ZId=QF5kOK&h zYe^tv6pYfU4jkiEIeOuKRFPm9#H20;F&!tzSeBZ%?kXIOm8+YQo~$F9lBSmiyM78u zQ}Xmu>uugTtJzM#eC?n>91Bwb%hr^CCaVj?=6|YpB*#K&K@afO3nYNK^gA8WzMUR4 zKVS9M%U##!vA)=#Aoh;Vb_fh=$^n6qt)G-MdB9VQ*hrci?}DM(EM;yKG)|3w9GL$? z6r{>hHna!@8E_ljg|luLpdEpXZTbx7PKyoymdL%ah`-Vm_{@+_Kuhf1n z%hq;vHwD#}r?HzB3YHbxNx72=n^J2h!VBssP#5ByDYc$Nl*c+O#$w6I(q&ES8r_GsAd^YX6uF2N%nB+UIvFh>UTVi z%<(U={x!+#Y)a+9d0i=R`GuOR8$^Cp0at-zz}Gi=nL`RB_ZVXbS%LB<=-~s)QhdI- z^pbpqE-S~ah5zjuPv)KY9Xp9}qJlE0oo!fm!nfgAU!Xc<*(+z#-8hg!hJph`v{2mz zKtpJga&B(v{B+L()#F+ox`QLEJohPgPDFlUplW8lSrh;zZUrwVn@Z!o*_@nI88_qX z{nRH~?@Gm?=^4r)I-e(kkba&{zeb8%5yk)Z{E2E=1*2v!Md1Pe27IxaBc6A)2kPF!`pUv47!c-)b!pQG2Yc~u$j%ghv|Udr z5)-?Q3pLi5OdpukmCzV%a9d~ArPg(WP)ZT8fMy)Dg|iNWm*{sCSz;4|D8mdKoiUue^A_^Zw0NM$K$ zA?2(Ag=4TP>+IZtahXTM$A<-1!R!)uu`UH5 zzRf)+SQi1`VYO+8od50m%DqBpx4)@5gjB^F^V)08%YMlnm(K;&@HP`ipd{7Jn;bAQ zC)M&>bbZwbXgH#P5iz}YgCtGQ2v(ppvVNn7xon+C=nH!SG$j|n3<=@(_4qy5rX4}r zgkRkHrwGSs>`M-%`rMAJ-*U(C7u`NEIx4)xMz=x~zbB|(g+#_V3Ecy7tCZ`6a_KVj zRnXvSg_HCN|1STm4Wb$?Td+48jo)UVmDyk3UxziTt5w{aItc%bqP47XO5v)R>Dq*8 z-vZ6s0Nd-eIWl)3iF=8+2P74t$PsRX^7CxB7ESJKzm4jw$;2S(vB$|F?B5?$GJXdb z!!PgGt1&1futY?-l-trLa~)612fs&t`$<%5m>AgD+`Yo};`SM`U$4|zdFMA;5;;GB zl?l&j6Sfd*k}@2 zln+v6kr6GY9c~Q}9!y$gZ}QXGT1yiz|O_ibgFY zxCLIf^BZJc_kyw5pp0kGWUMh1W$J138T1PpgW)_Qg8q&9$K~@@1u=fC=8B;}$O_Et z#(i`fATK8eO9vsExx9CSYI1z<{?z23ZxVE?VjUTn8U9BsG&4A-HKFz_|9Y_0*`>lb ziVH~K8wXs4noJ2>h-w)&wOLTU*#jqZF#ualwW}+bx>(#<*u>om*1(D5Z!XQ=Eq(`; z=m{_B@$uMyS|^Avp9N+I#ref?y~T)ku>LBAkfIlna}hVmokNP_92V=+hm-#TPY3^; zQFDkwp8^_$)70>e>R^)mYVNo^_U(Fifr;h-qBrd*254e-)*a&g;KQ-U5(MW{ppx)I; zWNV>qM4SN@Q|Kz?aPx_9Y`ws|RNos6P!vN6Y43PuH%Y&lRO>3<$(!48cxCHC>>i*9 zP**4w0*b(JpJ;&~4LL%L9V?Yah8Gz{pW%3i&9vNvM3w1Zf`9#@tspG&08r~uBH>s0 z&75yEzRpBNDV{YB1O+9Eb*0uh0~Aw?3+l#S^cGVNCppy3KR@W(dbm|dm6SnTE+v^# z{P6w~8vr17Vw}TDT28aVxF|CBO(^ja-(WLk(bvL{lgkk;fm>pgT(~{}HH6$pkm0SF z1)9(i;*ZP60>}zzTePR8Z$);p$DI$&S)%y>UC3CSQ4wSn>xQZMJz{+1#3RsOq6$Zik9z+p{ z!HpIGaE5ZD`tPO+E*qd5t#F&51n6TVP@T2n3V-!vJ2D+?7wiJAMe;$s9Mv4=Qdf(l zncOsNvSmf9$P*O;t3QVyi*Y6Af_*iX;^>SzNU(Z(HP_aAr(BauE2+>f(bfw?D8v(% z7T)>c#X>6DF}DRhgd-kc5NQxF$qCZvt34-sQH!Ksam>1a_zuK2@$S@0Geq|A%V4Pa z&B7Rv5*aQ%X2*)vWVr<7!8jFS5vt+h-4PG>3HzKFFd1dY?Zq62dr)6^SCtsy0VQ2X zu17$}PO<}7n(jBy;j*cjZ@brG#SbbwvYd&jrdLN39NH9$~j{n)! zrDP&F%i0d1el3}f{M<>33tq2Oc&kr0f(B@7$)QxDy5Gk3w@^*Zm-i2e0@|MC5kdIb za6M%EPbh~N0g0|gI8|{i-r*SksusvO20emhR89X`WS?3H4adpLZ^Eh8A=%;X#2`-m zzH13UYf`mmdEW)#UZi7<>SP9yU`H-NI&OhrLwU&>kbjlN0yw4BI|lO+tSWSc_8d)l zG#e+qn?675Ss6JRLK%SYeAP_J%}T3CCv|sA*k*_tmYY)Bnl6z%$extK!+94Vr)hd1 z)=$7LpAYm}7;SY4m3B5H_)qHPKp6oR#!M+A;NQm$)^YsVIr;3>LHSKDgRW#N7o=Wm zoaoUR&AfBPR_FZ|Tx-W))NJF9{a&?mOnT4r=D9k#s}r$gjGdnz8p?pdlZim&vd8TG zM9}qptbHlA+%$J#w5msP8~++CR8L`2FOMTQ#*F&4d85{bHeufCAP-^J#Thcz?b|PJ zVUG^N#Rc3stGoWF+Lfb!~s6DQRG68y)fTj?--LIk#p|%iC@Og)l-vC(7zR- z4=5;fQ#{@Pth)0PXXHDAw3gM8V?0x`N~i?QU-MEd?5gA* zf$_aR|L}#???2wtY72>9>$=`xd2OgM%?CaVc?5s8WvLz&JZ4ACZp$U&g$>tjyCKJ9 zexP$7PJUMkb3O3;1%!_)U>n%pU8>zbJ{yK)M855LsGlLw?k@u zec0frz?7_2ep!r7dI$W*A?B+^x(JwBAu5K!Wh_y7&A@J=OYuQU<_GMU^Xtk~!EG}o zU&*HlF8kwNDyTQi2|>l}}0QZZ58we-BRdZ&p3df4Vhl83Gq6rbLsnTPfXp!w3gx>%Mhs3^2Pr-LDCYa1z zRvV%H7R0_|$v^a9h|CK=fe;Np!d-=`M_=<#BZrTaF1wFDlV*Kod+i&}6-#3hjx>h3 z^9{ok;FmK4O2`P=C48SLdI-ODW68`NA;!#AyvXZsVH1@+-h8U4+asX82=i= zvoJZod5}H1yA-#BF(GnjO|}4-bBF^bUFL`4+;nB()$QN(P=w>JHybgX%HC^GaIT*1 z=f#n7zSJ;%(6T;W<5_NAwVw*}f)qYM@71lPe@2C2fjOy-oSMp?OZ-EQX(X$3F$g$p zodX76@ydX(#Z3p3MByd+b%=7oQhTfia*|N>Ad@OPCH%Npz$MT!=<6xX6XaouOn>bU2%7BrGpNfAGI-=Uu zj6SiLHt2qd^j>2~q(t}(s7d>)dDDpCIMQD#TxLiJnjSAbabK4)_-fC+eu2o?41kXT z+eGM5DyDs$9O|zYp4W({3Ybdf`|RA->rI>uGZBk-h4c_{URuhtw72B17gF0dwCP`7 zey^>%Y9~~&$gMKcSt)^W9Xm1~)nMmBWlWW|c26E73g9kCD$9u*?2*!Q{A0WAK{^tX!)}GWN629)JCV{%px7PsRlmg9(@L!NI0Qu4FL_&v6 zcKNHB%h^mR=O}++DLz=4wgOz6I~~{%ZmZk{bx<@cAz#6cK>@7~WQdI!M~2|VqeA&I zbUdosmD~qJZG0TL9%c~XX~M-w1yl)5in>g`Y+EJU#Erxz;zRAycHV<;+}Nk0uR!(# zQJu6$->>Jm1Yka7^k*UxZXbIWCLn<| zP%Gp9>Xo7M*%5ZqA(@ZZa}VWky(Mlv{$8(IA@o7%3UcJ)v`Rxi>vC8Oc}lraz-(lEBn9^KTJbTo1uTSqlITgvy@miFHWU z_zfp#frH5(qPi1Pxi}7wek54i3lthq9hgSvt zVe$+9={O)SFynd|d<^)*P1Anj#z96fSW8+aLSmGm9+&CL8VZT-SgF=d$~mGDPYM_* z<@kcD7@`a6Up;gdPa9}3X)W!;nFhTnxm=ezz;6%LDa_%G1>8OJGHEV0>jU7HfDQE|k< za2)A#p*GYPRhZIYfS7Lq$s4d)*JmC9r}XO5`2M3ECYlmg=n6J2(9JZs&TIf6VBO^V z0EGdkAb0KkOh2_^DUEBtnday!eB016pUcjD)~)cks$DRlr`UF@szQ?5v+((mB;+U= z)raEHRsH06lxK4IlZw54#QZkd50S9f{D6%bLjJ#wSvN?LL!@+reC>dp(_7#h+#Hx-|R|Yz2Ecn zpP+o!o1G33s+O191{oLzi3PM|pvnFCla`2Naptq=4sgJaK8G9jQZ;9Jj7^Z^mZ%k~ zn{X;4U}XRCM3Ws$euARmB5=PwoSx*Dy9(b*PbeCJl4|wivhi`y8 zM5lUOSA7MzKrTf$o2Qf!M*~xMCBpv#g9E zl$Pubq96taOa%_2s60vi4v+?1m1dWC;{KsjNss;67NPu+tmWgDxrMIxKWBFNYr?Su z^BQ&EyTQ$1Q04zb$~nciN9W(tyrnQbl^6>%@hm&mP-WI6$NyYCbh1R<1Qs$6LksGd zFy$A-=Sc-S-o z!@wuFzECHI47cyR=2|~vmp(K62UOgl7YM{KGN9Pz4F+L8F*A~hO%lZLXGxF!>)E@Y zhh50-Omg&V&Gd8C@-1k15=Ix{h%9eQz*3p;8?B!!=@JKJJ78Y3q>@#@!MK-iLm8Iy zB~S}SZ-WE|Lg-iE@r*2l2u#M~v_QAU$#6#%Z?fPnxTvA=c+6fL14UFvZ~v?Pip{1g z3o_K)=FfwnQYeAwU~tVI*xQC!(oPy}Ar+p|R6p8~z&^#tXgupCtpn$E{|#X%gCh{L zWcgK4W=ssTPa^$goCIw`AmJHHPLVEyF)t}68H&waBY-qjeBg0Q;;OGLgy1` z+cv^835Gd2C$*B*I+iox1JyUw5qaI!qKz6~noi>wg5G+(`6i@AR4q!_7O+(&Db{7V z5KVFNEks=@K1Ru0p(`6MjsYShTnZPkuB5GvdxS>RINpAh?PkgNAQcQ0xxj&Kml2>f zIFPXif;l;BG0c6O>zVko50KlVaGbKw(80!#K{P@ygjtIQn1AD>X<>YEVktgDshA{4 z(TJzPkcTRlv$Aln*`|W5K4WzmnZ|<0Yf~S(cNf%H5jm?y^WT!YI-WC;h|EbCk1~U# z;pxz&8AKcKqD}mTR9VB-Ibh&vWjdI^RV9--D3@TaKq>DEu&tORTO46bE{&!azfK1vU$kbsi9 zOTb#)?MUE4?&#FZGF?Qhe468Or&-hYos;_(I@KKN)55ye{Fr8<#1WV_COt&BV{nx) zO_KmspIDd{1Z&zZ9R!`*t{UdFOxg}fOB$uLefV2=}IoKz9{Zz(59!-Nw?RE-jDH046CmxgN!8Z%a-F-SDkaX~J*ji!!I zXodG+mTkI1mD1sdZ=TNO}8i|_YR0v3;d1p2~_c0s~K#5g;vXyHhVnQv{ z!US5F&T#?HN1g5j=YVgi&nro4UsR1zDCo;6<5v_!klV$h%QGtJxYy3d4R_xt;U zrfFWz`JD6l+}C|w*L{D|Zl_(_8;*u(!QVm+wawXII0#>ahf6w_6pTBY84Ai6ewdfP zUh^6V-tg4JkZ(Ch_qmPk;#k43K|dJ9hDvQYWJ&V&{M^)sH+M`JIAjJNanEZXUVQzk zw%qd5ioy7^AQYciAR2u(^M`$Ips+bVvOgA9;m<2Q;0=$P&i=srU%liOl?g2Lh3jvn z2dp9jyrlBi1o{H7xLd>e8>31k|0`P&{H3MY{b6Z_PrCf6)h*HC7eGUYdh3qSS;Or% zwxYvpoUiJ1j%Lb}VfulpV0FAW3%;<1JG;46(Rw?`P>>kW9#yRhl>PS$H@iTGO{Mxq5on{O81ASjV|mTJ zxYZbfMe=C}o78rEuWCo*rz`WfrfI#(I?KZ6R}5ZrzOCfIokYH?m26*lkyBDmM$t~U z@@fA4I6=oaQwc@|w3jqG*`S@%o?2=nB<% z>UskUx-c?}9_5qn?W@#;N9T1dT7Gvau8FEuXfb~(So>(L)q&Xb(6(pCYW7QdVtFsR z%lp#PlQ`U<(zGA@ZN$1iXe(;YW@Ij<~j zCGJ3I7gi*ig`9!RRTlw;aTC$2wL`Nj^+z9#=3NGr5V=G<3}v-=Q8XT@tKDOs%oKbE zN4P^^gdJ&_JQ^9F@n>@w+==anzrqIuDytvh88mRH3UL6dx9pzh)(&-?IO|r`bepLM zBdqW~K;T;r#!<3-D&0HSyHv^IFSDe~d|ek;yueoSkTZZCSwFsC9Vxk6D6w8VJ|PNu zq}24=_sEl)H9vRsVUBkc{(4Jg`RCs7xaq$~_e{Fk6^yh=lW_x&@xEnei#SOqgElkc zc$YoHMB7B$5~>VCj6+nJ`iV3z)0QCFGrbz`T(2_h6U}}vj9GA^4e!jbLC_qFaMJxP zn4L%Y6}JDmvVy@YF_C?(Wc6TKZWF_|(M$o@X$BYdHjf@p5BV*+o( zFy3X%@4AGB7UZeci`yRN(o8OJrm4QAkh^T!`GHA=N9vd04{_7SJ~6(l#UD1TAH#4u zMSJu|>YJ_eF}>--=#*P)^*#5Mcs<)xw+>76odEixycU#Op4G-pNB-Kt;B+h_wYTl$ zTk`c!lHJfjQ;+BS7dT_4dUCun=u==2OBgF0%e#yTELRmBpyyyvc9*Cs3!I@XE>k^o z-H)TazqsQ(WYgKDRw-fmr;KAzkH@~BrY&C9Xq~@SJ^$D8a(oLKvFan1A?@b)@+V_z ziX1n_1=r?aSwYJ5l6YQsGsY|h?q~}Y&-Bj@#jKNvEyn+rla$xdYG<(+bMNA}Pp2&? zIT0)BwYZFLo5YNBc0%Fd?WtX3I=2gLF^!tG9Jmue!-Zk`7m?-kJBq~dCt+ZIlpd2d95bhl04QI z=RO^cGi{3ONPxR$H07&Nj~=?_uYJCowfm(cVJ?q-lGP-f4|@>;B(gtysUMXBh&&ae zEfqR5Y|GhXJ`ik;Moif5+J>r#1x~9clC1dKy)HaV%H zKd{C)mfE7yQx{H$^UKeNtQmAVbQWi`kJ6T`44W?VnRqsak~0M#{JJPL4xL!66!jnR zkLg2upyQmdNAVXS7A6S$DpT?>g9CaS)C?6wvZ-2_A=};88i_YS3K$Z_n~CXu z^0_b}6?snA_lARQKiLrS*NX>aQi5I-yq}HiSgt6vBlhD5!^ZaM{K+wr|Lczpu#O}C zTL54HET_ni6G-R@^Z}Ice}5#s>jU!1?jyWFxZ{R_^MXn2-kD<8!=026S-A4 zS{pU_nyb}Tk*Y1yhOXUN*2UM`1g_#NfpNh}FHHa@%xOob^3)T#VTk**vPh+XUdLjm zeSPzpJ7(31OW~&zo;5ykGW4)>Iq80`WBsbikhHrc+^~C|`|u&K)4Kr|G-*7}>Zc=e zM#I?eeok`^@FsyLoYwM4!S|Y+sawgQZG!Ewb6zQ!?8E?Bg{*pG$CJe!xBF|3dCO^mnWL6t5XB`ln677A}L zNtxk(LU;84NaT9~gu%!Id3s*hG)~fK1SZ^hxH`B9rvYf0rRUS-?;s8iVF*YBe=GU} zf$aW+&Z+I$QMeH87gOYG^?yiZArnmCU_u+$_9bGtU5dsbIgDfdh6KYz-=`bwdEfke z=%;;dnRg7%CxMWcuaw(ML&hAV^Fy8z(;t041bd^A1-_Cf^h3=9YV2u^6s8;s(oJN& zB|@8_Epu#_)9QaR$f|f{B9Cq%1uwu9$VIdLPg+puMUZF8uoV9IJ{#nlwhWMlb|U~d zL0a`=fQK7G&fvr7Bk*`5Iy|oQU_TL1LpP`UF&G`6^9dqbZ_LQg2!MPl>jNJvmH|J0 z^5%|SObTat!WaMFg~&7Gg`G<98EAcyP1O;h;$@J>=txCr$RZ?P;*oaV^#H>}l=z6Y zo$Nk1(LS6A;-jW*62=za-_B#Ftp&QB??Y5@l;!vO#B|hvULo`NBEh zPQe|c3f9GoxfT@W4c8*ZBS0hC({GrN)>oA=p~hJOrf83YN7Ows8e7W=1}ACPOLije z0S8$|V!{Ht7dXd;s8=!D+X`G5JaP=)fxkcbDWV$_;X218)R)?x8RAsldLf;l0KVyX zLlowrJJu(cvFF#S9RSdi5&!XBw*kn%XlxWrr|^!KIo1niGkDyiMS=N;8CG~c1h?!2 z3igHPv!v+RTe|GTp{AlaA(!#NApe=n!slCv-Wd)r@CLM1bT!M9+P-#r{=JRa6W*-r zPx9zs(W6ITcOr~O$`u!T^$L|7CuER^@|F7CSi(V2n4-K-$qjRel;`hoE9Jny}bR#gn=RUo-5!Y zkSbj%fy}Q5`jO5A}y@%1|%NBL6ah*sCJ4j=%he;wz9MtiB1 zs-;UiS2DUfhc?+s{Yc|3yLb({;I5BQtv8FP9%e~p{MZ*_KVk*ldF4s!^xv?uW51q} zSa(o60Mg=vvpL;}U>QKoX8;W_KP16+izS%@57fa0t; za@amwQjOjS`#LSU){1O_3zevF!s_)3J8XF+&%-Tt0S^D*cNM&G#<$V%B`_5NcM$5* zSV$@PhD45u7uNqBya>#|izk;XAtWv-dE|VXHQq=oAeKCD|C2w!WEF~n$wm1+k@Cz0 zlz4>zh$R5w@CpFz_&;I8#?qKyUI2%eZ`=BJ*uXZ>1r)*UiG>nO1o0g|+@dNzy!zQi zB6ShL(B#&i;DZT7RDv}8FIY%%HY?f1%d7`vbXRYh732IDRTQuCU345#tO8~by^W5$ zeNsf(1OPf8%sLfh^n_FNP-S(4?p}IiXxl7-kl+Ow05yf&&@kn?hgT-n30mD~&5_G5 zR3|zxv_hTqR5URBrm9@ICg3@*tnV?evtKuB}a@F46omaCO&o9z*WRyGy&4R!Y>D|7@G8UrJw7usVnluE~9KdwF z)0kDZas$7mLE%`tA+Vpnq#OxMgT^DjVeOb zij@g*l{jCnQh_PU>nu%H9$pCI2p5sr4~piXg`)1<fhK0(>&(jodBvg`}wJzC6r*@9F(-~k4kXj7Lskk zvTVxxPv4z|$%U_=JqEqUR6py6862_%(qq6955#T&3kzH{-Zu!=hLM2cFAxa4aMoCX ziB>>F5wN&J**d5+eN*ku01p_#aU{Lz(4mJc(nbUNQA>eBl9 zzmc-aSI&2=hUKudLV8X}W*GqlSo}7M(<$tMnkt&Tn1(nm3*_x1o^bU8d6y5#r#U3C zJON)7z@Hp-30zgt-522FD8R>4p(pP$a0fQjt_4+qU|wNp&%F)w&%1mH8G(n+3QWp? zB;pC9)i%L9&hs`*VkoxPB{sywO*BERqj!T@Ig77v^g>Qy68>4xE8Fo4Tc_sdZk z%(4RxluQ#mB5nb32CxHY49zMvCWu7S(RzhopRKn3q6tF)zvsk0cK{F3Qs0QQo8>bg z*_t9PA+^sN|HT@{(&GBbgiC-R39Y%AQA@#QwhnPR;eM;dVb_$0;j-0HW(@*n1c=p9 z4A>gpWNSJz>5Cr=}g zKr{RRED3GhTc!yFNFq)GD>0UsJ@WnSj?4@&8~*lKbHWC|AsSQ~WB;1v)Ld;dG8y}< zjL@JsrN+Jl)RQ2u*p5I)Kvc#^SAhO?Mt?N#z`qsP{UY}z)s+!j2BALZf9AjgFv9ecIHa z*(Eith+j4=kBpxuiLxSP1LLw#I&NMVaqXmqSd8-xvp}f?D1VHoREm6?0i_4Mqfb)P zGdplsDDz+2F$A-fLB0Hq)}_F6Ct=v7iNsJXPw5 zi-?!c#A=3%aC>3Fz?X=Ga`kfqvo8UW-~u35$C@T!ujg6UX;w+#HstE&TJ$gjQG0}e zrC~r=UZ?t4juV$86=)$q92M~!__)o^Y=`5`CJ;HmXqz2&DZ6LoV) zm!S3|+EkP!_fegfKgmYB@AIl$=0<#9-p8N=Ywl_T5z_^q(Pw}KCE0?-7f--x@P08V zAsM3CcxfKqZ2|m<%LizjR97#_Qe`N8P$It$cuOhS5 zHs`MY8;w?ui@jd;r_4n4RL#b{mZaUN@LOGOfW4vLZn}a1oyC}A~FMFb1 zF%o>iHUZ%B;Gx%dE6;QHSMA4=89A)W0jPO3FaTkF$IJVCubn@@2StMECF6 zhDZ^$af`CDrI_>JURsD0frAa&#Cos+G^|eh4*$>jZSe`gJFvoK-qrUc*g}*e(u0kh z2QouCRL0dTmPvRtG@!4s*fts(M&m{z?csMDjd%md{}H_cT4N(61)HEuM4=H$2^|4c zj8w|tcTAOvTOM7AVykn%DIldGXi1=gnM z*?5eb>bzD~-p=bU_0bLO1$qONQ1E1biSb;3_P}nK06RNn}JXzyrfX+|}=Y4ML)uo{(Zo*flZ`olPNFTxlnQ z86Yj3yNL%|_`v>bcZ91Pp&7=txP9;%?KE2?IOcUgwkEp@jDRdp$j}`Ncj)`2lHF=m zf8$RiU=1+drsali{MY;)+2$6pEU2c>vPyLDwNG0ksAAi9}qgw5QbjKUFZa4nv}7UHnr?)_o1~vV+R%AJ4`Bte^G}jRCM| zcpNJb;uW*ExjCK`r6UHc%xwNjpMaY;MUKkRa}2__%haI}w#E0Z`B^$Uc>`-4%&A`N z>1mM^kk|+1Pk1$I(0yFsp>!JQ8^x9!+e?>r)3N3N-+Xur+0JC3d#NW&5 zcValA^`!6jD~{HyXqYq56K5DRX*sW|TlhyFq|n`n?&}(RFO@oQAY;9FFC8QWm=I9+ z|EZV=RR|P^RWUKO&=q$i35-h!L*QQ4Jh?>IraOC*N;h;ap^-N|-Lu%_jZnrQSTYNq zr!TuF8HCA>k=`8Vgf&@xYic)|yStgYbRu7jxK*1e8HkVy2zNpgZh;|Rgs+iz3LL7O=NCi2naPy?<8XA;vc&O*XW)t*+1zpH9T z(%*+6RKao*q&1QDYRe+elC+f|fs8|xhD+cj8sH|d9Vsrkr8^r(wh2%Hhra_8;gKQ_ zUx{{ebld>AJ;}rAK~)o!&F_RMg12g_O`!U0q@ScwYs&Yfw?i63 zfNhA@AVnc~{}8|q)+a$ofm{$k2e2DuVxlp11TBh6bFMxiD^H4Q=M(D7)v@B#!(f#Vs=E$=c~Fcd2e zW%MxRt0<2mkU&<5MR3sLkIa5K3aBl}0fEGof)U=ZF6>^?dDIYL0k)=EPWmfh5ZrU@ zQy`6;qOYGv`v$EyKLliQF#;)p4!po-fON&gY5kJuJMb)B?!VfJaHdaXl5SNgHems= z7zcI%$3-zt)Rjfy}Sv#~^@uB8ioGpxOy^K|nu$ z(Oa12?!bi2$WxqVa#tavUu>h@8O&8$g!kjII{>jtT3v zde=1By}Qz7XymlU5*s3vdxc$-@E?uXR}vB_L`NHxEDZjQKgXZ@VOL7wk*o)i`ty9A zMdYcjx2b2{$J{9CrF09Xhs@(QetCSnCFa(T=?|CtHOnsKS~$Z;in2LxvU6+f?QZN1 z+^^!<7T>jbzjfLIMdsIWzC2;&_~j$jTSC-ZvOW0xIx{zt;0GJehi2?rp|h95!7DT= zTX#az9Mb-8yQ1y>g3BnPI{&;RQ}Vn7^*S!H0F(fL^g5uPybC^?o|Z`2vqvKFPy2-2 z0b9ZLulpLrCC?s6dN;faJlYZ()?oQ8K04C5LV!stwH?L&P~x}6;f60(@$S8qR4*(G z5U&+xVWU<-VsXW^9!a?g=gm82NV#U_OVJMaPeo&t+=>)5nUtgpK0`ZOk%J<8lz6u8 zICa7Qx6CUEYmVsrLSLn>w|P=)UiUZS6+9kE#aA#W@DJuchW8^`lf{<2{~M>3Hdkk} z6QTv@qZD}r4A<E1+bD8fK;#_qrIKmP&R`M-u=57}K$(%70nzt zDBWPiz&AB+%@loKrY@?rBu+@lwW2ci{$fongA|iyM`NUBDvSW)F7*Grs}DNqX*j?T z&=m-gZ^Alof#ApxuJrV_TzO>2)SxL{y`4S|ii(Cp0K)&tJx=6u`E@2wE1RX%A-WuB z%<>JVX69o7ODe8)scHfZE@*xwTV1nXGKynYw0GO>@KYWMeOvR@r+?$y$b1lvXgib7 zW&cu59W+F?g%&83znZHuyg_CvfN?WPP0%Ib0Cl1e$-$N;OAs!rGu6HDCkCWH%U0kq z;Ga#1Y954YV{yy`X9imK!jlaq6vC=T`@#|8o#OTB76eeb{j5(fwIEGpiSzpxs`c-( z3B`XJ;b{pCSKJ{fYe<-Pfj0mL^bW+UIA@d~oMDBk`=>!Vq#@lshQJ%PJ#orJU#m|c z7>Jwl_eO6Wa_mC$gH9WZaV<_(bHv#uJXd6)ail^cSFwNU^*TSDE$aq; zz3JI6oL6mj(J9kpN{ z9|#;ULfA29#SH|EP0Yh#NFx;d^DpY=w0da6VTxd-jbyM4AdBdNS}Z1TfCFPdKq}7? zI>FpB?!qhR%nIHeOI8b94zgO?g8i<8+AbQV7X`yvz5lMX;e6ksD&d*HKg8+l4nd_IV%^1Og$i<>YxvKTy#K z`ynFp5|(n9(wQzyLuLX^vjqt|8_Mrf+{Q2Mn~3q|pxY!ef3jP8EHF$WRDcbz%b7f) zI!-01mx3c#L=h{OwWu7p;K5?eR7_dLCUAkHOg09h!)?zvamy(UAxo!3ohCuY7{Fs2 zdt?wjsO*jvD3G~d0O)W;CU1Se6y{L+c6^$06XhQSY)A*`+~;*^j~q)dcDnIFq|4X~ zR0#z74+c1E^W1jE3wzdJDpzIuK!`1(B=G&fvl+TdWf6IOW-Ib&cs5x>A{lBhtYpI! z0w38XcwPAb3B_&q3d%81QHs26bXNpiSZNk8ZU^E@v+-Y|8`E07I+IP-CZ|?>QQ{R@ zGV{Ld!hE7RmQK`JIg7LA*m!NtTXH1_7-1-Dgap~UNcgSh*#ZXYz=Ca1TF_dyAM;bD z#r?k;(nr9lkPHNO(J(p3BViu1Ccef2;z^?*rJ`T8q@sCJ(3B}w#n&FIPy{EPR}2nv z{?s|Bf95~WC~BzTj-vGJAF87`-IwzPy_5@vrwVd+Dq&x;J|zYk01P*#5?4*rpM?NI1#rKSH{1g+N`jQXGUBaU9jLA?Mg+Xlw2QOZ7**fDyJsN;DaW7!QPJ{Um%j8 z42KLNjCo=+!Hh5Dm9pJ2*kU~B4Qz?yQC1l~nnUh&lk6Z)hHMF8c@Quy3C#G34#!X& zkiL?J09}tB!BI_Po$+(i5TF6lE6A@#KNpIdG`B&OGvLaXCn)ZG`_%Dx12->=U2c)} z{<>B4{l0K4S9lh^2ia(D1<`Lc0(IZw3+=h2QBcLji9^e-U?3WV0{ng9ZRv29ONpK`6q2EP-`@z_Ebz^kc-0 zBO-m`Q5nC%607HQVoh3Epx$)mMOf9r1rnKKl7Wh z8=VEAA#gwBkU-sqFT>Yt&u!8KAYBAE16{D*3WMrS%O#OCs7sI!dvs+Y3Nre`PYDsD zu;po-kO0&Lzf0R9V`nNnJPzPB!lV;!b~tBz*KofnR7O7HR>uxKvF>FcvZ`3 zgmsJH4)*=tbbTuKEpJdMplL8EHaA5myFCzX#ZU|X7q!*onjB&CG&XJxMR!zVfP%lm zQt()KVTOzoP72HZ<8&p9g|7Zibu;isZ@|Z)Yi*xuN9|fX#PEZ(`2&jp;pJD_wJJ~s4mYLpV0T#b%zCQiSHPLG2Bw%0O&{n z->+s`m;Y-E>Px`PX0x0_7K*H&;7N>(mLF215}_}75o2h9wS~8ranINLva$W+F|1z# z6aoyXJ2^LDa1ex+#!M;d=vVN+bIsY8loOoE@=dx}ax<{a4dFb-41M^2J;{@#r%T*y|54i%}@y#SasAHCToB#s`^M$i2JP4 zWEDtzOgci^%5Dt;rt3%v75=|eAV7mO2&=OMR;*!;#-B2Linyu7Ph7!`gq0K!#s^fN z$FM#Q{@6{r;9S?6`v?7(=V+F-N!Us=w&&4{Yzua9RGRD86v{UbKBmp9CvAdv85YV0 zu6nOeUcZqI4r`083{26e{%R5hSFAE9c=k9&qf40Nw}nqQBc2n77s zoG)Qs$iwq>ZQZjGM*4GsZHcq!CSx;`NlI@}?U|I12q8P{g!kc@j^cS<+aY`oYcaZS z?IAH%l0eZK8)`i0fekC=PESh-I*_7%fd||eh^*2lOy1YK*9}8^Lpq$#0P#SQX%%@||`Fs5ohx7A{ zM{w4kjde)jw62JicuMD?VAE4Qp4eYhIw#Y~8Ae*#)6tTSzBGF`cw|3-Dl3LUgO;#F$2&|yyQtg$fYY{^PeYDrSs~*#H9$8WPvLCT zq`Mf7?-$vk(%@}mJ3gZfhf32vg#D)4!8qJB)8`{?X*}B&5 ztJ(OjBKu1a7o!FshKr`5(~Z={a6Lsdj6U$4Qsuv+z9E<8KNPOpzS{N}9ftozK3-o& z22SdxSSN6W^q)i(kYk_ddy$T&RNikXvR>NChuuGp?EYn*T)2XxwZm>hnx%U;&2Wh& zV#k8OYT#n|4=ULPdmdo?rOn(X#2?ZNVBxodsC{f&GKLv-FuRBPCiY{XBYo=4&m|Ju zqZ9hLXfbes>$!V7^-U3Q=r2u?ue<&T8|6V{m$s08xST zXb0@T@cW*GClk_u(}uf~t=QxU@#fQtiKKn6ghll9p(YKoK6=QG-!r=c=S5UolGkuU zj@OwIa|+%|k#1AKLL;TmKo&b~c$#jBoRn`D6+oXjc>C%iE5vD&+cXsZf=+dq<+!H7 zaDubO(9F87#lTPO`cGy6&dqtpin7QUipaI9DtPyRV-^ovjsX4GpyiW%CgO)R)q$gs ze#voDDZg32qQXcs-=6UTW(GqBjA2Ud3gj+-?uBI!2%IJDsWZcJr~kn$jq_of5DKXi zJGcko^|h$ga^p@Mq3!UKQ1-zAGzbpJzmU-*i^W%9e;bVsYau}nh zIC_GTN6a9j4GoZYBI!;eC=(4h$>bTX4vnlvTUq=PSJWe+qF(kgsa}W)-3uNxrQ5k2 zvhXp8oipiUHr?#vq8<>!o+(x%FS-IJzhNVM+)QSTU^Xdv(3qf{AY!rK(Vb!^!|P)D z{Ovdr!rcfw@PtmU$e|^kIq9YBS+}lw5sLYeIS(Q`&eJdSiSYXC-FcTWFIyB*?02vS zg4x-=DTuEg$oM`%p+Q1L)&pzG69LG{!x#OV!ILUJM;O-8Jp8G2MQiN1xwLq{>Sh#S zUTYI#YM=#O!*CXa4xA;}y+-DB5h7hsf^BAf!duv#r5?mR)-NP3Z4W2shXmA>Qy#s^ z(NRCJc4%a%u@8faiApL=f~|_mqM?J#sB1r^B~t+mj_tW*c!I(y+Cvhw2V4a;3z6J_ zi~luQ#3<&XTPgndE%`QquC1IIi$V6}hPukBFKcaBYJo1R{eYvX&dLO*^XgY=sT2^^ zE;++aijpf==dE2kBnhJfXO8$_(mu9A5>wY9DbPs~hs<0sefuqmjW@;9MDYJJ8U>Ie1XiCGer%DD&@gy>al-^3CXtKye*iF`&za$~>rWcG0@- zD{Ne8Zi=&hnNzdX3X(nQEI(Z}N|r3`jX#%4#Q5gn{n2Q{2iOKvE_(#|+y#bGkao3? z|5kPT#!5DJj15}^1W|IJ?B9wkKgjY3>l*spA4r+s6L&2&Z0ev~o+jJ8BHV|S zH_bZvXzFEP#w`YL#_D^S)L;n4?pRA$v1ZKjYgZNNUlG|(6R0jPz1 zWTqMUus3#ge)D%W+=D8#zzqJJBGOP)haUlPk)!z?VfaO5!o7wFNK?1T69}Tif_f+b z#av>UH^r)tQWj>1CN!?2rvZ9M%TE?1(b!`&OZ4;~hBSD`iEY)PxJnlhosaAbCs0o) z{lq>uk`n-dpoF6GXFOF-gTtuQlj3lrYExX%a#$@UipH#@f(@jVB~206?*!OOe<-CW zPJIx5h2y^UG_9t=J0Q8+A!Q;y<4O*)n`4wxBgc&2;P_MK4`qX~22`+hidzp|ss&%k zrkwNWSqv{U@pBLvV7?sb>vlZ-2RLwiQ0@T`T~zw^5A#t({1tl}-$pw6MopT&!hB`0 z!QK`+KN#WQDh0avy|UW+d+KV2?QD{$&4jR7LuR+LL2!|x>?FP~szPBPNl;8d7CjK7 z26BQ_Ul7=c>^^6~O|afSwwMp6M>O@>%;`|(uqvVs3a4xRec51fa^A1Vy>T0%`)SyF zQQzTYXals#$I~soFJ0mEG0|q!oarFwTeAh@i#Op3Tj3k~`0+$aevz}o&_{VL432fk zmkE5p!pBxH+ESw=9`&9>F}KPBEe^Wt7dbaC6-t_X)*-qJ(3FS>cq$QO?R+n zbQuD=4||`rji0ANO(09Kll;!wsKw=oZfrj>f( z0vj>wpta%Dh1dgYE9@txq`ZPYbx)YU7iAC)T*m!0MEzgOMECKbi7!JrK64*j!}x*K z95az;iAiHF7LvPHpNI1@EAI6uSwLw+{Gxj1)Vp^XF9Hsv@`pwv2D`U~O}^ zt~XkkzU)}JG6Jn7ExijC+mw9$S`)A~9}l6<-Rw&5vhh-1;OT*AWZ8+Gi~qpJ+6Ch* zgFBnu80vX~dImVMMuW#i6mpQhmw36M-S0q$UFb?xLwgtm?NzDs3gk!waKIG(WFl@G2^d1$%Z28A`@CNQMaSjo}YNk>`K`ucb6D_zmI-<*3MMU&_!!xM?xttPpoP%~fE+fjpOhyIugWq!$}&91-s@hvey_%!=V+D! z8GDzCz5yh~js%;@rjIT&+c_WcYq3)9Lw3mdBxurEElRY)+E>Y}ciyi973p&pw_d_n zgB9-=)O7bl_&z)b^2|t~BeH7ig^(1A?n>b(M0E_EEBX0^&|56#Ft8VZd;`q6r41>z zbrF}eHsnTcfpFx5v;}No2CVO|eUb@thkRxo>Fewp&9aONGf^zKhY6QZqa%{`(1}hc^U6|Z%|ci3QNe>S z;lcW+vgm|21>Hismo9$#<|vuq)y_Y^h-}Qrd1ESB4Sy~L=Nt%g6rvO+I_o)u8pL|b zKx>|+TFvgCSa;>iP|L+h0!gz3Q4EGPs;X1w6vD^{g9*azIs%N7q%)CDu>p!DH-Y;p zd`WMWgh*Vkztm%-)u?`DO&RYFo_!@K>S@j}sPYs6I2lmne5idpzUqZt_-~<{??J}HDus* z!BiT@EkUP7Y%l1G;j1d-6m8!?7jmytL)2J4!d%?ACLyc})3)SnMaPQi{ zC>Grp&5a_lG$3?AFh31_jSRH`r8#8PqvRbWbB;;iIFxlgGHc>zQN#mRvJ5f@-i*@e z(O4{KO93C_0^ha`gD|T5V|iuZns0lmKO-GVN06*FcBOnKmTq>4QEfO3>jV`ZMy+am ziol7iiLMaw8z?rs2mrw3043BIM;+~GLmPZLI2+p4{Dfalj-nGR5g!Rn&a~-(a&1u99D~$3T7fDT(eqBobtq zg_)aL>S?A78U=X`pbdEJ{|6Wfd$HUc+tE2{g{gxkTau!S{T*eaks#u2Q{=ZyZM!mo z@dEv;h#&wl;)*57~=)*80df~ z1h_2hP_4mo9LM_wcmYm4U$+m$vnb*`UYdtC2h+P(3EV|#A5+{mOC__- zOL{~LOqig8-2?TiiCHHnfnlVnLa?u$i}(cE7!Xqcg`lr=X3(v@F9~+GQBXH*AQfNo zS~(%C2-vKdEj8TZUV@HBtoX0Vz(KNY6+$K)N6|OFM~CM5GYkGlngUe$w_h)y9B77g zc$?V5L)zj<@&$Dwy=LG~nIsR;Z9|3lQ)Wc}(8Mhse2!HyL+f9cI{Cm5&89)gkh>_8C00S^{L3IYpb$tE2DzHv0CsLLV2eo=}3brPB=jtEi~HZ z)g%6{PcPbr8{P~3^MS)HP-$k~<+N?%8(j9X%EjQ#sMj(CHQLNR28#EFS9F zJkTlO?rdg_M0Fi>i6U}mK0f8*C^UpUF-#rq=Eh4&Y4l@dMWs5`Ew8fl@PhJg|hYL?SKLvN~t0*x7`zp zwSXeYCyLs)rx$IcTke*fW`~`i*DGjXoM1*{ajw1CegUAnJHJj3rS_#r@+DZd)_H+BXBPBJUy7`dVUu-aJqxQqq>xbx0hYSn{XjmeL|QBm zs@aN(V+gf`(=qqq+#P){^ba2IC{2}90&0vi=j86Di$?O41~ z_>TaAJPQ0TYF_1Gw>$@;n*>Ph`Qjr@a8(aD_Fhw;lIL-sWF9RYyp_7%jP#vO9uJPQ8O5HU!_irZ+fr#nnS-HxFwCfkxgfy!j80Ta{D0ThV3R4 z3}dgw-VjXP>f*YT=r~1l7{&kn%?J%ee~boI4pW$ASRw62AzjHOJ(^24t^?V&=6u^s z*sXx}ZpqfUpYGTWzlv?riAyag^skPAQ2;m|U2iJZxlTKXu}0sKgHXB4ppSdxs`^4b z9u@O6Roe4D0%|nk1{DFVRK>uwduDen_X>&?u}@Db0;^^5>acpWlL#BI>S{J`0w1NW?jJaM^r{nZ%=4#RrlImQ4V{!bTDH46ri14U2or2 z!f_xnGi!|-pjbYAUUlp<8BrY<6_s{}n*v%3pO44Yt;KIYW~YaWI(Dymo;^GDdZw3p z2CfG`1dBZu2`6;p!5&X<+_tZ=o~GND-OQ?*_Q@(A?;QO3S+NB{nSpL&QKAo1eK57C zfR@j_0Ae1qbq@jEfMP9fAK5ejBD`cfv`^cOhll?eTgDm9ZLN_4gQ?O7fw}O z1mtf>s{w#(Fg>Do4;)V=sg-uk`9RGG00Y9@i!{?2L^OSA%tF8PV>qn@!@0U_%JO3R zOEa+KNdCA`6KBBA4PBO|{-m!K4&D&6g~RwIIb3Fw>%r&0RD(y=bpsVMh{MmkYD*e6 ziVeoovukLPKst^Mm}UpTen9nUSYmGj(V#803lOAe8>&Fqry(S6>V908UAp4MQ9%ZW zKyS_>n0E@}9e!Eo&366pqi;v!Mws1U+DApBN?|JQhZbMGOI_Wc72>J=i{?Az#$JEz z3Da;=D=^iloF9idKh+Jv79N2y-5RzFyF8`&(nYt=@G(XE7!=b{Ly|X3(65;_V=7E} zMG_QVO;Z^Q)9l9O87m%e#2)s5dAjx5L_7RqaSTN#FD#5BG5{Jea{o8#Gxh6dmzmDj0ny< zJfAO;ZFDhnE}k&wv0T}muvk51mFmKsx_Fh%MpVMqA?04RP7d+G6}09d8OchfDuZwf$a9dyb4rZ}j3#+iGT>ll*mB zAjPgAZr)I0q~Ax<_~c z;+@S;N5DC}5+O$Ftf<4`lG#OxIzMtzN{?WwvrbYvHUt#3*V%!pgH`LS-)z>H_G+(Y z>=wP2qzR2bt`Gx?(a<=U0=dC;0_yj(=IWA35ci>|?n_l%BT%_>EtO451jqz)Qsrh_ z4H^o~5_5x1f8KBf_p(kqSdsN{!DU)SVQ%q3$0a(rkMUpHM@YuoMg@OB`I~jli0}V;<8UqYjt)#U29#23{Y>>_;t$aF-vRQ=*cVGUeKc%BCeF3g z*0i^#S$UNCScEjZbk&Hy^VYpjP6K?}6pIuv2oN9!fI)!C#U*$xBx+zL0ygaW#mBi6 zL=NDY`=rdtk1igGv*m6^UJB=;?tF?dQsyO&yOx3-0O|7~ap!DdBfll|U;DsB3v$Lt z%^E@b(B2>2>vc!=t17MxYE|HheS|eCd*fR&uXME?4X}N)2RS=O0e^v1nL^3?HVg^2 z_XW-f{vU)H=Twe2vufSn+T8@NHOp*_v#G5%b!YRM!{06VEJa?9)g9Yqt_5q;3qLiWzErD{yvCv>M3 znNShZ5PRrC8~-VAO)(E#mS=-Yu<6rq+A0!FyZzuS9o|1FuKxk!SEf7oA?+8zH+`yM zIQAXdd|Hu-CKYA{s3HfmPZVu=mD*uPif36fbgtuZC^Q5zuQZGZ$~T7N;Jv=Z)x=PD z-*`UF^`GbhQ{>L}FQ{g-?P)p=n>*;T@VVGeIM|j!!-=pIQSL&t>qG9-PbMJvO6w!p z;T;K7;OWp((Qwl}_%5pHtOsEGbGirF!RJkxer<&~Bd(t%hys5z3(Vx#wskZKwd)6Z z8i$lm3du;Q67@BDz%}`i&VM}iDkJkEVUZ_4Wy@h(EEtDY$5ht{!SM(=B2e)N=}J6* zDmqA3MawmIth_MsB${;(w1<6vG4x6&?kp71VIcrIQ zn@3E>mxAs@gU)y8_)UG1rk=lvUnHYGi16s0YHn-69pl-aapg?sEK(}+(S zZm_XWK^AgtcEP78gm9;SykAgM5V=xbA_#51n|3-sZZ&?u*&)tCP5^s8s>wgvs(=$V zfC>UpFfvftdI_pXlV*irpcVAB*yoMl(2|?UJ?(>HX56avAJd9WC&5GoCi%CTNOvImc~edQXSc1cLt5|$9*=N@VDtcx$tepWN9fMfST zTkyBI;i$1k{nJ?eTj>c`{6GC=NAXshdUY#bH@)pb+An2P5W5lW#-k*)ZC!6WsrF=l z|M}_tAr%;g>O(>+U#Eok2-%FJrYO8`nQ;h8Si+c|kf=G^)Y$LF8!XbSs11tQWFm`e zzcfPZ<1DWJ!asjaOwYd|<|*cManJ5uYaVRBYbAV=opohu!Sj-u11elzUv2`&o66;M zfvNK4-a5aL3QI(H#;#D~nP>QJ@&ir4$u_pKQ#))-TSKft-57Vm-|!Z!SBX~S$AJg9 z@9%b3m#GeEhpv%m{RLYxx+V-%wk)`Ma#?;+#-%3<$u+$M*^m{op)#wdcyKVS{FG#f z1$GqSD^|dS>h-uWUvXzLwbTTp6bGi_t|@I!j#NB5h+_TM?_<&4ZH5yyPwKzX!pA9j z{yfLA&o&tPHT_?u3&wtX8q3qo_O&{E2j!YY`S}9fJ9dK0bFz<>4LfhcvQGhif6SLY zJuM!B>P^eVOARu#Wn0wm3(<_`cR;mtS=WCbWow;A? zbP;z$+U>KWmsg+Jzo_EnFaK#7sG6E!h)~y-CyvNA4ypg7dNpxO0J%Mj4=l}srWh#~ zt8bUrUzigdyQy+pi~Bm+Pc^sW-51@3R(4<=Bu9wyWQM|yhXG@5w zHhG!ot}@V1lAck}>YhAH6|Fsf4gyc?AGGky#DrdBq~p(p zJ@W>pWH&wmhE0Yd0x>8n&Uquw%^PrWE|f5#j5Y$Tk&W0Nn_Z2+Bv0-<;;83;TkV?2WIjB5sk!TlJ zfBYD_RuGPcAu&Cokdx#uc(#s!9d_W-VCv1QYSWK{pVBxE*z)$A5P0_OEy*NPKDmA; zGS9lU!Lhoxqy}0*Hl}e8eM_W#Ht6R z2Xc1*aP>T=5xp?`RpiqH z8OV{!QQYC~%#dUjuzp~K6w6mkwP9D5=&!r{_8XJ3_4nPtnQw<5C(;Y+6VL`@g`!iS zE&x%ixlWgpn1_##coeB!oE~O~(F)D6A3qI!td|^rzo2WLYaY$rHzhRV6!XP+FE-v4 zwwyOMa19N)UhO47uOWZ?(~14VUF$Esk(i|Jgr$K9%Uk#>$t9x#dE z!RCLoLd*4(VPUP1E zY0vTVs<`kc3I}y5EtA3u6f=FTSXkNB5n{v^Yj)V%QDU}#i=to%Y&q(n z6swkuPp~Ed?f4dKZH)Pyi7g@;9_K=BwUo}r77w}6@!Bz{XsY7b+*9|Te5$Z;-k53x z?xi2DI#U=opE(z{HzTjp-L9zf0|u7o)G%yQwPV_naK%xku23TD%M}h|ewYU}=<7r( zU1nt9Sa!gUs_y|-0lm%80Cxx2S=4jP;A8tek8|peo9`ZvksJ%+KgbXZ_x*6dW*6v| zIUzZf$LrTxCSgX`ceP5pewD@_qQ1xGIib@VqZ&wKX@KBc(#8~^Movvbn#MVAaPjku zO<={h%A|>iNUGuCB%VO0pEI zWWu32{y!eKTi(7YIkRT?9YNO`TkLAUU5eS9cKdxMGJa_p_G5xibaaMZ+^OB#yn^JSS|~kHoquJVK}4~+ z12=VIVz0*MeQ;eWW729|euFdltzXMU&WSxzw1;Zqc^F)ba&6A`DE{|t=YTYEr+r*H zDyQ{QO3j0fGY&d0c%EH6Zrb+e{ZZ}Y5Xhb3&%N6D>(Vba-JRpt@IaA_>a4DjPq3?n z)CU}967EoVT0Z7`A<(47jm7_P+mFKT0h79Nmxn0~gk{v*!ZI7r6^=xE0GS{t*F!#r zE9@JX*hJZG$DE=EbM7@`lyW7>W*c^KuP7SJUlk^FsivS?fIi1do0CO-0}}Hygg;jo zp{p|!`^2f87m!8K!lT9IA2BqP9|euF=MCRT+n!;jZ`q+n zBf`Fks>Ni&!*d*zLe7p8~E8lso99E$rsM{eBeb}aZC(KgVARZ8xa z)0MI4t}q27M%Gy*7ItexRS|I)uNP&k_#j*JNl0(dVbi`vZO;+}o6I`Hr@{MK6~peg zpt}_zUafNuj8YECR_|rN5%RY_ih>EojK1J$`bIkTkljA_`$a5_yAXC5-Q{%MPB zdY+%9&6gxrPORp~b*C1#5gKMi^O1GQvA0~J&X?N%mu^+Bmq3ec;M3pJqd zLb}{r!JAstu^oN^SL!iK4yq>_NyF8jGc4KO^WBY44#~atpbYA%LfTN2Fbi9R_H=qE z`$^JJdOAZUtmr7LTi2EyB`=g*Y-sQd5>*a;_E)<8L$X>A0toNPqznmT5fL=QX_%x^r@Fu^w%6>d!Y?svJ+|qyNUnxO1i;j^vir(f&Dzi$=dOsngf5 zUAy*?)bKgP^;596xiPR8o50PaagATe@6b8rEOgH~`+e!Cp*b8I^rK0@ zzJ~zsJWK350(K^avkm$tx&fheQq^6Reh8DMIlF32kPU4|ke<+<5z~2*8~uO$J0p7j zc~$0y|6<0kRWJQ9eL-K*l~s-W&i;vs;}}0d8SKxGA`aYn2iV>CaK#huv~8P9j-6R} zx1yq;CQP~GV0}MWVIp!8)Sh*Iz2MP$?*2t%mc^gdHdfE}gl*tzll_jIo%#FkmyieI z!Z|ul+uMYGKh3AJDo1eJ#mtj2qRh=r=~mR1gdKWhB0=CS*oJzzm9f7m)Y;OvYn66D zVUx_~J2scbmMOJ}^d-2V2P6TJi_}js-_u10-iY)fKDy+4n(<7=xozt0ZR&uw=e}*v zZ!^&HxZ0Lu*!d}L;6}#Y4!dU4Hpg*IHX#+XhcpU@9zl=~eiu7o4yTL(+b+dj`&i}^ zh1MG$MIFAnS#eO)sn1MZbaOc*Z#MZK7)5=GUAGsysGvnv1$V82&CRO!#<+fy4|Vl# z&Be@SyCxwk^mR;_-I@!}P<*_jwt_p0>4m6=H4jEL8+$td39N!KfJ#sqhW7yX+o`j9 zc;!fbeaPK}R7p`py4(fn^2wUVZ)FRw&puh3Y4L1?SNn)8{SmLOBUvRc$V==5NJ{%_ zBe9CzF~AIYw}I4rXhPe0b20X`N3}qk5&!N~r4wxiPaz-a(YZqy5b z(L@Sn7&!nvJZGWJxB~;#M7Fr278)-F>;kk8hs)6TsW$)|Y*g;&6x-qJKgbpm1Q{n$ z@*LxU0knd&*8JowT4us+46OwHIU5MuU>5+42)YL%h9L!sL41CN1@{S5L;iJW`6|Er z>at^zlFgwqRcl_cXL2}vI|Dc7$$qaK9HHBRPExV;iMc|3wMefeUtdXtSr(mT`^Ks# zxyY`1Q?iv)+Vr?he6tFniYF(GeO8`(&z9TeOHB*W%Sz(LeIzi`k3<+<- z#<=N}N`DMeRX4{a*abA@JAe#FN+&W@<|RSBZ@RHq@-Z?5R6=!iE%;9QAK8$FVpMN$ zCpAxIjaIo}h3NJNH_t%|yRp;?TWGl#sXs>^yRp?HNIAz3sB(>= z*vI|2Asm<7ytk0vAC~cOC*7TF{hhWB_SE`PyG4aW@b84<*o^op_F_C;Exu2Y51VP% zH)XdLmWI^lmMck``@%o2 z9QP|YgmgvlL+P@~!)j#|Kak>x_HGVE^_5OGzpe4!k%`hd{2e{2S69U~CZiPticOgZODGCRB$wuF zADSM~ei7m~EY(9(I3J=hGguH*gK$2=j}SxwV#ERJlp_s&*)4><>-=!#rVJVq%RTAg z=nB%;xp#2acf;r(!y?~YFQuE8a-A6q{5OwFebdzgZg%k|3c&R1wovml~qsGro(a5ph4AdH#xzLM|T5~THT)|d@yU8c9!V*EH5)0YMk~4)l}c~ z@ZrP1*o?l)^nY4mOz92fijYiH?Q(%n9+W&~LuQ513*{ zVIn(uvj-2O4GtPQ8V(-**PS><^ykL0qTO3BJhTD)%Et;wH5T9;oRPZF!CTv_Y9HH1 zwEr3I?$O3}!O`#HX?Epmp4JfJa}9Wd=&lI(8YMe!bhC6PQ#fo5R1O?>Zw#(-t;pDGOFpRA4mNLY3d*Q=gTleF0rP(+u|2EF-!m2(S zqCH#Ra_HWpL(>k1{k~LX&-7j;-rS?vqxU%J>?DD&<<+-kTlz1?QrN;F#C{54VA> z7W+?@5H`|)*ZDTIC4#`cd7zTV?0g#VMkMA(mXZRXweo&!M}X&i&6~^!Iwu!+r2uuM z(tly39d%R)pJOv`|K&=0vNTZ;LsuRTezZz-v27E&xSo{BQq!S8&N|CJl zw;t&hNZ2kyh@F4qU6Cg2kTtFQwZ98#L=4eR1hT%?iz3Z1A=w1-nAWJrkiu~^#zvFk zXdXi@;6@7%kXv<@?Nrlp$9Xw5{{~UbJ1o>7;yk`Ib MPgg&ebxsLQ0Llq2vH$=8 From 612d03bf73bc598715d69647b2945bf85b380ad6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 20 Mar 2025 09:27:44 -0700 Subject: [PATCH 11/20] Bump the major group in /.github/actions/github-release with 2 updates (#5829) Bumps the major group in /.github/actions/github-release with 2 updates: [@actions/github](https://github.com/actions/toolkit/tree/HEAD/packages/github) and [glob](https://github.com/isaacs/node-glob). Updates `@actions/github` from 5.1.1 to 6.0.0 - [Changelog](https://github.com/actions/toolkit/blob/main/packages/github/RELEASES.md) - [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/github) Updates `glob` from 7.2.3 to 11.0.1 - [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md) - [Commits](https://github.com/isaacs/node-glob/compare/v7.2.3...v11.0.1) --- updated-dependencies: - dependency-name: "@actions/github" dependency-type: direct:production update-type: version-update:semver-major dependency-group: major - dependency-name: glob dependency-type: direct:production update-type: version-update:semver-major dependency-group: major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/actions/github-release/package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/actions/github-release/package.json b/.github/actions/github-release/package.json index af4bf074d..af12a33a0 100644 --- a/.github/actions/github-release/package.json +++ b/.github/actions/github-release/package.json @@ -4,7 +4,7 @@ "main": "main.js", "dependencies": { "@actions/core": "^1.6", - "@actions/github": "^5.0", - "glob": "^7.1.5" + "@actions/github": "^6.0", + "glob": "^11.0.1" } } From b36e416ab28d159aa0d5a013e8e300385178db20 Mon Sep 17 00:00:00 2001 From: Frank Noirot Date: Thu, 20 Mar 2025 13:10:28 -0400 Subject: [PATCH 12/20] Only show "Edit sketch" button when code pane is focused with sketch selected (#5691) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Only show "Edit sketch" button when code pane is focused with sketch selected Closes #4273. WIP until tests are updated, since this will impact many that look for the "Edit sketch" button. * Start removing "edit sketch" point-and-click from E2E * Update more E2E tests * Update more tests that assumed Edit Sketch button * A snapshot a day keeps the bugs away! 📷🐛 --------- Co-authored-by: github-actions[bot] --- e2e/playwright/fixtures/toolbarFixture.ts | 25 ++++++++++------- e2e/playwright/sketch-tests.spec.ts | 26 +++++++++++------- ...-via-command-bar-1-Google-Chrome-linux.png | Bin 37741 -> 55473 bytes ...uld-be-stable-XZ-1-Google-Chrome-linux.png | Bin 73919 -> 73781 bytes ...test-network-and-connection-issues.spec.ts | 9 ++---- e2e/playwright/testing-gizmo.spec.ts | 5 +--- e2e/playwright/testing-selections.spec.ts | 8 ++---- e2e/playwright/testing-settings.spec.ts | 15 ++++++---- src/Toolbar.tsx | 11 ++++++-- src/lib/toolbar.ts | 9 +++--- 10 files changed, 61 insertions(+), 47 deletions(-) diff --git a/e2e/playwright/fixtures/toolbarFixture.ts b/e2e/playwright/fixtures/toolbarFixture.ts index 2f6279024..468140b39 100644 --- a/e2e/playwright/fixtures/toolbarFixture.ts +++ b/e2e/playwright/fixtures/toolbarFixture.ts @@ -1,4 +1,4 @@ -import type { Page, Locator } from '@playwright/test' +import { type Page, type Locator, test } from '@playwright/test' import { expect } from '../zoo-test' import { checkIfPaneIsOpen, @@ -76,10 +76,6 @@ export class ToolbarFixture { this.gizmoDisabled = page.getByTestId('gizmo-disabled') } - get editSketchBtn() { - return this.page.locator('[name="Edit Sketch"]') - } - get logoLink() { return this.page.getByTestId('app-logo') } @@ -115,11 +111,20 @@ export class ToolbarFixture { ).not.toBeDisabled() } - editSketch = async () => { - await this.editSketchBtn.first().click() - // One of the rare times we want to allow a arbitrary wait - // this is for the engine animation, as it takes 500ms to complete - await this.page.waitForTimeout(600) + editSketch = async (operationIndex = 0) => { + await test.step(`Editing sketch`, async () => { + await this.openFeatureTreePane() + const operation = await this.getFeatureTreeOperation( + 'Sketch', + operationIndex + ) + await operation.dblclick() + // One of the rare times we want to allow a arbitrary wait + // this is for the engine animation, as it takes 500ms to complete + await this.page.waitForTimeout(600) + await expect(this.exitSketchBtn).toBeEnabled() + await this.closeFeatureTreePane() + }) } private _getMode = () => this.page.locator('[data-current-mode]').getAttribute('data-current-mode') diff --git a/e2e/playwright/sketch-tests.spec.ts b/e2e/playwright/sketch-tests.spec.ts index 4d8b41594..e10928db8 100644 --- a/e2e/playwright/sketch-tests.spec.ts +++ b/e2e/playwright/sketch-tests.spec.ts @@ -12,6 +12,7 @@ import { } from './test-utils' import { uuidv4, roundOff } from 'lib/utils' import { SceneFixture } from './fixtures/sceneFixture' +import { ToolbarFixture } from './fixtures/toolbarFixture' import { CmdBarFixture } from './fixtures/cmdBarFixture' test.describe('Sketch tests', { tag: ['@skipWin'] }, () => { @@ -193,6 +194,7 @@ sketch001 = startProfileAt([12.34, -12.34], sketch002) homePage: HomePageFixture, openPanes: string[], scene: SceneFixture, + toolbar: ToolbarFixture, cmdBar: CmdBarFixture ) => { // Load the app with the code panes @@ -282,11 +284,7 @@ sketch001 = startProfileAt([12.34, -12.34], sketch002) // Select the sketch await page.mouse.click(700, 370) } - await expect( - page.getByRole('button', { name: 'Edit Sketch' }) - ).toBeVisible() - await page.getByRole('button', { name: 'Edit Sketch' }).click() - await page.waitForTimeout(400) + await toolbar.editSketch() if (openPanes.includes('code')) { prevContent = await page.locator('.cm-content').innerText() } @@ -417,7 +415,7 @@ sketch001 = startProfileAt([12.34, -12.34], sketch002) test( 'code pane open at start-handles', { tag: ['@skipWin'] }, - async ({ page, homePage, scene, cmdBar }) => { + async ({ page, homePage, scene, toolbar, cmdBar }) => { // Load the app with the code panes await page.addInitScript(async () => { localStorage.setItem( @@ -435,6 +433,7 @@ sketch001 = startProfileAt([12.34, -12.34], sketch002) homePage, ['code'], scene, + toolbar, cmdBar ) } @@ -443,7 +442,7 @@ sketch001 = startProfileAt([12.34, -12.34], sketch002) test( 'code pane closed at start-handles', { tag: ['@skipWin'] }, - async ({ page, homePage, scene, cmdBar }) => { + async ({ page, homePage, scene, toolbar, cmdBar }) => { // Load the app with the code panes await page.addInitScript(async (persistModelingContext) => { localStorage.setItem( @@ -451,7 +450,14 @@ sketch001 = startProfileAt([12.34, -12.34], sketch002) JSON.stringify({ openPanes: [] }) ) }, PERSIST_MODELING_CONTEXT) - await doEditSegmentsByDraggingHandle(page, homePage, [], scene, cmdBar) + await doEditSegmentsByDraggingHandle( + page, + homePage, + [], + scene, + toolbar, + cmdBar + ) } ) }) @@ -2545,7 +2551,7 @@ profile002 = startProfileAt([85.81, 52.55], sketch002) const [startProfileAt] = scene.makeMouseHelpers(606, 184) const [nextPoint] = scene.makeMouseHelpers(763, 130) await page.getByText('startProfileAt([85.81, 52.55], sketch002)').click() - await toolbar.editSketch() + await toolbar.editSketch(1) // timeout wait for engine animation is unavoidable await page.waitForTimeout(600) @@ -2765,7 +2771,7 @@ extrude003 = extrude(profile011, length = 2.5) await test.step(title, async () => { await camPositionForSelectingSketchOnWallProfiles() await selectClick() - await toolbar.editSketch() + await toolbar.editSketch(1) await page.waitForTimeout(600) await verifyWallProfilesAreDrawn() await toolbar.exitSketchBtn.click() diff --git a/e2e/playwright/snapshot-tests.spec.ts-snapshots/Grid-visibility-Grid-turned-off-to-on-via-command-bar-1-Google-Chrome-linux.png b/e2e/playwright/snapshot-tests.spec.ts-snapshots/Grid-visibility-Grid-turned-off-to-on-via-command-bar-1-Google-Chrome-linux.png index f91c94650f58e950788024b8835188c061065307..56d68f0f543806250899a5559ef3120d3c2b9fc6 100644 GIT binary patch literal 55473 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 literal 37741 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 sEm1JSgj2M8f%?aFeUE=XL`bar`>}N6)E&u=k diff --git a/e2e/playwright/snapshot-tests.spec.ts-snapshots/extrude-on-default-planes-should-be-stable-XZ-1-Google-Chrome-linux.png b/e2e/playwright/snapshot-tests.spec.ts-snapshots/extrude-on-default-planes-should-be-stable-XZ-1-Google-Chrome-linux.png index 6d0da2b26e62581e068f61558b322cadbe8aa691..ddcb4606274cdddbc2123df2ea2be05511e08507 100644 GIT binary patch literal 73781 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 WIc$Qz!ITC9AtRw6o{!Y`_`d*vkKJYf literal 73919 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�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

?t6 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 IsON9~572`43IG5A diff --git a/e2e/playwright/test-network-and-connection-issues.spec.ts b/e2e/playwright/test-network-and-connection-issues.spec.ts index 1c45a23aa..b1e9b352f 100644 --- a/e2e/playwright/test-network-and-connection-issues.spec.ts +++ b/e2e/playwright/test-network-and-connection-issues.spec.ts @@ -83,7 +83,7 @@ test.fixme('Test network and connection issues', () => { test( 'Engine disconnect & reconnect in sketch mode', { tag: '@skipLocalEngine' }, - async ({ page, homePage }) => { + async ({ page, homePage, toolbar }) => { const networkToggle = page.getByTestId('network-toggle') const u = await getUtils(page) @@ -173,11 +173,7 @@ test.fixme('Test network and connection issues', () => { .click() // enter sketch again - await u.doAndWaitForCmd( - () => page.getByRole('button', { name: 'Edit Sketch' }).click(), - 'default_camera_get_settings' - ) - await page.waitForTimeout(150) + await toolbar.editSketch() // Click the line tool await page.getByRole('button', { name: 'line Line', exact: true }).click() @@ -201,6 +197,7 @@ test.fixme('Test network and connection issues', () => { type: 'default_camera_get_settings', }, } + await toolbar.openPane('debug') await u.sendCustomCmd(camCommand) await page.waitForTimeout(100) await u.sendCustomCmd(updateCamCommand) diff --git a/e2e/playwright/testing-gizmo.spec.ts b/e2e/playwright/testing-gizmo.spec.ts index 598b936b3..b1bba54be 100644 --- a/e2e/playwright/testing-gizmo.spec.ts +++ b/e2e/playwright/testing-gizmo.spec.ts @@ -316,14 +316,11 @@ test.describe(`Testing gizmo, fixture-based`, () => { }) await test.step(`Gizmo should be disabled when in sketch mode`, async () => { - const sketchModeButton = page.getByRole('button', { - name: 'Edit sketch', - }) const exitSketchButton = page.getByRole('button', { name: 'Exit sketch', }) - await sketchModeButton.click() + await toolbar.editSketch() await expect(exitSketchButton).toBeVisible() const gizmoPopoverButton = page.getByRole('button', { name: 'view settings', diff --git a/e2e/playwright/testing-selections.spec.ts b/e2e/playwright/testing-selections.spec.ts index 6519071e7..f0199a13b 100644 --- a/e2e/playwright/testing-selections.spec.ts +++ b/e2e/playwright/testing-selections.spec.ts @@ -10,6 +10,7 @@ test.describe('Testing selections', { tag: ['@skipWin'] }, () => { test('Selections work on fresh and edited sketch', async ({ page, homePage, + toolbar, }) => { // tests mapping works on fresh sketch and edited sketch // tests using hovers which is the same as selections, because if @@ -216,12 +217,7 @@ test.describe('Testing selections', { tag: ['@skipWin'] }, () => { await emptySpaceHover() // enter sketch again - await u.doAndWaitForCmd( - () => page.getByRole('button', { name: 'Edit Sketch' }).click(), - 'default_camera_get_settings' - ) - - await page.waitForTimeout(450) // wait for animation + await toolbar.editSketch() await u.openAndClearDebugPanel() await u.sendCustomCmd({ diff --git a/e2e/playwright/testing-settings.spec.ts b/e2e/playwright/testing-settings.spec.ts index cde33a43b..a266696b6 100644 --- a/e2e/playwright/testing-settings.spec.ts +++ b/e2e/playwright/testing-settings.spec.ts @@ -724,7 +724,14 @@ test.describe('Testing settings', () => { }) }) - test('Changing theme in sketch mode', async ({ context, page, homePage }) => { + test('Changing theme in sketch mode', async ({ + context, + page, + homePage, + toolbar, + scene, + cmdBar, + }) => { // TODO: fix this test on windows after the electron migration test.skip(process.platform === 'win32', 'Skip on windows') const u = await getUtils(page) @@ -744,11 +751,10 @@ test.describe('Testing settings', () => { }) await page.setBodyDimensions({ width: 1200, height: 500 }) await homePage.goToModelingScene() - await u.waitForPageLoad() + await scene.settled(cmdBar) await page.waitForTimeout(1000) // Selectors and constants - const editSketchButton = page.getByRole('button', { name: 'Edit Sketch' }) const lineToolButton = page.getByTestId('line') const segmentOverlays = page.getByTestId('segment-overlay') const sketchOriginLocation = { x: 600, y: 250 } @@ -757,8 +763,7 @@ test.describe('Testing settings', () => { await test.step(`Get into sketch mode`, async () => { await page.mouse.click(700, 200) - await expect(editSketchButton).toBeVisible() - await editSketchButton.click() + await toolbar.editSketch() // We use the line tool as a proxy for sketch mode await expect(lineToolButton).toBeVisible() diff --git a/src/Toolbar.tsx b/src/Toolbar.tsx index fc8c1dc0d..824e9c245 100644 --- a/src/Toolbar.tsx +++ b/src/Toolbar.tsx @@ -1,6 +1,6 @@ import { useRef, useMemo, memo, useCallback, useState } from 'react' import { isCursorInSketchCommandRange } from 'lang/util' -import { engineCommandManager, kclManager } from 'lib/singletons' +import { editorManager, engineCommandManager, kclManager } from 'lib/singletons' import { useModelingContext } from 'hooks/useModelingContext' import { useNetworkContext } from 'hooks/useNetworkContext' import { NetworkHealthState } from 'hooks/useNetworkStatus' @@ -77,8 +77,15 @@ export function Toolbar({ modelingState: state, modelingSend: send, sketchPathId, + editorHasFocus: editorManager.editorView?.hasFocus, }), - [state, send, commandBarActor.send, sketchPathId] + [ + state, + send, + commandBarActor.send, + sketchPathId, + editorManager.editorView?.hasFocus, + ] ) const tooltipContentClassName = !showRichContent diff --git a/src/lib/toolbar.ts b/src/lib/toolbar.ts index 382a5d8ee..2c958c222 100644 --- a/src/lib/toolbar.ts +++ b/src/lib/toolbar.ts @@ -20,6 +20,7 @@ export interface ToolbarItemCallbackProps { modelingState: StateFrom modelingSend: (event: EventFrom) => void sketchPathId: string | false + editorHasFocus: boolean | undefined } export type ToolbarItem = { @@ -65,8 +66,8 @@ export const toolbarConfig: Record = { items: [ { id: 'sketch', - onClick: ({ modelingSend, sketchPathId }) => - !sketchPathId + onClick: ({ modelingSend, sketchPathId, editorHasFocus }) => + !(editorHasFocus && sketchPathId) ? modelingSend({ type: 'Enter sketch', data: { forceNewSketch: true }, @@ -74,8 +75,8 @@ export const toolbarConfig: Record = { : modelingSend({ type: 'Enter sketch' }), icon: 'sketch', status: 'available', - title: ({ sketchPathId }) => - sketchPathId ? 'Edit Sketch' : 'Start Sketch', + title: ({ editorHasFocus, sketchPathId }) => + editorHasFocus && sketchPathId ? 'Edit Sketch' : 'Start Sketch', showTitle: true, hotkey: 'S', description: 'Start drawing a 2D sketch', From 227cb70d72d056112381a117a3c64c4bc0024967 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 20 Mar 2025 12:12:59 -0700 Subject: [PATCH 13/20] Bump the patch group in /rust/kcl-language-server with 2 updates (#5834) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Bump the patch group in /rust/kcl-language-server with 2 updates Bumps the patch group in /rust/kcl-language-server with 2 updates: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [esbuild](https://github.com/evanw/esbuild). Updates `@types/node` from 22.13.9 to 22.13.10 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `esbuild` from 0.25.0 to 0.25.1 - [Release notes](https://github.com/evanw/esbuild/releases) - [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md) - [Commits](https://github.com/evanw/esbuild/compare/v0.25.0...v0.25.1) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: patch - dependency-name: esbuild dependency-type: direct:development update-type: version-update:semver-patch dependency-group: patch ... Signed-off-by: dependabot[bot] * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] --- ...hould-look-right-5-Google-Chrome-linux.png | Bin 70183 -> 70188 bytes rust/kcl-language-server/package.json | 4 +- rust/kcl-language-server/yarn.lock | 266 +++++++++--------- 3 files changed, 135 insertions(+), 135 deletions(-) diff --git a/e2e/playwright/snapshot-tests.spec.ts-snapshots/Draft-segments-should-look-right-5-Google-Chrome-linux.png b/e2e/playwright/snapshot-tests.spec.ts-snapshots/Draft-segments-should-look-right-5-Google-Chrome-linux.png index f2d54f7ffc38a8091adc89ccbb0bc1053744624c..f46dc4b20c3258eafe0c9b835c6516cc185bf9b4 100644 GIT binary patch delta 10691 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 diff --git a/rust/kcl-language-server/package.json b/rust/kcl-language-server/package.json index 6241377a4..e7e67b3fd 100644 --- a/rust/kcl-language-server/package.json +++ b/rust/kcl-language-server/package.json @@ -133,14 +133,14 @@ "@tsconfig/strictest": "^2.0.5", "@types/glob": "^8.1.0", "@types/mocha": "^10.0.10", - "@types/node": "^22.13.9", + "@types/node": "^22.13.10", "@types/vscode": "^1.97.0", "@typescript-eslint/eslint-plugin": "^6.6.0", "@typescript-eslint/parser": "^6.6.0", "@vscode/test-electron": "^2.4.1", "@vscode/vsce": "^2.30.0", "cross-env": "^7.0.3", - "esbuild": "^0.25.0", + "esbuild": "^0.25.1", "glob": "^10.4.3", "mocha": "^11.1.0", "typescript": "^5.8.2" diff --git a/rust/kcl-language-server/yarn.lock b/rust/kcl-language-server/yarn.lock index beb294ed8..697fd8ced 100644 --- a/rust/kcl-language-server/yarn.lock +++ b/rust/kcl-language-server/yarn.lock @@ -120,130 +120,130 @@ jsonwebtoken "^9.0.0" uuid "^8.3.0" -"@esbuild/aix-ppc64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.25.0.tgz#499600c5e1757a524990d5d92601f0ac3ce87f64" - integrity sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ== +"@esbuild/aix-ppc64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.25.1.tgz#c33cf6bbee34975626b01b80451cbb72b4c6c91d" + integrity sha512-kfYGy8IdzTGy+z0vFGvExZtxkFlA4zAxgKEahG9KE1ScBjpQnFsNOX8KTU5ojNru5ed5CVoJYXFtoxaq5nFbjQ== -"@esbuild/android-arm64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.25.0.tgz#b9b8231561a1dfb94eb31f4ee056b92a985c324f" - integrity sha512-grvv8WncGjDSyUBjN9yHXNt+cq0snxXbDxy5pJtzMKGmmpPxeAmAhWxXI+01lU5rwZomDgD3kJwulEnhTRUd6g== +"@esbuild/android-arm64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.25.1.tgz#ea766015c7d2655164f22100d33d7f0308a28d6d" + integrity sha512-50tM0zCJW5kGqgG7fQ7IHvQOcAn9TKiVRuQ/lN0xR+T2lzEFvAi1ZcS8DiksFcEpf1t/GYOeOfCAgDHFpkiSmA== -"@esbuild/android-arm@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.25.0.tgz#ca6e7888942505f13e88ac9f5f7d2a72f9facd2b" - integrity sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g== +"@esbuild/android-arm@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.25.1.tgz#e84d2bf2fe2e6177a0facda3a575b2139fd3cb9c" + integrity sha512-dp+MshLYux6j/JjdqVLnMglQlFu+MuVeNrmT5nk6q07wNhCdSnB7QZj+7G8VMUGh1q+vj2Bq8kRsuyA00I/k+Q== -"@esbuild/android-x64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.25.0.tgz#e765ea753bac442dfc9cb53652ce8bd39d33e163" - integrity sha512-m/ix7SfKG5buCnxasr52+LI78SQ+wgdENi9CqyCXwjVR2X4Jkz+BpC3le3AoBPYTC9NHklwngVXvbJ9/Akhrfg== +"@esbuild/android-x64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.25.1.tgz#58337bee3bc6d78d10425e5500bd11370cfdfbed" + integrity sha512-GCj6WfUtNldqUzYkN/ITtlhwQqGWu9S45vUXs7EIYf+7rCiiqH9bCloatO9VhxsL0Pji+PF4Lz2XXCES+Q8hDw== -"@esbuild/darwin-arm64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.25.0.tgz#fa394164b0d89d4fdc3a8a21989af70ef579fa2c" - integrity sha512-mVwdUb5SRkPayVadIOI78K7aAnPamoeFR2bT5nszFUZ9P8UpK4ratOdYbZZXYSqPKMHfS1wdHCJk1P1EZpRdvw== +"@esbuild/darwin-arm64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.25.1.tgz#a46805c1c585d451aa83be72500bd6e8495dd591" + integrity sha512-5hEZKPf+nQjYoSr/elb62U19/l1mZDdqidGfmFutVUjjUZrOazAtwK+Kr+3y0C/oeJfLlxo9fXb1w7L+P7E4FQ== -"@esbuild/darwin-x64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.25.0.tgz#91979d98d30ba6e7d69b22c617cc82bdad60e47a" - integrity sha512-DgDaYsPWFTS4S3nWpFcMn/33ZZwAAeAFKNHNa1QN0rI4pUjgqf0f7ONmXf6d22tqTY+H9FNdgeaAa+YIFUn2Rg== +"@esbuild/darwin-x64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.25.1.tgz#0643e003bb238c63fc93ddbee7d26a003be3cd98" + integrity sha512-hxVnwL2Dqs3fM1IWq8Iezh0cX7ZGdVhbTfnOy5uURtao5OIVCEyj9xIzemDi7sRvKsuSdtCAhMKarxqtlyVyfA== -"@esbuild/freebsd-arm64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.0.tgz#b97e97073310736b430a07b099d837084b85e9ce" - integrity sha512-VN4ocxy6dxefN1MepBx/iD1dH5K8qNtNe227I0mnTRjry8tj5MRk4zprLEdG8WPyAPb93/e4pSgi1SoHdgOa4w== +"@esbuild/freebsd-arm64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.1.tgz#cff18da5469c09986b93e87979de5d6872fe8f8e" + integrity sha512-1MrCZs0fZa2g8E+FUo2ipw6jw5qqQiH+tERoS5fAfKnRx6NXH31tXBKI3VpmLijLH6yriMZsxJtaXUyFt/8Y4A== -"@esbuild/freebsd-x64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.25.0.tgz#f3b694d0da61d9910ec7deff794d444cfbf3b6e7" - integrity sha512-mrSgt7lCh07FY+hDD1TxiTyIHyttn6vnjesnPoVDNmDfOmggTLXRv8Id5fNZey1gl/V2dyVK1VXXqVsQIiAk+A== +"@esbuild/freebsd-x64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.25.1.tgz#362fc09c2de14987621c1878af19203c46365dde" + integrity sha512-0IZWLiTyz7nm0xuIs0q1Y3QWJC52R8aSXxe40VUxm6BB1RNmkODtW6LHvWRrGiICulcX7ZvyH6h5fqdLu4gkww== -"@esbuild/linux-arm64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.25.0.tgz#f921f699f162f332036d5657cad9036f7a993f73" - integrity sha512-9QAQjTWNDM/Vk2bgBl17yWuZxZNQIF0OUUuPZRKoDtqF2k4EtYbpyiG5/Dk7nqeK6kIJWPYldkOcBqjXjrUlmg== +"@esbuild/linux-arm64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.25.1.tgz#aa90d5b02efc97a271e124e6d1cea490634f7498" + integrity sha512-jaN3dHi0/DDPelk0nLcXRm1q7DNJpjXy7yWaWvbfkPvI+7XNSc/lDOnCLN7gzsyzgu6qSAmgSvP9oXAhP973uQ== -"@esbuild/linux-arm@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.25.0.tgz#cc49305b3c6da317c900688995a4050e6cc91ca3" - integrity sha512-vkB3IYj2IDo3g9xX7HqhPYxVkNQe8qTK55fraQyTzTX/fxaDtXiEnavv9geOsonh2Fd2RMB+i5cbhu2zMNWJwg== +"@esbuild/linux-arm@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.25.1.tgz#dfcefcbac60a20918b19569b4b657844d39db35a" + integrity sha512-NdKOhS4u7JhDKw9G3cY6sWqFcnLITn6SqivVArbzIaf3cemShqfLGHYMx8Xlm/lBit3/5d7kXvriTUGa5YViuQ== -"@esbuild/linux-ia32@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.25.0.tgz#3e0736fcfab16cff042dec806247e2c76e109e19" - integrity sha512-43ET5bHbphBegyeqLb7I1eYn2P/JYGNmzzdidq/w0T8E2SsYL1U6un2NFROFRg1JZLTzdCoRomg8Rvf9M6W6Gg== +"@esbuild/linux-ia32@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.25.1.tgz#6f9527077ccb7953ed2af02e013d4bac69f13754" + integrity sha512-OJykPaF4v8JidKNGz8c/q1lBO44sQNUQtq1KktJXdBLn1hPod5rE/Hko5ugKKZd+D2+o1a9MFGUEIUwO2YfgkQ== -"@esbuild/linux-loong64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.25.0.tgz#ea2bf730883cddb9dfb85124232b5a875b8020c7" - integrity sha512-fC95c/xyNFueMhClxJmeRIj2yrSMdDfmqJnyOY4ZqsALkDrrKJfIg5NTMSzVBr5YW1jf+l7/cndBfP3MSDpoHw== +"@esbuild/linux-loong64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.25.1.tgz#287d2412a5456e5860c2839d42a4b51284d1697c" + integrity sha512-nGfornQj4dzcq5Vp835oM/o21UMlXzn79KobKlcs3Wz9smwiifknLy4xDCLUU0BWp7b/houtdrgUz7nOGnfIYg== -"@esbuild/linux-mips64el@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.25.0.tgz#4cababb14eede09248980a2d2d8b966464294ff1" - integrity sha512-nkAMFju7KDW73T1DdH7glcyIptm95a7Le8irTQNO/qtkoyypZAnjchQgooFUDQhNAy4iu08N79W4T4pMBwhPwQ== +"@esbuild/linux-mips64el@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.25.1.tgz#530574b9e1bc5d20f7a4f44c5f045e26f3783d57" + integrity sha512-1osBbPEFYwIE5IVB/0g2X6i1qInZa1aIoj1TdL4AaAb55xIIgbg8Doq6a5BzYWgr+tEcDzYH67XVnTmUzL+nXg== -"@esbuild/linux-ppc64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.25.0.tgz#8860a4609914c065373a77242e985179658e1951" - integrity sha512-NhyOejdhRGS8Iwv+KKR2zTq2PpysF9XqY+Zk77vQHqNbo/PwZCzB5/h7VGuREZm1fixhs4Q/qWRSi5zmAiO4Fw== +"@esbuild/linux-ppc64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.25.1.tgz#5d7e6b283a0b321ea42c6bc0abeb9eb99c1f5589" + integrity sha512-/6VBJOwUf3TdTvJZ82qF3tbLuWsscd7/1w+D9LH0W/SqUgM5/JJD0lrJ1fVIfZsqB6RFmLCe0Xz3fmZc3WtyVg== -"@esbuild/linux-riscv64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.25.0.tgz#baf26e20bb2d38cfb86ee282dff840c04f4ed987" - integrity sha512-5S/rbP5OY+GHLC5qXp1y/Mx//e92L1YDqkiBbO9TQOvuFXM+iDqUNG5XopAnXoRH3FjIUDkeGcY1cgNvnXp/kA== +"@esbuild/linux-riscv64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.25.1.tgz#14fa0cd073c26b4ee2465d18cd1e18eea7859fa8" + integrity sha512-nSut/Mx5gnilhcq2yIMLMe3Wl4FK5wx/o0QuuCLMtmJn+WeWYoEGDN1ipcN72g1WHsnIbxGXd4i/MF0gTcuAjQ== -"@esbuild/linux-s390x@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.25.0.tgz#8323afc0d6cb1b6dc6e9fd21efd9e1542c3640a4" - integrity sha512-XM2BFsEBz0Fw37V0zU4CXfcfuACMrppsMFKdYY2WuTS3yi8O1nFOhil/xhKTmE1nPmVyvQJjJivgDT+xh8pXJA== +"@esbuild/linux-s390x@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.25.1.tgz#e677b4b9d1b384098752266ccaa0d52a420dc1aa" + integrity sha512-cEECeLlJNfT8kZHqLarDBQso9a27o2Zd2AQ8USAEoGtejOrCYHNtKP8XQhMDJMtthdF4GBmjR2au3x1udADQQQ== -"@esbuild/linux-x64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.25.0.tgz#08fcf60cb400ed2382e9f8e0f5590bac8810469a" - integrity sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw== +"@esbuild/linux-x64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.25.1.tgz#f1c796b78fff5ce393658313e8c58613198d9954" + integrity sha512-xbfUhu/gnvSEg+EGovRc+kjBAkrvtk38RlerAzQxvMzlB4fXpCFCeUAYzJvrnhFtdeyVCDANSjJvOvGYoeKzFA== -"@esbuild/netbsd-arm64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.0.tgz#935c6c74e20f7224918fbe2e6c6fe865b6c6ea5b" - integrity sha512-RuG4PSMPFfrkH6UwCAqBzauBWTygTvb1nxWasEJooGSJ/NwRw7b2HOwyRTQIU97Hq37l3npXoZGYMy3b3xYvPw== +"@esbuild/netbsd-arm64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.1.tgz#0d280b7dfe3973f111b02d5fe9f3063b92796d29" + integrity sha512-O96poM2XGhLtpTh+s4+nP7YCCAfb4tJNRVZHfIE7dgmax+yMP2WgMd2OecBuaATHKTHsLWHQeuaxMRnCsH8+5g== -"@esbuild/netbsd-x64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.25.0.tgz#414677cef66d16c5a4d210751eb2881bb9c1b62b" - integrity sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA== +"@esbuild/netbsd-x64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.25.1.tgz#be663893931a4bb3f3a009c5cc24fa9681cc71c0" + integrity sha512-X53z6uXip6KFXBQ+Krbx25XHV/NCbzryM6ehOAeAil7X7oa4XIq+394PWGnwaSQ2WRA0KI6PUO6hTO5zeF5ijA== -"@esbuild/openbsd-arm64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.0.tgz#8fd55a4d08d25cdc572844f13c88d678c84d13f7" - integrity sha512-21sUNbq2r84YE+SJDfaQRvdgznTD8Xc0oc3p3iW/a1EVWeNj/SdUCbm5U0itZPQYRuRTW20fPMWMpcrciH2EJw== +"@esbuild/openbsd-arm64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.1.tgz#d9021b884233673a05dc1cc26de0bf325d824217" + integrity sha512-Na9T3szbXezdzM/Kfs3GcRQNjHzM6GzFBeU1/6IV/npKP5ORtp9zbQjvkDJ47s6BCgaAZnnnu/cY1x342+MvZg== -"@esbuild/openbsd-x64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.25.0.tgz#0c48ddb1494bbc2d6bcbaa1429a7f465fa1dedde" - integrity sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg== +"@esbuild/openbsd-x64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.25.1.tgz#9f1dc1786ed2e2938c404b06bcc48be9a13250de" + integrity sha512-T3H78X2h1tszfRSf+txbt5aOp/e7TAz3ptVKu9Oyir3IAOFPGV6O9c2naym5TOriy1l0nNf6a4X5UXRZSGX/dw== -"@esbuild/sunos-x64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.25.0.tgz#86ff9075d77962b60dd26203d7352f92684c8c92" - integrity sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg== +"@esbuild/sunos-x64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.25.1.tgz#89aac24a4b4115959b3f790192cf130396696c27" + integrity sha512-2H3RUvcmULO7dIE5EWJH8eubZAI4xw54H1ilJnRNZdeo8dTADEZ21w6J22XBkXqGJbe0+wnNJtw3UXRoLJnFEg== -"@esbuild/win32-arm64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.25.0.tgz#849c62327c3229467f5b5cd681bf50588442e96c" - integrity sha512-ZUAc2YK6JW89xTbXvftxdnYy3m4iHIkDtK3CLce8wg8M2L+YZhIvO1DKpxrd0Yr59AeNNkTiic9YLf6FTtXWMw== +"@esbuild/win32-arm64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.25.1.tgz#354358647a6ea98ea6d243bf48bdd7a434999582" + integrity sha512-GE7XvrdOzrb+yVKB9KsRMq+7a2U/K5Cf/8grVFRAGJmfADr/e/ODQ134RK2/eeHqYV5eQRFxb1hY7Nr15fv1NQ== -"@esbuild/win32-ia32@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.25.0.tgz#f62eb480cd7cca088cb65bb46a6db25b725dc079" - integrity sha512-eSNxISBu8XweVEWG31/JzjkIGbGIJN/TrRoiSVZwZ6pkC6VX4Im/WV2cz559/TXLcYbcrDN8JtKgd9DJVIo8GA== +"@esbuild/win32-ia32@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.25.1.tgz#8cea7340f2647eba951a041dc95651e3908cd4cb" + integrity sha512-uOxSJCIcavSiT6UnBhBzE8wy3n0hOkJsBOzy7HDAuTDE++1DJMRRVCPGisULScHL+a/ZwdXPpXD3IyFKjA7K8A== -"@esbuild/win32-x64@0.25.0": - version "0.25.0" - resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.25.0.tgz#c8e119a30a7c8d60b9d2e22d2073722dde3b710b" - integrity sha512-ZENoHJBxA20C2zFzh6AI4fT6RraMzjYw4xKWemRTRmRVtN9c5DcH9r/f2ihEkMjOW5eGgrwCslG/+Y/3bL+DHQ== +"@esbuild/win32-x64@0.25.1": + version "0.25.1" + resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.25.1.tgz#7d79922cb2d88f9048f06393dbf62d2e4accb584" + integrity sha512-Y1EQdcfwMSeQN/ujR5VayLOJ1BHaK+ssyk0AEzPjC+t1lITgsnccPqFjb6V+LsTp/9Iov4ysfjxLaGJ9RPtkVg== "@eslint-community/eslint-utils@^4.4.0": version "4.4.1" @@ -323,10 +323,10 @@ resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-10.0.10.tgz#91f62905e8d23cbd66225312f239454a23bebfa0" integrity sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q== -"@types/node@*", "@types/node@^22.13.9": - version "22.13.9" - resolved "https://registry.yarnpkg.com/@types/node/-/node-22.13.9.tgz#5d9a8f7a975a5bd3ef267352deb96fb13ec02eca" - integrity sha512-acBjXdRJ3A6Pb3tqnw9HZmyR3Fiol3aGxRCK1x3d+6CDAMjl7I649wpSd+yNURCjbOUGu9tqtLKnTGxmK6CyGw== +"@types/node@*", "@types/node@^22.13.10": + version "22.13.10" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.13.10.tgz#df9ea358c5ed991266becc3109dc2dc9125d77e4" + integrity sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw== dependencies: undici-types "~6.20.0" @@ -1025,36 +1025,36 @@ es-errors@^1.3.0: resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== -esbuild@^0.25.0: - version "0.25.0" - resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.25.0.tgz#0de1787a77206c5a79eeb634a623d39b5006ce92" - integrity sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw== +esbuild@^0.25.1: + version "0.25.1" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.25.1.tgz#a16b8d070b6ad4871935277bda6ccfe852e3fa2f" + integrity sha512-BGO5LtrGC7vxnqucAe/rmvKdJllfGaYWdyABvyMoXQlfYMb2bbRuReWR5tEGE//4LcNJj9XrkovTqNYRFZHAMQ== optionalDependencies: - "@esbuild/aix-ppc64" "0.25.0" - "@esbuild/android-arm" "0.25.0" - "@esbuild/android-arm64" "0.25.0" - "@esbuild/android-x64" "0.25.0" - "@esbuild/darwin-arm64" "0.25.0" - "@esbuild/darwin-x64" "0.25.0" - "@esbuild/freebsd-arm64" "0.25.0" - "@esbuild/freebsd-x64" "0.25.0" - "@esbuild/linux-arm" "0.25.0" - "@esbuild/linux-arm64" "0.25.0" - "@esbuild/linux-ia32" "0.25.0" - "@esbuild/linux-loong64" "0.25.0" - "@esbuild/linux-mips64el" "0.25.0" - "@esbuild/linux-ppc64" "0.25.0" - "@esbuild/linux-riscv64" "0.25.0" - "@esbuild/linux-s390x" "0.25.0" - "@esbuild/linux-x64" "0.25.0" - "@esbuild/netbsd-arm64" "0.25.0" - "@esbuild/netbsd-x64" "0.25.0" - "@esbuild/openbsd-arm64" "0.25.0" - "@esbuild/openbsd-x64" "0.25.0" - "@esbuild/sunos-x64" "0.25.0" - "@esbuild/win32-arm64" "0.25.0" - "@esbuild/win32-ia32" "0.25.0" - "@esbuild/win32-x64" "0.25.0" + "@esbuild/aix-ppc64" "0.25.1" + "@esbuild/android-arm" "0.25.1" + "@esbuild/android-arm64" "0.25.1" + "@esbuild/android-x64" "0.25.1" + "@esbuild/darwin-arm64" "0.25.1" + "@esbuild/darwin-x64" "0.25.1" + "@esbuild/freebsd-arm64" "0.25.1" + "@esbuild/freebsd-x64" "0.25.1" + "@esbuild/linux-arm" "0.25.1" + "@esbuild/linux-arm64" "0.25.1" + "@esbuild/linux-ia32" "0.25.1" + "@esbuild/linux-loong64" "0.25.1" + "@esbuild/linux-mips64el" "0.25.1" + "@esbuild/linux-ppc64" "0.25.1" + "@esbuild/linux-riscv64" "0.25.1" + "@esbuild/linux-s390x" "0.25.1" + "@esbuild/linux-x64" "0.25.1" + "@esbuild/netbsd-arm64" "0.25.1" + "@esbuild/netbsd-x64" "0.25.1" + "@esbuild/openbsd-arm64" "0.25.1" + "@esbuild/openbsd-x64" "0.25.1" + "@esbuild/sunos-x64" "0.25.1" + "@esbuild/win32-arm64" "0.25.1" + "@esbuild/win32-ia32" "0.25.1" + "@esbuild/win32-x64" "0.25.1" escalade@^3.1.1: version "3.1.2" From 73b38cd9e29563e7a348571ee55152b12c4e38f6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 20 Mar 2025 13:02:39 -0700 Subject: [PATCH 14/20] Bump the patch group with 2 updates (#5826) Bumps the patch group with 2 updates: [taiki-e/install-action](https://github.com/taiki-e/install-action) and [google-github-actions/setup-gcloud](https://github.com/google-github-actions/setup-gcloud). Updates `taiki-e/install-action` from 2.49.15 to 2.49.27 - [Release notes](https://github.com/taiki-e/install-action/releases) - [Commits](https://github.com/taiki-e/install-action/compare/v2.49.15...v2.49.27) Updates `google-github-actions/setup-gcloud` from 2.1.2 to 2.1.4 - [Release notes](https://github.com/google-github-actions/setup-gcloud/releases) - [Changelog](https://github.com/google-github-actions/setup-gcloud/blob/main/CHANGELOG.md) - [Commits](https://github.com/google-github-actions/setup-gcloud/compare/v2.1.2...v2.1.4) --- updated-dependencies: - dependency-name: taiki-e/install-action dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch - dependency-name: google-github-actions/setup-gcloud dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/build-and-store-wasm.yml | 2 +- .github/workflows/build-apps.yml | 2 +- .github/workflows/e2e-tests.yml | 2 +- .github/workflows/kcl-language-server.yml | 2 +- .github/workflows/static-analysis.yml | 8 ++++---- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build-and-store-wasm.yml b/.github/workflows/build-and-store-wasm.yml index 07aeb5f8f..b001a6594 100644 --- a/.github/workflows/build-and-store-wasm.yml +++ b/.github/workflows/build-and-store-wasm.yml @@ -24,7 +24,7 @@ jobs: uses: actions-rust-lang/setup-rust-toolchain@v1 with: cache: false # Configured below. - - uses: taiki-e/install-action@955a6ff1416eae278c9f833008a9beb4b7f9afe3 + - uses: taiki-e/install-action@37bdc826eaedac215f638a96472df572feab0f9b with: tool: wasm-pack - name: Rust Cache diff --git a/.github/workflows/build-apps.yml b/.github/workflows/build-apps.yml index 218108716..2cd298835 100644 --- a/.github/workflows/build-apps.yml +++ b/.github/workflows/build-apps.yml @@ -77,7 +77,7 @@ jobs: with: cache: false # Configured below. - - uses: taiki-e/install-action@955a6ff1416eae278c9f833008a9beb4b7f9afe3 + - uses: taiki-e/install-action@37bdc826eaedac215f638a96472df572feab0f9b if: ${{ steps.wasm.outputs.should-build-wasm == 'true' }} with: tool: wasm-pack diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 6c6544068..da76f27b5 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -137,7 +137,7 @@ jobs: with: cache: false # Configured below. - - uses: taiki-e/install-action@955a6ff1416eae278c9f833008a9beb4b7f9afe3 + - uses: taiki-e/install-action@37bdc826eaedac215f638a96472df572feab0f9b if: ${{ needs.conditions.outputs.should-run == 'true' && steps.wasm.outputs.should-build-wasm == 'true' }} with: tool: wasm-pack diff --git a/.github/workflows/kcl-language-server.yml b/.github/workflows/kcl-language-server.yml index e858ed27b..5ea6503df 100644 --- a/.github/workflows/kcl-language-server.yml +++ b/.github/workflows/kcl-language-server.yml @@ -376,7 +376,7 @@ jobs: with: credentials_json: "${{ secrets.GOOGLE_CLOUD_DL_SA }}" - name: Set up Cloud SDK - uses: google-github-actions/setup-gcloud@v2.1.2 + uses: google-github-actions/setup-gcloud@v2.1.4 with: project_id: kittycadapi - name: "upload files to gcp" diff --git a/.github/workflows/static-analysis.yml b/.github/workflows/static-analysis.yml index 6cfcf28e8..c4c1ec7d0 100644 --- a/.github/workflows/static-analysis.yml +++ b/.github/workflows/static-analysis.yml @@ -37,7 +37,7 @@ jobs: node-version-file: '.nvmrc' cache: 'yarn' - run: yarn install - - uses: taiki-e/install-action@955a6ff1416eae278c9f833008a9beb4b7f9afe3 + - uses: taiki-e/install-action@37bdc826eaedac215f638a96472df572feab0f9b with: tool: wasm-pack - run: yarn build:wasm @@ -57,7 +57,7 @@ jobs: with: workspaces: './rust' - - uses: taiki-e/install-action@955a6ff1416eae278c9f833008a9beb4b7f9afe3 + - uses: taiki-e/install-action@37bdc826eaedac215f638a96472df572feab0f9b with: tool: wasm-pack - run: yarn build:wasm @@ -100,7 +100,7 @@ jobs: cache: 'yarn' - run: yarn install - - uses: taiki-e/install-action@955a6ff1416eae278c9f833008a9beb4b7f9afe3 + - uses: taiki-e/install-action@37bdc826eaedac215f638a96472df572feab0f9b with: tool: wasm-pack - run: yarn build:wasm @@ -129,7 +129,7 @@ jobs: cache: 'yarn' - run: yarn install - - uses: taiki-e/install-action@955a6ff1416eae278c9f833008a9beb4b7f9afe3 + - uses: taiki-e/install-action@37bdc826eaedac215f638a96472df572feab0f9b with: tool: wasm-pack - run: yarn build:wasm From 755c7df59c434e2e8b8ad8b772ec1a4b8c6864ce Mon Sep 17 00:00:00 2001 From: Jace Browning Date: Thu, 20 Mar 2025 16:08:35 -0400 Subject: [PATCH 15/20] Expand Makefile to run web and desktop apps (#5916) --- .gitignore | 1 + Makefile | 115 ++++++++++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 105 insertions(+), 11 deletions(-) diff --git a/.gitignore b/.gitignore index 07bb8482d..03e6f521b 100644 --- a/.gitignore +++ b/.gitignore @@ -50,6 +50,7 @@ e2e/playwright/**/*.png e2e/playwright/export-snapshots/* !e2e/playwright/export-snapshots/*.png !e2e/playwright/snapshot-tests.spec.ts-snapshots/*.png +trace.zip /public/kcl-samples.zip /public/kcl-samples/.github diff --git a/Makefile b/Makefile index cf7e44a81..05023bec6 100644 --- a/Makefile +++ b/Makefile @@ -1,12 +1,114 @@ -.PHONY: dev +.PHONY: all +all: install build check + +############################################################################### +# INSTALL + +WASM_PACK ?= ~/.cargo/bin/wasm-pack + +.PHONY: install +install: node_modules/.yarn-integrity $(WASM_PACK) ## Install dependencies + +node_modules/.yarn-integrity: package.json yarn.lock + yarn install + @ touch $@ + +$(WASM_PACK): + yarn install:rust + yarn install:wasm-pack:sh + +############################################################################### +# BUILD KCL_WASM_LIB_FILES := $(wildcard rust/**/*.rs) TS_SRC := $(wildcard src/**/*.tsx) $(wildcard src/**/*.ts) XSTATE_TYPEGENS := $(wildcard src/machines/*.typegen.ts) -dev: node_modules public/kcl_wasm_lib_bg.wasm $(XSTATE_TYPEGENS) +.PHONY: build +build: build-web build-desktop + +.PHONY: build-web +build-web: public/kcl_wasm_lib_bg.wasm $(XSTATE_TYPEGENS) build/index.html + +.PHONY: build-desktop +build-desktop: public/kcl_wasm_lib_bg.wasm $(XSTATE_TYPEGENS) .vite/build/main.js + +public/kcl_wasm_lib_bg.wasm: $(KCL_WASM_LIB_FILES) + yarn build:wasm + +$(XSTATE_TYPEGENS): $(TS_SRC) + yarn xstate typegen 'src/**/*.ts?(x)' + +build/index.html: $(TS_SRC) + yarn build:local + +.vite/build/main.js: $(TS_SRC) + yarn tronb:vite:dev + +############################################################################### +# CHECK + +.PHONY: check +check: format lint + +.PHONY: format +format: install ## Format the code + yarn fmt + +.PHONY: lint +lint: install ## Lint the code + yarn lint + +############################################################################### +# RUN + +.PHONY: run +run: run-web + +.PHONY: run-web +run-web: install build-web ## Start the web app yarn start +.PHONY: run-desktop +run-desktop: install build-desktop ## Start the desktop app + yarn tron:start + +############################################################################### +# TEST + +GREP ?= "" + +.PHONY: test +test: test-unit test-e2e + +.PHONY: test-unit +test-unit: install ## Run the unit tests + @ nc -z localhost 3000 || ( echo "Error: localhost:3000 not available, 'make run-web' first" && exit 1 ) + yarn test:unit + +.PHONY: test-e2e +test-e2e: install build-desktop ## Run the e2e tests + yarn test:playwright:electron --workers=1 --grep=$(GREP) + +############################################################################### +# CLEAN + +.PHONY: clean +clean: ## Delete all artifacts + rm -rf .vite/ build/ + rm -rf trace.zip playwright-report/ test-results/ + rm -rf public/kcl_wasm_lib_bg.wasm + rm -rf rust/*/bindings/ rust/*/pkg/ rust/target/ + rm -rf node_modules/ rust/*/node_modules/ + +.PHONY: help +help: install + @ grep -E '^[^[:space:]]+:.*## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' + +.DEFAULT_GOAL := help + +############################################################################### + # I'm sorry this is so specific to my setup you may as well ignore this. # This is so you don't have to deal with electron windows popping up constantly. # It should work for you other Linux users. @@ -14,12 +116,3 @@ lee-electron-test: Xephyr -br -ac -noreset -screen 1200x500 :2 & DISPLAY=:2 NODE_ENV=development PW_TEST_CONNECT_WS_ENDPOINT=ws://127.0.0.1:4444/ yarn tron:test -g "when using the file tree" killall Xephyr - -$(XSTATE_TYPEGENS): $(TS_SRC) - yarn xstate typegen 'src/**/*.ts?(x)' - -public/kcl_wasm_lib_bg.wasm: $(KCL_WASM_LIB_FILES) - yarn build:wasm - -node_modules: package.json yarn.lock - yarn install From 09c6f511417a197620ef70d60f6d534f55ce93a1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 20 Mar 2025 20:10:15 +0000 Subject: [PATCH 16/20] Bump the patch group in /packages/codemirror-lsp-client with 2 updates (#5825) --- packages/codemirror-lsp-client/package.json | 4 ++-- packages/codemirror-lsp-client/yarn.lock | 16 ++++++++-------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/codemirror-lsp-client/package.json b/packages/codemirror-lsp-client/package.json index bea005b20..661f9b89e 100644 --- a/packages/codemirror-lsp-client/package.json +++ b/packages/codemirror-lsp-client/package.json @@ -21,7 +21,7 @@ "@codemirror/autocomplete": "6.18.6", "@codemirror/language": "^6.11.0", "@codemirror/state": "^6.5.2", - "@lezer/highlight": "^1.2.0", + "@lezer/highlight": "^1.2.1", "@ts-stack/markdown": "^1.5.0", "json-rpc-2.0": "^1.7.0", "typescript": "^5.8.2", @@ -29,7 +29,7 @@ "vscode-uri": "^3.1.0" }, "devDependencies": { - "@types/node": "^22.13.9", + "@types/node": "^22.13.10", "ts-node": "^10.9.2" } } diff --git a/packages/codemirror-lsp-client/yarn.lock b/packages/codemirror-lsp-client/yarn.lock index 47154bc13..c4ac5167a 100644 --- a/packages/codemirror-lsp-client/yarn.lock +++ b/packages/codemirror-lsp-client/yarn.lock @@ -70,10 +70,10 @@ resolved "https://registry.yarnpkg.com/@lezer/common/-/common-1.2.1.tgz#198b278b7869668e1bebbe687586e12a42731049" integrity sha512-yemX0ZD2xS/73llMZIK6KplkjIjf2EvAHcinDi/TfJ9hS25G0388+ClHt6/3but0oOxinTcQHJLDXh6w1crzFQ== -"@lezer/highlight@^1.0.0", "@lezer/highlight@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@lezer/highlight/-/highlight-1.2.0.tgz#e5898c3644208b4b589084089dceeea2966f7780" - integrity sha512-WrS5Mw51sGrpqjlh3d4/fOwpEV2Hd3YOkp9DBt4k8XZQcoTHZFB7sx030A6OcahF4J1nDQAa3jXlTVVYH50IFA== +"@lezer/highlight@^1.0.0", "@lezer/highlight@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@lezer/highlight/-/highlight-1.2.1.tgz#596fa8f9aeb58a608be0a563e960c373cbf23f8b" + integrity sha512-Z5duk4RN/3zuVO7Jq0pGLJ3qynpxUVsh7IbUbGj88+uV2ApSAn6kWg2au3iJb+0Zi7kKtqffIESgNcRXWZWmSA== dependencies: "@lezer/common" "^1.0.0" @@ -116,10 +116,10 @@ resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.4.tgz#0b92dcc0cc1c81f6f306a381f28e31b1a56536e9" integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA== -"@types/node@^22.13.9": - version "22.13.9" - resolved "https://registry.yarnpkg.com/@types/node/-/node-22.13.9.tgz#5d9a8f7a975a5bd3ef267352deb96fb13ec02eca" - integrity sha512-acBjXdRJ3A6Pb3tqnw9HZmyR3Fiol3aGxRCK1x3d+6CDAMjl7I649wpSd+yNURCjbOUGu9tqtLKnTGxmK6CyGw== +"@types/node@^22.13.10": + version "22.13.10" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.13.10.tgz#df9ea358c5ed991266becc3109dc2dc9125d77e4" + integrity sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw== dependencies: undici-types "~6.20.0" From 2c6404f6716f40f744afccffe227e75c70bec0dd Mon Sep 17 00:00:00 2001 From: Jace Browning Date: Thu, 20 Mar 2025 16:28:08 -0400 Subject: [PATCH 17/20] Continue running broken tests for Axiom metrics (#5883) * Install Vector on Ubuntu to log failed test to Axiom * Allow flaky tests to run on main for Axiom metrics * Enable problematic tests on a dedicated branch --- .github/ci-cd-scripts/playwright-electron.sh | 38 +- .github/workflows/e2e-tests.yml | 20 +- e2e/playwright/basic-sketch.spec.ts | 3 +- e2e/playwright/code-pane-and-errors.spec.ts | 69 +- e2e/playwright/command-bar-tests.spec.ts | 3 +- e2e/playwright/editor-tests.spec.ts | 96 +- e2e/playwright/file-tree.spec.ts | 3 +- e2e/playwright/onboarding-tests.spec.ts | 439 ++--- e2e/playwright/point-click.spec.ts | 287 +-- e2e/playwright/projects.spec.ts | 9 +- e2e/playwright/prompt-to-edit.spec.ts | 95 +- e2e/playwright/regression-tests.spec.ts | 3 +- e2e/playwright/sketch-tests.spec.ts | 251 +-- e2e/playwright/snapshot-tests.spec.ts | 15 +- ...test-network-and-connection-issues.spec.ts | 4 +- .../testing-camera-movement.spec.ts | 311 ++-- e2e/playwright/testing-constraints.spec.ts | 180 +- .../testing-perspective-toggle.spec.ts | 3 +- .../testing-segment-overlays.spec.ts | 1619 ++++++++--------- e2e/playwright/testing-selections.spec.ts | 76 +- e2e/playwright/testing-settings.spec.ts | 458 +++-- e2e/playwright/text-to-cad-tests.spec.ts | 6 +- e2e/playwright/various.spec.ts | 330 ++-- 23 files changed, 2173 insertions(+), 2145 deletions(-) diff --git a/.github/ci-cd-scripts/playwright-electron.sh b/.github/ci-cd-scripts/playwright-electron.sh index d45556ba2..f5c5acc2b 100755 --- a/.github/ci-cd-scripts/playwright-electron.sh +++ b/.github/ci-cd-scripts/playwright-electron.sh @@ -4,27 +4,27 @@ set -euo pipefail if [[ ! -f "test-results/.last-run.json" ]]; then - # if no last run artifact, than run plawright normally + # If no last run artifact, than run Playwright normally echo "run playwright normally" - if [[ "$3" == *ubuntu* ]]; then - xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- yarn test:playwright:electron:ubuntu -- --shard=$1/$2 || true - elif [[ "$3" == *windows* ]]; then - yarn test:playwright:electron:windows -- --shard=$1/$2 || true - elif [[ "$3" == *macos* ]]; then - yarn test:playwright:electron:macos -- --shard=$1/$2 || true - else - echo "Do not run playwright. Unable to detect os runtime." - exit 1 - fi - # # send to axiom - node playwrightProcess.mjs | tee /tmp/github-actions.log > /dev/null 2>&1 + if [[ "$3" == *ubuntu* ]]; then + xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- yarn test:playwright:electron:ubuntu -- --shard=$1/$2 || true + elif [[ "$3" == *windows* ]]; then + yarn test:playwright:electron:windows -- --shard=$1/$2 || true + elif [[ "$3" == *macos* ]]; then + yarn test:playwright:electron:macos -- --shard=$1/$2 || true + else + echo "Do not run Playwright. Unable to detect os runtime." + exit 1 + fi + # Log failures for Axiom to pick up + node playwrightProcess.mjs > /tmp/github-actions.log fi retry=1 -max_retrys=1 +max_retries=1 -# retry failed tests, doing our own retries because using inbuilt playwright retries causes connection issues -while [[ $retry -le $max_retrys ]]; do +# Retry failed tests, doing our own retries because using inbuilt Playwright retries causes connection issues +while [[ $retry -le $max_retries ]]; do if [[ -f "test-results/.last-run.json" ]]; then failed_tests=$(jq '.failedTests | length' test-results/.last-run.json) if [[ $failed_tests -gt 0 ]]; then @@ -40,8 +40,8 @@ while [[ $retry -le $max_retrys ]]; do echo "Do not run playwright. Unable to detect os runtime." exit 1 fi - # send to axiom - node playwrightProcess.mjs | tee /tmp/github-actions.log > /dev/null 2>&1 + # Log failures for Axiom to pick up + node playwrightProcess.mjs > /tmp/github-actions.log retry=$((retry + 1)) else echo "retried=false" >>$GITHUB_OUTPUT @@ -58,7 +58,7 @@ echo "retried=false" >>$GITHUB_OUTPUT if [[ -f "test-results/.last-run.json" ]]; then failed_tests=$(jq '.failedTests | length' test-results/.last-run.json) if [[ $failed_tests -gt 0 ]]; then - # if it still fails after 3 retrys, then fail the job + # If it still fails after 3 retries, then fail the job exit 1 fi fi diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index da76f27b5..d9b187bdb 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -340,14 +340,22 @@ jobs: if: needs.conditions.outputs.should-run == 'true' run: yarn tronb:vite:dev - - name: Install good sed - if: startsWith(matrix.os, 'macos') + - name: Install vector + if: contains(matrix.os, 'ubuntu') shell: bash run: | - brew install gnu-sed - echo "/opt/homebrew/opt/gnu-sed/libexec/gnubin" >> $GITHUB_PATH - - # TODO: Add back axiom logs + curl --proto '=https' --tlsv1.2 -sSfL https://sh.vector.dev > /tmp/vector.sh + chmod +x /tmp/vector.sh + /tmp/vector.sh -y -no-modify-path + mkdir -p /tmp/vector + cp .github/workflows/vector.toml /tmp/vector.toml + sed -i "s#GITHUB_WORKFLOW#${GITHUB_WORKFLOW}#g" /tmp/vector.toml + sed -i "s#GITHUB_REPOSITORY#${GITHUB_REPOSITORY}#g" /tmp/vector.toml + sed -i "s#GITHUB_SHA#${GITHUB_SHA}#g" /tmp/vector.toml + sed -i "s#GITHUB_REF_NAME#${GITHUB_REF_NAME}#g" /tmp/vector.toml + sed -i "s#GH_ACTIONS_AXIOM_TOKEN#${{secrets.GH_ACTIONS_AXIOM_TOKEN}}#g" /tmp/vector.toml + cat /tmp/vector.toml + ${HOME}/.vector/bin/vector --config /tmp/vector.toml & - uses: actions/download-artifact@v4 if: ${{ needs.conditions.outputs.should-run == 'true' && !cancelled() && (success() || failure()) }} diff --git a/e2e/playwright/basic-sketch.spec.ts b/e2e/playwright/basic-sketch.spec.ts index 578e7e7ef..f80b18f6f 100644 --- a/e2e/playwright/basic-sketch.spec.ts +++ b/e2e/playwright/basic-sketch.spec.ts @@ -153,7 +153,8 @@ async function doBasicSketch( } test.describe('Basic sketch', { tag: ['@skipWin'] }, () => { - test.fixme('code pane open at start', async ({ page, homePage }) => { + test('code pane open at start', async ({ page, homePage }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') await doBasicSketch(page, homePage, ['code']) }) diff --git a/e2e/playwright/code-pane-and-errors.spec.ts b/e2e/playwright/code-pane-and-errors.spec.ts index 2b62ea0d6..91fcd8210 100644 --- a/e2e/playwright/code-pane-and-errors.spec.ts +++ b/e2e/playwright/code-pane-and-errors.spec.ts @@ -46,11 +46,12 @@ test.describe('Code pane and errors', { tag: ['@skipWin'] }, () => { await expect(codePaneButtonHolder).toContainText('notification') }) - test.skip('Opening and closing the code pane will consistently show error diagnostics', async ({ + test('Opening and closing the code pane will consistently show error diagnostics', async ({ page, homePage, editor, }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') const u = await getUtils(page) // Load the app with the working starter code @@ -119,45 +120,47 @@ test.describe('Code pane and errors', { tag: ['@skipWin'] }, () => { await expect(page.locator('.cm-tooltip').first()).toBeVisible() }) - test.fixme( - 'When error is not in view you can click the badge to scroll to it', - async ({ page, homePage, context }) => { - // Load the app with the working starter code - await context.addInitScript((code) => { - localStorage.setItem('persistCode', code) - }, TEST_CODE_LONG_WITH_ERROR_OUT_OF_VIEW) + test('When error is not in view you can click the badge to scroll to it', async ({ + page, + homePage, + context, + }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + // Load the app with the working starter code + await context.addInitScript((code) => { + localStorage.setItem('persistCode', code) + }, TEST_CODE_LONG_WITH_ERROR_OUT_OF_VIEW) - await page.setBodyDimensions({ width: 1200, height: 500 }) - await homePage.goToModelingScene() + await page.setBodyDimensions({ width: 1200, height: 500 }) + await homePage.goToModelingScene() - await page.waitForTimeout(1000) + await page.waitForTimeout(1000) - // Ensure badge is present - const codePaneButtonHolder = page.locator('#code-button-holder') - await expect(codePaneButtonHolder).toContainText('notification') + // Ensure badge is present + const codePaneButtonHolder = page.locator('#code-button-holder') + await expect(codePaneButtonHolder).toContainText('notification') - // Ensure we have no errors in the gutter, since error out of view. - await expect(page.locator('.cm-lint-marker-error')).not.toBeVisible() + // Ensure we have no errors in the gutter, since error out of view. + await expect(page.locator('.cm-lint-marker-error')).not.toBeVisible() - // Click the badge. - const badge = page.locator('#code-badge') - await expect(badge).toBeVisible() - await badge.click() + // Click the badge. + const badge = page.locator('#code-badge') + await expect(badge).toBeVisible() + await badge.click() - // Ensure we have an error diagnostic. - await expect(page.locator('.cm-lint-marker-error').first()).toBeVisible() + // Ensure we have an error diagnostic. + await expect(page.locator('.cm-lint-marker-error').first()).toBeVisible() - // Hover over the error to see the error message - await page.hover('.cm-lint-marker-error') - await expect( - page - .getByText( - 'Modeling command failed: [ApiError { error_code: InternalEngine, message: "Solid3D revolve failed: sketch profile must lie entirely on one side of the revolution axis" }]' - ) - .first() - ).toBeVisible() - } - ) + // Hover over the error to see the error message + await page.hover('.cm-lint-marker-error') + await expect( + page + .getByText( + 'Modeling command failed: [ApiError { error_code: InternalEngine, message: "Solid3D revolve failed: sketch profile must lie entirely on one side of the revolution axis" }]' + ) + .first() + ).toBeVisible() + }) test('When error is not in view WITH LINTS you can click the badge to scroll to it', async ({ context, diff --git a/e2e/playwright/command-bar-tests.spec.ts b/e2e/playwright/command-bar-tests.spec.ts index 4db44bdbe..2c6195fd4 100644 --- a/e2e/playwright/command-bar-tests.spec.ts +++ b/e2e/playwright/command-bar-tests.spec.ts @@ -47,7 +47,8 @@ test.describe('Command bar tests', { tag: ['@skipWin'] }, () => { }) // TODO: fix this test after the electron migration - test.fixme('Fillet from command bar', async ({ page, homePage }) => { + test('Fillet from command bar', async ({ page, homePage }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') await page.addInitScript(async () => { localStorage.setItem( 'persistCode', diff --git a/e2e/playwright/editor-tests.spec.ts b/e2e/playwright/editor-tests.spec.ts index 7ded79e2d..6f6df4882 100644 --- a/e2e/playwright/editor-tests.spec.ts +++ b/e2e/playwright/editor-tests.spec.ts @@ -635,14 +635,16 @@ test.describe('Editor tests', { tag: ['@skipWin'] }, () => { await expect(page.locator('.cm-lint-marker-error')).not.toBeVisible() }) - test.fixme( - 'error with 2 source ranges gets 2 diagnostics', - async ({ page, homePage }) => { - const u = await getUtils(page) - await page.addInitScript(async () => { - localStorage.setItem( - 'persistCode', - `length = .750 + test('error with 2 source ranges gets 2 diagnostics', async ({ + page, + homePage, + }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + const u = await getUtils(page) + await page.addInitScript(async () => { + localStorage.setItem( + 'persistCode', + `length = .750 width = 0.500 height = 0.500 dia = 4 @@ -657,53 +659,52 @@ test.describe('Editor tests', { tag: ['@skipWin'] }, () => { return squareHoleSketch } ` - ) - }) - await page.setBodyDimensions({ width: 1000, height: 500 }) + ) + }) + await page.setBodyDimensions({ width: 1000, height: 500 }) - await homePage.goToModelingScene() - await u.waitForPageLoad() - await page.waitForTimeout(1000) + await homePage.goToModelingScene() + await u.waitForPageLoad() + await page.waitForTimeout(1000) - await u.openDebugPanel() - await u.expectCmdLog('[data-message-type="execution-done"]') - await u.closeDebugPanel() + await u.openDebugPanel() + await u.expectCmdLog('[data-message-type="execution-done"]') + await u.closeDebugPanel() - // check no error to begin with - await expect(page.locator('.cm-lint-marker-error')).not.toBeVisible() + // check no error to begin with + await expect(page.locator('.cm-lint-marker-error')).not.toBeVisible() - // Click on the bottom of the code editor to add a new line - await u.codeLocator.click() - await page.keyboard.press('ArrowDown') - await page.keyboard.press('ArrowDown') - await page.keyboard.press('ArrowDown') - await page.keyboard.press('ArrowDown') - await page.keyboard.press('ArrowDown') - await page.keyboard.press('ArrowDown') - await page.keyboard.press('ArrowDown') - await page.keyboard.press('ArrowDown') - await page.keyboard.press('ArrowDown') - await page.keyboard.press('ArrowDown') - await page.keyboard.press('ArrowDown') - await page.keyboard.press('ArrowDown') - await page.keyboard.press('ArrowDown') - await page.keyboard.press('Enter') - await page.keyboard.type(`extrusion = startSketchOn('XY') + // Click on the bottom of the code editor to add a new line + await u.codeLocator.click() + await page.keyboard.press('ArrowDown') + await page.keyboard.press('ArrowDown') + await page.keyboard.press('ArrowDown') + await page.keyboard.press('ArrowDown') + await page.keyboard.press('ArrowDown') + await page.keyboard.press('ArrowDown') + await page.keyboard.press('ArrowDown') + await page.keyboard.press('ArrowDown') + await page.keyboard.press('ArrowDown') + await page.keyboard.press('ArrowDown') + await page.keyboard.press('ArrowDown') + await page.keyboard.press('ArrowDown') + await page.keyboard.press('ArrowDown') + await page.keyboard.press('Enter') + await page.keyboard.type(`extrusion = startSketchOn('XY') |> circle(center: [0, 0], radius: dia/2) |> hole(squareHole(length, width, height), %) |> extrude(length = height)`) - // error in gutter - await expect(page.locator('.cm-lint-marker-error').first()).toBeVisible() - await page.hover('.cm-lint-marker-error:first-child') - await expect( - page.getByText('Expected 2 arguments, got 3').first() - ).toBeVisible() + // error in gutter + await expect(page.locator('.cm-lint-marker-error').first()).toBeVisible() + await page.hover('.cm-lint-marker-error:first-child') + await expect( + page.getByText('Expected 2 arguments, got 3').first() + ).toBeVisible() - // Make sure there are two diagnostics - await expect(page.locator('.cm-lint-marker-error')).toHaveCount(2) - } - ) + // Make sure there are two diagnostics + await expect(page.locator('.cm-lint-marker-error')).toHaveCount(2) + }) test('if your kcl gets an error from the engine it is inlined', async ({ context, page, @@ -1121,10 +1122,11 @@ test.describe('Editor tests', { tag: ['@skipWin'] }, () => { } ) - test.fixme( + test( `Can use the import stdlib function on a local OBJ file`, { tag: '@electron' }, async ({ page, context }, testInfo) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') await context.folderSetupFn(async (dir) => { const bracketDir = join(dir, 'cube') await fsp.mkdir(bracketDir, { recursive: true }) diff --git a/e2e/playwright/file-tree.spec.ts b/e2e/playwright/file-tree.spec.ts index ca08f3a90..1e90d485f 100644 --- a/e2e/playwright/file-tree.spec.ts +++ b/e2e/playwright/file-tree.spec.ts @@ -266,12 +266,13 @@ test.describe('when using the file tree to', () => { } ) - test.fixme( + test( 'loading small file, then large, then back to small', { tag: '@electron', }, async ({ page }, testInfo) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') const { panesOpen, pasteCodeInEditor, diff --git a/e2e/playwright/onboarding-tests.spec.ts b/e2e/playwright/onboarding-tests.spec.ts index 8be152a44..7a0e80516 100644 --- a/e2e/playwright/onboarding-tests.spec.ts +++ b/e2e/playwright/onboarding-tests.spec.ts @@ -319,237 +319,240 @@ test.describe('Onboarding tests', () => { // (lee) The two avatar tests are weird because even on main, we don't have // anything to do with the avatar inside the onboarding test. Due to the // low impact of an avatar not showing I'm changing this to fixme. - test.fixme( - 'Avatar text updates depending on image load success', - async ({ context, page, homePage, tronApp }) => { - if (!tronApp) { - fail() - } - - await tronApp.cleanProjectDir({ - app: { - onboarding_status: '', - }, - }) - - // Override beforeEach test setup - await context.addInitScript( - async ({ settingsKey, settings }) => { - localStorage.setItem(settingsKey, settings) - }, - { - settingsKey: TEST_SETTINGS_KEY, - settings: settingsToToml({ - settings: TEST_SETTINGS_ONBOARDING_USER_MENU, - }), - } - ) - - await page.setBodyDimensions({ width: 1200, height: 500 }) - await homePage.goToModelingScene() - - // Test that the text in this step is correct - const avatarLocator = page - .getByTestId('user-sidebar-toggle') - .locator('img') - const onboardingOverlayLocator = page - .getByTestId('onboarding-content') - .locator('div') - .nth(1) - - // Expect the avatar to be visible and for the text to reference it - await expect(avatarLocator).toBeVisible() - await expect(onboardingOverlayLocator).toBeVisible() - await expect(onboardingOverlayLocator).toContainText('your avatar') - - // This is to force the avatar to 404. - // For our test image (only triggers locally. on CI, it's Kurt's / - // gravatar image ) - await page.route('/cat.jpg', async (route) => { - await route.fulfill({ - status: 404, - contentType: 'text/plain', - body: 'Not Found!', - }) - }) - - // 404 the CI avatar image - await page.route( - 'https://lh3.googleusercontent.com/**', - async (route) => { - await route.fulfill({ - status: 404, - contentType: 'text/plain', - body: 'Not Found!', - }) - } - ) - - await page.reload({ waitUntil: 'domcontentloaded' }) - - // Now expect the text to be different - await expect(avatarLocator).not.toBeVisible() - await expect(onboardingOverlayLocator).toBeVisible() - await expect(onboardingOverlayLocator).toContainText('the menu button') - } - ) - - test.fixme( - "Avatar text doesn't mention avatar when no avatar", - async ({ context, page, homePage, tronApp }) => { - if (!tronApp) { - fail() - } - - await tronApp.cleanProjectDir({ - app: { - onboarding_status: '', - }, - }) - // Override beforeEach test setup - await context.addInitScript( - async ({ settingsKey, settings }) => { - localStorage.setItem(settingsKey, settings) - localStorage.setItem('FORCE_NO_IMAGE', 'FORCE_NO_IMAGE') - }, - { - settingsKey: TEST_SETTINGS_KEY, - settings: settingsToToml({ - settings: TEST_SETTINGS_ONBOARDING_USER_MENU, - }), - } - ) - - await page.setBodyDimensions({ width: 1200, height: 500 }) - await homePage.goToModelingScene() - - // Test that the text in this step is correct - const sidebar = page.getByTestId('user-sidebar-toggle') - const avatar = sidebar.locator('img') - const onboardingOverlayLocator = page - .getByTestId('onboarding-content') - .locator('div') - .nth(1) - - // Expect the avatar to be visible and for the text to reference it - await expect(avatar).not.toBeVisible() - await expect(onboardingOverlayLocator).toBeVisible() - await expect(onboardingOverlayLocator).toContainText('the menu button') - - // Test we mention what else is in this menu for https://github.com/KittyCAD/modeling-app/issues/2939 - // which doesn't deserver its own full test spun up - const userMenuFeatures = [ - 'manage your account', - 'report a bug', - 'request a feature', - 'sign out', - ] - for (const feature of userMenuFeatures) { - await expect(onboardingOverlayLocator).toContainText(feature) - } - } - ) -}) - -test.fixme( - 'Restarting onboarding on desktop takes one attempt', - async ({ context, page, tronApp }) => { + test('Avatar text updates depending on image load success', async ({ + context, + page, + homePage, + tronApp, + }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') if (!tronApp) { fail() } await tronApp.cleanProjectDir({ app: { - onboarding_status: 'dismissed', + onboarding_status: '', }, }) - await context.folderSetupFn(async (dir) => { - const routerTemplateDir = join(dir, 'router-template-slate') - await fsp.mkdir(routerTemplateDir, { recursive: true }) - await fsp.copyFile( - executorInputPath('router-template-slate.kcl'), - join(routerTemplateDir, 'main.kcl') - ) - }) + // Override beforeEach test setup + await context.addInitScript( + async ({ settingsKey, settings }) => { + localStorage.setItem(settingsKey, settings) + }, + { + settingsKey: TEST_SETTINGS_KEY, + settings: settingsToToml({ + settings: TEST_SETTINGS_ONBOARDING_USER_MENU, + }), + } + ) - // Our constants - const u = await getUtils(page) - const projectCard = page.getByText('router-template-slate') - const helpMenuButton = page.getByRole('button', { - name: 'Help and resources', - }) - const restartOnboardingButton = page.getByRole('button', { - name: 'Reset onboarding', - }) - const nextButton = page.getByTestId('onboarding-next') + await page.setBodyDimensions({ width: 1200, height: 500 }) + await homePage.goToModelingScene() - const tutorialProjectIndicator = page - .getByTestId('project-sidebar-toggle') - .filter({ hasText: 'Tutorial Project 00' }) - const tutorialModalText = page.getByText('Welcome to Modeling App!') - const tutorialDismissButton = page.getByRole('button', { name: 'Dismiss' }) - const userMenuButton = page.getByTestId('user-sidebar-toggle') - const userMenuSettingsButton = page.getByRole('button', { - name: 'User settings', - }) - const settingsHeading = page.getByRole('heading', { - name: 'Settings', - exact: true, - }) - const restartOnboardingSettingsButton = page.getByRole('button', { - name: 'Replay onboarding', - }) + // Test that the text in this step is correct + const avatarLocator = page.getByTestId('user-sidebar-toggle').locator('img') + const onboardingOverlayLocator = page + .getByTestId('onboarding-content') + .locator('div') + .nth(1) - await test.step('Navigate into project', async () => { - await expect( - page.getByRole('heading', { name: 'Your Projects' }) - ).toBeVisible() - await expect(projectCard).toBeVisible() - await projectCard.click() - await u.waitForPageLoad() - }) + // Expect the avatar to be visible and for the text to reference it + await expect(avatarLocator).toBeVisible() + await expect(onboardingOverlayLocator).toBeVisible() + await expect(onboardingOverlayLocator).toContainText('your avatar') - await test.step('Restart the onboarding from help menu', async () => { - await helpMenuButton.click() - await restartOnboardingButton.click() - - await nextButton.hover() - await nextButton.click() - }) - - await test.step('Confirm that the onboarding has restarted', async () => { - await expect(tutorialProjectIndicator).toBeVisible() - await expect(tutorialModalText).toBeVisible() - // Make sure the model loaded - const XYPlanePoint = { x: 988, y: 523 } as const - const modelColor: [number, number, number] = [76, 76, 76] - - await page.mouse.move(XYPlanePoint.x, XYPlanePoint.y) - await expectPixelColor(page, modelColor, XYPlanePoint, 8) - await tutorialDismissButton.click() - // Make sure model still there. - await expectPixelColor(page, modelColor, XYPlanePoint, 8) - }) - - await test.step('Clear code and restart onboarding from settings', async () => { - await u.openKclCodePanel() - await expect(u.codeLocator).toContainText('// Shelf Bracket') - await u.codeLocator.selectText() - await u.codeLocator.fill('') - - await test.step('Navigate to settings', async () => { - await userMenuButton.click() - await userMenuSettingsButton.click() - await expect(settingsHeading).toBeVisible() - await expect(restartOnboardingSettingsButton).toBeVisible() + // This is to force the avatar to 404. + // For our test image (only triggers locally. on CI, it's Kurt's / + // gravatar image ) + await page.route('/cat.jpg', async (route) => { + await route.fulfill({ + status: 404, + contentType: 'text/plain', + body: 'Not Found!', }) - - await restartOnboardingSettingsButton.click() - // Since the code is empty, we should not see the confirmation dialog - await expect(nextButton).not.toBeVisible() - await expect(tutorialProjectIndicator).toBeVisible() - await expect(tutorialModalText).toBeVisible() }) + + // 404 the CI avatar image + await page.route('https://lh3.googleusercontent.com/**', async (route) => { + await route.fulfill({ + status: 404, + contentType: 'text/plain', + body: 'Not Found!', + }) + }) + + await page.reload({ waitUntil: 'domcontentloaded' }) + + // Now expect the text to be different + await expect(avatarLocator).not.toBeVisible() + await expect(onboardingOverlayLocator).toBeVisible() + await expect(onboardingOverlayLocator).toContainText('the menu button') + }) + + test("Avatar text doesn't mention avatar when no avatar", async ({ + context, + page, + homePage, + tronApp, + }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + if (!tronApp) { + fail() + } + + await tronApp.cleanProjectDir({ + app: { + onboarding_status: '', + }, + }) + // Override beforeEach test setup + await context.addInitScript( + async ({ settingsKey, settings }) => { + localStorage.setItem(settingsKey, settings) + localStorage.setItem('FORCE_NO_IMAGE', 'FORCE_NO_IMAGE') + }, + { + settingsKey: TEST_SETTINGS_KEY, + settings: settingsToToml({ + settings: TEST_SETTINGS_ONBOARDING_USER_MENU, + }), + } + ) + + await page.setBodyDimensions({ width: 1200, height: 500 }) + await homePage.goToModelingScene() + + // Test that the text in this step is correct + const sidebar = page.getByTestId('user-sidebar-toggle') + const avatar = sidebar.locator('img') + const onboardingOverlayLocator = page + .getByTestId('onboarding-content') + .locator('div') + .nth(1) + + // Expect the avatar to be visible and for the text to reference it + await expect(avatar).not.toBeVisible() + await expect(onboardingOverlayLocator).toBeVisible() + await expect(onboardingOverlayLocator).toContainText('the menu button') + + // Test we mention what else is in this menu for https://github.com/KittyCAD/modeling-app/issues/2939 + // which doesn't deserver its own full test spun up + const userMenuFeatures = [ + 'manage your account', + 'report a bug', + 'request a feature', + 'sign out', + ] + for (const feature of userMenuFeatures) { + await expect(onboardingOverlayLocator).toContainText(feature) + } + }) +}) + +test('Restarting onboarding on desktop takes one attempt', async ({ + context, + page, + tronApp, +}) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + if (!tronApp) { + fail() } -) + + await tronApp.cleanProjectDir({ + app: { + onboarding_status: 'dismissed', + }, + }) + + await context.folderSetupFn(async (dir) => { + const routerTemplateDir = join(dir, 'router-template-slate') + await fsp.mkdir(routerTemplateDir, { recursive: true }) + await fsp.copyFile( + executorInputPath('router-template-slate.kcl'), + join(routerTemplateDir, 'main.kcl') + ) + }) + + // Our constants + const u = await getUtils(page) + const projectCard = page.getByText('router-template-slate') + const helpMenuButton = page.getByRole('button', { + name: 'Help and resources', + }) + const restartOnboardingButton = page.getByRole('button', { + name: 'Reset onboarding', + }) + const nextButton = page.getByTestId('onboarding-next') + + const tutorialProjectIndicator = page + .getByTestId('project-sidebar-toggle') + .filter({ hasText: 'Tutorial Project 00' }) + const tutorialModalText = page.getByText('Welcome to Modeling App!') + const tutorialDismissButton = page.getByRole('button', { name: 'Dismiss' }) + const userMenuButton = page.getByTestId('user-sidebar-toggle') + const userMenuSettingsButton = page.getByRole('button', { + name: 'User settings', + }) + const settingsHeading = page.getByRole('heading', { + name: 'Settings', + exact: true, + }) + const restartOnboardingSettingsButton = page.getByRole('button', { + name: 'Replay onboarding', + }) + + await test.step('Navigate into project', async () => { + await expect( + page.getByRole('heading', { name: 'Your Projects' }) + ).toBeVisible() + await expect(projectCard).toBeVisible() + await projectCard.click() + await u.waitForPageLoad() + }) + + await test.step('Restart the onboarding from help menu', async () => { + await helpMenuButton.click() + await restartOnboardingButton.click() + + await nextButton.hover() + await nextButton.click() + }) + + await test.step('Confirm that the onboarding has restarted', async () => { + await expect(tutorialProjectIndicator).toBeVisible() + await expect(tutorialModalText).toBeVisible() + // Make sure the model loaded + const XYPlanePoint = { x: 988, y: 523 } as const + const modelColor: [number, number, number] = [76, 76, 76] + + await page.mouse.move(XYPlanePoint.x, XYPlanePoint.y) + await expectPixelColor(page, modelColor, XYPlanePoint, 8) + await tutorialDismissButton.click() + // Make sure model still there. + await expectPixelColor(page, modelColor, XYPlanePoint, 8) + }) + + await test.step('Clear code and restart onboarding from settings', async () => { + await u.openKclCodePanel() + await expect(u.codeLocator).toContainText('// Shelf Bracket') + await u.codeLocator.selectText() + await u.codeLocator.fill('') + + await test.step('Navigate to settings', async () => { + await userMenuButton.click() + await userMenuSettingsButton.click() + await expect(settingsHeading).toBeVisible() + await expect(restartOnboardingSettingsButton).toBeVisible() + }) + + await restartOnboardingSettingsButton.click() + // Since the code is empty, we should not see the confirmation dialog + await expect(nextButton).not.toBeVisible() + await expect(tutorialProjectIndicator).toBeVisible() + await expect(tutorialModalText).toBeVisible() + }) +}) diff --git a/e2e/playwright/point-click.spec.ts b/e2e/playwright/point-click.spec.ts index 5800a7b7d..6b5f764cb 100644 --- a/e2e/playwright/point-click.spec.ts +++ b/e2e/playwright/point-click.spec.ts @@ -850,157 +850,160 @@ openSketch = startSketchOn('XY') }) }) - test.fixme( - `Shift-click to select and deselect sketch segments`, - async ({ page, homePage, scene, editor }) => { - // Locators - const firstPointLocation = { x: 200, y: 100 } - const secondPointLocation = { x: 800, y: 100 } - const thirdPointLocation = { x: 800, y: 400 } - const fristSegmentLocation = { x: 750, y: 100 } - const secondSegmentLocation = { x: 800, y: 150 } - const planeLocation = { x: 700, y: 200 } + test(`Shift-click to select and deselect sketch segments`, async ({ + page, + homePage, + scene, + editor, + }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + // Locators + const firstPointLocation = { x: 200, y: 100 } + const secondPointLocation = { x: 800, y: 100 } + const thirdPointLocation = { x: 800, y: 400 } + const fristSegmentLocation = { x: 750, y: 100 } + const secondSegmentLocation = { x: 800, y: 150 } + const planeLocation = { x: 700, y: 200 } - // Click helpers - const [clickFirstPoint] = scene.makeMouseHelpers( - firstPointLocation.x, - firstPointLocation.y - ) - const [clickSecondPoint] = scene.makeMouseHelpers( - secondPointLocation.x, - secondPointLocation.y - ) - const [clickThirdPoint] = scene.makeMouseHelpers( - thirdPointLocation.x, - thirdPointLocation.y - ) - const [clickFirstSegment] = scene.makeMouseHelpers( - fristSegmentLocation.x, - fristSegmentLocation.y - ) - const [clickSecondSegment] = scene.makeMouseHelpers( - secondSegmentLocation.x, - secondSegmentLocation.y - ) - const [clickPlane] = scene.makeMouseHelpers( - planeLocation.x, - planeLocation.y - ) + // Click helpers + const [clickFirstPoint] = scene.makeMouseHelpers( + firstPointLocation.x, + firstPointLocation.y + ) + const [clickSecondPoint] = scene.makeMouseHelpers( + secondPointLocation.x, + secondPointLocation.y + ) + const [clickThirdPoint] = scene.makeMouseHelpers( + thirdPointLocation.x, + thirdPointLocation.y + ) + const [clickFirstSegment] = scene.makeMouseHelpers( + fristSegmentLocation.x, + fristSegmentLocation.y + ) + const [clickSecondSegment] = scene.makeMouseHelpers( + secondSegmentLocation.x, + secondSegmentLocation.y + ) + const [clickPlane] = scene.makeMouseHelpers( + planeLocation.x, + planeLocation.y + ) - // Colors - const edgeColorWhite: [number, number, number] = [220, 220, 220] - const edgeColorBlue: [number, number, number] = [20, 20, 200] - const backgroundColor: [number, number, number] = [30, 30, 30] - const tolerance = 40 - const timeout = 150 + // Colors + const edgeColorWhite: [number, number, number] = [220, 220, 220] + const edgeColorBlue: [number, number, number] = [20, 20, 200] + const backgroundColor: [number, number, number] = [30, 30, 30] + const tolerance = 40 + const timeout = 150 - // Setup - await test.step(`Initial test setup`, async () => { - await page.setBodyDimensions({ width: 1000, height: 500 }) - await homePage.goToModelingScene() + // Setup + await test.step(`Initial test setup`, async () => { + await page.setBodyDimensions({ width: 1000, height: 500 }) + await homePage.goToModelingScene() - // Wait for the scene and stream to load + // Wait for the scene and stream to load + await scene.expectPixelColor( + backgroundColor, + secondPointLocation, + tolerance + ) + }) + + await test.step('Select and deselect a single sketch segment', async () => { + await test.step('Get into sketch mode', async () => { + await editor.closePane() + await page.waitForTimeout(timeout) + await page.getByRole('button', { name: 'Start Sketch' }).click() + await page.waitForTimeout(timeout) + await clickPlane() + await page.waitForTimeout(1000) + }) + await test.step('Draw sketch', async () => { + await clickFirstPoint() + await page.waitForTimeout(timeout) + await clickSecondPoint() + await page.waitForTimeout(timeout) + await clickThirdPoint() + await page.waitForTimeout(timeout) + }) + await test.step('Deselect line tool', async () => { + const btnLine = page.getByTestId('line') + const btnLineAriaPressed = await btnLine.getAttribute('aria-pressed') + if (btnLineAriaPressed === 'true') { + await btnLine.click() + } + await page.waitForTimeout(timeout) + }) + await test.step('Select the first segment', async () => { + await page.waitForTimeout(timeout) + await clickFirstSegment() + await page.waitForTimeout(timeout) await scene.expectPixelColor( - backgroundColor, - secondPointLocation, + edgeColorBlue, + fristSegmentLocation, + tolerance + ) + await scene.expectPixelColor( + edgeColorWhite, + secondSegmentLocation, tolerance ) }) - - await test.step('Select and deselect a single sketch segment', async () => { - await test.step('Get into sketch mode', async () => { - await editor.closePane() - await page.waitForTimeout(timeout) - await page.getByRole('button', { name: 'Start Sketch' }).click() - await page.waitForTimeout(timeout) - await clickPlane() - await page.waitForTimeout(1000) - }) - await test.step('Draw sketch', async () => { - await clickFirstPoint() - await page.waitForTimeout(timeout) - await clickSecondPoint() - await page.waitForTimeout(timeout) - await clickThirdPoint() - await page.waitForTimeout(timeout) - }) - await test.step('Deselect line tool', async () => { - const btnLine = page.getByTestId('line') - const btnLineAriaPressed = await btnLine.getAttribute('aria-pressed') - if (btnLineAriaPressed === 'true') { - await btnLine.click() - } - await page.waitForTimeout(timeout) - }) - await test.step('Select the first segment', async () => { - await page.waitForTimeout(timeout) - await clickFirstSegment() - await page.waitForTimeout(timeout) - await scene.expectPixelColor( - edgeColorBlue, - fristSegmentLocation, - tolerance - ) - await scene.expectPixelColor( - edgeColorWhite, - secondSegmentLocation, - tolerance - ) - }) - await test.step('Select the second segment (Shift-click)', async () => { - await page.keyboard.down('Shift') - await page.waitForTimeout(timeout) - await clickSecondSegment() - await page.waitForTimeout(timeout) - await page.keyboard.up('Shift') - await scene.expectPixelColor( - edgeColorBlue, - fristSegmentLocation, - tolerance - ) - await scene.expectPixelColor( - edgeColorBlue, - secondSegmentLocation, - tolerance - ) - }) - await test.step('Deselect the first segment', async () => { - await page.keyboard.down('Shift') - await page.waitForTimeout(timeout) - await clickFirstSegment() - await page.waitForTimeout(timeout) - await page.keyboard.up('Shift') - await scene.expectPixelColor( - edgeColorWhite, - fristSegmentLocation, - tolerance - ) - await scene.expectPixelColor( - edgeColorBlue, - secondSegmentLocation, - tolerance - ) - }) - await test.step('Deselect the second segment', async () => { - await page.keyboard.down('Shift') - await page.waitForTimeout(timeout) - await clickSecondSegment() - await page.waitForTimeout(timeout) - await page.keyboard.up('Shift') - await scene.expectPixelColor( - edgeColorWhite, - fristSegmentLocation, - tolerance - ) - await scene.expectPixelColor( - edgeColorWhite, - secondSegmentLocation, - tolerance - ) - }) + await test.step('Select the second segment (Shift-click)', async () => { + await page.keyboard.down('Shift') + await page.waitForTimeout(timeout) + await clickSecondSegment() + await page.waitForTimeout(timeout) + await page.keyboard.up('Shift') + await scene.expectPixelColor( + edgeColorBlue, + fristSegmentLocation, + tolerance + ) + await scene.expectPixelColor( + edgeColorBlue, + secondSegmentLocation, + tolerance + ) }) - } - ) + await test.step('Deselect the first segment', async () => { + await page.keyboard.down('Shift') + await page.waitForTimeout(timeout) + await clickFirstSegment() + await page.waitForTimeout(timeout) + await page.keyboard.up('Shift') + await scene.expectPixelColor( + edgeColorWhite, + fristSegmentLocation, + tolerance + ) + await scene.expectPixelColor( + edgeColorBlue, + secondSegmentLocation, + tolerance + ) + }) + await test.step('Deselect the second segment', async () => { + await page.keyboard.down('Shift') + await page.waitForTimeout(timeout) + await clickSecondSegment() + await page.waitForTimeout(timeout) + await page.keyboard.up('Shift') + await scene.expectPixelColor( + edgeColorWhite, + fristSegmentLocation, + tolerance + ) + await scene.expectPixelColor( + edgeColorWhite, + secondSegmentLocation, + tolerance + ) + }) + }) + }) test(`Offset plane point-and-click`, async ({ context, diff --git a/e2e/playwright/projects.spec.ts b/e2e/playwright/projects.spec.ts index aa8d1a520..0b4262338 100644 --- a/e2e/playwright/projects.spec.ts +++ b/e2e/playwright/projects.spec.ts @@ -1244,10 +1244,11 @@ test( } ) -test.fixme( +test( 'Deleting projects, can delete individual project, can still create projects after deleting all', { tag: '@electron' }, async ({ context, page }, testInfo) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') const projectData = [ ['router-template-slate', 'cylinder.kcl'], ['bracket', 'focusrite_scarlett_mounting_braket.kcl'], @@ -1466,10 +1467,11 @@ test( } ) -test.fixme( +test( 'When the project folder is empty, user can create new project and open it.', { tag: '@electron' }, async ({ page }, testInfo) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') const u = await getUtils(page) await page.setBodyDimensions({ width: 1200, height: 500 }) @@ -2050,10 +2052,11 @@ test( ) // Flaky -test.fixme( +test( 'Original project name persist after onboarding', { tag: '@electron' }, async ({ page }, testInfo) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') await page.setBodyDimensions({ width: 1200, height: 500 }) const getAllProjects = () => page.getByTestId('project-link').all() diff --git a/e2e/playwright/prompt-to-edit.spec.ts b/e2e/playwright/prompt-to-edit.spec.ts index d599df869..bb17c75a4 100644 --- a/e2e/playwright/prompt-to-edit.spec.ts +++ b/e2e/playwright/prompt-to-edit.spec.ts @@ -196,60 +196,65 @@ test.describe('Prompt-to-edit tests', { tag: '@skipWin' }, () => { }) }) - test.fixme( - `manual code selection rename`, - async ({ context, homePage, cmdBar, editor, page, scene }) => { - const body1CapCoords = { x: 571, y: 311 } + test(`manual code selection rename`, async ({ + context, + homePage, + cmdBar, + editor, + page, + scene, + }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + const body1CapCoords = { x: 571, y: 311 } - await context.addInitScript((file) => { - localStorage.setItem('persistCode', file) - }, file) - await homePage.goToModelingScene() - await scene.waitForExecutionDone() + await context.addInitScript((file) => { + localStorage.setItem('persistCode', file) + }, file) + await homePage.goToModelingScene() + await scene.waitForExecutionDone() - const submittingToast = page.getByText('Submitting to Text-to-CAD API...') - const successToast = page.getByText('Prompt to edit successful') - const acceptBtn = page.getByRole('button', { name: 'checkmark Accept' }) + const submittingToast = page.getByText('Submitting to Text-to-CAD API...') + const successToast = page.getByText('Prompt to edit successful') + const acceptBtn = page.getByRole('button', { name: 'checkmark Accept' }) - await test.step('wait for scene to load and select code in editor', async () => { - // Find and select the text "sketch002" in the editor - await editor.selectText('sketch002') + await test.step('wait for scene to load and select code in editor', async () => { + // Find and select the text "sketch002" in the editor + await editor.selectText('sketch002') - // Verify the selection was made - await editor.expectState({ - highlightedCode: '', - activeLines: ["sketch002 = startSketchOn('XZ')"], - diagnostics: [], - }) + // Verify the selection was made + await editor.expectState({ + highlightedCode: '', + activeLines: ["sketch002 = startSketchOn('XZ')"], + diagnostics: [], }) + }) - await test.step('fire off edit prompt', async () => { - await scene.expectPixelColor([134, 134, 134], body1CapCoords, 15) - await cmdBar.openCmdBar('promptToEdit') - await page - .getByTestId('cmd-bar-arg-value') - .fill('Please rename to mySketch001') - await page.waitForTimeout(100) - await cmdBar.progressCmdBar() - await expect(submittingToast).toBeVisible() - await expect(submittingToast).not.toBeVisible({ - timeout: 2 * 60_000, - }) - await expect(successToast).toBeVisible() + await test.step('fire off edit prompt', async () => { + await scene.expectPixelColor([134, 134, 134], body1CapCoords, 15) + await cmdBar.openCmdBar('promptToEdit') + await page + .getByTestId('cmd-bar-arg-value') + .fill('Please rename to mySketch001') + await page.waitForTimeout(100) + await cmdBar.progressCmdBar() + await expect(submittingToast).toBeVisible() + await expect(submittingToast).not.toBeVisible({ + timeout: 2 * 60_000, }) + await expect(successToast).toBeVisible() + }) - await test.step('verify rename change and accept it', async () => { - await editor.expectEditor.toContain('mySketch001 = startSketchOn') - await editor.expectEditor.not.toContain('sketch002 = startSketchOn') - await editor.expectEditor.toContain( - 'extrude002 = extrude(mySketch001, length = 50)' - ) + await test.step('verify rename change and accept it', async () => { + await editor.expectEditor.toContain('mySketch001 = startSketchOn') + await editor.expectEditor.not.toContain('sketch002 = startSketchOn') + await editor.expectEditor.toContain( + 'extrude002 = extrude(mySketch001, length = 50)' + ) - await acceptBtn.click() - await expect(successToast).not.toBeVisible() - }) - } - ) + await acceptBtn.click() + await expect(successToast).not.toBeVisible() + }) + }) test('multiple body selections', async ({ context, diff --git a/e2e/playwright/regression-tests.spec.ts b/e2e/playwright/regression-tests.spec.ts index 8732fd2e2..f59f43136 100644 --- a/e2e/playwright/regression-tests.spec.ts +++ b/e2e/playwright/regression-tests.spec.ts @@ -483,10 +483,11 @@ extrude001 = extrude(sketch001, length = 50) } ) - test.fixme( + test( `Network health indicator only appears in modeling view`, { tag: '@electron' }, async ({ context, page }, testInfo) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') await context.folderSetupFn(async (dir) => { const bracketDir = path.join(dir, 'bracket') await fsp.mkdir(bracketDir, { recursive: true }) diff --git a/e2e/playwright/sketch-tests.spec.ts b/e2e/playwright/sketch-tests.spec.ts index e10928db8..907f28c8a 100644 --- a/e2e/playwright/sketch-tests.spec.ts +++ b/e2e/playwright/sketch-tests.spec.ts @@ -188,7 +188,8 @@ sketch001 = startProfileAt([12.34, -12.34], sketch002) page.getByRole('button', { name: 'Start Sketch' }) ).toBeVisible() }) - test.fixme('Can edit segments by dragging their handles', () => { + test('Can edit segments by dragging their handles', () => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') const doEditSegmentsByDraggingHandle = async ( page: Page, homePage: HomePageFixture, @@ -1086,107 +1087,108 @@ profile001 = startProfileAt([${roundOff(scale * 69.6)}, ${roundOff( ) }) // TODO: fix after electron migration is merged - test.fixme( - 'empty-scene default-planes act as expected', - async ({ page, homePage }) => { - /** - * Tests the following things - * 1) The the planes are there on load because the scene is empty - * 2) The planes don't changes color when hovered initially - * 3) Putting something in the scene makes the planes hidden - * 4) Removing everything from the scene shows the plans again - * 3) Once "start sketch" is click, the planes do respond to hovers - * 4) Selecting a plan works as expected, i.e. sketch mode - * 5) Reloading the scene with something already in the scene means the planes are hidden - */ + test('empty-scene default-planes act as expected', async ({ + page, + homePage, + }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + /** + * Tests the following things + * 1) The the planes are there on load because the scene is empty + * 2) The planes don't changes color when hovered initially + * 3) Putting something in the scene makes the planes hidden + * 4) Removing everything from the scene shows the plans again + * 3) Once "start sketch" is click, the planes do respond to hovers + * 4) Selecting a plan works as expected, i.e. sketch mode + * 5) Reloading the scene with something already in the scene means the planes are hidden + */ - const u = await getUtils(page) - await homePage.goToModelingScene() + const u = await getUtils(page) + await homePage.goToModelingScene() - await u.openDebugPanel() - await u.expectCmdLog('[data-message-type="execution-done"]') - await u.closeDebugPanel() + await u.openDebugPanel() + await u.expectCmdLog('[data-message-type="execution-done"]') + await u.closeDebugPanel() - const XYPlanePoint = { x: 774, y: 116 } as const - const unHoveredColor: [number, number, number] = [47, 47, 93] - expect( - await u.getGreatestPixDiff(XYPlanePoint, unHoveredColor) - ).toBeLessThan(8) + const XYPlanePoint = { x: 774, y: 116 } as const + const unHoveredColor: [number, number, number] = [47, 47, 93] + expect( + await u.getGreatestPixDiff(XYPlanePoint, unHoveredColor) + ).toBeLessThan(8) - await page.mouse.move(XYPlanePoint.x, XYPlanePoint.y) - await page.waitForTimeout(200) + await page.mouse.move(XYPlanePoint.x, XYPlanePoint.y) + await page.waitForTimeout(200) - // color should not change for having been hovered - expect( - await u.getGreatestPixDiff(XYPlanePoint, unHoveredColor) - ).toBeLessThan(8) + // color should not change for having been hovered + expect( + await u.getGreatestPixDiff(XYPlanePoint, unHoveredColor) + ).toBeLessThan(8) - await u.openAndClearDebugPanel() + await u.openAndClearDebugPanel() - await u.codeLocator.fill(`sketch001 = startSketchOn('XY') + await u.codeLocator.fill(`sketch001 = startSketchOn('XY') |> startProfileAt([-10, -10], %) |> line(end = [20, 0]) |> line(end = [0, 20]) |> xLine(length = -20) `) - await u.expectCmdLog('[data-message-type="execution-done"]') + await u.expectCmdLog('[data-message-type="execution-done"]') - const noPlanesColor: [number, number, number] = [30, 30, 30] - expect( - await u.getGreatestPixDiff(XYPlanePoint, noPlanesColor) - ).toBeLessThan(3) + const noPlanesColor: [number, number, number] = [30, 30, 30] + expect( + await u.getGreatestPixDiff(XYPlanePoint, noPlanesColor) + ).toBeLessThan(3) - await u.clearCommandLogs() - await u.removeCurrentCode() - await u.expectCmdLog('[data-message-type="execution-done"]') + await u.clearCommandLogs() + await u.removeCurrentCode() + await u.expectCmdLog('[data-message-type="execution-done"]') - await expect - .poll(() => u.getGreatestPixDiff(XYPlanePoint, unHoveredColor), { - timeout: 5_000, - }) - .toBeLessThan(8) + await expect + .poll(() => u.getGreatestPixDiff(XYPlanePoint, unHoveredColor), { + timeout: 5_000, + }) + .toBeLessThan(8) - // click start Sketch - await page.getByRole('button', { name: 'Start Sketch' }).click() - await page.mouse.move(XYPlanePoint.x, XYPlanePoint.y, { steps: 50 }) - const hoveredColor: [number, number, number] = [93, 93, 127] - // now that we're expecting the user to select a plan, it does respond to hover - await expect - .poll(() => u.getGreatestPixDiff(XYPlanePoint, hoveredColor)) - .toBeLessThan(8) + // click start Sketch + await page.getByRole('button', { name: 'Start Sketch' }).click() + await page.mouse.move(XYPlanePoint.x, XYPlanePoint.y, { steps: 50 }) + const hoveredColor: [number, number, number] = [93, 93, 127] + // now that we're expecting the user to select a plan, it does respond to hover + await expect + .poll(() => u.getGreatestPixDiff(XYPlanePoint, hoveredColor)) + .toBeLessThan(8) - await page.mouse.click(XYPlanePoint.x, XYPlanePoint.y) - await page.waitForTimeout(600) + await page.mouse.click(XYPlanePoint.x, XYPlanePoint.y) + await page.waitForTimeout(600) - await page.mouse.click(XYPlanePoint.x, XYPlanePoint.y) - await page.waitForTimeout(200) - await page.mouse.click(XYPlanePoint.x + 50, XYPlanePoint.y + 50) - await expect(u.codeLocator).toHaveText(`sketch001 = startSketchOn('XZ') + await page.mouse.click(XYPlanePoint.x, XYPlanePoint.y) + await page.waitForTimeout(200) + await page.mouse.click(XYPlanePoint.x + 50, XYPlanePoint.y + 50) + await expect(u.codeLocator).toHaveText(`sketch001 = startSketchOn('XZ') |> startProfileAt([11.8, 9.09], %) |> line(end = [3.39, -3.39]) `) - await page.addInitScript(async () => { - localStorage.setItem( - 'persistCode', - `sketch001 = startSketchOn('XZ') + await page.addInitScript(async () => { + localStorage.setItem( + 'persistCode', + `sketch001 = startSketchOn('XZ') |> startProfileAt([11.8, 9.09], %) |> line(end = [3.39, -3.39]) ` - ) - }) + ) + }) - await u.openDebugPanel() - await u.expectCmdLog('[data-message-type="execution-done"]') - await u.closeDebugPanel() + await u.openDebugPanel() + await u.expectCmdLog('[data-message-type="execution-done"]') + await u.closeDebugPanel() - // expect there to be no planes on load since there's something in the scene - expect( - await u.getGreatestPixDiff(XYPlanePoint, noPlanesColor) - ).toBeLessThan(3) - } - ) + // expect there to be no planes on load since there's something in the scene + expect( + await u.getGreatestPixDiff(XYPlanePoint, noPlanesColor) + ).toBeLessThan(3) + }) test('Can attempt to sketch on revolved face', async ({ page, homePage }) => { const u = await getUtils(page) @@ -1460,10 +1462,11 @@ test.describe(`Sketching with offset planes`, () => { }) test.describe('multi-profile sketching', () => { - test.fixme( + test( `test it removes half-finished expressions when changing tools in sketch mode`, { tag: ['@skipWin'] }, async ({ context, page, scene, toolbar, editor, homePage, cmdBar }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') // We seed the scene with a single offset plane await context.addInitScript(() => { localStorage.setItem( @@ -2852,13 +2855,18 @@ loft([profile001, profile002]) ) } ) - test.fixme( - 'Can enter sketch loft edges offsetPlane and continue sketch', - async ({ scene, toolbar, editor, page, homePage }) => { - await page.addInitScript(async () => { - localStorage.setItem( - 'persistCode', - `sketch001 = startSketchOn('XZ') + test('Can enter sketch loft edges offsetPlane and continue sketch', async ({ + scene, + toolbar, + editor, + page, + homePage, + }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + await page.addInitScript(async () => { + localStorage.setItem( + 'persistCode', + `sketch001 = startSketchOn('XZ') profile001 = startProfileAt([34, 42.66], sketch001) |> line(end = [102.65, 151.99]) |> line(end = [76, -138.66]) @@ -2874,51 +2882,50 @@ profile002 = startProfileAt([39.43, 172.21], sketch002) loft([profile001, profile002]) ` - ) - }) - - await page.setBodyDimensions({ width: 1000, height: 500 }) - await homePage.goToModelingScene() - await expect( - page.getByRole('button', { name: 'Start Sketch' }) - ).not.toBeDisabled() - - const topProfileEdgeClickCoords = { x: 602, y: 185 } as const - const [topProfileEdgeClick] = scene.makeMouseHelpers( - topProfileEdgeClickCoords.x, - topProfileEdgeClickCoords.y ) - const [sideProfileEdgeClick] = scene.makeMouseHelpers(788, 188) + }) - const [rect1Crn1] = scene.makeMouseHelpers(592, 283) - const [rect1Crn2] = scene.makeMouseHelpers(797, 268) + await page.setBodyDimensions({ width: 1000, height: 500 }) + await homePage.goToModelingScene() + await expect( + page.getByRole('button', { name: 'Start Sketch' }) + ).not.toBeDisabled() - await scene.moveCameraTo( - { x: 8171, y: -7740, z: 1624 }, - { x: 3302, y: -627, z: 2892 } - ) + const topProfileEdgeClickCoords = { x: 602, y: 185 } as const + const [topProfileEdgeClick] = scene.makeMouseHelpers( + topProfileEdgeClickCoords.x, + topProfileEdgeClickCoords.y + ) + const [sideProfileEdgeClick] = scene.makeMouseHelpers(788, 188) - await topProfileEdgeClick() - await page.waitForTimeout(300) - await toolbar.editSketch() - await page.waitForTimeout(600) - await sideProfileEdgeClick() - await page.waitForTimeout(300) - await scene.expectPixelColor(TEST_COLORS.BLUE, { x: 788, y: 188 }, 15) + const [rect1Crn1] = scene.makeMouseHelpers(592, 283) + const [rect1Crn2] = scene.makeMouseHelpers(797, 268) - await toolbar.rectangleBtn.click() - await page.waitForTimeout(100) - await rect1Crn1() - await editor.expectEditor.toContain( - `profile003 = startProfileAt([47.76, -17.13], plane001)` - ) - await rect1Crn2() - await editor.expectEditor.toContain( - `angledLine([0, 106.42], %, $rectangleSegmentA001)` - ) - await page.waitForTimeout(100) - } - ) + await scene.moveCameraTo( + { x: 8171, y: -7740, z: 1624 }, + { x: 3302, y: -627, z: 2892 } + ) + + await topProfileEdgeClick() + await page.waitForTimeout(300) + await toolbar.editSketch() + await page.waitForTimeout(600) + await sideProfileEdgeClick() + await page.waitForTimeout(300) + await scene.expectPixelColor(TEST_COLORS.BLUE, { x: 788, y: 188 }, 15) + + await toolbar.rectangleBtn.click() + await page.waitForTimeout(100) + await rect1Crn1() + await editor.expectEditor.toContain( + `profile003 = startProfileAt([47.76, -17.13], plane001)` + ) + await rect1Crn2() + await editor.expectEditor.toContain( + `angledLine([0, 106.42], %, $rectangleSegmentA001)` + ) + await page.waitForTimeout(100) + }) }) // Regression test for https://github.com/KittyCAD/modeling-app/issues/4891 diff --git a/e2e/playwright/snapshot-tests.spec.ts b/e2e/playwright/snapshot-tests.spec.ts index 9d2dfe6fa..b684cb066 100644 --- a/e2e/playwright/snapshot-tests.spec.ts +++ b/e2e/playwright/snapshot-tests.spec.ts @@ -36,10 +36,11 @@ test.setTimeout(60_000) // a snapshot of it feels weird. I'd rather our regular tests fail. // The primary failure is doExport now relies on the filesystem. We can follow // up with another PR if we want this back. -test.skip( +test( 'exports of each format should work', { tag: ['@snapshot', '@skipWin', '@skipMacos'] }, async ({ page, context, scene, cmdBar, tronApp }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') if (!tronApp) { fail() } @@ -406,9 +407,6 @@ test( 'Draft segments should look right', { tag: '@snapshot' }, async ({ page, scene, toolbar }) => { - // FIXME: Skip on macos its being weird. - // test.skip(process.platform === 'darwin', 'Skip on macos') - const u = await getUtils(page) await page.setViewportSize({ width: 1200, height: 500 }) const PUR = 400 / 37.5 //pixeltoUnitRatio @@ -585,9 +583,6 @@ test( 'Draft circle should look right', { tag: '@snapshot' }, async ({ page, context, cmdBar, scene }) => { - // FIXME: Skip on macos its being weird. - // test.skip(process.platform === 'darwin', 'Skip on macos') - const u = await getUtils(page) await page.setViewportSize({ width: 1200, height: 500 }) const PUR = 400 / 37.5 //pixeltoUnitRatio @@ -952,9 +947,6 @@ test( ) test.describe('Grid visibility', { tag: '@snapshot' }, () => { - // FIXME: Skip on macos its being weird. - // test.skip(process.platform === 'darwin', 'Skip on macos') - test('Grid turned off to on via command bar', async ({ page, cmdBar, @@ -1097,7 +1089,8 @@ test.describe('Grid visibility', { tag: '@snapshot' }, () => { }) }) -test.fixme('theme persists', async ({ page, context }) => { +test('theme persists', async ({ page, context }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') const u = await getUtils(page) await context.addInitScript(async () => { localStorage.setItem( diff --git a/e2e/playwright/test-network-and-connection-issues.spec.ts b/e2e/playwright/test-network-and-connection-issues.spec.ts index b1e9b352f..8d03b72a3 100644 --- a/e2e/playwright/test-network-and-connection-issues.spec.ts +++ b/e2e/playwright/test-network-and-connection-issues.spec.ts @@ -3,11 +3,12 @@ import { commonPoints, getUtils } from './test-utils' import { EngineCommand } from 'lang/std/artifactGraph' import { uuidv4 } from 'lib/utils' -test.fixme('Test network and connection issues', () => { +test.describe('Test network and connection issues', () => { test( 'simulate network down and network little widget', { tag: '@skipLocalEngine' }, async ({ page, homePage }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') const u = await getUtils(page) await page.setBodyDimensions({ width: 1200, height: 500 }) @@ -84,6 +85,7 @@ test.fixme('Test network and connection issues', () => { 'Engine disconnect & reconnect in sketch mode', { tag: '@skipLocalEngine' }, async ({ page, homePage, toolbar }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') const networkToggle = page.getByTestId('network-toggle') const u = await getUtils(page) diff --git a/e2e/playwright/testing-camera-movement.spec.ts b/e2e/playwright/testing-camera-movement.spec.ts index 8752c3b13..63fef3748 100644 --- a/e2e/playwright/testing-camera-movement.spec.ts +++ b/e2e/playwright/testing-camera-movement.spec.ts @@ -179,169 +179,170 @@ test.describe('Testing Camera Movement', { tag: ['@skipWin'] }, () => { }) // TODO: fix after electron migration is merged - test.fixme( - 'Zoom should be consistent when exiting or entering sketches', - async ({ page, homePage }) => { - // start new sketch pan and zoom before exiting, when exiting the sketch should stay in the same place - // than zoom and pan outside of sketch mode and enter again and it should not change from where it is - // than again for sketching + test('Zoom should be consistent when exiting or entering sketches', async ({ + page, + homePage, + }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + // start new sketch pan and zoom before exiting, when exiting the sketch should stay in the same place + // than zoom and pan outside of sketch mode and enter again and it should not change from where it is + // than again for sketching - const u = await getUtils(page) - await page.setBodyDimensions({ width: 1200, height: 500 }) + const u = await getUtils(page) + await page.setBodyDimensions({ width: 1200, height: 500 }) - await homePage.goToModelingScene() - await u.waitForPageLoad() - await u.openDebugPanel() + await homePage.goToModelingScene() + await u.waitForPageLoad() + await u.openDebugPanel() - await expect( - page.getByRole('button', { name: 'Start Sketch' }) - ).not.toBeDisabled() - await expect( - page.getByRole('button', { name: 'Start Sketch' }) - ).toBeVisible() + await expect( + page.getByRole('button', { name: 'Start Sketch' }) + ).not.toBeDisabled() + await expect( + page.getByRole('button', { name: 'Start Sketch' }) + ).toBeVisible() - // click on "Start Sketch" button - await u.clearCommandLogs() - await page.getByRole('button', { name: 'Start Sketch' }).click() + // click on "Start Sketch" button + await u.clearCommandLogs() + await page.getByRole('button', { name: 'Start Sketch' }).click() + await page.waitForTimeout(100) + + // select a plane + await page.mouse.click(700, 325) + + let code = `sketch001 = startSketchOn('XY')` + await expect(u.codeLocator).toHaveText(code) + await u.closeDebugPanel() + + await page.waitForTimeout(500) // TODO detect animation ending, or disable animation + + // move the camera slightly + await page.keyboard.down('Shift') + await page.mouse.move(700, 300) + await page.mouse.down({ button: 'right' }) + await page.mouse.move(800, 200) + await page.mouse.up({ button: 'right' }) + await page.keyboard.up('Shift') + + let y = 350, + x = 948 + + await u.canvasLocator.click({ position: { x: 783, y } }) + code += `\n |> startProfileAt([8.12, -12.98], %)` + // await expect(u.codeLocator).toHaveText(code) + await u.canvasLocator.click({ position: { x, y } }) + code += `\n |> line(end = [11.18, 0])` + // await expect(u.codeLocator).toHaveText(code) + await u.canvasLocator.click({ position: { x, y: 275 } }) + code += `\n |> line(end = [0, 6.99])` + // await expect(u.codeLocator).toHaveText(code) + + // click the line button + await page.getByRole('button', { name: 'line Line', exact: true }).click() + + const hoverOverNothing = async () => { + // await u.canvasLocator.hover({position: {x: 700, y: 325}}) + await page.mouse.move(700, 325) await page.waitForTimeout(100) - - // select a plane - await page.mouse.click(700, 325) - - let code = `sketch001 = startSketchOn('XY')` - await expect(u.codeLocator).toHaveText(code) - await u.closeDebugPanel() - - await page.waitForTimeout(500) // TODO detect animation ending, or disable animation - - // move the camera slightly - await page.keyboard.down('Shift') - await page.mouse.move(700, 300) - await page.mouse.down({ button: 'right' }) - await page.mouse.move(800, 200) - await page.mouse.up({ button: 'right' }) - await page.keyboard.up('Shift') - - let y = 350, - x = 948 - - await u.canvasLocator.click({ position: { x: 783, y } }) - code += `\n |> startProfileAt([8.12, -12.98], %)` - // await expect(u.codeLocator).toHaveText(code) - await u.canvasLocator.click({ position: { x, y } }) - code += `\n |> line(end = [11.18, 0])` - // await expect(u.codeLocator).toHaveText(code) - await u.canvasLocator.click({ position: { x, y: 275 } }) - code += `\n |> line(end = [0, 6.99])` - // await expect(u.codeLocator).toHaveText(code) - - // click the line button - await page.getByRole('button', { name: 'line Line', exact: true }).click() - - const hoverOverNothing = async () => { - // await u.canvasLocator.hover({position: {x: 700, y: 325}}) - await page.mouse.move(700, 325) - await page.waitForTimeout(100) - await expect(page.getByTestId('hover-highlight')).not.toBeVisible({ - timeout: 10_000, - }) - } - - await expect(page.getByTestId('hover-highlight')).not.toBeVisible() - - await page.waitForTimeout(200) - // hover over horizontal line - await u.canvasLocator.hover({ position: { x: 800, y } }) - await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ - timeout: 10_000, - }) - await page.waitForTimeout(200) - - await hoverOverNothing() - await page.waitForTimeout(200) - // hover over vertical line - await u.canvasLocator.hover({ position: { x, y: 325 } }) - await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ - timeout: 10_000, - }) - - await hoverOverNothing() - - // click exit sketch - await page.getByRole('button', { name: 'Exit Sketch' }).click() - await page.waitForTimeout(400) - - await hoverOverNothing() - await page.waitForTimeout(200) - // hover over horizontal line - await page.mouse.move(858, y, { steps: 5 }) - await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ - timeout: 10_000, - }) - - await hoverOverNothing() - - // hover over vertical line - await page.mouse.move(x, 325) - await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ - timeout: 10_000, - }) - - await hoverOverNothing() - - // hover over vertical line - await page.mouse.move(857, y) - await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ - timeout: 10_000, - }) - // now click it - await page.mouse.click(857, y) - - await expect( - page.getByRole('button', { name: 'Edit Sketch' }) - ).toBeVisible() - await hoverOverNothing() - await page.getByRole('button', { name: 'Edit Sketch' }).click() - - await page.waitForTimeout(400) - - x = 975 - y = 468 - - await page.waitForTimeout(100) - await page.mouse.move(x, 419, { steps: 5 }) - await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ - timeout: 10_000, - }) - - await hoverOverNothing() - - await page.mouse.move(855, y) - await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ - timeout: 10_000, - }) - - await hoverOverNothing() - - await page.getByRole('button', { name: 'Exit Sketch' }).click() - await page.waitForTimeout(200) - - await hoverOverNothing() - await page.waitForTimeout(200) - - await page.mouse.move(x, 419) - await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ - timeout: 10_000, - }) - - await hoverOverNothing() - - await page.mouse.move(855, y) - await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ + await expect(page.getByTestId('hover-highlight')).not.toBeVisible({ timeout: 10_000, }) } - ) + + await expect(page.getByTestId('hover-highlight')).not.toBeVisible() + + await page.waitForTimeout(200) + // hover over horizontal line + await u.canvasLocator.hover({ position: { x: 800, y } }) + await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ + timeout: 10_000, + }) + await page.waitForTimeout(200) + + await hoverOverNothing() + await page.waitForTimeout(200) + // hover over vertical line + await u.canvasLocator.hover({ position: { x, y: 325 } }) + await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ + timeout: 10_000, + }) + + await hoverOverNothing() + + // click exit sketch + await page.getByRole('button', { name: 'Exit Sketch' }).click() + await page.waitForTimeout(400) + + await hoverOverNothing() + await page.waitForTimeout(200) + // hover over horizontal line + await page.mouse.move(858, y, { steps: 5 }) + await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ + timeout: 10_000, + }) + + await hoverOverNothing() + + // hover over vertical line + await page.mouse.move(x, 325) + await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ + timeout: 10_000, + }) + + await hoverOverNothing() + + // hover over vertical line + await page.mouse.move(857, y) + await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ + timeout: 10_000, + }) + // now click it + await page.mouse.click(857, y) + + await expect( + page.getByRole('button', { name: 'Edit Sketch' }) + ).toBeVisible() + await hoverOverNothing() + await page.getByRole('button', { name: 'Edit Sketch' }).click() + + await page.waitForTimeout(400) + + x = 975 + y = 468 + + await page.waitForTimeout(100) + await page.mouse.move(x, 419, { steps: 5 }) + await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ + timeout: 10_000, + }) + + await hoverOverNothing() + + await page.mouse.move(855, y) + await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ + timeout: 10_000, + }) + + await hoverOverNothing() + + await page.getByRole('button', { name: 'Exit Sketch' }).click() + await page.waitForTimeout(200) + + await hoverOverNothing() + await page.waitForTimeout(200) + + await page.mouse.move(x, 419) + await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ + timeout: 10_000, + }) + + await hoverOverNothing() + + await page.mouse.move(855, y) + await expect(page.getByTestId('hover-highlight').first()).toBeVisible({ + timeout: 10_000, + }) + }) test(`Zoom by scroll should not fire while orbiting`, async ({ homePage, diff --git a/e2e/playwright/testing-constraints.spec.ts b/e2e/playwright/testing-constraints.spec.ts index 7864c3746..aefed0288 100644 --- a/e2e/playwright/testing-constraints.spec.ts +++ b/e2e/playwright/testing-constraints.spec.ts @@ -1005,114 +1005,108 @@ part002 = startSketchOn('XZ') } }) - test.fixme( - 'Horizontally constrained line remains selected after applying constraint', - async ({ page, homePage }) => { - test.setTimeout(70_000) - await page.addInitScript(async () => { - localStorage.setItem( - 'persistCode', - `sketch001 = startSketchOn('XY') + test('Horizontally constrained line remains selected after applying constraint', async ({ + page, + homePage, + }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + test.setTimeout(70_000) + await page.addInitScript(async () => { + localStorage.setItem( + 'persistCode', + `sketch001 = startSketchOn('XY') |> startProfileAt([-1.05, -1.07], %) |> line(end = [3.79, 2.68], tag = $seg01) |> line(end = [3.13, -2.4])` - ) + ) + }) + const u = await getUtils(page) + await page.setBodyDimensions({ width: 1200, height: 500 }) + + await homePage.goToModelingScene() + await u.waitForPageLoad() + + await page.getByText('line(end = [3.79, 2.68], tag = $seg01)').click() + await expect(page.getByRole('button', { name: 'Edit Sketch' })).toBeEnabled( + { timeout: 10_000 } + ) + await page.getByRole('button', { name: 'Edit Sketch' }).click() + + // Wait for overlays to populate + await page.waitForTimeout(1000) + + await page.waitForTimeout(100) + const lineBefore = await u.getSegmentBodyCoords( + `[data-overlay-index="1"]`, + 0 + ) + expect( + await u.getGreatestPixDiff(lineBefore, TEST_COLORS.WHITE) + ).toBeLessThan(3) + await page.mouse.move(lineBefore.x, lineBefore.y) + await page.waitForTimeout(50) + await page.mouse.click(lineBefore.x, lineBefore.y) + expect( + await u.getGreatestPixDiff(lineBefore, TEST_COLORS.BLUE) + ).toBeLessThan(3) + + await page + .getByRole('button', { + name: 'Length: open menu', }) - const u = await getUtils(page) - await page.setBodyDimensions({ width: 1200, height: 500 }) + .click() + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Horizontal', exact: true }).click() + await page.waitForTimeout(500) - await homePage.goToModelingScene() - await u.waitForPageLoad() + await pollEditorLinesSelectedLength(page, 1) + let activeLinesContent = await page.locator('.cm-activeLine').all() + await expect(activeLinesContent[0]).toHaveText(`|> xLine(length = 3.13)`) - await page.getByText('line(end = [3.79, 2.68], tag = $seg01)').click() - await expect( - page.getByRole('button', { name: 'Edit Sketch' }) - ).toBeEnabled({ timeout: 10_000 }) - await page.getByRole('button', { name: 'Edit Sketch' }).click() + // Wait for code editor to settle. + await page.waitForTimeout(2000) - // Wait for overlays to populate - await page.waitForTimeout(1000) + // If the overlay-angle is updated the THREE.js scene is in a good state + await expect( + await page.locator('[data-overlay-index="1"]') + ).toHaveAttribute('data-overlay-angle', '0') - await page.waitForTimeout(100) - const lineBefore = await u.getSegmentBodyCoords( - `[data-overlay-index="1"]`, - 0 - ) - expect( - await u.getGreatestPixDiff(lineBefore, TEST_COLORS.WHITE) - ).toBeLessThan(3) - await page.mouse.move(lineBefore.x, lineBefore.y) - await page.waitForTimeout(50) - await page.mouse.click(lineBefore.x, lineBefore.y) - expect( - await u.getGreatestPixDiff(lineBefore, TEST_COLORS.BLUE) - ).toBeLessThan(3) + const lineAfter = await u.getSegmentBodyCoords( + `[data-overlay-index="1"]`, + 0 + ) - await page - .getByRole('button', { - name: 'Length: open menu', - }) - .click() - await page.waitForTimeout(500) - await page - .getByRole('button', { name: 'Horizontal', exact: true }) - .click() - await page.waitForTimeout(500) + const linebb = await u.getBoundingBox('[data-overlay-index="1"]') + await page.mouse.move(linebb.x, linebb.y, { steps: 25 }) + await page.mouse.click(linebb.x, linebb.y) - await pollEditorLinesSelectedLength(page, 1) - let activeLinesContent = await page.locator('.cm-activeLine').all() - await expect(activeLinesContent[0]).toHaveText(`|> xLine(length = 3.13)`) + await expect + .poll(async () => await u.getGreatestPixDiff(lineAfter, TEST_COLORS.BLUE)) + .toBeLessThan(3) - // Wait for code editor to settle. - await page.waitForTimeout(2000) + await page.waitForTimeout(500) - // If the overlay-angle is updated the THREE.js scene is in a good state - await expect( - await page.locator('[data-overlay-index="1"]') - ).toHaveAttribute('data-overlay-angle', '0') + // await expect(page.getByRole('button', { name: 'length', exact: true })).toBeVisible() + await page.waitForTimeout(200) + // await page.getByRole('button', { name: 'length', exact: true }).click() + await page.getByTestId('constraint-length').click() - const lineAfter = await u.getSegmentBodyCoords( - `[data-overlay-index="1"]`, - 0 - ) + await page.getByTestId('cmd-bar-arg-value').getByRole('textbox').fill('10') + await page + .getByRole('button', { + name: 'arrow right Continue', + }) + .click() - const linebb = await u.getBoundingBox('[data-overlay-index="1"]') - await page.mouse.move(linebb.x, linebb.y, { steps: 25 }) - await page.mouse.click(linebb.x, linebb.y) + await pollEditorLinesSelectedLength(page, 1) + activeLinesContent = await page.locator('.cm-activeLine').all() + await expect(activeLinesContent[0]).toHaveText( + `|> xLine(length = length001)` + ) - await expect - .poll( - async () => await u.getGreatestPixDiff(lineAfter, TEST_COLORS.BLUE) - ) - .toBeLessThan(3) - - await page.waitForTimeout(500) - - // await expect(page.getByRole('button', { name: 'length', exact: true })).toBeVisible() - await page.waitForTimeout(200) - // await page.getByRole('button', { name: 'length', exact: true }).click() - await page.getByTestId('constraint-length').click() - - await page - .getByTestId('cmd-bar-arg-value') - .getByRole('textbox') - .fill('10') - await page - .getByRole('button', { - name: 'arrow right Continue', - }) - .click() - - await pollEditorLinesSelectedLength(page, 1) - activeLinesContent = await page.locator('.cm-activeLine').all() - await expect(activeLinesContent[0]).toHaveText( - `|> xLine(length = length001)` - ) - - // checking the count of the overlays is a good proxy check that the client sketch scene is in a good state - await expect(page.getByTestId('segment-overlay')).toHaveCount(2) - } - ) + // checking the count of the overlays is a good proxy check that the client sketch scene is in a good state + await expect(page.getByTestId('segment-overlay')).toHaveCount(2) + }) }) test.describe('Electron constraint tests', () => { test( diff --git a/e2e/playwright/testing-perspective-toggle.spec.ts b/e2e/playwright/testing-perspective-toggle.spec.ts index ed589fe78..48363973c 100644 --- a/e2e/playwright/testing-perspective-toggle.spec.ts +++ b/e2e/playwright/testing-perspective-toggle.spec.ts @@ -2,7 +2,8 @@ import { test, expect } from './zoo-test' import { getUtils } from './test-utils' test.describe('Test toggling perspective', () => { - test.fixme('via command palette and toggle', async ({ page, homePage }) => { + test('via command palette and toggle', async ({ page, homePage }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') const u = await getUtils(page) // Locators and constants diff --git a/e2e/playwright/testing-segment-overlays.spec.ts b/e2e/playwright/testing-segment-overlays.spec.ts index e3d9bbaa7..ddd0c265c 100644 --- a/e2e/playwright/testing-segment-overlays.spec.ts +++ b/e2e/playwright/testing-segment-overlays.spec.ts @@ -7,207 +7,205 @@ import { uuidv4 } from 'lib/utils' import { EditorFixture } from './fixtures/editorFixture' test.describe('Testing segment overlays', { tag: ['@skipWin'] }, () => { - test.fixme( - 'Hover over a segment should show its overlay, hovering over the input overlays should show its popover, clicking the input overlay should constrain/unconstrain it:\nfor the following segments', - () => { - // TODO: fix this test on mac after the electron migration - test.skip(process.platform === 'darwin', 'Skip on mac') - /** - * Clicks on an constrained element - * @param {Page} page - The page to perform the action on - * @param {Object} options - The options for the action - * @param {Object} options.hoverPos - The position to hover over - * @param {Object} options.constraintType - The type of constraint - * @param {number} options.ang - The angle - * @param {number} options.steps - The number of steps to perform - */ - const _clickConstrained = - (page: Page, editor: EditorFixture) => - async ({ - hoverPos, - constraintType, - expectBeforeUnconstrained, - expectAfterUnconstrained, - expectFinal, - ang = 45, - steps = 10, - locator, - }: { - hoverPos: { x: number; y: number } - constraintType: - | 'horizontal' - | 'vertical' - | 'tangentialWithPrevious' - | LineInputsType - expectBeforeUnconstrained: string - expectAfterUnconstrained: string - expectFinal: string - ang?: number - steps?: number - locator?: string - }) => { - await expect(page.getByText('Added variable')).not.toBeVisible() - - await page.mouse.move(0, 0) - await page.waitForTimeout(1000) - let x = 0, - y = 0 - x = hoverPos.x + Math.cos(ang * deg) * 32 - y = hoverPos.y - Math.sin(ang * deg) * 32 - await page.mouse.move(x, y) - await wiggleMove(page, x, y, 20, 30, ang, 10, 5, locator) - await page.mouse.move(x, y) - - await editor.expectEditor.toContain(expectBeforeUnconstrained, { - shouldNormalise: true, - }) - const constrainedLocator = page.locator( - `[data-constraint-type="${constraintType}"][data-is-constrained="true"]` - ) - await expect(constrainedLocator).toBeVisible() - await constrainedLocator.hover() - await expect( - await page.getByTestId('constraint-symbol-popover').count() - ).toBeGreaterThan(0) - await constrainedLocator.click() - await editor.expectEditor.toContain(expectAfterUnconstrained, { - shouldNormalise: true, - }) - - await page.mouse.move(0, 0) - await page.waitForTimeout(1000) - x = hoverPos.x + Math.cos(ang * deg) * 32 - y = hoverPos.y - Math.sin(ang * deg) * 32 - await page.mouse.move(x, y) - await wiggleMove(page, x, y, 20, 30, ang, 10, 5, locator) - await page.mouse.move(x, y) - - const unconstrainedLocator = page.locator( - `[data-constraint-type="${constraintType}"][data-is-constrained="false"]` - ) - await expect(unconstrainedLocator).toBeVisible() - await unconstrainedLocator.hover() - await expect( - await page.getByTestId('constraint-symbol-popover').count() - ).toBeGreaterThan(0) - await unconstrainedLocator.click() - await expect( - page.getByTestId('cmd-bar-arg-value').getByRole('textbox') - ).toBeFocused() - await page - .getByRole('button', { - name: 'arrow right Continue', - }) - .click() - await expect(page.locator('.cm-content')).toContainText(expectFinal) - await editor.expectEditor.toContain(expectFinal, { - shouldNormalise: true, - }) - await editor.expectEditor.toContain(expectFinal, { - shouldNormalise: true, - }) - } - - /** - * Clicks on an unconstrained element - * @param {Page} page - The page to perform the action on - * @param {Object} options - The options for the action - * @param {Object} options.hoverPos - The position to hover over - * @param {Object} options.constraintType - The type of constraint - * @param {number} options.ang - The angle - * @param {number} options.steps - The number of steps to perform - */ - const _clickUnconstrained = - (page: Page, editor: EditorFixture) => - async ({ - hoverPos, - constraintType, - expectBeforeUnconstrained, - expectAfterUnconstrained, - expectFinal, - ang = 45, - steps = 5, - locator, - }: { - hoverPos: { x: number; y: number } - constraintType: - | 'horizontal' - | 'vertical' - | 'tangentialWithPrevious' - | LineInputsType - expectBeforeUnconstrained: string - expectAfterUnconstrained: string - expectFinal: string - ang?: number - steps?: number - locator?: string - }) => { - await page.mouse.move(0, 0) - await page.waitForTimeout(1000) - let x = 0, - y = 0 - x = hoverPos.x + Math.cos(ang * deg) * 32 - y = hoverPos.y - Math.sin(ang * deg) * 32 - await page.mouse.move(x, y) - await wiggleMove(page, x, y, 20, 30, ang, 10, 5, locator) - await page.mouse.move(x, y) - - await expect(page.getByText('Added variable')).not.toBeVisible() - await editor.expectEditor.toContain(expectBeforeUnconstrained, { - shouldNormalise: true, - }) - const unconstrainedLocator = page.locator( - `[data-constraint-type="${constraintType}"][data-is-constrained="false"]` - ) - await unconstrainedLocator.hover() - await expect( - await page.getByTestId('constraint-symbol-popover').count() - ).toBeGreaterThan(0) - await unconstrainedLocator.click() - await expect( - page.getByTestId('cmd-bar-arg-value').getByRole('textbox') - ).toBeFocused() - await page - .getByRole('button', { - name: 'arrow right Continue', - }) - .click() - await editor.expectEditor.toContain(expectAfterUnconstrained, { - shouldNormalise: true, - }) - await expect(page.getByText('Added variable')).not.toBeVisible() - - await page.mouse.move(0, 0) - await page.waitForTimeout(1000) - x = hoverPos.x + Math.cos(ang * deg) * 32 - y = hoverPos.y - Math.sin(ang * deg) * 32 - await page.mouse.move(x, y) - await wiggleMove(page, x, y, 20, 30, ang, 10, 5, locator) - await page.mouse.move(x, y) - - const constrainedLocator = page.locator( - `[data-constraint-type="${constraintType}"][data-is-constrained="true"]` - ) - await expect(constrainedLocator).toBeVisible() - await constrainedLocator.hover() - await expect( - await page.getByTestId('constraint-symbol-popover').count() - ).toBeGreaterThan(0) - await constrainedLocator.click() - await editor.expectEditor.toContain(expectFinal, { - shouldNormalise: true, - }) - } - test.setTimeout(120000) - test('for segments [line, angledLine, xLineTo]', async ({ - page, - editor, - homePage, + test('Hover over a segment should show its overlay, hovering over the input overlays should show its popover, clicking the input overlay should constrain/unconstrain it:\nfor the following segments', () => { + // TODO: fix this test on mac after the electron migration + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + /** + * Clicks on an constrained element + * @param {Page} page - The page to perform the action on + * @param {Object} options - The options for the action + * @param {Object} options.hoverPos - The position to hover over + * @param {Object} options.constraintType - The type of constraint + * @param {number} options.ang - The angle + * @param {number} options.steps - The number of steps to perform + */ + const _clickConstrained = + (page: Page, editor: EditorFixture) => + async ({ + hoverPos, + constraintType, + expectBeforeUnconstrained, + expectAfterUnconstrained, + expectFinal, + ang = 45, + steps = 10, + locator, + }: { + hoverPos: { x: number; y: number } + constraintType: + | 'horizontal' + | 'vertical' + | 'tangentialWithPrevious' + | LineInputsType + expectBeforeUnconstrained: string + expectAfterUnconstrained: string + expectFinal: string + ang?: number + steps?: number + locator?: string }) => { - await page.addInitScript(async () => { - localStorage.setItem( - 'persistCode', - `part001 = startSketchOn('XZ') + await expect(page.getByText('Added variable')).not.toBeVisible() + + await page.mouse.move(0, 0) + await page.waitForTimeout(1000) + let x = 0, + y = 0 + x = hoverPos.x + Math.cos(ang * deg) * 32 + y = hoverPos.y - Math.sin(ang * deg) * 32 + await page.mouse.move(x, y) + await wiggleMove(page, x, y, 20, 30, ang, 10, 5, locator) + await page.mouse.move(x, y) + + await editor.expectEditor.toContain(expectBeforeUnconstrained, { + shouldNormalise: true, + }) + const constrainedLocator = page.locator( + `[data-constraint-type="${constraintType}"][data-is-constrained="true"]` + ) + await expect(constrainedLocator).toBeVisible() + await constrainedLocator.hover() + await expect( + await page.getByTestId('constraint-symbol-popover').count() + ).toBeGreaterThan(0) + await constrainedLocator.click() + await editor.expectEditor.toContain(expectAfterUnconstrained, { + shouldNormalise: true, + }) + + await page.mouse.move(0, 0) + await page.waitForTimeout(1000) + x = hoverPos.x + Math.cos(ang * deg) * 32 + y = hoverPos.y - Math.sin(ang * deg) * 32 + await page.mouse.move(x, y) + await wiggleMove(page, x, y, 20, 30, ang, 10, 5, locator) + await page.mouse.move(x, y) + + const unconstrainedLocator = page.locator( + `[data-constraint-type="${constraintType}"][data-is-constrained="false"]` + ) + await expect(unconstrainedLocator).toBeVisible() + await unconstrainedLocator.hover() + await expect( + await page.getByTestId('constraint-symbol-popover').count() + ).toBeGreaterThan(0) + await unconstrainedLocator.click() + await expect( + page.getByTestId('cmd-bar-arg-value').getByRole('textbox') + ).toBeFocused() + await page + .getByRole('button', { + name: 'arrow right Continue', + }) + .click() + await expect(page.locator('.cm-content')).toContainText(expectFinal) + await editor.expectEditor.toContain(expectFinal, { + shouldNormalise: true, + }) + await editor.expectEditor.toContain(expectFinal, { + shouldNormalise: true, + }) + } + + /** + * Clicks on an unconstrained element + * @param {Page} page - The page to perform the action on + * @param {Object} options - The options for the action + * @param {Object} options.hoverPos - The position to hover over + * @param {Object} options.constraintType - The type of constraint + * @param {number} options.ang - The angle + * @param {number} options.steps - The number of steps to perform + */ + const _clickUnconstrained = + (page: Page, editor: EditorFixture) => + async ({ + hoverPos, + constraintType, + expectBeforeUnconstrained, + expectAfterUnconstrained, + expectFinal, + ang = 45, + steps = 5, + locator, + }: { + hoverPos: { x: number; y: number } + constraintType: + | 'horizontal' + | 'vertical' + | 'tangentialWithPrevious' + | LineInputsType + expectBeforeUnconstrained: string + expectAfterUnconstrained: string + expectFinal: string + ang?: number + steps?: number + locator?: string + }) => { + await page.mouse.move(0, 0) + await page.waitForTimeout(1000) + let x = 0, + y = 0 + x = hoverPos.x + Math.cos(ang * deg) * 32 + y = hoverPos.y - Math.sin(ang * deg) * 32 + await page.mouse.move(x, y) + await wiggleMove(page, x, y, 20, 30, ang, 10, 5, locator) + await page.mouse.move(x, y) + + await expect(page.getByText('Added variable')).not.toBeVisible() + await editor.expectEditor.toContain(expectBeforeUnconstrained, { + shouldNormalise: true, + }) + const unconstrainedLocator = page.locator( + `[data-constraint-type="${constraintType}"][data-is-constrained="false"]` + ) + await unconstrainedLocator.hover() + await expect( + await page.getByTestId('constraint-symbol-popover').count() + ).toBeGreaterThan(0) + await unconstrainedLocator.click() + await expect( + page.getByTestId('cmd-bar-arg-value').getByRole('textbox') + ).toBeFocused() + await page + .getByRole('button', { + name: 'arrow right Continue', + }) + .click() + await editor.expectEditor.toContain(expectAfterUnconstrained, { + shouldNormalise: true, + }) + await expect(page.getByText('Added variable')).not.toBeVisible() + + await page.mouse.move(0, 0) + await page.waitForTimeout(1000) + x = hoverPos.x + Math.cos(ang * deg) * 32 + y = hoverPos.y - Math.sin(ang * deg) * 32 + await page.mouse.move(x, y) + await wiggleMove(page, x, y, 20, 30, ang, 10, 5, locator) + await page.mouse.move(x, y) + + const constrainedLocator = page.locator( + `[data-constraint-type="${constraintType}"][data-is-constrained="true"]` + ) + await expect(constrainedLocator).toBeVisible() + await constrainedLocator.hover() + await expect( + await page.getByTestId('constraint-symbol-popover').count() + ).toBeGreaterThan(0) + await constrainedLocator.click() + await editor.expectEditor.toContain(expectFinal, { + shouldNormalise: true, + }) + } + test.setTimeout(120000) + test('for segments [line, angledLine, xLineTo]', async ({ + page, + editor, + homePage, + }) => { + await page.addInitScript(async () => { + localStorage.setItem( + 'persistCode', + `part001 = startSketchOn('XZ') |> startProfileAt([5 + 0, 20 + 0], %) |> line(end = [0.5, -14 + 0]) |> angledLine({ angle = 3 + 0, length = 32 + 0 }, %) @@ -227,154 +225,157 @@ test.describe('Testing segment overlays', { tag: ['@skipWin'] }, () => { }, %) |> tangentialArcTo([5 + 3.14 + 13, 20 + 3.14], %) ` - ) - }) - const u = await getUtils(page) - await page.setBodyDimensions({ width: 1200, height: 500 }) + ) + }) + const u = await getUtils(page) + await page.setBodyDimensions({ width: 1200, height: 500 }) - await homePage.goToModelingScene() + await homePage.goToModelingScene() - // wait for execution done - await u.openDebugPanel() - await u.expectCmdLog('[data-message-type="execution-done"]') - await u.closeDebugPanel() + // wait for execution done + await u.openDebugPanel() + await u.expectCmdLog('[data-message-type="execution-done"]') + await u.closeDebugPanel() - await page.getByText('xLine(endAbsolute = 5 + 9 - 5)').click() - await page.waitForTimeout(100) - await page.getByRole('button', { name: 'Edit Sketch' }).click() - await page.waitForTimeout(500) + await page.getByText('xLine(endAbsolute = 5 + 9 - 5)').click() + await page.waitForTimeout(100) + await page.getByRole('button', { name: 'Edit Sketch' }).click() + await page.waitForTimeout(500) - await expect(page.getByTestId('segment-overlay')).toHaveCount(13) + await expect(page.getByTestId('segment-overlay')).toHaveCount(13) - const clickUnconstrained = _clickUnconstrained(page, editor) - const clickConstrained = _clickConstrained(page, editor) + const clickUnconstrained = _clickUnconstrained(page, editor) + const clickConstrained = _clickConstrained(page, editor) - await u.openAndClearDebugPanel() - await u.sendCustomCmd({ - type: 'modeling_cmd_req', - cmd_id: uuidv4(), - cmd: { - type: 'default_camera_look_at', - vantage: { x: 80, y: -1350, z: 510 }, - center: { x: 80, y: 0, z: 510 }, - up: { x: 0, y: 0, z: 1 }, - }, - }) - await page.waitForTimeout(100) - await u.sendCustomCmd({ - type: 'modeling_cmd_req', - cmd_id: uuidv4(), - cmd: { - type: 'default_camera_get_settings', - }, - }) - await page.waitForTimeout(100) - await u.closeDebugPanel() + await u.openAndClearDebugPanel() + await u.sendCustomCmd({ + type: 'modeling_cmd_req', + cmd_id: uuidv4(), + cmd: { + type: 'default_camera_look_at', + vantage: { x: 80, y: -1350, z: 510 }, + center: { x: 80, y: 0, z: 510 }, + up: { x: 0, y: 0, z: 1 }, + }, + }) + await page.waitForTimeout(100) + await u.sendCustomCmd({ + type: 'modeling_cmd_req', + cmd_id: uuidv4(), + cmd: { + type: 'default_camera_get_settings', + }, + }) + await page.waitForTimeout(100) + await u.closeDebugPanel() - let ang = 0 + let ang = 0 - const line = await u.getBoundingBox('[data-overlay-index="0"]') - ang = await u.getAngle('[data-overlay-index="0"]') - console.log('line1', line, ang) - await clickConstrained({ - hoverPos: { x: line.x, y: line.y }, - constraintType: 'yRelative', - expectBeforeUnconstrained: '|> line(end = [0.5, -14 + 0])', - expectAfterUnconstrained: '|> line(end = [0.5, -14])', - expectFinal: '|> line(end = [0.5, yRel001])', - ang: ang + 180, - locator: '[data-overlay-toolbar-index="0"]', - }) - console.log('line2') - await clickUnconstrained({ - hoverPos: { x: line.x, y: line.y }, - constraintType: 'xRelative', - expectBeforeUnconstrained: '|> line(end = [0.5, yRel001])', - expectAfterUnconstrained: 'line(end = [xRel001, yRel001])', - expectFinal: '|> line(end = [0.5, yRel001])', - ang: ang + 180, - locator: '[data-overlay-index="0"]', - }) - - const angledLine = await u.getBoundingBox('[data-overlay-index="1"]') - ang = await u.getAngle('[data-overlay-index="1"]') - console.log('angledLine1') - await clickConstrained({ - hoverPos: { x: angledLine.x, y: angledLine.y }, - constraintType: 'angle', - expectBeforeUnconstrained: - 'angledLine({ angle = 3 + 0, length = 32 + 0 }, %)', - expectAfterUnconstrained: - 'angledLine({ angle = 3, length = 32 + 0 }, %)', - expectFinal: 'angledLine({ angle = angle001, length = 32 + 0 }, %)', - ang: ang + 180, - locator: '[data-overlay-toolbar-index="1"]', - }) - console.log('angledLine2') - await clickConstrained({ - hoverPos: { x: angledLine.x, y: angledLine.y }, - constraintType: 'length', - expectBeforeUnconstrained: - 'angledLine({ angle = angle001, length = 32 + 0 }, %)', - expectAfterUnconstrained: - 'angledLine({ angle = angle001, length = 32 }, %)', - expectFinal: 'angledLine({ angle = angle001, length = len001 }, %)', - ang: ang + 180, - locator: '[data-overlay-toolbar-index="1"]', - }) - - await page.mouse.move(700, 250) - await page.waitForTimeout(100) - - let lineTo = await u.getBoundingBox('[data-overlay-index="2"]') - ang = await u.getAngle('[data-overlay-index="2"]') - console.log('lineTo1') - await clickConstrained({ - hoverPos: { x: lineTo.x, y: lineTo.y }, - constraintType: 'yAbsolute', - expectBeforeUnconstrained: - 'line(endAbsolute = [5 + 33, 20 + 11.5 + 0])', - expectAfterUnconstrained: 'line(endAbsolute = [5 + 33, 31.5])', - expectFinal: 'line(endAbsolute = [5 + 33, yAbs001])', - steps: 8, - ang: ang + 180, - locator: '[data-overlay-toolbar-index="2"]', - }) - console.log('lineTo2') - await clickConstrained({ - hoverPos: { x: lineTo.x, y: lineTo.y }, - constraintType: 'xAbsolute', - expectBeforeUnconstrained: 'line(endAbsolute = [5 + 33, yAbs001])', - expectAfterUnconstrained: 'line(endAbsolute = [38, yAbs001])', - expectFinal: 'line(endAbsolute = [xAbs001, yAbs001])', - steps: 8, - ang: ang + 180, - locator: '[data-overlay-toolbar-index="2"]', - }) - - const xLineTo = await u.getBoundingBox('[data-overlay-index="3"]') - ang = await u.getAngle('[data-overlay-index="3"]') - console.log('xlineTo1') - await clickConstrained({ - hoverPos: { x: xLineTo.x, y: xLineTo.y }, - constraintType: 'xAbsolute', - expectBeforeUnconstrained: 'xLine(endAbsolute = 5 + 9 - 5)', - expectAfterUnconstrained: 'xLine(endAbsolute = 9)', - expectFinal: 'xLine(endAbsolute = xAbs002)', - ang: ang + 180, - steps: 8, - locator: '[data-overlay-toolbar-index="3"]', - }) + const line = await u.getBoundingBox('[data-overlay-index="0"]') + ang = await u.getAngle('[data-overlay-index="0"]') + console.log('line1', line, ang) + await clickConstrained({ + hoverPos: { x: line.x, y: line.y }, + constraintType: 'yRelative', + expectBeforeUnconstrained: '|> line(end = [0.5, -14 + 0])', + expectAfterUnconstrained: '|> line(end = [0.5, -14])', + expectFinal: '|> line(end = [0.5, yRel001])', + ang: ang + 180, + locator: '[data-overlay-toolbar-index="0"]', + }) + console.log('line2') + await clickUnconstrained({ + hoverPos: { x: line.x, y: line.y }, + constraintType: 'xRelative', + expectBeforeUnconstrained: '|> line(end = [0.5, yRel001])', + expectAfterUnconstrained: 'line(end = [xRel001, yRel001])', + expectFinal: '|> line(end = [0.5, yRel001])', + ang: ang + 180, + locator: '[data-overlay-index="0"]', }) - // Broken on main at time of writing! - test.fixme( - 'for segments [yLineTo, xLine]', - async ({ page, editor, homePage }) => { - await page.addInitScript(async () => { - localStorage.setItem( - 'persistCode', - `yRel001 = -14 + const angledLine = await u.getBoundingBox('[data-overlay-index="1"]') + ang = await u.getAngle('[data-overlay-index="1"]') + console.log('angledLine1') + await clickConstrained({ + hoverPos: { x: angledLine.x, y: angledLine.y }, + constraintType: 'angle', + expectBeforeUnconstrained: + 'angledLine({ angle = 3 + 0, length = 32 + 0 }, %)', + expectAfterUnconstrained: + 'angledLine({ angle = 3, length = 32 + 0 }, %)', + expectFinal: 'angledLine({ angle = angle001, length = 32 + 0 }, %)', + ang: ang + 180, + locator: '[data-overlay-toolbar-index="1"]', + }) + console.log('angledLine2') + await clickConstrained({ + hoverPos: { x: angledLine.x, y: angledLine.y }, + constraintType: 'length', + expectBeforeUnconstrained: + 'angledLine({ angle = angle001, length = 32 + 0 }, %)', + expectAfterUnconstrained: + 'angledLine({ angle = angle001, length = 32 }, %)', + expectFinal: 'angledLine({ angle = angle001, length = len001 }, %)', + ang: ang + 180, + locator: '[data-overlay-toolbar-index="1"]', + }) + + await page.mouse.move(700, 250) + await page.waitForTimeout(100) + + let lineTo = await u.getBoundingBox('[data-overlay-index="2"]') + ang = await u.getAngle('[data-overlay-index="2"]') + console.log('lineTo1') + await clickConstrained({ + hoverPos: { x: lineTo.x, y: lineTo.y }, + constraintType: 'yAbsolute', + expectBeforeUnconstrained: + 'line(endAbsolute = [5 + 33, 20 + 11.5 + 0])', + expectAfterUnconstrained: 'line(endAbsolute = [5 + 33, 31.5])', + expectFinal: 'line(endAbsolute = [5 + 33, yAbs001])', + steps: 8, + ang: ang + 180, + locator: '[data-overlay-toolbar-index="2"]', + }) + console.log('lineTo2') + await clickConstrained({ + hoverPos: { x: lineTo.x, y: lineTo.y }, + constraintType: 'xAbsolute', + expectBeforeUnconstrained: 'line(endAbsolute = [5 + 33, yAbs001])', + expectAfterUnconstrained: 'line(endAbsolute = [38, yAbs001])', + expectFinal: 'line(endAbsolute = [xAbs001, yAbs001])', + steps: 8, + ang: ang + 180, + locator: '[data-overlay-toolbar-index="2"]', + }) + + const xLineTo = await u.getBoundingBox('[data-overlay-index="3"]') + ang = await u.getAngle('[data-overlay-index="3"]') + console.log('xlineTo1') + await clickConstrained({ + hoverPos: { x: xLineTo.x, y: xLineTo.y }, + constraintType: 'xAbsolute', + expectBeforeUnconstrained: 'xLine(endAbsolute = 5 + 9 - 5)', + expectAfterUnconstrained: 'xLine(endAbsolute = 9)', + expectFinal: 'xLine(endAbsolute = xAbs002)', + ang: ang + 180, + steps: 8, + locator: '[data-overlay-toolbar-index="3"]', + }) + }) + + // Broken on main at time of writing! + test('for segments [yLineTo, xLine]', async ({ + page, + editor, + homePage, + }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + await page.addInitScript(async () => { + localStorage.setItem( + 'persistCode', + `yRel001 = -14 xRel001 = 0.5 angle001 = 3 len001 = 32 @@ -392,69 +393,68 @@ test.describe('Testing segment overlays', { tag: ['@skipWin'] }, () => { |> yLine(length = 21.14 + 0) |> angledLineOfXLength({ angle = 181 + 0, length = 23.14 }, %) ` - ) - }) - const u = await getUtils(page) - await page.setBodyDimensions({ width: 1200, height: 500 }) + ) + }) + const u = await getUtils(page) + await page.setBodyDimensions({ width: 1200, height: 500 }) - await homePage.goToModelingScene() + await homePage.goToModelingScene() - // wait for execution done - await u.openDebugPanel() - await u.expectCmdLog('[data-message-type="execution-done"]') - await u.closeDebugPanel() + // wait for execution done + await u.openDebugPanel() + await u.expectCmdLog('[data-message-type="execution-done"]') + await u.closeDebugPanel() - await page.getByText('xLine(length = 26.04)').click() - await page.waitForTimeout(100) - await page.getByRole('button', { name: 'Edit Sketch' }).click() - await page.waitForTimeout(500) + await page.getByText('xLine(length = 26.04)').click() + await page.waitForTimeout(100) + await page.getByRole('button', { name: 'Edit Sketch' }).click() + await page.waitForTimeout(500) - await expect(page.getByTestId('segment-overlay')).toHaveCount(8) + await expect(page.getByTestId('segment-overlay')).toHaveCount(8) - const clickUnconstrained = _clickUnconstrained(page, editor) + const clickUnconstrained = _clickUnconstrained(page, editor) - await page.mouse.move(700, 250) - await page.waitForTimeout(100) + await page.mouse.move(700, 250) + await page.waitForTimeout(100) - let ang = 0 + let ang = 0 - const yLineTo = await u.getBoundingBox('[data-overlay-index="4"]') - ang = await u.getAngle('[data-overlay-index="4"]') - console.log('ylineTo1') - await clickUnconstrained({ - hoverPos: { x: yLineTo.x, y: yLineTo.y - 200 }, - constraintType: 'yAbsolute', - expectBeforeUnconstrained: 'yLine(endAbsolute = -10.77, tag = $a)', - expectAfterUnconstrained: 'yLine(endAbsolute = yAbs002, tag = $a)', - expectFinal: 'yLine(endAbsolute = -10.77, tag = $a)', - ang: ang + 180, - locator: '[data-overlay-toolbar-index="4"]', - }) + const yLineTo = await u.getBoundingBox('[data-overlay-index="4"]') + ang = await u.getAngle('[data-overlay-index="4"]') + console.log('ylineTo1') + await clickUnconstrained({ + hoverPos: { x: yLineTo.x, y: yLineTo.y - 200 }, + constraintType: 'yAbsolute', + expectBeforeUnconstrained: 'yLine(endAbsolute = -10.77, tag = $a)', + expectAfterUnconstrained: 'yLine(endAbsolute = yAbs002, tag = $a)', + expectFinal: 'yLine(endAbsolute = -10.77, tag = $a)', + ang: ang + 180, + locator: '[data-overlay-toolbar-index="4"]', + }) - const xLine = await u.getBoundingBox('[data-overlay-index="5"]') - ang = await u.getAngle('[data-overlay-index="5"]') - console.log('xline') - await clickUnconstrained({ - hoverPos: { x: xLine.x, y: xLine.y }, - constraintType: 'xRelative', - expectBeforeUnconstrained: 'xLine(length = 26.04)', - expectAfterUnconstrained: 'xLine(length = xRel002)', - expectFinal: 'xLine(length = 26.04)', - steps: 10, - ang: ang + 180, - locator: '[data-overlay-toolbar-index="5"]', - }) - } - ) - test('for segments [yLine, angledLineOfXLength, angledLineOfYLength]', async ({ - page, - editor, - homePage, - }) => { - await page.addInitScript(async () => { - localStorage.setItem( - 'persistCode', - `part001 = startSketchOn('XZ') + const xLine = await u.getBoundingBox('[data-overlay-index="5"]') + ang = await u.getAngle('[data-overlay-index="5"]') + console.log('xline') + await clickUnconstrained({ + hoverPos: { x: xLine.x, y: xLine.y }, + constraintType: 'xRelative', + expectBeforeUnconstrained: 'xLine(length = 26.04)', + expectAfterUnconstrained: 'xLine(length = xRel002)', + expectFinal: 'xLine(length = 26.04)', + steps: 10, + ang: ang + 180, + locator: '[data-overlay-toolbar-index="5"]', + }) + }) + test('for segments [yLine, angledLineOfXLength, angledLineOfYLength]', async ({ + page, + editor, + homePage, + }) => { + await page.addInitScript(async () => { + localStorage.setItem( + 'persistCode', + `part001 = startSketchOn('XZ') |> startProfileAt([0, 0], %) |> line(end = [0.5, -14 + 0]) |> angledLine({ angle = 3 + 0, length = 32 + 0 }, %) @@ -474,119 +474,118 @@ test.describe('Testing segment overlays', { tag: ['@skipWin'] }, () => { }, %) |> tangentialArcTo([3.14 + 13, 3.14], %) ` - ) - localStorage.setItem('disableAxis', 'true') - }) - const u = await getUtils(page) - await page.setBodyDimensions({ width: 1200, height: 500 }) - - await homePage.goToModelingScene() - - // wait for execution done - await u.openDebugPanel() - await u.expectCmdLog('[data-message-type="execution-done"]') - await u.closeDebugPanel() - await page.waitForTimeout(500) - - await page.getByText('xLine(endAbsolute = 9 - 5)').click() - await page.waitForTimeout(100) - await page.getByRole('button', { name: 'Edit Sketch' }).click() - await page.waitForTimeout(500) - - await expect(page.getByTestId('segment-overlay')).toHaveCount(13) - - const clickUnconstrained = _clickUnconstrained(page, editor) - const clickConstrained = _clickConstrained(page, editor) - - let ang = 0 - - const yLine = await u.getBoundingBox('[data-overlay-index="6"]') - ang = await u.getAngle('[data-overlay-index="6"]') - console.log('yline1') - await clickConstrained({ - hoverPos: { x: yLine.x, y: yLine.y }, - constraintType: 'yRelative', - expectBeforeUnconstrained: 'yLine(length = 21.14 + 0)', - expectAfterUnconstrained: 'yLine(length = 21.14)', - expectFinal: 'yLine(length = yRel001)', - ang: ang + 180, - locator: '[data-overlay-toolbar-index="6"]', - }) - - const angledLineOfXLength = await u.getBoundingBox( - '[data-overlay-index="7"]' ) - ang = await u.getAngle('[data-overlay-index="7"]') - console.log('angledLineOfXLength1') - await clickConstrained({ - hoverPos: { x: angledLineOfXLength.x, y: angledLineOfXLength.y }, - constraintType: 'angle', - expectBeforeUnconstrained: - 'angledLineOfXLength({ angle = 181 + 0, length = 23.14 }, %)', - expectAfterUnconstrained: - 'angledLineOfXLength({ angle = -179, length = 23.14 }, %)', - expectFinal: - 'angledLineOfXLength({ angle = angle001, length = 23.14 }, %)', - ang: ang + 180, - locator: '[data-overlay-toolbar-index="7"]', - }) - console.log('angledLineOfXLength2') - await clickUnconstrained({ - hoverPos: { x: angledLineOfXLength.x, y: angledLineOfXLength.y }, - constraintType: 'xRelative', - expectBeforeUnconstrained: - 'angledLineOfXLength({ angle = angle001, length = 23.14 }, %)', - expectAfterUnconstrained: - 'angledLineOfXLength({ angle = angle001, length = xRel001 }, %)', - expectFinal: - 'angledLineOfXLength({ angle = angle001, length = 23.14 }, %)', - steps: 7, - ang: ang + 180, - locator: '[data-overlay-toolbar-index="7"]', - }) - - const angledLineOfYLength = await u.getBoundingBox( - '[data-overlay-index="8"]' - ) - ang = await u.getAngle('[data-overlay-index="8"]') - console.log('angledLineOfYLength1') - await clickUnconstrained({ - hoverPos: { x: angledLineOfYLength.x, y: angledLineOfYLength.y }, - constraintType: 'angle', - expectBeforeUnconstrained: - 'angledLineOfYLength({ angle = -91, length = 19 + 0 }, %)', - expectAfterUnconstrained: - 'angledLineOfYLength({ angle = angle002, length = 19 + 0 }, %)', - expectFinal: - 'angledLineOfYLength({ angle = -91, length = 19 + 0 }, %)', - ang: ang + 180, - steps: 6, - locator: '[data-overlay-toolbar-index="8"]', - }) - console.log('angledLineOfYLength2') - await clickConstrained({ - hoverPos: { x: angledLineOfYLength.x, y: angledLineOfYLength.y }, - constraintType: 'yRelative', - expectBeforeUnconstrained: - 'angledLineOfYLength({ angle = -91, length = 19 + 0 }, %)', - expectAfterUnconstrained: - 'angledLineOfYLength({ angle = -91, length = 19 }, %)', - expectFinal: - 'angledLineOfYLength({ angle = -91, length = yRel002 }, %)', - ang: ang + 180, - steps: 7, - locator: '[data-overlay-toolbar-index="8"]', - }) + localStorage.setItem('disableAxis', 'true') }) - test('for segments [angledLineToX, angledLineToY, angledLineThatIntersects]', async ({ - page, - editor, - homePage, - }) => { - await page.addInitScript(async () => { - localStorage.setItem( - 'persistCode', - `part001 = startSketchOn('XZ') + const u = await getUtils(page) + await page.setBodyDimensions({ width: 1200, height: 500 }) + + await homePage.goToModelingScene() + + // wait for execution done + await u.openDebugPanel() + await u.expectCmdLog('[data-message-type="execution-done"]') + await u.closeDebugPanel() + await page.waitForTimeout(500) + + await page.getByText('xLine(endAbsolute = 9 - 5)').click() + await page.waitForTimeout(100) + await page.getByRole('button', { name: 'Edit Sketch' }).click() + await page.waitForTimeout(500) + + await expect(page.getByTestId('segment-overlay')).toHaveCount(13) + + const clickUnconstrained = _clickUnconstrained(page, editor) + const clickConstrained = _clickConstrained(page, editor) + + let ang = 0 + + const yLine = await u.getBoundingBox('[data-overlay-index="6"]') + ang = await u.getAngle('[data-overlay-index="6"]') + console.log('yline1') + await clickConstrained({ + hoverPos: { x: yLine.x, y: yLine.y }, + constraintType: 'yRelative', + expectBeforeUnconstrained: 'yLine(length = 21.14 + 0)', + expectAfterUnconstrained: 'yLine(length = 21.14)', + expectFinal: 'yLine(length = yRel001)', + ang: ang + 180, + locator: '[data-overlay-toolbar-index="6"]', + }) + + const angledLineOfXLength = await u.getBoundingBox( + '[data-overlay-index="7"]' + ) + ang = await u.getAngle('[data-overlay-index="7"]') + console.log('angledLineOfXLength1') + await clickConstrained({ + hoverPos: { x: angledLineOfXLength.x, y: angledLineOfXLength.y }, + constraintType: 'angle', + expectBeforeUnconstrained: + 'angledLineOfXLength({ angle = 181 + 0, length = 23.14 }, %)', + expectAfterUnconstrained: + 'angledLineOfXLength({ angle = -179, length = 23.14 }, %)', + expectFinal: + 'angledLineOfXLength({ angle = angle001, length = 23.14 }, %)', + ang: ang + 180, + locator: '[data-overlay-toolbar-index="7"]', + }) + console.log('angledLineOfXLength2') + await clickUnconstrained({ + hoverPos: { x: angledLineOfXLength.x, y: angledLineOfXLength.y }, + constraintType: 'xRelative', + expectBeforeUnconstrained: + 'angledLineOfXLength({ angle = angle001, length = 23.14 }, %)', + expectAfterUnconstrained: + 'angledLineOfXLength({ angle = angle001, length = xRel001 }, %)', + expectFinal: + 'angledLineOfXLength({ angle = angle001, length = 23.14 }, %)', + steps: 7, + ang: ang + 180, + locator: '[data-overlay-toolbar-index="7"]', + }) + + const angledLineOfYLength = await u.getBoundingBox( + '[data-overlay-index="8"]' + ) + ang = await u.getAngle('[data-overlay-index="8"]') + console.log('angledLineOfYLength1') + await clickUnconstrained({ + hoverPos: { x: angledLineOfYLength.x, y: angledLineOfYLength.y }, + constraintType: 'angle', + expectBeforeUnconstrained: + 'angledLineOfYLength({ angle = -91, length = 19 + 0 }, %)', + expectAfterUnconstrained: + 'angledLineOfYLength({ angle = angle002, length = 19 + 0 }, %)', + expectFinal: 'angledLineOfYLength({ angle = -91, length = 19 + 0 }, %)', + ang: ang + 180, + steps: 6, + locator: '[data-overlay-toolbar-index="8"]', + }) + console.log('angledLineOfYLength2') + await clickConstrained({ + hoverPos: { x: angledLineOfYLength.x, y: angledLineOfYLength.y }, + constraintType: 'yRelative', + expectBeforeUnconstrained: + 'angledLineOfYLength({ angle = -91, length = 19 + 0 }, %)', + expectAfterUnconstrained: + 'angledLineOfYLength({ angle = -91, length = 19 }, %)', + expectFinal: + 'angledLineOfYLength({ angle = -91, length = yRel002 }, %)', + ang: ang + 180, + steps: 7, + locator: '[data-overlay-toolbar-index="8"]', + }) + }) + test('for segments [angledLineToX, angledLineToY, angledLineThatIntersects]', async ({ + page, + editor, + homePage, + }) => { + await page.addInitScript(async () => { + localStorage.setItem( + 'persistCode', + `part001 = startSketchOn('XZ') |> startProfileAt([0, 0], %) |> line(end = [0.5, -14 + 0]) |> angledLine({ angle = 3 + 0, length = 32 + 0 }, %) @@ -606,151 +605,148 @@ test.describe('Testing segment overlays', { tag: ['@skipWin'] }, () => { }, %) |> tangentialArcTo([3.14 + 13, 1.14], %) ` - ) - localStorage.setItem('disableAxis', 'true') - }) - const u = await getUtils(page) - await page.setBodyDimensions({ width: 1200, height: 500 }) - - await homePage.goToModelingScene() - - // wait for execution done - await u.openDebugPanel() - await u.expectCmdLog('[data-message-type="execution-done"]') - await u.closeDebugPanel() - - await page.getByText('xLine(endAbsolute = 9 - 5)').click() - await page.waitForTimeout(100) - await page.getByRole('button', { name: 'Edit Sketch' }).click() - await page.waitForTimeout(500) - - await expect(page.getByTestId('segment-overlay')).toHaveCount(13) - - const clickUnconstrained = _clickUnconstrained(page, editor) - const clickConstrained = _clickConstrained(page, editor) - - let ang = 0 - - const angledLineToX = await u.getBoundingBox('[data-overlay-index="9"]') - ang = await u.getAngle('[data-overlay-index="9"]') - console.log('angledLineToX') - await clickConstrained({ - hoverPos: { x: angledLineToX.x, y: angledLineToX.y }, - constraintType: 'angle', - expectBeforeUnconstrained: - 'angledLineToX({ angle = 3 + 0, to = 26 }, %)', - expectAfterUnconstrained: 'angledLineToX({ angle = 3, to = 26 }, %)', - expectFinal: 'angledLineToX({ angle = angle001, to = 26 }, %)', - ang: ang + 180, - locator: '[data-overlay-toolbar-index="9"]', - }) - console.log('angledLineToX2') - await clickUnconstrained({ - hoverPos: { x: angledLineToX.x, y: angledLineToX.y }, - constraintType: 'xAbsolute', - expectBeforeUnconstrained: - 'angledLineToX({ angle = angle001, to = 26 }, %)', - expectAfterUnconstrained: - 'angledLineToX({ angle = angle001, to = xAbs001 }, %)', - expectFinal: 'angledLineToX({ angle = angle001, to = 26 }, %)', - ang: ang + 180, - locator: '[data-overlay-toolbar-index="9"]', - }) - - const angledLineToY = await u.getBoundingBox( - '[data-overlay-index="10"]' ) - ang = await u.getAngle('[data-overlay-index="10"]') - console.log('angledLineToY') - await clickUnconstrained({ - hoverPos: { x: angledLineToY.x, y: angledLineToY.y }, - constraintType: 'angle', - expectBeforeUnconstrained: - 'angledLineToY({ angle = 89, to = 9.14 + 0 }, %)', - expectAfterUnconstrained: - 'angledLineToY({ angle = angle002, to = 9.14 + 0 }, %)', - expectFinal: 'angledLineToY({ angle = 89, to = 9.14 + 0 }, %)', - steps: process.platform === 'darwin' ? 8 : 9, - ang: ang + 180, - locator: '[data-overlay-toolbar-index="10"]', - }) - console.log('angledLineToY2') - await clickConstrained({ - hoverPos: { x: angledLineToY.x, y: angledLineToY.y }, - constraintType: 'yAbsolute', - expectBeforeUnconstrained: - 'angledLineToY({ angle = 89, to = 9.14 + 0 }, %)', - expectAfterUnconstrained: - 'angledLineToY({ angle = 89, to = 9.14 }, %)', - expectFinal: 'angledLineToY({ angle = 89, to = yAbs001 }, %)', - ang: ang + 180, - locator: '[data-overlay-toolbar-index="10"]', - }) + localStorage.setItem('disableAxis', 'true') + }) + const u = await getUtils(page) + await page.setBodyDimensions({ width: 1200, height: 500 }) - const angledLineThatIntersects = await u.getBoundingBox( - '[data-overlay-index="11"]' - ) - ang = await u.getAngle('[data-overlay-index="11"]') - console.log('angledLineThatIntersects') - await clickUnconstrained({ - hoverPos: { - x: angledLineThatIntersects.x, - y: angledLineThatIntersects.y, - }, - constraintType: 'angle', - expectBeforeUnconstrained: `angledLineThatIntersects({ + await homePage.goToModelingScene() + + // wait for execution done + await u.openDebugPanel() + await u.expectCmdLog('[data-message-type="execution-done"]') + await u.closeDebugPanel() + + await page.getByText('xLine(endAbsolute = 9 - 5)').click() + await page.waitForTimeout(100) + await page.getByRole('button', { name: 'Edit Sketch' }).click() + await page.waitForTimeout(500) + + await expect(page.getByTestId('segment-overlay')).toHaveCount(13) + + const clickUnconstrained = _clickUnconstrained(page, editor) + const clickConstrained = _clickConstrained(page, editor) + + let ang = 0 + + const angledLineToX = await u.getBoundingBox('[data-overlay-index="9"]') + ang = await u.getAngle('[data-overlay-index="9"]') + console.log('angledLineToX') + await clickConstrained({ + hoverPos: { x: angledLineToX.x, y: angledLineToX.y }, + constraintType: 'angle', + expectBeforeUnconstrained: + 'angledLineToX({ angle = 3 + 0, to = 26 }, %)', + expectAfterUnconstrained: 'angledLineToX({ angle = 3, to = 26 }, %)', + expectFinal: 'angledLineToX({ angle = angle001, to = 26 }, %)', + ang: ang + 180, + locator: '[data-overlay-toolbar-index="9"]', + }) + console.log('angledLineToX2') + await clickUnconstrained({ + hoverPos: { x: angledLineToX.x, y: angledLineToX.y }, + constraintType: 'xAbsolute', + expectBeforeUnconstrained: + 'angledLineToX({ angle = angle001, to = 26 }, %)', + expectAfterUnconstrained: + 'angledLineToX({ angle = angle001, to = xAbs001 }, %)', + expectFinal: 'angledLineToX({ angle = angle001, to = 26 }, %)', + ang: ang + 180, + locator: '[data-overlay-toolbar-index="9"]', + }) + + const angledLineToY = await u.getBoundingBox('[data-overlay-index="10"]') + ang = await u.getAngle('[data-overlay-index="10"]') + console.log('angledLineToY') + await clickUnconstrained({ + hoverPos: { x: angledLineToY.x, y: angledLineToY.y }, + constraintType: 'angle', + expectBeforeUnconstrained: + 'angledLineToY({ angle = 89, to = 9.14 + 0 }, %)', + expectAfterUnconstrained: + 'angledLineToY({ angle = angle002, to = 9.14 + 0 }, %)', + expectFinal: 'angledLineToY({ angle = 89, to = 9.14 + 0 }, %)', + steps: process.platform === 'darwin' ? 8 : 9, + ang: ang + 180, + locator: '[data-overlay-toolbar-index="10"]', + }) + console.log('angledLineToY2') + await clickConstrained({ + hoverPos: { x: angledLineToY.x, y: angledLineToY.y }, + constraintType: 'yAbsolute', + expectBeforeUnconstrained: + 'angledLineToY({ angle = 89, to = 9.14 + 0 }, %)', + expectAfterUnconstrained: 'angledLineToY({ angle = 89, to = 9.14 }, %)', + expectFinal: 'angledLineToY({ angle = 89, to = yAbs001 }, %)', + ang: ang + 180, + locator: '[data-overlay-toolbar-index="10"]', + }) + + const angledLineThatIntersects = await u.getBoundingBox( + '[data-overlay-index="11"]' + ) + ang = await u.getAngle('[data-overlay-index="11"]') + console.log('angledLineThatIntersects') + await clickUnconstrained({ + hoverPos: { + x: angledLineThatIntersects.x, + y: angledLineThatIntersects.y, + }, + constraintType: 'angle', + expectBeforeUnconstrained: `angledLineThatIntersects({ angle = 4.14, intersectTag = a, offset = 9 }, %)`, - expectAfterUnconstrained: `angledLineThatIntersects({ + expectAfterUnconstrained: `angledLineThatIntersects({ angle = angle003, intersectTag = a, offset = 9 }, %)`, - expectFinal: `angledLineThatIntersects({ + expectFinal: `angledLineThatIntersects({ angle = -176, offset = 9, intersectTag = a }, %)`, - ang: ang + 180, - locator: '[data-overlay-toolbar-index="11"]', - }) - console.log('angledLineThatIntersects2') - await clickUnconstrained({ - hoverPos: { - x: angledLineThatIntersects.x, - y: angledLineThatIntersects.y, - }, - constraintType: 'intersectionOffset', - expectBeforeUnconstrained: `angledLineThatIntersects({ + ang: ang + 180, + locator: '[data-overlay-toolbar-index="11"]', + }) + console.log('angledLineThatIntersects2') + await clickUnconstrained({ + hoverPos: { + x: angledLineThatIntersects.x, + y: angledLineThatIntersects.y, + }, + constraintType: 'intersectionOffset', + expectBeforeUnconstrained: `angledLineThatIntersects({ angle = -176, offset = 9, intersectTag = a }, %)`, - expectAfterUnconstrained: `angledLineThatIntersects({ + expectAfterUnconstrained: `angledLineThatIntersects({ angle = -176, offset = perpDist001, intersectTag = a }, %)`, - expectFinal: `angledLineThatIntersects({ + expectFinal: `angledLineThatIntersects({ angle = -176, offset = 9, intersectTag = a }, %)`, - ang: ang + 180, - locator: '[data-overlay-toolbar-index="11"]', - }) + ang: ang + 180, + locator: '[data-overlay-toolbar-index="11"]', }) - test('for segment [tangentialArcTo]', async ({ - page, - editor, - homePage, - }) => { - await page.addInitScript(async () => { - localStorage.setItem( - 'persistCode', - `part001 = startSketchOn('XZ') + }) + test('for segment [tangentialArcTo]', async ({ + page, + editor, + homePage, + }) => { + await page.addInitScript(async () => { + localStorage.setItem( + 'persistCode', + `part001 = startSketchOn('XZ') |> startProfileAt([0, 0], %) |> line(end = [0.5, -14 + 0]) |> angledLine({ angle = 3 + 0, length = 32 + 0 }, %) @@ -770,67 +766,67 @@ test.describe('Testing segment overlays', { tag: ['@skipWin'] }, () => { }, %) |> tangentialArcTo([3.14 + 13, -3.14], %) ` - ) - localStorage.setItem('disableAxis', 'true') - }) - const u = await getUtils(page) - await page.setBodyDimensions({ width: 1200, height: 500 }) - - await homePage.goToModelingScene() - - // wait for execution done - await u.openDebugPanel() - await u.expectCmdLog('[data-message-type="execution-done"]') - await u.closeDebugPanel() - - await page.getByText('xLine(endAbsolute = 9 - 5)').click() - await page.waitForTimeout(100) - await page.getByRole('button', { name: 'Edit Sketch' }).click() - await page.waitForTimeout(500) - - await expect(page.getByTestId('segment-overlay')).toHaveCount(13) - - const clickUnconstrained = _clickUnconstrained(page, editor) - const clickConstrained = _clickConstrained(page, editor) - - const tangentialArcTo = await u.getBoundingBox( - '[data-overlay-index="12"]' ) - let ang = await u.getAngle('[data-overlay-index="12"]') - console.log('tangentialArcTo') - await clickConstrained({ - hoverPos: { x: tangentialArcTo.x, y: tangentialArcTo.y }, - constraintType: 'xAbsolute', - expectBeforeUnconstrained: 'tangentialArcTo([3.14 + 13, -3.14], %)', - expectAfterUnconstrained: 'tangentialArcTo([16.14, -3.14], %)', - expectFinal: 'tangentialArcTo([xAbs001, -3.14], %)', - ang: ang + 180, - steps: 6, - locator: '[data-overlay-toolbar-index="12"]', - }) - console.log('tangentialArcTo2') - await clickUnconstrained({ - hoverPos: { x: tangentialArcTo.x, y: tangentialArcTo.y }, - constraintType: 'yAbsolute', - expectBeforeUnconstrained: 'tangentialArcTo([xAbs001, -3.14], %)', - expectAfterUnconstrained: 'tangentialArcTo([xAbs001, yAbs001], %)', - expectFinal: 'tangentialArcTo([xAbs001, -3.14], %)', - ang: ang + 180, - steps: 10, - locator: '[data-overlay-toolbar-index="12"]', - }) + localStorage.setItem('disableAxis', 'true') }) - test('for segment [arcTo]', async ({ - page, - editor, - homePage, - scene, - cmdBar, - }) => { - await page.addInitScript(async () => { - localStorage.setItem( - 'persistCode', - `sketch001 = startSketchOn('XZ') + const u = await getUtils(page) + await page.setBodyDimensions({ width: 1200, height: 500 }) + + await homePage.goToModelingScene() + + // wait for execution done + await u.openDebugPanel() + await u.expectCmdLog('[data-message-type="execution-done"]') + await u.closeDebugPanel() + + await page.getByText('xLine(endAbsolute = 9 - 5)').click() + await page.waitForTimeout(100) + await page.getByRole('button', { name: 'Edit Sketch' }).click() + await page.waitForTimeout(500) + + await expect(page.getByTestId('segment-overlay')).toHaveCount(13) + + const clickUnconstrained = _clickUnconstrained(page, editor) + const clickConstrained = _clickConstrained(page, editor) + + const tangentialArcTo = await u.getBoundingBox( + '[data-overlay-index="12"]' + ) + let ang = await u.getAngle('[data-overlay-index="12"]') + console.log('tangentialArcTo') + await clickConstrained({ + hoverPos: { x: tangentialArcTo.x, y: tangentialArcTo.y }, + constraintType: 'xAbsolute', + expectBeforeUnconstrained: 'tangentialArcTo([3.14 + 13, -3.14], %)', + expectAfterUnconstrained: 'tangentialArcTo([16.14, -3.14], %)', + expectFinal: 'tangentialArcTo([xAbs001, -3.14], %)', + ang: ang + 180, + steps: 6, + locator: '[data-overlay-toolbar-index="12"]', + }) + console.log('tangentialArcTo2') + await clickUnconstrained({ + hoverPos: { x: tangentialArcTo.x, y: tangentialArcTo.y }, + constraintType: 'yAbsolute', + expectBeforeUnconstrained: 'tangentialArcTo([xAbs001, -3.14], %)', + expectAfterUnconstrained: 'tangentialArcTo([xAbs001, yAbs001], %)', + expectFinal: 'tangentialArcTo([xAbs001, -3.14], %)', + ang: ang + 180, + steps: 10, + locator: '[data-overlay-toolbar-index="12"]', + }) + }) + test('for segment [arcTo]', async ({ + page, + editor, + homePage, + scene, + cmdBar, + }) => { + await page.addInitScript(async () => { + localStorage.setItem( + 'persistCode', + `sketch001 = startSketchOn('XZ') profile001 = startProfileAt([56.37, 120.33], sketch001) |> line(end = [162.86, 106.48]) |> arcTo({ @@ -844,187 +840,184 @@ profile001 = startProfileAt([56.37, 120.33], sketch001) angleEnd = -141.07 }, %) ` - ) - localStorage.setItem('disableAxis', 'true') - }) - const u = await getUtils(page) - await page.setBodyDimensions({ width: 1200, height: 500 }) + ) + localStorage.setItem('disableAxis', 'true') + }) + const u = await getUtils(page) + await page.setBodyDimensions({ width: 1200, height: 500 }) - await homePage.goToModelingScene() - await scene.connectionEstablished() - await scene.settled(cmdBar) + await homePage.goToModelingScene() + await scene.connectionEstablished() + await scene.settled(cmdBar) - // wait for execution done + // wait for execution done - await page.getByText('line(end = [162.86, 106.48])').click() - await page.waitForTimeout(100) - await page.getByRole('button', { name: 'Edit Sketch' }).click() - await page.waitForTimeout(500) + await page.getByText('line(end = [162.86, 106.48])').click() + await page.waitForTimeout(100) + await page.getByRole('button', { name: 'Edit Sketch' }).click() + await page.waitForTimeout(500) - await expect(page.getByTestId('segment-overlay')).toHaveCount(5) + await expect(page.getByTestId('segment-overlay')).toHaveCount(5) - const clickUnconstrained = _clickUnconstrained(page, editor) - const clickConstrained = _clickConstrained(page, editor) + const clickUnconstrained = _clickUnconstrained(page, editor) + const clickConstrained = _clickConstrained(page, editor) - const arcTo = await u.getBoundingBox('[data-overlay-index="1"]') - let ang = await u.getAngle('[data-overlay-index="1"]') - console.log('arcTo interior x') - await clickUnconstrained({ - hoverPos: { x: arcTo.x, y: arcTo.y }, - constraintType: 'xAbsolute', - expectBeforeUnconstrained: `arcTo({ + const arcTo = await u.getBoundingBox('[data-overlay-index="1"]') + let ang = await u.getAngle('[data-overlay-index="1"]') + console.log('arcTo interior x') + await clickUnconstrained({ + hoverPos: { x: arcTo.x, y: arcTo.y }, + constraintType: 'xAbsolute', + expectBeforeUnconstrained: `arcTo({ interior = [360.16, 231.76], end = [391.48, 131.54] }, %)`, - expectAfterUnconstrained: `arcTo({ + expectAfterUnconstrained: `arcTo({ interior = [360.16, 231.76], end = [391.48, 131.54] }, %)`, - expectFinal: `arcTo({ + expectFinal: `arcTo({ interior = [xAbs001, 231.76], end = [391.48, 131.54] }, %)`, - ang: ang, - steps: 6, - locator: '[data-overlay-toolbar-index="1"]', - }) + ang: ang, + steps: 6, + locator: '[data-overlay-toolbar-index="1"]', + }) - console.log('arcTo interior y') - await clickUnconstrained({ - hoverPos: { x: arcTo.x, y: arcTo.y }, - constraintType: 'yAbsolute', - expectBeforeUnconstrained: `arcTo({ + console.log('arcTo interior y') + await clickUnconstrained({ + hoverPos: { x: arcTo.x, y: arcTo.y }, + constraintType: 'yAbsolute', + expectBeforeUnconstrained: `arcTo({ interior = [xAbs001, 231.76], end = [391.48, 131.54] }, %)`, - expectAfterUnconstrained: `arcTo({ + expectAfterUnconstrained: `arcTo({ interior = [xAbs001, yAbs001], end = [391.48, 131.54] }, %)`, - expectFinal: `arcTo({ + expectFinal: `arcTo({ interior = [xAbs001, 231.76], end = [391.48, 131.54] }, %)`, - ang: ang, - steps: 10, - locator: '[data-overlay-toolbar-index="1"]', - }) + ang: ang, + steps: 10, + locator: '[data-overlay-toolbar-index="1"]', + }) - console.log('arcTo end x') - await clickConstrained({ - hoverPos: { x: arcTo.x, y: arcTo.y }, - constraintType: 'xAbsolute', - expectBeforeUnconstrained: `arcTo({ + console.log('arcTo end x') + await clickConstrained({ + hoverPos: { x: arcTo.x, y: arcTo.y }, + constraintType: 'xAbsolute', + expectBeforeUnconstrained: `arcTo({ interior = [xAbs001, 231.76], end = [391.48, 131.54] }, %)`, - expectAfterUnconstrained: `arcTo({ + expectAfterUnconstrained: `arcTo({ interior = [xAbs001, 231.76], end = [391.48, 131.54] }, %)`, - expectFinal: `arcTo({ + expectFinal: `arcTo({ interior = [xAbs001, 231.76], end = [xAbs002, 131.54] }, %)`, - ang: ang + 180, - steps: 6, - locator: '[data-overlay-toolbar-index="1"]', - }) + ang: ang + 180, + steps: 6, + locator: '[data-overlay-toolbar-index="1"]', + }) - console.log('arcTo end y') - await clickUnconstrained({ - hoverPos: { x: arcTo.x, y: arcTo.y }, - constraintType: 'yAbsolute', - expectBeforeUnconstrained: `arcTo({ + console.log('arcTo end y') + await clickUnconstrained({ + hoverPos: { x: arcTo.x, y: arcTo.y }, + constraintType: 'yAbsolute', + expectBeforeUnconstrained: `arcTo({ interior = [xAbs001, 231.76], end = [xAbs002, 131.54] }, %)`, - expectAfterUnconstrained: `arcTo({ + expectAfterUnconstrained: `arcTo({ interior = [xAbs001, 231.76], end = [xAbs002, yAbs002] }, %)`, - expectFinal: `arcTo({ + expectFinal: `arcTo({ interior = [xAbs001, 231.76], end = [xAbs002, 131.54] }, %)`, - ang: ang + 180, - steps: 10, - locator: '[data-overlay-toolbar-index="1"]', - }) + ang: ang + 180, + steps: 10, + locator: '[data-overlay-toolbar-index="1"]', }) - test('for segment [circle]', async ({ page, editor, homePage }) => { - await page.addInitScript(async () => { - localStorage.setItem( - 'persistCode', - `part001 = startSketchOn('XZ') + }) + test('for segment [circle]', async ({ page, editor, homePage }) => { + await page.addInitScript(async () => { + localStorage.setItem( + 'persistCode', + `part001 = startSketchOn('XZ') |> circle(center = [1 + 0, 0], radius = 8) ` - ) - localStorage.setItem('disableAxis', 'true') - }) - const u = await getUtils(page) - await page.setBodyDimensions({ width: 1200, height: 500 }) - - await homePage.goToModelingScene() - - // wait for execution done - await u.openDebugPanel() - await u.expectCmdLog('[data-message-type="execution-done"]') - await u.closeDebugPanel() - - await page.getByText('circle(center = [1 + 0, 0], radius = 8)').click() - await page.waitForTimeout(100) - await page.getByRole('button', { name: 'Edit Sketch' }).click() - await page.waitForTimeout(500) - - await expect(page.getByTestId('segment-overlay')).toHaveCount(1) - - const clickUnconstrained = _clickUnconstrained(page, editor) - const clickConstrained = _clickConstrained(page, editor) - - const hoverPos = { x: 789, y: 114 } as const - let ang = await u.getAngle('[data-overlay-index="0"]') - console.log('angl', ang) - console.log('circle center x') - await clickConstrained({ - hoverPos, - constraintType: 'xAbsolute', - expectBeforeUnconstrained: 'circle(center = [1 + 0, 0], radius = 8)', - expectAfterUnconstrained: 'circle(center = [1, 0], radius = 8)', - expectFinal: 'circle(center = [xAbs001, 0], radius = 8)', - ang: ang + 105, - steps: 6, - locator: '[data-overlay-toolbar-index="0"]', - }) - console.log('circle center y') - await clickUnconstrained({ - hoverPos, - constraintType: 'yAbsolute', - expectBeforeUnconstrained: - 'circle(center = [xAbs001, 0], radius = 8)', - expectAfterUnconstrained: - 'circle(center = [xAbs001, yAbs001], radius = 8)', - expectFinal: 'circle(center = [xAbs001, 0], radius = 8)', - ang: ang + 180, - steps: 30, - locator: '[data-overlay-toolbar-index="0"]', - }) - console.log('circle radius') - await clickUnconstrained({ - hoverPos, - constraintType: 'radius', - expectBeforeUnconstrained: - 'circle(center = [xAbs001, 0], radius = 8)', - expectAfterUnconstrained: - 'circle(center = [xAbs001, 0], radius = radius001)', - expectFinal: 'circle(center = [xAbs001, 0], radius = 8)', - ang: ang + 105, - steps: 10, - locator: '[data-overlay-toolbar-index="0"]', - }) + ) + localStorage.setItem('disableAxis', 'true') }) - } - ) + const u = await getUtils(page) + await page.setBodyDimensions({ width: 1200, height: 500 }) + + await homePage.goToModelingScene() + + // wait for execution done + await u.openDebugPanel() + await u.expectCmdLog('[data-message-type="execution-done"]') + await u.closeDebugPanel() + + await page.getByText('circle(center = [1 + 0, 0], radius = 8)').click() + await page.waitForTimeout(100) + await page.getByRole('button', { name: 'Edit Sketch' }).click() + await page.waitForTimeout(500) + + await expect(page.getByTestId('segment-overlay')).toHaveCount(1) + + const clickUnconstrained = _clickUnconstrained(page, editor) + const clickConstrained = _clickConstrained(page, editor) + + const hoverPos = { x: 789, y: 114 } as const + let ang = await u.getAngle('[data-overlay-index="0"]') + console.log('angl', ang) + console.log('circle center x') + await clickConstrained({ + hoverPos, + constraintType: 'xAbsolute', + expectBeforeUnconstrained: 'circle(center = [1 + 0, 0], radius = 8)', + expectAfterUnconstrained: 'circle(center = [1, 0], radius = 8)', + expectFinal: 'circle(center = [xAbs001, 0], radius = 8)', + ang: ang + 105, + steps: 6, + locator: '[data-overlay-toolbar-index="0"]', + }) + console.log('circle center y') + await clickUnconstrained({ + hoverPos, + constraintType: 'yAbsolute', + expectBeforeUnconstrained: 'circle(center = [xAbs001, 0], radius = 8)', + expectAfterUnconstrained: + 'circle(center = [xAbs001, yAbs001], radius = 8)', + expectFinal: 'circle(center = [xAbs001, 0], radius = 8)', + ang: ang + 180, + steps: 30, + locator: '[data-overlay-toolbar-index="0"]', + }) + console.log('circle radius') + await clickUnconstrained({ + hoverPos, + constraintType: 'radius', + expectBeforeUnconstrained: 'circle(center = [xAbs001, 0], radius = 8)', + expectAfterUnconstrained: + 'circle(center = [xAbs001, 0], radius = radius001)', + expectFinal: 'circle(center = [xAbs001, 0], radius = 8)', + ang: ang + 105, + steps: 10, + locator: '[data-overlay-toolbar-index="0"]', + }) + }) + }) test.describe('Testing deleting a segment', () => { const _deleteSegmentSequence = (page: Page, editor: EditorFixture) => @@ -1357,7 +1350,7 @@ profile001 = startProfileAt([56.37, 120.33], sketch001) |> startProfileAt([5, 6], %) |> ${lineToBeDeleted} |> line(end = [-10, -15]) - |> angledLine([-176, segLen(seg01)], %) + |> angledLine([-176, segLen(seg01)], %) ${extraLine ? 'myVar = segLen(seg01)' : ''}` ) }, diff --git a/e2e/playwright/testing-selections.spec.ts b/e2e/playwright/testing-selections.spec.ts index f0199a13b..2c889226c 100644 --- a/e2e/playwright/testing-selections.spec.ts +++ b/e2e/playwright/testing-selections.spec.ts @@ -448,15 +448,20 @@ profile003 = startProfileAt([40.16, -120.48], sketch006) await page.waitForTimeout(200) await expect(u.codeLocator).not.toContainText(codeToBeDeletedSnippet) }) - test.fixme( - 'parent Solid should be select and deletable and uses custom planes to position children', - async ({ page, homePage, scene, cmdBar, editor }) => { - test.setTimeout(90_000) - const u = await getUtils(page) - await page.addInitScript(async () => { - localStorage.setItem( - 'persistCode', - `part001 = startSketchOn('XY') + test('parent Solid should be select and deletable and uses custom planes to position children', async ({ + page, + homePage, + scene, + cmdBar, + editor, + }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + test.setTimeout(90_000) + const u = await getUtils(page) + await page.addInitScript(async () => { + localStorage.setItem( + 'persistCode', + `part001 = startSketchOn('XY') yo = startProfileAt([4.83, 12.56], part001) |> line(end = [15.1, 2.48]) |> line(end = [3.15, -9.85], tag = $seg01) @@ -487,35 +492,34 @@ profile001 = startProfileAt([7.49, 9.96], sketch001) |> close() ` - ) - }, KCL_DEFAULT_LENGTH) - await page.setBodyDimensions({ width: 1000, height: 500 }) - - await homePage.goToModelingScene() - await scene.settled(cmdBar) - - const extrudeWall = { x: 575, y: 238 } - - // DELETE with selection on face of parent - await page.mouse.click(extrudeWall.x, extrudeWall.y) - await page.waitForTimeout(100) - await expect(page.locator('.cm-activeLine')).toHaveText( - '|> line(end = [-15.17, -4.1])' ) - await u.openAndClearDebugPanel() - await page.keyboard.press('Delete') - await u.expectCmdLog('[data-message-type="execution-done"]', 10_000) - await page.waitForTimeout(200) + }, KCL_DEFAULT_LENGTH) + await page.setBodyDimensions({ width: 1000, height: 500 }) - await editor.expectEditor.not.toContain(`yoo = extrude(yo, length = 4)`, { - shouldNormalise: true, - }) - await editor.expectEditor.toContain(`startSketchOn({plane={origin`, { - shouldNormalise: true, - }) - await editor.snapshot() - } - ) + await homePage.goToModelingScene() + await scene.settled(cmdBar) + + const extrudeWall = { x: 575, y: 238 } + + // DELETE with selection on face of parent + await page.mouse.click(extrudeWall.x, extrudeWall.y) + await page.waitForTimeout(100) + await expect(page.locator('.cm-activeLine')).toHaveText( + '|> line(end = [-15.17, -4.1])' + ) + await u.openAndClearDebugPanel() + await page.keyboard.press('Delete') + await u.expectCmdLog('[data-message-type="execution-done"]', 10_000) + await page.waitForTimeout(200) + + await editor.expectEditor.not.toContain(`yoo = extrude(yo, length = 4)`, { + shouldNormalise: true, + }) + await editor.expectEditor.toContain(`startSketchOn({plane={origin`, { + shouldNormalise: true, + }) + await editor.snapshot() + }) test('Hovering over 3d features highlights code, clicking puts the cursor in the right place and sends selection id to engine', async ({ page, homePage, diff --git a/e2e/playwright/testing-settings.spec.ts b/e2e/playwright/testing-settings.spec.ts index a266696b6..3ea8003b5 100644 --- a/e2e/playwright/testing-settings.spec.ts +++ b/e2e/playwright/testing-settings.spec.ts @@ -55,91 +55,87 @@ test.describe('Testing settings', () => { }) // The behavior is actually broken. Parent always takes precedence - test.fixme( - 'Project settings can be set and override user settings', - async ({ page, homePage }) => { - const u = await getUtils(page) - await test.step(`Setup`, async () => { - await page.setBodyDimensions({ width: 1200, height: 500 }) - await homePage.goToModelingScene() - await page - .getByRole('button', { name: 'Start Sketch' }) - .waitFor({ state: 'visible' }) - }) - - // Selectors and constants - const paneButtonLocator = page.getByTestId('debug-pane-button') - const headingLocator = page.getByRole('heading', { - name: 'Settings', - exact: true, - }) - const inputLocator = page.locator('input[name="app-showDebugPanel"]') - - await test.step('Open settings dialog and set "Show debug panel" to on', async () => { - await page.keyboard.press('ControlOrMeta+,') - await expect(headingLocator).toBeVisible() - - /** Test to close https://github.com/KittyCAD/modeling-app/issues/2713 */ - await test.step(`Confirm that this dialog has a solid background`, async () => { - await expect - .poll( - () => u.getGreatestPixDiff({ x: 600, y: 250 }, [28, 28, 28]), - { - timeout: 1000, - message: - 'Checking for solid background, should not see default plane colors', - } - ) - .toBeLessThan(15) - }) - - await page.locator('#showDebugPanel').getByText('OffOn').click() - }) - - // Close it and open again with keyboard shortcut, while KCL editor is focused - // Put the cursor in the editor - await test.step('Open settings with keyboard shortcut', async () => { - await page.getByTestId('settings-close-button').click() - await page.locator('.cm-content').click() - await page.keyboard.press('ControlOrMeta+,') - await expect(headingLocator).toBeVisible() - }) - - // Verify the toast appeared - await expect( - page.getByText(`Set show debug panel to "false" for this project`) - ).toBeVisible() - await expect( - page.getByText(`Set show debug panel to "false" for this project`) - ).not.toBeVisible() - - // Check that the debug panel button is gone - await expect(paneButtonLocator).not.toBeVisible() - - // Check that the user setting was not changed - await page.getByRole('radio', { name: 'User' }).click() - await expect(inputLocator).toBeChecked() - - // Roll back to default of "off" - await await page - .getByText( - 'show debug panelRoll back show debug panelRoll back to match' - ) - .hover() + test('Project settings can be set and override user settings', async ({ + page, + homePage, + }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + const u = await getUtils(page) + await test.step(`Setup`, async () => { + await page.setBodyDimensions({ width: 1200, height: 500 }) + await homePage.goToModelingScene() await page - .getByRole('button', { - name: 'Roll back show debug panel', - }) - .click() - await expect(inputLocator).not.toBeChecked() + .getByRole('button', { name: 'Start Sketch' }) + .waitFor({ state: 'visible' }) + }) - // Check that the project setting did not change - await page.getByRole('radio', { name: 'Project' }).click() - await expect( - page.locator('input[name="app-showDebugPanel"]') - ).not.toBeChecked() - } - ) + // Selectors and constants + const paneButtonLocator = page.getByTestId('debug-pane-button') + const headingLocator = page.getByRole('heading', { + name: 'Settings', + exact: true, + }) + const inputLocator = page.locator('input[name="app-showDebugPanel"]') + + await test.step('Open settings dialog and set "Show debug panel" to on', async () => { + await page.keyboard.press('ControlOrMeta+,') + await expect(headingLocator).toBeVisible() + + /** Test to close https://github.com/KittyCAD/modeling-app/issues/2713 */ + await test.step(`Confirm that this dialog has a solid background`, async () => { + await expect + .poll(() => u.getGreatestPixDiff({ x: 600, y: 250 }, [28, 28, 28]), { + timeout: 1000, + message: + 'Checking for solid background, should not see default plane colors', + }) + .toBeLessThan(15) + }) + + await page.locator('#showDebugPanel').getByText('OffOn').click() + }) + + // Close it and open again with keyboard shortcut, while KCL editor is focused + // Put the cursor in the editor + await test.step('Open settings with keyboard shortcut', async () => { + await page.getByTestId('settings-close-button').click() + await page.locator('.cm-content').click() + await page.keyboard.press('ControlOrMeta+,') + await expect(headingLocator).toBeVisible() + }) + + // Verify the toast appeared + await expect( + page.getByText(`Set show debug panel to "false" for this project`) + ).toBeVisible() + await expect( + page.getByText(`Set show debug panel to "false" for this project`) + ).not.toBeVisible() + + // Check that the debug panel button is gone + await expect(paneButtonLocator).not.toBeVisible() + + // Check that the user setting was not changed + await page.getByRole('radio', { name: 'User' }).click() + await expect(inputLocator).toBeChecked() + + // Roll back to default of "off" + await await page + .getByText('show debug panelRoll back show debug panelRoll back to match') + .hover() + await page + .getByRole('button', { + name: 'Roll back show debug panel', + }) + .click() + await expect(inputLocator).not.toBeChecked() + + // Check that the project setting did not change + await page.getByRole('radio', { name: 'Project' }).click() + await expect( + page.locator('input[name="app-showDebugPanel"]') + ).not.toBeChecked() + }) test('Keybindings display the correct hotkey for Command Palette', async ({ page, @@ -175,103 +171,98 @@ test.describe('Testing settings', () => { await expect(hotkey).toHaveText(text) }) - test.fixme( - 'Project and user settings can be reset', - async ({ page, homePage }) => { - const u = await getUtils(page) - await test.step(`Setup`, async () => { - await page.setBodyDimensions({ width: 1200, height: 500 }) - await homePage.goToModelingScene() - await u.waitForPageLoad() - await page.waitForTimeout(1000) - }) - - // Selectors and constants - const projectSettingsTab = page.getByRole('radio', { name: 'Project' }) - const userSettingsTab = page.getByRole('radio', { name: 'User' }) - const resetButton = (level: SettingsLevel) => - page.getByRole('button', { - name: `Reset ${level}-level settings`, - }) - const themeColorSetting = page.locator('#themeColor').getByRole('slider') - const settingValues = { - default: '259', - user: '120', - project: '50', - } - const resetToast = (level: SettingsLevel) => - page.getByText(`${level}-level settings were reset`) - - await test.step(`Open the settings modal`, async () => { - await page.getByRole('link', { name: 'Settings' }).last().click() - await expect( - page.getByRole('heading', { name: 'Settings', exact: true }) - ).toBeVisible() - }) - - await test.step('Set up theme color', async () => { - // Verify we're looking at the project-level settings, - // and it's set to default value - await expect(projectSettingsTab).toBeChecked() - await expect(themeColorSetting).toHaveValue(settingValues.default) - - // Set project-level value to 50 - await themeColorSetting.fill(settingValues.project) - - // Set user-level value to 120 - await userSettingsTab.click() - await themeColorSetting.fill(settingValues.user) - await projectSettingsTab.click() - }) - - await test.step('Reset project settings', async () => { - // Click the reset settings button. - await resetButton('project').click() - - await expect(resetToast('project')).toBeVisible() - await expect(resetToast('project')).not.toBeVisible() - - // Verify it is now set to the inherited user value - await expect(themeColorSetting).toHaveValue(settingValues.user) - - await test.step(`Check that the user settings did not change`, async () => { - await userSettingsTab.click() - await expect(themeColorSetting).toHaveValue(settingValues.user) - }) - - await test.step(`Set project-level again to test the user-level reset`, async () => { - await projectSettingsTab.click() - await themeColorSetting.fill(settingValues.project) - await userSettingsTab.click() - }) - }) - - await test.step('Reset user settings', async () => { - // Click the reset settings button. - await resetButton('user').click() - - await expect(resetToast('user')).toBeVisible() - await expect(resetToast('user')).not.toBeVisible() - - // Verify it is now set to the default value - await expect(themeColorSetting).toHaveValue(settingValues.default) - - await test.step(`Check that the project settings did not change`, async () => { - await projectSettingsTab.click() - await expect(themeColorSetting).toHaveValue(settingValues.project) - }) + test('Project and user settings can be reset', async ({ page, homePage }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + const u = await getUtils(page) + await test.step(`Setup`, async () => { + await page.setBodyDimensions({ width: 1200, height: 500 }) + await homePage.goToModelingScene() + await u.waitForPageLoad() + await page.waitForTimeout(1000) + }) + + // Selectors and constants + const projectSettingsTab = page.getByRole('radio', { name: 'Project' }) + const userSettingsTab = page.getByRole('radio', { name: 'User' }) + const resetButton = (level: SettingsLevel) => + page.getByRole('button', { + name: `Reset ${level}-level settings`, }) + const themeColorSetting = page.locator('#themeColor').getByRole('slider') + const settingValues = { + default: '259', + user: '120', + project: '50', } - ) + const resetToast = (level: SettingsLevel) => + page.getByText(`${level}-level settings were reset`) - test.fixme( + await test.step(`Open the settings modal`, async () => { + await page.getByRole('link', { name: 'Settings' }).last().click() + await expect( + page.getByRole('heading', { name: 'Settings', exact: true }) + ).toBeVisible() + }) + + await test.step('Set up theme color', async () => { + // Verify we're looking at the project-level settings, + // and it's set to default value + await expect(projectSettingsTab).toBeChecked() + await expect(themeColorSetting).toHaveValue(settingValues.default) + + // Set project-level value to 50 + await themeColorSetting.fill(settingValues.project) + + // Set user-level value to 120 + await userSettingsTab.click() + await themeColorSetting.fill(settingValues.user) + await projectSettingsTab.click() + }) + + await test.step('Reset project settings', async () => { + // Click the reset settings button. + await resetButton('project').click() + + await expect(resetToast('project')).toBeVisible() + await expect(resetToast('project')).not.toBeVisible() + + // Verify it is now set to the inherited user value + await expect(themeColorSetting).toHaveValue(settingValues.user) + + await test.step(`Check that the user settings did not change`, async () => { + await userSettingsTab.click() + await expect(themeColorSetting).toHaveValue(settingValues.user) + }) + + await test.step(`Set project-level again to test the user-level reset`, async () => { + await projectSettingsTab.click() + await themeColorSetting.fill(settingValues.project) + await userSettingsTab.click() + }) + }) + + await test.step('Reset user settings', async () => { + // Click the reset settings button. + await resetButton('user').click() + + await expect(resetToast('user')).toBeVisible() + await expect(resetToast('user')).not.toBeVisible() + + // Verify it is now set to the default value + await expect(themeColorSetting).toHaveValue(settingValues.default) + + await test.step(`Check that the project settings did not change`, async () => { + await projectSettingsTab.click() + await expect(themeColorSetting).toHaveValue(settingValues.project) + }) + }) + }) + + test( `Project settings override user settings on desktop`, { tag: ['@electron', '@skipWin'] }, async ({ context, page }, testInfo) => { - test.skip( - process.platform === 'win32', - 'TODO: remove this skip https://github.com/KittyCAD/modeling-app/issues/3557' - ) + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') const projectName = 'bracket' const { dir: projectDirName } = await context.folderSetupFn( async (dir) => { @@ -407,12 +398,13 @@ test.describe('Testing settings', () => { ) // It was much easier to test the logo color than the background stream color. - test.fixme( + test( 'user settings reload on external change, on project and modeling view', { tag: '@electron', }, async ({ context, page, tronApp }, testInfo) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') if (!tronApp) { fail() } @@ -466,10 +458,11 @@ test.describe('Testing settings', () => { } ) - test.fixme( + test( 'project settings reload on external change', { tag: '@electron' }, async ({ context, page }, testInfo) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') const { dir: projectDirName } = await context.folderSetupFn( async () => {} ) @@ -982,63 +975,68 @@ fn cube` /** * This test assumes that the default value of the "highlight edges" setting is "on". */ - test.fixme( - `Toggle stream settings multiple times`, - async ({ page, scene, homePage, context, toolbar, cmdBar }, testInfo) => { - await context.folderSetupFn(async (dir) => { - const projectDir = join(dir, 'project-000') - await fsp.mkdir(projectDir, { recursive: true }) - await fsp.copyFile( - executorInputPath('cube.kcl'), - join(projectDir, 'main.kcl') - ) - }) + test(`Toggle stream settings multiple times`, async ({ + page, + scene, + homePage, + context, + toolbar, + cmdBar, + }, testInfo) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + await context.folderSetupFn(async (dir) => { + const projectDir = join(dir, 'project-000') + await fsp.mkdir(projectDir, { recursive: true }) + await fsp.copyFile( + executorInputPath('cube.kcl'), + join(projectDir, 'main.kcl') + ) + }) - await test.step(`First snapshot`, async () => { - await homePage.openProject('project-000') - await toolbar.closePane('code') - await expect(toolbar.startSketchBtn).toBeEnabled({ timeout: 20_000 }) - await scene.clickNoWhere() - }) + await test.step(`First snapshot`, async () => { + await homePage.openProject('project-000') + await toolbar.closePane('code') + await expect(toolbar.startSketchBtn).toBeEnabled({ timeout: 20_000 }) + await scene.clickNoWhere() + }) - const toast = (value: boolean) => - page.getByText( - `Set highlight edges to "${String(value)}" as a user default` - ) - - await test.step(`Toggle highlightEdges off`, async () => { - await cmdBar.openCmdBar() - await cmdBar.chooseCommand('Settings · modeling · highlight edges') - await cmdBar.selectOption({ name: 'off' }).click() - const falseToast = toast(false) - await expect(falseToast).toBeVisible() - await falseToast.waitFor({ state: 'detached' }) - }) - - await expect(scene.streamWrapper).not.toHaveScreenshot( - 'toggle-settings-initial.png', - { - maxDiffPixels: 15, - mask: [page.getByTestId('model-state-indicator')], - } + const toast = (value: boolean) => + page.getByText( + `Set highlight edges to "${String(value)}" as a user default` ) - await test.step(`Toggle highlightEdges on`, async () => { - await cmdBar.openCmdBar() - await cmdBar.chooseCommand('Settings · modeling · highlight edges') - await cmdBar.selectOption({ name: 'on' }).click() - const trueToast = toast(true) - await expect(trueToast).toBeVisible() - await trueToast.waitFor({ state: 'detached' }) - }) + await test.step(`Toggle highlightEdges off`, async () => { + await cmdBar.openCmdBar() + await cmdBar.chooseCommand('Settings · modeling · highlight edges') + await cmdBar.selectOption({ name: 'off' }).click() + const falseToast = toast(false) + await expect(falseToast).toBeVisible() + await falseToast.waitFor({ state: 'detached' }) + }) - await expect(scene.streamWrapper).toHaveScreenshot( - 'toggle-settings-initial.png', - { - maxDiffPixels: 15, - mask: [page.getByTestId('model-state-indicator')], - } - ) - } - ) + await expect(scene.streamWrapper).not.toHaveScreenshot( + 'toggle-settings-initial.png', + { + maxDiffPixels: 15, + mask: [page.getByTestId('model-state-indicator')], + } + ) + + await test.step(`Toggle highlightEdges on`, async () => { + await cmdBar.openCmdBar() + await cmdBar.chooseCommand('Settings · modeling · highlight edges') + await cmdBar.selectOption({ name: 'on' }).click() + const trueToast = toast(true) + await expect(trueToast).toBeVisible() + await trueToast.waitFor({ state: 'detached' }) + }) + + await expect(scene.streamWrapper).toHaveScreenshot( + 'toggle-settings-initial.png', + { + maxDiffPixels: 15, + mask: [page.getByTestId('model-state-indicator')], + } + ) + }) }) diff --git a/e2e/playwright/text-to-cad-tests.spec.ts b/e2e/playwright/text-to-cad-tests.spec.ts index c1150096d..639921fa8 100644 --- a/e2e/playwright/text-to-cad-tests.spec.ts +++ b/e2e/playwright/text-to-cad-tests.spec.ts @@ -431,10 +431,11 @@ test.describe('Text-to-CAD tests', { tag: ['@skipWin'] }, () => { }) // This will be fine once greg makes prompt at top of file deterministic - test.fixme( + test( 'can do many at once and get many prompts back, and interact with many', { tag: ['@skipWin'] }, async ({ page, homePage }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') // Let this test run longer since we've seen it timeout. test.setTimeout(180_000) @@ -619,10 +620,11 @@ async function sendPromptFromCommandBar(page: Page, promptStr: string) { }) } -test.fixme( +test( 'Text-to-CAD functionality', { tag: '@electron' }, async ({ context, page }, testInfo) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') const projectName = 'project-000' const prompt = 'lego 2x4' const textToCadFileName = 'lego-2x4.kcl' diff --git a/e2e/playwright/various.spec.ts b/e2e/playwright/various.spec.ts index 512ba0c7a..c7ce7c0f8 100644 --- a/e2e/playwright/various.spec.ts +++ b/e2e/playwright/various.spec.ts @@ -2,7 +2,8 @@ import { test, expect } from './zoo-test' import { doExport, getUtils, makeTemplate } from './test-utils' -test.fixme('Units menu', async ({ page, homePage }) => { +test('Units menu', async ({ page, homePage }) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') await page.setBodyDimensions({ width: 1200, height: 500 }) await homePage.goToModelingScene() @@ -263,186 +264,187 @@ test('First escape in tool pops you out of tool, second exits sketch mode', asyn ).not.toBeVisible() }) -test.fixme( - 'Basic default modeling and sketch hotkeys work', - async ({ page, homePage }) => { - const u = await getUtils(page) +test('Basic default modeling and sketch hotkeys work', async ({ + page, + homePage, +}) => { + test.fixme(process.env.GITHUB_HEAD_REF !== 'all-e2e') + const u = await getUtils(page) - // This test can run long if it takes a little too long to load - // the engine. - test.setTimeout(90000) - // This test has a weird bug on ubuntu - // Funny, it's flaking on Windows too :). I think there is just something - // actually wrong. - test.skip( - process.platform === 'linux', - 'weird playwright bug on ubuntu https://github.com/KittyCAD/modeling-app/issues/2444' - ) - // Load the app with the code pane open + // This test can run long if it takes a little too long to load + // the engine. + test.setTimeout(90000) + // This test has a weird bug on ubuntu + // Funny, it's flaking on Windows too :). I think there is just something + // actually wrong. + test.skip( + process.platform === 'linux', + 'weird playwright bug on ubuntu https://github.com/KittyCAD/modeling-app/issues/2444' + ) + // Load the app with the code pane open - await test.step(`Set up test`, async () => { - await page.addInitScript(async () => { - localStorage.setItem( - 'store', - JSON.stringify({ - state: { - openPanes: ['code'], - }, - version: 0, - }) - ) - }) - await page.setBodyDimensions({ width: 1200, height: 500 }) - await homePage.goToModelingScene() - await u.openDebugPanel() - await u.expectCmdLog('[data-message-type="execution-done"]') - await u.closeDebugPanel() - }) - - const codePane = page.locator('.cm-content') - const lineButton = page.getByRole('button', { - name: 'line Line', - exact: true, - }) - const arcButton = page.getByRole('button', { - name: 'arc Tangential Arc', - exact: true, - }) - const extrudeButton = page.getByRole('button', { name: 'Extrude' }) - const commandBarComboBox = page.getByPlaceholder('Search commands') - const exitSketchButton = page.getByRole('button', { name: 'Exit Sketch' }) - - await test.step(`Type code with modeling hotkeys, shouldn't fire`, async () => { - await codePane.click() - await page.keyboard.type('//') - await page.keyboard.press('s') - await expect(commandBarComboBox).not.toBeVisible() - await page.keyboard.press('e') - await expect(commandBarComboBox).not.toBeVisible() - await expect(codePane).toHaveText('//se') - }) - - // Blur focus from the code editor, use the s command to sketch - await test.step(`Blur editor focus, enter sketch`, async () => { - /** - * TODO: There is a bug somewhere that causes this test to fail - * if you toggle the codePane closed before your trigger the - * start of the sketch. - * and a separate Safari-only bug that causes the test to fail - * if the pane is open the entire test. The maintainer of CodeMirror - * has pinpointed this to the unusual browser behavior: - * https://discuss.codemirror.net/t/how-to-force-unfocus-of-the-codemirror-element-in-safari/8095/3 - */ - await blurCodeEditor() - await page.waitForTimeout(1000) - await page.keyboard.press('s') - await page.waitForTimeout(1000) - await page.mouse.move(800, 300, { steps: 5 }) - await page.mouse.click(800, 300) - await page.waitForTimeout(1000) - await expect(lineButton).toHaveAttribute('aria-pressed', 'true', { - timeout: 15_000, - }) - }) - - // Use some sketch hotkeys to create a sketch (l and a for now) - await test.step(`Incomplete sketch with hotkeys`, async () => { - await test.step(`Draw a line`, async () => { - await page.mouse.move(700, 200, { steps: 5 }) - await page.mouse.click(700, 200) - await page.mouse.move(800, 250, { steps: 5 }) - await page.mouse.click(800, 250) - }) - - await test.step(`Unequip line tool`, async () => { - await page.keyboard.press('l') - await expect(lineButton).not.toHaveAttribute('aria-pressed', 'true') - }) - - await test.step(`Draw a tangential arc`, async () => { - await page.keyboard.press('a') - await expect(arcButton).toHaveAttribute('aria-pressed', 'true', { - timeout: 10_000, + await test.step(`Set up test`, async () => { + await page.addInitScript(async () => { + localStorage.setItem( + 'store', + JSON.stringify({ + state: { + openPanes: ['code'], + }, + version: 0, }) - await page.mouse.move(1000, 100, { steps: 5 }) - await page.mouse.click(1000, 100) - }) - - await test.step(`Unequip with escape, equip line tool`, async () => { - await page.keyboard.press('Escape') - await page.keyboard.press('l') - await page.waitForTimeout(50) - await expect(lineButton).toHaveAttribute('aria-pressed', 'true') - }) + ) }) + await page.setBodyDimensions({ width: 1200, height: 500 }) + await homePage.goToModelingScene() + await u.openDebugPanel() + await u.expectCmdLog('[data-message-type="execution-done"]') + await u.closeDebugPanel() + }) - await test.step(`Type code with sketch hotkeys, shouldn't fire`, async () => { - // Since there's code now, we have to get to the end of the line - await page.locator('.cm-line').last().click() - await page.keyboard.down('ControlOrMeta') - await page.keyboard.press('ArrowRight') - await page.keyboard.up('ControlOrMeta') + const codePane = page.locator('.cm-content') + const lineButton = page.getByRole('button', { + name: 'line Line', + exact: true, + }) + const arcButton = page.getByRole('button', { + name: 'arc Tangential Arc', + exact: true, + }) + const extrudeButton = page.getByRole('button', { name: 'Extrude' }) + const commandBarComboBox = page.getByPlaceholder('Search commands') + const exitSketchButton = page.getByRole('button', { name: 'Exit Sketch' }) - await page.keyboard.press('Enter') - await page.keyboard.type('//') - await page.keyboard.press('l') - await expect(lineButton).toHaveAttribute('aria-pressed', 'true') - await page.keyboard.press('a') - await expect(lineButton).toHaveAttribute('aria-pressed', 'true') - await expect(codePane).toContainText('//la') - await page.keyboard.press('Backspace') - await page.keyboard.press('Backspace') - await page.keyboard.press('Backspace') - await page.keyboard.press('Backspace') + await test.step(`Type code with modeling hotkeys, shouldn't fire`, async () => { + await codePane.click() + await page.keyboard.type('//') + await page.keyboard.press('s') + await expect(commandBarComboBox).not.toBeVisible() + await page.keyboard.press('e') + await expect(commandBarComboBox).not.toBeVisible() + await expect(codePane).toHaveText('//se') + }) + + // Blur focus from the code editor, use the s command to sketch + await test.step(`Blur editor focus, enter sketch`, async () => { + /** + * TODO: There is a bug somewhere that causes this test to fail + * if you toggle the codePane closed before your trigger the + * start of the sketch. + * and a separate Safari-only bug that causes the test to fail + * if the pane is open the entire test. The maintainer of CodeMirror + * has pinpointed this to the unusual browser behavior: + * https://discuss.codemirror.net/t/how-to-force-unfocus-of-the-codemirror-element-in-safari/8095/3 + */ + await blurCodeEditor() + await page.waitForTimeout(1000) + await page.keyboard.press('s') + await page.waitForTimeout(1000) + await page.mouse.move(800, 300, { steps: 5 }) + await page.mouse.click(800, 300) + await page.waitForTimeout(1000) + await expect(lineButton).toHaveAttribute('aria-pressed', 'true', { + timeout: 15_000, }) + }) - await test.step(`Close profile and exit sketch`, async () => { - await blurCodeEditor() + // Use some sketch hotkeys to create a sketch (l and a for now) + await test.step(`Incomplete sketch with hotkeys`, async () => { + await test.step(`Draw a line`, async () => { await page.mouse.move(700, 200, { steps: 5 }) await page.mouse.click(700, 200) - // On close it will unequip the line tool. - await expect(lineButton).toHaveAttribute('aria-pressed', 'false') - await expect(exitSketchButton).toBeEnabled() - await page.keyboard.press('Escape') - await expect( - page.getByRole('button', { name: 'Exit Sketch' }) - ).not.toBeVisible() + await page.mouse.move(800, 250, { steps: 5 }) + await page.mouse.click(800, 250) }) - // Extrude with e - await test.step(`Extrude the sketch`, async () => { - await page.mouse.click(750, 150) - await blurCodeEditor() - await expect(extrudeButton).toBeEnabled() - await page.keyboard.press('e') - await page.waitForTimeout(500) - await page.mouse.move(800, 200, { steps: 5 }) - await page.mouse.click(800, 200) - await expect(page.getByRole('button', { name: 'Continue' })).toBeVisible({ - timeout: 20_000, + await test.step(`Unequip line tool`, async () => { + await page.keyboard.press('l') + await expect(lineButton).not.toHaveAttribute('aria-pressed', 'true') + }) + + await test.step(`Draw a tangential arc`, async () => { + await page.keyboard.press('a') + await expect(arcButton).toHaveAttribute('aria-pressed', 'true', { + timeout: 10_000, }) - await page.getByRole('button', { name: 'Continue' }).click() - await expect( - page.getByRole('button', { name: 'Submit command' }) - ).toBeVisible() - await page.getByRole('button', { name: 'Submit command' }).click() - await expect(page.locator('.cm-content')).toContainText('extrude(') + await page.mouse.move(1000, 100, { steps: 5 }) + await page.mouse.click(1000, 100) }) - // await codePaneButton.click() - // await expect(u.codeLocator).not.toBeVisible() - - /** - * work-around: to stop `keyboard.press()` from typing in the editor even when it should be blurred - */ - async function blurCodeEditor() { - await page.getByRole('button', { name: 'Commands' }).click() - await page.waitForTimeout(100) + await test.step(`Unequip with escape, equip line tool`, async () => { await page.keyboard.press('Escape') - await page.waitForTimeout(100) - } + await page.keyboard.press('l') + await page.waitForTimeout(50) + await expect(lineButton).toHaveAttribute('aria-pressed', 'true') + }) + }) + + await test.step(`Type code with sketch hotkeys, shouldn't fire`, async () => { + // Since there's code now, we have to get to the end of the line + await page.locator('.cm-line').last().click() + await page.keyboard.down('ControlOrMeta') + await page.keyboard.press('ArrowRight') + await page.keyboard.up('ControlOrMeta') + + await page.keyboard.press('Enter') + await page.keyboard.type('//') + await page.keyboard.press('l') + await expect(lineButton).toHaveAttribute('aria-pressed', 'true') + await page.keyboard.press('a') + await expect(lineButton).toHaveAttribute('aria-pressed', 'true') + await expect(codePane).toContainText('//la') + await page.keyboard.press('Backspace') + await page.keyboard.press('Backspace') + await page.keyboard.press('Backspace') + await page.keyboard.press('Backspace') + }) + + await test.step(`Close profile and exit sketch`, async () => { + await blurCodeEditor() + await page.mouse.move(700, 200, { steps: 5 }) + await page.mouse.click(700, 200) + // On close it will unequip the line tool. + await expect(lineButton).toHaveAttribute('aria-pressed', 'false') + await expect(exitSketchButton).toBeEnabled() + await page.keyboard.press('Escape') + await expect( + page.getByRole('button', { name: 'Exit Sketch' }) + ).not.toBeVisible() + }) + + // Extrude with e + await test.step(`Extrude the sketch`, async () => { + await page.mouse.click(750, 150) + await blurCodeEditor() + await expect(extrudeButton).toBeEnabled() + await page.keyboard.press('e') + await page.waitForTimeout(500) + await page.mouse.move(800, 200, { steps: 5 }) + await page.mouse.click(800, 200) + await expect(page.getByRole('button', { name: 'Continue' })).toBeVisible({ + timeout: 20_000, + }) + await page.getByRole('button', { name: 'Continue' }).click() + await expect( + page.getByRole('button', { name: 'Submit command' }) + ).toBeVisible() + await page.getByRole('button', { name: 'Submit command' }).click() + await expect(page.locator('.cm-content')).toContainText('extrude(') + }) + + // await codePaneButton.click() + // await expect(u.codeLocator).not.toBeVisible() + + /** + * work-around: to stop `keyboard.press()` from typing in the editor even when it should be blurred + */ + async function blurCodeEditor() { + await page.getByRole('button', { name: 'Commands' }).click() + await page.waitForTimeout(100) + await page.keyboard.press('Escape') + await page.waitForTimeout(100) } -) +}) test('Delete key does not navigate back', async ({ page, homePage }) => { await page.setBodyDimensions({ width: 1200, height: 500 }) From 9da857410310ddebf5d8a5b3ffc7fcb1858fae54 Mon Sep 17 00:00:00 2001 From: Frank Noirot Date: Thu, 20 Mar 2025 16:41:09 -0400 Subject: [PATCH 18/20] Add edit flow for named constants / parameters (#5911) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Add support for forcing kcl input create variable * Command palette padding tweak * Make traverse function work for ExpressionStatements * Add utilities for getting earliest safe index in AST * Fix the insertIndex logic to not be based on the selection anymore * Add workflow to create a named constant * Fix bug with nameEndInDigits matcher * Tweak command config * Add a three-dot menu to feature tree pane to create parameters * Add E2E test for create parameter flow * Remove edit flow oops * Fix tsc error * Fix E2E test * Update named constant position in edit flow test * Add tags into consideration for safe insert index Per @Irev-dev's helpful feedback, with unit tests! * Fix tsc by removing a generic type * Remove unused imports * Fix lints * A snapshot a day keeps the bugs away! 📷🐛 * Add utilities for working with variable declarations * Add "edit parameter" user flow * Add edit flow config * WIP working on de-bloating useCalculateKclExpreesion * Add the ability to specify a `displayName` for an arg * Add utility to type check on SourceRanges * Review step design tweak fixes * Refactor useCalculateKclExpression to take a sourceRange * Make option arg validation work for objects and arrays Using an admittedly dumb stringification approach * Make edit flow never move the constant to be edited * Add E2E test section * Fix lints * Remove lying comment, tiny CSS tweak * A snapshot a day keeps the bugs away! 📷🐛 --------- Co-authored-by: github-actions[bot] --- e2e/playwright/command-bar-tests.spec.ts | 56 ++++++++++- ...ode-color-goober-1-Google-Chrome-linux.png | Bin 146812 -> 146821 bytes .../CommandBar/CommandBarArgument.tsx | 4 +- .../CommandBar/CommandBarBasicInput.tsx | 2 +- .../CommandBar/CommandBarHeader.tsx | 2 +- .../CommandBar/CommandBarKclInput.tsx | 38 ++++++-- .../CommandBar/CommandBarReview.tsx | 4 +- .../CommandBar/CommandBarTextareaInput.tsx | 2 +- src/lang/queryAst/getSafeInsertIndex.ts | 5 - src/lang/queryAst/getVariableDeclaration.ts | 22 +++++ .../queryAst/getVariableDeclarationIndex.ts | 17 ++++ src/lang/wasm.ts | 8 ++ .../modelingCommandConfig.ts | 87 +++++++++++++++++- src/lib/commandTypes.ts | 2 + src/lib/createMachineCommand.ts | 1 + src/lib/useCalculateKclExpression.ts | 12 ++- src/machines/commandBarMachine.ts | 14 ++- src/machines/modelingMachine.ts | 54 +++++++++++ 18 files changed, 301 insertions(+), 29 deletions(-) create mode 100644 src/lang/queryAst/getVariableDeclaration.ts create mode 100644 src/lang/queryAst/getVariableDeclarationIndex.ts diff --git a/e2e/playwright/command-bar-tests.spec.ts b/e2e/playwright/command-bar-tests.spec.ts index 2c6195fd4..34ffee1c7 100644 --- a/e2e/playwright/command-bar-tests.spec.ts +++ b/e2e/playwright/command-bar-tests.spec.ts @@ -489,7 +489,7 @@ test.describe('Command bar tests', { tag: ['@skipWin'] }, () => { }) }) - test(`Can add a named parameter or constant`, async ({ + test(`Can add and edit a named parameter or constant`, async ({ page, homePage, context, @@ -511,7 +511,7 @@ c = 3 + a` // but you do because all modeling commands have that requirement await scene.settled(cmdBar) - await test.step(`Go through the command palette flow`, async () => { + await test.step(`Create a parameter via command bar`, async () => { await cmdBar.cmdBarOpenBtn.click() await cmdBar.chooseCommand('create parameter') await cmdBar.expectState({ @@ -536,5 +536,57 @@ c = 3 + a` await editor.expectEditor.toContain( `a = 5b = a * amyParameter001 = b - 5c = 3 + a` ) + + const newValue = `2 * b + a` + await test.step(`Edit the parameter via command bar`, async () => { + await cmdBar.cmdBarOpenBtn.click() + await cmdBar.chooseCommand('edit parameter') + await cmdBar.expectState({ + stage: 'arguments', + commandName: 'Edit parameter', + currentArgKey: 'Name', + currentArgValue: '', + headerArguments: { + Name: '', + Value: '', + }, + highlightedHeaderArg: 'Name', + }) + await cmdBar + .selectOption({ + name: 'myParameter001', + }) + .click() + await cmdBar.expectState({ + stage: 'arguments', + commandName: 'Edit parameter', + currentArgKey: 'value', + currentArgValue: 'b - 5', + headerArguments: { + Name: 'myParameter001', + Value: '', + }, + highlightedHeaderArg: 'value', + }) + await cmdBar.argumentInput.locator('[contenteditable]').fill(newValue) + await cmdBar.progressCmdBar() + await cmdBar.expectState({ + stage: 'review', + commandName: 'Edit parameter', + headerArguments: { + Name: 'myParameter001', + // KCL inputs show the *computed* value, not the input value, in the command palette header + Value: '55', + }, + }) + await cmdBar.progressCmdBar() + await cmdBar.expectState({ + stage: 'commandBarClosed', + }) + }) + + await editor.expectEditor.toContain( + `a = 5b = a * amyParameter001 = ${newValue}c = 3 + a` + ) }) }) diff --git a/e2e/playwright/snapshot-tests.spec.ts-snapshots/code-color-goober-code-color-goober-1-Google-Chrome-linux.png b/e2e/playwright/snapshot-tests.spec.ts-snapshots/code-color-goober-code-color-goober-1-Google-Chrome-linux.png index 20b4e07038b8c633b66f853e13fd1324dd7d3c67..35a497669fb6e6761b6e86194e7ce5e5d58ba332 100644 GIT binary patch delta 24570 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

1l&iGgY*kE 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 MD{J1$Lq2}~AIki)z5oCK diff --git a/src/components/CommandBar/CommandBarArgument.tsx b/src/components/CommandBar/CommandBarArgument.tsx index 2251ac629..93d4fa345 100644 --- a/src/components/CommandBar/CommandBarArgument.tsx +++ b/src/components/CommandBar/CommandBarArgument.tsx @@ -54,7 +54,7 @@ function ArgumentInput({ return ( - {arg.name} + {arg.displayName || arg.name} ) { data-test-name="arg-name" className="capitalize" > - {argName} + {arg.displayName || argName} diff --git a/src/components/CommandBar/CommandBarKclInput.tsx b/src/components/CommandBar/CommandBarKclInput.tsx index 4de89a39a..86ec5caa6 100644 --- a/src/components/CommandBar/CommandBarKclInput.tsx +++ b/src/components/CommandBar/CommandBarKclInput.tsx @@ -21,10 +21,16 @@ import { useSelector } from '@xstate/react' import { commandBarActor, useCommandBarState } from 'machines/commandBarMachine' import { useSettings } from 'machines/appMachine' import toast from 'react-hot-toast' +import { AnyStateMachine, SnapshotFrom } from 'xstate' +import { kclManager } from 'lib/singletons' +import { getNodeFromPath } from 'lang/queryAst' +import { isPathToNode, SourceRange, VariableDeclarator } from 'lang/wasm' +import { Node } from '@rust/kcl-lib/bindings/Node' +import { err } from 'lib/trap' -const machineContextSelector = (snapshot?: { - context: Record -}) => snapshot?.context +// TODO: remove the need for this selector once we decouple all actors from React +const machineContextSelector = (snapshot?: SnapshotFrom) => + snapshot?.context function CommandBarKclInput({ arg, @@ -47,6 +53,16 @@ function CommandBarKclInput({ arg.machineActor, machineContextSelector ) + const sourceRangeForPrevVariables = useMemo(() => { + const nodeToEdit = commandBarState.context.argumentsToSubmit.nodeToEdit + const pathToNode = isPathToNode(nodeToEdit) ? nodeToEdit : undefined + const node = pathToNode + ? getNodeFromPath>(kclManager.ast, pathToNode) + : undefined + return !err(node) && node && node.node.type === 'VariableDeclarator' + ? [node.node.start, node.node.end, node.node.moduleId] + : undefined + }, [kclManager.ast, commandBarState.context.argumentsToSubmit.nodeToEdit]) const defaultValue = useMemo( () => arg.defaultValue @@ -90,21 +106,22 @@ function CommandBarKclInput({ const editorRef = useRef(null) const { - prevVariables, calcResult, newVariableInsertIndex, valueNode, newVariableName, setNewVariableName, isNewVariableNameUnique, + prevVariables, } = useCalculateKclExpression({ value, initialVariableName, + sourceRange: sourceRangeForPrevVariables, }) const varMentionData: Completion[] = prevVariables.map((v) => ({ label: v.key, - detail: String(roundOff(v.value as number)), + detail: String(roundOff(Number(v.value))), })) const varMentionsExtension = varMentions(varMentionData) @@ -219,13 +236,18 @@ function CommandBarKclInput({ } return ( -

+